Ефективно обчислювані варіанти складності Колмогорова


28

Складність префікса Колмогорова (тобто - це розмір мінімальної саморозмежувальної програми, що виводить x ) має кілька приємних особливостей:K(x)x

  1. Це відповідає інтуїції, надаючи рядкам з малюнком або структурою меншу складність, ніж рядки без.
  2. Це дозволяє визначити умовну складність , або навіть краще До ( х | O ) для деякого оракула O .K(x|y)K(x|O)O
  3. Це суб-добавка .K(x,y)K(x)+K(y)

Однак це має жахливий мінус: повернення заданого x не можна визначити.K(x)x

Мені було цікаво, чи існує варіант складності Колмогорова використанням обмеженої моделі обчислення (або з використанням слабших мов, ніж ТМ, або з використанням обмежених ресурсів TM), що зберігає функції (1) та (2) (особливість ( 3) це бонус, але не є обов'язковим) при ефективній обчисленні?K(x)

Мотивація цього питання полягає у використанні в симуляційних дослідженнях різних іграшкових моделей еволюції. Таким чином, кращою є відповідь, яка раніше використовувалася як «грубе наближення» для складності Колмогорова в числовій роботі. Однак мета не є повністю експериментальною, тому відносно проста / чиста мова опису / модель обчислення для є кращою, щоб можна було довести деякі розумні теореми про те, наскільки різко K ' відрізняється від К і на яких струнах.KKK

Пов’язує питання

Складність Колмогорова зі слабкими мовами опису

Чи є розумне поняття алгоритму наближення для нерозв'язної проблеми?

Відповіді:


10

Gzip. Чилібразі та Вітаній мають дуже гарну статтю, де вони використовують gzip як наближення складності Колмогорова до кластеризації. Кластеризація стисненням


1
як вони визначають умовну складність?
Артем Казнатчеєв

1
Нехай A і B - два документи, а AB - два об'єднані. Вони дивляться на відношення SIZE (gzip (A) + gzip (B)) до SIZE (gzip (AB)).
Чад Brewbaker

1
Слід пам’ятати, що є недоліки використання gzip (і подібного) для наближення складності Колмогорова: bactra.org/notebooks/cep-gzip.html . Це не говорить про те, що це не корисно для кластеризації наборів даних у реальному житті, але воно говорить про те, що його корисність для наборів даних у реальному житті говорить нам щось про те, чим ці набори даних відрізняються від, скажімо, виводу генератора псевдовипадкових чисел ...
Джошуа Грохов

3

n=2m


x|x|=2mfx:{0,1}m{0,1}K(x)fx2m, у нас дієвий захід.

i{1,...,m}K(x|y)|y|=2m

a|a|=miaify(a)K(x|x)=2K(x|y)K(x)y

[Примітка: не ясно, чи можна все-таки ефективно обчислити умовну складність :(]

x.y0x1yK(x.y)K(x)+K(y)


K(x)x|x|=2m|y|=2lm>lK(x.y)=K(x)+K(y)

Також, на жаль, є деякі обмеження в моєму підході. Ми не можемо набагато вийти за рамки OBDD, якщо ми розглянемо мінімальні дерева рішень або просто BDD, тоді ми будемо перебиратись на проблеми з нестабільністю, розглянутими у цій відповіді . Навіть для змінних упорядковань OBDD, мабуть, є результати внутрішньостабільності . Тож здається, що OBDD є межею цього не дуже подібного до стандартного підходу Колмогорова-складності.


2

Я не фахівець, але якщо вам потрібна практична міра складності для рядків, ви можете подивитися на міру складності Titchener.

Див . Веб-сайт Titchener для швидкого ознайомлення; його документи можна завантажити у форматі PDF .

Анотація - Нова міра складності рядків для кінцевих рядків представлена ​​на основі конкретного рекурсивного ієрархічного процесу виробництва рядків . З максимальної межі виводимо залежність між складністю та загальним інформаційним змістом. ..повна стаття ...

Я також знайшов деякі статті щодо практичних реалізацій (див., Наприклад, " Швидкий алгоритм розкладання T ")


2

По суті, практично будь-який метод машинного навчання або стиснення є наближенням до складності Колмогорова:

  • p(x)logp(x)
  • nK(x)n+sCsCx

Таким чином, ви можете просто шукати схеми з будь-яким компресором або розподілом ймовірностей, і чим вони краще стискають ваші дані, тим краща ваша верхня межа для K (x). Просто не забудьте додати розмір самого компресора до розміру стислих даних, щоб отримати оцінку.

K(x)

K(x)K

Ви також можете використовувати часовий час, щоб визначити свій клас моделі, що приводить вас до відповіді Суреша. В основному, якщо ви припускаєте, що ваш джерело даних має багаточленну складність у часі, і ви намагаєтесь всі поліномічні машини Тюрінга стиснути його, ви можете бути впевнені, що ви точно оцінили складність Колмогорова. Це все ще може бути не так вже й практично, але для менших часових меж ви зможете обчислити повну байєсівську суміш, яка буде її добре наближати.

Технічні деталі див. У цій роботі . Відмова: Я один із авторів.

K(x)K(x)


-1

Ви шукаєте складність Колмогорова, обмежена ресурсами. Ви можете почати з цього паперу та відділитись.


2
дякую за посилання на документ, я згадую складність, обмежену ресурсами у питанні, але зацікавленість дійсно є в ефективних обчислювальних заходах. Схоже, з цієї статті видно, що «випадкові рядки» для цих моделей відповідають наборам високої складності. Це говорить про те, що вирішення складності рядка в цих моделях не є ефективно обчислюваним, ні?
Артем Казнатчеєв
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.