Колмогоровская сложность / много букв :: информатика :: Колмогоровская сложность :: наука

наука информатика Колмогоровская сложность много букв 

Колмогоровская сложность

Была ли встреча с самым дорогим вам человеком случайной, или виной тому была какая-то скрытая причина? А что насчёт странного вчерашнего сна – это были только случайные метания синапсов мозга, или он раскрыл что-то глубокое по поводу вашего подсознания? Возможно, сон пытался рассказать вам что-то о вашем будущем. Возможно, что и нет. Имеет ли тот факт, что ваш близкий родственник заболел опасной разновидностью рака, какой-то глубокий смысл, или же это просто последствия случайных мутаций ДНК?


В нашей жизни мы часто задумываемся над закономерностями происходящих вокруг нас событий. Мы задаёмся вопросом, случайны ли наши жизни, или у них есть какой-то смысл, уникально истинный и глубокий. Я, как математик, часто обращаюсь к числам и теоремам за идеями по поводу подобных вопросов. И так получилось, что я кое-что узнал о поиске смысла в закономерностях жизни благодаря одной из самых глубоких теорем математической логики. Эта теорема, проще говоря, демонстрирует, что в принципе невозможно узнать, является ли объяснение закономерности наиболее глубоким или интересным из всех объяснений. Точно так же, как в жизни, поиск смысла в математике ничем не ограничен.


наука,информатика,Колмогоровская сложность,много букв


Небольшая прелюдия. Рассмотрим следующие три строки символов.


1. 100100100100100100100100100100100100100100100100100100100100100100100

2. 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97

3. 38386274868783254735796801834682918987459817087106701409581980418.


Как мы можем их описать? Например, мы легко можем это сделать, просто записав их – так, как мы только что и проделали. Однако сразу ясно, что первые две строчки можно описать и короче. Первая – это просто последовательность повторяющихся «100». Вторая – список первых нескольких простых чисел. А что насчёт третьей? Её можно описать, просто выведя всю строку. Но есть ли для неё лучшее, более короткое описание?


В начале 1960-х американский подросток Грегори Хайтин, всемирно известный русский [и советский] математик Андрей Николаевич Колмогоров, и пионер информатики Рэй Соломонов независимо друг от друга сформулировали способ измерения сложности последовательностей символов. Их идеи стали называть теорией сложности Колмогорова или алгоритмической теорией информации. Они постулируют, что сложность строки определяется длиной наикратчайшей компьютерной программы, способной её выдать. То есть, возьмём строчку, и поищем самую короткую компьютерную программу, которая её выдаёт. Программа – один из видов описания строки. Если кратчайшая из таких программ окажется очень короткой, тогда в строке есть простая закономерность, и она не очень сложная. Мы говорим, что в такой строке мало алгоритмическое содержание. И наоборот, если для выдачи строки требуется длинная программа, тогда строка сложная, и её алгоритмическое содержание больше. Для любой строки необходимо искать кратчайшую программу, выдающую такую строку. Длина такой программы называется Колмогоровской сложностью строки.


Давайте вернёмся к трём первым строчкам. Первые две строки можно описать при помощи относительно коротких компьютерных программ:


1. Вывести “100” 30 раз.

2. Вывести первые 25 простых чисел.


Колмогоровская сложность первой строки меньше Колмогоровской сложности второй строки, поскольку первая программа короче второй. Что насчёт третьей? У этой строчки нет очевидных закономерностей. Тем не менее, можно написать дурацкую программу, выводящую эту последовательность:


3. Вывести “38386274868783254735796801834682918987459817087106701409581980418”


Такая программа справляется с задачей, но неудовлетворительно. Возможно, существует программа короче, демонстрирующая наличие закономерности в этой строке. Когда кратчайшей программой, выдающей строку, оказывается программа «вывести строку», мы говорим, что эта строка очень сложна, и известных закономерностей не содержит. Строка без закономерностей называется случайной. Но хотя мы закономерности не увидели, она может существовать. В математике, как и в жизни, мы сталкиваемся со множеством закономерностей, кажущихся случайными.


Мы могли бы попытаться использовать удивительные возможности современных компьютеров, чтобы найти закономерность и кратчайшую программу. Разве не было бы замечательно, если бы существовал компьютер, способный просто вычислить Колмогоровскую сложность любой строки? Такой компьютер принимал бы на вход строку, и выводил бы длину кратчайшей программы, способной выдать эту строку. Конечно же, со всеми этими новомодными штучками вроде ИИ, глубинного обучения, больших данных, квантовых вычислений, и т.п., должно быть легко создать такой компьютер.


Увы, такой компьютер создать невозможно! Пусть современные компьютеры и весьма мощны, эта задача невыполнима. Таково содержание одной из глубочайших теорем математической логики. Теорема, по сути, говорит, что Колмогоровскую сложность строки невозможно вычислить. Не существует механического устройства, определяющего размер наименьшей программы, выдающей заданную строку. Дело не в том, что наш текущий уровень компьютерных технологий не дотягивает до задачи, или что мы недостаточно умны для того, чтобы написать такой алгоритм. Было доказано, что сама идея описание и вычисления демонстрирует, что компьютер в принципе не в состоянии выполнить такую задачу для любой строки. И если компьютер, возможно, способен на поиски определённых закономерностей в строке, он не способен найти наилучшую закономерность. Мы, возможно, и найдём короткую программу, выводящую определённую последовательность, но всегда может существовать ещё более короткая. Мы никогда об этом не узнаем.


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


Парадокс интересных чисел связан с утверждением, что все натуральные числа интересные. 1 – это первое число, и это интересно. 2 – первое чётное число. 3 – первое нечётное простое число. 4 – интересное число, потому что 4 = 2 × 2 и 4 = 2+2. В таком роде можно продолжать дальше, и находить интересные свойства многих чисел. В какой-то момент мы можем встретить число без интересных свойств. И мы можем назвать это число первым неинтересным номером – но это само по себе уже интересное свойство. В итоге неинтересные числа тоже оказываются интересными!


Идеи, содержащиеся в Колмогоровском доказательстве, похожи на идеи парадокса Берри, касающегося описания больших чисел. Заметим, что чем больше слов мы используем, тем большее число мы можем описать. К примеру, трем словами можно описать «триллион триллионов», а пятью – " триллион триллионов триллионов триллионов триллионов", куда как более крупное число. Теперь рассмотрим число, описываемое следующей фразой:


Самое маленькое число, которое нельзя описать меньше, чем пятнадцатью словами [The smallest number that cannot be described in less than 15 words]


Для описания числа требуется 15, 16 или даже больше слов. Его нельзя описать 12, 13 или 14 словами. Однако, вот в чём проблема: приведённая выше фраза описывает это число при помощи 10 слов [по-английски – 12 слов / прим. перев.]. Наше описание числа противоречит описанию числа – вот вам и парадокс.


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


То, что Колмогоровская сложность невычислима – это результат из чистой математики, и мы не должны путать этот идеальный мир с куда как более сложной и беспорядочной реальностью. Однако существуют некоторые общие моменты, связанные с Колмогоровской сложностью, которые мы можем привнести в реальный мир.


Много раз мы сталкивались с тем, что казалось нам совершенно хаотичным. Случайность нервирует нас, и мы ищем закономерности, частично устраняющие хаос. Если мы находим закономерность, остаётся неясным, является ли она лучшей закономерностью, объясняющей наши наблюдения. Мы можем задаться вопросом – существует ли более глубокая закономерность, дающая лучшее объяснение. Теория Колмогоровской сложности учит нас тому, что на базовом уровне не существует гарантированного способа определить наилучшую закономерность. Мы просто никогда не узнаем о том, является ли найденная нами закономерность наилучшей.

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


Реальный мир добавляет сложности. Если в мире строк и компьютерных программ ошибок нет, в реальном мире можно совершить ошибку. Мы легко узнаем, выводит ли какая-то определённая программа строку, или нет. И хотя мы, вероятно, не сможем определить оптимальную программу для вывода определённой строки, мы сможем определить, выводит ли она требуемую строку. А реальный мир, в отличие от этого, гораздо более сложный. Нам может показаться, что мы видим последовательность, когда её, на самом деле, нет.

Наше понимание наших поисков смысла начинает оформляться. Мы презираем случайности и обожаем закономерности. Мы биологически запрограммированы находить закономерности, объясняющие то, что мы видим. Но мы не можем быть уверены, что найденная нами закономерность будет правильной. Даже если бы мы каким-то образом могли гарантировать отсутствие ошибки, и достигли бы совершенства, подобного компьютерному, где-то всё равно всегда может находиться ещё более глубокая истина. Это напряжение подпитывает нашу любовь к литературе, театру и кино. Когда мы читаем роман или смотрим пьесу, автор или режиссёр представляет нам последовательность событий с общей темой, закономерностью или моралью. Литература, пьесы и кино предлагают нам великолепный способ убежать от обычно непонятного и бессмысленного хаоса, встречающегося нам в окружающем мире. Очень хорошая литература идёт дальше, и оставляет нам возможности многих интерпретаций. Мы лицом к лицу встречаемся с невычислимостью Колмогоровской сложности.


Это напряжение также определяет, как мы проживаем наши жизни. Путешествуя сквозь якобы случайные события, мы ищем закономерности и структуру. Жизнь полна взлётов и падений. Есть радость влюблённости, веселого времяпрепровождения с детьми, ощущения великих достижений по окончанию сложной работы. Есть боль разрушающихся отношений, агония неудачи после активных попыток выполнить задачу, трагедия смерти любимого. Мы пытаемся искать во всём этом смысл. Мы презираем чувство полной случайности и идею, что мы просто следуем хаотичным, незамысловатым законам физики. Мы хотим знать, нет ли в окружающем мире какого-то смысла, цели, значимости. Нам нужна волшебная история жизни, и мы рассказываем себе истории.


Иногда эти истории просто ложны. Иногда мы обманываем себя и окружающих. А иногда мы правильно определяем закономерности. Но даже когда история правдива, она не обязательно будет наилучшей. Мы никогда не будем уверены, что в глубине не лежит ещё более базовая и точная история. Старея и впадая в тоску, мы приобретаем определённые идеи по поводу Вселенной, недоступные нам раньше. Мы находим улучшенные закономерности. Возможно, мы начинаем видеть вещи яснее. Или нет. Мы никогда не узнаем. Но мы знаем, что поиски гарантированно не закончатся.


Нозон Яновски – доктор наук в математике, работает в Образовательном центре городского университета Нью-Йорка, профессор информатики в Бруклинском колледже того же университета.


Источник: habr.com




Подробнее

наука,информатика,Колмогоровская сложность,много букв
Еще на тему
Развернуть
Никогда не думал, что скажу тут такое, но я видел это на хабре.
https://habr.com/post/421763/
Ничего,что в конце этого поста есть ссылка на Хабр?
Eksli Eksli 19.09.201815:10 ответить ссылка 0.8
Даже не открывал кат. Статью-то читал.
Суть в том, что не ожидал увидеть эту статью тут.
На хабр, а не на статью.
А вот эта Колмагоровская сложность практическую ценность имеет или просто разминка для мозга?
Я не доебаться, просто интересно.
вообще, если чутка пораскидываться мозгами, то для написания определенных программ может. Если ты используешь для вывода строки Колмагоровскую программу или достаточно близкую в рамках задачи к ней, то у тебя будет программа, потребляющая наименьшее количество ресурсов.

А так - хз
короче говоря, допизды.
мир программирования порой насыщен тупыми решениями "влоб" (ИЧСХ - иногда достаточно оптимальными) и никому оно не упало искать крачайшую программу для выводва строки. порой гараздо проще сохранить строку как константу в коде и потом вывести ее без всяких вычислений - меньше по времени и ресусам. да и намного понятнее, нежели разбирать, что, еби его мать, та формула с тройной рекурсией делает.

а индусы так и вовсе (то ли от природы такие, то ли херней маются, то ли им реально за размеры исходников доплачивают), любят усложнять, даже такие банальные вещи, как проверка булевого значения, гавнокодом в виде "if(x == true)" или куда хуже "if(x.toString() == "true")".

так что это все годится только мозги расшевелить. впрочем, тоже полезно.
if(x.toString().Lenght() == 4)

Кто видел более упоротые варианты?
#define true false // happy debug bitches
switch(x) {
case true:
case false:
default:
}
Для этого давно уже существует такая штука, как математическое программирование, решающее задачи оптимальности и наиболее короткого пути.
реакторчане днище, минусуют много буков.
tsdaemon tsdaemon 19.09.201813:45 ответить ссылка -4.8
Потому что некоторые работают мозгами на работе, а после нее хотят отдыхать и развлекаться.
Приятно видеть, что какие-то тревожащие вопросы бытия можно описать научно
Особенно забавно, что подобные тексты, заставляющие поразмыслить и/или удостовериться в некой личной правоте, попадаются на глаза тогда, когда это нужно
выходит Гарус калибрует лучше из-за того, что Легион не умеет в колмогоровскую сложность
ilka ilka 19.09.201815:32 ответить ссылка -1.5
У Казанцевой и Панчина родился ребёнок и уже пишет популярные статьи? Даже полноценно сформулировать теорему автор не смог.
enouf enouf 20.09.201804:46 ответить ссылка -0.2
Я только проснулся, а теперь снова спать.
Dremora Dremora 20.09.201811:32 ответить ссылка 0.1
Только зарегистрированные и активированные пользователи могут добавлять комментарии.
Похожие темы

Похожие посты
КАК ТЫ ВИДИШЬ СЕБЯ, КОГДА РАССКАЗЫВАЕШЬ ДЕВУШКЕ ПРО КОСМОС:
КАК ТЕБЯ ВИДЯТ ДРУЗЬЯ:
подробнее»

физика наука математика космос сложность тян нет песочница

КАК ТЫ ВИДИШЬ СЕБЯ, КОГДА РАССКАЗЫВАЕШЬ ДЕВУШКЕ ПРО КОСМОС: КАК ТЕБЯ ВИДЯТ ДРУЗЬЯ:
ЙАССКАЖИТЕЯ
ШЩт Лщ А .	— Ли V- +*w - ^
КАКИЕ, ТРУДНОСТИ
■ Vft) к-.иУ>-г л* г	V
КОРОНАВИРУСОМ ВЫ ИСПЦГГЬ'Ю^ЕТЕ^
подробнее»

врачи сложности интервью коронавирус

ЙАССКАЖИТЕЯ ШЩт Лщ А . — Ли V- +*w - ^ КАКИЕ, ТРУДНОСТИ ■ Vft) к-.иУ>-г л* г V КОРОНАВИРУСОМ ВЫ ИСПЦГГЬ'Ю^ЕТЕ^
«"9ri гР;Лег^ -j zXa- ZZ Жж Зз	X Ии	xy ^ ‘ts-^ Ий Кк Лл	гл e^;e'r)t Мм
Hh|"Oo	Irtts mafxrt* flcjzl . Scuz J Tcut- , Pfrî*-*' £»;!f Пп Pp A Cc^Tt		у... Уу
Фф[ Xx	rJ* ЦЦ	щщ	ЛС/ * Ъъ
ü£> ,/f.^A Art>tv 	 ло^Ч, <i>r № лв№Ц ^ - V.If H*ro0 , Ы ы" ' Ьь “	Öl* lfr> Ээ *	Юк> Xpatf-rn'P •
подробнее»

алфавит сложности перевода без перевода abc

«"9ri гР;Лег^ -j zXa- ZZ Жж Зз X Ии xy ^ ‘ts-^ Ий Кк Лл гл e^;e'r)t Мм Hh|"Oo Irtts mafxrt* flcjzl . Scuz J Tcut- , Pfrî*-*' £»;!f Пп Pp A Cc^Tt у... Уу Фф[ Xx rJ* ЦЦ щщ ЛС/ * Ъъ ü£> ,/f.^A Art>tv ло^Ч, <i>r № лв№Ц ^ - V.If H*ro0 , Ы ы" ' Ьь “ Öl* lfr> Ээ * Юк> Xpatf-rn'P •
B i T C H f ¿Ail	j N0.1 IE,'.CHER1	I No Money No Honey |	ponDETra
\SS HOLc	I N0 1 CHEF 1 m iijfi m	| BEER CAN GIVE ENERGY 1 ■*« grans IB■	■ THE Y SAY YOU'RE HANDSOME Ai . ■ GENTLE 1 SAY YOU'RE ASS HOL
| GOOD PA PA 1 1 ft- g % I	■ N0.1 DOCTOR 1 * g B £	InofaSnsmbId ■ggggggg	1100%TRUST YOU BECAUSE
подробнее»

сложности перевода

B i T C H f ¿Ail j N0.1 IE,'.CHER1 I No Money No Honey | ponDETra \SS HOLc I N0 1 CHEF 1 m iijfi m | BEER CAN GIVE ENERGY 1 ■*« grans IB■ ■ THE Y SAY YOU'RE HANDSOME Ai . ■ GENTLE 1 SAY YOU'RE ASS HOL | GOOD PA PA 1 1 ft- g % I ■ N0.1 DOCTOR 1 * g B £ InofaSnsmbId ■ggggggg 1100%TRUST YOU BECAUSE