Intelligens Rendszerek I. Alkalmazási területek 2007/2008. tanév, I. félév Dr. Kovács Szilveszter E-mail:
[email protected] Miskolci Egyetem Informatikai Intézet 106. sz. szoba Tel: (46) 565-111 / 21-06 mellék
Mesterséges intelligencia alkalmazási területek • • • • • • • • • • • • • •
logikai játékok (logical games) tételbizonyítás (theorem proving) szimbolikus számítás (symbolic algebraic computation) robotika (robotics) látás, képfeldolgozás (vision) beszédfelismerés (voice recognition) természetes nyelvek feldolgozása (natural language processing) korlátozás kielégítés (constraint satisfaction) cselekvési tervek generálása (planning) adatbányászat (data mining) mesterséges neurális hálózatok (artificial neural nets) szakértőrendszerek (expert systems) automatikus programozás (automated programming) ágensek, multi-ágensek (agents, multi-agents). Dr. Kovács Szilveszter ©
M.I. 2. / 2.
Logikai játékok (logical games) • Ellenérdekű résztvevők felváltva érvényesített stratégiái a végső nyerés érdekében Pl: Sakk: • • • •
Kempelen Farkas: sakkautomatája, a Török 1769 Leonardo Torres y Quevedo: működő mechanikus sakk-végjátékautomata 1890!! Nemes Tihamér: cikk sakkozó gépről, 1949 Alan Turing: sakkalgoritmus, 1951
Dr. Kovács Szilveszter ©
M.I. 2. / 3.
Kétszemélyes zérusösszegű játékok • Egyik nyer, másik veszít, egyes játékokban döntetlen is lehet. • MAX, MIN, a két játékos elnevezése • Teljes információjú: mindkét játékos számára ugyanazok az információk állnak rendelkezésre a játékról – táblás játékok: igen – kártyajátékok: nem
• Diszkrét: a játékban az állapotok véges számú előfordulása létezik • Végteszt: nyert-e valamelyik? Döntetlen? • Nyerő stratégia: kényszerítve nyer • Tökéletes definiáltság és kevés szabály miatt ideális MI tesztterületnek
Dr. Kovács Szilveszter ©
M.I. 2. / 4.
A játék szemléltetése
• Irányított gráffal
– Hálós gráf: egyféle állás – ugyanazon csomópont
A
S B
C
G S – Fagráf: ugyanazon állásnak több csomópont felel meg (leggyakoribb, jól kezelhető) A
B
– ÉS/VAGY gráf : az egyik játékos G G szemszögéből. S Saját lépések között : VAGY VAGY – elég ha egy is nyer B A Az ellenfél lépései között: ÉS ÉS – mindegyiknél (bármelyiknél) nyerni kell ÉS Dr. Kovács Szilveszter ©
C G C ÉS
M.I. 2. / 5.
Gráfjellemzők • Csomópont ↔ játékállás • Élek ↔ lehetséges lépések • Fagráf-jellemzők:
S A G
B
C
G
G
– Gyökér csomópont ↔ a kiértékelésre kerülő állás – Szintek, mélység, (depth, d) váltakozva MAX, MIN, gyökér: d=0 – Levél csomópontok: az egyes játszmák vége, valaki nyer, vagy döntetlen; nyereségérték.
• Elágazási tényező: a csomópontnak megfelelő állásból tehető engedélyezett lépések száma, branching factor (b) Dr. Kovács Szilveszter ©
M.I. 2. / 6.
Pl: Aki az utolsót húzza, az veszít • Minimum egyet, maximum hármat kell húzni • két játékos (MAX és MIN) • diszkrét és teljes információjú játék • Stratégia: rekurzív MINIMAX algoritmus (Neumann János 1928) • ismertetés: MAX szemszögéből Dr. Kovács Szilveszter ©
M.I. 2. / 7.
Az állás értéke • Az állás értéke: A teljes játékfára elvégzett minimax algoritmus eredménye. Egyértelműen megmondja, a kezdő játékos nyeri-e a játékot hibátlan lépésvezetés esetén, és ha igen, azt milyen lépések választásával teheti meg. A nyerés független az ellenérdekű játékos lépéseitől ilyenkor. Ez az algoritmus NEM épít a játékosok szerencséjére, azaz az ellenfél hibázására. • A játék teljes fája és a játék értéke csak kis egyszerű játékok (pl. TicTacToe) esetén határozható meg a gyakorlatban. • Gond: a játék állásainak száma a mélységgel (d) exponenciálisan nő, közelítőleg bd • Kombinatorikus robbanás: sok a lehetőség, illetve kis teljesítményű a fa kiértékelése. Dr. Kovács Szilveszter ©
M.I. 2. / 8.
Az aktuális állapot értékének meghatározása MINIMAX algoritmussal • Input: az aktuálisan kézben lévő pálcák száma és a lépésben következő játékos neve (MAX, vagy MIN) • az aktuális állapotból kiinduló játékfa kifejtése • érték hozzárendelése a 0 végállapotokhoz: – +1, ha MAX-nak maradt 0 (MIN húzta az utolsót) – -1, ha MIN-nek maradt 0 (MAX húzta az utolsót) – más játékban más érték-hozzárendelés is elképzelhető
• lentről felfelé haladva az egyes csomópontok értékeinek meghatározása: a közvetlenül alatta levő és hozzá kapcsolódó értékek: – Maximuma, ha a vizsgált szinten MAX következik a játékban – Minimuma, ha a vizsgált szinten MIN következik a játékban
• Output: a jelenlegi állapot értéke = a legfelső szinten levő "gyökér csomópont" értéke • Értelmezés: – ha az eredmény -1, akkor MAX csak MIN hibázása esetén nyerhet – ha az eredmény +1, akkor MAX biztosan nyerhet Dr. Kovács Szilveszter ©
M.I. 2. / 9.
Feladat – értékek felterjesztése a fán +1 -1
+1
+1
-1 -1
-1
-1
+1
-1
+1 +1
+1
-1
+1
•
érték hozzárendelése a 0 végállapotokhoz: – +1, ha MAX-nak maradt 0 (MIN húzta az utolsót) – -1, ha MIN-nek maradt 0 (MAX húzta az utolsót)
•
ha az eredmény – -1, akkor MAX csak MIN hibázása esetén nyerhet – +1, akkor MAX biztosan nyerhet Dr. Kovács Szilveszter ©
M.I. 2. / 10.
Feladat – értékek felterjesztése a fán Max
6 3
8
3
3
11
7
6
3
9
6
Min 6
Max Min
• A fenti ábra alján láthatóak a HKF (heurisztikus kiértékelő függvény) által előállított értékek a horizonton. • Határozzuk meg az aktuális állapot (gyökér) értékét az alap MiniMax algoritmussal Dr. Kovács Szilveszter ©
M.I. 2. / 11.
Kombinatorikus robbanás • A lehetséges helyzetek száma a játék szintjeinek (lépéseinek) számával hatványozottan nő (exponential explosion). • Sakk esetén a teljes játékfa játékhelyzeteinek száma 10120 nagyságrendű, azaz ha szekvenciálisan minden µsec-ben ki lehetne elemezni egy helyzetet, akkor 3 * 10106 évet kellene várni az első lépésre • A MINIMAX algoritmus összetettebb játékok fájának kielemzésére csak elvileg alkalmas, gyakorlatilag kivitelezhetetlen az elemzés
Dr. Kovács Szilveszter ©
M.I. 2. / 12.
A MiniMax algoritmus hatékonyságának növelése • Alfa-béta nyesés • Heurisztikus kiértékelő függvény (heuristic evaluation function) • Az elemzés mélységének egy adott szintre korlátozása • Iteratív mélyítés • …(bővebben a kereséseknél)
Dr. Kovács Szilveszter ©
M.I. 2. / 13.
A MiniMax algoritmus hatékonyságának növelése: Alfa-béta nyesés • a fa egyes ágainak levágása • csökkenti a számításigényt • mélyebb fa elemezhető ki, még jobb ha a játékfa rendezett • alfa: a MIN alatt nyesünk • béta: a MAX alatt nyesünk • a gyakorlatban sokszor még ez is kevés
Dr. Kovács Szilveszter ©
M.I. 2. / 14.
Alfa-béta nyesés Max Min Max
1
4
9
1
2
Min
• alfa: a MIN alatt nyesünk • béta: a MAX alatt nyesünk Dr. Kovács Szilveszter ©
M.I. 2. / 15.
Az elemzett lépések számának korlátozása egy adott számra, adott mélységre • Gyakorlati megoldás összetett játékok esetében • Gond: a játéklefolyások teljességükben ismeretlenek, a végződések nincsenek kiértékelve, nincs a MiniMax algoritmussal felterjeszthető érték • Megoldás (közelítő, nem ad feltétlenül azonos eredményt, mint a MiniMax): – az elvágással keletkezett leveleknek megfelelő állásokhoz tapasztalati nyerési esélyértékek rendelése heurisztikus kiértékelő függvények (HKF) révén Dr. Kovács Szilveszter ©
M.I. 2. / 16.
Heurisztikus kiértékelő függvény • Tapasztalati úton meghatározott függvény, mely az állás jellemzőiből számít egy, az állás jóságát megítélő értéket • A MiniMax algoritmus (és az alfa-béta nyesés) alkalmazása a HKF értékekre alapozva • A kapott játékérték (a játékfa gyökér csomópontjához rendelt érték), annyira közelíti a teljes fa esetére adódó pontos értéket, amennyire jó, kifinomult a HKF • Probléma a fa elvágása miatt: – Horizont effektus: az elvágás alatti részen bekövetkező kedvező, vagy kedvezőtlen hatások nem látszanak (pl. sakk esetén sorozatos sakkadással lemehetünk a horizont alá, és nem láthatjuk, hogy a játék a sakkot kapó számára esetleg kedvezőbb állású) Dr. Kovács Szilveszter ©
M.I. 2. / 17.
Horizont effektus
Dr. Kovács Szilveszter ©
M.I. 2. / 18.
Heurisztikus kiértékelő függvény • Pl: Amőba
X X X O X X O O O O X O
Dr. Kovács Szilveszter ©
M.I. 2. / 19.
Mesterséges intelligencia alkalmazási területek • • • • • • • • • • • • • •
logikai játékok (logical games) tételbizonyítás (theorem proving) szimbolikus számítás (symbolic algebraic computation) robotika (robotics) látás, képfeldolgozás (vision) beszédfelismerés (voice recognition) természetes nyelvek feldolgozása (natural language processing) korlátozás kielégítés (constraint satisfaction) cselekvési tervek generálása (planning) adatbányászat (data mining) mesterséges neurális hálózatok (artificial neural nets) szakértőrendszerek (expert systems) automatikus programozás (automated programming) ágensek, multi-ágensek (agents, multi-agents). Dr. Kovács Szilveszter ©
M.I. 2. / 20.
Tételbizonyítás • Matematikai tételek bizonyítása az alapaxiómákból kiindulva, pl. kijelentés (propozíciós, nulladrendű predikátum-) kalkulust, illetve elsőrendű predikátumkalkulust használó MI programokkal, a rezolúció módszerével • Rezolúció: lássuk be, hogy a tényekből, szabályállításokból és a bizonyítandó állítás negáltjából álló halmaz kielégíthetetlen, ellentmondásos. Ha sikerül, akkor a bizonyítandó állítás csak igaz lehet. • Nem csak az állítás helyességét bizonyítja, hanem megadja a megoldás menetét is • Konkrét alkalmazások: QA1, QA2, QA3 programnyelvek, a QA4 programnyelv procedúrális reprezentációt is alkalmaz Dr. Kovács Szilveszter ©
M.I. 2. / 21.
Szimbolikus számítás • Matematikai levezetések, algebrai manipulációk, deriválás, integrálás azonosságainak, trigonometrikus, logaritmikus, stb. azonosságoknak az alkalmazása szimbolikus alakban adott feladatok megoldására. • Ismertebb szimbolikus algebrai szoftverek: MACSYMA, REDUCE, CAMAL, LAM, ALTRAN, FORMAC, SYMBOL, MATHEMATICA
Dr. Kovács Szilveszter ©
M.I. 2. / 22.
Robotika Robotok érzékelő rendszereinek, beavatkozó szerveinek, tanítási lehetőségeinek, adaptív képességeinek fejlesztése tartozik ide, szoros kapcsolatban a mesterséges látással • a robot témakör azért fontos a MI számára, mert a robot rendelkezik az ágenstől is elvárt érzékelés, beavatkozás képességekkel a szenzorai, manipulátor-karjai, kezei révén. • Boilerplate, mechanikus robot, 1879 • Sprawlita – lépegető bogár-robot 6 lábbal – három testhossz/másodperc sebességgel mászik, akár akadályokon át is Dr. Kovács Szilveszter ©
M.I. 2. / 23.
•
Boadicea: Kisméretű pneumatikus mászó robot, hat lába egyenként három szabadságfokú Dr. Kovács Szilveszter ©
M.I. 2. / 24.
Autonóm jármű – – – –
A vezető ébrenlétének figyelése Automatikus útkövetés Automatikus akadályérzékelés és kikerülés Autonóm vezérlés egy úttalan vidéken Dr. Kovács Szilveszter ©
M.I. 2. / 25.
CONRO • miniatűr újrakonfigurálható robot • azonos modulokból áll, amelyeket arra lehet programozni, hogy megváltoztassák a topológiájukat a környezetben adódó olyan kihívásokhoz, mint például egy akadály • az alaptopológia egyszerű kígyó alak, de a rendszer képes újrakonfigurálni magát hogy lábakat növesszen, vagy egyéb speciális nyúlványokat • minden egyes modul tartalmaz egy CPU-t, memóriát, elemet, micro-motort és változatos szenzorokat és képességeket, köztük látást, huzalnélküli kapcsolatot és a dokkolás szenzorait Dr. Kovács Szilveszter ©
M.I. 2. / 26.
A HONDA humanoid robot • igen fejlett mozgásképességek • humanoid robotok labdarúgó világbajnoksága
Dr. Kovács Szilveszter ©
M.I. 2. / 27.
Bűvös kocka kitekerő robot • Lego robot alkatrészekből készült • maximum 40 lépésből megoldja a feladatot
Dr. Kovács Szilveszter ©
M.I. 2. / 28.
Gépi látás, képfeldolgozás Feladat: adott egy kétdimenziós bittérkép, ebből kiindulva meg kell adni a kép leírását, beleértve az alakzatok, méretek, színek, helyzetek paramétereit; a nagyon alacsony szintű vizuális adatból egy magas szintű absztrakciót kell elérni, mely megfelel a képen látható objektumoknak • A képfeldolgozás lépései: – – – – –
élek detektálása mélység meghatározása alak meghatározása az árnyékoltságból vonalak címkézése objektum beazonosítás, helyzet meghatározás
• Eredmények: – neurális hálók (pl. PERCEPTRON, Rosenblatt kísérlete; karakterfelismerő programok) – elektronikus recehártya, mely a recehártya sok funkcióját, köztük a látvány elsődleges feldolgozását is modellezi; létrehozása megkönnyíti a mesterséges neurális hálózatok bemenőjeleinek előállítását Dr. Kovács Szilveszter ©
M.I. 2. / 29.
Beszédfelismerés Cél: az emberi beszéd gép által kezelhető, szöveges formára alakítása, végső célként, a nyelvfeldolgozással egyesítve a beszélt nyelv gépi megértése céljából (Beszélő felismerés – a beszélőkre jellemző paraméterek kinyerése és azonosítása) • Kezdeti eredmények: szűk szókincs, vagy ugyanazon beszélő esetén nagyobb szókincs felismerése. • Az emberi nyelvek kb. 50 fonémát, beszédhangot különböztetnek meg. • Nehézségek: – a beszéd szavai egybefolynak – a fonémák és a szavak leírására használt betűk között nincs teljesen egyértelmű megfeleltetés Dr. Kovács Szilveszter ©
M.I. 2. / 30.
A hangjel feldolgozása Cél: az információ csökkentése és a jellemzők kiemelése • Lépések: – mintavételezés, kvantálás – jellemzők kinyerése, keretekben, azonos időintervallumokban – vektorkvantálás: a keretek jellemzővektorait a jellemzők hiperterének régióihoz rendelik
• A szavak egyértelmű felismeréséhez további statisztikai, valószínűségi adatok szükségesek • Ezeket általában betanítással adják meg • A legjobb rendszerek a szavak több mint 95%-át jól ismerik fel Dr. Kovács Szilveszter ©
M.I. 2. / 31.
Természetes nyelvek feldolgozása • Cél: az emberi nyelv (írott formájának) megértése • Természetes nyelvű interfészek – számítógépes alkalmazások kezelése szavakkal, mondatokkal – jól strukturált adatbázisokhoz, szimulációs modellekhez, szakértői rendszerekhez, helybiztosító rendszerekhez és szöveges adatbázisokhoz (Pl. Telefonon, telefonkönyv - hívás szavakkal)
• Gépi fordítás – ELIZA (Joseph Weizenbaum, MIT, 1966) • a program egy pszichológust utánoz, aki megpróbálja megérteni az ember problémáit • az ember válaszainak kulcsszavait érzékelve típusszöveget, egyszerű mintaillesztésen alapuló szövegrész-cserét alkalmaz • csak szintaktikai szinten értette a páciens válaszait
– SHRDLU (Terry Winograd, 1972) • egy mértani testekből (kockák, gúlák, stb.) álló mikrovilág, melynek elemeit egy robot az ember írásos parancsainak megfelelően manipulálhatta Dr. Kovács Szilveszter ©
M.I. 2. / 32.
Eliza – egyszerű mintaillesztés • • • • • • • • • •
Orvos: Hogyan tudnék segíteni? Páciens: Nem tudom. Orvos: Próbáljon mondani róla valamit! Páciens: Nem tudok. Orvos: Ki tudná ezt fejteni részletesebben? Páciens: Beteg vagyok és fáradt. Orvos: Van elképzelése, hogy miért? Páciens: Igen, öreg vagyok. Orvos: Folytassa, kérem! Páciens: Úgy érzem, elvesztettem minden érdeklődésemet. • Orvos: Mondjon többet ezekről az érzésekről! • Páciens: Van arról is elképzelésem, miért érzek így. • Orvos: Biztosan van. Dr. Kovács Szilveszter ©
M.I. 2. / 33.
SHRDLU – erősen korlátozott „kocka mikrovilág” • Ember: "Keress egy hasábot, amelyik magasabb, mint az, amelyiket a dobozba raktál!" • Robot: "Rendben." • Ember: "Megérintettél egy gúlát, mielőtt a zöld hasábot a kis kockára tetted ?" • Robot: "Igen, a piros színűt."
Dr. Kovács Szilveszter ©
M.I. 2. / 34.
Természetes nyelvek feldolgozása Loebner - díj • Hugh Loebner 1990-ben 100 000 $-os díjat és egy arany medált tűzött ki annak a nyertesnek, akinek a beszélgető-programja elsőként teljesíti a Turing tesztet. • Egy 2 000 $-os kisebb díjat és egy bronz medált minden évben elnyer az a program, amely a legszínvonalasabb párbeszédet folytatja emberrel. • chat-robot Magyarnyelvű fordítóprogram fejlesztése: • Morphologic (ők írták az MS Windows magyar nyelvi elemzőjét is) Dr. Kovács Szilveszter ©
M.I. 2. / 35.
Egy mondat értelmezésének 4 szintje • Szintaktikai (formailag) • Szemantikai (tartalmilag) • Pragmatikus (valóságosan) • Intencionális (szándékoltan) pl. • Éva: Tudod, hogy Viktor ugyanúgy dohányzott, mint te? • Imre: Nem. Miért, mi van vele? • Éva: Tüdőrák. Feldobta a bocskorát. • Imre: Szomorúan hallom.
Dr. Kovács Szilveszter ©
M.I. 2. / 36.
"Feldobta a bocskorát" • Szintaktikailag (formailag) egy múlt idejű állítmány és egy tárgy • Szemantikailag (tartalmilag): felhajította a lábbelijét • Pragmatikusan (valóságosan): meghalt • Intencionálisan (szándékoltan): célja a szövegkörnyezettel együtt Imre figyelmét felhívni, hogy ne dohányozzon annyit
Dr. Kovács Szilveszter ©
M.I. 2. / 37.
A gépi fordítás értékelése • A fordítás minősége szerint: – tájékozódó fordítás (information acquisition) – tényszerű közlésekre vonatkozó fordítás (denotative translation) – igényes fordítás (connotative translations).
• Az automatizáltság szintje szerint: – teljesen automatikus (fully automatic machine translation) – emberi segítséggel készülő (human assisted machine translation) – gépi segítséggel készülő (machine assisted human translation)
Dr. Kovács Szilveszter ©
M.I. 2. / 38.
Korlátozás kielégítés A korlátozás kielégítési feladat a benne szereplő változók értékeit korlátozza. A korlátok megadhatók az értékek felsorolásával, explicit módon, vagy egy kifejezéssel, implicit módon. A változók által felvehető értékek száma véges. • Megoldás: a változók olyan értékhalmazát keressük, melyek kielégítik az összes korlátozást • Jellegzetes feladat Pl: a 8 vezér probléma: úgy helyezzünk el a sakktáblán 8 vezért, hogy ne üssék egymást. • Megoldó módszer pl. a lehetőségtér állapotait tartalmazó fagráf „mélységben először” technikával történő bejárása • A megoldáskeresés gyorsítható a korlátozás propagáló, azaz a korlátokon kívül eső, megoldást biztosan nem adó pontok kizárásával
Dr. Kovács Szilveszter ©
M.I. 2. / 39.
Cselekvési tervek generálása Hatékony célirányos tevékenységsorozat generálása valamilyen feladat megoldására • A problémától független vagy alkalmazás-specifikus módszerek közül választhatunk • Megoldási módszerek: – Keresés - nehezíti a nagy elágazási tényező, s a talált megoldások a cselekvések egyszerű szekvenciái lehetnek csak – Szituációkalkulus - nehezen irányítható és könnyen adódnak nem megfelelő lépések is (a szituációkalkulus az elsőrendű logika módszerét alkalmazza a világ egy adott állapotára, azaz egy szituációra)
• A cselekvési terv a két módszer együttes alkalmazásával áll elő, a finomító tervezési szakasz előre/hátra láncoló technikájánál a keresés jut szerephez. • Egy olyan cselekvés együttes jön létre, amely végrehajtható és a világot a megadott korlátokat kielégítő új állapotba viszi Dr. Kovács Szilveszter ©
M.I. 2. / 40.
Adatbányászat Rejtett összefüggések, mintázatok után kutat nagy adathalmazokban (nemcsak új reprezentáció). Pl., segíti a szolgáltató vállalatoknak megtalálni az azonos érdeklődésű vevőket Alkalmazott módszerek: • Felügyelt – – – – –
Regressziós technikák Legközelebbi szomszéd módszere Mesterséges neurális hálózatok Következtető (indukciós) szabályok Döntési fák
• Felügyelet nélküli – Klaszterezés – Önszervező neurális hálózatok Dr. Kovács Szilveszter ©
M.I. 2. / 41.
Mesterséges neurális hálózatok • Az emberi agy neuronjainak (mint építőelemnek) modellezése • Erős párhuzamos működés Képességek:
Alkalmazási példák:
• • •
mintafelismerés általánosítás trendek megjóslása
• •
viselkedés, kimenetel kiértékelés
• • • • • • •
nem pontos adatok elfogadása szűrés gyors működés szövevényes viszonylatok felfogása optimalizáló képesség hatalmas adatmennyiség elemzése extrapolálás
tengeralattjárók felismerése (sonar) a valós állapot felbecsülése döntés részvényvásárlásról, vagy eladásról a műtét kimenetelének megjóslása kölcsönigények elfogadása, elutasítás optikai karakterfelismerés videojelek zavarmentesítése robotkar vezérlése gyógyászati "szakértő rendszer" repülőjáratok ütemezése biztosítási igények összevetése termelési problémák diagnózisa
Dr. Kovács Szilveszter ©
M.I. 2. / 42.
Szakértő rendszer Problémaspecifikus ismeret megértésére képes, és intelligensen használja a tématerület ismeretanyagát egy tevékenység különböző megvalósítási útjainak felvetéséhez • Nemcsak az ismeretátadás technikáit alkalmazzák, hanem analitikus, elemző eszközöket is az ismeret kiértékelésére, valamint tanulási technikákat Példák olyan területekre, ahol szakértő rendszert alkalmaznak: • Repülés: repülőgépmotor-diagnosztika: helikopter javítás, Pl.: NAVEX, • Mezőgazdaság: Almáskertek gondozása (POMME), • Kémia: Kémiai reakciók tervezése (SYNCHEM), • Szerkezetértelmezés (DENDRAL), • Számítógépek és kommunikáció: VMS dump fájlok elemzése rendszerkiakadás után (CDX), • Oktatás: Tervezők oktatása konstrukciós tervezés ellenőrzésére (DECGUIDE), • Vállalatvezetés: Üzlet hatékonyságelemzése (GURU), • Egészségügy: Fertőző betegségek diagnózisa (MYCIN), • Mérnöki technika, gépészet: Motoralkatrészek tervezése, stb. Dr. Kovács Szilveszter ©
M.I. 2. / 43.
Automatikus programozás Cél: a szoftverkészítés munkájának automatizálása, olyan eszközök létrehozásával, melyeknél elegendő a megoldandó feladatot specifikálni, a megoldás algoritmusa és programja automatikusan készül el • A szoftver specifikációja kisebb és könnyebben megadható, mint maga a program lenne valamilyen programnyelven
Dr. Kovács Szilveszter ©
M.I. 2. / 44.
Automatikus program-előállítás genetikus algoritmussal • Véletlenszerűen generált ezernyi ősprogram halmazából indulva, a programok populációja folyamatosan javulva fejlődik sok generáción át. • Az evolúciós keresés a legrátermettebb és természetesen felbukkanó mintázatokkal rendelkező műveletek túlélésének darwini elméletét alkalmazza, köztük a keresztezést (rekombinációt), a mutációt, génduplikációt, géntörlést, valamint bizonyos fajtáit a fejlődési folyamatnak amelyek által az embriók kifejlett organizmusokká váltak.
Dr. Kovács Szilveszter ©
M.I. 2. / 45.
Ajánlott irodalom • Jelen előadás fóliái részben az alábbi források alapján készültek: Dr. Dudás László: Mesterséges Intelligencia Módszerek, Miskolci Egyetem, Alkalmazott Informatikai Tanszék, http://www.ait.iit.uni-miskolc.hu/~dudas/MIEAok Stuart J. Russel – Peter Norvig: Mesterséges Intelligencia modern megközelítésben, PanemPrentice-Hall, Budapest, 2000, ISBN 963 545 241 1 Dr. Kovács Szilveszter ©
M.I. 2. / 46.