diff --git a/dopasowanie.fcl b/dopasowanie.fcl deleted file mode 100644 index 8a9b5bd..0000000 --- a/dopasowanie.fcl +++ /dev/null @@ -1,56 +0,0 @@ -FUNCTION_BLOCK dopasowanie - -VAR_INPUT - wiek : REAL; - wzrost : REAL; - wartosc_rynkowa: REAL; - czestotliwosc_strzalow: REAL; -END_VAR - -VAR_OUTPUT - dopasowanie : REAL; -END_VAR - -FUZZIFY wiek // Zmienna 'wiek': {'mlody', 'sredni' , 'stary'} - TERM mlody := (0, 1) (25, 1) (30, 0) ; - TERM sredni := (18, 0) (25, 1) (35, 1) (45, 0); - TERM stary := (40, 0) (45, 1); -END_FUZZIFY - -FUZZIFY wzrost // Zmienna 'wzrost': { 'niski', 'sredni', 'wysoki' } - TERM niski := (0, 1) (150, 1) (160, 0) ; - TERM sredni := (160, 0) (170, 1) (180, 0); - TERM wysoki := (175, 0) (190, 1); -END_FUZZIFY - -FUZZIFY wartosc_rynkowa // Zmienna 'wartosc_rynkowa': { 'niska', 'srednia', 'wysoka' } - TERM niska := (0, 1) (0.5, 1) (1, 0) ; - TERM sredna := (0.5, 0) (1, 1) (1.5, 1) (2, 0); - TERM wysoka := (1.75, 0) (2, 1); -END_FUZZIFY - -FUZZIFY czestotliwosc_strzalow // Zmienna 'czestotliwosc_strzalow': { 'mala', 'srednia', 'wysoka' } - TERM mala := (400, 0) (500, 1); - TERM srednia := (150, 0) (200, 1) (350, 1) (500, 0); - TERM wysoka := (0, 1) (150, 1) (200, 0); -END_FUZZIFY - -DEFUZZIFY dopasowanie // Zmienna 'dopasowanie' : {'slabe', 'dobre', 'bardzodobre'} - TERM slabe := (0, 1) (40, 1) (50, 0); - TERM dobre := (40, 0) (50, 1) (60, 1) (80, 0); - TERM bardzodobre := (70, 0) (80, 1); - METHOD : COG; // Metoda defuzyfikacji - 'Center Of Gravity' - 'Sreodka ciezkosci' -END_DEFUZZIFY - -RULEBLOCK No1 - AND : MIN; // Uzycie 'min' jako 'and' (implikuje uzycie 'max' jako 'or' dla zapewnienia praw DeMorgan'a) - ACT : MIN; // Uzycie 'min' jako metody aktywacji - ACCU : MAX; // Metoda agregacji - 'max' - - RULE 1 : IF wiek IS mlody AND wzrost is sredni AND wartosc_rynkowa IS niska AND czestotliwosc_strzalow IS srednia THEN dopasowanie IS dobre; - RULE 3 : IF wiek IS sredni AND wzrost is wysoki AND wartosc_rynkowa IS srednia AND czestotliwosc_strzalow IS wysoka THEN dopasowanie IS bardzodobre; - RULE 4 : IF wiek IS sredni AND wzrost is niski AND wartosc_rynkowa IS srednia AND czestotliwosc_strzalow IS niska THEN dopasowanie IS slabe; -END_RULEBLOCK - -END_FUNCTION_BLOCK -