Это все еще нечеткая логика?
У меня есть вопрос о том, как реализовать нечеткую логику в моем приложении, но лучше объяснить на классическом примере. Если я использую нечеткую логику для управления рулевым управлением автомобиля с диапазоном выхода: -1 (слева), 0 (впереди) и +1 (справа), я могу напрямую использовать число с выхода для управления автомобиль. В случае, когда я использую нечеткую логику для управления поведением, представленным набором определенных действий, так что никаких чисел не требуется, например: -1 (зло), 0 (нейтрально), +1 (хорошо). Я могу получить выходные данные, которые могут варьироваться от -1 до 1, поэтому, если я получу 0,385 в качестве выходных данных, как я могу преобразовать его в набор действий? Я думал сделать что-то вроде:
if output < -0.5
evilActions()
if output > -0.5 && output < 0.5
neutralActions()
if output > 0.5
goodActions()
или я также думал о проверке значений функций членства и в качестве результата принимал наибольшее значение, что-то вроде:
result.value = 0
foreach (membershipFunctions mf)
if (mf.value > result.value)
result = mf
if (result.label == "good")
goodActions()
if (result.label == "neutral")
neutralActions()
if (result.label == "evil")
evilActions()
Проблема здесь в том, что я больше не уверен, можно ли это вообще считать нечеткой логикой.
Спасибо за помощь.