fl.Sigmoid("c", 0.830, 30.000) ] ), fl.OutputVariable( name="ZSShapes", description="", enabled=True, minimum=0.000, maximum=1.000, lock_range=False, aggregation=None, defuzzifier=fl.WeightedAverage("Automatic"), lock_previous=False, terms=[ fl.ZShape("b", 0.300, 0.600), fl.SShape("a", 0.000, 0.250), fl.SShape("c", 0.700, 1.000) ] ), fl.OutputVariable( name="Concaves", description="", enabled=True, minimum=0.000, maximum=1.000, lock_range=False, aggregation=None, defuzzifier=fl.WeightedAverage("Automatic"), lock_previous=False, terms=[ fl.Concave("b", 0.500, 0.400),
import fuzzylite as fl engine = fl.Engine(name="sltbu_fl", description="") engine.input_variables = [ fl.InputVariable(name="distance", description="", enabled=True, minimum=0.000, maximum=25.000, lock_range=False, terms=[ fl.ZShape("near", 1.000, 2.000), fl.SShape("far", 1.000, 2.000) ]), fl.InputVariable(name="control1", description="", enabled=True, minimum=-0.785, maximum=0.785, lock_range=False), fl.InputVariable(name="control2", description="", enabled=True, minimum=-0.785, maximum=0.785, lock_range=False) ] engine.output_variables = [ fl.OutputVariable(name="control", description="", enabled=True,
) ] engine.output_variables = [ fl.OutputVariable( name="steer", description="direction to steer the vehicle to", enabled=True, minimum=0.000000000, maximum=1.000000000, lock_range=False, aggregation=fl.Maximum(), defuzzifier=fl.Centroid(100), lock_previous=False, terms=[ fl.ZShape("left", 0.000000000, 1.000000000), fl.SShape("right", 0.000000000, 1.000000000) ] ) ] engine.rule_blocks = [ fl.RuleBlock( name="steer_away", description="steer away from obstacles", enabled=True, conjunction=None, disjunction=None, implication=fl.Minimum(), activation=fl.General(), rules=[ fl.Rule.create("if obstacle is left then steer is right", engine), fl.Rule.create("if obstacle is right then steer is left", engine)
enabled=True, minimum=0.500, maximum=1.500, lock_range=False, terms=[ fl.ZShape("mf1", 0.500, 0.600), fl.PiShape("mf2", 0.500, 0.600, 0.600, 0.700), fl.PiShape("mf3", 0.600, 0.700, 0.700, 0.800), fl.PiShape("mf4", 0.700, 0.800, 0.800, 0.900), fl.PiShape("mf5", 0.800, 0.900, 0.900, 1.000), fl.PiShape("mf6", 0.900, 1.000, 1.000, 1.100), fl.PiShape("mf7", 1.000, 1.100, 1.100, 1.200), fl.PiShape("mf8", 1.100, 1.200, 1.200, 1.300), fl.PiShape("mf9", 1.200, 1.300, 1.300, 1.400), fl.PiShape("mf10", 1.300, 1.400, 1.400, 1.500), fl.SShape("mf11", 1.400, 1.500) ]) ] engine.output_variables = [ fl.OutputVariable( name="out", description="", enabled=True, minimum=-10.000, maximum=10.000, lock_range=False, aggregation=None, defuzzifier=fl.WeightedAverage("TakagiSugeno"), lock_previous=False, terms=[ fl.Linear("outmf1", [
fl.Discrete("H", [ 2.000, 0.000, 2.250, 1.000, 2.500, 0.500, 2.750, 1.000, 3.000, 0.000 ]), fl.Gaussian("I", 3.000, 0.200), fl.Cosine("J", 3.250, 0.650), fl.GaussianProduct("K", 3.500, 0.100, 3.300, 0.300), fl.Spike("L", 3.640, 1.040), fl.Bell("M", 4.000, 0.250, 3.000), fl.PiShape("N", 4.000, 4.500, 4.500, 5.000), fl.Concave("O", 5.650, 6.250), fl.SigmoidDifference("P", 4.750, 10.000, 30.000, 5.250), fl.SigmoidProduct("Q", 5.250, 20.000, -10.000, 5.750), fl.Ramp("R", 5.500, 6.500), fl.SShape("S", 5.500, 6.500), fl.Sigmoid("T", 6.000, 20.000) ]) ] engine.output_variables = [ fl.OutputVariable(name="AllOutputTerms", description="", enabled=True, minimum=0.000, maximum=6.500, lock_range=False, aggregation=fl.Maximum(), defuzzifier=fl.Centroid(200), lock_previous=False, terms=[ fl.Sigmoid("A", 0.500, -20.000),
import fuzzylite as fl engine = fl.Engine(name="investment_portfolio", description="") engine.input_variables = [ fl.InputVariable(name="Age", description="", enabled=True, minimum=20.000, maximum=100.000, lock_range=False, terms=[ fl.ZShape("Young", 30.000, 90.000), fl.SShape("Old", 30.000, 90.000) ]), fl.InputVariable(name="RiskTolerance", description="", enabled=True, minimum=0.000, maximum=10.000, lock_range=False, terms=[ fl.ZShape("Low", 2.000, 8.000), fl.SShape("High", 2.000, 8.000) ]) ] engine.output_variables = [ fl.OutputVariable(name="PercentageInStocks", description="", enabled=True, minimum=0.000, maximum=100.000,