Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

INTELLIGENS GYÁRTÓRENDSZEREK Mesterséges intelligencia módszerek.

Hasonló előadás


Az előadások a következő témára: "INTELLIGENS GYÁRTÓRENDSZEREK Mesterséges intelligencia módszerek."— Előadás másolata:

1 INTELLIGENS GYÁRTÓRENDSZEREK Mesterséges intelligencia módszerek

2 2 MESTERSÉGES INTELLIGENCIA MI tárgya: azon feladatok számítógépes megoldása, amelyek megoldása nehéz az embertől is kellő szakértelmet, kreativitást és intuíciót kíván – intelligenciát igényelnek pl. kirakós játék, sakk, tételbizonyítás, orvosi diagnózis, szöveg fordítása (kontextus fontos!) MI célja: intelligens tárgy (artifact) konstruálása  program

3 3 AZ MI FELADATOK KÖZÖS VONÁSA nehezek (az ember számára is!) nem rendelkeznek minden részletében tisztázott fix megoldó mechanizmussal a megoldás elemi tevékenységek sorozataként állítható elő előre nem rögzített több lehetséges sorozat közül kell kiválasztani megoldás: kereséssel szisztematikus próbálkozással választjuk ki a következő „lépést” a probléma tere nagy lehet az összes lehetőség kipróbálása szisztematikus úton nem lehetséges – kombinatorikus robbanás irányított keresésre van szükség

4 4 AZ MI FELADATOK KÖZÖS VONÁSA emberi szakértelem/ intuíció/ gyakorlati tapasztalat szükséges – heurisztikus ismeretek keresés korlátozása heurisztikával vezérelt keresés – az MI rendszerek legjellegzetesebb közös vonása „elég kedvező” megoldás elégséges ma általában az ember a jobb sakk... bank hó végi zárása …

5 KERESÉS (SEARCH)

6 6 Keresés – módszeres próbálkozás Problémák: Mit kell tudni egy feladat megoldásához? – akciók, állapotok, célok Hogyan kell az ismereteket leírni? – MI-ben: reprezentáció Hogyan kell a megoldást keresni? – MI-ben: keresés Reprezentáció: állapottér (state space), kezdeti- és célállapotok reprezentálása: gráf (graph) csomópont (node) - állapot (state) él (arc) - művelet (action) KERESÉS

7 Keresési probléma kezdeti állapot(ok) operátorok/műveletek cél teszt költségek A keresés folyamata állapottér, út, megoldás kiterjesztés, stratégia A keresés technikája keresési fa, csomópont, gyökér, levél keresési algoritmus: melyik csomópontot érdemes kiterjeszteni? A keresés költsége út költsége + keresési eljárás költsége 7 KERESÉS

8 8 ÚTKERESÉS VÁROSOK KÖZÖTT kezdeti állapot: Nyíregyházán vagyunk operátorok: utazás szomszédos városok között állapotok: egyes városokban vagyunk cél teszt: Fehérgyarmaton vagyunk már? költség: megtett út hossza optimális megoldás: minimális költségű út a kezdeti és a célállapot között

9 9 ÁLTALÁNOS KERESÉSI ALGORITMUS adott: kezdeti állapot célteszt/ célállapot műveletek keresési algoritmus: 1.Legyen L a kezdeti állapoto(ka)t tartalmazó lista. 2.Ha L üres, akkor leállás - a keresés sikertelen; egyébként legyen n egy csomópont L-ből. 3.Ha n célállapot, akkor leállás - eredmény megadása; egyébként n törlése L-ből, n gyermekeinek előállítása, n gyermekeinek hozzáadása L-hez, visszalépés 2-re.

10 10 PÉLDA: ÁLTALÁNOS KERESŐ JÁTÉK adott: két kétjegyű szám (kiindulási- és célszám) feladat: eljutni a kiindulási számtól a célszámig akció: egy számjegy növelése vagy csökkentése, kétszer nem lehet ugyanazt a számjegyet változtatni, 0-t csökkenteni, 9-t növelni nem lehet Pl. kiindulási szám 25, célszám L={25} 2. n=25 3. L={15 (25), 35 (25), 24 (25), 26 (25)} 2. n=15 3. L={35 (25), 24 (25), 26 (25), 14 (15|25), 16 (15|25)} … melyik számot választjuk a listáról? hova, milyen sorrendben tesszük a gyerekeket?

11 11 SZÉLESSÉGI KERESÉS (BREADTH-FIRST SEARCH) A keresési fában mindig a legmagasabb szinten lévő csomópontok valamelyikét terjeszti ki A C B FED KJIH G ONM L A B C C D E D E F G E F G H I J F G H I J G H I J H I J K L I J K L M J K L M N O K L M N O Az általános keresési algoritmus módosítása: 2.n az első csomópont L-ből 3.n gyermekeinek hozzáadása L végéhez

12 12 MÉLYSÉGI KERESÉS (DEPTH-FIRST SEARCH) A keresési fában mindig a legmélyebben lévő csomópontok valamelyikét terjeszti ki A C B FED K J IH G ONM L A B C D E C H I J E C M I J E C I J E C N O J E C Az általános keresési algoritmus módosítása: 2.n az első csomópont L-ből 3.n gyermekeinek hozzáadása L elejéhez

13 13 GENETIKUS ALGORITMUS (GENETIC ALGORITHM) Alapötlet: Keresés a természetes kiválasztódás (durva) utánzásával. Fogalmak egyed (egy lehetséges megoldás – állapot) populáció (a lehetséges megoldások egy halmaza) rátermettség – fitness (célfüggvény) genetikus kód (az egyed reprezentációja) genetikus műveletek: kereszteződés, mutáció

14 14 GENETIKUS ALGORITMUS (GENETIC ALGORITHM) Algoritmus 1.Töltsd fel a kezdeti populációt. 2.Ha a leállási feltétel teljesül, akkor állj le és add vissza a legjobb egyedeket eredményként. 3.Egyébként válassz ki néhány egyedet a populációból; alkalmazd rájuk a genetikus műveleteket; értékeld ki az új egyedeket; dobd el a legrosszabb egyedeket; menj vissza 2-re.

15 CSELEKVÉSTERVEZÉS (PLANNING)

16 16 CSELEKVÉSTERVEZÉS lehet-e ezt keresési feladatként felfogni? akciósorozat (akciósorrend??) kezdőállapot  célállapot (forward reasoning) - itt reménytelen célhoz hiányzó feltételek célállapot  kezdőállapot (backward reasoning)

17 17 CSELEKVÉSTERVEZÉS cselekvéstervezés  szintézis – kisebb elemekből bonyolultabb objektum valamilyen szabályokkal planning, design, sheduling Probléma: szervezetek, csoportok vagy egyének bizonyos célok elérésére irányuló viselkedésének meghatározása cél: a világ állapota(i) Kérdések: Miként hatnak a cselekedetek a világra?  modellezés, szimuláció Hogyan tervezhető meg egy összetett cselekvéssor? Megközelítések: speciális, alkalmazásfüggő tervezés (pl. művelettervezés, szállítási terv készítése) általános célú, alkalmazásfüggetlen tervezés situated action

18 18 CSELEKVÉSTERVEZÉS – TERVEZÉSI FELADAT adott: a világ kezdeti állapota (teljesen ismert) a célállapot jellemzése (részlegesen adott) a világot módosítani képes akciók keresendő: egy terv (akciók szervezett együttese), amely végrehajtható a világot átviszi egy elérendő célállapotba

19 19 CSELEKVÉSTERVEZÉS, MINT KERESÉSI PROBLÉMA általános célú problémamegoldó elágazási tényező nagy lehet pl. vásárlási terv módszeres próbálkozás  legtöbb cselekedetünk haszontalan lenne állapotok és akciók közötti kapcsolat  akciók hatása akciók kölcsönhatása  előfeltételek megadása kötött sorrendű akciósorozat  kötetlenebb tervreprezentáció akciók hatása lokális  alcélok tervező algoritmusok

20 20 AKCIÓK REPREZENTÁCIÓJA Akciók Hogyan reprezentájuk az akciókat? előfeltétel  hatás Mit tudunk a világról: akciók reprezentációja Reprezentáció alapkérdései: a világ nem változó része keret probléma (frame problem) általános alapfeltevés: a változások lokálisak (csak az változik, amit hatásként megadtunk) mi változik, hogy adható meg hatásterjedés problémája (ramification problem) tevékenység előfeltételeinek megadása kvalifikációs probléma (qualification problem) nehéz pontosan formalizálni

21 21 STRIPS REPREZENTÁCIÓ STRIPS – Stanford Research Institute Problem Solver Elemei: világ állapota: igaz elemi logikai állítások konjunkciója cél: elérendő elemi állítások konjunkciója akciók: operátorok - a előfeltételek: konjunktív logikai kifejezések - P(a) hatások: milyen állítások válnak igazzá – A(a) illetve hamissá – D(a) STRIPS feltevések: minden előfeltétel expliciten adott ami nincs a hatások között  változatlan a világ csak az akciók során változhat

22 22 STRIPS REPREZENTÁCIÓ Kezdeti állapot: függvénymentes konstansokkal felépített literálok határozott világállapot Célállapot: változók lehetnek nem teljes világleírás Akciósorozat: kezdőállapotból egy végállapotba viszi a világot

23 23 STRIPS REPREZENTÁCIÓ – PÉLDA AP(A)A(A)D(A) move(x, y, z)clear(x) loc(x, y) clear(z) loc(x, z) clear(y) loc(x, y) clear(z) move_to_table(x, y)clear(x) loc(x, y) loc(x, table) clear(y) loc(x, y)

24 24 STRIPS REPREZENTÁCIÓ – PÉLDA OPERÁTOROK Központfúrásra akkor kerülhet sor, ha mind a munkadarab, mind pedig egy központfúró szerszám be van fogva a gépen. Az eredmény egy központfurat a munkadarabon. (:operator központfúrás :parameters (?m ?fúró) :precondition (and (központfúró ?fúró) (munkadarab ?m) (befogott-szerszám ?fúró) (befogott-munkadarab ?m)) :effect (központfurat-készen ?m)) Fúró akkor fogható be, ha a gépen üres a tokmány. Az eredmény egy befogott fúró, és a foglalt (nem üres) tokmány. (:operator fúró-be :parameters (?fúró) :precondition (tokmány-üres) :effect (and (befogott-szerszám ?fúró) (not (tokmány-üres))))

25 25 STRIPS REPREZENTÁCIÓ – PÉLDA A KEZDETI ÉS A CÉLÁLLAPOT MEGADÁSA (define (problem sorrend-1) :domain 'sorrendtervezés :inits ((tokmány-üres) (asztal-üres) (központfúró kf-23) (csigafúró csf-65) (csigafúró csf-66) (munkadarab m-77) (munkadarab m-42)) :goal (and (furat-készen m-77) (tokmány-üres) (asztal-üres)))

26 26 PÉLDA Kezdeti állapot: ((tokmány-üres)(asztal-üres) (központfúró kf-23)(csigafúró csf-65) (csigafúró csf-66)(munkadarab m-77) (munkadarab m-42)) Egy terv: ((munkadarab-be m-77)(fúró-be kf-23) (központfúrás m-77 kf-23)(fúró-ki kf-23) (fúró-be csf-65)(csigafúrás m-77 csf-65) (munkadarab-ki m-77)(fúró-ki csf-65)) Elért célállapot: (and (furat-készen m-77) (tokmány-üres) (asztal-üres))

27 27 STRIPS REPREZENTÁCIÓ Def: „a” akció sikeres (succeeds)/végrehajtható S állapotban iff P(a)  S. Def: „a” akció eredménye: result(a, S) =  S \ D(a)   A(a) Def: a 1,..., a n akciósorozat, S állapot, S 0 = S és S i = result(a i, S i-1 ) i=1,..., n a 1,..., a n akciósorozat sikeres, ha  a i sikeres és teljesíti G célt, ha G  S n.

28 28 STRIPS REPREZENTÁCIÓ A STRIPS keresési tér: gyökér node: (  , G) akciósorozat, függő célok cél node: (  a 1,...,a n , Z),Z  S n node kiterjesztése a akcióval: (  a 1,...,a n , Z) A(a)  Z   és D(a)  Z   (  a, a 1,...,a n , (Z \ A(a))  P(a)) új részcél

29 29 RÉSZLEGES SORRENDŰ TERVEZÉS (PARTIAL ORDER PLANNING) Terv: legyen végrehajtható és vezessen a célhoz részben rendezett akciók legkisebb elkötelezettség

30 30 RÉSZLEGES SORRENDŰ TERVEZÉS részleges terv:  A, O, V, L  A: tervben szereplő akciók halmaza A={A 1, A 2,.., A n } O: előzési korlátozások (A i  A j ) halmaza V: változólekötésekre vonatkozó korlátozások halmaza (v = x ill. v ≠ x formában) L: oksági kapcsolatok halmaza (A p  q A c formában) kezdeti állapot: A =  A 0, A   O =  A 0  A   V =   L =   oksági kapcsolatok (casual links):  A p, Q, A c  A p : termelő akció (producer) A c : fogyasztó akció (consumer) Q: előfeltétel, A p eredménye, A c feltétele korlátozás: A p és A c között bármely akciót végrehajtva Q igaz maradjon

31 31 RÉSZLEGES SORRENDŰ TERVEZÉS Def: egy  A p, Q, A c  oksági kapcsolatot fenyeget A t  A akció, melyre megengedett az A p  A t  A c részleges sorrend és melynek hatása tagadhatja Q-t. fenyegetés elhárítása: előzési korlátozások megadása A t  A p előzési korlátozás (demotion) A c  A t előzési korlátozás (promotion) változólekötés At egyik hatása sem tagadhatja Q-t egy terv megoldás, ha: az összes akció előfeltételeit egy-egy oksági kapcsolat támogat egyetlen oksági kapcsolatot sem ér fenyegetés

32 32 RÉSZLEGES SORRENDŰ TERVEZÉS pillanatnyi célok halmaza (agenda): Ag =  Q, A i ,...  A i  A Q: A i egy még nem teljesített előfeltétele kettősökből áll: mit kell létrehozni, mi előtt – elemi részcélok pl:Ag =  on(a, b), A  ,  on(b, c), A  

33 33 RÉSZLEGES SORRENDŰ TERVEZÉS ALGORITMUSA P: kezdeti terv  A, O, V, L , Ag: pillanatnyi célhalmaz 1. Ag =   kész 2. részcél választása:  Q, A i   Ag 3. akció választása: A j képes előállítani Q-t új/ tervben szereplő akció: A' = A   A j  / A' = A O' = O   A j  A i  V' = V   A j változóinak lekötése, hogy eredmény Q legyen  L' = L    A j, Q, A i   4. agenda frissítése: ha A j  A:Ag' =  Ag \  Q, A i   ha A j  A:Ag' =  Ag \  Q, A i     P(A j ), A j  5. fenyegetések elhárítása: újabb előzési korlátok (promotion, demotion) 6. ha P' terv inkonzisztens, kudarc, egyébként P' és Ag' visszaadása.

34 34 GYAKORLATI TERVEZÉS Hierarchikus tervezés vázlatok, kevesebb előfetétel, dekompozíció részletek kitöltése részfeladatok nem mindig egyesíthetők Tervezés / végrehajtás tervezés: célállapot  kezdőállapot végrehajtás: kezdőállapot  célállapot plan debugging Gyakorlati tervezés gazdagabb idő fogalom (intervallumok, akciók időtartama) erőforrások szerepe (tartós, fogyasztható) kifinomultabb célok (elérendő, fenntartandó, elkerülendő, időbeli) felhasználó közreműködése korlátozáskielégítés, operációkutatás

35 CSELEKVÉSTERVEZÉS 35

36 TUDÁSALAPÚ RENDSZEREK Szabály alapú következtetés

37 37 ISMERETALAPÚ/TUDÁSALAPÚ RENDSZEREK, SZAKÉRTŐ RENDSZEREK Motiváció kevesebb ember/ kevesebb idő hibás döntések számának csökkenése egyszerűen, olcsón többszörözhető bármikor elérhető veszélyes helyekre elvihető intelligens problémamegoldás (bonyolult problémák, tanulás korábbi tapasztalatokból, természetes nyelvű közegek megértése, képek értelmezése,...)

38 38 ISMERETALAPÚ/TUDÁSALAPÚ RENDSZEREK (KNOWLEDGE-BASED SYSTEMS, KBS) alapvető elemei: ismeretbázis/tudásbázis problématerületet leíró ismeretek (tudás) természetes nyelvhez közeli formalizmus szimbolikus módon leírt rendszer-specifikáció TUDÁSREPREZENTÁCIÓS MÓDSZER! következtető gép feladatmegoldás “motorja” általános problémamegoldó ismeretek MEGOLDÁSKERESŐ MÓDSZER! adatbázis/munkamemória (MM) kisegítő komponens konkrét feladat kiinduló/közbülső adatai információk

39 39 ISMERETALAPÚ/TUDÁSALAPÚ RENDSZEREK (KNOWLEDGE-BASED SYSTEMS, KBS)

40 40 Ha-akkor típusú szabályok (implikáció,  ) (defrule ‹szabály-név› ‹Bármikor, ha ezen feltételek fennállnak›  ‹akkor hajtsd végre ezeket az akciókat›) Tudásbázis: adatbázis (MM) + szabálybázis adatbázis: pozitív elemi tényállítások egy halmaza... (gép G2 szabad) (gép G4 foglalt) (munkadarab M17 rendelkezésre-áll) (munkadarab M25 rendelkezésre-áll) (munkadarab M65 gépen G4) (munkadarab M66 kész) (igényli M17 G1) (igényli M17 G2) (igényli M25 G2)... SZABÁLYALAPÚ (PRODUKCIÓS) RENDSZEREK

41 Szabály: Feltétel  Akció feltétel adatbázisbeli tényekre vonatkozik logikai kapcsolatok (ÉS, VAGY), ill. tagadás változók, tény-minták akció elemi tények hozzáadása ill. törlése mellékhatások (input/output) 41

42 SZABÁLYALAPÚ (PRODUKCIÓS) RENDSZEREK Példa (defrule tégy-munkadarabot-gépre ?f1 ‹- (gép ?G szabad) ?f2 ‹- (munkadarab ?MD rendelkezésre-áll) (not (munkadarab ?MD kész)) (igényli ?MD ?G)  (assert (munkadarab ?MD gépen ?G) (gép ?G foglalt)) (retract ?f1 ?f2)) (defrule munkadarab-elkészült ?f1 ‹- (munkadarab ?MD gépen ?G) ?f2 ‹- (gép ?G megmunkálást-befejezte)  (assert (munkadarab ?MD kész) (gép ?G szabad)) (retract ?f1 ?f2)) 42

43 Következtetés: alapvetően előre-láncolás új tényeket ad az adatbázishoz, ill. törli onnan a hamissá vált tényeket. Mintaillesztés feltétel oldali változók lekötése Példa: tégy-munkadarabot-gépre (defrule tégy-munkadarabot-gépre ?f1 ‹- (gép ?G szabad) ?f2 ‹- (munkadarab ?MD rendelkezésre-áll) (not (munkadarab ?MD kész)) (igényli ?MD ?G) ... {?G/G2,?MD/M17} és {?G/G2,?MD/M25} minden lehetséges módon (kimerítő keresés) elvben unifikáció/egyesítés 43 SZABÁLYALAPÚ (PRODUKCIÓS) RENDSZEREK

44 Következtetés: alapvetően előre-láncolás új tényeket ad az adatbázishoz, ill. törli onnan a hamissá vált tényeket. 44 SZABÁLYALAPÚ (PRODUKCIÓS) RENDSZEREK mintaillesztés választás szabályalkalmazás adatbázis szabálybázis input output

45 Példa: ha a tégy-munkadarabot-gépre szabály (defrule tégy-munkadarabot-gépre ?f1 ‹- (gép ?G szabad) ?f2 ‹- (munkadarab ?MD rendelkezésre-áll) (not (munkadarab ?MD kész)) (igényli ?MD ?G)  (assert (munkadarab ?MD gépen ?G) (gép ?G foglalt)) (retract ?f1 ?f2)) {?G/G2,?MD/M17} illeszkedéssel tüzel, akkor új tények: (munkadarab M17 gépen G2) (gép G2 foglalt) törölt tények:(munkadarab M17 rendelkezésre-áll) (gép G2 szabad) 45 SZABÁLYALAPÚ (PRODUKCIÓS) RENDSZEREK

46 Konfliktus adott esetben több szabály példány is tüzelhet választás = konfliktusfeloldás konfliktusfeloldó stratégiák: újrafelhasználhatóság legfrissebb tényre illeszkedés legspecifikusabb a legnagyobb prioritású 46 SZABÁLYALAPÚ (PRODUKCIÓS) RENDSZEREK

47 47 SZABÁLYALAPÚ RENDSZEREK Vezérlési stratégiák adatvezérelt szabályalapú rendszerek előrefelé haladó következtetés mintaillesztés konfliktusfeloldás szabályalkalmazás célvezérelt szabályalapú rendszerek bizonyítandó cél ténnyel való illesztés (közvetlen) részcélok igazolására való visszavezetés (közvetett) mintaillesztés konfliktusfeloldás szabályalkalmazás visszalépés

48 Előnyök közel áll egyféle emberi gondolkodásmódhoz tudás "darabkák" megragadására alkalmas inkrementális fejlesztés (csak egy bizonyos bonyolultságig!) bizonytalanságkezelési lehetőségekkel könnyen kiegészíthető Hátrányok törékeny a rendszer a vezérlésnek akarva-akaratlanul nagy a szerepe csak logikai jellegű döntési feladatokban jó 48 SZABÁLYALAPÚ RENDSZEREK

49 Fuzzy-modell

50 50 FUZZY-MODELL fuzzy – homályos, ködös, életlen, bizonytalan Lofti Zadeh (1965) - Fuzzy sets nyelvi fogalmakban levő bizonytalanság matematikai kezelése parciális tagság az objektum mennyire van benne adott halmazban

51 51 FUZZY-MODELL tagsági függvény:  halmazhoz tartozás mértéke  A (x): U   0, 1  A  U, U: alaphalmaz x  U  A (x) = 1x definit módon A-ba tartozik  A (x) = 0x definit módon nem tartozik A-ba  A (x 1 )   A (x 2 )x 1 "jobban beletartozik" A-ba, mint x 2

52 52 FUZZY-MODELL halmazelméleti műveletek kiterjesztése  A  B (x) = max  A (x),  B (x)   A  B (x) = min  A (x),  B (x)    A (x) = 1   A (x) ABAB   A (x)

53 53 FUZZY-MODELL Fuzzy-rendszerek fuzzy-szabályok (if - then) fuzzy-következtetés if e neg then u neg if e zero then u zero if e pos then u pos fuzzyfikálás defuzzyfikálás

54 54 FUZZY-MODELL Előnyei: emberi szemlélethez közeli, nyelvi kifejezések könnyű módosíthatóság egyszerű leírás szabályok érvényessége pontosan megadható hiányos, bonyolult feladatok esetén is használható könnyű számolni a fuzzy-bizonyosságokkal Hátrányai: fuzzy tagsági függvénynek nincs pontos elméleti alapja kombinációs függvényeket sok kritika éri


Letölteni ppt "INTELLIGENS GYÁRTÓRENDSZEREK Mesterséges intelligencia módszerek."

Hasonló előadás


Google Hirdetések