Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   www.boolean.name > Программирование в широком смысле слова > Алгоритмика

Алгоритмика Об алгоритмах вообще; методы, обсуждения способов решения

Ответ
 
Опции темы
Старый 29.09.2013, 14:26   #1
den
Дэвелопер
 
Аватар для den
 
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений
(для 2,419 пользователей)
ИИ: нейросети, генетические алгоритмы

Значит захотелось мне сделать простенький ии на нейросетях. На вход должны были подаваться данные окружающего мира, на выходе - действия бота. Т.к. обучение с учителем в данном случае не возможно (?), сделал генерацию сетей с помощью генетического алгоритма.
Так вот, сделал, начал тестировать. Для простых логических функций, типа И ИЛИ НЕ XOR всё работает отлично. Пошел дальше, сделал генерацию бота для крестиков-ноликов. Но тут даже после нескольких тысячь поколений, не удалось научить сеть тупо не нарушать правила - не делать ход не на свободную ячейку. Прогресс конечно был, но уж очень маленький. Реализация генетического алгоритма не самая оптимальная, но думаю проблема не в этом. А это только какие-то крестики нолики.
Вот собственно вопрос: делать ИИ на нейросетях для более-менее сербезных вещей (например монстр из РПГ игры) изначально прохая идея, или же как-то можно?
Может какую-то часть ИИ сделать на сетях, другую таблицами состояний, а характеристики бота подобрать генетическим алгоритмом?
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
alex (14.11.2020)
Старый 29.09.2013, 14:51   #2
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,861 пользователей)
Ответ: ИИ: нейросети, генетические алгоритмы

Как практика показывает, в индустрии используются предсказуемые методы для реализации AI, т.к. это тестируемо и контролируемо.
Нейросети не управляются напрямую, и не предсказуемы по сути. Что как бы клёво (это же AI), но это не подходит в большинстве случаев.

Если что-то и делать, то обычно это требуется для принятия решения, а не логики решений. Наш мозг сложен, но в искуственных пока не реализовали такие сложности поэтому пытаться создать сеть что будет отвечать за кучу аспектов - не выйдет.

Генетический код тоже, очень зависит от конкретных условий, и изменения этих условий обычно обламывают генетически развитый код, т.к. он уже будет не подходить под условия.

Использовать сети нужно в принятии решении, например решить хочет ли он атаковать или бежать, исходя из входных данных. Когда куда атаковать уже может быть либо генетический алгоритм, либо конкретной логикой.
(Offline)
 
Ответить с цитированием
Эти 4 пользователя(ей) сказали Спасибо moka за это полезное сообщение:
Colossus (13.10.2013), den (29.09.2013), Mr_F_ (29.09.2013), St_AnGer (29.09.2013)
Старый 30.09.2013, 08:15   #3
Лit}{Ъ
ПроЭктировщик
 
Аватар для Лit}{Ъ
 
Регистрация: 24.10.2009
Сообщений: 143
Написано 5 полезных сообщений
(для 7 пользователей)
Ответ: ИИ: нейросети, генетические алгоритмы

Сделать ии на нейросетях можно для очень широкого класса игр, другой вопрос, что требуется более сложная основа нежели простой подбор коэффициентов простым гинетическим алгоритмом. При элегантной организации топологии сети и грамотном обучении, нейронки творят чудеса.
А вообще советую вам почитать книжку "Алекс Шампандар. Искусственный интеллект в компьютерных играх, как обучить персонажи реагировать на внешние воздействия". Так всё расписано исключительно грамотно. На сколько мне известно именно нейро сети были основой для ботов халф лайфа.
Вот, если что, первая попавшаяся ссыль, за более качественным вариантом гуглить отдельно http://rutracker.org/forum/viewtopic.php?t=650327
__________________
Гомоморфный образ группы - путь во славу коммунизма - изоморфен фактор группе по ядру гомоморфизма.
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо Лit}{Ъ за это полезное сообщение:
ABTOMAT (30.09.2013), den (30.09.2013), tormoz (30.09.2013)
Старый 14.11.2020, 04:21   #4
alex
AnyKey`щик
 
Регистрация: 14.11.2020
Сообщений: 1
Написано одно полезное сообщение
(для 5 участников)
Ответ: ИИ: нейросети, генетические алгоритмы

Сообщение от den Посмотреть сообщение
Вот собственно вопрос: делать ИИ на нейросетях для более-менее сербезных вещей (например монстр из РПГ игры) изначально прохая идея, или же как-то можно?
Может какую-то часть ИИ сделать на сетях, другую таблицами состояний, а характеристики бота подобрать генетическим алгоритмом?
Тема интересна, хотя и некротопик.

Набросал cli-app на ruby для игры в крестики-нолики; играет пока что только вторым номером, но играет, чаще всего, безошибочно. В трех словах: это AI, выстраивающий нейронную сеть на основе FANN для поиска оптимальных ходов. После первого запуска скрипт проигрывает несколько десятков тыс. партий (требуется пара минут), формируя лог-файл, в дальнейшем использует его для игры.



Код всегда доступен на гитхабе, там же ссылка на подробное, с примерами кода и на русском, описание алгоритма работы. В любой момент можно скачать и опробовать, если, конечно, не лениво ставить ruby. Так или иначе, было бы интересно услышать реплики по делу, спс.
(Offline)
 
Ответить с цитированием
Эти 5 пользователя(ей) сказали Спасибо alex за это полезное сообщение:
Andvrok (14.11.2020), ant0N (14.11.2020), pax (14.11.2020), Randomize (14.11.2020), St_AnGer (14.11.2020)
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 00:44.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com