Практическая реализация ИИ ставит проблему, что необходимо задать некую глобальную цель для интеллектуальной системы, для чего необходимо ввести простейший внешний мир…..
Разработал тест-игру для определения относительной интеллектуальности псевдоразумных алгоритмов класса «Л.С.А.2» с элементом управления алгоритмизацией в виде: простейшего структурно-динамического информационного тензора «сознание», образующегося на основе двумерного базиса по достаточному критерию интереса и инстинкту самосохранения.
В принципе игра подойдет, как тест интеллекта для любых саморазвивающихся интеллектуальных систем.
Итак, игра, правила игрового мира:
Игровой мир – плоское поле, разбитое на сегменты, т.н. квадрат 10х10 ячеек.
В одной ячейке может быть: либо пусто, в такую клетку может попасть игрок, либо стационарное препятствие, в такую клетку игрок не может попасть.
Рекомендуется генерировать поле, в котором количество ячеек с препятствием по отношению к количеству ячеек поля не более 10-20%.
Пример поля:
В игре участвуют более 2-х игроков, скажем, 5 интеллектуальных систем.
Перед началом, каждому игроку присваивается уникальный номер, и в случайном порядке раздаются карточки с номерами, так что бы номера игрока и карточки не совпадали и образовывали единичный полный цикл.
Например, игрок – карточка соответственно: 1 – 4, 4 – 2, 2 – 5, 5 – 3, 3 – 1.
Информация, у кого какая карточка - открыта, известна каждому игроку.
Теперь, игроки помещаются на поле в случайном порядке, так что бы минимальное расстояние между игроками было не меньше 3-х клеток.
Игра пошаговая, сначала ходит игрок 1, далее 2, 3, 4, 5 и далее по циклу.
Каждый игрок определенным образом сканирует информацию о внешнем мире и выбирает один из 5-ти вариантов дальнейших действий.
Сканирование информации осуществляется по принципу 5 направлений: слева, слева-прямо, прямо, справа-прямо, справа.
Направление прямо определяется предыдущим шагом, согласовано движению.
Пример:
Тогда информация сканирования будет следующая:
1. 2 шага слева – препятствие.
2. 5 шагов слева-прямо – препятствие.
3. 3 шага прямо – игрок 2.
4. 3 шага справа-прямо – препятствие.
5. 3 шага справа – препятствие.
По информации и накопленному “опыту” алгоритм должен выбрать, какой сделает следующий шаг:
1. Попасть на одну клетку влево.
2. Попасть на одну клетку прямо.
3. Попасть на одну клетку вправо.
4. Попасть на одну клетку назад.
5. Осмотреться.
При команде осмотреться, игрок остается на месте. И на следующем ходу получает более обширную информацию.
Пример сканирования, после команд: влево, осмотреться:
1. 2 шага слева – препятствие.
2. 2 шага слева-прямо – препятствие.
3. 1 шаг прямо – препятствие.
4. 7 шагов справа-прямо – препятствие.
5. 3 шага справа – препятствие.
6. 2 шага справа-сзади – игрок 2.
7. 4 шага сзади – препятсвие.
8. 3 шага слева-сзади – препятствие.
9. В клетке слева-слева-прямо – пусто.
10. В клетке слева-прямо-прямо – игрок 4.
11. В клетке справа-прямо-прямо – пусто.
12. В клетке справа- справа -прямо – пусто.
Игрок удаляется с поля – умирает, если:
В случае если столкнулся с другим игроком, т.е. другой игрок расположен на любой из 8-ми клеток, вокруг игрока, и при условии:
1. Если у соперника есть карточка с номером этого игрока, а у игрока нет карточки с номером соперника.
2. Если у соперника есть карточка с номером этого игрока и у игрока есть карточка с номером соперника, и у соперника число карточек больше, чем у игрока.
При смерти игрока, его карточка достается сопернику.
Игра продолжается изначально зафиксированное число пошаговых циклов. Например – 200. Эта информация о конце игры, не известна игрокам.
Для игроков правило игры простое: Выжил – значит победил.
Тогда постановка глобальной цели ИИ в этом мире – жить как можно дольше.