Вопросы к теории игр и возможные пути решения этих вопросов
Мы понимаем что обычно игру и игроков в эту игру можно засунуть в алгоритм - например игру в шахматы между ботами можно запустить на компьютере. Какие вопросы мне бы хотелось задать с точки зрения математики к подобной системе ? Отчасти я сформулировал их в прошлых постах и хотел бы доформулировать сейчас.
Как выполняя алгоритм определить список ботов и игр между этими ботами выполняемых в этом алгоритме в каждый момент времени и возможно ли это в принципе?
1А. Кроме соображений из предыдущих постов есть ограничивающие соображения. Например очевидно что для игры в крестики - нолики 3x3 нужно минимум девять бит памяти и алгоритмы имеющие меньшее количество памяти не смогут играть в эту игру.
1Б. Также стоит заметить что если бы мы зашифровали и обфусцировали игру в крестики - нолики между ботами , то наличие подобной игры в алгоритме можно было бы определить часто только проведя дешифрацию данного алгоритма. Что говорит нам о том что решение данного вопроса связано также с математикой криптографии.
1В. Если алгоритм одновременно выполняет игру в шахматы между игроками А и Б а также независимо но последовательно игру в крестики - нолики между игроками В и Г , то мы могли бы предположить что состояние области памяти (оперативной) связанной с игрой шахматы и игроками А и Б никак не повлияет на состояние памяти для игроков В и Г с их игрой в крестики нолики (если конечно опять же алгоритм не зашифрован и не обфусцирован). В этом смысле мы могли бы связать множество игр и множество игроков с множеством участков памяти имеющих слабую связность взаимного влияния.
1Г. Это продолжение пункта 1В. Предположим у нас есть алгоритм который выполняет игру в шахматы между игроками А и Б и игру в крестики нолики между игроками В и Г. Предположим до третьего хода эти игры выполняются не зависимо друг от друга , но на четвертом ходу управляющий этими играми и игроками алгоритм начинает переносить состояние игры в крестики - нолики (3*3) на край (3*3) шахматной доски(8*8) ( предположим если крестик то ставится белая пешка если нолик то черная пешка). Очевидно что такое резкое изменение условий игры (неожиданное для игроков) заставит игроков А и Б (если они хотят выиграть) следить и за шахматной доской и за игрой в крестики - нолики. Интересно также что мы можем сказать что память которая содержит игровое поле игры в крестики - нолики относится будет не к одной игре а сразу к двум играм.
2. Как выполняя алгоритм, зная список игр и игроков в нем определить какие игроки управляют другими игроками? И что такое это управление в контексте математики?
2А Очевидно что для шахмат и крестиков - ноликов мы можем написать алгоритм таким образом что и игроки-боты и игры в которые играют эти игроки будут зависеть от внешней управлющей конструкции. Например игроки-боты А и Б играют в шахматы , мы можем написать алгоритм так что на третьем ходу он заставит игрока А хотеть сьесть коня или ладью , а на шестом заставим игрока-бота А ошибиться. Это происходит просто потому что игроки изначально не имеют доступа к каким-то специальным областям памяти ( кстати с точки зрения архитектуры фон Неймана не используя при этом кольца защиты встроенные в процессор вероятней всего для реализации подобного ограничение доступа к памяти нужно делать виртуальную память внутри машины Тьюринга)
2Б. Этот пункт связан с пунктом 2А. Если у нас есть некая дискретная динамическая система состоящая из переменных (пусть их названия А,Б,В, Г) и правила эволюции этой динамической системы настроены таким образом что к примеру на состояние переменной А не влияет состояние никаких других переменных , а на состояние переменной Б влияет только состояние А , а на состояние В влияет только состояние переменных А и Б . То мы определенно можем сказать что переменная А - управляющая для всех остальных переменных , а Б управляющая для В и Г .
2В. B играх управление возможно тремя основными способами. Опишу их просто чтобы не вдаваться в подробности. Первый способ: есть гриб который прикрепляется к мозгу муравья и заставляет его менять поведение в свою пользу - c точки зрения математики это значит что игроки играют в такую игру ходы в которой способны менять внутреннее состояние других игроков - переписывать их цели. Второй способ: игра построена таким образом что для того чтобы игроку выполнить свои цели ему нужно выполнить цели другого игрока. Третий способ: правила игры управляют игроками - если правила игры позволяют переписывать самих себя то такое управление не полное , а значит игроки могут придумать свои правила игры
3. Как понять будет ли алгоритм самоусложняющимся в смысле информации или самоупрощающимся? Какие способы кроме случайности есть у алгоритма для самоусложнения?
3А. Можно привести пример самоупрощающегося алгоритма. Предположим есть алгоритм внутри которого двое ботов играют в шахматы. Можно его настроить таким образом что на 10-м ходу этот алгоритм запишет во всю доступную ему память нули. Алгоритм сам себя упростил и удалил
3Б. Мы знаем что есть простые динамические системы а есть хаотические (например клеточные автоматы). Какие есть признаки что алгоритм закончит свою работу? (При этом мы понимаем что с точки зрения проблемы точки останова не всегда понятно закончит ли алгоритм свою работу.