Лучшее определение нечеткой логики дает ее изобретатель Лотфи Заде:
«Нечеткая логика означает представление проблем компьютерам способом, схожим с тем, как их решает человек, а суть нечеткой логики заключается в том, что все зависит от степени».
Смысл решения задач с помощью компьютеров сродни тому, как решает человек, можно легко объяснить на простом примере из баскетбольного матча; если игрок хочет защитить другого игрока, в первую очередь он должен подумать о том, какого он роста и каковы его игровые навыки. Просто, если игрок, которого он хочет защитить, высокий и играет очень медленно по отношению к нему, он будет использовать свой инстинкт, чтобы решить, стоит ли ему защищать этого игрока, поскольку для него существует неопределенность. В этом примере важным моментом является то, что свойства относятся к игроку, и есть степень роста и игрового мастерства для соперника. Нечеткая логика предоставляет детерминированный способ разрешения этой неопределенной ситуации.
Есть несколько шагов для обработки нечеткой логики (рис. 1). Эти шаги: во-первых, фаззификация, при которой четкие входные данные преобразуются в нечеткие входные данные, во-вторых, эти входные данные обрабатываются с помощью нечетких правил для создания нечетких выходных данных и, наконец, дефаззификация, которая приводит к степени результата, поскольку в нечеткой логике может быть более одного результата с разной степенью.
![image004](https://i.stack.imgur.com/ZbdwO.gif)
Рисунок 1. Нечеткие шаги процесса (Дэвид М. Бург, стр.192)
Чтобы проиллюстрировать шаги нечеткого процесса, можно использовать предыдущую ситуацию баскетбольного матча. Как упоминалось в примере, рост соперника составляет 1,87 метра, что довольно много по сравнению с нашим игроком, и он может вести мяч со скоростью 3 м / с, что медленнее по сравнению с нашим игроком. В дополнение к этим данным необходимо учитывать некоторые правила, которые называются нечеткими правилами, например:
if player is short but not fast then guard,
if player is fast but not short then don’t guard
If player is tall then don’t guard
If player is average tall and average fast guard
![image005](https://i.stack.imgur.com/qrXee.png)
Рисунок 2 - какой рост
![image007](https://i.stack.imgur.com/pyjhr.png)
Рисунок 3. Как быстро
Согласно правилам и входным данным вывод будет создан нечеткой системой, такой как; Степень охраны составляет 0,7, иногда степень защиты составляет 0,4 и никогда не бывает 0,2.
![image009](https://i.stack.imgur.com/TovPD.png)
Нечеткие множества, представленные на рисунке 4
На последнем шаге дефаззикация используется для создания четкого вывода, представляющего собой число, которое может определять энергию, которую мы должны использовать для защиты игрока во время игры. Центр масс - это распространенный метод создания выходных данных. На этом этапе веса для вычисления средней точки полностью зависят от реализации. В этом приложении считается, что охраннику придается большой вес, а иногда нет - охраннику уделяется меньший вес. (Дэвид М. Бург, 2004 г.)
![image012](https://i.stack.imgur.com/ZPVAP.gif)
Рисунок 5 - нечеткий вывод (Дэвид М. Бург, стр.204)
Output = [0.7 * (-10) + 0.4 * 1 + 0.2 * 10] / (0.7 + 0.4 + 0.2) ≈ -3.5
В результате нечеткая логика используется в условиях неопределенности для принятия решения и определения степени решения. Проблема нечеткой логики заключается в том, что по мере увеличения количества входов количество правил увеличивается экспоненциально.
Для получения дополнительной информации и возможного применения в игре я написал небольшую статью зацените
person
hevi
schedule
25.10.2011