И оператор в skfuzzy - PullRequest
1 голос
/ 02 мая 2020

У меня есть следующие три правила

1.Если A средний и B низкий, то качество низкое
2.Если A средний и B среднее, а качество среднее
3.Если A среднее и B высокое, то среднее качество

С этой ссылкой в ​​качестве ссылки https://pythonhosted.org/scikit-fuzzy/auto_examples/plot_tipping_problem.html и код

# The exact values 6.5 and 9.8 do not exist on our universes...
# This is what fuzz.interp_membership exists for!
qual_level_lo = fuzz.interp_membership(x_qual, qual_lo, 6.5)
qual_level_md = fuzz.interp_membership(x_qual, qual_md, 6.5)
qual_level_hi = fuzz.interp_membership(x_qual, qual_hi, 6.5)

serv_level_lo = fuzz.interp_membership(x_serv, serv_lo, 9.8)
serv_level_md = fuzz.interp_membership(x_serv, serv_md, 9.8)
serv_level_hi = fuzz.interp_membership(x_serv, serv_hi, 9.8)

# Now we take our rules and apply them. Rule 1 concerns bad food OR service.
# The OR operator means we take the maximum of these two.
active_rule1 = np.fmax(qual_level_lo, serv_level_lo)

# Now we apply this by clipping the top off the corresponding output
# membership function with `np.fmin`
tip_activation_lo = np.fmin(active_rule1, tip_lo)  # removed entirely to 0

Как написать правила такого же типа для оператора И относительно моего правила?

...