Вплив розмірності стільникових автоматів на класи складності


9

Візьмемо для прикладу зменшення 3d → 2d: Яка вартість моделювання 3d-стільникового автомата 2-денним стільниковим автоматом?

Ось купа більш конкретних питань:

  1. Який алгоритм змінить складність часу на скільки?

  2. Яка була б основна ідея кодування; як 3d сітка ефективно (або недостатньо ефективно…) відображається на 2d сітку? (Схоже, завдання полягає в тому, щоб досягти зв'язку між двома клітинками, які спочатку сусіди по 3D-сітці, але більше не є сусідами по 2-й сітці).

  3. Зокрема, мене цікавить дрейф складності алгоритмів експоненціальної складності (який, мабуть, залишається експоненціальним незалежно від розміру, чи так це?)

Примітка: Мені не цікаві класи низької складності, для яких обраний метод вводу / виводу впливає на складності. (Можливо, найкраще припустити, що метод вводу / виводу є безрозмірним: виконується локально на одній конкретній комірці протягом змінної кількості часових кроків.)


Деякий контекст: Мене цікавить паралельне переписування локальних графіків, але ці графіки ближче до 3d (або, можливо, ωd…) сітки, ніж до 2d сітки, я хотів би знати, чого очікувати від апаратної реалізації в двовимірній. кремнієвий чіп.

Відповіді:


5

Я поясню фрагменти цієї статті: Моделювання 3D клітинних автоматів за допомогою 2D стільникових автоматів .

Почнемо з кодування сітки, функції . Інтуїтивно не може зберегти відстань, оскільки кількість комірок на відстані менше від початку не буде однаковою. Вам потрібно буде вставляти їх про клітин в деяких однакову кількість клітин , але який буде яким - то чином виду , але тоді ви повинні мати . Ці і трохи нагадують радіус поняття сусідства, яке ви знайдете в будь-якому стільниковому автоматі.t:Z3Z2tRR3r2r>RrR

Таким чином, трансформація статті зробить речі по суті більшими, щонайменше, на . Якщо точки першої сітки віддалені від , вони будуть віддалені щонайменше від у другій сітці. На жаль, дане вбудовування є лише в .3/2dO(d3)O(d3)

Однак, і це дуже важливе зауваження, ви не отримуєте такого ж мікрорайону, як у першому автоматі, і тому я раніше сказав "трохи як". Цитувати статтю:

очевидно, що в будуть дуже близькі клітини і такі, що [їх кодування буде] довільно далеко вZ3Z2

Це працює і для часу: час виконання одного кроку в може бути довільним довгим у . Зауважте, що кодування є більш симуляцією: 2D CA автор навіть імітує обчислення функції .Z3Z2t:Z3Z2

Безпечно сказати, що складність (у часі) будь-якого алгоритму, запущеного на 3D CA, вибухне при переході на кодування цього 3D CA у 2D CA. Автор каже, що його неможливо пов'язати жодною функцією в його моделюванні. І я кажу, що вибух взагалі є принаймні експоненціальним, адже час поширення інформації залежить від позиції.

Ідея запуску алгоритмів на стільникових автоматах здається мені вже трохи дивною, але це особисто. Однак це ніщо в порівнянні з ідеєю впровадження стільникового автомата в силіконовий чіп, чи це просто я?


Дуже дякую за посилання. Це довільне відстань між двома вузлами робить проблему набагато гіршою, ніж я думав. Однак зміщення складності алгоритмів , можливо, не так вже й погано, оскільки вам не потрібно імітувати реалізацію на 3d-автоматах, щоб запустити їх на 2d. Це означає, що для мого використання мені доведеться покладатися на конкретне кодування, оскільки загальне рішення має це жахливе обмеження!
Стефан Гіменез

О, і про можливу апаратну реалізацію запитаємо ;-)
Stéphane Gimenez
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.