Zagadnienia AI wykład 6.

Slides:



Advertisements
Podobne prezentacje
Logika rozmyta w Javie prezentacja możliwość biblioteki: jFuzzyLogic.
Advertisements

Inteligencja Obliczeniowa Systemy rozmyte.
System lingwistyczny - wnioskowanie
Metody Sztucznej Inteligencji 2012/2013Zastosowania systemów rozmytych Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 1 Zastosowania.
Mechanizm wnioskowania rozmytego
Programowanie w języku Visual Basic
Metody Analizy Programów Wykład 02
Inteligencja Obliczeniowa Zbiory rozmyte, modelowanie wiedzy.
PROGRAMOWANIE STRUKTURALNE
KNW- Wykład 8 Wnioskowanie rozmyte.
20/09/ Języki programowania 1 Piotr Górczyński Wstęp.
ZŁOŻONOŚĆ OBLICZENIOWA
Turbo pascal – instrukcje warunkowe, iteracyjne,…
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 7: Procedury i funkcje © Jan Kaczmarek.
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 8: Wykorzystanie procedur i funkcji © Jan Kaczmarek.
Rekurencja Copyright, 2000 © Jerzy R. Nawrocki Wprowadzenie do informatyki Wykład.
Imperatywne modele obliczeń Copyright, 2001 © Jerzy R. Nawrocki Wprowadzenie do.
Rekurencja Copyright, 2001 © Jerzy R. Nawrocki Wprowadzenie do informatyki Wykład.
Imperatywne modele obliczeń Copyright, 2003 © Jerzy R. Nawrocki Teoretyczne podstawy.
Programowanie imperatywne i granice obliczalności Copyright, 2004 © Jerzy R. Nawrocki
Rekursja Copyright, 2004 © Jerzy R. Nawrocki Teoretyczne podstawy informatyki.
Kurs Pascala – spis treści
Kartowanie pikiet pomierzonych metodą biegunową.
Czytanie numerów puktów i ich współrzędnych z mapy.
Systemy rozmyte Systemami rozmytymi nazywamy systemy (statyczne lub dynamiczne) w których wykorzystujemy zbiory rozmyte i właściwy im aparat matematyczny.
Model lingwistyczny – wnioskowanie Mamdani’ego
Model Takagi – Sugeno – Kang’a - TSK
Pakiety i ATD 1 Definicja. Pakietem albo jednostką programową nazywamy grupę logicznie powiązanych elementów, które mogą być typami, podtypami, obiektami.
Wykład 2 struktura programu elementy języka typy zmienne
Pliki. Pliki Pliki jako pamięć nieulotna Pliki jako pamięć nieulotna Nazwy, atrybuty i prawa dostępu Nazwy, atrybuty i prawa dostępu atrybuty atrybuty.
Podprogramy.
Programowanie strukturalne i obiektowe
Pliki tekstowe. Operacje na plikach. mgr inż. Agata Pacek.
Andrzej Jędryczkowski Nie da się napisać większego programu bez podziału go na części zwane podprogramami. Podprogram to wyróżniona część programu.
© A. Jędryczkowski – 2006 r. © A. Jędryczkowski – 2006 r.
Systemy/modele rozmyte – podstawy i struktury
Wykład 25 Regulatory dyskretne
Procedury i funkcje.
Wybrane modele rozmyte i schematy wnioskowania
Pliki Pojęcie i rodzaje plików Definicja typu plikowego Operacje wykonywane na plikach elementowych.
Pliki tekstowe – A. Jędryczkowski © 2007 Turbo Pascal umożliwia wykorzystanie w programach plików tekstowych. Pliki takie zawierają informację niezakodowaną
1 Wykład 8 Podprogramy. 2 Pojęcie i istota stosowania dzielenie programu na części (logicznie spójne) - nazwane - niezależne od pozostałych części - z.
formalnie: Rozmyte systemy wnioskujące
Systemy/modele rozmyte – podstawy i struktury
Metody sterowania – sterowanie rozmyte
Zbiory i rekordy mgr inż. Agata Pacek. Deklaracja typu zbiorowego (określa ilość elementów w zbiorze) type biegi=set of 0..6; Definiowanie zmiennej typu.
Wnioskowanie w stylu Takagi - Sugeno.
Przekazywanie parametrów do funkcji oraz zmienne globalne i lokalne
Wykład 10 typ zbiorowy rekurencja.
SYSTEMY EKSPERTOWE I SZTUCZNA INTELIGENCJA
Sterowanie rozmyte i neuronowe I
Zagadnienia AI wykład 4.
Zagadnienia AI wykład 2.
Zagadnienia AI wykład 5.
Wnioskowanie Mamdani’ego
Podsumowanie wiedzy MPDI2 sem.3 INFORMATYKA. tworzenie nowego pliku i katalogu, nawigacja po katalogach, listowanie zawartości katalogu, zmiana nazw,
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Wnioskowanie Mamdani’ego - rozwinięcia  Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii.
Modelowanie i identyfikacja 2014/2015Modele rozmyte  Kazimierz Duzinkiewicz, dr hab. inż.Katedra Inżynierii Systemów Sterowania1 Systemy rozmyte są modelami.
Pętle – instrukcje powtórzeń
© Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania Modelowanie i podstawy identyfikacji 2015/2016 Modelowanie rozmyte – podstawy,
P ASCAL Definicje, deklaracje, podstawowe instrukcje 1.
Etapy procesu sterowania rozmytego
Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Systemy rozmyte – wnioskowanie Mamdani’ego I © Kazimierz Duzinkiewicz, dr hab.
© Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania Modelowanie i podstawy identyfikacji 2015/2016 Modelowanie rozmyte – podstawy,
Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Systemy rozmyte – wnioskowanie Mamdani’ego II © Kazimierz Duzinkiewicz, dr hab.
Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Systemy rozmyte – wnioskowanie formalne © Kazimierz Duzinkiewicz, dr hab. inż.
 Zdefiniowanie zmiennych  Programowanie liniowe jest działem programowania matematycznego obejmującym te zagadnienia, w których wszystkie związki mają.
Projektowanie systemów cyfrowych z wykorzystaniem języka VHDL
Metody sztucznej inteligencji
Zapis prezentacji:

Zagadnienia AI wykład 6

Schemat rozmytego systemu wnioskującego Baza reguł Blok rozmywania Blok wnioskowania Blok wyostrzania

PROGRAM KOMPUTEROWY Sterowniki rozmyte i programowanie wejście STEROWNIK ROZMYTY oddzielny plik wyjście

Fuzzy Control Language Fuzzy Control Language (FCL) to język pozwalający budować (definiować) sterowniki rozmyte. Definicja sterownika rozmytego zapisana jest w pliku tekstowym z rozszerzeniem fcl. Plik fcl zawiera instrukcje określające parametry sterownika. Instru- kcje te zawarte są w następującym elemencie: FUNCTION_BLOCK //instrukcje END_FUNCTION_BLOCK

Fuzzy Control Language (FCL) // Define input variables VAR_INPUT odleglosc : REAL; END_VAR // Define output variable VAR_OUTPUT predkosc : REAL; Fuzzy Control Language (FCL) Chcemy zbudować przykładowy sterownik rozmyty, który dla otrzymanej na wejściu odległości od przeszkody (odleglosc) wyznaczy nam prędkość (predkosc) pojazdu. Wykorzystamy dwie zmienne lingwistyczne: odleglosc (wejście sterownika) predkosc (wyjście steronika) W języku FCL zapisujemy to następująco: VAR_INPUT odleglosc : REAL; END_VAR VAR_OUTPUT predkosc : REAL;

FCL - wejście Przyjmijmy, że interesuje nas odleglosc w przedziale [0,1000] (m). Konkretna wartość zmiennej odleglosc będzie podana na wejściu naszego sterownika. Wartość ta będzie następnie rozmyta. Przyjmijmy, że zmienna odleglosc będzie przyjmowała następujące 3 wartości:

FCL - wejście FUZZIFY odleglosc TERM mala := (0, 1) (150, 1) (350, 0) ; TERM srednia := (250, 0) (400,1) (600,1) (750,0); TERM duza := (650, 0) (850, 1) (1000, 1); END_FUZZIFY

FCL - wyjście Przyjmijmy, że interesuje nas predkosc w przedziale [0,100] (km/h). Konkretna wartość zmiennej predkosc będzie zwrócona na wyjściu naszego sterownika. Wartość ta będzie efektem wyostrzania. Przyjmijmy, że zmienna predkosc będzie przyjmowała następujące 3 wartości:

FCL - wyjście DEFUZZIFY predkosc TERM mala := (0, 1) (25, 1) (40,0); TERM srednia := (30,0) (45,1) (55, 1) (70, 0); TERM duza := (60, 0) (75, 1) (100, 1); METHOD : COA; END_DEFUZZIFY METODA WYOSTRZANIA

FCL - wyostrzanie COG - Centre of Gravity Metody wyostrzania: COG - Centre of Gravity COGS - Centre of Gravity for Singletons COA - Centre of Area LM - Left Most Maximum RM - Right Most Maximum Możemy teraz przystąpić do zdefiniowania bazy reguł.

FCL – baza reguł Przyjmijmy następującą bazę reguł: JEŻELI odleglosc jest mala TO predkosc jest mala JEŻELI odleglosc jest srednia TO predkosc jest srednia JEŻELI odleglosc jest duza TO predkosc jest duza W języku FCL zapisujemy to następująco: RULE 1 : IF odleglosc IS mala THEN predkosc IS mala; RULE 2 : IF odleglosc IS srednia THEN predkosc IS srednia; RULE 3 : IF odleglosc IS duza THEN predkosc IS duza;

FCL – AND i OR Ponadto musimy określić jeszcze: Metodę AND i OR (do wykorzystania po lewej stronie implikacji) Mamy do wyboru: W języku FCL zapisujemy to następująco: AND : MIN; Wystarczy, że określimy jeden operator!

FCL - aktywacja Ponadto musimy określić jeszcze: Metodę aktywacji (implikacja!) Mamy do wyboru: W języku FCL zapisujemy to następująco: ACT : MIN;

FCL - agregacja Ponadto musimy określić jeszcze: Metodę agregacji (suma zbiorów!) Mamy do wyboru: W języku FCL zapisujemy to następująco: ACCU : MAX;

FCL – blok reguł Ostatecznie blok reguł w FCL wygląda następująco: RULEBLOCK No1 AND : MIN; ACT : MIN; ACCU : MAX; RULE 1: IF odleglosc IS mala THEN predkosc IS mala; RULE 2: IF odleglosc IS srednia THEN predkosc IS srednia; RULE 3 : IF odleglosc IS duza THEN predkosc IS duza; END_RULEBLOCK Jak zobaczymy bloków takich może być kilka!

FCL – przykładowe wyjście W naszym przykładowym programie otrzymujemy na wyjściu kolejno:

FCL – przykładowe wyjście Ostatecznie po przejściu kilkudziesięciu iteracji:

Koniec wykładu 6