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

KÖSZÖNTJÜK HALLGATÓINKAT!

Hasonló előadás


Az előadások a következő témára: "KÖSZÖNTJÜK HALLGATÓINKAT!"— Előadás másolata:

1 KÖSZÖNTJÜK HALLGATÓINKAT!
2010. június 9. KÖSZÖNTJÜK HALLGATÓINKAT! Önök Dr. Botzheim János: Intelligens számítási rendszerek I. előadását hallhatják!

2 Intelligens számítási rendszerek I
Intelligens számítási rendszerek I. Botzheim János egyetemi docens Széchenyi István Egyetem (Győr) 2010. Június 9.

3 Motivációk Hogyan lehetne automatikussá tenni azokat az összetett funkciókat, amelyek megvalósítására az ember könnyedén képes pl.: autóvezetés Nehezen kezelhető feladatok Számos, az ember által többé-kevésbé megoldható feladat a klasszikus matematikai módszerekkel nehezen vagy egyáltalán nem kezelhető Az emberi intelligencia elemeit modellezve a nagybonyolultságú rendszerek kezelése megvalósítható intelligens, ún. soft computing technikákkal Intelligens alapmódszerek Fuzzy rendszerek, neurális hálózatok, evolúciós algoritmusok Jellemző a biológiai és filozófiai indíttatás

4 Homokkupac paradoxon homokkupac – homokszem = homokkupac ... ... ...

5 ebből az következik, hogy homokkupac = 0
ennek oka: a homokkupacot nem definiáltuk elég pontosan gond: egy precíz matematikai definíció nincs összhangban a homokkupac hétköznapi fogalmával probléma: a precíz fogalmakat használó matematika nem alkalmas a pontatlan fogalmak formális kezelésére kérdés: ki tudjuk-e terjeszteni a matematikát úgy, hogy képes legyen pontatlan fogalmakat is kezelni?

6 Fuzzy halmaz, fuzzy logika
Fuzzy: homályos, életlen Lotfi A. Zadeh (1965): fuzzy halmazelmélet a nyelvi fogalmakban lévő pontatlanság kifejezésére Fuzzy logika: Zadeh, 1973 Fuzzy következtetés nyelvi szabályokkal: Zadeh: 1973 Mamdani: 1975

7 Fuzzy halmaz Elmosódott határ:
pl.: „magas emberek”: mennyire eleme egy ismert magassággal rendelkező ember ennek a halmaznak? Részleges tagság: 0 és 1 között: van aki jobban beletartozik, van aki kevésbé Milyen mértékben tartozik x a halmazba? tagsági függvény

8 Egy példa Pl. Egy hallgatói csoport Alaphalmaz: X
“Kinek van jogositványa?” X egy részhalmaza az A (crisp) halmaz A(X) = karakterisztikus függvény “Ki tud jól vezetni?” (X) = tagsági függvény

9 Egy másik példa példa az emberek magasságait leíró 3 fuzzy halmazra
a halmazok részben átfedhetik egymást egy ember több halmazba is beletartozhat, különböző tagsági értékkel 1 m x [cm] alacsony középtermetű magas

10 Műveletek fuzzy halmazokon
Zadeh, 1965 Komplemens: Metszet: Unió:

11 Relációk Hagyományos (crisp) reláció: két vagy több halmaz elemei közötti kapcsolatokat írja le. Ha a halmazok bizonyos elemei között van kapcsolat, akkor a reláció értéke az adott kapcsolatra 1, különben pedig 0 Fuzzy reláció: a kapcsolatokat kevesbé élesen írja le, két vagy több elem egymással való kapcsolatát tetszőleges 0 és 1 közötti értékkel jellemezhetünk A B A B 0.5 0.8 1 0.9 0.6 crisp reláció fuzzy reláció

12 Fuzzy szabályok HA x = A AKKOR y = B
ahol A a szabály antecedense, B pedig a konzekvense példa: Ha a forgalom erős északi irányban, akkor a lámpa legyen hosszabb ideig zöld Fuzzy szabálybázis reláció

13 Fuzzy szabálybázis HIDEG MELEG FORRÓ HŐMÉRSÉKLET

14 Ha a hőmérséklet HIDEG akkor a motor sebesség ALACSONY
KÖZEPES MAGAS MOTOR SEBESSÉG Ha a hőmérséklet HIDEG akkor a motor sebesség ALACSONY Ha a hőmérséklet MELEG akkor a motor sebesség KÖZEPES Ha a hőmérséklet FORRÓ akkor a motor sebesség MAGAS

15 Következtető módszer 1. szabály 2. szabály 3. szabály Hőmérséklet = 55
Motor sebesség Motor sebesség = 43.6 1. szabály 2. szabály 3. szabály

16 Neurális hálózatok Az agyi neuronok működését leutánzó számítási egységek Minták formájában reprezentált tudás megtanulására képes Tudás típusai: analitikus: pl. matematikai egyenletek szabályalapú: pl. fuzzy rendszerek tapasztalati: minták, megfigyelések

17 Tanulás y x rendszer modell
A hálózat paramétereinek (súlyok) módosítása minták alapján rendszer modell + x y hiba

18 Modell-jóság és erőforrásigény
Cél a lehető legjobb kompromisszum megtalálása a kezelhetőség (számítási bonyolultság, erőforrásigény ) és a jóság (modell-pontosság) között “Fuzzy macska - egér ” probléma Az „okos” macska sokáig gondolkodik, hogy hol lehet az egér, de utána gyorsan megtalálja A „buta” macska gyorsan dönt, de pontatlanul, ezért sokáig keres

19 Evolúciós algoritmusok
A soft computing (lágy számítási) módszerek három fő területének egyike Fuzzy rendszerek Neurális hálózatok Evolúciós algoritmusok Alapelvük a megoldások egy populációján történő keresés, melyet a biológiából megismert törvényszerűségek vezérelnek A populáció egyedei a feladat egy-egy megoldását jelentik A populáció fejlődik, egyre jobb egyedeket kapunk

20 A kezdetek Az ötlet, hogy használjunk szimulált evolúciót mérnöki és tervezési problémák megoldására az 1950-es években megjelenik már Az 1960-as években kialakul a három fő klasszikus terület: Evolúciós programozás (Lawrence Fogel, 1962), Genetikus algoritmusok (Holland, 1975) Evolúciós Stratégiák (Rechenberg, 1965 & Schwefel, 1968) Az egyes technikák kifejlesztői megmutatták, hogy a módszerük alkalmas a következő probléma típusok megoldására Fogel előrejelzési problémákkal foglalkozott Rechenberg & Schwefel paraméter optimalizációs problémákkal Holland robusztus adaptív rendszerek fejlesztésével

21 Optimalizációs módszerek
Determinisztikus Calculus alapú Hegymászó módszer Sztochasztikus Véletlen keresés Szimulált lehűtés Evolúciós algoritmusok: sztochasztikus módszerek, melyek a természetes evolúció folyamatát szimulálják felhasználva a legalkalmasabb egyed túlélésének törvényét

22 Terminológia Gén: funkcionális entitás, mely az egyed egy speciális tulajdonságát kódolja (pl. hajszín) Allél: a gén értéke (pl. szőke) Egyed: kromoszóma, egy megoldás jelölt a problémára Genotípus: egy egyed alléljainak egy speiális kombinációja Fenotípus: az egyed külső-belső tulajdonságainak összessége Locus: egy gén pozíciója a kromoszómán belül Populáció: egyszerre együtt élő egyedek összessége

23 A populáció evolúciója
Egyedek eloszlása a 0. generációban Egyedek eloszlása az N. generációban

24 kezdeti populáció létrehozása
Genetikus algoritmus egyedek rangsorolása kezdeti populáció létrehozása szelekció keresztezés mutáció visszahelyettesítés

25 Az egyed Az egyed egy megoldás jelölt a problémára
A probléma egy lehetséges megoldása valamilyen formában az egyedbe van kódolva pl. bináris, vagy valós Fitnesz érték (alkalmassági érték): az egyedeket valamilyen kritérium szerint értékeljük ki, aszerint, hogy mennyire jó megoldást adnak a feladatra Jobb egyednek nagyobb a fitnesz értéke, és nagyobb eséllyel él túl

26 Szelekciós módszerek többféle kiválasztási módszer terjedt el
minél jobb az egyed, annál nagyobb az esély a kiválasztására Rulett kerék szelekció: az egyedek a fitnesz értékükkel arányos szeletet kapnak a gurításnál a nagyobb fitnesz értékű egyedek nagyobb eséllyel választódnak ki

27 Keresztezés (Crossover)
Véletlenszerű keresztezési pont kiválasztása a két szülőn Utódok létrehozása az információ kicserélődésével a keresztezési pont alapján

28 Mutáció Gén értékének véletlenszerű megváltoztatása pm valószínűséggel (mutációs arány)

29 Egy példa (Goldberg) Egyszerű probléma: x2 maximumának megkeresése a {0,1,…,31} alaphalmazon Genetikus algoritmussal: Reprezentáció: bináris, pl  13 Populáció méret: 4 Keresztezés, mutáció Rulett kerék szelekció Véletlenszerű inicializálás

30 Egy példa: szelekció

31 Egy példa : keresztezés

32 Egy példa : mutáció

33 Alternatív keresztezés operátorok
n-pontos: uniform:

34 Valós GA Keresztezés például: szülők: x1,…,xn  és y1,…,yn utód1:
a másik utódra felcserélve pl.: ( = 0.5) Mutáció:

35 Bakteriális evolúciós algoritmusok
Természetből ellesett optimalizációs technika A baktériumok evolúciós folyamatán alapul Alkalmas bonyolult optimalizációs problémák megoldására Egyed: egy megoldás a problémára Intelligens keresési stratégia eléggé jó megoldás keresésére (kvázi optimum) Gyors konvergencia (feltételesen)

36 Az algoritmus Kezdeti populáció véletlenszerű létrehozása
n. generáció Kezdeti populáció véletlenszerű létrehozása Bakteriális mutáció végrehajtása minden egyeden Génátadás végrehajtása a populációban Ha megfelelő eredményt értünk el, akkor megállunk, különben folytatjuk a bakteriális mutációs lépéssel (n+1). generáció

37 Bakteriális mutáció Egy rész véletlenszerű kiválasztása
i. rész n. rész Az i. részt változtatjuk az Nklón számú másolatban, de az eredeti baktériumban nem A legjobb baktérium átadja az i. részt a többi baktériumnak Ismételjük addig, amíg az összes részt ki nem választottuk

38 Génátadás 1. A populációt 2 részre osztjuk, jó egyedekre, és rossz egyedekre 2. Egy baktériumot véletlenszerűen kiválasztunk a jobbik alpopulációból (forrásbaktérium) egy másikat pedig a rossz egyedek közül (célbaktérium) 3. A forrásbaktérium egy része felülírja a célbaktérium egy részét Ez a ciklus ismétlődik Ninf -szer (“infekciók” száma) rossz egyedek jó egyedek

39 Paraméterek Ngen: generációk száma Nind: egyedek száma
Nklón: másolatok (klónok) száma a bakteriális mutációban Ninf: génátadások (infekciók) száma a génátadásnál

40 Különbségek a GA és BEA között
A GA az emlősállatok evolúciós folyamatát utánozza, míg a BEA a baktériumok fejlődését Az információ terjesztésére a GA a keresztezés operátort használja, a BEA pedig a génátadást A bakteriális mutáció hatékonyabb a GA klasszikus mutációjánál A bakteriális evolúciós algoritmusban nincs szelekció, viszont van osztódás

41 Evolúciós elméletek Jean-Baptiste Lamarck
A szerzett tulajdonságok öröklésének elmélete Ha egy organizmus változik az élete során, hogy ezáltal jobban adaptálódjon a környezetéhez, ezeket a változásokat továbbadja az utódainak Charles Darwin A szerzett tulajdonságok nem öröklődnek Az organizmus élete során bekövetkező változásai nincsenek hatással a faj fejlődésére James M. Baldwin Új faktor az evolúcióban A szerzett tulajdonságok indirekten öröklődhetnek

42 Memetikus algoritmus Az evolúciós algoritmusoknak lokális kereső operátorokkal történő olyan kombinációja, ahol a lokális keresés az evolúciós cikluson belül zajlik A memetikus algoritmusokat Moscato javasolta (~1989) A lokális keresést élethosszig tartó tanulásnak lehet tekinteni Terminológia: mém = a kulturális evolúció alapegysége („génje”) (Dawkins: Az önző gén, 1976) ”mimema”: utánzás

43 Miért kombináljuk őket?
Evolúciós algoritmusok Nagy, durva keresési teret járnak be Nehézségek a finomhangolással Lokális kereső technikák Gyorsan optimizálnak, konvergálnak Lokális optimumokba ragadnak Hátrányok: A tanulás költséges A tanulás nem mindig jó

44 Bakteriális memetikus algoritmus
n. generáció Kezdeti populáció véletlenszerű létrehozása Bakteriális mutáció végrehajtása minden egyeden Lokális keresés végrehajtása minden baktériumon Génátadás végrehajtása a populációban Ha megfelelő eredményt értünk el, akkor megállunk, különben folytatjuk a bakteriális mutációs lépéssel Bakteriális mutáció Gén átadás Lokális keresés (n+1). generáció

45 A bakteriális memetikus algoritmus alkalmazása az utazó ügynök probléma megoldására
Az utazó ügynök probléma (Traveling Salesman Problem, TSP) célja a legolcsóbb út megtalálása városok egy halmazában úgy, hogy minden várost pontosan egyszer látogatunk meg és végül a kiindulási pontba térünk vissza Az irodalomban a városok közötti költségek az euklideszi távolsággal vannak megadva, a probléma szimmetrikus, a költségek konstansok Nehéz probléma Módosítások az eredeti TSP-n, hogy a való élethez közelebb kerüljön

46 A módosított utazó ügynök probléma
Egy várost nem csak egyszer lehet meglátogatni A valóságban vannak olyan városok, melyeknek csak egy csatlakozásuk van a többihez Egy hosszabb út (több várost tartalmazó túra) olcsóbb is lehet A városok közötti költségek nem állandóak Valósághű modell Egy városban meg is lehet állni, és később folytatni a túrát, ha így jobban megéri A városok közti költségek nem csak az időtől függenek, hanem fuzzy számokkal is vannak leírva, ezáltal modellezve az út költségének pontatlanságát

47 Bakteriális mutáció TSP esetén
Paraméterek: szegmens hossz (ebben a példában 3) klónok száma (ebben a példában 4) 1. szegmens 2. szegmens 3. szegmens 4. szegmens Véletlenszerű mutációs szegmens-sorrend kialakítása pl.: {3. szegmens, 1. szegmens, 4. szegmens, 2. szegmens} (ez azt jelenti, hogy a bakteriális mutációt először a 3. szegmensen hajtjuk végre) Létrehozzuk a klónokat és az adott szegmenset megváltoztatjuk a klónokban 1. klón: 2. klón: 3. klón: 4. klón: a legjobb klón kiválasztása

48 Bakteriális mutáció TSP esetén
A szegmensnek nem muszáj egymás melletti elemekből állni: 1. szegmens A módosított TSP-ben a városok száma nincs előre meghatározva, ezért különböző hosszúságú egyedek is előfordulhatnak a populációban. A módosított TSP-ben egy klón mutációja előtt véletlenszerűen döntünk a klón hosszának megváltoztatásáról.

49 Génátadás TSP esetén Paraméterek: szegmens hossz (ebben a példában 3)
infekciók száma Forrásbaktérium: Célbaktérium a génátadás előtt: Célbaktérium a génátadás után:

50 Lokális keresés 2-opt: 3-opt:
A C A C 1. 2. D B D B Lehetséges élpárak cseréje: |AB|+|CD|>|AC|+|BD| 3-opt: B A B A B A 1. 2. 3. E D E D E D F C F C F C Lehetséges élhármasok cseréje: A legjobbat kiválasztjuk.

51 További lehetőségek Determinisztikus egyedek a kezdeti populációban
Útkonstrukciós heurisztikák Legközelebbi szomszéd Második legközelebbi szomszéd Alternáló Determinisztikus klón a bakteriális mutációban A klónokban az adott szegmens véletlenszerűen változik, de az egyik klónban determinisztikusan változtatjuk, megfordítjuk a városok sorrendjét az adott szegmensben

52 Szimulációs eredmény – Klasszikus TSP
Referencia probléma 131 várossal (www.tsp.gatech.edu, XQF131 ) Optimális megoldás: teljes költség =564

53 Néhány egyéb evolúciós módszer
Többkritériumú genetikus algoritmus Többpopulációs genetikus algoritmus Hangyakolóniák Vírus alapú evolúciós algoritmus „Ragadozó-zsákmány” módszer Méhkirálynő evolúciós algoritmus Mesterséges immunrendszerek Részecske-sereg optimalizáció ...

54 KÖSZÖNJÜK MEGTISZTELŐ FIGYELMÜKET!
TÁMOP / KÖSZÖNJÜK MEGTISZTELŐ FIGYELMÜKET! A rendezvény a „SZiENCE4YOU – Tudás- és tudomány disszemináció a Széchenyi István Egyetemen” című projekt keretében valósult meg. A program szervezői, támogatói:


Letölteni ppt "KÖSZÖNTJÜK HALLGATÓINKAT!"

Hasonló előadás


Google Hirdetések