В данном проекте был разработан алгоритм градиентного спуска (pong_bot_cha.py) для игры понг от компании Atari, а также были обучены сети с алгоритмом обучения rms_prop (pong_bot_kar.py) и ещё два вида сетей с алгоритмом обучения rms_prop, но с предварительной обработкой исходных изображений (pong_bot_kar_x.py - выделение абцисс объектов на экране, pong_bot_kar_xy.py - выделение абцисс и ординат объектов на экране).
В ходе данного проекта было выявлено, что для задач, связанных с Deep Reinforcement Learning (разработка ботов), алгоритм обучения rms_prop крайне эффективен (статистика ниже: 0 значит, что сеть и противник играют одинаково; больше 0 значит, что сеть обыгрывает противника). В свою очередь градиентный спуск показал неспособность противостоять виртуальному противнику.
Файлы с расширением p - веса сети, сохранённые с помощью библиотеки pickle.
Файлы с расширением csv - статистика в формате "Номер эпизода" - "Сумма очков за эпизод" - "Policy gradient".
1l - искуственные нейронные сети с одним скрытым слоём.
2l - искуственные нейронные сети с двумя скрытыми слоями.
1*10-1/1*10-2/1*10-3/1*10-4 - искуственные нейронные сети со скоростью обучения = 0.1/0.01/0.001/0.0001
bash.py - Python файл для создания списка команд для консоли bash вида "python ~/path_to_NN_bot_file &" в файл bash.txt (это нужно для запуска обучения нескольких искуственных нейронных сетей одной длинной командой).