Вирджиния Уильямс из Стэнфордского университета предложила алгоритм умножения квадратных матриц с самой лучшей на данный момент асимптотикой сложности (pdf). Прежний рекордсмен, алгоритм Копперсмита-Винограда, был предложен в 1987 году, а оценка его сложности получила прозвище одноименного барьера.
Традиционно для анализа сложности используются асимптотические оценки. Фактически, они говорят о том, с какой скоростью растет количество вычислительных операций при росте параметров алгоритма (в данном случае параметр один - размер квадратной матрицы n). Алгоритм умножения "по определению", то есть по строкам и столбцам, имеет сложность O(n3) то есть его сложность растет примерно как константа, помноженная на степенную функцию с показателем 3.
В 80-х годах прошлого века Дон Копперсмит и Шнуэль Виноград предложили алгоритм вычисления умножения матриц со сложностью O(n2,39). Затем они заметили, что разбиение матрицы перед умножением на подматрицы и применение алгоритма к ним позволяет довести сложность до рекордных O(n2,376). Этот результат был получен разбиением n на два. Дальнейшие разбиения, однако (на три, четыре и так далее) не принесли улучшения.
В рамках новой работы Уильямс удалось усовершенствовать оригинальную оценку Копперсмита и Винограда. В результате ей удалось показать, что при разбиении n на 8 частей, асимптотика сложности оказывается равной O(n2,3727). Несмотря на то, что улучшение получено только в третьем знаке, по словам специалистов, работа представляет интерес, поскольку барьер Копперсмита-Винограда продержался 24 года. Многие ученые полагают, что существует алгоритм с асимптотической оценкой O(n2), то есть сложность растет как количество элементов в квадратной матрице.
В работе подчеркивается, что данный алгоритм не найдет применения в существующих вычислительных системах по той же причине, по которой не используется алгоритм Копперсмита-Винограда - уменьшение сложности приводит к увеличению необходимой для работы памяти. При этом памяти современных компьютеров не хватит для применения таких алгоритмов в реальных задачах. Вместо них часто применяется алгоритм Штрассена.
По материалам lenta.ru
Другие новости по теме
Будни полиции Татарстана: офицер вонзил нож в грудь майора за отказ "обмыть" диплом
Под Тверью пенсионер-инвалид обратил в бегство трех уголовников, захвативших почту с заложниками
В Ростехнадзоре вскрыли хищение 120 миллионов рублей
В Хабаровском крае изъяли полтонны черной икры
В подмосковном доме ученых произошла массовая драка: тяжело ранены двое
В Ямало-Ненецком округе насильника над трехлетним мальчиком осудили на 17 лет и миллион рублей
Шестеро вооруженных бандитов ограбили ювелирный магазин в Петербурге
В Голливуде преступник расстрелял водителей и прохожих, решивших, что идут съемки
В США приговорили к смерти внука русского режиссера - убийцу и насильника Комиссаржевского
В Чувашии геймер перерезал горло своей 83-летней няне, чтобы "посмотреть на смерть в реале"
В Москве в результате нападения мужчины с ножом погибли два человека
По факту нападения на прохожих в Москве завели дело
Резня на улицах Москвы: наркоман с ножом ранил до 12 человек
В Петербурге предприниматель-рецидивист упек за решетку 31-летнюю бизнес-леди, инсценировав покушение на самого себя
Задержанного за нападения на севере Москвы передали психиатрам
На севере Москвы мужчина с ножом ранил нескольких прохожих
| |
|