Итальянец Джованни Вильетта из Пизанского университета подсчитал вычислительную сложность известных компьютерных игр. Статья ученого пока не принята к публикации, однако ее препринт доступен на сайте arXiv.org.
В рамках работы Вильетта оценивал сложность вычисления последовательности действий, который приводят к победе в игре. В первой части статьи итальянец приводит серию теорем, которые позволяют связать вычислительную сложность игры с наличием в ней некоторых конкретных элементов. К последним, например, относятся рычаги, которые надо нажать, чтобы открылась некоторая дверь, призы, которые необходимо собирать, и многое другое.
Как оказалось, большая часть игр принадлежит к так называемому классу NP - это задачи, решающиеся за полиномиальное время на недетерминированной машине Тьюринга (то есть машине, программа которой допускает развилки). Также нашлись игры, принадлежащие к классу P (полиномиальное время на детерминированной машине Тьюринга), L (задачи, решаемые с привлечение логарифмически зависящего от начальных данных количества памяти детерминированной машиной Тьюринга), NL (то же, что и L, только машина недетрминированная) и PSPACE.
Кроме этого, несколько задач оказались NP-полными и PSPACE-полными. По сути это самые сложные задачи в своих классах - к ним за полиномиальное время можно свести любую задачу из данного класса. Например, к NP-полным задачам относится задача коммивояжера - поиск замкнутого кратчайшего пути в графе, который проходит по каждой вершине хотя бы один раз.
Полный список результатов выглядит следующим образом:
1. Boulder Dash (1984) - сложность NP 2. Deflektor (1987) - сложность L 3. Doom (1993) - сложность PSPACE 4. Lemmings (1991) - сложность NP 5. Lode Runner (1983) - сложность NP 6. Mindbender (1989) - сложность NL 7. Pac-Man (1980) - сложность NP 8. Pipe Mania (1989) - NP-полная игра 9. Prince of Persia (1989) - PSPACE-полная игра 10. Puzzle Bobble 3 (1996) - NP-полная игра 11. Skweek (1989) - NP-полная игра 12. Starcraft (1998) - сложность NP 13. Tron (1982) - сложность NP
Вильетта также заявил, что аналогичный анализ для современных игр смысла не имеет, так как в них могут встречаться неразрешимые головоломки.
Источник: Лента
|