Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
import matplotlib.pyplot as plt import numpy as np import skfuzzy as fuzz from skfuzzy import control as ctrl if __name__=="__main__": print("exemplo") #variaveis de entrada dinheiro = ctrl.Antecedent(np.arange(0, 101, 1), 'dinheiro') pessoal = ctrl.Antecedent(np.arange(0, 101, 1), 'pessoal') #variavel de saida risco = ctrl.Consequent(np.arange(0, 101, 1), 'risco') #fuzzyficação dinheiro['inadequado'] = fuzz.trapmf(dinheiro.universe, [0, 0, 30, 50]) dinheiro['medio'] = fuzz.trimf(dinheiro.universe,[30, 50, 70]) dinheiro['adequado'] = fuzz.trapmf(dinheiro.universe, [50, 70, 100, 100]) pessoal['baixo'] = fuzz.trapmf(pessoal.universe, [0, 0, 30, 70]) pessoal['alto'] = fuzz.trapmf(pessoal.universe, [30, 70, 100, 100]) risco['pequeno'] = fuzz.trapmf(risco.universe, [0, 0, 40, 60]) risco['normal'] = fuzz.trimf(risco.universe, [40, 60, 80]) risco['alto'] = fuzz.trapmf(risco.universe, [60, 80, 100, 100]) dinheiro.view() pessoal.view() risco.view() #definição das regras regra1 = ctrl.Rule(dinheiro['adequado'] | pessoal['baixo'], risco['pequeno']) regra2 = ctrl.Rule(dinheiro['medio'] & pessoal['alto'], risco['normal']) regra3 = ctrl.Rule(dinheiro['inadequado'], risco['alto']) #ativação das regras controle_risco = ctrl.ControlSystem([regra1, regra2, regra3]) simulador_risco = ctrl.ControlSystemSimulation(controle_risco) simulador_risco.input['dinheiro']=35 simulador_risco.input['pessoal']=60 simulador_risco.compute() #agregação print(simulador_risco.output['risco']) risco.view(sim=simulador_risco) plt.show()
Compartilhar