Движок правил Java для игрового искусственного интеллекта

StackOverflow https://stackoverflow.com/questions/514187

Вопрос

Я хотел бы использовать движок правил для своей игры.Он будет использоваться для искусственного интеллекта NPC и GM AI.

Какой может быть хороший и быстрый движок правил для этой цели ?Это должна быть Java с открытым исходным кодом.

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

Это было полезно?

Решение

Есть два варианта, которые я видел: Джесс и Пускает слюни.У Джесс, честно говоря, есть проблемы.Это не с открытым исходным кодом и не бесплатно.Он имеет лиспоподобный синтаксис, что является либо плюсом, либо минусом, в зависимости от вашей точки зрения.

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

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

Удачи вам!

Другие советы

Позже в этом году мы попытаемся заняться улучшением компиляции.Просто это еще не то, на чем мы фокусировались или профилировали, вместо этого сосредоточившись на производительности во время выполнения.

Мне было бы очень интересно услышать о ваших успехах.Я подумываю о создании игры Drools PacMan, чтобы начать изучать, как лучше всего использовать движки правил для игр.Поскольку игры часто посвящены событиям и проверке связей между объектами, кажется, что правильно настроенный движок правил мог бы обеспечить некоторые преимущества.Более поздняя часть, "настройка", станет важной, поскольку во многих случаях движок мог бы быть намного эффективнее при частичных совпадениях, если бы заранее знал о проблемном месте.В идеале, с играми это часто бывает, поэтому мы можем предоставить движку подсказки, чтобы адаптировать его к этим вариантам использования.

В настоящее время мы проводим некоторые исследования по добавлению вероятности, что также должно быть интересно для игр.

В любом случае, пожалуйста, свяжитесь со мной, если вы добились какого-либо прогресса, mproctor at redhat d0t com

Попробуй Пускает слюни.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top