Русская Википедия:Алгоритм Копперсмита — Винограда

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Алгоритм Копперсмита—Винограда — алгоритм умножения квадратных матриц, предложенный в 1987 году Д. Копперсмитом и en (Shmuel Winograd). В исходной версии асимптотическая сложность алгоритма составляла <math>O(n^{2.3755})</math>, где <math>n</math> — размер стороны матрицы. Алгоритм Копперсмита—Винограда, с учетом серии улучшений и доработок в последующие годы, обладает лучшей асимптотикой среди известных алгоритмов умножения матриц.

На практике алгоритм Копперсмита—Винограда не используется, так как он имеет очень большую константу пропорциональности и начинает выигрывать в быстродействии у других известных алгоритмов только для матриц, размер которых превышает память современных компьютеров.

Улучшения алгоритма

Файл:MatrixMultComplexity svg.svg
История улучшения оценок показателя степени Шаблон:Math для вычислительной сложности матричного умножения <math>O(n^\omega)</math>.
  • В 2010 Эндрю Стотерс усовершенствовал алгоритм до <math>O(n^{2.374}).</math>[1]
  • В 2011 году en (Virginia Vassilevska Williams) усовершенствовала алгоритм ещё раз до <math>O(n^{2.3728642}).</math>[2]
  • В 2014 году Франсуа Ле Галль упростил метод Вильямс и получил новую оценку <math>O(n^{2.3728639}).</math>[3]
  • В 2020 году Джош Алман и Вирджиния Вильямс улучшили метод снова достигнув оценки <math>O(n^{2.3728596}).</math>[4]

См. также

Примечания

Шаблон:Примечания

Литература

  • Henry Cohn, Robert Kleinberg, Balazs Szegedy, and Chris Umans. Group-theoretic Algorithms for Matrix Multiplication. Шаблон:ArXiv. Proceedings of the 46th Annual Symposium on Foundations of Computer Science, 23-25 October 2005, Pittsburgh, PA, IEEE Computer Society, pp. 379—388.
  • Don Coppersmith and Shmuel Winograd. Matrix multiplication via arithmetic progressions. Journal of Symbolic Computation, 9:251-280, 1990.
  • Шаблон:Citation Шаблон:Wayback.

Шаблон:Math-stub

  1. Шаблон:Citation Шаблон:Cite web.
  2. Williams, Virginia (2011), Breaking the Coppersmith-Winograd barrier Шаблон:Wayback
  3. «Even if someone manages to prove one of the conjectures—thereby demonstrating that ω = 2—the wreath product approach is unlikely to be applicable to the large matrix problems that arise in practice. (…) the input matrices must be astronomically large for the difference in time to be apparent.»Шаблон:Citation
  4. Шаблон:Cite web