- PVSM.RU - https://www.pvsm.ru -

Программа учится играть по видеороликам

Программа играет в простые игры крестики-нолики, четыре в ряд (Connect 4) и гомоку — и выигрывает у человека. Казалось бы, ничего интересного, если бы не один важный нюанс — эта программа не знает правил! Точнее, она выучила их с нуля, просмотрев двухминутные видеозаписи с участием игр людей.

Лукаш Кайзер [1] (Łukasz Kaiser) из университета Париж Дидро написал программу на C++, которая разбивает видеоряд по кадрам, убирает из них всё лишнее (руки людей) — и получает список последовательных позиций.

На основе этих данных алгоритм (на OCaml) составляет базу разрешённых ходов и список выигрышных/проигрышных/неразрешённых позиций, затем генерирует набор логических формул типа ∃x1Q(x1) ∧ ∃x0(C(x1,x0) ∧ x0 = e1). Оба модуля интегрированы в свободную программу для игры в настольные игры Toss [2].

На обычном ноутбуке программе требуется 28-74 секунды для обработки двухминутного видеоролика, в зависимости от игры. Потом ещё пару минут для составления набора правил — и она готова играть. Правда, чтобы научиться выигрывать, нужно посмотреть не один видеоролик, а больше. Во время тестирования программы она обработала 25 видеороликов игры в крестики-нолики, 25 — четыре в ряд и 17 — в гомоку. Если игра более простая, то достаточно и меньшего количества.

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

Собственно, и сам Лукаш Кайзер пишет, что выбрал настольные игры как объект применения своей программы, «потому что здесь количество визуальных объектов относительно мало, в то время как имеется достаточное разнообразие действий. Кроме того, игры являются натуральной моделью многих сценариев отношений в реальном мире, что делает результат значимым в широком контексте».

Подробнее об алгоритме см. в научной работе: Learning Games from Videos Guided by Descriptive Complexity [3] (PDF), или на видеозаписи его презентации с Третьей конференции по искусственному интеллекту общего назначения [4] (Third Conference on Artificial General Intelligence).

Автор: alizar


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/algoritmy/11521

Ссылки в тексте:

[1] Лукаш Кайзер: http://liafa.jussieu.fr/~kaiser/

[2] Toss: http://toss.sourceforge.net/

[3] Learning Games from Videos Guided by Descriptive Complexity: http://liafa.jussieu.fr/~kaiser/pub/learning_games_descriptive_complexity.pdf

[4] Третьей конференции по искусственному интеллекту общего назначения: http://vimeo.com/channels/agi10