Нечеткая ассоциативная память (FAM для короткометражных) - это нечеткий логический инструмент для принятия решений. Fuzzy Logic Fams имеют широкий спектр практических применений:
Нечеткая ассоциативная память использует нечеткие наборы для установления набора правил, которые носят лингвистический характер; Примеры могут включать:
Лингвистические правила и нечеткие наборы, которые они содержат, определены человеческим «экспертом» (предположительно, вы). То есть правила кодифицируют интеллект и отображают эти знания от человеческого домена в цифровой.
После того, как правила определены, консультируется FAM, чтобы помочь вашему ИИ сделать потомку:
Как вы можете видеть, нечеткие правила преднамеренно расплывчаты и используют квалификаторы, такие как «немного» и «много». Кроме того, линии между нечеткими наборами преднамеренно размыты. Это природа нечетких наборов; Они захватывают такую человеческую нечеткость таким образом, чтобы извлекать очень естественное поведение из нечетких правил. При определении этих правил это помогает представить собеседовать с добросовестным экспертом в области домена и записывать навыки, необходимые для успеха в области.
Нечеткие лингвистические переменные могут быть трудно визуализировать, особенно когда они становятся сложными и включают треугольники и трапеции в комбинацию. Чтобы ответить на это, это программное обеспечение теперь может (необязательно) обойтись к вашему установленному GNUPLOT и создать визуализации PNG или SVG ваших FLV. Вот пример:
Это работает, функциональное программное обеспечение, подходящее для использования в вашей собственной игре или приложении. В настоящее время поддерживает:
if A then Z
)if A or B, then Z
/ if A and B, then Z
)Сделать (в убывающей важности, примерно):
Посмотрите на изменение новостей.
Я рекомендую вам клонировать репозиторий GIT и просмотреть примеры и исходный код, чтобы полностью понять, как работают FAM.
Но если / когда вы хотите использовать это в своем собственном проекте, самый простой способ сделать это - через драгоценный камень:
gem install fuzzy_associative_memory
Затем в вашем коде:
require 'fuzzy_associative_memory'
Драгоценный камень полностью заполнен именами, чтобы предотвратить столкновения. Смотрите примеры деталей использования.
Справочник bin
содержит следующие примеры:
hvac_system_example
иллюстрирует, как FAM может управлять фанатным блоком HVAC для поддержания постоянной, удобной температурыweapon_choice_example
иллюстрирует, как FAM может позволить игровому боту разумно решить, какое оружие использоватьГрафики примеров «нечеткие лингвистические переменные были предварительно предоставлены и находятся в каталоге бин. Это поможет вам визуализировать FLV.