Робопсихология на основе искусственной нейронной сети (ИНС)
Приведем пример создания нескольких психотипов, которые можно впоследствии использовать в компьютерной игре. Главная мысль задачи состоит в том, что используя типовые ситуации мы обучаем "модель кусочка мозга", который учится, а затем правильно себя ведет в ситуациях, которым его не обучали.
Условие задачи:
Характер персонажа компьютерной игры жанра 3-D Action зависит от параметров игрового процесса: здоровье, наличие ножа, наличие стрелкового оружия, количеством врагов.
Параметр |
0 (плохое),1 (справится с одним противником), 2 (справится с двумя противниками) |
Здоровье |
0 (отсутствует),1 (имеется) |
Нож |
0 (отсутствует),1 (имеется) |
Стрелковое оружие |
0 (отсутствует),1 (имеется) |
Количество врагов |
Используется в обучении 0,1,2 |
На основании состояний процесса, выбирается одно из возможных действий персонажа:
- атаковать,
- прятаться,
- бродить,
- бежать.
Обучить ИНС поведению в компьютерной игре жанра 3-D Action следующим характерам:
- воин,
- рациональное поведение,
- трус.
Обученной считается ИНС, прошедшая обучение с точностью 100% на имеющихся правилах и выдающая правильный, прогнозируемый ответ на условиях не предъявленных в процессе обучения.
Этапы создания психотипов:
1. Придумать три указанных в задании характера и сформировать правила для обучения ИНС в файле rules.txt. В результате должно получиться 3 файла rules.txt, в каждом из которых записаны правила для отдельного характера.
2. Подобрать параметры в файле network_config.txt позволяющие достичь 100% точности обучения ИНС.
3. Обучить ИНС каждому характеру.
4. Проверить правильность работы ИНС на правилах не предъявленных в процессе обучения.
Файлы:
Neuronnet.out (Neuronnet.exe) — программа моделирующая ИНС.
network_config.txt — файл конфигурации ИНС.
Пример файла конфигурации ИНС.
0.2 — шаг коррекции ошибки нейронов выходного слоя на этапе обучения сети.
100000 — количество итераций обучения ИНС.
error_stats.txt — ошибки возникшие в процессе обучения ИНС.
rules.txt — файл с правилами по которым обучается ИНС. Пример файла с правилами рационального поведения.
input.txt — файл с правилами для проверки правильности моделирования характера персонажа. Пример формата файла для проверки. В этом файле правила не описаны, одни нули!
Форматы файлов:
rules.txt — строка 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
здоровье нож оружие враги атаковать бежать бродить прятаться
Количество строк 18. Количество строк менять нельзя. Программа работать не будет!
input.txt — строка 0.0 0.0 0.0 0.0
здоровье нож оружие враги
Количество строк 5. Количество строк менять запрещается!
Вывод программы Neuronnet.out (Neuronnet.exe)
Delta: 0.01 — шаг коррекции ошибки выходного слоя.
Iterations number: 10 — количество повторений итераций обучения.
Error: Health 0: Knife 1: Gun 0: Enemy 1 Action:Run (necessary:Hide) — ошибка допущенная ИНС в результате решения задачи по имеющемуся правилу, после обучения.
Network is 11.1111% correct — процент решений, правильно распознанных обученной сетью.
Examples: — примеры результатов работы обученной ИНС.
Health:2 Knife:1 Gun:1 Enemy:1 Action: Attack
input.txt rules: — результат решений на основе правил из файла input.txt.
Скачать программу Neuronet
Вывод
Задача наглядно демонстрирует неудобство при работе с ИНС. Для решения этой проблемы инициирован проект INSML.