Хорошие примеры «два легко, три сложно» в вычислительных науках


29

Недавно я столкнулся с формулировкой мета-феномена : « два - это легко, три - трудно » (так сформулировал Федерико Полони), которую можно описать следующим образом:

Когда определенная проблема сформулирована для двух сущностей, ее относительно легко решить; однако алгоритм для формулировки трех сущностей значительно усложняет задачу, возможно, даже делая решение неосуществимым или недостижимым.

(Я приветствую предложения, чтобы сделать формулировку более красивой, краткой и точной.)

Какие хорошие примеры в различных областях вычислительной науки (начиная от чистой линейной алгебры и заканчивая общей вычислительной физикой) вы знаете?


2
На ум приходит проклятие размерности.
Павел


5
@ GoHokies Пожалуйста, не оставляйте ответы в качестве комментариев.
Дэвид Ричерби

4
Исходя из основ математики или фона рекурсии, вы можете встретить функцию TREE , где TREE (2) = 3, а TREE (3) ... довольно большая. (не будучи знакомым с вычислительными науками, я не уверен, что это действительно тот ответ, который вы ищете, но он кажется достаточно похожим, чтобы оставить комментарий)
BurnsBA

2
Контрпример: «Никогда не выходите в море с двумя хронометрами; возьмите один или три». Тем не менее, есть так много хороших примеров, что нет правильного ответа. Этот вопрос должен быть вики сообщества.
Дэвид Хаммен

Ответы:


35

Одним примером, который появляется во многих областях физики, и в частности в классической механике и квантовой физике, является проблема двух тел. Задача двух тел здесь означает задачу расчета динамики двух взаимодействующих частиц, которые, например, взаимодействуют под действием гравитационных или кулоновских сил. Решение этой проблемы часто можно найти в закрытом виде путем преобразования переменной в центр масс и относительные координаты.

Однако, как только вы рассмотрите три частицы, в общем случае не существует решений в замкнутой форме .


3
Nitpick, что я уверен, что вы знаете, но ваш ответ не гласит: есть закрытые формы решения проблемы трех тел, но только для нескольких особых случаев
лама

хороший придира, спасибо, "в общем" здесь не хватает.
Давидхей

Обратите внимание, что проблема трех тел имеет ( очень медленно сходящиеся) ряды решений, найденные Сандманом в начале 20-го века, и более слабая версия (которая игнорирует особенности, где тела сталкиваются) была найдена для проблемы n тел в 1990 году.
WorldSEnder

27

Известный пример - проблема булевой выполнимости (SAT). 2-SAT не сложно решить за полиномиальное время, но 3-SAT является NP-полной.


3
3-SAT можно свести к 3-
цветному графику

8
@ GoHokies Я думал, что это правда для каждой NP-полной проблемы? Или что-то особенно примечательное в этих двух? Извините, если это глупый вопрос, мои знания в этой области являются базовыми. Но вот как я понимаю теорему о
поварах

2
@findusl Ты совершенно прав. Что делает 3-SAT и 3-цветное «особенным», так это дихотомия 2-против-3 OP.
GoHokies

26

В одном и двух измерениях все дороги ведут в Рим, но не в трех измерениях.

В частности, при случайном блуждании (с равной вероятностью перемещения в любом направлении) по целым числам в одном или двух измерениях, то независимо от начальной точки, с вероятностью один (или почти наверняка), случайное блуждание в конечном итоге дойдет до определенного обозначенного точка («Рим»).

Однако для трех или более измерений вероятность попасть в «Рим» меньше единицы; с уменьшением вероятности с увеличением числа измерений.

Так, например, если проводить стохастическое (Монте-Карло) моделирование случайной прогулки, начинающейся в «Риме», которая остановится, когда Рим будет возвращен, то в одном и двух измерениях вы можете быть уверены, что в конечном итоге вернетесь в Рим. и остановка симуляции - так просто. В трех измерениях вы никогда не сможете вернуться, так сложно.

https://en.wikipedia.org/wiki/Random_walk#Higher_dimensions

Чтобы визуализировать двумерный случай, можно представить человека, случайно идущего по городу. Город фактически бесконечен и расположен в квадратной сетке тротуаров. На каждом перекрестке человек случайным образом выбирает один из четырех возможных маршрутов (в том числе тот, с которого первоначально путешествовали). Формально это случайное блуждание по множеству всех точек на плоскости с целочисленными координатами.

Вернется ли когда-нибудь человек к исходной отправной точке прогулки? Это двумерный эквивалент проблемы пересечения уровней, рассмотренной выше. В 1921 году Джордж Поля доказал, что человек почти наверняка будет в двухмерном случайном блуждании, но для 3 или более измерений вероятность возврата к исходной точке уменьшается с увеличением числа измерений. В 3-х измерениях вероятность уменьшается примерно до 34%

См. Http://mathworld.wolfram.com/PolyasRandomWalkConstants.html для получения числовых значений.


21

Вот один из близких к сердцу участников в SciComp.SE:

Существование Навье-Стокса и гладкостью проблема

Трехмерная версия, конечно же, является известной открытой проблемой и предметом премии Clay Millenium Prize за миллион долларов. Но двумерная версия уже была разрешена давно, с утвердительным ответом. Терри Тао отмечает, что решение по существу восходит к диссертации Лере в 1933 году!

Почему трехмерную проблему так сложно решить? Стандартный волнообразный ответ заключается в том, что турбулентность становится значительно более нестабильной в трех измерениях, чем в двух. Чтобы получить более математически строгий ответ, ознакомьтесь с официальным изложением проблемы Чарльза Феффермана в Институте Клея или с прекрасным изложением Терри Тао возможных стратегий доказательства .


20

В теории социального выбора легко разработать схему выборов с двумя кандидатами (правила большинства), но разработка схемы выборов с тремя или более кандидатами обязательно предполагает компромисс между различными разумными условиями. ( Теорема Стрелка о невозможности ).


11

A1A2

U1TA1V=Σ1,U2TA2V=Σ2

Однако при одновременном приведении трех матриц к канонической форме (более слабое состояние по сравнению с вышеупомянутым) требуется:

QTA1Z=A1~,QTA2Z=A2~,QTA3Z=A3~

(A1+λA2+λ2A3)x=0

Источник: CF van Loan, "Лекция 6: Обобщенная декомпозиция сингулярных значений высшего порядка", CIME-EMS Summer School, Cetraro, Italy, June 2015.


U1TU2TV1

1
Σ

9

Есть много примеров в квантовых вычислениях, хотя я был вне этого некоторое время и поэтому не помню многих. Одним из основных является то, что двустороннее запутывание (запутывание между двумя системами) является относительно простым, в то время как запутывание между тремя или более системами является неразрешенным путаницей с, вероятно, сотней статей, написанных на эту тему.

max(uavbwcTabc/uvw)

Эта статья кажется уместной, хотя я ее не читал: большинство тензорных задач являются NP-сложными


2
Я чувствую, что реальная проблема, с которой вы сталкиваетесь, заключается в том, что разложение по тензорным рангам легко для тензоров порядка 1 (векторов) и тензоров порядка 2 (матриц), но NP-сложнее для остальных
Ричард Чжан

Это часть этого, но даже если у вас был способ разложить их, все равно остается проблема классификации / классификации. Для запутанности локальные унитарные значения не имеют значения, поэтому все, что осталось в случае порядка 2, это список сингулярных значений (в этом контексте SVD называется декомпозицией Шмидта). Для более высоких заказов есть целый зоопарк возможностей. Такие вопросы, как то, какие состояния могут быть преобразованы в другие состояния с помощью локальных операций, оказываются очень сложными (с теоретической точки зрения, не обязательно вычислительными).
Дэн Штальке

5

Угол деления пополам с помощью линейки и компаса прост, а разрез по углам вообще невозможен.



4

Вот хороший пример оптимизации: алгоритм метода мультипликаторов с переменным направлением (ADMM).

Учитывая несвязанную и выпуклую целевую функцию двух переменных (сами переменные могут быть векторами) и линейное ограничение, связывающее две переменные:

minf1(x1)+f2(x2)
s.t.A1x1+A2x2=b

Расширенная функция Лагранжа для этой задачи оптимизации будет тогда

Lρ(x1,x2,λ)=f1(x1)+f2(x2)+λT(A1x1+A2x2b)+ρ2||A1x1+A2x2b||22

Алгоритм ADMM примерно работает, выполняя расщепление Гаусса-Зейделя над расширенной функцией Лагранжа для этой задачи оптимизации, минимизируя сначала относительно (в то время как остаются фиксированный), затем путем минимизации относительно (в то время как остаются фиксированными), затем путем обновления . Этот цикл продолжается до тех пор, пока не будет достигнут критерий остановки.Lρ(x1,x2,λ)x1x2,λLρ(x1,x2,λ)x2x1,λλ

(Примечание: некоторые исследователи, такие как Экштейн, отказываются от представления расщепления Гаусса-Зиделя в пользу проксимальных операторов, например, см. Http://rutcor.rutgers.edu/pub/rrr/reports2012/32_2012.pdf )

Для выпуклых задач этот алгоритм оказался сходящимся - для двух наборов переменных. Это не так для трех переменных. Например, проблема оптимизации

minf1(x1)+f2(x2)+f3(x3)
s.t.A1x1+A2x2+A3x3=b

Даже если все являются выпуклыми, ADMM-подобный подход (минимизация расширенного лагранжиана относительно каждой переменной , затем обновление двойной переменной ) НЕ гарантированно сходится, как было показано в этой статье.fxiλ

https://web.stanford.edu/~yyye/ADMM-final.pdf


3

Сложить лист бумаги пополам без инструментов легко. Сложить его в трети сложно.

Разложить многочлен с двумя корнями легко. Факторинг полинома с тремя корнями значительно сложнее.


3
Ваш первый пример не соответствует духу цитаты. Идея состоит в том, что, когда он поднимается выше двух, это становится все труднее, однако, если сложить бумагу, 4-е - это почти так же легко, как половина. Цитата здесь будет «Даже проще, чем нечетно». Я думаю, что вторая хорошая - и она старается упростить ее с помощью бумаги!
Билл К

3

Гладкая кривая степени 2 (т.е. заданная как решение где - многочлен степени 2) с заданной точкой является рациональной , что означает, что она может быть параметризована частными многочленов степени 3 это не так. Первые считаются хорошо понятыми, вторые, называемые эллиптическими кривыми, когда базовая точка, то есть конкретное решение, являются объектом интенсивных исследований.f(x,y)=0f

Эта разница имеет несколько последствий:

  • В степени 2 существуют алгоритмы для нахождения всех рациональных точек (решения в рациональных числах), в степени 3 такой алгоритм не известен.
  • f(x)ff
  • Проблема дискретного логарифма задается на кривых степени 2, поэтому не подходит для криптографических приложений, в то время как предполагаемая жесткость той же задачи на эллиптических кривых лежит в основе некоторых наиболее популярных криптосистем с открытым ключом.

1

TREEФункция.

Мы можем вычислить TREE(2) = 3, но TREE(3)не вычислимы при жизни вселенной, мы только знаем, что она конечна.


TREE(3)nn

Хорошо, извините за ошибку. Исправлено мое заявление. Спасибо, Соломонов!
полугодие

1
Соответствующее видеофайл о Дереве (3): youtube.com/watch?v=3P6DWAwwViU
Новичок C


0

В квантовой физике многих тел мы изучаем различные решетки n спинов в рамках различных моделей (например, модель Гейзенберга, модель Бозе-Хаббарда, модель Изинга, ...). Конечно, у вас есть разные численные методы их изучения (DMRG, точная диагонализация, нейронные сети, ...), и одна из причин, по которой мы пытаемся разработать разные методы, заключается в том, что вы не можете решить эти модели, когда n становится слишком «высоким» и, конечно, хуже, если ты учишься в более высоких измерениях. Например, для модели Изинга точная диагонализация хорошо работает в 1d для n, не превышающего 20. Таким образом, для более высокого n вы пытаетесь использовать другой метод: DMRG. Но эти последние действительно хорошо работают при более высоком n (например, n = 70, но не очень хорошо при более высоком n). Опять же, вам нужен другой метод для более высоких n: нейронные сети (то есть искусственный интеллект). И в дополнение к нейронным сетям, Вы можете изучать «более легко» (т.е. с относительно большим n) эти модели в более высоких измерениях (но для измерения = 3 и малых n, например, все еще требуется много часов (несколько дней), чтобы получить основное состояние или Вы заметили, что хотели ...). Вкратце, когда n становится «слишком высоким» для ваших численных методов (но также и для производительности вашего компьютера), вам необходимо выполнять новые методы (и, если вы можете, использовать суперкомпьютер), и это та же проблема с размером вашего система, но, конечно, хуже, потому что вы быстро застряли (измерение = 4 трудно получить, кроме случаев, когда вы ждете много времени ...). все еще требуется много часов (несколько дней), чтобы получить основное состояние или наблюдаемое, которое вы хотели ...). Вкратце, когда n становится «слишком высоким» для ваших численных методов (но также и для производительности вашего компьютера), вам необходимо выполнять новые методы (и, если вы можете, использовать суперкомпьютер), и это та же проблема с размером вашего система, но, конечно, хуже, потому что вы быстро застряли (измерение = 4 трудно получить, кроме случаев, когда вы ждете много времени ...). все еще требуется много часов (несколько дней), чтобы получить основное состояние или наблюдаемое, которое вы хотели ...). Вкратце, когда n становится «слишком высоким» для ваших численных методов (но также и для производительности вашего компьютера), вам необходимо выполнять новые методы (и, если вы можете, использовать суперкомпьютер), и это та же проблема с размером вашего система, но, конечно, хуже, потому что вы быстро застряли (измерение = 4 трудно получить, кроме случаев, когда вы ждете много времени ...).
Конечно, здесь, это больше дополнительной информации к вашему вопросу, потому что на самом деле, в квантовой физике многих тел, n = 3 невелико (но если вы берете решетку, которая является гиперкубом, вы не можете взять n = 3 из конечно (из-за условий)).


-3

Реальный мир:

% Автоматизации - например, что-то легко автоматизировать на 30%, 50% или 80%, в то время как трудно подняться, например, выше 95%, и невероятно сложно или даже почти невозможно достичь 100%.


2
Можете ли вы предоставить ссылки на свои претензии?
Никогуаро

Я не могу, но взглянуть, например, на самостоятельное вождение автомобиля Научить машину двигаться прямо и контролировать скорость, вероятно, в разы легче, чем научиться водить ее, как обычный человек. Чем сложнее процесс, тем больше пограничных случаев появляется, когда вы хотите сделать его полностью автоматизированным
Джоэлти

Тогда я думаю, что ваш вопрос не подходит для этого сайта.
Никогуаро
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.