Pull to refresh

Comments 4

Как всегда — отличная статья!
По ходу не только показывает про построение ИИ, но и знакомит с малоизвестными играми!
Как я понял по ходу чтения, в этой статье в основном говорилось про ИИ через оценку одноходовочек, так?
И хоть движок ЯваСкриптовый, новомодные нейронные сети в качестве ИИ не пробовали? )
В основном одноходовочки, да. Они понятнее в отладке. На «Роговых шахматах» минимакс с альфа-бета отсечением. Я пробовал его на ряде игр, в том числе на Минг-Манге, но пока старый минимакс его уверенно выигрывает (а я уверенно выигрываю его), так что есть над чем работать.

В основном, я хотел подчеркнуть гибкость Dagaz. Всё кастомизируется: оценки, эвристики, алгоритмы. При необходимости даже сам контроллер. Это большой плюс JavaScript-а. В нейтивном Zillions такие расширения всегда были проблемой (писать можно, но только на C++). В Axiom кастомизировалась оценочная функция или алгоритм (то или другое, на выбор). Более того, без такой кастомизации AI вообще, можно сказать, никак не работал. И всё это на Форте. Очень сложно (особенно в отладке).

В Jocly кастомизируется всё, но это, фактически, то же самое, что написать игру на JavaScript с нуля. Dagaz — своего рода серединный путь.
Про плюсы сказал, про минусы забыл. Главный минус подхода — производительность. Сильно не хватает честной многопоточности, особенно в «Монте-Карло». Присматриваюсь к воркерам. Нейтивный Zillions рвёт мои как тузик грелку. И это без всякой кастомизации!

В Zillions даже стоимость фигур задать нормально нельзя! Она определяется автоматически, по их мобильности. Приходится пускаться во все тяжкие, когда стоимость надо подкорректировать. Не со всякими играми Zillions справляется. В Ko и Tenjiku Shogi, можно сказать не работает (что предсказуемо). Апокалипсис вообще сделать на Zillions невозможно. Но в таких играх как Русские шашки и шахматы мне за ним не угнаться.

Производительность — одна из причин, по которым я пока даже не смотрю в сторону нейронок. Другая причина в том, что я, в этом направлении, абсолютный профан.
ну да, многопоточность сильно помогла б.
Sign up to leave a comment.

Articles