Ученые собрались создать искусственный интеллект в Minecraft. Эксперименты с искусственным интеллектом в Minecraft А как же Malmo для Minecraft Pocket Edition

Компания Microsoft объявила о своих планах по использованию вселенной как площадки для разработки и тестирования систем искусственного интеллекта. По данным сайт, новая платформа, созданная учеными, уже летом станет доступна для всех желающих.

Группа специалистов из исследовательской лаборатории Microsoft в Кембридже разработала систему, получившую название AIX. Команда ученых убеждена, что безграничные возможности Minecraft могут стать идеальным «цифровым полигоном» для испытания искусственного интелекта.

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

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

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

Как стало известно сайт, создатели AIX уже предлагают свой продукт научному сообществу всего мира. В планах разработчиков начать масштабное распространение системы по лицензии с открытым исходным кодом летом этого года. Программное обеспечение будет доступно для Windows, Linux or OS X.

В совершенствовании программного обеспечения для обучающихся систем и искусственного интеллекта, создавая свои виртуальные ландшафты Minecraft.

По словам исследователей Microsoft Research, работающих над проектом Malmo, Minecraft обладает более «изощренными» возможностями по сравнению с эмуляторами ИИ, а затраты на адаптацию игры для применения в эксперименте меньше, чем на другие аналогичные разработки.

Один из экспертов подчеркивает, что у игры огромный потенциал. «Это исключительно передовое решение, – говорит профессор Хосе Хернандес-Оралло из Технического университета Валенсии, участник одной из небольших групп исследователей, которые первыми получили доступ к экспериментальному ПО. – Ничего подобного сейчас больше нет. Учитывая, что это только начало, у системы огромные перспективы».

Чтобы принять участие в эксперименте, пользователи должны установить AIX – взаимодействующую с Minecraft программную платформу, которая позволяет коду ИИ управлять персонажем и оценивать результаты его действий. AIX является программой с открытым исходным кодом, следовательно стоимость участия – это всего лишь цена стандартной лицензии на игру.

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

«Люди создают в Minecraft невиданные конструкции с удивительными возможностями, что позволит экспериментаторам повысить потенциал модулей ИИ, – объясняет Катя Хофманн (Katja Hofmann), руководитель проекта Malmo в лаборатории MSR в Кембридже. – А со временем мы сможем пойти еще дальше и добавить задачи, которые позволят агентам ИИ учиться помогать людям, расширяя их творческие возможности. Это позволит нам в ближайшие десятилетия достичь нашей цели: поднять ИИ с нынешнего уровня до уровня, близкого к человеческому интеллекту».


Своими глазами

Играть в видеоигры программы с элементами ИИ научили уже давно. Но в данном случае Microsoft стремится использовать такую особенность Minecraft, как открытость. Она даст ИИ возможность «увидеть» происходящее в игре от первого лица.

«Это позволяет нам реализовать «персонализированный ИИ, – говорит Мэтью Джонсон (Matthew Johnson), ведущий программист проекта AIX. – Иными словами, в нашем случае ИИ не наблюдает за своим аватаром извне, а как бы находится внутри и видит происходящее глазами одной из сущностей, живущей в игровом мире. Мы считаем, что это важный шаг к моделированию общего интеллекта».

Исследователи предполагают, что одним из главных направлений их работы станет обучение методом проб и ошибок, при котором агент ИИ не просто выполняет инструкции, а обучается находить оптимальные решения задач, основываясь на предыдущем опыте и расширяя его в процессе взаимодействия со средой.

Этот подход использует программа AlphaGo, которая недавно обыграла одного из лучших игроков в го, предварительно проведя тысячи состязаний с самой собой, обучаясь новым стратегиям.

В Microsoft считают, что Minecraft предоставляет более широкие возможности для развития ИИ по сравнению с обучением конкретной игре.

«Экспериментаторы должны задействовать такие элементы игры, как лава, которая представляет особую опасность для агента-игрока, и оценить темп, в котором он научится распознавать объекты окружающей среды, – рассказала Катя Хофманн в интервью BBC. – Но платформа открыта и для более общих исследований ИИ, например, в агенты можно добавить языковые и зрительные функции. Мы рассматриваем нашу работу как первый шаг в развитии технологии, которая будет применяться при построении роботов, а сейчас же мы имеем возможность проверить ее в безопасной, полностью контролируемой среде, с минимальными затратами».

Основы ИИ

В MSR подчеркивают: несмотря на то, что платформа AIX ориентирована на специалистов в области ИИ, она также позволит создавать простые программы даже детям, и со временем на AIX выйдут разнообразные учебные материалы.

«Мы хотим привлечь к эксперименту людей разного возраста с различным менталитетом», – говорит Джонсон. А профессор Хосе Хернандес-Оралло поясняет идею: «Дети будут создавать агенты в своих любимых мирах и играть с ними. Это повысит интерес к искусственному интеллекту, и мы рассчитываем на то, что в ближайшие 10-20 лет все больше людей будут работать в этой област

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

Разработчики рассказывают, что системы ИИ, используемые в настоящее время, служат для понимания или перевода человеческой речи, распознавания лиц и создания собственного текста. Однако конечная цель разработки подобных систем - это создание «сложного искусственного интеллекта » - системы, способной обучаться и принимать решения на основе собственного опыта.

И с этой точки зрения Minecraft оказался идеальным полем: практически бесконечный мир, в котором есть и опасности и огромные возможности для созидания. Почему упрощенной модели мира не стать областью, в которой будет жить и обучаться искусственный интеллект?

Проект, получил название Malmo (название скорее всего происходит от названия крупного шведского города, ведь сам Майнкрафт тоже родом из Швеции) и его уже можно скачать и попытаться использовать . Правда, для того чтобы установить систему искусственного интеллекта для Майнкрафта, придётся немного напрячь свой собственный.

Как установить Malmo

Как пользоваться Malmo

Теперь самое время попробовать систему в действии. Поскольку в комплекте поставляются скрипты для Malmo сразу на нескольких языках программирования, то можно воспользоваться ими. Я обращусь к модулю на Java, но думаю суть будет та же.

Итак, в первую очередь надо запустить Malmo (т.е. запустить launchClient.bat). Ну а потом запускать модуль JavaExamples_run_mission.

Делается это командой (я создал небольшой бат-файл):

java -cp MalmoJavaJar.jar;JavaExamples_run_mission.jar -Djava.library.path=. JavaExamples_run_mission

java -cp MalmoJavaJar . jar ; JavaExamples_run_mission . jar -Djava . library . path =. JavaExamples_run_mission

Правда, при этом у меня возникли проблемы с тем, что библиотек MalmoJava.dll, расположенная тут же в папке с примером, оказалась «невидима» для Java. В итоге, я её скопировал в какую-то директорию, которая прописана в переменной PATH и всё запустилось нормально.

Выглядело это так: внезапно окно Майнкрафта уменьшило размера, открылся какой-то мир, и в нём стало происходить какое-то движение персонажа. При этом в консоль писались сообщения, а через какое-то время всё замерло.

Собственно просмотреть это можно тут:

И это всё?!

Ну собственно на этом этапе - это действительно всё. Т.е. в комплекте с Malmo нет готового искусственного интеллекта, который принимал бы за Вас решения, строил бы города, ловил рыбу и охотился на медведей (тем более, что Мальмо отстаёт от обычного майнкрафт и работает на версии 1.8, а не 1.10).

Самое главное, как а я понимаю, - это инструмент, который позволит разработчикам создать систему, которая будет «видеть майнкрафт» как человек. Т.е. для взаимодействия с миром Майнкрафта через Мальмо надо будет опираться на действия вида «посмотреть под ноги, если там что-то похоже на лаву не идти туда», а не обращаться к блокам напрямую, используя их координаты. Отправив команду в чат, надо будет проанализировать написанный в ответ текст и т.п. Ну и самое главное, делать это всё это можно используя ту среду разработки, к которой Вы привыкли.

Конечно, же я могу ошибаться, - я пока ещё не заглядывал в документацию и не пробовал написать свой скрипт для Мальмо. Но я обязательно постараюсь это сделать и тогда расскажу подробнее.

А как же Malmo для Minecraft Pocket Edition?

После того как я скачал Malmo, меня больше всего удивило то, что она основана на Майнкрафте для ПК. Развитие линейки MCPE имеет больший приоритет развития и я сейчас больше верю в более скорое появление официального инструментария для программирования в MCPE, чем в появление обещанного много лет назад PluginAPI для обычного Майнкрафта.