431
GÁBOR DÉNES FŐISKOLA INFORMATIKAI INTÉZET MESTERSÉGES INTELLIGENCIA 1. EL Ő ADÁS (előadásvázlat) DR. CSERNY LÁSZLÓ főiskolai tanár BUDAPEST, 2018/2019-2

Mesterséges intelligencia

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Mesterséges intelligencia

GÁBOR DÉNES FŐISKOLA

INFORMATIKAI INTÉZET

MESTERSÉGES INTELLIGENCIA

1. ELŐADÁS(előadásvázlat)

DR. CSERNY LÁSZLÓ főiskolai tanár

BUDAPEST, 2018/2019-2

Page 2: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 2/29

MESTERSÉGES INTELLIGENCIA (13x(2/1/0)/v/4)

(6/3/0/v/4)

Tantárgyfelelős: Dr. Cserny László főiskolai tanár, fszt. 35 sz.

Előadó/gyak.vezető: Dr. Cserny László főiskolai tanár, fszt. 35. sz. ([email protected])

Fogadóóra: előadás után, vagy megbeszélés szerint.

A tárgy követelményrendszere: vizsga (ZH-k összesített eredménye alapján megajánlott jegy)

1. ZH.: 2019. március 27.(7. ea.)2. ZH.: 2019. május 15. vagy 22.

értékelés: 0-40% elégtelen(1), 41-53% elégséges(2), 54-67% közepes(3), 68-80% jó(4), 81-100% jeles(5).

Page 3: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 3/29

Fogl.Idő-

tartamTematika Tananyag

Tanulásra ford. idő

Zárt-helyi

1. 3Bevezetés, a mest. int. története, alapvetődefiníciók

1. 3

2. 3Feladatreprezentáció. Nem-informált keresőeljárások

2. 3

3. 3 Informált, heurisztikus kereső eljárások 3. 3

4. 3 Tudásreprezentáció, logikai megjelenítés 4. 3

5. 3Tud. reprezentáció, elsőrendű logikai megje-lenítés

5. 3

6. 3 Tud.repr., logikai programozás; 1. ZH. 6. 8 1. ZH

7. 3 Tud.repr. (szabály-, keret-, eset-alapú) 6. 3

8. 3 Bizonytalanságkezelés, valószínűségi alapon 7. 3

9. 3Bizonytalanságkezelés, bizonyossági ténye-ző, fuzzy-alapú megközelítés

8. 3

10. 3 Gépi tanulás, neurális hálók 9. 3

11. 3 Gépi tanulás, neurális hálók 2. 10. 3

12. 3Tudásalapú rendszerek (szakértői, döntéstá-mogató, … rsz-ek)

11. 3

13. 3 Tudásalapú rendszerek kialakítása. 2. ZH 12. 9 2. ZH

vizsgaKülön alkalom

Page 4: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 4/29

Irodalom: Cserny L.: Mesterséges intelligencia, GDF, Bp., 2018/2019-2 (ea.vázlat) Russel, S.J.-Norvig, P.: Mesterséges intelligencia, Panem, Bp., 2005 (2.kia-

dás)

https://mialmanach.mit.bme.hu/ Mesterséges Intelligencia Almanach, BME, 2012 Borgulya I.: Szakértői rendszerek, technikák és alkalmazások, ComputerBooks, Bp.,

1995 Csenki, A.: Prolog techniques, Bookboon.com, 2009 (free e-book) Futó I.(szerk.): Mesterséges intelligencia, Aula, Bp., 1999 Horváth G. (szerk.): Neurális hálózatok és műszaki alkalmazásai, Műegyetemi Kiadó,

Bp., 1998 Sántáné-Tóth E.: Tudásalapú technológia, szakértő rendszerek, ME DFK, Dunaúj-

város, 1998 (2. kiad.) Szalay T.: A mesterséges intelligencia alapjai, GDF, Bp., 2002 (jegyzet) Volná, E.: Introduction to soft-computing, Bookboon.com, 2013 (free e-book)

Page 5: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 5/29

TÉMAKÖRÖK

Bevezetés

1. Mesterséges intelligencia (MI) fogalma, előzmények. • mi a mesterséges intelligencia? MI értelmezése;

• ágensek és azok jellemzői;

• MI előzményei és jövője 2. Alapproblémák, a problémamegoldás feltételei (feladat

megjelenítés, állapottér 3. Keresési eljárások (informált, nem-informált keresések)

4. Tudásreprezentációs módszerek, következtetés

5. Bizonytalanságkezelés (valószínűségi, fuzzy rsz.) 6. Gépi tanulás módjai (statisztikus, neurális hálók, stb.)

7. Intelligens rendszerek (tudásalapú rendszerek, robotok)

Page 6: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 6/29

BEVEZETÉS

A számítástechnikai eszközök, intelligens rendszerek fejlődése

0 1000 2000

Számoló-táblák

Neumann elvű digitális

számítógépek

Elektro-mechanikus ésanalóg gépek

Mechanikusszámológépek

LogikaMate-

matikaimodellek

Kiber-netika

Mesterséges intelligencia

19461600-350 1900

1956

Mechanikusgépek

Intelligensrendszerek

(1. ábra*) * Seebauer M.: Intelligens rendszerek ea., DF, 2009

Page 7: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 7/29

A számítástechnikai eszközök, intelligens rendszerek fejlődése

(2. ábra*) * Seebauer M.: Intelligens rendszerek ea., DF, 2009

Kezdeti lelkesedés

2000

Nagygépes rendszerek Mobil

kommunikáció

Lokálishálózatok

és Internet

Személyi számító-

gépek

KudarcokMikro-

rendszerek

1946

1956

Ipari alkalma-

zások

1980 199019701960

Mate- matikai

modellek

Intelligenságensek

Beágyazott

rendszerek

Page 8: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 8/29

1. MESTERSÉGES INTELLIGENCIA FOGALMA, ELŐZMÉNYEK

1.1. Fogalmak értelmezése

Az intelligencia lényege:

"Intelligentia" (latin): megismerés, megértés, felfogó képesség.

"Az értelmi működés fokmérője. Elsősorban mint az egyénnek új körülmé-nyekhez való alkalmazkodó képessége mutatkozik meg, amely szorosan összefügg az előzőleg szerzett tapasztalati anyag alkalmazásával, a helyzet mozzanatainak széleskörű figyelembe vételével és a gondolkodóképességgel.” (Új Magyar Lexikon)

"The ability to learn/understand/to deal with new or trying situation." (Webster's Dictionary)

"Alkalmazkodó válaszadási képesség új szituációkban.” (Cambridge Enciklo-pédia)

Page 9: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 9/29

Emberi alkalmazkodó képesség, problémamegoldás jellemzői:

- hatékony megoldó képesség bonyolult helyzetekben, - bizonytalan helyzetek (adatok, következtetések) kezelése, - kivételek felismerése, kezelése, - tanulóképesség (alkalmazkodás, ismeretbővítés, megoldó készség növelése), - kommunikációs képesség = magyarázat és

= indoklás adás;

→ intelligens "rendszer"-ként viselkedik. "Egy rendszer intelligensen viselkedik, ha a rendelkezésre álló ismeretek alap-ján a lehető legjobb döntést hozza egy adott cél elérése érdekében." (S. Russel) Intelligens rendszer: olyan számítógépes rendszer, amelyet intelligensnek neve-zünk; azaz, hasonlít az emberre "gondolkodásában" és "cselekvésében".

→ mesterséges intelligencia (MI)

[AI - Artificial Intelligence - J. McCarthy,1956, Dartmouth]

Page 10: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 10/29

Mesterséges intelligencia célja:

• emberi tevékenységek intelligens rendszer /számítógép/ által való támogatá-sa: így,

- újszerű és hatékony problémamegoldási formák megtalálása,

- folyamatos, monoton munkavégzés kiváltása,

- veszélyes, vagy ember számára elérhetetlen helyeken történő feladatmeg-oldás,

- fogyatékosok életminőségének javítása.

• emberi intelligencia mibenléte, annak jobb megértése

- olyan eszközök készítése, melyek 'gondolkodásban', 'cselekvésben' legjob-ban hasonlítanak az emberre.

Kérdés: milyen rendszer az, amely hasonlít az emberre "gondolkodásban" és "cselekvésben"?

→ racionálisan cselekvő rendszer (ágens [agent])

Page 11: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 11/29

Emberhez hasonló módon Racionálisan

Gondol-kodó

(A) Kognitív (megismerő) modelle-zés

“Az emberi gondolkodással asz-szociálható olyan aktivitások [au-tomatizálása], mint pl. a döntés-hozatal, a problémamegoldás, a tanulás,”(Bellman, 1978)

(C) Gondolkodási (logikai) törvé-nyek

“Az észlelést, a következtetést és a cselekvést biztosító számí-tási mechanizmusok tanulmá-nyozása.” (Winston, 1992)

Cselek-vő

(B)Turing-teszt “Annak tanulmányozása, hogy ho-gyan lehet a számítógépekkel olyan dolgokat művelni, amiben pillanatnyilag az emberek a job-bak.” (Rich and Knight, 1991)

(D) Optimális cselekvés adott cél érdekében, a rendelkezésre álló ismeretekre építve

“A számítógépes tudományok egy ága, amely az intelligens vi-selkedés automatizálásával fog-lalkozik.” (Luger and Stubble-field, 1993)

Page 12: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 12/29

A.) Emberhez hasonló módon gondolkodó rendszer “Az emberi gondolkodással asszociálható olyan aktivitások [automatizálása], mint pl. a döntéshozatal, a problémamegoldás, a tanulás,...”(Bellman, 1978) Vizsgálandó: - az emberi gondolkodás vizsgálata, megértése → kognitív pszichológia - az agy belső működésének vizsgálata, megértése, - a gondolkodás folyamatának leírása (programozása), Fizikai megvalósítás: - számítógépes programok, - genetikus algoritmusok, - neurális hálózatok. MI célja: működő rendszer kialakítása

→ kognitív tudomány - cognitiv science (MI + pszichológia együttese)

Page 13: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 13/29

A teszt teljesíthetőségének feltételei: - természetes nyelv megértése, - megfelelő tudásreprezentáció, - következtető képesség, - tanulóképesség,

- mesterséges látás/képfeldolgozás, - tárgymozgatási képesség.

B.) Emberhez hasonló módon cselekvő rendszer “Annak tanulmányozása, hogy hogyan lehet a számítógépekkel olyan dolgokat művelni, amiben pillanatnyilag az emberek a jobbak.” (Rich and Knight, 1991) Kérdés: mikor gondolkodik/viselkedik intelligensen egy gép? Javaslat: Turing-teszt (működési teszt az intelligens viselkedésre). A számítógép intelligensnek tekinthető, amennyiben egy terminálon keresztül kérdező nem tudja eldönteni, hogy vele szemben ember, vagy számítógép áll. (Alan Turing, 1950)

Page 14: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 14/29

C.) Racionálisan gondolkodó rendszer “Az észlelést, a következtetést és a cselekvést biztosító számítási mechaniz-musok tanulmányozása.” (Winston, 1992) A helyes gondolkodás kutatása, tudománya: a logika Kiinduló pont: Arisztotelész szillogizmusa → természetes kö-

vetkeztetés

→ helyes előfeltételekből mindig helyes következményre jutunk: például: 'minden ember halandó'

'Szokratész ember' "Modus ponens" következtetési ⇒ 'Szokratész halandó' szabály

Formális/szimbolikus logika kialakulása (G.W.Leibniz, G.Frege, G.Boole) Probléma: – nem minden intelligens viselkedés írható le a logikai következtetés

eszközeivel.

Page 15: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 15/29

D.) Racionálisan cselekvő rendszer “A számítógépes tudományok egy ága, amely az intelligens viselkedés automa-tizálásával foglalkozik.” (Luger and Stubblefield, 1993) Az MI célterülete: intelligens rendszerek létrehozása. Az intelligencia mértéke a racionalitás (ideális, nem emberi):

=> adott helyzetben a legjobb cselekvést választani és végrehajtani. MI (absztrakt) vizsgálati eszköze: Az ágens [agent] olyan rendszer, amely ér-zékeli a környezetét és cselekszik. Az ágens fő alkotó részei: architektúra (hardware) + program (akciókat indít)

Page 16: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 16/29

1.2. Ágensek MI tanulmányozásának mesterséges eszköze: → ágens = architektúra+program

Jellemzői: - környezetét érzékeli és reagál rá (beavatkozik, módosít → ágens függvény),

az ágens csak környezetével együtt értelmezhető!

környezet jellemzői: = megfigyelhető (teljesen, részlegesen), = viselkedése (determinisztikus, sztochasztikus), = cselekvés/reakció (egyedi [epizódszerű], sorozatos), = időbeli változása (statikus, dinamikus), = diszkrét, folytonos állapotváltozású, = résztvevők/ágensek száma: egy, vagy több ágens

- racionális: = célja, környezeti információi vannak, = célja és információi alapján a legjobb cselekvést

választja.

Ágensnek tekinthető minden, ami az ágens definiciójának megfelel!

Page 17: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 17/29

típusai: - egyszerű, reflex ágens; csak re-agál

= feltétel teljesül → cselekszik (ha ..., akkor ... szabályok)

= betanított válaszok;

- belső állapotú reflex ágens; re-

agálása függ a belső állapotától = különböző környezeti hely-

zetek felismerése, = időben változó világ;

Page 18: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 18/29

- célirányos ágens; kívánt állapot elérése

= környezettől függő tervezés, = rugalmasság, hatékonyság;

- haszonelvű ágens; célállapot vá-

lasztása ennek alapján = célállapot hasznosságának

vizsgálata, = célállapotok hasznosságá-

nak összehasonlítása, a legkedvezőbb kiválasztása.

- tanuló ágens; belső állapotát mó-

dosítja a választott cél megfele-lősége alapján

Page 19: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 19/29

MI absztrakt megközelítése tehát: fizikai eszközön (ágensen) megvalósított "meg-alapozott szimbólumrendszer"

- fizikai eszköz: áramkörök/számítógép/, mesterséges neuronok /neurális hálózatok/, stb.; = szimbólum: fizikai minta, jelek összessége, a környezeti objektumok fi-

zikai leképzése; = megalapozott szimbólum: megfeleltethető a környezet valamely objek-

tumának; - szimbólum struktúrák /környezet leképzése/ + eljárások.

MI alkalmazások alapproblémái:

- tudásábrázolás (reprezentálás) és következtetés,

- keresés (megoldás/ismeret),

- cselekvéstervezés, - tanulás/tanítás/magyarázat,

- elosztott intelligencia,

- alkalmazási területek: = beszéd, nyelvfeldolgozás, = jel- és képfeldolgozás (analízis/szintézis)

Page 20: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 20/29

MI feladatok jellemzői:

- nehezek (az ember számára is); - nem rendelkeznek minden részletében tisztázott megoldó eljárással; - a megoldás elemi lépések, műveletek sorozataként állítható elő, amely

= előre nem meghatározott és = több lehetséges sorozat közül kell kiválasztani;

- megoldás meghatározása: kereséssel = szisztematikus próbálkozással választjuk ki a következő „lépést”;

- a feladat állapottere 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;

- emberi szakértelem, gyakorlati tapasztalat, heurisztikus ismeretek szüksége-sek = keresés korlátozása, = heurisztikával vezérelt keresés - az MI feladatok legjellemzőbb tulajdon-

sága; - kielégítő ('satisficing') megoldás elfogadása, - ma még általában az ember a jobb.

Page 21: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 21/29

1.3. Előzmények MI fejlődéséhez hozzájáruló tudományterületek: Filozófia (i.e. 5. sz. – napjainkig)

Matematika (i.e. 800 – napjainkig) – Algoritmusok – Logika (Arisztotelész) Organon - Logikával kapcso-

latos munkásságát (6 kötet) összefoglaló művek elneve-zése.

– Boole-algebra (G. Boole) - matematikai formális logi-ka algebrája

– Gráf-elmélet – Döntéselmélet – Bizonytalanságelmélet

Orvostudomány, pszichológia (1879 - napjainkig) – Kognitiv pszichológia – Neurológia (C. Golgi) - az emberi idegsejt (neuron) ki-

mutatása

Page 22: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 22/29

Számítógéptudomány (1940 - napjainkig) – Difference Engine (Ch. Babbage) terve,

19. sz közepe, de 1991-ben építették meg.

– Colossus (A. Turing) megépítése

(1943) – ENIAC programozható elektronikus

számítógép (J.Mauchly- J.Eckert) 1943 – Tárolt program elve (1945- Neumann János) - 'First Draft of a

Report of EDVAC' Nyelvészet (1957 – napjainkig)

– Természetes nyelvek – Számítógépes nyelvészet

= 1957 - Syntactic Structures (Noam Chomsky)

Page 23: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 23/29

20. század közepétől napjainkig (fontosabb események, eredmények) 1943 Warren McCulloch és Walter Pitts: Mesterséges neuron modellje (per-

ceptron) 1949 Donald Hebb: Mesterséges neurális háló tanítási modellje 1950 Claude Shannon: Sakkprogram Neumann-típusú számítógépre 1951 Marvin Minsky és Dean Edmonds: SNARC az első neurális számítógép 1952 Arthur Samuel: Dámajáték programok – öntanuló technika kifejlesztése

(1956 februárjában bemutatták a TV-ben) 1953 Alan Turing: Sakkprogram Neumann-típusú számítógépre 1956 Dartmouth College Conference

Russell - Whitehead: Principia Mathematica – az automatikus tételbizonyí-tás elméleti alapjai A. Newell - H. Simon: Logic Theorist – „nemnumerikusan gondolkodó” program John McCarthy: Mesterséges intelligencia (AI-Artificial Intelligence) elne-vezés

1957 Newell - Simon: GPS – általános problémamegoldó program (A nyitott világ, állapottér problémája kombinatorikus robbanáshoz vezet!)

Page 24: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 24/29

Allen Newell és Herbert Simon 1957-ben hozta létre azt a számítógépes programot, amelyet általános tétel bizonyításra és sakkozásra kívántak alkalmazni. Bár sikeresen megoldotta a Hanoi tor- nyok jól forma-

lizálható feladatát, semmilyen valóságos probléma, feladat megoldásával sem sike-rült megbírkóznia.

- 1958 John McCarthy: LISP (List Processing) az MI egyik magasszintű prog-

ramnyelve Friedberg: Genetikus algoritmusok

1959 Herbert Gelernter: Geometriai tételbizonyító program 1963 Marvin Minsky: Microworld

Terry Winograd: SHRDLU természetes nyelvfeldolgozó program (1972) 1965 Joseph Weizenbaum: Eliza társalkodó program 1966 Orosz-angol fordítóprogram kudarca. Shakespeare: Hamlet-jéből

eredeti: „The spirit is willing but the flesh is weak“ „A szellem készséges, de a test gyenge”

oroszból fordított: „The vodka is good but the meat is rotten“ „Jó a vodka, de romlott a hús”

Page 25: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 25/29

1969 Bryson, A.E.jr. és Ho, Y-C: Neurális hálózatok 'backpropagation' tanulási algoritmusa

1969 Minsky, M.L.-Papert, S.: Perceptrons; visszaveti a neurális hálók kutatását 1969 A. Colmerauer: PROLOG (PROgramming in LOGic) első verziója - "Mar-

seille Prolog" 1969 B. Buchanan, E. Feigenbaum, J. Lederberg: DENDRAL – kémiai szakértői

rendszer, az első szabályalapú rendszer 1971 Feigenbaum, Buchanan, Shrotliffe: MYCIN – vérrel kapcsolatos fertőzése-

ket diagnosztizáló szakértő rendszer; certainty factor – bizonyossági té-nyező bevezetése

1973 William Woods: LUNAR – Információ lekérdezése az Apollo holdexpedíció kőzetmintáiról természetes nyelven

1975 Minsky, M.L. – a keret (frame)-alapú ismeret reprezentáció ötlete 1979 Duda: PROSPECTOR – molibdén kutatási szakértői rendszer 1981 Japán 5. generációs számítógép projektje a PROLOG logikai programo-

zási nyelvre alapozva 1982 McDermott: R1 (/XCON) – DEC számítógépkonfiguráló szakértői rendsze-

re 1986-ra évi 40 millió dollár megtakarítást hozott a DEC-nek

Page 26: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 26/29

MI új lendülete a tudománnyá válással napjainkig: 1980-as évek: Neurális hálók újra felfedezése; adatbányászati módszerek alkal-

mazása. 1985 P. Cheeseman - valószínűségi következtetés, -hálók továbbfejlesztése.

Beszédfelismerés javítása a rejtett Markov-modellek használatával. 1987 Laird, J.E.-Newell, A.-Rosenbloom,P.S.: SOAR; környezetbe ágyazott in-

telligens ágensek vizsgálata 1995 P.R.Cohen - szükséges az eredmények tudományos igazolása kisérletek-

kel és azok statisztikai kiértékelésével. 1997 IBM Deep Blue számítógépe és programja megverte az akkor már 12 éve

veretlen Garri Kaszparov sakk világbajnokot. A kombinatorikus "robbanás" sikeres kezelése.

1991 - 2000 Katonai logisztikai rendszer (Öböl-háború DART rendszere); ön-vezető járműirányító (CMU NavLab) rendszer; űreszközt irányító autonóm tervkészítő (NASA Remote Agent) rendszer; nyelvmegértő, keresztrejt-vényfejtő (PROVERB) rendszer.

2014 A Turing-teszt első sikeresnek mondható teljesítése 33%-os szinten (Eugene Goostman programrendszerrel)

Page 27: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 27/29

2016 Google Deepmind AphaGo programja 2015-ben legyőzi az európai gó-bajnokot, majd 2016-ban a dél-koreai gó világbajnokot is.

2017 CMU Libratus mesterséges intelligencia rendszere húsz napnyi játék (ön-tanulás) után győzött négy top pókerjátékos ellen egy Pittsburgh-i kaszi-nóban.

Page 28: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 28/29

MI fejlődésének legfontosabb szakaszai:

- általános problémamegoldó program (GPS - General Problem Solver; A.Newell & H. Simon, 1957);

- logikai programozási nyelvek (LISP,1958; PROLOG,1969; PLANNER); - tudásalapú (KB - Knowledge Based) rendszerek:

= tudásreprezentációs technikák (logikai, szabály-alapú, keret-alapú), = szakértői rendszerek (ES - Expert Systems; tudásmérnök, szakterületi

szakértő) → fejlesztő keretrendszerek; - 5. generációs (logikai programozási elvre épülő) japán számítógép-projekt,

1981; - neurális hálók (6. generációs gépek?) újra "felfedezése" ('80-as évek eleje); - valós környezetbe ágyazott rendszerek (ágensek) koncepciójának kialakulá-

sa a '90-es évek elején → közvetlen kapcsolódás az irányítástechnika, a döntéselmélet, a gazdaság területéhez;

- intelligens rendszerek minden területen (ipar, gazdaság, háztartás, stb.): = autonóm eszközök, szabályozástechnikai megoldások, = diagnosztizáló szakértői rendszerek, = intelligens robotok, = nyelvi problémák, feladatok megoldása, stb.

Page 29: Mesterséges intelligencia

GÁBOR DÉNES FŐISKOLA

INFORMATIKAI INTÉZET

MESTERSÉGES INTELLIGENCIA

2. ELŐADÁS (előadásvázlat)

DR. CSERNY LÁSZLÓ főiskolai tanár

BUDAPEST, 2018/2019-2

Page 30: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 3/48

Irodalom: Cserny L.: Mesterséges intelligencia, GDF, Bp., 2018/2019-2 (ea.vázlat) Russel, S.J.-Norvig, P.: Mesterséges intelligencia, Panem, Bp., 2005 (2.kia-

dás)

https://mialmanach.mit.bme.hu/ Mesterséges Intelligencia Almanach, BME, 2012 Borgulya I.: Szakértői rendszerek, technikák és alkalmazások, ComputerBooks, Bp.,

1995 Csenki, A.: Prolog techniques, Bookboon.com, 2009 (free e-book) Futó I.(szerk.): Mesterséges intelligencia, Aula, Bp., 1999 Horváth G. (szerk.): Neurális hálózatok és műszaki alkalmazásai, Műegyetemi Kiadó,

Bp., 1998 Sántáné-Tóth E.: Tudásalapú technológia, szakértő rendszerek, ME DFK, Dunaúj-

város, 1998 (2. kiad.) Szalay T.: A mesterséges intelligencia alapjai, GDF, Bp., 2002 (jegyzet) Volná, E.: Introduction to soft-computing, Bookboon.com, 2013 (free e-book)

Page 31: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 4/48

TÉMAKÖRÖK

Bevezetés

1. Mesterséges intelligencia fogalma, előzmények. 2. Feladatmegjelenítés, -megoldás

3. Keresési eljárások (nem-informált, informált keresések)

3.1. Általános keresési algoritmus 3.2. Nem-informált keresési eljárások

3.3. Informált keresési eljárások 3.4. Iteratív javító algoritmusok

3.5. Összegzés

4. Tudásreprezentációs módszerek, következtetés 5. Bizonytalanságkezelés (valószínűségi, fuzzy rsz.)

6. Gépi tanulás módjai (statisztikus, neurális hálók, stb.)

7. Intelligens rendszerek (tudásalapú rendszerek, robotok)

Page 32: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 5/48

2. FELADATMEGJELENÍTÉS, -MEGOLDÁS

2.1. Alapfogalmak értelmezése

Cél: probléma megoldása mesterséges intelligencia felhasználásával Eszköz: intelligens ágens/rendszer, amely = céllal rendelkező,

= racionális (optimalizáló), = tanuló rendszer.

Kérdéses:

- mit kell ismerni egy feladat megoldásához?→ állapottér;

- hogyan kell az ismereteket reprezentálni? → ismeretbázis; - hogyan kell a megoldást megtalálni? → keresési eljárások,

→ vezérlési stratégiák,

→ következtetési eljárások; - melyik a legjobb eljárás? → hatékonyság mérése.

Page 33: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 6/48

A megoldás megkeresése: lépések (állapotátmenetek) egymásutánisága a le-hetséges állapotok összességén a kezdőállapottól a célállapot (a megoldás) elé-réséig. Feladat/probléma megfogalmazása Az ágens csak környezetével együtt értelmezhető!

probléma megoldás

eredmény reprezentációs modell

környezet

ágens

való világ

mesterséges (virtuális) világ

megoldás keresése,

kidolgozása

számítások

reprezentálás

értelmezés

Page 34: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 7/48

Milyen legyen a feladat 'jó' reprezentációja?

= tartalmazza mindazon ismereteket, amelyek szükségesek a megoldás előál-lításához (modellezés: → lényegi elemek, kapcsolatok),

= lehető legkifejezőbb legyen, legjobban illeszkedjen a problémához (elegen-dően zárt, valósághű, karbantartható legyen),

= hatékony számítási módszer alkalmazását tegye lehetővé: - legyen alkalmas a kívánt jellemzők meghatározására, - a pontosság ↔ a számítási idő-/memóriaigény egyensúlya kialakítható le-

gyen; = előállítható legyen korábbi adatok, tapasztalatok, ismeretek alapján; = a hiányos adatok, megfogalmazás ellenére a gép ne adjon a 'józan ész' sze-

rinti következtetésnek ellentmondó megoldást. Probléma egyszerűsítése:

= redukció → egyszerűbb feladathoz jutunk, = dekompozíció → részfeladatokra bontjuk az eredetit.

Page 35: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 8/48

Feladat/probléma reprezentációja = állapottér, állapotgráf segítségével, = tudásbázis létrehozásával (→ később tárgyaljuk).

Meghatározandó összetevők:

= állapotátmenetek függvénye/cselekvések halmaza,

→ a lehetséges állapotok összessége → állapottér, = a kiinduló helyzet/állapot,

= elérendő célállapot → célteszt módja

= állapotátmenet költsége, = kényszerek összessége.

A lehetséges állapotokat és a közöttük lévő lehetséges átmeneteket egy irányított gráfon ábrázolhatjuk → reprezentációs gráf. A megoldás keresésekor bejárható utakat tartalmazó gráfot, amely része a repre-zentációs gráfnak, → keresőgráfnak nevezzük;

Page 36: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 9/48

A keresőgráf

- jellemzői: = max. elágazási tényező (b), = mélység (d); a legkisebb költségű megoldás mélysége,

= az állapottérben található utak max. hossza (m).

= állapotátmenet (úthossz) költsége;

- egy-egy csomópontból továbblépés → kiterjesztés → lista (gyerek csomópontok)

Bonyolultabb feladatoknál célszerű az összes bejárási útvonalat feltüntetni külön-külön, ami egy fa-gráfot alkot → reprezentációs fa, kereső fa. Az intelligencia biztos jele: hogyan használjuk tudásunkat a keresési problémák egyszerűsítésére.

Page 37: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 10/48

Feladat/probléma megoldása

= kereséssel (állapottérben, állapotgráfon), = következtetéssel (+ kereséssel).

A megoldások, eredmények minősége, lehetséges csoportjai:

= optimális: az adott környezetben, feltétel rendszerben a legjobb megoldás;

= közel optimális (szuboptimális): az optimális megoldáshoz kö-zeli eredmény;

= kielégítő (satisficing): elegendően jó valamilyen feltétel szerint; = valószínű megoldás: valószínűsíthetően megoldása a problé-

mának.

Gyakran egyensúlyozni kell a számítási időigény és a megoldás pontossága kö-zött. Egy jó algoritmus mindig képes megoldást találni: hosszabb számítási idő fel-használásával pontosabb eredményt szolgáltatva.

Page 38: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 11/48

Példák a feladat megfogalmazására/reprezentációjára 2-1. példa: 8-as játék/15-ös játék

2 8 3 1 2 3

1 6 4 8 4

7 5 7 6 5

kezdeti állapot cél állapot állapotok: a számozott lapok helyzete, de érdemes az üres mező helyzetét

is nyilvántartani; kezdőállapot: bármelyik állapot; célállapot: bármely állapot, pl.: a fenti elrendezés; operátorok: az üres mező mozgatása fel, le, jobbra, balra; költség: műveletek/lépések száma (az út hossza); megoldás: minimális költségű út a kezdeti és a célállapot között.

Page 39: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 12/48

A feladat egy lehetséges reprezentációjának részlete:

Page 40: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 13/48

2-2. példa: 4-királynő/8-királynő/n-királynő játék Feladat: helyezzünk el egy 4x4-es sakktáblán 4 királynő bábút úgy, hogy egyik se

üsse a másikat! állapotok: a tábla bármely elrendezése, 0-4 bábúval a táblán; kezdőállapot: üres tábla; célállapot: bármely, 4 - egymást nem ütő - királynőt tartalmazó

tábla; operátorok: egy bábú letétele; költség: műveletek/lépések száma; megoldás: minimális lépésszámú /vagy az első, a feltételeket kielégítő/ meg

oldás megtalálása.

A feladathoz többféle reprezentáció is lehetséges, de ezek költsége jelentősen kü-lönbözhet egymástól.

Page 41: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 14/48

1. reprezentáció:

állapotok: 0-4 királynő bárhol a táblán; kezdő állapot: üres tábla; célállapot: bármely, 4 - egymást nem ütő - királynőt tartalmazó tábla; operátor: királynő felhelyezése egy szabad mezőre; megoldás: állapotgráf alapján

1. lépés (szint): 16 lehetséges állapot (elágazás) 2. lépés (szint): maradt 15 lehetséges állapot (elágazás)

3. lépés (szint): maradt 14 lehetséges állapot (elágazás)

4. lépés (szint): maradt 13 lehetséges állapot (elágazás)

a lehetséges állapotok száma: 16 x 15 x 14 x 13 = 43680

Page 42: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 15/48

2. reprezentáció:

állapotok: 4 királynő felhelyezése egymás után úgy, hogy ne üssék egy-

mást; kezdő állapot: üres tábla; célállapot: bármely, 4 - egymást nem ütő - királynőt tartalmazó tábla; operátor: királynő felhelyezése egy szabad mezőre; megoldás: állapotgráf alapján

1.

lépés (szint): 16 lehetséges állapot (elágazás) 2. lépés (szint): maradt 6 lehetséges állapot (elágazás) 3. lépés (szint): maradt 2 lehetséges állapot (elágazás) 4. lépés (szint): maradt 1 lehetséges állapot (elágazás)

a lehetséges állapotok száma: 16 x 6 x 2 x 1 = 192

Page 43: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 16/48

3. reprezentáció: állapotok: soronként 1 királynő felhelyezése egymás után úgy, hogy ne üs-

sék egymást; kezdő állapot: üres tábla; célállapot: 4 - egymást nem ütő - királynőt tartalmazó tábla; operátor: királynő felhelyezése egy szabad mezőre; megoldás: állapotgráf alapján

1.

lépés (szint): 4 lehetséges állapot (elágazás) 2. lépés (szint): maradt 1, vagy 2 lehetséges állapot (elágazás) 3. lépés (szint): maradt 1 lehetséges állapot (elágazás) 4. lépés (szint): maradt 1 lehetséges állapot (elágazás)

a lehetséges állapotok száma: 4 x 2 x 1 x 1 = 8

Page 44: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 17/48

8-királynő probléma:

célállapot: 8 királynő a sakktáblán, egyik sem üti a másikat kezdő állapot: a táblán nincs egyetlen királynő sem

1. változat: állapotok: 0-8 királynő bárhol a táblán operátorok: királynő felhelyezése szabad mezőre

2. változat: állapotok: 0-8 királynő a táblán úgy, hogy egyik sem üti a másikat operátorok: királynő felhelyezése szabad mezőre

3. változat: állapotok: soronként 1-1 királynő a táblán operátorok: soronként 1-1 királynő szabad mezőre helyezése.

A választott reprezentációtól nagyban függ a keresési probléma mérete (ld.: előbb) ! → kombinatorikus robbanás !

Page 45: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 18/48

2-3. példa: Kripto-aritmetikai módon rejtjelezett üzenet visszakódolása Feladat: Adott egy, a számokat betűkkel helyettesített aritmetikai feladat, amely-

ben a betűk mindegyike értékes számjegyet jelöl. A különböző betűk kü-lönböző számjegyeket jelölnek. Adja meg a megoldás keresésének egy lehetséges reprezentációját!

állapotok: számokból és betűkből álló feladat-állapot kezdő állapot: csak betűkből álló feladvány végállapot: a feladvány csak számokból áll és teljesül a kívánt művelet operátorok: a betűkhöz sorra 0-9 számjegyek hozzárendelése; költség: minden lépés/operátoralkalmazás költsége egységnyi. Példák: Megoldás: = szisztematikus (módszeres) helyettesítéssel (ld.: köv. lapon);

= az elvégzendő aritmetikai műveletek jellemzőinek felhasználásával; pl. az eredmény legmagasabb helyiértéke csak 1 lehet → M=1.

F O R T Y + T E N + T E N S I X T Y

S E N D + M O R E M O N E Y

É L J E N + M Á J U S E L S E J E

Page 46: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 19/48

A második példa állapotgráfjának egy részlete:

Page 47: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 20/48

2-4. példa: Kannibálok és misszionáriusok Feladat: A folyó bal partján három misszionárius (M), három kannibál (K) és egy

csónak van; a csónakban legfeljebb ketten férnek el. Hogyan juthatnak át a túlpartra, ha eközben a kannibálok egyik parton sem lehetnek töb-ben, mint a misszionáriusok?

állapotok: számhármasok (a bal parton lévő misszionáriusok, kannibálok

száma és a csónak ottléte); kezdő állapot: (3, 3, 1) célállapot: (0, 0, 0) operátorok: a csónakban ülők száma: (1M, 1K), (2M), (2K), (1M), (1K) megoldás: az állapotgráf, keresőgráf alapján (megszoritás: csak megenge-

dett és új állapotba történhet átmenet)

Page 48: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 21/48

2-5. példa: Útkeresés labirintusban Feladat: Az alábbi táblával adott labirintusban keresendő az az

út, amely az S pontból a G pontba vezet. Az egyes me-zőkből csak azon szomszédos mezőkre lehet lépni, amelyek szabadok (azaz nem feketék). Már bejárt me-zőt ismételten nem lehet igénybe venni.

az állapotgráf:

1 2 3 4 1 S 2 3 G 4

állapotok: mezőpozició [sor, oszlop] párossal megadva;

kezdő állapot: S mező [1,2]; célállapot: G mező [3,3]; operátorok: elmozdulás (fel, jobbra, le, balra

sorrendben vizsgálva); költség: 1 egység/elmozdulás.

Page 49: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 22/48

2-6. példa: Útkeresés városok közt (gráfon) Feladat: a legrövidebb úton eljutni egyik helységből (Nyíregyházáról) egy másikba

(Fehérgyarmatba). állapotok: egyes helységekben

tartózkodni; kezdeti állapot: Nyíregyházán va-

gyunk

cél állapot: Fehérgyarmaton va-gyunk már

operátorok: utazás két szomszé-dos helység között

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

Nyíregyháza

Záhony

Kisvárda

Vásárosnamény

RohodBakta

Fehér- gyarmat

Nagyecsed

Máté- szalka

NyírbátorNagykálló

Nagyhalász

29

40

2959

34

7

27

31

15 27

2025

31

22 21

2529

3028

Page 50: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 23/48

A keresési fa felépítése:

Nyíregyháza1) kezdeti állapot

Nyíregyháza2) a kezdeti állapotkiterjesztése után

Nagykálló Bakta Kisvárda Nagyhalász

Nyíregyháza3) egy csomópontkiterjesztése után

Nagykálló Bakta Kisvárda Nagyhalász

Nyírbátor Rohod

Page 51: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 24/48

2.2. Megoldási lehetőségek Lehetséges problémakörök:

- játékproblémák (8-as játék, 4 királynő probléma, dáma, sakk, stb.),

- valós problémák (útkeresési, ütemezési, elhelyezési, navigációs, stb) Alkalmazható keresési eljárások:

- nem-informált (vak) keresések: nincs információ az adott problémáról; (teljes leszámlálásos, szélességi keresés, mélységi keresés, fokozato-

san mélyített keresés, stb.), - informált (heurisztikus) keresések: van információ a megoldandó feladat-

ról, amelynek felhasználásával, hatékonyabbá tehető a keresés; (mohó keresés, nyalábolt keresés, A, A*, fokozatos mélyítésű A* (IDA*)

keresés, stb.),

- lokális (iterativ) kereső eljárások: elmozdulás a legjobbnak tűnő irányba; (hegymászó, szimulált hűtési, genetikus algoritmusok)

Page 52: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 25/48

Alkalmazható vezérlési stratégiák:

- nem módosítható stratégia (nem térhetünk vissza egy korábbi lépés mó-dosítására, minden lépés végleges); pl.: hegymászó, szimulált hűtési el-járás.

- módosítható stratégia (visszatérhetünk egy korábbi állapotra egy új irány választása érdekében) = visszalépéses (back-tracking) vezérlési stratégia, = gráfkereső vezérlési stratégiák (nem informált, informált keresések).

Megoldó eljárás hatékonyságának vizsgálata:

- teljesség (a keresés biztosan megtalál egy megoldást, ha az létezik),

- optimalitás (a keresés megtalálja az optimális, a legjobb megoldást), - időigény (a megoldás előállításának időtartama → lépésszám),

- memóriaigény (az igénybe vett memória nagysága),

- keresés költsége (általában az idő- és memóriaigénytől függ).

Page 53: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 26/48

3. KERESÉSI ELJÁRÁSOK

3.1. Általános keresési algoritmus Adottak: kezdeti állapot, operátorok (az új állapotok létrehozásának műveletei),

állapottér, cél teszt, költségek és a keresési stratégia.

1. Legyen L a kezdeti (választható) állapotokat tartalmazó lista. 2. Ha L üres, akkor leállás → a keresés sikertelen. 3. egyébként: egy csomópont (pl.: n) választása L-ből. 4. Ha n egy célállapot, akkor leállás; a célállapot (és a hozzá vezető út/

költség) visszaadása eredményként → a keresés sikeres. 5. egyébként: - n törlése L-ből;

- n gyermekeinek előállítása; - hozzájuk vezető út[, költség] számítása, feljegyzése; - gyermek csomópontok/állapotok/ hozzáadása L-hez; - visszalépés 2-re.

Kisebb módosításokkal a legtöbb keresési algoritmus így működik.

Page 54: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 27/48

Legfontosabb kérdés, döntés

- hogyan válasszunk csomópontot L-ből ?→ (2) lépés (nem-informált (vak) keresés - informált (heurisztikus) keresés)

- célszerű előállítani az állapottér alapján a kereső fát: = állapot (a valóság egy konfigurációjának reprezentánsa)

→ gráf csúcspontja/csomópontja (node), amelynek jellemzői: a szülő és gyerek csomópontok, a mélysége, a költsége;

= kiterjesztés: az állapotátmenet függvény/operátorok segítségével elő-állítjuk a gyerek csomópontokat és a keresési algoritmusnak megfe-lelően rögzítjük/tároljuk az L listában.

Kereső eljárás hatékonyságának vizsgálata:

- teljesség (a keresés biztosan megtalál egy megoldást, ha az létezik), - optimalitás (a keresés megtalálja az optimális megoldást),

- időigény (a megoldás előállításának időtartama → lépésszám),

- memóriaigény (az igénybe vett memória nagysága), - keresés költsége (általában az idő- és memóriaigénytől függ).

Page 55: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 28/48

3.2. Nem-informált keresések

A nem-informált, vagy vak (blind) keresési eljárások esetében nem rendelke-zünk, vagy nem használunk fel a feladatra, a környezetre érvényes sajátos, egye-di információkat. A legfontosabb nem-informált keresési eljárások:

- szélességi keresés (breadth-first search), amely esetében mindig a keresőfa legmagasabb - a gyökérhez legközelebbi - szintjén lévő, még nem kifejtett csomópont valamelyikét terjesztjük ki előbb;

- egységes/egyenletes költségű keresés (uniform cost search), amelynél min-dig a legkisebb összköltségű csomópontot fejtjük ki először; - ha az állapot-átmenetek költsége azonos, akkor a szélességi kereséshez jutunk vissza;

- mélységi keresés (depth-first search), amely esetében, mindig a keresőfa leg-mélyebb szintjén lévő, még nem kifejtett csomópontot terjesztjük ki;

- korlátozott mélységi keresés (depth limited search) adott mélységi korláttal, amelynél mindig a legmélyebben lévő csomópontok valamelyikét terjesztjük ki, feltéve, hogy az nincs az előre megadott mélységi korlát (l) alatt;

- iteratív mélységi keresés (iterativ deepening search), amely esetében a mély-ségi korlátot fokozatosan növeljük, amíg el nem érjük a célállapotot.

Page 56: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 29/48

S

G

a.) Szélességben először keresés Mindig a keresőfa legmagasabb - a gyökérhez (d=0 szint) legközelebbi - szintjén lévő, még nem kifejtett csomópont valamelyikét terjesztjük ki előbb. A keresőfa bejárása és a kiterjesztés sorrendje - a példában (3-1.példa) - a csomópontok sorszámozása szerinti. A gyerek csomópontokat az L lista végéhez csatoljuk. L lista tartalma: 1; 1, 2,3,4 2,3,4,5,6,;3,4,5,6,7,8,;4,5,6,7,8,9,10; 5,6,7,8,9,10,11; 6,7,8,9,10,11; nem kiterj.hető 7,8,9,10,11,12,13; 8,9,10,11,12,13,14; 9,10,11,12,13,14; nem kiterj.hető 10,11,12,13,14,15,16,17; ....

d = 0 d = 1 d = 2 d = 3 d = 4

Page 57: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 30/48

Az általános keresési algoritmus módosulása: 3. egyébként: az 1. csomópont választása az L listából; 5/4. gyerek csomópontok /állapotok/ hozzáadása az L lista végéhez. Tulajdonságai:

= teljes (ha a b elágazási tényező véges), azaz megtalálja a megoldást; = optimális (ha a lépések költsége azonos);

= időigény (időbeli komplexitás), ha d mélységben található a megoldás:

kifejtendő cs.pontok száma ≈ 1 + b + b2 + ... + bd ≈ bd = memóriaigény (memória komplexitás):

tárolandó cs.pontok száma: ≈ 1 + b + b2 + ... + bd ≈ bd Nagyobb méret esetében nem túl jó → exponenciálisan nő a komplexitás.

Page 58: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 31/48

Például: ha b=10, 1000 csomópont/sec, 100 byte/csomópont

b.) Egységes költségű keresés A keresési fában mindig a pillanatnyilag legkisebb költségű csomópontot terjeszti ki (ha az állapotátmenetek költsége azonos, a szélességben először keresés sza-bályai érvényesek). Az általános kereső algoritmus módosításai: 3. egyébként: a csomópontok költség szerint növekvő sorrendbe rendezése

és az 1. csomópont választása az L listából;

Page 59: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 32/48

3-2. példa: az alábbi egyszerű gráf mutatja, hogy a keresőfa (az algoritmus) nem mindig adja a legjobb megoldást a legkevesebb lépéssel.

L-lista elemei: (S,0) célteszt → kiterjesztés: (S,0),(A,1),(B,5),(C,15) rendezés, célteszt → kiterjesztés: (A,1),(B,5),(C,15),(G,11) rendezés, célteszt → kiterjesztés: (B,5),(G,11),(C,15),(G,10) rendezés, célteszt → vége (G,10),(G,11),(C,15)

G

A B C

1 5 15

10 5 5

S

S

G

A C B

15 5 1

11

S

A B C

1 5 15

G

S

G

A C B

15 5

10 11

Page 60: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 33/48

Tulajdonságai:

= teljes (ha minden lépésköltség > 0); = optimális (ha minden lépésköltség > 0);

= időigény (időbeli komplexitás) >> bd lehet (ha a lépésköltségek nem azono-sak);

= memóriaigény (memória komplexitás) >> bd lehet (ha a lépésköltségek nem azonosak);

c.) Mélységben először keresés Mindig a keresőfa legmélyebb szintjén lévő, még nem kifejtett csomópontot ter-jesztjük ki.

Page 61: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 34/48

S

G

3-3. példa: Legyen adott a szélességi keresés (3-1. példa) gráfja. Vizsgáljuk meg a célállapot elérésének lépéseit a mélységi keresés alapján. A gráf csomópontjait azonosítsa a mellettük látható sorszám. Az új kiterjesztés csomópontjait az L lista elejéhez csatoljuk.

L lista elemei:

1 1,2,9,15 2,3,8,9,15 3,4,8,9,15 4,5,6,7,8,9,15 5,6,7,8,9,15 nem kit.hető; 6,7,8,9,15 nem kit.hető; 7,8,9,15 nem kit.hető; 8,9,15 nem kit.hető; 9,10,13,15 10,11,12,13,15 11,12,13,15 nem kit.; 12,13,15 nem kit.; 13,14,15 14,15 nem kit.hető; stb. ...

d = 0 d = 1 d = 2 d = 3 d = 4

Page 62: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 35/48

Az általános keresési algoritmus módosulása: 3. egyébként: az 1. csomópont választása az L listából; 5/4. gyerek csomópontok /állapotok/ hozzáadása az L lista elejéhez. Tulajdonságai:

= nem teljes (elakadhat egy rosszul választott, ciklikus, vagy végtelen ágon), → csak véges állapottérben teljes;

= nem optimális;

= időigény (időbeli komplexitás): ≈ bm, → igen nagy lehet, ha m >> d ; = memóriaigény (memória komplexitás): ≈ bm;

→ nagyon előnyös; ez még csökkenthető a visszalépéses (back-tracking) algoritmussal.

Page 63: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 36/48

3-4. példa: Milyen lesz a keresési fa és milyen sorrendben vizs-gálja a csomópontokat az ábrázolt tábla szerinti labirin-tus bejárásakor a) a szélességben először keresés, ha az (1,1) mező-

ből indul, és a (4,4) mező a célja? b) a mélységben először keresés, ha az (1,1) mezőből

indul, és a (4,4) mező a célja?

Az egyes csomópontokat (sorindex, oszlopindex) párokkal adjuk meg! (Az egyes csomópontokat mindig a fel-balra-le-jobbra sorrendben fejt-sük ki és balról-jobbra haladva ábrázoljuk! A már kifejtett, szülő/gyermek csomópontokat nem lehet ismételten érinteni!)

1 2 3 4 1 2 3 4

Page 64: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 37/48

Megoldás: a.) szélességben először keresés

1 2 3 4 1 2 3 4

Page 65: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 38/48

b.) mélységben először keresés

1 2 3 4 1 2 3 4

Page 66: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 39/48

c.) Korlátozott mélységi keresés Mélységi keresés adott mélységi korláttal, amelynél mindig a legmélyebben lévő még nem kifejtett csomópontok valamelyikét terjesztjük ki, feltéve, hogy az nincs az előre megadott mélységi korlát (l) alatt. Az általános keresési algoritmus módosulása: 0. Legyen a mélységi korlát: l;

3. egyébként: az 1. csomópont választása az L listából;

5/2. n gyermekeinek előállítása ha, n mélysége kisebb l-nél, egyébként vissza a 2. lépésre

5/4. gyerek csomópontok /állapotok/ hozzáadása az L lista elejéhez. Tulajdonságai:

= teljes (ha l ≥ d teljesül); = nem optimális; = időigény (időbeli komplexitás): ≈ b l; = memóriaigény (memória komplexitás): ≈ b l;

Page 67: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 40/48

d.) Iterativ mélységi keresés Tulajdonképpen korlátozott mélységű keresés egyre növekvő l = 0,1,2, ... mélysé-gi korlát mellett. Mintha a csomópontoknak a mélységi korlát alatt nem lehetnének leszármazottai és ha a célt nem sikerul így elérni, eggyel növeljük a korlátot és új-raindítjuk az egész keresést. Az általános keresési algoritmus módosulása:

0. Legyen a mélységi korlát l=0; 1. Legyen L a kezdeti (választható) állapotokat tartalmazó lista. 2. Ha L üres, akkor l := l + 1 legyen → vissza az 1. lépésre; 3. egyébként: az 1. csomópont választása az L listából;. 4. Ha n egy célállapot, akkor leállás; a célállapot (és a hozzá vezető út/ költség) visz-

szaadása eredményként → a keresés sikeres. 5. egyébként: - n törlése L-ből;

- n gyermekeinek előállítása ha, n mélysége kisebb l-nél, egyébként → vissza a 2. lépésre;

- hozzájuk vezető út[, költség] számítása, feljegyzése; - gyerek csomópontok /állapotok/ hozzáadása az L lista elejéhez.; - visszalépés 2-re.

Page 68: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 41/48

3-5. példa: Az iterativ mélységi keresés működésének bemutatása.

Page 69: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 42/48

Page 70: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 43/48

Tulajdonságai:

= teljes (ha b véges); = nem optimális; = időigény (időbeli komplexitás): ≈ bd; = memóriaigény (memória komplexitás): bd;

Időigénye jobb, mint a szélességi keresésé, mivel a szélességi keresés a legalsó (d) szinthez is kifejti, előállítja a (d+1)-ik szinthez tartozó csomópontokat, ellentét-ben az iteratív mélységi kereséssel. Például: ha b = 10 és d = 5, ekkor a kifejtett/tesztelt csomópontok száma(→ SZE):

S = 1 + 101 + 102 + 103 + 104 + 105 = 111 111

Az iteratív mélységi keresésnél legalsó szinthez (d=5) a csomópontokat egy-szer kell kiterjeszteni/tesztelni, eggyel magasabb szinten kétszer, stb. Azaz a kiterjesztések/tesztelések teljes száma:

I = 6*1 + 5*10 + 4*100 + 3*1 000 + 2*10 000 + 1*100 000 = 123 456

Ez ebben az esetben a szükségesnél ≈ 10% -kal több kiterjesztést jelent.

Page 71: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 44/48

Előnye: - a szélességben-először kereses teljessége, - a mélységben először keresés alacsony memóriaigénye, - biztosítja, hogy a keresési fa nem lesz mélyebben feltárva, mint

amilyen mélyen a cél található. Alkalmazható, ha nagy a keresési tér és ismeretlen a megoldás mélysége.

e.) Ismétlődő állapotok - gráfkeresés Nehezíti a keresést, ha ugyanazon állapotba/csomópontba több úton is el tudunk jutni (pl. útkeresés). Az állapotok ismétlődése elkerülhető ha tiltott a kiterjesztés:

- a szülő felé, - az elődök felé, - az összes, már kiterjesztett csomópont felé.

Ez azt jelenti, hogy az állapotteret/állapotgráfot átalakítjuk fa-gráffá, azaz minden lehetséges keresési útvonal a fa-gráf egy ágát alkotja. Kérdés: megéri a széleskörű ellenőrzés? Ha sok a hurok az állapottérben, akkor

→ igen.

Page 72: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 45/48

3-6. példa:

Page 73: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 46/48

3-7. példa: Az alábbi hurkokat is tartalmazó gráf a jobboldali keresési gráffá ala-kítható át.

Page 74: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA01- 47/48

f.) Nem-informált keresési eljárások összehasonlítása

Teljesség Optimalitás Időigény Memóriaigény a.) SZE igen1 igen3

≈ bd ≈ bd b.) EK igen1,2 igen >> bd lehet >> bd lehet c.) ME nem5 nem ≈ bm bm d.) KME igen4 nem ≈ bl bl e.) IME igen1 igen3

≈ bd bd

1 ha b véges értékű 2 ha a lépésköltség > 0 3 ha a lépésköltségek azonosak 4 ha l ≥ d 5 igen: csak véges és hurokmentes állapottérben

Page 75: Mesterséges intelligencia

GÁBOR DÉNES FŐISKOLA

INFORMATIKAI INTÉZET

MESTERSÉGES INTELLIGENCIA

3. ELŐADÁS (előadásvázlat)

DR. CSERNY LÁSZLÓ főiskolai tanár

BUDAPEST, 2018/2019-2

Page 76: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 2/35

TÉMAKÖRÖK

Bevezetés

1. Mesterséges intelligencia fogalma, előzmények. 2. Alapproblémák, a problémamegoldás feltételei

3. Keresési eljárások (informált, nem-informált keresések)

3.1. Általános keresési algoritmus 3.2. Nem-informált keresések

3.3. Informált keresések 3.4. Iterativ javító algoritmusok

3.5. Összegzés

4. Tudásreprezentációs módszerek, következtetés 5. Bizonytalanságkezelés (valószínűségi, fuzzy rsz.)

6. Gépi tanulás módjai (statisztikus, neurális hálók, stb.)

7. Intelligens rendszerek

Page 77: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 3/35

3.3. Informált keresési eljárások Kérdés: - hogyan javítható a nem-informált keresési eljárások hatékonysága?

- hogyan lehet csökkenteni, javítani a feladatmegoldás idő- és memória-igényét?

- hogyan lehet az erőforrásigényes gyakorlati feladatokat megoldani?

- hogyan lehet az adott területtel kapcsolatos információkat figyelembe venni, segítségül hívni?

Megoldás: informált (heurisztikus) keresési módszer alkalmazása. Algoritmus típusok:

- legjobbat-először keresés (best-first search): a legjobbnak tűnő cso-mópont kiterjesztése (mohó keresés, A*, IDA*),

- iteratív javító, vagy lokális keresés (local search): elmozdulás a leg-jobbnak tűnő irányba (csúcsra-mászás, szimulált hűtés, tabu kere-sés, genetikus algoritmus).

Page 78: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 4/35

Informált (heurisztikus - heuristic) keresési eljárások alatt azon keresési mód-szereket értjük, amelyek esetében a feladatra, a környezetre érvényes sajátos, egyedi információkat is felhasználunk a megoldás hatékony megtalálására. Heurisztika értelmezése:

- tapasztalaton alapuló bármely ismeret, amely segíti egy adott probléma

jobb megoldását, de nem biztos a hasznosíthatósága;

- technikai értelemben: heurisztikus kiértékelő függvény, mely a probléma

egy-egy állapotához annak jóságát jellemző értéket rendel hozzá (pl. sakk: egy pozíció ereje)

Heurisztika a keresésben:

- a még ki nem terjesztett csomópontok (L) kiértékelése: → mennyire van-

nak közel a célhoz?

Page 79: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 5/35

A legjobb csomópont megtalálása elvben nem könnyebb, mint maga a keresési feladat! → Ezt segíti az f(n) kiértékelő függvény. Célja:

- a feladat megoldásával járó számításigény csökkentése, - adott erőforrás használat mellett a lehető legjobb megoldás megtalálása.

Kompromisszum a számításigény és a megoldás minősége között!

Már kevés alkalmazás-függő szakismeret is nagyban segíthet bármely cél eléré-sében.

Kérdés: milyen legyen a kiértékelő függvényt? Legyen: • hatékonyan számítható (idő- és memóriaigény minimalizálásával),

• ne becsülje túl a tényleges költséget. Probléma: a kiértékelés csak becslésen alapulhat (így félre is vezethet).

Page 80: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 6/35

Hogyan alakítható ki a kiértékelő függvény? → A probléma egyszerűsített mo-delljéből kell kiindulni.

Például: a 3x3-as játéknál egy húzás akkor és csak akkor legális két pozíció kö-

zött, ha 1) a pozíció, ahová húzunk, üres, és 2) a két pozíció szomszédos.

Kiértékelő függvény lehet ekkor, ha eltekintünk 1)-től: → a Manhatten távolság,

1)-től és 2)-től: → a rossz helyen lévő számlapok száma, 2)-től: → az üres pozíció és a megfelelő számlapok közötti hely-

cserék száma.

Például: térképen, két helység közötti legrövidebb út keresésekor

• egyszerűsítés lehet, ha nem kell közúton haladni. Ekkor a kiértékelő függvény

• a légvonalbeli távolság lehet.

Page 81: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 7/35

Az ideális kiértékelő függvény:

f(n) = g(n) + h(n) ahol g(n) = a kezdő állapottól az n állapotig tartó út költsége, h(n) = az n állapottól a célig vezető út be-csült minimális költsége (heurisztikus fgv.)

• visszaadja a megoldás költségét, ha a célállapotra alkalmazzák

• nem változik, ha bármely állapotból optimális lépést teszünk (tökéletes becslő)

Például: A* keresésnél: f(n) = g(n) + h(n)

- a célban: h(n) = 0; f(n) = g(n)

- ha h(n) tökéletesen becsli a céltól való távolságot, nincs letérés az opti-mális útról

- redukált A*: h(n)=0 minden n-re biztosan elfogadható (A* → szélességben-először keresés; egyenletes költségű keresés)

Page 82: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 8/35

a.) Mohó keresés (greedy best-first search) Alapelv: megtalálni egy célt, amilyen gyorsan csak lehetséges. Kiértékelés alapja: egyedül a céltól való távolság. Mindig azt a csomópontot ter-

jeszti ki, amelynek minimális a céltól való távolság-becslése. A keresési algoritmus:

1. Legyen L a kezdeti (választható) állapotokat tartalmazó lista. 2. Ha L üres, akkor leállás → a keresés sikertelen. 3. egyébként: a várhatóan a célhoz legközelebbi csomópont (pl.: n) válasz-

tása L-ből (→ L-t előbb rendezni szükséges). 4. Ha n egy célállapot, akkor leállás; a célállapot (és a hozzá vezető út/ költ-

ség) visszaadása eredményként → a keresés sikeres. 5. egyébként: - n törlése L-ből;

- n gyermekeinek előállítása; - hozzájuk vezető út[, költség] számítása, feljegyzése; - gyermek csomópontok/állapotok/ hozzáadása L-hez; - visszalépés 2-re.

Page 83: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 9/35

3-8. példa: Határozzuk meg két helység, Nyíregyháza és Fehérgyarmat között a legrövidebb, minimális költségű utat a mohó algoritmussal!

állapotok: az egyes városokban vagyunk kezdeti állapot: Nyíregyházán vagyunk cél teszt: Fehérgyarmaton vagyunk már? operátorok: utazás szomszédos városok között költség: megtett út hossza optimális megoldás: minimális költségű út

Legyen a (heurisztikus) kiértékelő függvény: f(n) = h(n) = a légvonalbeli távol-

ság a céltól az alábbi táblázat szerint:

Page 84: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 10/35

Úthálózat

nem optimális!

Page 85: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 11/35

b.) A* keresés (best-first search) A minimális útköltségű megoldást szeretnénk megtalálni. Kiértékelés alapja: 1) a már megtett út, és

2) a még várható út költsége

f(n) = g(n) + h(n) ahol g(n): n tényleges távolsága a kezdeti állapottól, h(n): n becsült távolsága a céltól.

Általános keresési algoritmus (ld.: a.) pontban) módosulása: 3. egyébként: a csomópontoknak növekvő sorrendbe rendezése az f(n) kiér-

tékelő függvény értéke /költség/ alapján és az 1. csomópont választása az L listából;

azaz mindig azt az n csomópontot választjuk, amelyre

f(n) = g(n) + h(n) minimális értékű.

Page 86: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 12/35

Tulajdonságai:

= teljes (ha b véges és minden lépésköltség > 0); = optimális (ha h(n) egy elfogadható heurisztika), azaz

h(n) elfogadható heurisztika [admissible heuristic], ha minden n csomó-pontra igaz, hogy h(n) nem becsüli túl a cél eléréséhez ténylegesen szük-séges, optimális költséget/távolságát, azaz h(n) ≤ h*(n);

= időigény (időbeli komplexitás): exponenciálisan függ a mérettől;

= memóriaigény (memória komplexitás): exponenciálisan függ a mérettől. Nagy feladatok megoldására nem mindig alkalmas a memóriaigény miatt. Megjegyzés:

A algoritmus: f(n) = g(n) + h(n) és h(n) ≥ 0 A* algoritmus: f(n) = g(n) + h(n) és h(n) ≤ h*(n) optimálisnál Ac algoritmus: f(n) = g(n) + h(n) és h(n)- h(m) ≤ c(n,m) élköltségnél,

→ konzisztens A* algoritmus.

Page 87: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 13/35

3-9. példa: Hasonlítsuk össze az alábbi táblázattal adott keresési probléma meg-oldásait, amelyeket az 'egységes költségű keresés'-sel, illetve az 'A* ke-resés'-sel kaptunk. A kezdő állapot: S mező, a célállapot: E mező. A ki-terjesztések sorrendje, illetve a lépésköltségek adottak.

a.) Egységes költségű keresés

1

2 3

4 5

6 7

Page 88: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 14/35

b.) A* keresés

h(n) becslő heurisztikus függvény az alábbi:

(x(n)-x(E))

1

23

4

5

Page 89: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 15/35

3-10. példa: Határozzuk meg a 3-8. példában megadott adatokkal, Nyíregyháza és Fehérgyarmat között a legrövidebb, minimális költségű utat az A* algoritmussal!

L lista elemei:

(NyE,58=0+58) (NyE,58),(NH,89=29+60),(KV,99=59+40),(B,68=34+34),(NK,68=15+53) (B,68),(NK,68),(NH,89),(KV,99),(R,68=41+27),(NyB,86=54+32) (NK,68),(R,68),(NyB,86),(NH,89),(KV,99),(NyB,74=42+32) (R,68),(NyB,74),(NyB,86),(NH,89),(KV,99),(VN,90=68+22),(MSz,83=70+13) (NyB,74),(MSz,83),(NH,89),(VN,90),(KV,99),(MSz,80=67+13),(NE,89=73+16) (MSz,80),(MSz,83),(NH,89),(NE,89),(VN,90),(KV,99),(VN,117=95+22),(FGy,92=92+0), (NE,105=89+16) (NH,89),(NE,89),(VN,90),(FGy,92),(KV,99),(NE,105),(VN,117),(KV,109=69+40) (NE,89),(VN,90),(FGy,92),(KV,99),(KV,109),(FGy,94=73+16) (VN,90),(FGy,92),(FGy,94),(KV,99),(FGy,98=98+0) (FGy,92),(FGy,98),(KV,99) (FGy,98) = ugyanarra a pontra rosszabb eredményt

adó utat a rendezés után töröljük.

Page 90: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 16/35

A kereső fagráf:

1 NyE f=0+58=58

7 NH 29+60=89

KV 59+40=99

3 NK 15+53=68

2 B 34+34=68

4 R 41+27=68

NyB 54+32=86

5 NyB 42+32=74

9 VN 68+22=90

MSz 70+13=83

6 MSz 67+13=80

8 NE 73+16=89

VN 95+22=117

10 FGy 92+0=92

NE 89+16=105

KV 69+40=109

FGy 98+0=98

FGy 94+0=94

Page 91: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 17/35

c.) Iteratív mélyítő A* keresés (IDA*) Az iteratív mélyítő A* keresési eljárás (iterative deepening A* search) fokozatosan mélyíti a vizsgált területet a kiértékelő függvény vonatkozásában:

- ha nem találja meg a megoldást az adott korlát mellett, akkor növeli a korlá-tot;

- alkalmazása gyorsíthatja a keresést, de az ismétlődő kezdések miatt lassít-hatja is.

IDA* algoritmusa:

1) Legyen a mélységi korlát c = 0. 2) Legyen L a kezdeti állapotokat tartalmazó lista; és

legyen c´ (a következő iteráció mélységi korlátja) = ∞. 3) Ha L üres, és c´ = ∞, akkor leállás; nincs megoldás → a keresés sikertelen. 4) Ha L üres, és c´ ≠ ∞, akkor legyen c = c´, és → vissza 2)-re

egyébként legyen n az első csomópont L-ből. 5) Ha n egy célállapot, akkor leállás; a célállapot (és a hozzá vezető út/ költ-

ség) visszaadása eredményként → a keresés sikeres;

Page 92: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 18/35

6) egyébként: n törlése L-ből; n valamennyi n´ gyermekének előállítása;

- ha f(n´) ≤ c, akkor = n´ hozzáadása L elejéhez, = n´-höz vezető út feljegyzése;

- legyen c´ = minc´, f(n´) > c ∀n'-re; vissza 3)-ra.

Tulajdonságai:

= teljes (ha b véges és minden lépésköltség > 0); = optimális (ha minden n csomópontra igaz, hogy h(n) nem becsüli túl n tényle-

ges távolságát a céltól, azaz h(n) elfogadható heurisztika, akkor A* soha sem ad vissza optimálistól eltérő megoldást);

= időigény (időbeli komplexitás): függ h(n)-től, exponenciálisan függ a mérettől;

= memóriaigény (memória komplexitás):lineárisan nő a cél mélységével (d).

Page 93: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 19/35

d.) Informált keresési eljárások összehasonlítása

Teljesség Optimalitás Időigény Memóriaigény a.) MK igen nem exp. exp b.) A* igen1,2 igen3 exp. exp. c.) IDA* igen1 igen3 exp. bd

1 ha b véges értékű 2 ha a lépésköltség > 0 3 ha h(n) elfogadható heurisztika

Page 94: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 20/35

3.4. Lokális kereső, Iteratív javító algoritmusok A lokális kereső, iteratív javító eljárások az aktuális állapot közvetlen környeze-tének értékelése alapján választják a következő állapotot; (általában) mindig a legkedvezőbb irányba mozdulva. Többnyire olyan feladatoknál érdemes alkalmazni, ahol a célállapot elérése a fela-dat és nem lényeges az odavezető lépések sorozata. (Például: elrendezés terve-zés - nyomtatott áramkörök, gyártósorok elrendezése; különböző ütemezési/ összerendelési feladatok - órarend, technológiai műveletsor, hálózatok kialakítá-sa, stb) Alapötlet: analógia a felületen való tájékozódással és mozgással:

- magasság:→ a csomópont jósága, megfelelősége (heurisztikus ki-értékelés)

- csúcsok: optimális megoldások (lokális, globális) → probléma!

- tájékozódás/kiértékelés: az adott pont szomszédságában lévő pon-tok kiértékelése

Page 95: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 21/35

Előny: - igen kevés (gyakran konstans) memória használata, - elfogadható megoldást adnak igen nagy (vagy végtelen) állapottér-

ben is.

Hátrány: - problémás lehet a lokális optimum elkerülése.

globális maximum

sík lokális maximum

lokális maximum

váll

aktuális állapot

célfüggvény

állapottér

Page 96: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 22/35

A leggyakrabban alkalmazott algoritmusok:

- csúcsra mászó/hegymászó (hill-climbing), vagy gradiens (gradient) módszer - szimulált hűtés (simulated annealing),

- tabu keresés (tabu search),

- genetikus algoritmusok (genetic algorithm), - hangya algoritmus (ant colony optimization)

a.) Hegymászó keresés A keresés során egy-egy csomópont

- közvetlen leszármazottait/szomszédjait vizsgálja csak, és - ezek közül választja a legjobbat.

Page 97: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 23/35

Keresési algoritmus:

1) Legyen n a kezdeti állapot; 2) Ha n egy célállapot, akkor leállás → a célállapot visszadása eredményként

→ a keresés sikeres. 3) egyébként: - előállítja n valamennyi n´ leszármazottját, szomszédját,

- kiválasztja a legjobb n'-t és n: = n´, - vissza 2)-re.

3-11. példa: Határozza meg a maxi-

mális jóságú csomópon-tot és az odavezető útvo-nalat!

A választott útvonal: (A,0),(C,2),(I,4),(K,5),(M,6),(G,9) A célállapot: (G,9)

Page 98: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 24/35

Tulajdonságok: Nem teljes: gyakran eltévedhet → véletlen kezdőállapotú újraindítás. Memória igénye: minimális, nem tárolja a keresési gráfot csak a pillanatnyilag

vizsgált csomópontot Eredményessége erősen függ az állapottér alkotta felülettől. Problémát okoz

- a lokális maximum, - a hegygerinc jellegű lokális maximum, - a kiterjedt síkfelület.

b.) Szimulált hűtés Alapötlet: olvadt fémek hűlési, dermedési folyamata

→ a lehetséges lépések közül véletlenszerűen választjuk a következőt és

→ a lokális maximum elkerülése érdekében megengedett a "rossz" lépé-sek elfogadása is, de a keresési folyamat előrehaladása során egyre csökkenő mértékben.

Page 99: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 25/35

Alkalmazott algoritmus:

1.) Legyen adott T>0 hőmérséklet paraméter (vagy T1 > T2 >...> Tk,. csökkenő értékű paraméterek sorozata);

2.) Legyen n a kezdeti állapot; 3.) Ha n egy célállapot, akkor leállás → a célállapot visszadása eredményként

→ a keresés sikeres. 4.) egyébként:

- előállítja n valamennyi n´ leszármazottját, 5.) - véletlenszerűen kiválasztja egyik n'-t

- ha f(n')-f(n) > 0 akkor legyen n:= n' → vissza 3.)-ra, egyébként: = p legyen egy véletlenszerűen választott érték [0,1) interval-

lumból, = ha exp([f(n')-f(n)]/T) > p, akkor legyen n:= n' → vissza 3.)-ra,

egyébként → T csökkentése és vissza 5.)-re; Ha a hőmérséklet elegendően lassan csökken, megtalálja a globális optimumot.

Page 100: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 26/35

c.) Tabu keresés A csúcsramászás és a szimulált hűtés módszerét egészíti ki. Alapelvként bizonyos állapotokat az ú.n. tabu halmazba helyezéssel kizár a kere-sésből, ezáltal gyorsítja a keresést. Így,

– valamilyen előzetes információ alapján tartományokat zárhatunk ki;

– a már meglátogatott és elvetett állapotokat kizárva, a keresési tér csökkent-hető (az iteratív javító algoritmusok nem tárolják az addig bejárt útvonalat).

Előnyösen használható

- kombinatorikus feladatoknál,

- ütemezési feladatoknál, pl.: órarend készítés, gyártásütemezés, stb.

Page 101: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 27/35

mutáció

d.) Genetikus algoritmusok A természet evolúciójához hasonló módon javítjuk az egymás utáni állapotok jó-ságát a természetes kiválasztódás (durva) utánzásával. A korábbi iteratív javító algoritmusokkal szemben, a gyerek csomópontokat nem egy, hanem két szülő csomópont kombinálásából állítjuk elő. Fogalmak:

- egyed (egy lehetséges állapot – megoldás), - populáció (a lehetséges megoldások egy halmaza), - megfelelőség, rátermettség – a kiértékelő (fitness )

függvény méri, - életképesség (a keresési tartomáyon belüli). - genetikus kód (az egyed, az állapot reprezentációja):

valamilyen jelsorozat, karakter/szimbólum sorozat, - genetikus műveletek:

= mutáció (mutation): a jelsorozat valamely elemét megváltoztatjuk, = kereszteződés (crossover): mindkét egyed jelsorozatát ugyanazon helyen

ketté vágva, felcseréljük a jelsorozatok első (vagy második) felét;

Page 102: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 28/35

Genetikus algoritmus: (egy lehetséges változat)

1.) Kezdeti populáció feltöltése. 2.) Ha a leállási feltétel teljesül, akkor leállás és a

legjobb egyedek visszaadása eredményként. 3.) Egyébként:

- néhány egyed kiválasztása a populációból; - a genetikus műveletek alkalmazása a kivá-

lasztott egyedekre; - az új egyedek kiértékelése; - a legrosszabb egyedek elvetése; - vissza 2.)-re.

(Megjegyzés: a genetikus algoritmus nem valódi

evolúciós folyamatot modellez, hiányzik a reprodukció lehetősége.)

(Bővebbet a témáról: Borgulya I.: Evolúciós algoritmusok, Dialóg Campus Kiadó, Pécs, 2004)

kereszte-zési pont

szegmens csere

Page 103: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 29/35

3-12. példa: A 8-királynő probléma megoldásának lehetséges változata a geneti-kus algoritmus alkalmazásával. A tábla állását egy-egy 8-számjegyből álló karakter sorozat reprezen-tálja, amelyben oszloponként adjuk meg a királynő sorpozicióját. A kiértékelő függvény az egymást nem támadó párok számát adja vissza, amely egy megoldás állapot esetében = 28. Adottak a négy táblaálláshoz tartozó értékek. A szülő párok kiválasztása a fittness-függvénnyel arányos valószínűséggel (% értékek) történik.

Megoldás:

fittness - választás keresztezés mutáció

Page 104: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 30/35

Az első két egyed (táblaállás) egypontos keresztezésének eredménye a mutáció nélkül az alábbi lesz:

Működést befolyásoló paraméterek: - populáció nagysága,

- keresztezések száma, - mutációk száma, - keresztezési pontok száma, - mutációs pontok száma, - leállási feltétel.

Page 105: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 31/35

e.) Hangya algoritmus Alapötlet: hangyák természetbeni viselkedése a legrövidebb út megtalálásában.

Page 106: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 32/35

- kommunikációs háló-zatok adatforgalmának irányítása – optimális hálózati áteresztőké-pesség biztosítása,

- gyártósor ütemezés, - járműforgalom optima-

lizálása, - gráf, vagy térkép szí-

nezés, stb.

Legrövidebb út kialakítása hangya algoritmussal:

- a táplálék összegyűjtése után megjelölik az utat feromonnal; - a hangyák a feromon mennyiségének függvényében választanak utat; - rövid idő multán a legrövidebb úton lesz a legnagyobb feromon mennyiség.

A hangya algoritmussal megoldható jellemző problémák:

Page 107: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 33/35

3.5. Összegzés Legfontosabb szempontok a problémamegoldásban:

- feladatmegfogalmazás módja, reprezentációja

(állapotok, állapottér, műveletek, célok); - nem-informált (vak), vagy informált (heurisztikus) keresés választása

(információ a problémáról segíthet, de néha nehéz megszerezni); - tulajdonságok fontossága

(teljesség, optimalitás, idő és memória komplexitás). Meta-szintű döntés → a reprezentáció és a keresési módszer választása. A módszerek legfontosabb jellemző tulajdonságai. Melyik eljárást érdemes hasz-nálni?:

- SzE: csak ha kicsi az elágazási tényező (ritka eset) - ME: csak ha a reménytelen ágak nem lehetnek túl hosszúak - legjobb általános vak keresés: IME

Page 108: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA03- 34/35

- legjobbat-először keresés: fontos a cél távolságának becslése (A* lehet akár teljes és optimális)

- iteratív javító algoritmusok jó távolságbecslés, nem szabad lokális optimumokban leragadni.

Felvetődő nyitott kérdések:

- minden operátor (akció) egyformán fontos? - össze lehet rakni egy utat darabokból? - többet kell tudni (és reprezentálni) az akciókról; előfeltételeikről, hatásaik-

ról, és kölcsönhatásaikról.

Page 109: Mesterséges intelligencia

GÁBOR DÉNES FŐISKOLA

INFORMATIKAI INTÉZET

MESTERSÉGES INTELLIGENCIA

4. ELŐADÁS (előadásvázlat)

DR. CSERNY LÁSZLÓ főiskolai tanár

BUDAPEST, 2018/2019-2

Page 110: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 2/30

TÉMAKÖRÖK

Bevezetés

1. Mesterséges intelligencia fogalma, előzmények. 2. Alapproblémák, a problémamegoldás feltételei

3. Keresési eljárások (informált, nem-informált keresések)

4. Tudásreprezentációs módszerek, következtetés 4.1. Célok, lehetőségek

4.2. Logikai alapú megjelenítés és következtetés 4.3. Szabály-alapú megjelenítés és következtetés

4.4. Keret-alapú megjelenítés és következtetés

4.5. Eset-alalpú megjelenítés és következtetés 5. Bizonytalanságkezelés (valószínűségi, fuzzy rsz.)

6. Gépi tanulás módjai (statisztikus, neurális hálók, stb.)

7. Intelligens rendszerek

Page 111: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 3/30

4. TUDÁSREPREZENTÁCIÓ, KÖVETKEZTETÉS

4.1. Célok, lehetőségek Kérdés: mi a különbség a feladatok szokásos gépi megoldása és az intelligens

problémamegoldás között?

szokásos: adatok → adatokon végzett műveletek ismert és adott algo-ritmus (→ program) alapján → eredmény adatok

intelligens problémamegoldás: tények/állítások/, tények közötti kapcso-

latok → állításokon végzett alapvetően logikai műveletek (→ következtetések) előre nem meghatározott algoritmus alapján → eredmény állítások/következmények

A feladat és a felhasznált ismeretek (adatok, állítások) megjelenítése a gép szá-

mára: valamilyen 'programozási nyelv', 'ismeretközlési mód', illetve an-nak tárolt, feldolgozható formája segítségével történik.

Page 112: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 4/30

Az alkalmazott módszerek célja: = ismeretek megszerzése, = ismeretek megjelenítése, tárolása, = ismeretek hasznosítása → következtetés

Leírás szintjei:

• tudás (azaz tudati) szintű (ismeretelemek, ismeretek megadása = az ágens megadása a tudásával; meghatározza, hogy mit lehet egyáltalán állítani!)

• logikai szintű (ahogyan a tudás kódolva van), • fizikai, implementáció szintű (ahogyan fizikailag megjelenik)

Adott reprezentációs módtól elvárt jellemzők:

• kifejező erő, modellezési lehetőség (→ mit lehet egyáltalán állítani?)

• következtetetési képesség (→ milyen kérdésekre várható válasz?)

• követhetőség (→ mennyi időn belül várható válasz?) Alapprobléma: miként modellezhető a világ úgy, hogy a modell elégséges alapot

adjon az intelligens cselekvéshez?

Page 113: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 5/30

Reprezentációs módok csoportosítási lehetőségei - a megoldásra is ad-e előírást?

= procedurális (algoritmikus) leírás: megadja a megoldáshoz szükséges lé-pések egymásutániságát → algoritmus → imperativ programozási nyel-vek [Basic, Pascal, Fortran, C, stb.];

= deklarativ leírás: a feladat tényeit és ezek egymás közötti kapcsolatait ad-ja meg (a megoldás lépései a végrehajtás/feldolgozás során kerülnek meghatározásra) → nem ír elő algoritmust → deklaratív /logikai/ progra-mozási nyelvek [Prolog, Lisp(?)].

Az MI feladatokra a deklaratív feladatmegadás a jellemző. - a használt adatok/ismeretek struktúrája szerint:

= egyszerű: elemi objektumokkal, atomokkal (adatelemek, tényállítások) dolgozik, pl.: logikai ábrázolásmód;

= strukturált: elemi összetevőkből álló bonyolultabb szerkezetekkel (adat-struktúrák, összetett állítások) dolgozik, pl.: keret-alapú ábrázolásmód.

Page 114: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 6/30

Jellemző reprezentációs módok

- procedurális (algoritmikus) megjelenítési mód → valamilyen imperatív progra-mozási nyelv segítségével → szokásos nem-tudásalapú feladatok;

- logikai alapú megjelenítési mód: = formális logikára épülő: formális nyelvtan,

(boole-)algebrai leírás; • itélet logikai /nulladrendű/, • elsőrendű, predikativ logikai ábrázolás → PROLOG nyelv

= szabály-alapú (rule based) leírás.

- strukturált (keret, objektum alapú) megjelenítési módok; = keret-alapú (frame-based) megjelenítési mód; = szemantikus háló alapú megjelenítési mód;

- döntési fa alapú megjelenítés;

- forgatókönyvek, szcenáriók;

- hibrid reprezentáció az előzőek felhasználásával.

Page 115: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 7/30

4.2. Logikai alapú megjelenítés és következtetés A logikai alapú megjelenítés alapvetően állításokra (általánosan: mondatokra) épül. 4.2.1. Fogalmak értelmezése - (elemi) mondat: a világ tényeire, állapotaira vonatkozó egyszerű állítások, ame-

lyek igaz,vagy hamis értékűek; - reprezentáció, megjelenítés: a mondat értelmezhető formája

= valamely természetes, vagy mesterséges nyelven megfogalmazott; = kijelentő mondat formájában.

- interpretáció, értelmezés: = megfeleltetés a valóság tényei, állapotai és a mondatok között, = általában több interpretáció is lehetséges(!);

- következtetés: a mondatokból mechanikus eljárások alkalmazásával újabb, ed-dig nem reprezentált mondatok származtatása;

- (tétel) bizonyítás: annak igazolása, megfelelő következtetési eljárás és ismert ér-tékű állítások (feltételek) felhasználásával, hogy egy állítás (tétel) igaz, vagy hamis értékű.

Page 116: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 8/30

A logikai alapú megjelenítés alkotóelemei:

- szintaxis = a nyelv szimbólumai, = miként lehet mondatokat formálni;

- szemantika = megszabja, hogy a mondatok a világ mely tényeire vonatkoznak, = jelentést ad a mondatoknak;

- következtetés = adott szintaxis és szemantika mellett új mondatokat származtat.

mondatok mondatok

tények tények

Reprezentáció:

Világ:

vonatkozik rá(szemantika

következik belőle

követ

Page 117: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 9/30

Logikai állítások/mondatok tulajdonságai és relációk

- igazság = egy mondat igaz, ha az, amit leír, valóban előfordul a világban; = egy mondat igazsága függ

• a világ állapotától, és • az interpretációtól, értelmezéstől (szemantikától);

- érvényesség

= a mondat érvenyes, ha minden értelmezésében igaz (nem függ sem a világ állapotától, sem a szemantikától) → tautológia

- kielégíthetőség

= ha a mondat valamely értelmezésében igaz (minden érvényes mondat kielégíthető)

- kielégíthetetlenség

= kielégíthetetlen egy mondat, ha minden értelmezésében hamis, azaz a világ soha nem olyan, mint amilyennek leírja → ellentmondás

Egy mondat akkor és csak akkor érvényes, ha tagadottja kielégíthetetlen.

Page 118: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 10/30

Következtetési eljárás elemei - következmény:

például: P1: "esik az eső" P2: "szabadban vagy" és TB = S = P1,P2

Q: "vizes leszel"

akkor, S |= Q

azaz, ha a mondatok egy halmaza (S) egy adott interpretációban igaz, akkor igaz a Q mondat is.

Q igazsága kövesse S igazságát minden interpretációban → több lehetséges interpretáció: azaz bármikor, ha S mondatai igazak, akkor igaz Q is.

- következmények gépi meghatározása:

= ahhoz, hogy eldöntse "TB |= q" igazságát, meg kell mutatnia, hogy a "ha TB igaz, akkor q" állítás teljesül; → a konklúzió minden interpretációban igaz.

= a gépnek ehhez nem kell ismernie a reprezentációs nyelv szemantikáját. = érvényesség (és kielégíthetetlenség) kulcsszerepben.

Page 119: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 11/30

- következtetés:

megengedett szintaktikai szabályok mechanikus alkalmazásával annak megál-lapítása, hogy mi következik (konklúzió) a feltétel (premissza) mondatokból.

premisszák |— konklúzió formálisan:

p |— q TB |— q

- következtetés tulajdonságai:

= biztos: tényleg csak a következményeket állítja elő ha TB |— q, akkor TB |= q

= teljes: az összes következményt előállítja

ha TB |= q, akkor TB |— q - formális következtetés:

érvényes következmények származtatása az interpretációk ismerete nélkül.

Page 120: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 12/30

4.2.2. Logikai rendszerek Lényeg: szintaxis, szemantika, következtetési (levezetési) szabályok

típus a világ

leképzése értékek megjegyzés

klasszikus logikák monoton (egy igaz állítás az is marad)

nulladrendű logika (itélet logika) tények igaz/hamis

elsőrendű logika (predikátum logika)

tények/objektu-mok/relációk igaz/hamis változók is használhatók

nem-klasszikus logikák egy állítás nem egyértelműen igaz, vagy hamis /modalítás/

többértékű logika tények/objektu-mok/relációk több érték

temporális logika tények/objektu-mok/relációk/idő

igaz/hamis időtől is függő

valószínűségi logika tények vélekedés mértéke

folytonos, 0 - 1 között

fuzzy logika tények/relációk kapcsolódás mértéke

igazság mértéke is változó, 0 - 1 között

Page 121: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 13/30

4.2.3. Itéletlogika (nulladrendű logika) a.) Reprezentáció elemei, tulajdonságai

Szintaxis

- ítéletváltozók és ítéletkonstansok (T=true, F=false)

- mondatok = bármely szimbólum, amely ítéletváltozót, vagy konstanst jelöl (pl. P, Q, R,

vagy F, T)

= ha α és β egy-egy mondat, akkor mondat még: (α) ¬α tagadás, negáció (vagy ~α) α ∧ β logikai ÉS, konjunkció (vagy α & β) α ∨ β logikai VAGY, diszjunkció α ⇒ β implikáció ("ha ... akkor ...") (vagy α → β) α ⇔ β ekvivalencia ("akkor és csak akkor, ha ...")

= mondatok rekurzív módon is konstruálhatók (→ precedencia), pl.: (P ∧ Q) ⇒ (¬R ∨(S ∧ V))

Page 122: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 14/30

Szemantika - interpretáció

= egy mondat ítéletváltozóihoz igaz (T), illetve hamis (F) értéket rendel bármely lehetséges módon.

= egy mondatnak több interpretációja is lehetséges.

- kiértékelés: a műveleti jelek precedenciája (¬, ∧, ∨, ⇒, ⇔ ) és szemantikája alapján

= alapműveletek:

P Q ¬P P∧Q P∨Q P⇒Q P⇔Q

F F T F F T T

F T T F T T F

T F F F T F F

T T F T T T T

Page 123: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 15/30

= azonosságok (ekvivalenciák):

két mondat ekvivalens, ha minden egyes interpretációban ugyanaz az értékük.

Page 124: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 16/30

= kiegészítés: a műszaki /informatikai/ gyakorlat jelölésrendszere:

- itélet változók, állítások logikai értéke: igaz (1), vagy hamis (0); - a műveleti jelek jelölése és az alapműveletek kiértékelésének igaz-

ságtáblája (az utolsó oszlop az 'antivalencia', KIZÁRÓ-VAGY, 'xor' művelet oszlopa):

P Q ¬P P∧Q P∨Q P⇒Q P⇔Q

P Q P⋅Q P+Q P→Q P Q P ⊗ Q

0 0 1 0 0 1 1 0

0 1 1 0 1 1 0 1

1 0 0 0 1 0 0 1

1 1 0 1 1 1 1 0

P

Page 125: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 17/30

- következmények ellenőrzése igazságtáblával:

= Adott a premisszák egy halmaza (P) és egy konklúzió (K).

= Igaz-e a P ⇒ K mondat minden interpretációban? Azaz, érvényes-e?

= Ha igen, akkor K következik P-ből.

4-1. példa: Premisszák: P1∨P2, ¬P2 P = P1∨P2, ¬P2 Konklúzió: P1 K = P1

azaz: P ⇒ K → ¬P ∨ K (1. azonosság szerint)

P1 P2 P1∨P2 ¬P2 P=(P1∨P2) ∧ ¬P2 K = P1 P ⇒ K

F F F T F F T

F T T F F F T

T F T T T T T

T T T F F T T

Page 126: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 18/30

b.) Következtetési eljárások

- minták: a végrehajtható következtetési műveletek, következtetési szabályok

- jelölés: α |— β helyett: α β

- következtetési szabályok: ÉS kiküszübölése: bármelyik/minden Pi-nek igaznak kell lennie

(P1∧P2∧... ∧Pn) |— Pi ÉS bevezetése: igaz mondatok listájából következik azok konjukciója

(P1, P2, ... , Pn) |— (P1∧P2∧... ∧Pn) VAGY bevezetése: egy mondatból következtethető bármely másikkal a

diszjunkciója Pi |— (P1 ∨ P2 ∨ ... ∨ Pi ∨ ... ∨ Pn)

kettős tagadás kiküszöbölése: ¬(¬P) |— P

valamint

modus ponens (implikáció kiküszöbölése):

(P1 ⇒ P2, P1) |— P2

Page 127: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 19/30

modus tollens (implikáció kiküszöbölése):

(P1 ⇒ P2, ¬P2) |— ¬P1

rezolúció (pl. P2 nem lehet egyszerre igaz és hamis):

(P1 ∨ P2, ¬P2 ∨ P3) |— (P1 ∨ P3)

A (P1 ∨ P2), (¬P2 ∨ P3) klózokat rezolválhatónak nevezzük, ha egy komplemens itéletváltozó párt (P2, ¬P2) tartalmaznak. Az eredmény (P1 ∨ P3) klóz az eredeti klózpár rezolvense.

→ Logikai programozás: határozott Horn-klóz (változók VAGY kapcsola-ta, melyben csak egy pozitív/nem tagadott/ változó van) mindig átalakít-ható implikációvá; pl.: (¬P1∨ ¬P2∨...¬Pn ∨ Q) → (P1∧P2∧... ∧Pn) ⇒ Q

- bizonyítás: az alkalmazott következtetési szabályok sorozata Teljesség és komplexitás

• az igazságtáblákon való következtetés teljes • de exponenciális időt és/vagy helyet igényel (2n sor)

Page 128: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 20/30

Figyelem! Más és más a jelentésük!

β ⇒ α amit az ágens hisz (implikáció: ha β igaz, akkor α is igaz) TB |= α ami helyes (következmény reláció) TB |— α amit az ágens meg tud tenni (következtetés)

c.) Példák: 4-2. példa: ÉS kiküszöbölése:

vagy esik_az_eső ∧ friss_a_levegő esik_az_eső ∧ friss_a_levegő _________________________________________________________________________________ _________________________________________________________________________________

esik_az_eső friss_a_levegő 4-3. példa: ÉS bevezetése

(esik_az_eső, friss_a_levegő) _________________________________________________________________________________

esik_az_eső ∧ friss_a_levegő

Page 129: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 21/30

4-4. példa: VAGY bevezetése

friss_a_levegő _________________________________________________________________________________

esik_az_eső ∨ friss_a_levegő

4-5. példa: Modus ponens (implikáció kiküszöbölése)

esik_az_eső ⇒ vízes_a_fű, esik_az_eső _______________________________________________________________________________________________________________

vízes_a_fű 4-6. példa: Modus tollens (implikáció kiküszöbölése)

esik_az_eső ⇒ vízes_a_fű, nem_vízes_a_fű _________________________________________________________________________________________________________________________

nem_esik_az_eső 4-7. példa: Rezolúció

rulettezem ∨ lottózom, nem_lottózom ∨ megmarad_a_pénzem __________________________________________________________________________________________________________________________________________________________________________

rulettezem ∨ megmarad_a_pénzem

Page 130: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 22/30

4-8. példa: Igazolja a ¬A∧B ⇒ ¬(A∨ ¬B) következtetés érvényességét, igazság-táblázat segítségével! (érvényesség: a [¬A∧B ⇒ ¬(A∨ ¬B)] állítás A és B minden interpre-

tációjában 'igaz' értékű.)

A B ¬A ¬B ¬A∧B A∨¬B ¬(A∨¬B) ¬A∧B ⇒ ¬(A∨¬B) F F T T F T F T F T T F T F T T T F F T F T F T T T F F F T F T

4-9. példa: Igazolja igazságtáblázat segítségével az A ⇒ B = ¬A∨B azonosságot!

A B A ⇒ B ¬A ¬A∨B A⇒B = ¬A∨B F F T T T T F T T T T T T F F F F T T T T F T T

Page 131: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 23/30

4-10. példa: Igazolja igazságtáblázat segítségével az A∧(B∨C) = (A∧B) ∨ (A∧C) azonosságot!

(azonosság igazolása: a baloldal és a jobboldal mondatai/állításai A, B, és C minden interpretációjában azonos igazságértékűek; tehát, az azonosság mint mondat, minden interpretációban 'igaz'.)

A B C B∨C P=A∧(B∨C) A∧B A∧C Q=(A∧B)∨(A∧C) P=Q F F F F F F F F T F F T T F F F F T F T F T F F F F T F T T T F F F F T T F F F F F F F T T F T T T F T T T T T F T T T F T T T T T T T T T T T

Page 132: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 24/30

4-11. példa: Milyen következtetésre juthatunk a modus ponens következtetési módszer segítségével az alábbi tudásbázis (TB) alapján?

alszik ⇒ ¬álmos álmos ⇒ rosszkedvű ¬álmos ⇒ ¬rosszkedvű alszik alszik, alszik ⇒ ¬álmos ________________________________________________________________

‡lmos

¬álmos, ¬álmos ⇒ ¬rosszkedvű ________________________________________________________________________________________

¬rosszkedvű Tehát a lehetséges következtetés: ¬rosszkedvű A TB elemei alapján más következtetés nem vezethető le. De, ugyanak-kor a ¬álmos következménye a TB-nak, mert az is levezethető a TB-ból.

Page 133: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 25/30

4-12. példa: Vizsgáljuk meg, hogy az előző, 11. példában megadott tudásbázisból levezethető-e a rezolúció módszerével a '¬rosszkedvű' következtetés?

alszik ⇒ ¬álmos → klóz alak: ¬alszik ∨ ¬álmos álmos ⇒ rosszkedvű → klóz alak: ¬álmos ∨ rosszkedvű ¬álmos ⇒ ¬rosszkedvű → klóz alak: álmos ∨ ¬rosszkedvű alszik → alszik Tegyük fel, hogy a 'rosszkedvű' állítás igaz és vegyük be a TB-ba.

alszik, ¬alszik ∨ ¬álmos ________________________________________________________________

‡lmos

¬álmos, álmos ∨ ¬rosszkedvű __________________________________________________________________________________

¬rosszkedvű

rosszkedvű, ¬rosszkedvű → ellentmondás! ______________________________________________________________________

⊥ Tehát a 'rosszkedvű' feltételezés hamis, a '¬rosszkedvű' az igaz.

Page 134: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 26/30

4-13. példa: Adott a következő TB: (1) Vezet ⇒ ¬Iszik V ⇒ ¬I (2) Fáradt ⇒ ¬Vezet F ⇒ ¬V (3) ¬Iszik ⇒ ¬Elégedett ¬I ⇒ ¬E (4) Vezet V

a.) Milyen következtetésre jutunk a modus ponens alkalmazásával? b.) Vizsgáljuk meg rezolúcióval: következik-e aTB-ból, hogy '¬fáradt'?

a.) (4),(1) V, V ⇒ ¬I +(3) ¬I, ¬I ⇒ ¬E ____________________________ ________________________________

¬I ¬E

Tehát a következtetés eredménye: '¬elégedett' b.) Tegyük fel: (5) Fáradt F

Klóz alakra hozva: (1) ¬V ∨ ¬I (2) ¬F ∨ ¬V (2),(4) (¬F∨¬V),V → ¬F (3) I ∨ ¬E (4) V (5) F (¬F),(5) ¬F,F → ⊥

Tehát, 'fáradt' feltételezés ellentmondásra vezet → a '¬fáradt' igaz.

Page 135: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 27/30

4-14. példa: Adott a következő TB: ¬sikeres_a_felvételi ⇒ állást_keres sikeres_a_felvételi ⇒ sok_tanulás ¬állást_keres

Igazolja igazságtáblával, hogy a TB-ból következik a 'sok_tanulás'

Jelölje: S= sikeres_a_felvételi A= állást_keres T= sok_tanulás

Ekkor a TB: ¬S ⇒ A S ⇒ T → Q=[(¬S ⇒ A)∧(S ⇒ T)∧ ¬A] Q ⇒ T ¬A

A S T ¬A ¬S ¬S ⇒ A S ⇒ T Q T Q ⇒ T F F F T T F T F F T F F T T T F T F T T F T F T F T F F F T F T T T F T T T T T T F F F T T T F F T T F T F T T T F T T T T F F F T F F F T T T T F F T T F T T

Tehát a TB-ból következik a 'sok_tanulás' igaz értéke.

Page 136: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 28/30

4-15. példa: Ismert a következő TB: kórházban_van ⇒ beteg gyógyszert_szed ⇒ meggyógyul beteg ⇒ gyógyszert_szed idős ⇒ kórházban_van idős

Milyen következményt állít elő a modus ponens következtetési módszer?

idős, idős ⇒ kórházban_van _____________________________________________________________________________

kórházban_van

kórházban_van, kórházban_van ⇒ beteg _________________________________________________________________________________________________________________

beteg

beteg, beteg ⇒ gyógyszert_szed _________________________________________________________________________________________

gyógyszert_szed

gyógyszert_szed, gyógyszert_szed ⇒ meggyógyul __________________________________________________________________________________________________________________________________________

meggyógyul

Tehát a TB-ból levezethető, hogy 'meggyógyul'.

Page 137: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA04- 29/30

4-16. példa: Adott a következő TB: Fáradt ⇒ ¬Kocog kocog ⇒ Egészséges ¬egészséges ⇒ fáradt ¬kocog ⇒ ¬Szomjas ¬szomjas ⇒ ¬Iszik iszik

Bizonyítsuk be rezolúció segítségével, hogy az 'egészséges' következmény!

Átírva és átalakítva klóz formába a TB-t a jelöléseknek megfelelően, kapjuk: (1) F ⇒ ¬K ¬F∨¬K (2) K ⇒ E ¬K∨E E∨¬K (3) ¬E ⇒ F E∨F E∨¬S (4) ¬K ⇒ ¬S K∨¬S E∨¬I (5) ¬S ⇒ ¬I S∨¬I E (6) I I ⊥ (7) bizonyítandó: ¬E Tehát a rezolúció ellentmondásra jutott, így (7) hamis, azaz 'egészséges' igaz.

Page 138: Mesterséges intelligencia

GÁBOR DÉNES FŐISKOLA

INFORMATIKAI INTÉZET

MESTERSÉGES INTELLIGENCIA

5. ELŐADÁS (előadásvázlat)

DR. CSERNY LÁSZLÓ főiskolai tanár

BUDAPEST, 2018/2019-2

Page 139: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 2/29

TÉMAKÖRÖK

Bevezetés

1. Mesterséges intelligencia fogalma, előzmények. 2. Alapproblémák, a problémamegoldás feltételei

3. Keresési eljárások (informált, nem-informált keresések)

4. Tudásreprezentációs módszerek, következtetés 4.1. Célok, lehetőségek

4.2. Logikai alapú megjelenítés és következtetés 4.3. Szabály-alapú megjelenítés és következtetés

4.4. Keret-alapú megjelenítés és következtetés

4.5. Eset-alalpú megjelenítés és következtetés 5. Bizonytalanságkezelés (valószínűségi, fuzzy rsz.)

6. Gépi tanulás módjai (statisztikus, neurális hálók, stb.)

7. Intelligens rendszerek

Page 140: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 3/29

4.2. Logikai alapú megjelenítés és következtetés 4.2.1. Fogalmak értelmezése 4.2.2. Logikai rendszerek előző, 4. előadás anyaga 4.2.3. Itéletlogika (nulladrendű logika)

4.2.4. Elsőrendű logika (predikátum logika) Jellemzői: 'igaz', vagy 'hamis' értékű állítások fogalmazhatók meg

= változók, = függvények, = objektum - tulajdonság, objektum-objektum kapcsolat leírása (pre-

dikátum), = kvantorok (minden/bármelyik; létezik/van_olyan) használata segít-

ségével.

Page 141: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 4/29

a.) Szintaktika: a tudásreprezentáció szerkezeti elemei, szabályai 1. szimbólumkészlet ( = itéletlogika jelkészlete)

Elválasztó jelek , ( ) [ ] Logikai műveleti jelek ¬, ∧, ∨, ⇒, ⇔ Itéletváltozók p, q, r Itéletkonstansok T, F Kvantorok ∃, ∀ Változók x, y, z, ... Konstansok a, b, János, asztal, ... Függvények f, g, kor( ), szomszéd( ) Predikátumok P, Q, testvére(), apja()

A szimbólumkészlet elemeiből felépíthetők bonyolultabb kifejezések: 2. term-ek melyek objektumokat, egyedeket/elemeket reprezentálnak:

konstansok, változók és függvények

Page 142: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 5/29

A függvények term-ekből (melyek mindig objektumokra utalnak) újabb term-eket építenek.

Pl. +(2,2), apa(Miklós)

3. mondatok: objektumokra (azok tulajdonságaira vagy relációira) vonatkozó állí-

tások; igazságértékük van.

elemi/atomi/ mondatok: minden itéletváltozó, itéletkonstans, predikátum; predikátumok: állítások objektumokról (objektumok kapcsolatáról), pl.: egyenlő(+(2,2),4), apja(Miklós,Péter) → Miklós apja Péter

összetett mondatok (wff = well-formed formula): mondatok logikai műveletekkel összekötve; pl.: ha P és Q mondat, akkor a ¬P, P ∧ Q, P ∨ Q, P ⇒ Q, P ⇔ Q kifeje-

zések is mondatok.

Page 143: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 6/29

kvantifikáció: ha P egy mondat és x egy változója, akkor

- univerzális kvantifikáció: → (∀x) P = minden x -re P is teljesül; - egzisztenciális kvantifikáció: → (∃x) P = van olyan x, melyre P igaz,

is mondat. Értelmezés: (∀x) → minden/bármely x

(∃x) → létezik/van olyan x

(∀x), vagy (∃x) kvantor használatakor, ha a P mondatban szerepel az x változó, akkor azt minden előfordulásában kötöttnek tekintjük. Ha P mondatban más változó is előfordul, pl. y is, és nem fordul elő más kvantor, akkor az y minden előfordulását szabadnak tekintjük. Például: Q = (∀x)[P(x,y) ∨ (∃y)R(x,y)] mondatban

P(x,y) -ban x kötött, y szabad változó,

R(x,y) -ban x kötött, y kötött változó.

Page 144: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 7/29

b.) Szemantika (mi a jelentése a mondatoknak?):

Interpretáció: megfeleltetés a formális nyelv és a világ elemei és azok kapcso-latai között. (Meghatározzuk a vizsgált elemek halmazát.)

1. term-ek az objektumokra utalnak:

Világ Reprezentáció Objektumok, egyedek Term-ek

Miklós, a, b Konstansok: Miklós, a, b, 1, 99 Változók: x,y,z Függvények: Miklós kora kor(Miklós) → pl.: kor(Miklós) = 25 Miklós apja apa(Miklós) → pl.: apa(Miklós) = Péter Miklós tolla toll(Miklós)

2. mondatok kiértékelése:

- predikátumok: állítások, melyek vagy igazak, vagy hamisak.

- összetett mondatok: az itéletlogika szabályai szerint, a részmondatok igaz-ságértéke alapján kiértékelve.

Page 145: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 8/29

- kvantifikáció

∀x P akkor és csak akkor igaz, ha P x minden lehetséges értékére igaz.

pl.: ∀x delfin(x) ⇒ emlős(x)

∃x P akkor és csak akkor igaz, ha x-nek van olyan értéke, amire P igaz.

pl.: ∃x emlős(x) ⇒ vízben-él(x) - kvantorok azonosságai:

∀x P ≡ ¬∃x ¬P ¬∀x P ≡ ∃x ¬P ∀x ¬P ≡ ¬∃x P ¬∀x ¬P ≡ ∃x P

- összetett mondatok: részmondatok igazsága alapján, az összekapcsoló logi-

kai műveleti előírásoknak megfelelően kiértékelve.

pl.: fölötte(x,y) ⇔ rajta(x,y) ∨ ∃w [rajta(x,w) ∧ fölötte(w,y)]

(x akkor, és csak akkor van y fölött), ha: vagy (x rajta van y-on), vagy (van olyan w, hogy x rajta van w-n és w y fölött van).

Page 146: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 9/29

Világ Reprezentáció Obj-ok kapcsolata, tulajdonsága Mondatok/Predikátumok

Miklós kertész. foglalkozása(Miklós,kertész)

Miklósnak van egy zöld sísapkája. birtokol(Miklós,sísapka) ∧ színe(sísapka, zöld)

Miklós látta Sárát. látta(Miklós,Sára)

Miklós látta Sára apját. látta(Miklós,apa(Sára)) ∃x apja(Sára,x) ∧ látta(Miklós,x)

Minden kertész szereti a napot. ∀x kertész(x) ⇒ szereti(x,Nap)

3. reprezentációs képesség → miért erős az elsőrendő logika kifejezőképessége?

- tagadás

¬kertész(Sára) ¬szereti(Máté,Nap) ¬rajta(A,B)

- részleges tudás → diszjunkció alkalmazása

huga(Miklós, Margit) ∨ huga(Miklós, Zsófi)

Page 147: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 10/29

- részleges tudás → meghatározatlanság

∃ lehetővé teszi, hogy konkrét objektumokra való utalások nélkül tegyünk állításokat

∃x huga(Miklós, x) Miklósnak van húga Kielégíthetőség 1. Kielégíthető egy mondat, ha van olyan interpretációja, amelyben a mondat igaz.

pl.: (∃x) emlős(x) ⇒ vízben-él(x) 2. Érvényes egy mondat, ha minden interpretációjában igaz.

pl.: (∀x) P(x) ∨ (∃y) ¬P(y) 3. Kielégíthetetlen egy mondat, ha minden interpretációjában hamis.

pl.: (∀x) P(x) & (∃y) ¬P(y)

Page 148: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 11/29

c.) Következtetés az itélet- és elsőrendű logikában Az elsőrendű logika lehetőségei az itéletlogika következtetési szabályait bővítik ki. Axiómák megfogalmazása:

• axióma: adott, alapvető tény egy adott területről; • tétel: állítás, amely következtetési eljárások segítségével bizonyítandó.

Következtetési eljárás:

következtetési szabályok segítségével, adott mondatokból újabb (ún. jól for-mált - wff = well-formed formula) mondatokat hoz létre.

• tétel: a származtatott mondat, • bizonyítás: a következtetési szabályok alkalmazásának sorozata.

Biztos és teljes következtetés: → dedukció

• biztos (egy következtetési szabály), ha csak a következményeket állítja elő.

ha TB |— q, akkor TB |= q

Page 149: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 12/29

ellenpélda: abdukció → félrevezető lehet!

p ⇒k q ----------------------------------

q ⇒d p

Például: esik ⇒k vizes-a-fű (kauzális / oksági következtetés) vizes-a-fű ⇒d esik (diagnosztikai következtetés)

De: baj van a kauzális (oksági) és a diagnosztikai szabályok kölcsön-hatása, kapcsolata esetén. Pl., ha

locsoló-bekapcsolva ⇒k vizes-a-fű; és ha vizes-a-fű ⇒d esik

ebből következne, hogy ha

locsoló-bekapcsolva ⇒ esik ami persze nem feltétlenül igaz.

• teljes a következtetési szabályok egy halmaza, ha az összes következményt

elő tudja állítani

ha TB |= q, akkor TB |— q

Page 150: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 13/29

Következtetési szabályok:

Az itéletlogikai következtetési szabályok az elsőrendű logikában is alkalmazhatók. Az itéletlogikai szabályok (azonosságok) segítségével a mondatokból egyes ele-meket kiküszöbölhetünk, illetve bevezethetünk. Pl.:

• implikáció kiküszöbölése (modus ponens),

• implikáció bevezetése:

Ha feltételezzük, hogy P igaz és ennek segítségével ki tudjuk mutatni, hogy Q is igaz, akkor a P ⇒ Q implikáció [ha P igaz és ebből következően Q is igaz] minden feltétel nélkül igaz (de nem Q!) és ezzel az implikációval a TB bővíthető.

Például, legyen a TB az alábbi:

esik ⇒ vizes-a-fű vizes-a-fű ⇒ nem-kell-locsolni

Ha feltételezzük, hogy esik, és ezzel kiegészítjük a TB-t:

esik ⇒ vizes-a-fű vizes-a-fű ⇒ nem-kell-locsolni esik

Page 151: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 14/29

akkor a következőkre juthatunk:

(1) esik, esik ⇒ vizes-a-fű ====================================================================

vizes-a-fű

(2) vizes-a-fű, vizes-a-fű ⇒ nem-kell-locsolni =============================================================================================================================

nem-kell-locsolni

Tehát, 'nem-kell-locsolni', azaz a [ha 'esik', akkor 'nem-kell-locsolni'] követ-keztetés, implikáció helyes.

(3) nem-kell-locsolni ========================================================================

esik ⇒ nem-kell-locsolni

Ezek után az 'esik' törölhető, míg az 'esik ⇒ nem-kell-locsolni' implikáció hozzáadható a TB-hoz.

Page 152: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 15/29

• reductio ad absurdum ("igazolás cáfolat révén")

Feltesszük, hogy az igazolandó állítás tagadottja, ¬P igaz; és ha ennek segít-ségével ellentmondást tudunk kimutatni, akkor P igaz.

Például, a TB elemei a következők:

esik ⇒ vizes-a-fű ¬vizes-a-fű

Tegyük fel, hogy 'esik' és tegyük hozzá a TB-hoz. Ekkor

(1) esik, esik ⇒ vizes-a-fű ====================================================================

vizes-a-fű

(2) vizes-a-fű, ¬vizes-a-fű ==================================================================

⊥ Tehát ellentmondásra jutottunk, azaz

(3) így állítható, hogy '¬esik'

Page 153: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 16/29

Tulajdonságok:

• biztos és teljes (ítéletkalkulus, elsőrendű logika),

• "természetes" az emberi gondolkodás számára,

• nagy elágazási tényező:

- több szabály igen sokféle módon alkalmazható, - automatikus következtetés (tételbizonyítás) számára nem alkalmas.

d.) Következtetés az elsőrendű logikában kvantorokkal Kérdés: miként helyettesíthetők a változók egyedi objektumokra utaló term-ekkel?

Cél: → visszavezetni a problémát itéletlogikai szintű következtetésekre.

Helyettesítés (szubsztitúció):

• jelölése subst(Θ,α), ahol a Θ=v1/t1,...,vn/tn helyettesítési listát alkalmaz-zuk az α mondat változóira, azaz például:

subst(x/Tom,y/Jerry, megfogja(x,y)) = megfogja(Tom,Jerry)

Page 154: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 17/29

Helyettesítési szabályok (együtt alkalmazhatók a korábbi szabályokkal):

Cél: kvantorok kiküszöbölése, illetve bevezetése.

• ∀ kiküszöbölése ∀y megeszi(Garfield,y) ========================================================================

megeszi(Garfield,hal25)... megeszi(Garfield,kacsa2)

• ∃ bevezetése

megeszi(Garfield,hal25) =========================================================================

∃x megeszi(Garfield,x)

• ∃ kiküszöbölése

∃x megeszi(Garfield,x) ===================================================================================================

megeszi(Garfield,valami-ennivaló)

Nevet ad egy olyan objektumnak, ami kielégíti a mondatban megfogal-mazott állítást (ún. Skolem-konstans).

Page 155: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 18/29

• általánosított modus ponens

Ha - p1',p2',...,pn' a TB -ban létező elemi (atomi) mondatok, - p1,p2,....,pn; q az implikáció elemi (atomi) mondatai és

létezik egy - subst (Θ,pi') = subst (Θ,pi) ∀i-re érvényes helyettesítés,

akkor p1',p2',...,pn'; (p1 ∧ p2 ∧ ... ∧ pn ⇒ q)

subst (Θ,q) 4-17. példa: premisszák:

macska (Garfield) szendvicsevő (Garfield) ∀x macska (x) ∧ szendvicsevő (x) ⇒ kövér (x)

helyettesítés: Θ = x/Garfield

következményre/konklúzióra alkalmazva:

subst (x/Garfield,kövér (x)) = kövér (Garfield)

Page 156: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 19/29

• egyesítés (unifikáció)

A következtetési eljárásokhoz szükséges megtalálni azt a Θ helyettesítési listát, amellyel a logikai kifejezéseket/mondatokat látszólag azonossá tehet-jük.

→ egyesítés, azaz a p, q mondatokhoz előállítani a Θ helyettesítési listát, ha ilyen létezik:

uni(p,q) = Θ, úgy, hogy subst(Θ,p) = subst(Θ,q) ha az egyesítendő mondatokban azonos változónevek találhatók, akkor szükséges lehet átnevezni, azaz különbözővé tenni azokat;

példák az egyesítésre:

uni(P(a,x),Q(a,b)) → Θ =x/b

uni(P(a,x),Q(y,b)) → Θ= y/a,x/b

uni(P(a,x),Q(y,f(y))) → Θ= y/a,x/f(a)

Page 157: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 20/29

• általánosított rezolúció

Rezolvens előállításának itéletlogikai szabálya: (P1 ∨ P2 ∨ ... ∨ Pn), (¬P1 ∨ Q2 ∨ ... ∨ Qm) → (P2 ∨ ... ∨ Pn ∨ Q2 ∨ ... ∨ Qm) → modus ponens felfogható úgy is, mint egy egyszerű rezolúció:

(α ⇒ β, α) = (¬α ∨ β, α) → (β)

általánosítva: → a Pi, Qj mondatok változókat tartalmazhatnak, így

= a komplementer Pi, ¬Qj elemeket egyesíteni (unifikálni) kell, azaz meg kell határozni az uni(Pi, ¬Qj) = Θ helyettesítési listát, majd

= az így kapott helyettesítési listát alkalmazni kell a rezolvensre;

tehát

(P1 ∨ P2 ∨ ... ∨ Pi ∨ ... ∨ Pn), (Q1 ∨ Q2 ∨ ... ∨ ¬Qj ∨ ... ∨ Qm) →

subst(Θ, (P1 ∨ ... ∨ Pi-1 ∨ Pi+1 ∨ ... ∨ Pn ∨ Q1 ∨ ... ∨ Qj-1 ∨ Qj+1 ∨... ∨ Qm))

Page 158: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 21/29

• bizonyítás a tagadás cáfolatával

Kielégíthetetlenség kimutatása: ha igazolandó, hogy W következménye az ellentmondásmentes mondatokból álló TB-nak, azaz TB |= W, akkor meg kell mutatni, hogy a (TB ∪ ¬W) kielégíthetetlen és így a rezolúciós eljárás ellentmondáshoz vezet. Lépések: • cél (W) tagadása és a TB-hoz való hozzáadása,

• kiindulási forma: normál alak (klóz), • ellentmondás kimutatása rezolúcióval.

A TB mondatainak klóz formában történő felírása nagyon gyakran ún. határozott klóz (itéletlogikában: Horn-klózok) formájában oldható meg. Ezekre jellemző, hogy olyan literálok (elemi (atomi) mondatok, kijelentések, változók) logikai 'vagy' művelettel összekapcsolt diszjunkciója, amelyek közül csak egy pozitív, azaz nem tagadott literál.

Page 159: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 22/29

• rezolúciós stratégiák

Probléma: nem meghatározott az eljárás: - több egyesítő helyettesítes esetén melyiket kell választani?

befoglaló klózok elhagyása: subst(Θ,Q) ⊃ subst(Θ,P) - melyik két klóz-ra kell alkalmazni a szabályt?

tautológiák kiküszöbölése: pl.: P(f(A)) ∨ ¬P(f(A))

Szűkítő feltételek a rezolválandó párok kiválasztására: 1. szélességben-először keresés: csak a klózok kiválasztási sorrendjét ha-

tározza meg - első szintű klóz: axiómák és a cél tagadása, - az összes n-edik szintű klózt előállítja, mielőtt az (n+1). szintűeket;

2. támogató halmaz (tagadott célállításból származó klózok) stratégiája: - legalább az egyik szülő a cél tagadása, vagy annak egyik leszárma-

zottja legyen (célirányos bizonyítás) 3. lineáris rezolúció

- legalább az egyik szülő az alaphalmazból, vagy a másik szülő elődei közül származzon;

Page 160: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 23/29

4. input rezolúció: - legalább az egyik szülő az alaphalmazból választandó;

5. egységklóz rezolúció (egyetlen literálból áll): - legalább az egyik szülő egységklóz (csökken a rezolvens mérete).

• Miként automatizálható a következtetés folyamata?

Következtetés mint keresés:

- kiindulási állapot = axiómák konjunkciója

- operátorok = következtetési szabályok

- cél állapot = bizonyítandó tétel

Probléma: túl nagy elágazási tényező

- sok és sokféle módon alkalmazható következtetési szabály - ismert tények kombinálása: exponenciális növekedés

- kiút: más, jobb keresési tér egyetlen, általánosabb következtetési sza-bállyal.

Page 161: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 24/29

e.) Példák 4-18. példa: Egy szinész tervezett elfoglaltságát az alábbi TB mondatai írják le. A

kérdés az, hogy van-e ütközés az egyes elfoglaltságok időpontjai miatt?

(1) előadás(kedd) ∨ előadás(péntek) e(k) ∨ e(p) (2) vívóedzés(kedd) v(k) (3) vívóedzés(péntek) v(p) (4) előadás(kedd) ∧ vívóedzés(kedd) ⇒ ütközés e(k) ∧ v(k) ⇒ ü (5) előadás(péntek) ∧ vívóedzés(péntek)⇒ ütközés e(p) ∧ v(p) ⇒ ü

Klóz alakban, kiegészítve a feltételezéssel, hogy nincs ütközés (¬ü) (1) e(k) ∨ e(p) (2) v(k) (3) v(p) (4) ¬e(k) ∨ ¬v(k) ∨ ü (5) ¬e(p) ∨ ¬v(p) ∨ ü (6) ¬ü

bizonyítandó: ¬ü ellentmondásra vezet, azaz ütközés lesz!

Page 162: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 25/29

Rezolválandó párok: (2), (4) v(k); (¬e(k) ∨ ¬v(k) ∨ ü) → (7) ¬e(k) ∨ ü (3), (5) v(p); (¬e(p) ∨ ¬v(p) ∨ ü) → (8) ¬e(p) ∨ ü (1), (7) (e(k) ∨ e(p)); (¬e(k) ∨ ü) → (9) e(p) ∨ ü (8), (9) ¬e(p) ∨ ü; e(p) ∨ ü → (10) ü

(6), (10) ¬ü; ü ellentmondás! → tehát ütközés lesz!

4-19. példa: Adott az alábbi mondatokból álló TB. Kérdés: igaz-e a (4)-dik állí-

tás?

(1) A macskák szeretik a halat. ∀x macska(x) ⇒ szereti(x,hal)

(2) A macskák mindent megesznek, amit szeretnek. ∀x∀y macska(x) ∧ szereti(x,y) ⇒ megeszi(x,y)

(3) Cirmos egy macska. macska(Cirmos)

(4) Cirmos megeszi a halat. megeszi(Cirmos,hal)

Page 163: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 26/29

Megoldás: Tegyük fel, hogy a (4)-dik állítás nem igaz: ¬megeszi(Cirmos, hal)

A módosított TB és annak tömörebb formájú, határozott klóz alakja (a kvantorok elhagyásával):

(1) ∀x macska(x) ⇒ szereti(x,hal) ¬m(x) ∨ sz(x,hal) (2) ∀x∀y macska(x) ∧ szereti(x,y) ⇒ megeszi(x,y) ¬m(x) ∨ ¬sz(x,y) ∨ e(x,y) (3) macska(Cirmos) m(Cirmos) (4a) ¬megeszi(Cirmos, hal) ¬e(Cirmos,hal)

(1) ¬m(x) ∨ sz(x,hal) (2) ¬m(x) ∨ ¬sz(x,y) ∨ e(x,y)

Θ= x/Cirmos, y/hal helyettesítés

(5) ¬m(Cirmos) ∨ e(Cirmos,hal) (3) m(Cirmos)

(6) e(Cirmos,hal) (4a) ¬e(Cirmos,hal)

⊥ (üres klóz, ellentmondás! → tehát a (4)-dik mondat igaz)

Page 164: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 27/29

4-20. példa: Adott egy TB az alábbi mondatokkal. Igazolható-e a (4)-dik állítás?

(1) Bárki, aki tud olvasni (R), az tud írni (W).

∀x [R(x) ⇒ W(x)] ¬R(x) ∨ W(x) (2) A delfinek(D) nem tudnak írni.

∀x [D(x) ⇒ ¬W(x)] ¬D(y) ∨ ¬W(y) (3) Van olyan delfin, amelyik intelligens(I).

∃x [D(x) ∧ I(x)] (3a) D(Alfa) (3b) I(Alfa)

Az ÉS művelet miatt, a részmondatok mint tényállítások külön-külön is 'igaz' értékűek és (x/Alfa) helyettesítéssel példányosíthatók, azaz egy konkrét egyedre vonatkoznak.

Bizonyítandó: (4) Van aki intelligens, de nem tud olvasni.

∃x [I(x) ∧ ¬R(x)] tagadva: (4a) ¬I(z) ∨ R(z)

Page 165: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA05- 28/29

Megoldás:

(1) ¬R(x) ∨ W(x) (2) ¬D(y) ∨ ¬W(y) (3a) D(Alfa) (3b) I(Alfa) (4a) ¬I(z) ∨ R(z) – rezolúciós feltétel Levezetés:

helyettesítés

(5) (3b),(4a) I(Alfa); ¬I(z) ∨ R(z) Θ= z/Alfa: R(Alfa) (6) (1),(5) ¬R(x) ∨ W(x); R(Alfa) Θ= x/Alfa: W(Alfa) (7) (2),(6) ¬D(y) ∨ ¬W(y); W(Alfa) Θ= y/Alfa: ¬D(Alfa)

(8) (3a),(7) D(Alfa); ¬D(Alfa) ⊥ (üres klóz, ellentmondás)

Tehát az eredeti (4) ∃x [I(x) ∧ ¬R(x)] állítás igaz. Pl.: x = 'Alfa'-ra.

Page 166: Mesterséges intelligencia

GÁBOR DÉNES FŐISKOLA

INFORMATIKAI INTÉZET

MESTERSÉGES INTELLIGENCIA

6. ELŐADÁS (előadásvázlat)

DR. CSERNY LÁSZLÓ főiskolai tanár

BUDAPEST, 2018/2019-2

Page 167: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 2/32

TÉMAKÖRÖK

Bevezetés

1. Mesterséges intelligencia fogalma, előzmények. 2. Alapproblémák, a problémamegoldás feltételei

3. Keresési eljárások (informált, nem-informált keresések)

4. Tudásreprezentációs módszerek, következtetés 4.1. Célok, lehetőségek

4.2. Logikai alapú megjelenítés és következtetés 4.3. Szabály-alapú megjelenítés és következtetés

4.4. Keret-alapú megjelenítés és következtetés

4.5. Eset-alalpú megjelenítés és következtetés 5. Bizonytalanságkezelés (valószínűségi, fuzzy rsz.)

6. Gépi tanulás módjai (statisztikus, neurális hálók, stb.)

7. Intelligens rendszerek

Page 168: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 3/32

4.2. Logikai alapú megjelenítés és következtetés 4.2.1. Fogalmak értelmezése

4.2.2. Logikai rendszerek 4. előadás anyaga

4.2.3. Itéletlogika (nulladrendű logika)

4.2.4. Elsőrendű logika (predikátum logika) 5. előadás anyaga

4.2.5. Logikai programozási nyelv - PROLOG Logikai alapú megjelenítés programozási nyelve (Prolog = Programming Logic):

→ A. Colmerauer, 1972 Alapja: elsőrendű logika egyszerűsített szerkezetekkel (Horn-klóz) Nem a feladatmegoldás algoritmusát adjuk meg, hanem a megoldandó feladatot írjuk le tényállításokkal és kapcsolatokkal/szabályokkal/ → deklaratív programo-zás.

Page 169: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 4/32

Tudásterület leírása - feltétel nélküli (→ tényállítás), - feltételes állításokkal (→ szabály).

A megoldandó feladat kérdésként (célállításként) fogalmazható meg. A megoldó eljárás: korlátozott tételbizonyító eljárás

→ szemléletmódja: procedurális, visszalépéses (back-tracking) algoritmusra épülő,

→ felhasználó számára követhetőbb. a.) Szintaktika Elemei: konstansok: pl.: a, b, istván, péter, 'Budapest', ...

kisbetűvel kezdődik, vagy '...' jelek közé zárva;

változók: pl.: X, Y, Apa, Gyerek, ... nagybetűvel kezdődik, tetszőleges értéket vehet fel;

mondatzáró pont: . pont; a mondatokat ponttal kell zárni;

Page 170: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 5/32

tényállítás: feltétel nélküli mondat (igazságértéke van), pl.: apja(imre, istván). → 'Imre apja István'

apja(istván, géza). szabály: feltételes mondat /akkor, ha → implikáció/ (igazságérté-

ke van), pl.: akkor nagyapja(Unoka, Nagyapa) ha

apja(Unoka, Apa) és apja(Apa, Nagyapa).

nagyapja(Unoka, Nagyapa):- apja(Unoka, Apa), apja(Apa, Nagyapa).

szabályok jellemzői:

a predikátumoknak meghatározott számú argumentuma van szulei(Gyermek, Apa, Anya):- lanya(Apa, Gyermek),

felesege(Apa, Anya). szulei(Gyermek, Apa, Anya):- fia(Apa, Gyermek), felesege(Apa,

Anya). gyermeke(X, Gyermek):- szulei(Gyermek, Apa, X). gyermeke(X, Gyermek):- szulei(Gyermek, X, Anya). szuloje(Gyermek, Szulo):-gyermeke(Szulo, Gyermek).

Page 171: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 6/32

ÉS kapcsolat közös argumentummal

nagyapja(Unoka, Nagyapa):- apja(Unoka, Apa), apja(Apa, Nagyapa).

nagyapja(Unoka, Nagyapa):- anyja(Unoka, Anya), apja(Anya, Nagyapa).

nagyapja(Unoka, Nagyapa):- szuloje(Unoka, Szulo), apja(Szulo, Nagyapa).

rekurzív definíció

osapja(Osapa,X):- apja(Osapa,X). osapja(Osapa,X):- apja(Osapa,Y), osapja(Y, X). osapja(Osapa,X):- apja(Osapa,Z), osapja(Z, Y), osapja(Y, X).

ose(Szemely, Os):- szulei(Szemely, Os). ose(Szemely, Os):- szulei(Szemely, X), ose(X, Os).

Page 172: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 7/32

kérdés, vagy cél(állítás) → kiegészítendő kérdő mondat pl.: Ki Imre apja?

?- apja(imre, Valaki) válasz: → Valaki=istván

kérdés, vagy cél(állítás) → eldöntendő kérdő mondat

pl.: Géza Imre nagyapja?

?- nagyapja(imre, géza) válasz: → igen

kérdés, vagy cél(állítás) → lekérdező /kiegészítendő/ kérdő mondat

pl.: Kik vannak unoka-nagyapa kapcsolatban?

?- nagyapja(X,Y) válasz: → X= imre

Y= géza

Page 173: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 8/32

b.) Végrehajtás Elemei: mintaillesztés: két kifejezés akkor illeszthető, ha a kifejezések változói-

hoz találunk olyan helyettesítést, hogy a két kifejezés azonos legyen.

pl.: 1. kifejezés: X 2. kifejezés: 5

helyettesítés: X ← 5 eredmény: 5

pl.: 1. kifejezés: f(g(a)+U) 2. kifejezés: f(V+b)

helyettesítés: U ← b; V ← g(a) eredmény: f(g(a)+b)

Illesztés lehetőségei: - két változó mindig illeszthető, - egy változó és egy konstans mindig illeszthető, - két konstans akkor illeszthető, ha megegyeznek.

A mintaillesztéssel két elemi állítást illesztünk: az egyik a célállítás, a másik egy szabály baloldala, vagy egy tényállítás. Illesztéssel választha-tó ki az alkalmazandó szabály, illetve az illesztéssel történik a paramé-terátadás, a helyettesítés.

Page 174: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 9/32

A Prolog a szabályokat, a tényállításokat a forráslistában megadott sor-rendben illeszti. A szabály törzs részében a helyettesítés/egyesítés bal-ról jobbra történik:

ose(Os, Szemely) :- apja(Os, Szemely). ose(Os, Szemely) :- apja(Os, X),ose(X, Szemely).

visszalépéses keresés: a szabályok sorozatos illesztése során, ha a

végrehajtási/keresési/ gráfban elakadunk, akkor egy lépéssel visszalépünk és új végrehajtási ágon folytatjuk a szabályok kivá-lasztását.

következtetési eljárás: - modus ponens,

- rezolúció.

Page 175: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 10/32

Előny, hátrány

- előny: = program olvashatósága, = könnyű módosíthatósága;

- hátrány: = nem minden probléma írható le logikai formában,

= nem tudja kezelni a bizonytalanságot, = hiányos ismereteket nem tudja kezelni, = a következtetés vezérlése nem lehetséges, = bizonyos részeket, csak procedurális módon lehet megol-

dani.

Page 176: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 11/32

4-21. példa:* Adott az alábbi családfa szerinti család. Milyen következtetési lépé-sekben kapjuk meg a Prolog program szerinti választ a következő kér-désre: Kinek ki a gyereke? → ?- gyermeke(X, Gyermek)

Megoldás:

Lekérdezés

?-gyermeke(X, Gyermek).

X = terez,

Gyermek = ilona

More (Y/N): y X = ilona

Gyermek = szilvia

More (Y/N): y

…..

X= jozsef

Gyermek = vilmos

?-

Károly Teréz

Ilona

Zsuzsanna

György István Gizella

Imre

Vilmos

lánya fia

felesége

József Szilvia

Program

/*Tenyek*/ felesege(karoly, terez). lanya(karoly, ilona). felesege(istvan, gizella). fia(istvan, imre). fia(istvan, jozsef). felesege(gyorgy, ilona). lanya(gyorgy, szilvia). felesege(jozsef, szilvia). fia(jozsef, vilmos). lanya(jozsef, zsuzsanna).

/*Szabalyok*/ ferje(Feleseg, Ferj) :-felesege(Ferj,Feleseg). szulei(Gyermek, Apa, Anya) :- lanya(Apa, Gyermek), felesege(Apa, Anya). szulei(Gyermek, Apa, Anya) :- fia(Apa, Gyermek), felesege(Apa, Anya). gyermeke(X, Gyermek) :- szulei(Gyermek, Apa, X). gyermeke(X, Gyermek) :- szulei(Gyermek, X, Anya). apja(Gyermek, Apa):- szulei(Gyermek, Apa, X). anyja(Gyermek, Anya) :- szulei(Gyermek, X, Anya).

*Seebauer M.: Mesterséges intelligencia, DF, 2005 (ea)

Page 177: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 12/32

A program következtetési lépései:

?- gyermeke(X, Gyermek).

gyermeke(X, Gyermek) :- szulei(Gyermek, Apa, X).

szulei(Gyermek, Apa, X).

szulei(Gyermek, Apa, Anya) :- lanya(Apa, Gyermek), felesege(Apa, Anya).

lanya(Apa, Gyermek), felesege(Apa, X).

felesege(karoly, terez)

Apa = karoly

Gyermek = ilona

lanya(karoly, ilona).

X=Anya

felesege(karoly, X).

X = terez

X = terez, Gyermek = ilona

More (Y/N): y

gyermeke(X, Gyermek) :- szulei(Gyermek, X, Anya).

szulei(Gyermek, Apa, Anya) :- fia(Apa, Gyermek), felesege(Apa, Anya).

lanya(gyorgy, szilvia). lanya(jozsef, zsuzsanna).

True

Elérhető Prolog változatok (ILIAS-ban is): = SWI-Prolog Language

http://www.swi-prolog.org = ADA Prolog → egyszerű DOS alapú

Page 178: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 13/32

4.3. Szabály-alapú megjelenítés és következtetés Szabály-alapú reprezentáció és következtetés

- korlátozottabb nyelvű, mint az elsőrendű logika, - következtetési mechanizmusa kötöttebb, - hatékony és egyértelmű, értelmezhető következtetések → szemben pl. a

rezolúcióval, - az emberi döntések kialakulásához közeli reprezentáció.

Szabálybázis:

= ha <feltétel> akkor <következmény> típusú szabályok (implikáció: ⇒), vagy

= akkor <következmény> ha <feltétel> típusú szabályok alkotják.

Értelmezése: A <következmény> inkább javaslat egy akció végrehajtásá-ra, mintsem egy egyszerű logikai állítás. (reflex ágens!)

azaz, pl.: (defrule <szabály-név> ha <bármikor ezen feltételek fennállnak>

⇒ akkor <hajtsd végre ezeket az akciókat> enddef)

Page 179: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 14/32

Adatbázis: pozitiv ('igaz' értékű) elemi tényállítások halmaza

Rögzíti mindazon tényeket, amelyeket a probléma megoldásának pillanatá-ban a problémával kapcsolatosan a világról ismerünk. Zárt világot feltételezünk, azaz minden állítás, amelyik nincs az adatbázis-ban, hamisnak tekintendő.

Működés:

Szabály: ha <feltétel> ⇒ <akció>

feltétel:

- adatbázisbeli tények, tény minták, - változók, - logikai kapcsolatok (ÉS, VAGY), ill. tagadás (NEM);

akció:

- (új) elemi tények hozzáadása, ill. (a hamissá vált tények) törlése, - mellékhatások (input/output), - procedurális eljárások.

Page 180: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 15/32

Például: RULE 4 IF tav*(fogy/100)>benzin IF <Feltételrész> THEN tankolni_kell THEN <Következmény> RULE 5 IF sebesseg>130 OR baleset_van IF <Feltételrész> THEN fekezni_kell THEN <Cselekvés>

<Feltételrész> = Feltétel1, Feltétel2, …, Feltételn

D AND E OR F ⇒ G

A AND B AND C ⇒ D

A

G

F

B C

D

E

Page 181: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 16/32

Következtetési módszerek:

- Célvezérelt, visszafelé haladó (backward chaining) következtetés: célálla-potból kiindulva, a cél érvényességét a szabályok, tények (TB) alkalmazá-sával visszavezeti már igazolt tényekre, vagy állításokra, azaz, hogy a cél elérhető valamely kezdő állapotból kiindulva. Ennek során, ha az adott cél (vagy közbülső részcél) még igazolandó, akkor a TB-ban keres egy olyan szabályt, melynek következmény részéhez illeszthető és vizsgálja a feltételrész (részcél) teljesülését mindaddig, amíg a feltételrész igazolást nyer.

- Adatvezérelt, előrefelé haladó (forward chaining) következtetés: egy kezdeti állapotból, illetve az azt meghatározó tényekből kiindulva, az ismert tények és a szabálybázis (TB) felhasználásával egy célállapotot határoz meg, illetve oda jut el. Eközben olyan szabályt keres, amelynek feltétel része a már ismert (vagy menetközben előállított) tények alapján igazolható és ezt a szabályt végre-hajtja, mindaddig amíg van ilyen szabály. Az előállított következmény lesz az elérhető cél.

Page 182: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 17/32

Célállítások szintje

Szabályok szintje

Agenda

Tudásbázis

Tényállítások

szintjeAdatbázis lekérdezés Felhasználói válasz Alapértelmezés

Seebauer M: Intelligens rendszerek, DF, 2008

Page 183: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 18/32

Mintaillesztés elemei: - feltétel oldali változók lekötése minden

lehetséges módon (kimeritő keresés), unifikáció

- a RETE mechanizmus alkalmazása: a szabalybázist hálóként reprezentálja, lekérdezéseket, egyesítéseket, cselek- véseket definiál, csak a változásokat frissíti (hatékony mintaillesztés)

Tüzelés:

A feltételi rész teljesülése (→ mintaillesztés) esetén a szabály végrehajtásra kerül. Bizonyos esetekben több szabály is tüzelhet → konfliktus feloldása:

választási, vezérlési stratégiák: - legfrissebb tény alapján, - legkritikusabb tényre illeszkedve, - legnagyobb prioritású tény alapján, - alapértelmezett (default) tény alapján.

Page 184: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 19/32

Előny, hátrány

előnyei: = könnyen megfogalmazható szabályok, = természetes gondolkodásnak megfelel, = modularitás: - minden szabály egy-egy tudásmorzsa,

- csoportosítható, rendszerezhető, = bizonytalanságkezeléssel kiegészíthető;

hátrányai: = végtelen ciklus kialakulási lehetősége (szabályok egymásra hi-

vatkoznak), = ellentmondások alakulhatnak ki, különösen sok szabály esetén, = javításkor, új szabályok beiktatásakor ciklikusság, vagy ellent-

mondásosság alakulhat ki, = nagy szabálybázis esetén nehéz racionalizálni, a redundanciát

elkerülni. = vezérlési előírások és a feladat szabályai keveredhetnek, = nincs egységes nyelv → nehezen vihető át a TB más gépre.

Page 185: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 20/32

4.4. Keret-alapú megjelenítés és következtetés Az emberi gondolkodás (emlékezet) általában tárgyakhoz, objektumokhoz kötő-dik. Az emberi gondolkodás összekapcsolja az objektumot annak jellemző tulajdonsá-gaival, viselkedésével, környezetével. A keret (frame) - információ tárolási alapegység, összefoglalja mind-azon tulajdonságokat, amelyek egy objektumra jellemzők, és azokat a relációkat, melyek ezt az objektumot más objektumokkal összekap-csolják.

Marvin Minsky Alapelemek Osztály(class) - Alosztály (subclass) → hierarchikus felépítés, → osztályhierarchia.

Példány (instance): valamely osztály-

hoz tartozó konkrét megvalósu-lás.

Page 186: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 21/32

Példa: alosztály - példány - magukban hordozzák a tulajdonságokat

és relációkat, - alapvető kapcsolatuk az öröklődés (a

tulajdonságok és a relációk öröklőd-nek a hierarchiában “felettük” (előttük) lévőtől,

- többszörös (több helyről való) öröklődés = több kapcsolat, = több szint

Technikai megvalósítás: keret (frame) → [objektum] egyedi azonosító slot: - tulajdonság érték:

default: örökölt értékek - reláció: speciális relációk

= osztály - alosztály (is-a) = osztály - példány (instance-of)

- démon: tulajdonságérték változá-sához kapcsolódó szabály, vagy eljárás (when changed, when needed).

Page 187: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 22/32

Példa

Osztály (defframe macska tulajdonság (szin) reláció (megeszi (eger madar)))

Alosztály (defframe hazimacska

hierarchia (is-a macska) tulajdonság (szin) tulajdonság (nev) reláció (megeszi (konzerv madar)))

Példány (defframe Mirci

hierarchia (instance-of hazimacska) tulajdonság (szin Feher) tulajdonság (nev Mirci) reláció (megeszi (konzerv kanari)))

Page 188: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 23/32

Kapcsolat a logikával (szemantika) osztály - alosztály (is-a) reláció → univerzális kvantálás

∀x hazimacska(x) ⇒ macska(x) alosztály - példány (instance-of) reláció

→ állítás egy egyedi objektum adott osztályba

tartozásáról hazimacska(Mirci)

slot - érték párok → nem egyértelmű a szemantika!

∀x hazimacska(x) ⇒ ∃y madar(y) ∧ megeszi(x,y) avagy

∀x,y hazimacska(x) ∧ madar(y) ⇒ megeszi(x,y)

Page 189: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 24/32

A keret-alapú reprezentáció

előnyei: - hétköznapi gondolkodáshoz illeszkedő reprezentáció, - ismeretek jól strukturálhatók, - esemény-vezérelt feldolgozás → démonok, - deklarativ és procedurális megoldások (démonok és 'when changed' típu-

sú metódusok) együttes használata, - hatékony következtetés az osztályok és az objektum példányok tulajdon-

ságairól, - implementáció: objektum-orientált programozás.

hátrányai: - nehézkesen módosítható, - kivételek kezelése nehéz; - új elemek beiktatása, - heurisztikus megoldások beépítése problémás.

Szakertői rendszerekben gyakran alkalmazott reprezentációs módszer, többnyire hibrid (szabály- és keretalapú) megoldásban.

Page 190: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 25/32

Problémák - 1 Konfliktus öröklődéskor: default értékek és több helyről való öröklődés

Honnan vegyük az értéket? Példa: (1) A marógépek vezérelt tengelyeinek száma általában 3, és státusza szabad. (2) A körasztallal ellátott marógép is maró-

gép. (3) A körasztallal ellátott marógép vezérelt

tengelyeinek száma 4. (4) A karbantartott berendezések státusza

foglalt. (5) TC 3 egy karbantartás alatt álló, körasz-

tallal ellátott marógép. Reprezentáció:

- konfliktus egyik öröklődési út mentén: vezérelt tengelyek száma? - konfliktus a többes öröklődés miatt: státusz?

Page 191: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 26/32

Problémák - 2 Monoton következtetés: default értékek hatása

monoton következtetés (|—): új tény hozzáadásával egy korábbi konkluzió nem válik hamissá (az ismert állítások halmaza monoton nő).

nem-monoton következtetés: bármit állítunk, megfordítható az igazsága.

Default értékek esetén a monoton következtetés nem működik. Példa: tudjuk, hogy újabb ismereteink:

∀x madar(x) ⇒ repul(x) ∀x pingvin(x) ⇒ ¬repul(x) madar(Pipi) ∀x pingvin(x) ⇒ madar(x)

pingvin(Pipi) tehát: mindebből az (is) következik: repul(Pipi) ¬repul(Pipi) Ellentmondás!

Page 192: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 27/32

4-22. példa: Írjuk fel a keret alapú tudásreprezentációnak megfelelő formában az alábbi ismeret tartalmakat. A notebookok olyan személyi számítógépek, amelyek mobilitásuk, kis súlyuk, kis terjedelmük miatt egyaránt rugalmasan alkalmazhatók a dön-téshozatal, a karbantartás és az oktatás területén.

Megoldás:

defframe notebook hierarchia is-a személyi számítógép reláció alkalmazható döntéshozatalban

alkalmazható oktatásban alkalmazható karbantartásban

tulajdonság helyhezkötöttség – mobil terjedelem – kicsi súly – kicsi

Page 193: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 28/32

4.5. Eset-alapú megjelenítés és következtetés Eset-alapú (case based) tudásreprezentáció és következtetés alapfeltevése:

amilyen volt a múlt, olyan lesz a jövő is, az "igazi" tapasztalat nehezen ragad-ható meg szabályok segitségével, azt többé-kevésbé általánosított esetek szö-vevényes kapcsolata alkotja.

Módszer: újra-felhasználás

- korábbi feladatok sikeres megoldásainak újra-felhasználása. Alkalmazása:

- a szakterület nehezen formalizálható szabályokkal, - az alkalmazás átfogó szabályokat igényel, - a szakterület eleve eset alapú (orvosi diagnosztika, jog), - túl sok szabály kellene a szakterület leírásához, - dinamikus változó szakterület, az új problémák megoldásának gyors leírása

szükséges.

Page 194: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 29/32

Esetleírás Nincs rögzített leírási mód, nehezen megoldható feladat az összehasonlíthatóság biztosítása. Legegyszerűbb mód: a probléma leírása (attributum - érték) párokkal. Példa:

- szabad szöveg:

A lézernyomtato maszatos oldalakat nyomtat ki. - numerikus (fuzzy):

(kora=öreg); (kora=8 és 10 év közé esik) (nyomtatott-oldalak-száma=15739)

- szimbolikus:

(típus=LaserWriter_III) (gyártó=Canon)

Page 195: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 30/32

Működése: Keresés: eset illesztés

- hasonlóság = közelség/távolság = attribútum típusonként más

és más módon mérhető - súlyozás

= egyetlen kombinált távolság - irányított kikérdezés és kontex-

tus-függő visszakeresés - a siker kulcsa: a jó indexelés

Választás: illeszkedő esetek közül a legalkalmasabb kiválasztása. Hasonlósági becslés: Mikor hasonló két eset?

Page 196: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA06- 31/32

Módosítás: - korábbi megoldás új körülményekhez való adaptálása, - nehéz automatizálni.

Előnyök, hátrányok

egyszerű létrehozni, használat közben javul;

de informális (nem egzakt) megoldás, csak az esetek által lefedett problémákat oldja meg.

Page 197: Mesterséges intelligencia

GÁBOR DÉNES FŐISKOLA

INFORMATIKAI INTÉZET

MESTERSÉGES INTELLIGENCIA

7. ELŐADÁS (előadásvázlat)

DR. CSERNY LÁSZLÓ főiskolai tanár

BUDAPEST, 2018/2019-2

Page 198: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 2/24

TÉMAKÖRÖK

Bevezetés

1. Mesterséges intelligencia fogalma, előzmények. 2. Alapproblémák, a problémamegoldás feltételei

3. Keresési eljárások (informált, nem-informált keresések)

4. Tudásreprezentációs módszerek, következtetés 5. Bizonytalanságkezelés (valószínűségi, fuzzy rsz.)

5.1. Bizonytalanság értelmezése, kezelése 5.2. Valószínűségi alapú bizonytalanságkezelés

5.3. Bizonyossági tényező

5.4. Fuzzy-rendszerek 6. Gépi tanulás módjai (statisztikus, neurális hálók, stb.)

7. Intelligens rendszerek

Page 199: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 3/24

5. BIZONYTALANSÁG KEZELÉS

5.1. Bizonytalanság értelmezése, kezelése A klasszikus logikában a kijelentések eldönthetően

• vagy igazak vagy hamisak. "A Föld a Nap körül kering." .vs. "A Nap a Föld körül kering."

A természetes nyelvekben a mondatok sokszor

• nem világosan megfogalmazottak → homályos tudás "Azt mondják, a Föld a Nap körül kering."

• nem meghatározottak → bizonytalan kijelentések

"A Föld lehet, hogy a Nap körül kering."

Ok: → alapvetően információhiány.

Page 200: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 4/24

A bizonytalanság okai:

• hiányos tudás − hiányos adat, − nem tökéletes ismeret, − csak később megismerhető adat;

• nem megbízható ismeret

− hibás, pontatlan adat

• nem meghatározható, bizonytalan állapot − észlelési, mérési bizonytalanság → valószínűségi megközelítés, − reprezentációs, nyelvi bizonytalanság → fuzzy megközelítés

• ellentmondásos tudás − igazságérték bizonytalansága, változása:

= vannak érvek mellette és ellenében is,

= időben változó lehet.

Bizonytalan tudás → bizonytalan következtetés!

Page 201: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 5/24

A bizonytalanság kezelésének megoldandó kérdései:

• hogyan reprezentáljuk a bizonytalan ismeretet?

• hogyan kezeljünk több, egymással logikai kapcsolatban lévő ismeretet?

• hogyan következtessünk bizonytalan ismeretek esetén? A bizonytalanság kezelésének módszerei:

• numerikus módszerek: − valószínűségelméleti megközelítés:

= klasszikus valószínűségszámítás, = Bayes-tétel (feltételes valószínűség alkalmazása), = Bayes-háló használata;

− Dempster-Shafer-féle megbízhatósági módszer (valószínűség fogalmá-nak kiterjesztése alapján);

− fuzzy-elvű megközelítés: laza/életlen halmazok elméletére épülő logika; − bizonyossági modell (heurisztikus megközelítés) alkalmazása;

• nem-numerikus, szimbólikus módszerek: − nem-monoton következtetési rendszer → feltételezések, hiedelmek

használata, ellentmondásos helyzetek feloldása

Page 202: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 6/24

5.2. Valószínűségi alapú bizonytalanság kezelés 5.2.1. Alapfogalmak, összefüggések Alap: az események bekövetkezési lehetőségének mértéke → valószínűsége Elemi esemény: valamely vizsgálat, kisérlet egy lehetséges kimenetele.

(Jelölése: A, B, C,...; A1, A2, A3,...., An; ) Eseménytér (Ω): egy adott kisérlet kapcsán figyelembe vehető elemi események

összessége. Ω = A1, A2, A3,...., An, n ≥ 0

Teljes eseménytér: ha Ai, Aj ∈ Ω, akkor Ai ∩ Aj ∈ Ω; Ai ∪ Aj ∈ Ω ∀i,j -re,

ha Ai ∈ Ω, akkor ~Ai = Ω \ Ai ∈ Ω, ∀i -re Teljes eseményrendszer: ha Ai, Aj ∈ Ω, akkor Ai ∩ Aj = ∅ ∀i≠j -re Események bekövetkezési valószínűsége: 0 ≤ P(Ai) ≤ 1 és Ai ∈ Ω, ∀i -re;

P(∅) = 0 és P(Ω) = 1

Page 203: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 7/24

Alapvető összefüggések: Jelölések: (A ∪ B) = A+B P(A ∪ B) = P(A+B)

(A ∩ B) = AB P(A ∩ B) = P(AB) ~A = Ω \ A P(~A) = 1 - P(A)

Ekkor: P(A+B) = P(A) + P(B) ha A és B egymást kizáró események, azaz

AB = ∅

Ha A1, A2, A3,...., An teljes eseményrendszer, azaz Ai Aj = ∅ ∀i≠j-re, akkor P(A1)+P(A2)+P(A3)+...+P(An) = P(Ω) =1 és P(Ai) + P(~Ai) = 1, mivel (Ai+~Ai) = Ω és Ai (~Ai) = ∅ P(A+B) = P(A) + P(B) - P(AB),

ha A és B nem egymást kizáró események.

Page 204: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 8/24

(Diszkrét) valószínűségi eloszlás: ha X egy valószínűségi változó, amely x1, x2, x3,..., xn értékeket vehet fel, szeretnénk ismerni ezek bekö-vetkezési valószínűségeit,azaz P(X=x1), P(X=x2), P(X=x3), ...,P(X=xn) értékeket. Pl.: ha az időjárás kapcsán 4-féle le-hetőséget ismerünk: napos, esős, havazásos, szeles időt, akkor a

P(idő=napos) = 0,6 P(idő=szeles) = 0,25 P(idő=esős) = 0,13 P(idő=havazásos) = 0,02

valószínűségek az egyes időjárási események nyári idő-szakra érvényes várható gyakoriságait, eloszlását adják meg.

Együttes valószínűségi eloszlás: több valószínűségi változó egyes lehetséges ér-

tékeinek együttes bekövetkezéseinek eloszlását adja meg. Az aktuális együttes valószínűség értékeket egy n-dimenzi-ós táblázatban jeleníthetjük meg.

Page 205: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 9/24

5-1. példa: legyen X=idő=jó, idő=rossz) és Y=hőmérséklet=magas, hőmérsék-let=alacsony két valószínűségi változó a lehetséges értékeikkel. (Jelöl-je: x az X első értékét (idő=jó), ~x a második értéket és y, ~y hasonló-képpen az Y esetében is) Ekkor az együttes események valószínűségei:

x ~x y P(xy) P((~x)y)

~y P(x(~y)) P((~x)(~y))

Legyen: P(x) = 0,7 és akkor P(~x) = 0,3; P(y) = 0,6 P(~y) = 0,4

ekkor a táblázat:

x ~x y 0,42 0,18

~y 0,28 0,12

A táblázat elemi eseményei egymást kizáró események, azaz teljes ese-ményrendszert alkotnak, ezért valószínűségeik összege 1 lesz. Így a 4 érték helyett elegendő csak 3 értéket megadni, mert a 4-dik már kiszá-mítható.

Page 206: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 10/24

5.2.2. Feltételes valószínűség, Bayes-szabály Kérdés: mennyiben befolyásolja egyik esemény bekövetkezését egy másik ese-

mény bekövetkezése, van-e kapcsolat közöttük? Ennek nagyságát a feltételes valószínűség adja meg, azaz az A ese-mény B eseményre vonatkozó P(A|B) feltételes valószínűsége azt fejezi ki, hogy ha a B esemény bekövetkezik, akkor mennyiben változik meg az A esemény bekövetkezésére vonatkozó korábbi bizonytalanságunk, valószínűségi becslésünk mértéke?

P(AB) P(A|B) = ----------

P(B) Felírható:

P(A|B)P(B) = P(AB) = P(B|A)P(A)

Bayes-szabály: Általánosított Bayes-szabály:

P(B|A)P(A) P(A|B) = ---------------

P(B) )A(P*)A|B(P

)A(P*)A|B(P)B|A(P

i

n

ii

iii

∑=

=

1

Page 207: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 11/24

5-2. példa: A korábbi példa adatait felhasználva, további eredményeket kapha-tunk. (X = időjárás, Y = hőmérséklet változó)

x ~x y 0,42 0,18

~y 0,28 0,12 Mi a valószínűsége annak, hogy az időjárás jó, feltéve, hogy a hőmér-séklet magas? P(X|Y) = P(XY)/P(Y) = 0,42/(0,42+0,18) = 0,42/0,6 = 0,7

Mi a valószínűsége annak, hogy a hőmérséklet magas, feltéve, hogy az időjárás jó?

P(Y|X) = P(XY)/P(X) = 0,42/(0,42+0,28) = 0,42/0,7 = 0,6

Mi a valószinűsége annak, hogy a hőmérséklet magas, feltéve, hogy az időjárás rossz? P(Y|~X) = P(~XY)/P(~X) = 0,18/(0,18+0,12) = 0,18/0,3 = 0,6

Page 208: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 12/24

5-3. példa: Egy autószervízben a javítások 8%-ban a hibajelenség az autó rossz gyorsulása (X) volt; a javítások 10%-ban olajcserét kellett végezni (Y) és az esetek 60%-ban, amikor olajcserét végeztek, a csere oka a rossz gyorsulás volt. Felírható:

P(X) = 0,08 P(Y) = 0,1 P(X|Y) = 0,6

Egy behozott autó tulajdonosa a rossz gyorsulásra panaszkodik. A sze-relő olajcserére gyanakszik. Mi a valószínűsége annak, hogy rossz gyorsulás esetén olajat kell cse-rélni?

Megoldás: Bayes-szabály alkalmazása: P(Y|X) = [P(X|Y)*P(Y)] / P(X) = [0,6*0,1]/0,08 = 0,06/0,08 = 0,75

Page 209: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 13/24

5-4. példa: Cél: olyan e-mail ellenőrző program készítése, amely képes a tarta-lom elemzése alapján meghatározni, hogy egy levél kereskedelmi célú spam-e, vagy sem? A program néhány jellemző szó előfordulását vizs-gálva, döntsön az e-mail besorolásáról (spam (S1=S), nem-spam (S2=~S)). A választott szavak például:

- árleszállítás → Z1 = true/false, - kiárusítás → Z2 = true/false, - [pénz]megtakarítás → Z3 = true/false.

Kérdés: mennyiben módosítják előzetes információnkat (azaz, annak

valószínűségét, hogy az e-mail spam (1500 db), illetve nem spam (4500 db)) a levelek további elemzésével kapott adatok?

Az elemzéshez az alábbi adatok adottak 6000 levél alapján:

előzetes elemzés részletes elemzés

összesen besorolás árleszállítás (Z1) [db]

kiárusítás (Z2) [db]

megtakarítás (Z3) [db]

1500 spam (S1) 825 300 1050 4500 nem spam (S2) 225 60 450 6000 összesen 1050 360 1500

Page 210: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 14/24

Feladat: a Bayes-tételre alapozva, olyan kérdésekre szeretnénk választ kapni, mint például: a) mi a valószínűsége, hogy a levél spam, ha a szövegben a 'kiárusítás'

szót találja a program, azaz P(S1|Z2) mekkora? b) mi a valószínűsége annak, hogy a levél nem_spam, ha a szövegben

a 'megtakarítás' szó fordul elő, azaz P(S2|Z3) mekkora? c) a levél spam-e, ha a szövegben előfordul az 'árleszállítás' és a 'kiáru-

sítás' szó, de nem található meg benne a 'megtakarítás' szó?

Megoldás: A táblázat adatai alapján kiszámíthatjuk:

- P(S1), P(S2) 'a priori' valószínűségeket; - S1, S2, Z1, Z2, Z3 együttes bekövetkezési valószínűségeit; - P(Z1), P(Z2), P(Z3), a választott szavak előfordulási valószínűségeit. P(S1) = 1500/6000 = 0,25 P(S2) = 4500/6000 = 0,75

P(Z1) = 1050/6000 = 0,175 P(Z2) = 360/6000 = 0,06

P(Z3) = 1500/6000 = 0,25

Page 211: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 15/24

Az együttes valószínűségeket és a további számított értékeket a következő táblá-zat tartalmazza.

'a priori' vsz. 'a posteriori' vsz.-ek P(Sj) 0,25 0,75

P(S1|Zi) P(S2|Zi) Σ P(Zi) S1 S2 0,175 Z1 0,1375 0,0375 0,786 0,214 1,0 0,060 Z2 0,0500 0,0100 0,833 0,167 1,0 0,250 Z3 0,1750 0,0750 0,700 0,300 1,0

P(Z1|Sj) 0,55 0,050 P(Z2|Sj) 0,20 0,013 P(Z3|Sj) 0,70 0,100 Σ 1,45 (!) 0,163 (!)

Az együttes valószínűségek (sárga cellák) értékei az adattáblázat adatai alapján számíthatók; például:

P(Z2S1) = 300/6000 = 0,05 P(Z3S2) = 450/6000 = 0,075

Page 212: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 16/24

Megjegyzés: ez az együttes valószínűségi táblázat nem felel meg a korábbi pél-dák táblázatainak, mivel itt a Zi változók nem alkotnak teljes eseményrendszert (egyszerre is bekövetkezhetnek mint események), nem függetlenek egymástól, így a táblázat elemeinek összege ≠ 1-gyel. A P(Zi|Sj) valószínűségek (halványkék cellák) azt fejezik ki, hogy mi annak a való-színűsége, hogy ha a levelet spam-nek(S1) itélte a program, akkor ennek az oka a Zi szó előfordulása volt.

A P(Sj|Zi) valószínűségek (zöld cellák) azt fejezik ki, hogy mi annak a valószínű-sége, hogy ha a levélben előfordul a Zi szó, akkor spam-nek(S1), vagy nem spam-nek(S2) kell tekinteni az e-mailt. Az együttes valószínűségek felhasználásával számíthatók a feltételes valószínű-ségek, a definició, vagy a Bayes-szabály alapján. Pédául:

P(Z2|S1) = P(Z2S1)/P(S1) = 0,05/0,25 = 0,2

Számunkra fontosabb az új információk (→ mérési adatok) alapján módosuló 'a priori' valószínűségek új értéke, az 'a posteriori' valószínűségek (zöld cellák), amelyeket általában a Bayes-szabály felhasználásával számítunk ki. Például:

Page 213: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 17/24

a) ha a levélben előfordul a 'kiárusítás' szó (Z2), akkor

P(S1|Z2) = [P(Z2|S1) P(S1)] / P(Z2) = 0,2*0,25/0,06 = 0,833 Tehát, a levél 0,83 valószínűséggel spam.

b) ha a levélben előfordul a 'megtakarítás' szó (Z3), akkor annak valószínűsége,

hogy az e-mail nem spam:

P(S2|Z3) = [P(Z3|S2) P(S2)] / P(Z3) = 0,1*0,75/0,25 = 0,3

Mi a program feladata?

A program megvizsgál minden új e-mailt, és annak függvényében, hogy talál-e a levélben 'tiltott' szót, beállítja a Z változókat "igaz", vagy "hamis" értékre, majd az előzőekben meghatározott értékekkel kiszámitja annak a valószínűségét, hogy spam-e, vagy sem. Általában a helyzet azonban nem ilyen egyszerű, azaz több feltétel is teljesülhet, vagy nem teljesülhet egyidejűleg. Például:

Page 214: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 18/24

c) ha a levél tartalmazza a “kiárusítás” és az “árleszállítás” szavakat, de nem tartalmazza a “megtakarítás” szót, akkor az a kérdés, hogy

P(S1| Z1Z2 ~Z3) és P(S2| Z1Z2 ~Z3)

mekkora lesz, azaz spam-nek, vagy nem_spam-nek kell-e tekinteni?

Felhasználva a Bayes-tételt, írható, hogy:

= annak a valószínűsége, hogy a levél spam: P(S1| Z1Z2 ~Z3) = [P(Z1Z2 ~Z3|S1)*P(S1)] / P(Z1Z2 ~Z3) = annak a valószínűsége, hogy a levél nem spam:

P(S2| Z1Z2 ~Z3) = [P(Z1Z2 ~Z3|S2)*P(S2)] / P(Z1Z2 ~Z3) Ha ismerjük ezek eredményét, akkor mondhatjuk, hogy amelyik nagyobb azt fogadjuk el és aszerint döntünk.

Page 215: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 19/24

Felhasználva az ún. 'naiv Bayes modell'-t, P(Z1Z2 ~Z3|S1), pontosabban a számláló felírható az alábbi módon (igazából ez csak független változók eseté-ben igaz):

P(Z1Z2 ~Z3|S1)*P(S1) = P(Z1|S1)*P(Z2|S1)*P(~Z3|S1)* P(S1) =

= P(Z1|S1)*P(Z2|S1)*(1-P(Z3|S1))* P(S1) =

= 0,55*0,2*(1-0,7)*0,25 = 0,00825 hasonlóképpen:

P(Z1Z2 ~Z3|S2)*P(S2) = P(Z1|S2)*P(Z2|S2)*P(~Z3|S2)* P(S2) =

= P(Z1|S2)*P(Z2|S2)*(1-P(Z3|S2))* P(S2) =

= 0,05*0,013*(1-0,1)*0,75 = 0,00043875

Mivel a nevezők azonosak, így P(S1| Z1Z2 ~Z3) értéke lesz a nagyobb, azaz a levél 'spam'.

A statisztikai adatok elemzésével kapott 'a posteriori' valószínűségeket mint 'a priori' valószínűségeket használva a továbbiakban, javíthatjuk a program működé-sét. Bizonyos időközönként elvégezve az elemzést, taníthatjuk a programot → gépi tanulás.

Page 216: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 20/24

5.2.3. Valószínűségi logika, következtetés A logikai mondatok, állítások valószínűségi eseményeknek tekinthetők és beszél-hetünk ezen állítások valószínűségéről, azaz ha p egy logikai mondat, akkor en-nek a mondatnak - ha semmi más információ nem áll rendelkezésre - a valószínű-sége:

P(p) = x Egy kijelentéshez rendelt: 0 valószínűség: egyértelmű vélelem, hogy az

állítás hamis

1 valószínűség: határozott vélelem, hogy az ál-lítás igaz.

A 0 és 1 közötti valószínűségek a mondat igaz-ságtartalmában való 'hit' közbenső mértékeinek felelnek meg.

Az állítás valójában persze vagy igaz, vagy hamis. A hiedelem és az igazságtartalom mértéke nem azonos; a hiedelem egy elvárás az állítás igazságával szemben → ezt fejezi ki a valószínűség.

Page 217: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 21/24

A tudásbázishoz hozzáadott állítások módosítják az abból levonható következteté-seket, és ugyanúgy a valószínűség is megváltozik, amikor több tény birtokába ju-tunk.

Mielőtt tények birtokába jutunk: → előzetes, a priori (prior), feltétel nélküli valószínűség;

a tények birtokában: → utólagos, a posteriori, feltételes valószínűség.

Feltételes valószínűség:

P(p|q) = y ha egyedül csak azt tudjuk, hogy q igaz, akkor p vélelme-zett igazságának valószínűségét adja meg a feltételes való-színűség;

P(p|(q∧r)) = z ha már nemcsak azt tudjuk, hogy q igaz, hanem azt is, hogy r is igaz.

P(p|q) ≠ P(q ⇒ p) általában nem teljesül → nem következtetést fejez ki! Bayes-tétel:

P(p|q) = P(q|p)P(p)/P(q)

Page 218: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 22/24

Bayes-módszer előnyei, hátrányai: előny: - szilárd (valószínűség)elméleti alapok,

- jól definiált szemantika;

hátrány: - nagyon sok ('a priori') valószínűséget kell megadni, - a becslés problémája: objektív/szubjektív valószínűség alkalmazása,

- feladat módosítása körülményes,

- az eredmények nehezen magyarázhatók, értelmezhetők. Több változó esetén az ismert, a kiszámítandó feltételes valószínűségek száma rohamosan nő, ezért a

valószínűségszámítás helyett → közelítő módszereket célszerű használni több tény együttes figyelembevételénél, mert bár az így kapott válaszok pontatlanok, azonban kevesebb számolást igényelnek.

Page 219: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA07- 23/24

A gyakrabban használt közelítő módszerek:

− Bayes-hálók (Bayes Nets). − bizonyossági tényezők (Certainty Factors), − Dempster-Shafer elmélet;

illetve

→ a fuzzy halmazok.

Page 220: Mesterséges intelligencia

GÁBOR DÉNES FŐISKOLA

INFORMATIKAI INTÉZET

MESTERSÉGES INTELLIGENCIA

8. ELŐADÁS (előadásvázlat)

DR. CSERNY LÁSZLÓ főiskolai tanár

BUDAPEST, 2018/2019-2

Page 221: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 2/30

TÉMAKÖRÖK

Bevezetés

1. Mesterséges intelligencia fogalma, előzmények. 2. Alapproblémák, a problémamegoldás feltételei

3. Keresési eljárások (informált, nem-informált keresések)

4. Tudásreprezentációs módszerek, következtetés 5. Bizonytalanságkezelés (valószínűségi, fuzzy rsz.)

5.1. Bizonytalanság értelmezése, kezelése 5.2. Valószínűségi alapú bizonytalanság kezelés

5.3. Bizonyossági tényező

5.4. Fuzzy-rendszerek 6. Gépi tanulás módjai (statisztikus, neurális hálók, stb.)

7. Intelligens rendszerek

Page 222: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 3/30

5. BIZONYTALANSÁG KEZELÉS

5.1. Bizonytalanság értelmezése, kezelése

5.2. Valószínűségi alapú bizonytalanság kezelés 5.2.1. Alapfogalmak, összefüggések 5.2.2. Feltételes valószínűség, Bayes-szabály 5.2.3. Valószínűségi logika

5.2.4. Bayes-hálók, hatásgráfok Állítások közötti oksági kapcsolatok, hatások ábrázolásával csökkenthető a szük-séges, számítandó valószínűségek száma. A Bayes-háló (valószínűségi háló - belief network) az adott feladat oksági kap-csolatainak ábrázolására szolgáló irányított, körpályamentes gráf. A gráf csomó-pontjai képviselik az állításokat/valószínűségi változókat, az irányított élek pedig a közöttük lévő ok-okozati hatásokat.

Page 223: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 4/30

A Bayes-háló teljes leírást ad a vizsgált területről. Segítségével az együttes való-színűség eloszlás bármely értéke, bejegyzése kiszámítható.

- Az éllel összekötött csomópontok közötti ok-okozati hatáskapcsolatot, függő-séget a feltételes valószínűség adja meg.

- Az éllel össze nem kötött csomópontok közvetlenül nem függnek egymástól. A változók közötti feltételes függetlenség egyszerűsítheti a valószínűségek kiszá-mítását, nagyban csökkentheti a megadandó feltételes valószínűségek számát. Függetlenség: X független Y-tól, ha P(X|Y) = P(X) Feltételes függetlenség: a hálóban minden csomópont csak a szülő csomópon-

toktól függ, csak azok hatása érvényesül közvetlenül; a felette lévő többi ősétől feltételesen független. A gyökér csomópont független.

Például: ha az X változó szülő csomópontja Y; és Y szülője Z, akkor X feltételes

valószínűsége Y és Z hatásának figyelembevételére:

P(X|YZ) = P(X|Y), mivel X feltételesen független Z-től és annak őseitől.

Page 224: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 5/30

Minden csomóponthoz meg kell adni a feltételes valószínűségi táblázatot (FVT), amely a szülő csomópontok minden lehetséges állapotához megadja a fel-tételes valószínűség értékét. Kivétel a gyökér csomópont(ok) helyzete, amely ese-tében az 'a priori' valószínűséget adjuk meg.

5-5. példa: A ház helyzete, ha a család távol van. A feleség, ha elmegy ott-honról, gyakran bekap-csolja a külső világítást. Néha azonban akkor is megteszi ezt, ha vendé-geket vár. Ha senki nincs otthon, akkor a kutya kint szokott lenni az előkert-ben. Ám ez akkor is meg-történik, ha emésztési problémája van. Ha a ku-tya kint van, hallani az ugatását, de az nagy ritkán összetéveszthető más kutyákéval is.

család-távol (cst)

lámpa-ég

(lé)

kutya-kinn

(kk)

emésztési probléma

(ep)

P(cst)=0.15 P(ep)=0.01

P(lé | cst)=0.6 P(lé | ¬cst)=0.05

P(kk | cst,ep)=0.99 P(kk | cst,¬ep)=0.90 P(kk | ¬cst,ep)=0.97 P(kk | ¬cst,¬ep)=0.3

ugatás hallható

(uh) P(uh | kk)=0.7 P(uh | ¬kk)=0.01

Page 225: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 6/30

Együttes eloszlás számítási igénye (bináris változók esetén):

n szülő → 2n - 1 valószínűség adandó meg;

szülő nélküli csomópont(ok):

→ a priori valószínűség(ek).

A példában:

= együttes valószínűség, Bayes-szabály:

5 változó van → 25 -1 = 31 valószínűség;

= Bayes-háló: 1 x 22 + 2 x 21 + 2 (a priori) = 4 + 4 + 2 = 10 valószínűség.

Együttes valószínűség számítása = feltételes valószínűségek szorzata.

P(XY) = P(X|Y)*P(Y) P(UVXY) = P(U|VXY)*P(VXY) = P(U|VXY)*P(V|XY)*P(XY) =

= P(U|VXY)*P(V|XY)*P(X|Y)*P(Y)

Page 226: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 7/30

általánosan:

P(Xn...X1) = P(Xn|Xn-1 ... X1)*P(Xn-1|Xn-2 ... X1)* ... *P(X2|X1)*P(X1) =

= ( ) ( ) ( )11211ii

n

3iXPXXPXXXP **][ K

−=

Π

Feltételes függetlenség

Ha a szülők (szülői feltételek) ismertek, nem érdekes az ős:

P(Xi | Xi-1, …, X1) = P(Xi | Szülők(Xi)), i=1…n; és Szülők(Xi) ⊆ Xi-1,…, X1 azaz

P(Xi | Szülők(Xi), Ősők(Xi)) = P(Xi | Szülők(Xi))

A valószínűségi hálóban található információk alapján:

az együttes valószínűségi eloszlásfüggvény bármely bejegyzése kiszámítható.

Page 227: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 8/30

Egy bejegyzés értéke:

P(x1…x

n) = P(x

i |Szülők(X

i)), i=1,…,n

Az együttes valószínűségi eloszlás minden bejegyzése felbontható a FVT meg-felelő elemeinek a szorzatára. FVT-k: az együttes valószínűségi eloszlás de-komponált leírása.

5-5.példa: Mi a valószínűsége a következő eseménynek: a család nincs távol (~cst), ég a lámpa (lé), a kutya kinn van a kertben (kk), de az emészté-sével nincs probléma (~ep) és ugatás hallatszik (uh) ?

P(uh,kk,lé,~cst,~ep) = P(uh|kk,lé,~cst,~ep)*P(kk,lé,~cst,~ep) = = P(uh|kk)*P(kk|lé,~cst,~ep)*P(lé,~cst,~ep) =

= P(uh|kk)* P(kk|~cst,~ep)*P(lé|~cst,~ep)*P(~cst,~ep) =

= P(uh|kk)* P(kk|~cst,~ep)*P(lé|~cst)*P(~cst|~ep)*P(~ep)

P(uh,kk,lé,~cst,~ep) = P(uh|kk)* P(kk|~cst,~ep)*P(lé|~cst)*P(~cst)*P(~ep) =

= 0,7*0,3*0,05*0,85*0,99 = 0,0088 ≅ 0,9%

∏=

n

i 1

Page 228: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 9/30

Háló szerkesztése

1. A tárgyterületet leíró állítások és azok változóinak meghatározása.

2. A többi változótól nem függő (gyökér) csomópontok meghatározása, felraj-zolása.

3. Amíg van el nem helyezett változó:

- keressük ki azokat a változókat, amelyek a már felrajzolt csomópontoktól függenek csak és csatoljuk a gráfhoz,

- határozzuk meg azokat a csomópontokat,amelyektől az új csomópont köz-vetlenül függ és rajzoljuk be a szükséges éleket,

- az új elemekhez készítsük el a feltételes valószínűségek táblázatát(FVT-t)

Az így szerkesztett háló teljes és felesleges éleket nem tartalmaz.

Következtetés és a háló szerkesztésének kapcsolata:

A háló felépítése függ a kapcsolat jellegétől:

- oksági (ok → okozat), vagy - diagnosztizáló (hatás → ok) → abdukció!

Page 229: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 10/30

Általánosan, az alapvető kérdés: az 'a posteriori' valószínűség meghatározása a feltételes, lekérdezéses válto-zókra, ha a tény vagy bizonyíték változóknak az értékei adottak:

P(Kérdéses |Tény) = P(Q|E) A korábbi példában pl.:

P(család_távol | ugatás_hallatszik) A hálóknál alkalmazott következtetési módszerek: Diagnosztikai következtetés (hatásról az okra):

Ha adott Q, akkor kiszámíthatjuk, hogy pl.: P(E|Q) = ?

Okozati következtetés (okról a hatásra):

Ha adott az E, akkor kiszámíthatjuk, hogy P(Q|E) = ?

Page 230: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 11/30

Okok közötti következtetés (következtetés egy közös hatás/okozat (R) okai kö-zött):

Ha adott a Q, akkor P(R|Q) számítható; ha azonban hozzávesszük azt a tényt is, hogy az E igaz, akkor a P(R|Q∧E) = ?

Bár a Q és az E függetlenek, az e-gyik jelenléte a másik valószínűsé-gét csökkenti. Ez a fajta következtetési mód a ki-magyarázás.

Kevert következtetések (a fentiek kombinált használata):

Ha az E1 ok igaz és az E2 okozat hamis, akkor P(Q|E1 ∧ ¬E2) = ?

Ez a diagnosztikai és okozati következtetés együttes felhasználása.

Hasonlóan kombinálható a diagnosztikai és az okok közötti következtetés is.

Page 231: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 12/30

5.3. Bizonyossági tényező (cf - certainty factors) A módszert a MYCIN (EMYCIN) szakértői rendszer következtetési rendszerében vezették be a '70-es évek elején. Minden állításhoz tartozik egy:

measure of belief (MB), 0 ≤ MB ≤ 1; a hit, a bizalom, elfogadás mérté-ke

measure of disbelief (MD) 0 ≤ MB ≤ 1; a bizalomhiány, az el nem fogadás

mértéke MYCIN szabály [h, e]: if e then h

e: evidencia, bizonyíték, a szabály feltétele, a hipotézist igazoló tény;

h: hipotézis, a szabály következménye.

Page 232: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 13/30

Egy evidencia: vagy megnöveli a h hipotézis elfogadottságát, amely esetben:

MB[h,e] > 0 és MD[h,e] = 0 nincs alapja h-t elvetni, vagy csökkenti a hipotézis elfogadottságát, amely esetben:

MD[h,e] > 0 és MB[h,e] = 0 nincs alapja h elfogadásának. Tagadott hipotézis: MB[¬h,e] = MD[h,e],

MD[¬h,e] = MB[h,e] Bizonyossági tényező (CF - certainty factor) A hipotézisre vonatkozó általános hiedelmet, vélekedést fejezi ki:

( )11

1≤≤−

= CFMD,MBmin

MD-MBe][h,CF

Page 233: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 14/30

Ha CF > 0, a rendszer igaznak véli a hipotézist, CF < 0, hamisnak, CF = 0, akkor egyszerűen nincs róla információ.

A CF bizonyossági tényezőre vonatkozó összefüggések:

Kapcsolat CF kiszámítása Feltétel

ÉS CF(a∧b) min CF(a),CF(b) szabály előfeltétel elemeire

VAGY CF(a∨b) max CF(a),CF(b) szabály előfeltétel elemeire

NEM CF(¬p) -CF(p) szabály előfeltétel elemeire

Szabály CF(h,e) CF(e)*CF(h) CFfeltétel * CFkövetkezmény

Két szabály ugyanarra a hipotézisre

CF(h|e1, e2) = CF(h,e1),CF(h,e2)= CF1, CF2

CF1+CF2-CF1*CF2 ha CF1 és CF2 pozitív

CF1+CF2+CF1*CF2 ha CF1 és CF2 negatív

(CF1+CF2)/(1-min(|CF1|,|CF2|)) ha CF1*CF2< 0

nem meghatározott ha CF1*CF2= -1

Page 234: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 15/30

5-6. példa: Tekintsük a következő szabálybázist:

1. szabály: Esik → 0,9

Rossz idő van. 2. szabály: Fúj a szél →

0,7 Rossz idő van.

3. szabály: Süt a Nap → -0,9

Rossz idő van.

Modus ponens: A, A → B ________________________

B

CF(Rossz idő van|Esik) = 0,9 szabály CF-je CF(Esik) = 1 tény/előfeltétel CF-je

CF(Rossz idő van) = CF(Rossz idő van|Esik)*CF(Esik) = 0,9*1 = 0,9

a = CF(Rossz idő van|Esik) = 0,9 szabály CF-je CF(Esik) = 1 tény CF-je

b = CF(Rossz idő van|Fúj a szél) = 0,7 szabály CF-je CF(Fúj a szél) = 1 tény CF-je

CF(Rossz idő van|Esik ∧ Fúj a szél)= a + b - a*b = 0,9 + 0,7 - 0,7*0,9 = 0,97

Page 235: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 16/30

Általános megállapítások:

− szabály végrehajtásakor a következmény CF-je nem lehet nagyobb a feltéte-lek CF értékei közül a legnagyobbnál;

− a következtetési lánc mentén a bizonyossági szint nem nőhet, kivéve ha több feltétel alapján juthatunk ugyanarra a következményre;

− ha a bizonyosság egy adott szint |0,2| alá esik, az aktuális szabály meghiúsul. A bizonyossági tényező modellje nem rendelkezik megalapozott matematikai hát-térrel. A módszer a Dempster-Shafer modell egy változatának is tekinthető. A CF bizonyossági tényező értékének szokásos szöveges kategóriái:

0 0,2-0,2

Ismeretlen

-0,6 0,8 1,00,6-0,8-1,0

Biztosan hamis Biztosan

igaz

Lehet, hogy hamis

Lehet, hogy igaz

Valószínűleg hamis

Majdnem bizonyosan

hamis

Valószínűlegigaz Majdnem

bizonyosanigaz

Page 236: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 17/30

5.4. Fuzzy rendszerek* A probléma lényege

Adatbázis érték: X=35 éves Klasszikus logika: fiatal(X), ¬fiatal(X) Fuzzy logika: * Seebauer M: Intelligens rendszerek, DF, 2008

X=35 éves

fiatal középkorú idős öreg

X [évek]0

1

µéletkor(X)

10050

fiatal középkorú idős öreg

35

µközépkorú(35)=0,7

µfiatal(35)=0,35

¬fiatal

fiatal

X=35 éves?

Page 237: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 18/30

Fuzzy halmazok

A halmazelmélet Lotfi Zadeh (1965) által javasolt kiterjesztése.

Jelölje X az alaphalmazt (pl.: kor). Legyen A egy fuzzy halmaz, amelyet X-en értelmezünk és elemei X egy részhalmazát alkotják, A ⊆ X (fiatal, középkorú, idős, öreg). x legyen az X halmaz egy eleme. A - t az ún. tagsági függvénnyel jellemezzük:

A = (x, µA(x))| x∈X, µ

A(x) → [0,1]

azaz, az X azon elemei alkotják az A fuzzy-halmazt, amelyekre a µ

A(x) tagsági

függvény értelmezett és amelyekre [0,1] tartományba eső értéket ad. Ha A és B két X halmazon értelmezett fuzzy-halmaz, akkor az A halmaz a B részhalmazának tekinthető, azaz A ⊆ B akkor, ha minden x ∈ X-re érvényes, hogy

µ

A(x) ≤ µ

B(x)

Page 238: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 19/30

A tagsági függvények szokásos formái:

Page 239: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 20/30

5-7. példa: Az 'eléggé magas' emberek fuzzy-halmazának egy lehetséges tagsági függvénye

0 ha x ≤ 150

µ(x) = x/50 − 3 ha 150 < x ≤ 200

1 ha 200 < x

Page 240: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 21/30

Műveletek fuzzy-halmazokkal

Ha A és B fuzzy halmazok, akkor A komplementere: A' a következő tagsági függvénnyel határozható meg:

µA‘

(x) = 1- µA(x)

A és B metszete, konjunkciója µ

A∩B(x) = T(µ

A(x), µ

B(x))

a T függvényt t-norma függvénynek nevezik; definiciója lehet: 1. T(a,b) = min (a, b)

2. T(a,b) = max (0, a+b-1) 3. T(a,b) = a*b

A és B egyesítése, diszjunkciója

µA∪B

(x) = S(µA(x), µ

B(x))

a S függvényt s-norma (t-co-norma) függvénynek nevezik; definiciója lehet: 1. S(a,b) = max (a, b)

2. S(a,b) = min (1, a+b) 3. S(a,b) = a+b-a*b

x

x

x

µ(x)

µ(x)

µ(x)

Page 241: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 22/30

Fuzzy logika

Kapcsolat Művelet Értelmezés Megjegyzés

Konjukció, ÉS A ∧ B min(µA(x), µB(x))

Diszjunkció, VAGY A ∨ B max(µA(x), µB(x))

Kiegészítés, NEM ¬ A 1- µA(x)

Implikáció A → B

max1-µA(x); min(µA(x), µB(x)) Zadeh

min(1; 1- µA(x) + µB(x)) Lukasiewicz

max(1- µA(x); µB(x)) Kleen-Dienes

1 - µA(x) + µA(x)*µB(x) Reichenbach

µ(C) = µ(A and B) = min0,4; 0,2 = 0,2 µ(C) = µ(A or B) = max0,4; 0,2 = 0,4

Page 242: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 23/30

Probléma: A fuzzy-logika nem konzisztens az itéletlogikával és az elsőrendű logikával:

- ott egy-egy állítás vagy igaz, vagy hamis értékű, azaz az igazságértéke:

T(True) = 1, illetve T(False) = 0

a fuzzy-rendszerben: T(magas_atléta(István)) = 0,8

- ott elvárható, hogy T(A ∨ ~A) = T(True) = 1

a fuzzy környezetben: T(A ∨ ~A) ≠ T(True) 5-8. példa: (magas_atléta (A) ∨ ~ magas_atléta (A))

VAGY: maxµ(A); µ(¬A)

Page 243: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 24/30

5-9. példa: nyaralás tervezése

Uticél µidőtartam

µár

µnapsütés

µvízpart

1. modell 2. modell 3. modell

Balaton 0,93 0,9 0,8 0,95 0,9 0,88 0,86

Horvátország 1 0,4 0,9 0,8 0,8 0,8 0,75

Mallorca 0,86 0,5 0,95 0,99 0,86 0,85 0,83

Uticél Időtartam Ár (Ft)

Balaton 06.19. – 07.12. 100000

Horvátország 07.01. – 07.14. 200000

Mallorca 07.30. – 08.12. 180000

CÉL = Időtartam ∧ Vízpart ∧ (Napsütés ∨ Ár)

Nyaralás feltételei: • A nyaralásnak lehetőleg az igé-

nyelt szabadság idejére - június 20 és augusztus 10 – közé kell esnie.

• Az utazás legyen olcsó vagy ga-rantált legyen a napsütés.

• Vízpartra szeretnénk menni. Ajánlatok

X [Ft]0

1µár(X)

200000100000 300000

0,9

0,50,4

Ár "fuzzifikálás"-a

Page 244: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 25/30

Ha x kicsi pozitiv és y kicsi pozitiv, akkor z kicsi pozitiv

Ha x nagy pozitiv és y kicsi pozitiv, akkor z nagy pozitiv

Fuzzifikálandó x és y értékek

Defuzzifikált z érték

Fuzzy szabályozás Tudásbázis:

• Ha X értéke kicsi pozitív és Y értéke kicsi pozitív, akkor Z értéke kicsi pozitív.

• Ha X értéke nagy pozitív és Y értéke kicsi pozitív, akkor Z értéke nagy pozitív.

Fuzzy szabályozó működése:

• Életlenítés (fuzzifikáció) – konkrét bemenő értékek a-lapján a hozzájuk tartozó tagsági függvény értékének meghatározása

• Fuzzy következtetés – a tu-dásbázisban tárolt szabá-lyok alapján a végkövetkeztetés tagsági függvényértékének kiszámítása

"Mamdani" szabályozási mód

Page 245: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 26/30

• Élesítés (defuzzifikáció) - a tagsági függvény alapján a kimenet értékének megállapítása. Lehet: terület, súlypont, stb alapján.

A gyakrabban használt módszerek:

- COM - Center of maximum: a tagsági függvények maximum értékeinek

súlyozott átlaga lesz a kimeneti érték, ahol a súlyok az alkal-mazott szabályok kimeneti értékei.

- COA - Center of Area: a tagsági függvények által határolt területek kiszá-

mítása után, azok közös súlypontjánek a helye adja a kimeneti ér-téket. Ez a leggyakrabban használt módszer.

- MOM - Mean of maximum: a legnagyobb érvényességi fokkal rendelkező

kifejezés maximuma lesz a kimeneti érték.

Page 246: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 27/30

Fuzzy szabályozó felépítése

Folyamat

Tudásbázis

Fuzzifikálás(életlenítés)

Fuzzykövetkeztetés

Defuzzifikálás(élesítés)

Fuzzy szabályozó

Mért értékek Vezérlőjelek

Page 247: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 28/30

5-10. példa: Konténerrakodó robot vezérlése

Bemenő értékek: - a teher szöge és - a céltól mért távolsága.

Kimenő érték: - a motorra adott vezérlő jel.

Alkalmazott szabályozási mód: - 'Mamdani'-szabályozás

Teher szöge

Távolság

nagy kicsi nulla

pozitív nagy

gyorsan előre

gyorsan előre

lassan vissza

pozitív kicsi

gyorsan előre

lassan előre

lassan vissza

nulla gyorsan előre

lassan előre állj

negatív kicsi

gyorsan előre

lassan előre

lassan előre

negatív nagy

gyorsan előre

gyorsan előre

gyorsan előre

Távolság

Teherszöge

Page 248: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA08- 29/30

5-10. példa: Konténerrakodó robot vezérlése

Szabályok:

Bemeneti adatok: Eredmény adat:

Teher szöge: β = -20º Motorteljesítmény: P = 170 W

Távolság: l = 5 m

[m]0 10 20 30 l

1

µtávolság(l)

kicsi

nagy

nulla

[º]

pozitív nagy

0 10 20 30 β-10-20-30

1

µszög(β) nulla

pozitív kicsi

negatív nagy

negatív kicsi

0 100 200 300 [W]P-100-200-300

1

µteljesítmény(P) állj

lassan előre

gyorsanelőre

gyorsanvissza

lassan vissza

1. IF távolság = nagy THEN teljesítmény = gyorsan_előre. 2. IF szög = pozitív_nagy AND távolság = kicsi THEN teljesítmény = gyorsan_vissza 3. IF szög = negatív_nagy AND távolság = kicsi THEN teljesítmény = gyorsan_előre 4. IF szög = pozitív_kicsi AND távolság = nulla THEN teljesítmény = lassan_vissza 5. IF szög = negatív_kicsi AND távolság = nulla THEN teljesítmény = lassan_előre 6. IF szög = nulla AND távolság = nulla THEN teljesítmény = állj

Page 249: Mesterséges intelligencia

ÍÍÍÍGÁBOR DÉNES FŐISKOLA

INFORMATIKAI INTÉZET

MESTERSÉGES INTELLIGENCIA

9. ELŐADÁS (előadásvázlat)

DR. CSERNY LÁSZLÓ főiskolai tanár

BUDAPEST, 2018/2019-2

Page 250: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 2/34

TÉMAKÖRÖK

Bevezetés

1. Mesterséges intelligencia fogalma, előzmények. 2. Alapproblémák, a problémamegoldás feltételei

3. Keresési eljárások (informált, nem-informált keresések)

4. Tudásreprezentációs módszerek, következtetés 5. Bizonytalanságkezelés (valószínűségi, fuzzy rsz.)

6. Gépi tanulás (neurális hálók) 6.1. Bevezetés

6.2. Neurális hálózatok jellemzői, felépítése

6.3. Jellegzetes alkalmazási problémák 6.4. NH típusok, tanulási módok

7. Intelligens rendszerek

Page 251: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 3/34

6. GÉPI TANULÁS - NEURÁLIS HÁLÓ

6.1. Bevezetés cél: a neurális hálók bemutatása

⇒ párhuzamos, elosztott számítás

előzmények:

• igény az emberi gondolkodás modellezésére: = az ember képes rövid idő alatt bonyolult

döntések meghozatalára → ok: erősen párhuzamos feldolgozás;

= az emberi agy: kb. 1011 neuron, mindegyik kb. 10000 kapcsolattal

1943: W.McCulloch - V.Pitts neuron modellje, 1958: F.Rosenblatt perceptron modellje és tanítási algoritmusa, 1960: B.Widrow - M.E.Hoff adaline modellje, 1969: M.Minsky - S.Papert: Perceptrons című könyve visszavetette a ku-

tatási kedvet, 1980-as évek új lendület hoznak:

= önszerveződés, = 'backpropagation' tanulás bevezetése.

Page 252: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 4/34

sikeres alkalmazások száma növekszik, például: = karakter, alakzat felismerés, = szabályozástechnika (pl.: autóvezetés), = összetett (gazdasági) optimalizálási problémák megoldása, = előrejelzések, stb.

6.2. Neurális hálózatok jellemzői, felépítése

a.) NH értelmezése konnekcionizmus (connectionism) fogalma:

erősen csatolt, primitiv feldolgozó elemek (általában) rendezett rendszere, amelyek párhuzamosan dolgoznak és egymás között irányított kapcso-latokkal rendelkeznek.

neurális hálózatok:

• erősen csatolt, • párhuzamos feldolgozást végző, • adaptiv eszközök rendezett halmaza.

Page 253: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 5/34

más megközelítésben: a neurális hálózat (NH) párhuzamos, elosztott működésre alkalmas hard-

ver, vagy szoftver kivitelezésű információfeldolgozó eszköz, amely

• nagy számú, azonos, vagy hasonló típusú feldolgozó elem (neuron, processing element, unit) erősen csatolt rendszere,

• alkalmas a tanulásra, azaz rendelkezik megfelelő tanuló algoritmussal,

• alkalmas a tanultak felhasználására, azaz a tárolt tudás előhívására. jellemzők:

• nincs tárolt program, adatbázis (nem Neumann-elvű rendszer): → max. néhány paraméter,

• nem programozzák → tanítják, • tudás elosztott: = a struktúra és

= a kapcsolatok erőssége adja; • univerzális:

(struktúrától függően, bizonyos körben) tetszőleges bemeneti-kime-neti függvénykapcsolat közelítésére alkalmas.

Page 254: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 6/34

alkalmazhatósági területek:

• a kimeneti érték (a válasz) sok tanító példa tulajdonság-érték párosával meghatározható,

• a kimenet diszkrét, valós, vagy vektor értékű, • a tanító példák hibákkal rendelkezhetnek, • az esetlegesen hosszú tanítási idő elfogadható, • a tanultak gyors előhívása szükséges lehet, • a betanult (függvény)kapcsolat ismerete az ember számára nem lénye-

ges.

b.) NH feldolgozó eleme lényegi részei:

x 1

x 2

x n

w1

w 2

w n

f a f kifb =y

aktivációs függvény

bemeneti függvény

kimeneti függvény

Page 255: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 7/34

általános felépítés:

wo

w1

wn

s y

x o=1

x 1

x n

f (a) kiaf be=

f (s) a

lokálismemória

a

bemeneti aktivációs kimenetifüggvény függvény függvény

(lineáris) (nemlineáris) (azonosság)

transzfer függvény

Page 256: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 8/34

jellemző működés:

ha a bemenetek összhatása, gerjesztése (összege) magasabb egy adott küszöbértéknél, a neuron csak akkor módosítja aktivációs értékét (állapo-tát); vannak kimenetet növelő (excitory) és kimenetet csökkentő, tiltó (inhi-bitory) bemenetek; a tárolást be- és kimeneti szűrők valósítják meg.

működés leírása:

• bemeneti függvény (input function):

a bemenetek súlyozott összegét állítja elő; az egyik bemenet (xo=1) speciális funkciójú: a hozzárendelt súlyszám (wo) negativ értéke kép-viseli a küszöbértéket;

s f w xbe i ii

n

= = ==

∑( , )*

w x w x0

lehet több bemeneti összegző (site) is;

Page 257: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 9/34

• aktivációs függvény (activation function):

a feldolgozó elem (a neuron) új aktivációs szintjét (állapotát) állítja elő a súlyozott bemeneti jelek összegéből, figyelembe véve a küszöbér-téket is;

általános forma:

a f s a f f a f au a r a be r a r= = =( , ) ( ( , ), ) ( , )*

w x w x (ahol au = 'a' új értéke, ar = 'a' régi értéke) memória nélkül:

a fa= ( )*

w x

Page 258: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 10/34

küszöbérték (threshold) kezelése:

= ha a tárolt küszöbérték: wo

af s a ha s w x w

a egyé bké ntu

a r i ii

n

r

== >

=

∑( , )1 0

= ha az xo =1 bemenet wo < 0 súlyszáma képezi a küszöbértéket:

af s a ha s w x

a egyé bké ntu

a r i ii

n

r

== >

=

∑( , )0

0

Page 259: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 11/34

• kimeneti függvény (output function):

a neuron kimeneti értékét állítja elő az aktivációs értékből; többnyire az azonosság függvényt alkalmazzák:

y f a f f f aki ki a a= = ≡ =( ) ( ( )) ( )* *

w x w x • transzfer függvény (transfer function):

a feldolgozó elem teljes átvitelét írja le; egyszerűbb esetben meg-egyezhet az aktivációs függvénnyel:

y f a f f s a f f f aatv ki a ki a be= = =( , , ) ( ( , )) ( ( ( , ), ))w x w x

Page 260: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 12/34

szokásos aktivációs függvények:

többnyire nemlineáris kapcsolatot adnak a bemenetek összege és a kimenet között;

• lépcsőfüggvény (vagy egységugrás függvény):

a(s)

s

+1

-1

aha s

ha s=

+ >

− ≤

1 0

1 0

alkalmazása: perceptron, adaline

Page 261: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 13/34

• szakaszonként lineáris (telítéses) függvény:

a(s)

s

+1

-1

a

ha s

s ha s

ha s

=

+ >

− ≤ ≤

− < −

1 1

1 1

1 1

ritkán alkalmazzák

Page 262: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 14/34

• tangens hiperbolikusz függvény:

a(s)

s

+1

-1

ae

ek

ks

ks=

+

>

1

10

ha k=2, akkor tanh függvény.

Page 263: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 15/34

• szigmoid (logisztikus) függvény:

a(s)

s

+1

0.5

ae

kks

=

+

>−

1

10

alkalmazása: leggyakoribb

Page 264: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 16/34

más típusú feldolgozó elemek:

• egyszerűsített feldolgozó elem (perceptron, adaline): (perceptron és az adaline csak a tanulási módszerben különbözik)

az aktivációs érték egyúttal a feldolgozó elem kimeneti értéke is, azaz y = a

wo

w1

w n

s y = a

xo=1

x1

x n

f be= f (s) a

bemeneti aktivációsfüggvény függvény

(lineáris) (nemlineáris)

a

Page 265: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 17/34

• gátló bemenetes elem (Fukushima, 1988):

(képfeldolgozáshoz javasolt, egy gátló (a kimenet értékét csökkentő) bemenettel rendelkező feldolgozó elem)

u f s xw x

g

g g

= =+

+1

1

1( , )

*w x

és

y f u u= =2 ( )

wo

w1

wn

s y

xo=1

x 1

x n

f (u) 2f be=

x g w g

u f (s, )1 x g

Page 266: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 18/34

• radiális bázisfüggvény elem (RBF=radial basis function)

bemenetek összegzése elma-rad, a bemenetek közvetlenül csatlakoznak az aktivációs elem-hez; az aktivációs függvény nem rögzített, paraméterezhető; leggyakrabban:

y f uu

a= = −( ) exp( )

2

22σ és u f f= = −( , ) ( )x c x c

- paraméterek: c és σ

- lehet más aktivációs és távolságfüggvényt is használni.

y = a

x o

x 1

x n

f ( , , )a x c σ

Page 267: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 19/34

c.) Kapcsolatok, rétegek, struktúrák

Lehetőség van több feldolgozó elem összekapcsolására → irányított kapcso-latokkal:

• egy kimenet akárhány bemenethez kapcsolódhat, • a kimenetek nem köthetők össze, • a késleltetést szűrők (tárolók) modellezik a bemeneteken.

elemek csoportosítása:

• bemeneti (input) elemek (csak továbbító szerepük van, nem feldolgozó elemek),

• kimeneti (output) elemek: a külvilág felé továbbítják a jeleket, • belső (rejtett-hidden) feldolgozó elemek:

= bemenetük más elemek kimenetéhez, = kimenetük más elemek bemenetéhez csatlakozik.

• réteg (layer): az információfeldolgozásban azonos szerepet, funkciót

betöltő elemek összessége.

Page 268: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 20/34

kapcsolatok leírása a (leggyakoribb) NH-nál:

• többrétegű perceptron hálózat (MLP=Multi-Layer Perceptron):

elemenként: lineáris összegzés + nem-lineáris aktivációs függvény

0

1

n

1 1

2n

(1) (2) (3)

w32

(1)

w11

(2)

W W (2)(1)

x1

x0

xn

y1

n(1) n (2) (3)n

...

...yn

...

hidden layer input layer output layer

Page 269: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 21/34

ahol wij

( )1

az (1) és (2) réteg között, az i-dik bemenetet a j-dik rejtett elemmel összekötő kapcsolat súlyozása.

bemenetek (a bemeneti réteg kimeneteinek) összegzése:

s W x= =

=

=∑( )* ( )

( )

1 1

1

1

M

M

M

M

s w xi ji jj

n

y s= → = =f y f s i na i a i( ) ( ) , ...,

( )1

2

W( ) ( )

( ) ( ) ( )

( ) ( ) ( )

( )

( ) ( )

( )

( )

( )

( ) ( ) ( ) ( ) ( )

1 1

01

1

02

1

0

1

11

1

12

1

1

1

21

1

1

1 1

2

2

1 1 2 1 2

= =

×

w

w w w

w w w

w

w w

ij

n

n

n n n n n

L

L

M

M M

L L

Page 270: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 22/34

általánosan:

)(*(1)*(2)(1)*(2)(2)xWWyWy

af==

• többrétegű radiális bázisfüggvény hálózat (RBF= Radial Basic Func-tion):

elemenként: nem-lineáris aktivációs függvény + lineáris összegzés; a bázisfüggvény:

- ú.n. kör-, illetve gömbszimmetrikus (középponti értékre szimmetri-

kus) függvény, például Gauss-görbe,

- paraméterezhető (középpont, szélesség),

- középértéktől való eltérésre reagál.

Page 271: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 23/34

0

1

n

1

2

(1) (2) (3)w11

W

x1

x0

xn

n(1) n (2)

...

x(1) y (2)

f

g i

wij

y(1)

yj

egy elemre:

y f u f f f fa a a= = =−

( ) ( ( , , )) ( ( ))x cx c

σσ

több elemnél: y gi i i i

( ) ( )( , , )

1 1= x c σ és

y w gj ij i i i

i

( ) ( )( , , )

2 1=∑ x c σ

Page 272: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 24/34

hálózati struktúrák:

• visszacsatolás nélküli (feed-forward recall networks); csak a vissza-kereséskor (recall), azaz használatkor érvényes a visszacsatolás nélkü-liség, mivel a tanítás alatt létezik a visszacsatolás; leggyakoribbak:

= többrétegű perceptron hálók (MLP) és az = egy rejtett rétegű RBF hálók.

• visszacsatolásos (feed-back recall networks):

= globális: kimenet és bemenet között; = lokális:

- önmagában (recurrent connection),

- rétegen belül (intra-layer, lateral connection) [pl.: on-center, off-surround connection: közvetlen környezetével gerjesztő, távoli környezetével tiltó kapcsolatban lévő elem]

- rétegek között (inter-layer connection).

Page 273: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 25/34

intra-layerconnection

recurrent connection

inter-layer connection

optimális struktúra problémája:

• a tanulóképesség függ a háló méretétől, a rétegek, a feldolgozó elemek

számától; = sok az elem: túlzott illeszkedés (overfitting) jöhet létre:

→ leszűkül a megoldható feladatok köre, → csökken az általánosító képesség (nem ad jó választ egy isme-

retlen feladatra); = kevés az elem: nem képes a tanulásra.

Page 274: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 26/34

• hálózati struktúra előállítása → optimalizálási feladat: = genetikus algoritmussal → erőforrás igényes = meglévő háló módosítása:

→ bővítéssel (tilling algorithm - 'csempéző' algoritmus): mindig csak annyival bővítünk, hogy az összes feladat megoldható legyen;

→ csökkentéssel (optimal brain damage - optimális 'agykárosodás' algoritmus): az információelméleti módszer segítségével kivá-lasztott elem törlése után, javul-e a tanulás utáni működése; (optimal brain surgeon - optimális 'agysebész' módszer) előző-nél jobb módszer.

d.) Tanítási/tanulási módszerek

NH legfontosabb összetevője, vizsgálati területe. lényeges: az adaptivitás, alkalmazkodás a változó környezethez;

→ eszköze: a tanulás, a rendszer olyan módosítása, amely után alkalmassá válik a kívánt feladat megoldására;

Page 275: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 27/34

beavatkozási módok:

• kapcsolatok erősségének(súlyszámainak) módosítása, • aktivációs függvény küszöbértékének módosítása, • feldolgozó elem függvényének módosítása, • szerkezet, struktúra módosítása: új kapcsolatok bevétele, régiek tör-

lése, • új feldolgozó elem beiktatása, törlése; leggyakoribb: a kapcsolatok súlyszámainak módosítása.

tanulás alapelve (súlyszámok módosítása esetén):

valamilyen hibafüggvény segítségével módosítani a súlyértékeket:

w w wú j ré gi= + ∆

Page 276: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 28/34

• tanulás:

cél: az eredeti, modellezni kívánt rendszert (feladatot) legjobban köze-lítő rendszer kialakítása → modell-illesztés

a módosítás alapja általában: a kívánt kimenettől való eltérés.

y

z zaj

f(.)

y' f '(.)

h(.) kbség- képzõ

x modellezendő rendszer

rendszer tanuló, neurális w := w + w

Page 277: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 29/34

y x z= f ( , ) valós rendszer,

′ = ′y x wf ( , ) neurális rendszer.

a rendszer módosítása többnyire iterativ.

• hibafüggvény:

∆w y y= ′h( , )

leggyakoribb a négyzetes hiba számítása (más hibafüggvények is al-kalmazhatók, visszavezethetők az előbbire) = a várt, tervezett és a tényleges kimenet eltérését használja, pl.:

∆ w = −==

∑∑h y yt j jj

m

i

p

( ( ) )2

11

ahol p = minták száma, ytj = várt, tervezett kimenet, m = kimenetek száma; yj = tényleges érték.

Page 278: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 30/34

= a súlyszámok összességét figyelembe véve:

∆ w W= h( )

ahol W = az elemek közötti kapcsolatok (súlyszámok) mátrixa

→ tulajdonképpen: szélsőérték számítás a súlyszámok terében; optimális: ha ∆ w W= h( ) → 0

• a tanulás típusát, a hibaérték előállítását befolyásolja:

= optimum kritérium megválasztása,

= hiba csökkentésére választott stratégia:

→ probléma a konvergencia sebessége, = válaszidő követelmény teljesítése,

= a felhasznált minták tulajdonságai.

Page 279: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 31/34

∆w y h y y y y y yij i tj j i tj j i j= − = − =η η η δ( ) ( )

tanulási módok:

• ellenőrzött tanulás (supervised learning):

ismert a kívánt kimenet, az eltérések alapján módosítható a rendszer: → egyre közelebb kerül a jó megoldáshoz; pl. perceptron-, delta-, vagy Widrow-Hoff módszer: → a leképzés hibája adja a módosítás mértékét

yi = w x

*

általában; a módosítás:

ahol η tanulási mérték,

ytj kívánt, tervezett kimenet.

megerősítő tanulás (reinforcement): ha csak az ismert, hogy a kime-net jó, vagy nem jó;

i jw

ij

yi

yj

Page 280: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 32/34

• nem-ellenőrzött tanulás (unsupervised learning):

a mintákhoz (a bemenetekhez) nem áll rendelkezésre a kívánt kime-net, nincs visszajelzés a helyes működésre; bemenetek vizsgálata:

- van-e hasonlóság, - kialakíthatók-e csoportok (osztályok, klaszterek), → önszervező

hálózatok;

= Hebb-szabály (D. Hebb, 1949):

∆ w y a y yij i j i j= =η η ha y a fj a= = (.)

korlátlanul növekedhet, csökkenhet: → a kimenet korlátozása szük-séges;

ha y yj tj= a kívánt kimenet ⇒ ellenőrzött tanulás, azaz

∆ w y yij i tj= η

Page 281: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA09- 33/34

= versengő tanulás:

cél: a bemenetek, a minták osztályozása, besorolása → egyetlen kimenet jelezzen;

- "győztes mindent visz" elv: • minden kimenet kiszámításra kerül, • a max(min) értékű lesz a 'győztes' (ennek értéke logikai 'igen',

a többi logikai 'nem' szintű); - automatikus beállítás (on centre, off surround elv → "mexikói ka-

lap görbe") → oldalirányú kapcsolatok szükségesek

• analitikus tanulás:

az adott feladathoz elméleti úton meghatározható a kívánt struktúra → igazából nem tanulás.

Page 282: Mesterséges intelligencia

GÁBOR DÉNES FŐISKOLA

INFORMATIKAI INTÉZET

MESTERSÉGES INTELLIGENCIA

10. ELŐADÁS (előadásvázlat)

DR. CSERNY LÁSZLÓ főiskolai tanár

BUDAPEST, 2018/2019-2

Page 283: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 2/43

TÉMAKÖRÖK

Bevezetés

1. Mesterséges intelligencia fogalma, előzmények. 2. Alapproblémák, a problémamegoldás feltételei

3. Keresési eljárások (informált, nem-informált keresések)

4. Tudásreprezentációs módszerek, következtetés 5. Bizonytalanságkezelés (valószínűségi, fuzzy rsz.)

6. Gépi tanulás (neurális hálók) 6.1. Bevezetés

6.2. Neurális hálózatok fogalma,felépítése

6.3. Jellegzetes alkalmazási problémák 6.4. NH típusok, tanulási módok

7. Intelligens rendszerek

Page 284: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 3/43

6. GÉPI TANULÁS - NEURÁLIS HÁLÓ

6.1. Bevezetés

6.2. Neurális hálózatok jellemzői, felépítése

a.) NH értelmezése

b.) NH feldolgozó eleme

c.) Kapcsolatok, rétegek, struktúrák

d.) Tanítási/tanulási módszerek

6.3. Jellegzetes alkalmazási problémák

Page 285: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 4/43

6.3. Jellegzetes alkalmazási problémák

a.) Alkalmazások alapproblémái használat előkészítése

• tanítás/tanulás:

→ programozás helyett, minták segítségével tanítás/tanulás, illetve el-lenőrzés; a minták egy része a tanításra, más része az ellenőrzésre szolgál;

→ a rendszer paraméterei (súlyszámai, más beállítható értékei) változ-nak eközben;

• tesztelés:

a célnak megfelelőség vizsgálata minták segítségével; → a NH paraméterei már nem változnak.

• használat:

a rendszer ismereteinek előhívása alkalmazási feladatok megoldásá-hoz;

Page 286: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 5/43

→ a NH paraméterei általában már nem változnak, de vannak olyan adaptiv rendszerek, amelyek időbeli változás miatt módosíthatják paramétereiket.

A tanítás/tesztelés lassú, hosszadalmas művelet, míg a használat során a működés gyors.

működtetés, vezérlés módja

a feldolgozó elemek működésének nagyfokú párhuzamossága érvényesül → kérdés: milyen legyen a vezérlés?

vezérlés módja:

= szinkron: minden elem egyszerre számítja ki új állapotát, = aszinkron:

- visszacsatolás nélkül, általában az irányítottság szerint; - egyébként, valamilyen (véletlenszerű, sorszámozás szerinti) elv a-

lapján számol a rendszer → stabilitási problémák léphetnek fel.

Page 287: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 6/43

b.) Alkalmazási területek

A tanulás módja határozza meg alapvetően. asszociatív tárolás

tárolás: → tanítás segítségével, olvasás (recall): → alkalmazás

• tartalom szerinti címzés (content addressable memory):

összetartozó (hasonló) bemenetekhez ua. a címet, osztályt társítja; → visszakereséskor, a bemenet hatására azt a 'címet' adja vissza, amelynek a tartalma a legközelebbi;

• asszociativ memória: autoasszociativ: a bemeneti jelvektorokat tárolja és hibás bemenet e-

setén a helyes jelsorozatot adja ki → önmagát asszociálja; heteroasszociativ: a bemeneti jelvektorokhoz tetszőleges más jelsoro-

zatot párosít.

Page 288: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 7/43

• alkalmazható modellek: = perceptron (különböző tanuló algoritmusokkal), = Hopfield-modell (autoasszociativ tárolás), = counterpropagation (autoasszociativ tárolás)

osztályozás, mintafelismerés

több bemeneti mintához ua. a kimenetet társítja → osztályok

• tanítás csoportosított minták segítségével:

a kimenetek száma az osztályok számának felel meg, vagy a kimene-tek kódolt formában adják meg az osztályba sorolást; alkalmazott modellek:

= perceptron (lieárisan szeparálható osztályokhoz, = LVQ, counterpropagation modell (bonyolultabb feladatokhoz);

Page 289: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 8/43

• osztálykialakítás tanítás közben:

tanulás közben állapít meg összefüggéseket az osztályok, klaszterek (clusters) kialakításához; előírható a kialakítandó osztályok száma;

alkalmazott modellek:

= ART modell (Adaptive Resonance Theory), = Kohonen modell.

optimalizálás

a háló elemeinek paraméterei (súlyok, állapotok, kimenetek) segítségével ú.n. energiafüggvényt lehet felírni, amelynek minimalizálása vezet az opti-mális megoldáshoz; • alkalmazható modellek:

= visszacsatolt modellek, pl. Hopfield modell;

Page 290: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 9/43

időbeli folyamatok, dinamikus rendszerek vizsgálata

az egymást követő állapotoktól függenek a rákövetkező állapotok: = idősorok vizsgálata → előrejelzések, = mozgások irányítása;

tanítása nehéz, időigényes → instabilitásra hajlamos;

• alkalmazható modellek: = Jordan-, Elman-modellek;

approximáció (függvényközelítés)

különböző függvények leképzésének közelítése (pl. képfeldolgozás, osz-tályozás, szabályozástechnika, stb.) • alkalmazható modellek:

= többrétegű perceptron (MLP) modell → 'backpropagation' tanulás, = radiális bázisfüggvény (RBF) modell;

Page 291: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 10/43

• NH approximációs képessége:

= MLP modell:

univerzális közelítő, tetszőleges, folytonos függvény tetszőleges pon-tosságú közelítésére alkalmas; egy rejtett rétegű és egy összegző kimenettel rendelkező NH esetén, ha f ( )x valós, folytonos függvény és az f

a( )x aktivációs függvény kor-

látos, monoton növekvő, folytonos függvény, akkor bármely ε pontos-sághoz van M elemű rejtett réteggel rendelkező NH ú.h.

x

x xmax ( ) ( )f f− ′ < ε és

′ ===

∑∑f c f w xj a ji ii

n

j

M

( ) ( )x11

= RBF modell:

ha az fa( )x aktivációs függvény integrálható, folytonos ú.n. körszim-

metrikus függvény, akkor tetszőleges f ( )x függvény közelíthető:

Page 292: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 11/43

f w g wi i

i

ii

M

i

i

i

i

M

( ) ( ) exp( )xx c x c

=−

= −−

= =∑ ∑

σ σ1

2

21 2

6.4. NH típusok, tanulási módok

6.4.1. Ellenőrzött (felügyelt) tanulású rendszerek

A kimenet és a bemenet ismerete, a kívánt értéktől való eltérés alapján tanul. a.) Perceptron Tulajdonképpen: logikai függvényt valósít meg (+1 → logikai 'igen'; -1 → logikai 'nem').

y f a a f s f f fki a a be a= ≡ = = =( ) ( ) ( ( , )) ( )

*x w w x

Page 293: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 12/43

yha

egyé bké nt= =

+ >

sgn( )*

*

w xw x1 0

1

w o

w 1

w n

s y = a

x o =1

x 1

x n

f be = a

f = a

logikai függvények megvalósítása:

elemi logikai műveletek (ÉS, VAGY, NEM):

Page 294: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 13/43

w*

( , , ) ( . , . , . )= = −w w w0 1 2 0 8 0 5 0 5 → ÉS )505030()(

210.,.,.w,w,w*

==w → VAGY

w*

( , , ) ( , , )= = −w w w0 1 2 0 1 → NEM

azaz, ha

akkor, w értéke két részre osztja a bemeneti mintahalmazt → lineárisan szeparálhatók a bemenetek (ú.n. hipersík - lineá-ris összefüggéssel felírható sík - választja két részre a bemeneteket),

pl., ha: w w x w x0 1 1 2 21 0+ + =

akkor x

w

wx

w

w2

1

2

1

0

2

= − −

w x

w x

*

*

> ⇒

< ⇒

0

0

IGEN

NEM

X1

X2

0 2-(w / w )

Page 295: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 14/43

minden x esetén van olyan helyzet, amikor nem választható két összefüg-gő részre a tér → egyetlen perceptronnal a KIZÁRÓ-VAGY (XOR) nem valósítható meg;

több rétegű NH-val tetszőleges logikai függvény megvalósítható (pl. disz-junktiv normál forma → (..AND..) OR (..AND..) OR (..AND..) ... alkalmazá-sával)

tanítási szabály:

w w wi i i← + ∆ ahol

∆ w y y xi t i= −η ( ) és

y s w xi ii= = ∑sgn ( ) sgn ( )

ahol yt a kívánt, helyes válasz, y a kimenet aktuális értéke, η a tanulási mérték;

a perceptron véges számú lépés után, helyesen csoportosít.

Page 296: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 15/43

b.) Adaline (ADALINE = Adaptive Linear Element/Neuron)

jellemzők:

különbség: a perceptron a kimenet,

az adaline a lineáris összegző kimenete alapján tanul;

cél: jó közelítést (approximációt) adni tetszőleges problémára, nem csak lineárisan szeparábilisekre;

tanulás: gradiens alapú → ezért nem lehet a kimenet alapján tanítani

(nem folytonosan differenciálható); jól általánosítható több rétegre is a tanulás módja: → backpropa-gation;

tanítási szabály:

• általános módszer: gradiens alapú Widrow-Hoff szabály

Page 297: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 16/43

alap: lineáris összegző kimenete (s)

s f w xbe i i

i

= = =∑( , )*

w x w x

hibafüggvény: négyzetes hiba

h s s std d

d D

td d

d D

= − = −

∈ ∈

∑ ∑1

2

1

2

2 2( ) ( ( ) )

*w x

h h= ( )w rögzített x mellett, minden mintára (d ∈ D) vizsgálva, n+1 dimenziós parabolát alkot → van minimuma.

súlyszámok módosítása: h gradiensével

w w wú j ré gi= + ∆ és → ∆ w w= − ∇η h( )

ahol

Page 298: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 17/43

∇ =

h

h

w

h

w

h

wn

( ) , , ...,w∂

∂0 1

ekkor (az összes feladat hibája alapján): ∆ w s s xi td d id

d D

= −

∑η ( )

probléma: sok esetben a lokális minimumok eltérítik a számítást; → megoldás: az iteráció előrehaladtával η csökkentése, vagy az inkrementális gradiens módszer használata.

• inkrementális, vagy sztochasztikus gradiens módszer (→ delta-sza-

bály, LMS=Least Mean Square módszer):

minden feladat után hibát számol és korrigál:

h s sd td d( ) ( )w = −1

2

2

és

∆ w s s xi td d i= −η ( )

Page 299: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 18/43

• további módszer lehet: a súlyszámok kiszámítása lineáris programo-zási feladatként.

• összehasonlítás:

= az általános módszer megragadhat egy lokális minimumban, míg az inkrementális módszer konvergál;

= az általános módszer nagyobb számítási kapacitást igényel, de na-gyobb η -val dolgozhat és így gyorsabb;

= kis η mellett, az inkrementális módszer az általános módszer jó kö-zelítése.

• gradiens módszer fontos tanulási alapmódszer:

= alkalmazható: - ha a lehetséges megoldások tere folytonosan paraméterezhető

(pl. a súlyszámokkal a lineáris egység esetén); - a hibafüggvény folytonosan differenciálható a paraméterek függ-

vényében.

= probléma: - néha lassú konvergencia, - lokális minimumok eltérítő hatása.

Page 300: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 19/43

c.) Perceptron, adaline problémái

• sem a perceptron, sem az adaline eredeti formájában nem alkalmas több-rétegű hálózat kialakítására;

perceptron: Boole-függvényt valósít meg; → aktivációs függvénye nem differenciálható, → nem alkalmazható a gradiens módszer a tanuláshoz;

adaline: több rétegben is lineáris marad; → gradiens módszer alkalmazható;

• célszerű: az előnyöket kombinálni;

célszerű a kimenet alapján szabályozni; ezért az aktivációs (és a hiba-) függvény legyen:

→ nem-lineáris, → differenciálható, → egyszerűen kezelhető függvény.

Page 301: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 20/43

feldolgozó elem:

• aktivációs függvény: szigmoid (sgm(.)) típusú

logisztikus függvény:

y f se

a s= =

+−

( )1

1 és 0 1< <y

derivált függvénye:

′ = −y y y( )1

• felépítése: különbség: csak az aktivációs függvény alakja → szigmoid függvény;

Page 302: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 21/43

d.) Többrétegű (MLP = Multi-Layer Perceptrons) hálók

tanulási szabály alapelve:

hiba-visszaterjesztéses (backpropagation) módszer: (J.McClelland - D.Rumelhart: Parallel Distributed Processing, Vol.2., MIT Press, Cambridge,1986)

alap: a kimenetek hibafüggvénye alapján kialakított gradiens-módszer;

w o

w 1

w n

s y = a

x o =1

x 1

x n

f be = a

f =sgm(s) a

Page 303: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 22/43

alkalmazott aktivációs függvény: = szigmoid típusú, = differenciálható;

hibafüggvény: több kimenetet figyelembe vévő négyzetes hiba:

h y yt kd

k Kd D

( ) ( )w = −

∈∈

∑∑1

2

2

ahol D a feladatok(minták) halmaza, K a kimenetek halmaza;

gond:

= sokkal összetettebb, mint egyetlen feldolgozó elem esetén, = több lokális minimum lehet, = kör (hurok)mentes NH-ra alkalmazható;

legismertebb, vizsgált háló: → a háromrétegű (bemeneti, rejtett, kimeneti rétegű) NH.

Page 304: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 23/43

súlyszámok módosítása:

hasonló az inkrementális (vagy sztochasztikus) Widrow-Hoff módszerhez; a módosítás mértéke

arányos: η tanulási mértékkel, az

x adott súlyszámhoz tartozó bemeneti értékkel, valamint a δ hibatényezővel.

= kimeneti elemek hibatényező értéke:

δ k tk k k ky y y y

derivá lt fgv

k ra= − − ∀ −( ) ( )

.

11 24 34

= rejtett (tetszőleges, nem kimeneti) elemek hibatényező értéke:

arányos a rákövetkező elemek kimeneteihez való hozzájárulásai ösz-szegével; (rákövetkező elemek, amelyek az adott elem kimenetével összekötte-tésben vannak; amelyekre az adott elem hatással van)

Page 305: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 24/43

δ δh h h hr r

r R

y y

derivá lt

w h ra= − ∀ −

∑( )11 24 34

ahol R a h-dik rejtett elemre következő elemek halmaza.

tanulási szabály:

• alapelv: hibavisszaterjesztéses (backpropagation) tanulási szabály: → ez a gradiens módszer alkalmazása minden d D∈ feladat eseté-ben, azaz

w w w w wú j ré gi dé s h d re= + = − ∇ ∀ −∆ ∆ η ( )

• kimeneti hibafüggvény:

legyen W = ( )w jk a kimenetekhez csatlakozó (pl.: j-dik csomópontot a k-dik kimenettel összekapcsoló) élek súlyszámainak mátrixa:

Page 306: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 25/43

h y y d D red tkd kd

k K

( ) ( )W = − ∀ ∈ −

∑1

2

2

∆ wW

wk

d

k

hk K kimenetre= − ∀ ∈η

( )

• kimeneti réteg tanítása:

( ∀ ∈k K kimeneti elem esetén)

a kimeneti hibafüggvény alapján:

h

s

h

y

y

s

d

k

d

k

k

k

=

a két tényező eredményeit figyelembe véve, a δ hibatényező, illetve a súlyszámváltozás nagysága:

Page 307: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 26/43

∂δ

h

s

h

y

y

sy y y yd

k

d

k

k

k

tk k k k k= = − − − = −( ) ( )1

ezt felhasználva:

∆ wh

w

h

sx x j k rajk

d

jk

d

k

jk k jk= − = − = ∀ −η∂

∂η

∂η δ ,

• rejtett réteg tanítása:

a j-dik, rejtett rétegbeli elem a hozzákapcsolódó, rákövetkező r eleme-ken (r R j∈ ) keresztül hat a kimenetekre, azaz felhasználva a

∂ ∂ δh sd r r

/ = − hibatényező jelölést:

∂δ δ

h

sy y w j red

j

j j r jr

r R

j

j

= − − = − ∀ −

∑( )1

így,

∆ wh

w

h

sx x i j reij

d

ij

d

j

ij j ij= − = − = ∀ −η∂

η∂

η δ ,

Page 308: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 27/43

e.) Többrétegű (MLP) hálók problémái

• MLP hálók tanítása nehézkes: = több tanítandó réteg → lassú a tanulás, = változó környezethez a folyamatos alkalmazkodás nehezen megold-

ható;

• lokális minimumok, konvergencia: sokváltozós felület miatt, lokális minimumok alakulhatnak ki, nincs álta-lános, globális konvergencia kritérium; lehetséges, javító módszerek:

= súlyszámok kezdőértékeinek beállítása:

a számítást célszerű kis ( − < <0 2 0 2. .wij ) értékekkel indítani → ek-kor, a szigmoid függvény kis értékei miatt, a súlyszám felület közel lineáris → lokális minimum nincs !

= az inkrementális (sztochasztikus) tanulási módszer miatt, a véletlen-

szerűen sorra vett minták következtében, a lokális minimumba ra-gadás esélye csökkenthető;

Page 309: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 28/43

= momentum módszer alkalmazása:

a súlyszámok módosításába a megelőző iteráció (módosítás) ered-ményét is bevonjuk, azaz

∆ ∆ ∆w w w= +ú j elõzõα illetve,

∆ ∆w x wij j ij ij elõzõ= +η δ α)

= tanulási mérték (η) módosítása:

nincs kidolgozott módszer rá; minimum közelében célszerű csök-kenteni az η értékét az oszcilláció elkerülése érdekében; ha a gra-diens nem változik, akkor az η tanulási mérték növelhető;

= NH-k párhuzamos tanítása:

a hálók párhuzamos tanításával, az ellenőrző mintákra legjobb vá-laszt adó hálót tekintjük jónak;

Page 310: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 29/43

• reprezentációs képesség:

= logikai függvények: perceptronokkal tetszőleges logikai függvény megvalósítható; szigmoid elemekkel háromrétegű hálózat szüksé-ges, de a rejtett rétegbeli elemek száma exponenciálisan nő;

= korlátos, folytonos függvény közelítése: 3 rétegű, szigmoid NH-val (kimeneti réteg: lineáris, rejtett réteg: szigmoid elemekből kialakít-va); a rejtett réteg elemeinek száma a függvénytől függ;

= tetszőleges függvény közelítése: négy (két rejtett) rétegű NH-val old-ható meg; kimeneti elemek lineárisak;

• leállítási feltétel, túlzott illeszkedés:

= leállás: - adott számú iteráció után → nem biztos, hogy jó lesz az ered-

mény; - adott hiba esetén → könnyen lokális minimumba juthat;

= túlzott illeszkedés (overfitting):

olyan tulajdonságokat is megtanul, amelyek nem jellemzőek a fela-datokra → csak véletlenszerű hasonlóság van a mintákban;

Page 311: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 30/43

→ nem tud általánosítani, → nem lesz hibatűrő a rendszer;

a túlzott illeszkedés kialakulása felismerhető: az eredmények javul-nak, de az ellenőrző minták esetén az eredmények romlanak;

• más hibacsökkentő módszerek:

a gradiens módszereknél - az irány, és - a lépésköz

megválasztása a meghatározó; = momentum módszer:

a lépésköz kialakításában a megelőző lépés eredménye is figye-lembe vételre kerül;

= iránymenti keresés (line-search):

irányválasztás után, a hibaminimum elérése az adott irányban;

Page 312: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 31/43

= konjugált gradiens módszer: több irányban vizsgálja a minimumot, - először a gradiens negatív irányában, - ezt követően, olyan új irányban, hogy a nullává tett változó az is

maradjon;

= véletlenszerű keresés: - kisebb lehetőség a lokális minimumba ragadásra, - bármely hibafüggvényre alkalmazható;

= más módszerek: Kálmán-szűrő alapú, Levenberg-Marquart módszer, genetikus algoritmus, stb.

• NH mérete: nincs jó meghatározási mód;

optimális méretű háló kialakítása: = nagyobb hálózat csökkentése,

-megoldást nem befolyásoló elemek elhagyása, - kimeneti hibára hatással nem rendelkező elemek elhagyása, - hibafüggvény büntető taggal való bővítése;

= kisebb háló bővítése → genetikus algoritmussal.

Page 313: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 32/43

f.) Radiális bázisfüggvény háló (RBF)

• megfelelő működéshez min. 2 aktív réteg kell:

= nem-lineáris rejtett réteg (fix, vagy felügyelet nélküli tanítással), = lineáris, kimeneti réteg (felügyelt tanítással);

→ célszerűen 1 tanítható réteg: a kimeneti; → előnye: - a tanító lépések száma kisebb,

- kevesebb számítást igényel (nincs hibavisszaterjesz-tés)

• lehetséges típusok:

= radiális bázisfüggvény (RBF) háló (az első réteg mintáktól függő transzformációt végez → a transzfor-máció paramétereit a bemenő minták alapján határozzák meg) → nem ellenőrzött tanulás;

= CMAC (cím-asszociációs) háló (az első réteg fix, nem-lineáris leképzést valósít meg);

= counterpropagation (CPN) háló (az első réteg nem-ellenőrzött Kohonen-háló).

Page 314: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 33/43

RBF felépítése: →két aktív réteg

• első (rejtett) réteg: nem-lineáris kap-

csolat:

y gi i i i

i

i

( ) ( )( , , ) exp( )

1 1

2

22

= = −−

x cx c

σσ

x y( ) ( )2 1

=

• második (kimeneti) réteg: lineáris kap-csolat:

y w gi i i i

i

( ) ( )* ( ) ( )* ( ) ( )( , , )

2 2 2 2 1 1= = =∑w x w y x c σ

• a paraméterek( c wi i, ,σ ) megfelelő választásával tetszőleges folytonos függvény közelíthető; σ értékére nem érzékeny a hálózat, ezért többnyire azonos minden i-re.

0

1

n

1

2

(1) (2) (3)w11

W

x1

x0

xn

n(1) n (2)

...

x(1) y (2)

f

g i

wij

y(1)

yj

Page 315: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 34/43

hálózat bonyolultsága: → a tanító minták száma határozza meg; • kevés a tanító minta:

= minden mintának megfelelhet egy bázisfüggvény központ → hozzá-rendelhető egy feldolgozó elemhez;

= kimeneti súlyszámok kialakítása, tanítása, egy lineáris egyenletrend-szer megoldását jelenti;

• sok a tanító minta:

= minták egy-egy csoportjához rendelhető egy-egy feldolgozó elem → klaszterezés; pl.: tanuló vektor kvantálás (Learning Vector Quantization),

Kohonen-hálók, k-közepes klaszterezés;

= ha a minták száma nagyobb a rejtett elemek számánál, akkor → a súlyszámokat a legkisebb négyzetes eltérés alapján számoljuk:

= klaszterek, paraméterek kialakítása: a tanító pontokat úgy csoportosítjuk, hogy a legközelebbi közép-ponttól mért távolságok négyzetösszege → min legyen;

Page 316: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 35/43

g.) Alkalmazási példák NH kedvelt modellezési mód:

→ viszonylag egyszerű, → könnyen érthető, → megvalósítható;

feladat jellemzők:

= általában nem-lineáris feladatok; a modellezendő feladatról megfigyelés alapján gyűjtünk információt; feltétel: elegendő minta álljon rendelkezésre;

= van ismert megoldó algoritmus, de valamilyen ok miatt nem alkalmazha-tó (nem hatékony, nem gyors)

feladat típusok: = jelfeldolgozás, alakfelismerés (kép, hang), = rendszer identifikáció (meghatározás), vezérlés, = robottechnika, = diagnosztika, = paraméterek becslése (pl. gazdasági folyamatok);

Page 317: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 36/43

megvalósítások: = statikus, előrecsatolt, = dinamikus: lineáris rendszerek jobban kidolgozottak,

nem-lineáris rendszerekhez a NH-k jól alkalmazhatók (adaptiv, időfüggő lineáris rendszerek is nem-lineárisak-ként kezelhetők);

= típus kiválasztása függ:

- rendelkezésre álló tanítási időtől, - tanuló minták számától, - előzetes információktól;

= probléma az adatelőkészítés (előfeldolgozás) mértéke:

- kevés előkészítés és a NH bonyolult, nehezen tanítható, nem kielégí-tő a működése;

- lényegi részek előkészítése (kiemelése, transzformációja), NH gyor-sabb, könnyebben tanítható, de az előfeldolgozás miatt információ-vesztés léphet fel → rosszabb működés.

Page 318: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 37/43

alakfelismerés:

feladat: kézzel írott számjegyek (irányítószám) felismerése • 1.változat: többrétegű perceptron háló (MLP)

bemenet: 16x16-os raszterkép 1.rejtett réteg: 12 db 8x8-as neuron csoport, minden elemhez a beme-

net 5x5-ös részlete tartozik (a szomszédos elemekhez 2 px-lel eltolt területek tartoznak); minden neuron csoport egy-egy tulajdonságot keres a kép e-gyes részein;

2.rejtett réteg: 12 db 4x4-es neuron csoport; minden csoportban, min-den elemhez az 1.réteg egy 5x5-ös területe kapcsolódik;

3.rejtett réteg: 30 neuron, amelyek mindegyike a 2. réteg minden ele-mével kapcsolatban van;

kimeneti réteg: 10 neuron a tíz számjegynek megfelelően; minden e-lem a 3. réteg minden elemével kapcsolatban van;

Page 319: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 38/43

tanítás: hiba-visszaterjesztéses módszerrel, 7000 tanító, 2000 ellenőr-ző számjegy;

eredmény: 10% bizonytalan → kézi feldolgozás; <1% hibaarány;

• 2.változat: előfeldolgozással rendelkező, egy-rétegű perceptron háló

bemenet: 16x16-os raszterkép,

előfeldolgozás: vonalrészletek (vizszintes, függőleges, átlós) kiemelé-se Kirsch-maszkkal → 4 db 16x16-os kép → 4 db 8x8-asra nor-malizálva → 256 bemenet;

1.rejtett réteg: 45 db neuron, egy-egy számpárért felelős; a lineáris szeparálhatóság miatt, minden neuron 2 számjegy elkülönítését végzi;

kimeneti réteg: 10 db ÉS kapu;

tanítás: hiba-visszaterjesztéses módszer, a küszöbérték növelésével emelték a visszautasítások számát, de csökkentették a hiba-arányt;

alkalmazása: kevesebb a minta, vagy gyors tanulás kell;

Page 320: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 39/43

beszédhang előállítása (NETtalk rendszer):

beszédhangok előállítása a szövegkörnyezet figyelembevételével: 7 egy-mást követő karakter kerül a bemenetekre és a középsőre ad megoldást;

bemenet: 203 db rejtett réteg: 80 db neuron,

kimeneti réteg: 26 db neuron → szintetizátor automatizált autóvezetés (ALVINN=Autonomous Land Vehicle in Neural

Network):

bemenet: 30x32-es kép + kormányállás;

rejtett réteg: 5 neuron, kimeneti réteg: 30 db a lehetséges kormányállásoknak megfelelően

(van olyan megoldás is, ahol a Gauss-görbe csúcsa jelöli ki a kí-vánt irányt)

tanítás: menet közben, de a felvett képek transzformáltjait is használ-

ták;

Page 321: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 40/43

6.4.2. Nem ellenőrzött (nem felügyelt) tanulású hálózatok

tanulási módok: = Hebb-féle tanulás, = versengő tanulási mód;

nem ellenőrzött tanulási forma: tanulásnál a kí-vánt eredményt nem veszi figyelembe a rendszer; → önszervező háló (tulajdonképpen saját működését alakítja);

típusok:

= Kohonen-háló: Hebb-féle + versengő tanulás; ellenőrzött tanulási módú változatai: - tanuló vektor-kvantálási háló (LVQ = Learning Vector Quantization

Network), - counterpropagation háló

= főkomponens-hálózatok: Hebb-tanulási mód; = dinamikus hálók:

Jordan-, Elman-hálók;

0

1

n

1

2

(1) (2)

x1

x0

xn

...

x Kohonen-réteg

y1

y2

y

Page 322: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 41/43

főbb alkalmazási területek:

→ legtöbb háló lineáris: a feldolgozó elem súlyozott összegzést végez;

= bemeneti minták csoportosítása, osztályozása hasonlóság alapján: - nem csak a minták besorolása, de a - csoportok kialakítása is feladata → Kohonen-térkép;

= adattömörítés (főkomponens analízis, faktoranalízis); adatokat kevesebb paraméterrel írunk le → az eredeti adatok közelíté-se.

6.4.3. Analóg tanítású/tanulású hálózatok

(jellemző: a háló felépítése alapján - elvben -, számíthatók a súlyszámok)

Hopfield-háló (J.Hopfield, 1982)

főbb alkalmazási területek:

• asszociativ tárolás (a betanított értéket adja vissza); → auto-, hetero-asszociativ tárolás;

Page 323: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA10- 42/43

• kombinatorikus optimalizálási feladatok megoldása; • kiszámíthatósági feladatok megoldása;

asszociativ tárolás: zajos, torzított jelsorozat alapján felismerni és vissza-adni a helyes jelsorozatot (képet, jelkombinációt, stb.)

felépítése:

• minden neuron minden neuronnal össze van kötve, • minden neuron kimenete egyúttal a háló kimenete is, • alapmodellben: minden neuron -1, +1, vagy 0, 1 kimenetű percept-

ron; tanulás:

• Hebb-szabály alapján: • energia-függvény alapján:

Page 324: Mesterséges intelligencia

GÁBOR DÉNES FŐISKOLA

INFORMATIKAI INTÉZET

MESTERSÉGES INTELLIGENCIA

11. ELŐADÁS (előadásvázlat)

DR. CSERNY LÁSZLÓ főiskolai tanár

BUDAPEST, 2018/2019-2

Page 325: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 2/34

TÉMAKÖRÖK

Bevezetés

1. Mesterséges intelligencia fogalma, előzmények. 2. Alapproblémák, a problémamegoldás feltételei

3. Keresési eljárások (informált, nem-informált keresések)

4. Tudásreprezentációs módszerek, következtetés 5. Bizonytalanságkezelés (valószínűségi, fuzzy rsz.)

6. Gépi tanulás (neurális hálók) 7. Intelligens (/tudásalapú) rendszerek

7.1. Tudásalapú rendszerek jellemzői

7.2. TA rendszerek fejlesztése, módszertanok 7.3. Fejlesztendő területek meghatározása

7.4. TA rendszerek kialakítása

7.5. TA rendszerek jellemző formáinak kialakulása

Page 326: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 3/34

7. TUDÁSALAPÚ RENDSZEREK

7.1. Tudásalapú rendszerek jellemzői

7.1.1.Tudás, tudáskezelés (tudásmenedzsment) tudás előtérbe kerülése, szervezeti tudás

- szervezetnél dolgozók tudása, amely a szervezet munkájához kapcsoló-dik,

- nehezen dokumentálható tapasztalatok, itélőképesség, stb.

- az információ megléte önmagában nem elegendő; használni is tudni kell:→ tudás

tudás fogalma, lényege:

• adat, információ, tudás, ismeret fogalmak keverednek

Page 327: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 4/34

adat: kezelt jelsorozat: jelentés, tartalom nélkül kérdés:

= mennyi idő alatt érhető el, tárolható-e? = mennyi tárolható? = mibe kerül a tárolása, begyűjtése, szétosztása?

információ: = jelentéssel (tartalommal) bíró adat; az értelmezéssel kap

jelentést. = minden, ami egy adott helyzetben bizonytalanságunkat hi-

vatott csökkenteni kérdés:

= mennyire hasznos? = mekkora az információtartalma?

informális, formális információ

nem az adathordozó az információ !!

Page 328: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 5/34

tudás: nehezen meghatározható dolog!

= ismeret és tudás különbsége, ismeret alatt olyan információt értünk, amely egy adott terü-leten segítheti a felhasználó döntését;

= a tudás rögzített (tárolt) és hasznosítható ismeret,

tapasztalással, gyakorlással, környezeti (kontextuális) isme-retekkel összekapcsolva jön létre;

= egyén és szervezet számára egyaránt létezik.

szervezeti tudás:

a szervezet tevékenysége során keletkező tapasztalat, rutin, el-járás, döntési módszer, stb.

tudás létrejöttének összetevői, forrásai:

− tapasztalat, − itéletalkotás → dogmává válhat, − igazság, igazolhatóság, − automatizmus (heurisztika), intuició.

Page 329: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 6/34

tudásmenedzsment:

a felfedett, összegyűjtött tudás értékké tétele: szervezni és hasznosítani kell !

→ tudásmenedzsment

7.1.2.Intelligens (tudásalapú) információs rendszerek információs rendszer fogalma:

a szervezet (döntéshozatali, koordinációs, stb.) tevékenységeit kiszolgáló információfeldolgozó, -továbbító, -tároló, -gyűjtő és -szétosztó rendszer.

információs rendszer vizsgálati oldalai:

egyed-tulajdonság-érték hármas valamely részét, vagy egészét kell tá-rolni, feldolgozni

Page 330: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 7/34

• tárolási, feldolgozási alapegység:

lényeges a legkisebb kezelt, feldolgozott "ismeretegység" → szemcsé-zettség (granularity)

− adattípusú elemek:

= adatelem, = összetett adatstruktúra (rekord, adattár, adatbázis; kép-, hangállo-

mány, dokumentum, stb.), = objektum szerkezet → műveleti elemtípus is van benne;

− művelettípusú elemek:

= elemi művelet (utasítás), = utasítássorozat (program), = összetett műveleti szerkezet (modell):

→ adattípusú elem is van benne

Page 331: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 8/34

− állítástípusú elemek: = elemi tényállítás (egyed-tulajdonság-érték), = összetett állítás (következtetés, szabály, stb.), = eset leírás: → adat- és művelettípusú elemek is vannak benne.

• ismeretbázis (IB) szerkezete:

Az IB-ban minden ismeretelem típus megtalálható.

− tárolási/továbbítási szerkezet (fizikai, logikai szint)

logikai szint: = hierarchikus,

= hálós, = relációs, = asszociatív

− térbeli szerkezet (centralizált, decentralizált)

Page 332: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 9/34

• feldolgozás, tárolás módja:

− procedurális (→ imperatív programozási nyelvek: C, C++, Basic, Fortran, stb.),

− MI technikára épülő → megfelelő programozási nyelv (→ funkcionális: LISP, deklaratív:

Prolog), → megfelelő szg. architektúra (pl.: LISP-re alapuló?!)

7.2. TA rendszerek fejlesztése, módszertanok

A fejlesztés szokásos lépései, részfeladatai:

rendszerelemzés: = lehetőségvizsgálat, = követelmények meghatározása;

rendszertervezés: = logikai, = fizikai, = végfelhasználó szerepe: résztvenni a fejlesz-

tésben;

Page 333: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 10/34

kivitelezés: = programozás, = tesztelés;

telepítés: = üzembeállítás, átállás,

= üzembehelyezés, = karbantartás.

7.2.1. Jellemző, alkalmazott módszertanok

1. strukturált módszertanok

minőségbiztosítás szempontjából előnyös;

• strukturált elemzés: az információfeldolgozás folyamatának ábrázolá-sára: → adatfolyam diagram (szimbólumai: folyamatvonal, feldolgozás, táro-

ló, külső egyed [inf. forrás, vagy nyelő]); → többszintű ábrázolás (legfelső a kontextus diagram); → adatszótárak (pontos adatleírással, felhasználással); → folyamat (feldolgozás) specifikációk

Page 334: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 11/34

• strukturált tervezés: felülről-lefelé (top-down) módszer (pl.: Jackson-módszer) → szerkezet ábra

• strukturált programozás (szekvencia, szelekció, iteráció) • folyamatábrák (adat- és program folyamatábrák; utóbbi kevésbé hasz-

nált a strukturált elv miatt) hátrány: lassúság, költségesség, folyamatorientáltság.

2. objektumorientált fejlesztési módszertan

objektum: = adatok, = metódusok.

cél: = fejlesztés gyorsítása,

= költségek csökkentése, = újrafelhasználhatóság növelése.

→ UML (Unified Modeling Language) használata

Page 335: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 12/34

3. CASE eszközök

• fejlesztési keretrendszer automatizált lépésekkel → általában valamelyik strukturált, vagy objektumorientált módszertan-

ra épülnek;

• lényegi részei:

= diagramkészítő eszközök (adatfolyam ábra, szerkezet ábra, egyed-esemény kapcsolati ábra, stb.),

= prototípus készítő eszközök (képernyő, menü, nyomtatási kép szer-kesztő, stb.),

= formai ellenőrző eszközök (pontosság, teljesség vizsgálata), = dokumentációkezelő (az elkészült részek [program, adatszerkezet,

projekt, ...] dokumentációjának rendezett megőrzése, kezelése), = kód generátor (végrehajtható kód előállítása),

= fejlesztési módszertani ellenőrző eszköz (a fejlesztés folyamatának követésére),

= projekt kezelő eszköz (ütemezés, erőforrás elosztás, kezelés, stb.).

Page 336: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 13/34

7.2.2. Prototípus módszer

TA rendszerek jellemző fejlesztési módszere, különösen a bevezető sza-kaszban. Prototípus: Olyan kis méretű, működő rendszer, amely segít bemutatni a kapcsolati felületeket, az IB szerkezetét, az alkalmazott következtetési rend-szert; segíti a felhasználót igényei, követelményei megfogalmazásában.

Használatának indokai:

• a TA rendszerek bonyolultsága, • a felhasználó ritkán tudja pontosan, hogy mit akar, → nem ismeri a lehe-

tőségeket, • a fejlesztők és a felhasználók közötti gyorsabb információcsere elősegí-

tése, • a felhasználó igényei szerint kell a rendszert kialakítani:

= a fejlesztő nem ismeri olyan mélységben a területet, mint a felhaszná-ló, a szakértő,

= az alkalmazói igények a meghatározók, bár

Page 337: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 14/34

= a felhasználó nem mindig ismeri fel a lehetőségeket → tudásmérnök szerepe,

= a felhasználói igényeket csak kritikával szabad figyelembe venni.

A prototípus az alkalmazás célja szerint lehet:

• feltáró/kutató prototípus: az igények, a működési mód feltárását segíti; cél a gyors elkészítés és a könnyű módosíthatóság;

• kisérleti prototípus:

a rendszer elemek és azok kapcsolatainak vizsgálatát szolgálja; a fela-datfelbontás alapján kialakított rendszerelemek ellenőrzését segíti;

• evolúciós prototípus:

iterativ módon előállítandó rendszer kezdeti változata; már induláskor át kell gondolni a rendszer szerkezetét és működési jellemzőit, mert később csak többlet ráfordítással módosítható.

Page 338: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 15/34

Felhasználás alapján beszélhetünk:

• eldobható (csak a felméréshez, bemutatáshoz használt), és

• újrahasználható (a végleges rendszerbe beépülő) prototípusról.

Fajtái: • teljes:

a rendszer összes funkcióját tartalmazza; a végső rendszer kifejleszté-sének alapjául szolgál.

• részleges, nem teljes: a rendszer valamelyik területét hangsúlyozzuk, emeljük ki: = vertikálius prototípus: a lényeges funkciók vannak kidolgozva, teljes

mélységben → funkció bemutatása;

= horizontális prototípus: minden funkció jelen van a modellben, de csak bemutatási szinten → kapcsolati felületek bemutatása;

= forgatókönyv prototípus: valamely konkrét feladat feldolgozásának be-mutatásával, a legfontosabb jellemzők kiemelése.

Page 339: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 16/34

Prototípus készítés

előnyei:

• megállapítható, hogy az adott problématerületet érdemes-e TA rend-szerrel kezelni,

• a fejlesztés korai szakaszában tapasztalatokat lehet szerezni a rend-szer működéséről,

• különösen alkalmas a végfelhasználói felületek kialakítására, az igé-nyek meghatározására;

• felgyorsítja az ismeretgyűjtés folyamatát,

• nem kell még figyelmet fordítani a hatékonyságra, a karbantarthatóság-ra;

hátránya:

• nem helyettesíti a szisztematikus tervezést, • készítéséhez a legjobb képességű szakemberek kellenek, • nagy a kockázat, hogy a rendszer nagy részét újra kell írni, • nehéz megszabadulni a prototípusban alkalmazott megoldásoktól.

Page 340: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 17/34

7.3. Fejlesztendő területek meghatározása

Elsősorban a TA problémák, területek kijelölése a cél. A lehetséges területek nem mindegyikét célszerű kiválasztani; → alkalmazási területek a fontosak!

Két fő feladatcsoport van:

• problémamegoldást segítő (valakinek a szakértelmét helyettesítő), és • folyamat működését javító, rutinfeladattá tévő feladatok.

Legfontosabb, lehetséges alkalmazási területek:

• döntési fák, procedurális problémák; → hagyományos programozási nyelvvel megvalósítható feladatok;

• diagnosztizáló feladatok: megfigyelt, vagy gyűjtött adatok alapján következtet; viszonylag kevés kimenet a bemenetekhez képest;

→ szabályalapú, ritkábban keret- és szabályalapú, többnyire célvezé-relt megvalósításúak;

Page 341: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 18/34

• monitorozó feladatok: olyan diagnosztizáló probléma, amely ismétlődően megoldásra kerül;

→ kis méretben szabályalapú, adatvezérelt; bonyolultabb problémánál hibrid megoldású;

• folyamatirányítási feladattípus: monitorozás speciális változata; a folyamattól érkező jelek folyamatos (ciklikus) feldolgozásával, kritikus érték elérésekor ad előírást a be-avatkozásra; → hibrid, adatvezérelt megoldásúak;

• ütemezési, tervezési feladatok: végrehajtandó tevékenységek hozzárendelése erőforrásokhoz, tekin-tettel azok rendelkezésre állására és időbeli használati lehetőségeire; → hibrid, adatvezérelt technika;

• konfiguráló, konstruáló típusú feladatok: a rendelkezésre álló elemkészletből a szerkezet igény szerinti öszeállí-tása a lehetséges kapcsolatokat figyelembe véve; például: = egyszerű struktúrájú (szg.konfigurálás), = bonyolult, konfliktusfeloldó típus (műhelyszintű gyártásütemezés); → hibrid technika;

Page 342: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 19/34

• előrejelző típusú feladatok: beérkező jelek alapján, a korábbi hasonló esetek, vagy szabályok fel-használásával, a jelenlegi helyzetre ad megoldási javaslatot; → hibrid, esetalapú feldolgozás.

Kérdés: a TA rendszer a feladatmegoldás mely szakaszában tud segíteni?

= az információgyűjtésben? = a kiértékelésben, megoldásban, azaz a döntéshozatalban? = az eredmény hasznosításában?

Kerülendők azok a feladatok, amelyek

• nehezen megfogalmazhatók (→ hivatkozás a 'józan paraszti ész'-re) → esetleg kutatási téma,

• gyorsan változik a terület ismeretanyaga → a rendszer könnyen insta-billá, megbízhatatlanná válik,

• a kapcsolódó szakértői vélemények nem egyeznek, ellentmondanak egymásnak.

Page 343: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 20/34

7.4. TA rendszerek kialakítása

Cél: a rendszer logikai szintű megtervezése a prototípus alapján meghatáro-zott követelményeknek megfelelően.

Részei: = IB tervezése, kialakítása,

= rendszerstruktúra kialakítása, = ellenőrzés megtervezése.

7.4.1. IB kialakítása

IB kialakítás lépései:

• ismeretgyűjtés/szerzés: (információk, eljárási módok, döntési szabályok összegyűjtése)

• ismeretek strukturálása: (kapcsolatok feltárása, rendszerezése, elemek csoportosítása)

• megvalósítás, formalizálás: (összegyűjtött ismeretek valamilyen formában történő megvalósí-tása → ismeret/tudás reprezentáció)

Page 344: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 21/34

a.) Ismeretgyűjtés/szerzés

1. Ismeret fogalma, összetevői, szintjei

Ismeret (vs. tudás) alatt olyan információt értünk, amely egy adott területen segítheti a felhasználó döntését.

Kérdés:

• az ismereteknek milyen összetevői, jellemzői vannak? • az ismeretek megjelenésének milyen szintjei vannak?

→ összetevők: az ismeretek lehetséges jellemzőit, vizsgálati oldalait

jelentik. Ezek, pl.:

= elnevezés, megnevezés: (hogy hivatkozni tudjunk rájuk); = leírás, jellemzés: a vizsgált dolog, objektum fontos tulajdonságai,

attributumai, amelyek valamilyen értékkel rendelkeznek; = szervezési, rendezési elv: csoportosítás, birtoklás (magába foglalás)

módja; (pl. az alma egy (is_a) gyümölcs, a gyümölcsnek (has_a) magja van);

Page 345: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 22/34

= kapcsolat, kapcsolódás: az ismeretelemek közötti kapcsolatok, ösz-szefüggések; ezek lehetnek: - statikusak (pl. rokonsági kapcs.), - dinamikusak (pl. valamilyen procedurális folyamat, következtetés

révén); = korlátozás valamely összetevőre vonatkozóan (pl. attributum értéké-

re, kapcsolatra vonatkozóan); → segít az érvényesség ellenőrzésében, → az IB integrításának megőrzésében.

Ismeret szintjei: attól függ, hogy milyen mértékben lettek figyelembe véve alapelvek, oksági kapcsolatok. = felszíni ismeretek: olyan információk, amelyek egyedi helyzetekre

vonatkoznak; = mély ismeretek: a vizsgált terület belső kapcsolatait, törvényszerűsé-

geit, oksági összefüggéseit tükrözi vissza → modell; nehezebb összegyűjteni.

Page 346: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 23/34

2. Ismeretek forrásai

Igen nagy számú (pl. könyvek, újságok, filmek, megfigyelések, stb.). Ezek le-hetnek:

• dokumentált források (valamilyen formában rögzített, megjelenített); pl. → adatbázisok: egyre nagyobbak, egyre nehezebb kezelni → adatbá-

nyászat;

→ internet: nagy tömegű ismeret gyűjthető össze rövid idő alatt; • nem dokumentált: emberi tudás, nehéz feltárni.

3. Ismeretek megjelenítési típusai

Megjelenítési mód alapján több típusról beszélhetünk:

• deklaratív, leíró megjelenítés: tényeket közöl: mi micsoda; → felszíni ismeret: az IB kezdeti kiépítési szakaszában fontos;

• procedurális megjelenítés: megadja, hogy a dolgok hogyan működnek, viselkednek; → megadja, hogy a deklaratív ismereteket hogyan használjuk, hogyan

következtessünk;

• metaismeret: ismeret az ismeretről.

Page 347: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 24/34

Jellegzetes ismeretelemek az IB-ban:

• tények, kizáró tények, bizonytalan tények, • korlátozások, • tipikus helyzetek, • objektumok és kapcsolataik, • folyamatok, • probléma megoldó eljárások, heurisztikák, döntési szabályok, • viselkedési leírások, hitek, • hipotézisek, elméletek, • szótári definiciók, • metaismeretek.

Page 348: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 25/34

4. Ismeretgyűjtés szervezeti környezete, feltételei

Az IB kialakításának folyamata (tudás előhívása, gyűjtése; ismeretek struktu-rálása; ismeretek formalizálása, megvalósítása) csak megfelelő környezet-ben, feltételek között kivitelezhető.

• szervezeti környezet: − vezetői támogatás, − korábbi fejlesztési, alkalmazási tapasztalatok, − szervezeti struktúra mérete, formája (az elérhető ismeretforrásokat

befolyásolja), − technológia kultúra: új technológia, eljárás befogadásának motivált-

sága;

• projekt környezet: projekt célok és korlátok (pü-i, időbeli, munkaerő, stb.) behatárolják az ismeretgyűjtést;

• ismeretgyűjtés közvetlen környezete: a szakértő számára az eredeti problémamegoldási környezetet célsze-rű kialakítani.

Page 349: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 26/34

5. Ismeretgyűjtés nehézségei

Nehézségek alábecsültek! Problémák:

• ismeretek gyűjtése az első elérhető, vagy legkézenfekvőbb forrásból; → célszerű a szakértő már rendszerezett tudását igénybe venni;

• nehéz 'zajos' környezetből (pl.: híradások, újságok,stb.) kigyűjteni az is-mereteket;

• nehéz megfogalmazni, kifejezni a tényleges problémamegoldó folyama-tot; → az IB-ban megjelenő megoldási módszer eltérhet a szakértő tényle-

ges megoldási módjától;

• nehéz gépi feldolgozási formába önteni az ismereteket, a szakértő nem emlékezik minden lépésre;

• nehéz az ismeretek strukturálása;

• több ember (szakértő, fejlesztő, felhasználó) vesz részt a folyamatban;

• mindenki másként látja a problémát;

Page 350: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 27/34

• a szakértő tudása feltételezetten jó, de célszerű más módon ellenőrizni;

• a szakterület minden oldala nincs körüljárva; fontos területek hiányosak lehetnek;

• lényegtelen információk kerülhetnek az IB-ba; • a kivételes helyzetek kezelése hiányzik;

• a megfigyelés zavarja és befolyásolja a szakértő munkáját, gondolat-menetét;

további problémák:

• a szakértő nem ér rá, nem tud együttműködni a fejlesztővel;

• az ismeretek pontosítása, ellenőrzése nehéz;

• a fejlesztők hajlamosak egy, vagy két forrást felkutatni csak; • az ismeretszerző eljárások nem kidolgozottak

Fontos az ismeretgyűjtő személyisége is !

Page 351: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 28/34

6. Ismeretgyűjtés módszerei

Az ismeretgyűjtés alapstratégiái:

• a szakértő tevékenysége, megoldási lépései alapján meghatározni az általa alkalmazott modellt, szerkezetet;

• az elérhető információk alapján a modell felállítása, majd a szakértő te-vékenységének beillesztése a modell keretébe.

Ismeretgyűjtési módszerek csoportjai:

• kézi/nem géppel segített módszerek (pl.: interjúkészítés, protokoll elem-zés, megfigyelés, stb.);

• félig automatizált módszerek (pl.: ú.n. 'repertory grid analysis' mód-szer);

• automatizált módszerek (pl.: induktív módszer, döntési fák, adatbányá-szat → eset alapú következtetés, neurális hálók, stb.).

Page 352: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 29/34

7.Automatizált ismeretgyűjtés néhány eszköze

7/1. Szabálygenerálás indukcióval

• lényege:

= példák alapján történő valószínűségi tanulás, = a példák jellemző tulajdonságaikkal és azok értékeivel táblázatosan

tárolásra kerülnek,

tulajdonságok (Tj)

esetek (Ei)

tulajdonság értékek

= példákból (döntési fa segítségével) szabályok generálása,

= új feladat megoldása: az esettárban keresés és a hasonló példa megoldása lesz az eredmény.

Page 353: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 30/34

• szabálygenerálás módszere:

→ leggyakrabban az ID3 (Iterative Dichotomiser 3) módszer:

minimális feltételes entrópia (átlagos információ, bizonytalansági mér-ték) alapján sorolva a tulajdonságokat (a feladatok véletlenszerű cso-portosításának csökkentése érdekében), optimális döntési fa generálá-sa a szabályok előállításához. = jelölések: megoldásosztályok száma: p

példák száma osztályonként: q q qp1 2, , ...., megoldás /eset/ osztályok: E1,E2,.....Ep

példák száma összesen: q qkk

p

==

∑ 1 tulajdonságok száma: n tulajdonságok: T1,T2,...,Tn

= egy példa valamely esetcsoportba kerülésével kapcsolatos entrópia:

q

qlg

q

q

EPlgEPEH ip

i

i

i

p

i i 2121 )(

1)()( ∑∑

==−==

Page 354: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 31/34

= keressük azt a Tj tulajdonságot, amelyhez tartozó )TE(Hj

feltételes

entrópia alapján, a legkisebb bizonytalansággal tudjuk csoportba sorolni az aktuális példákat, eseteket; majd a tulajdonságok feltéte-les entrópiájának növekvő sorrendje adja a rendezési elvet a dönté-si fa felépítéséhez;

= bármely j-dik tulajdonság esetén, ha a tulajdonság lehetséges érté-keinek, csoportjainak száma: nj és az egyes csoportokba sorolható példák száma:

jjnjkjjq,...,q,...,q,q

21

⇒ a feltételes entrópia:

rejq

q

q

q

q

q

q

q

q

q

TEPTEPq

q

TEHq

qTEHTPTEH

jj

j

jj

n

k

jk

ijkp

i

ijk

jk

ijkp

i

jk

ijkn

k

jk

p

i jkijki

n

k

jk

jk

n

k

jk

jk

n

k jkj

−∀−=⋅−=

=⋅−=

=⋅=⋅=

∑ ∑∑∑

∑∑

∑∑

= ===

==

==

1 1 21 21

1 21

11

lglg

)(lg)(

)()()()(

Page 355: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 32/34

= az első helyre sorolandó tulajdonság (a leginkább meghatározó tulajdonság a bizonytalanság csökkentésében) feltételes entrópiája:

)(j

j

TEHmin

= a döntési fa következő szintjén, az egyes csomópontokhoz szétosz-tott példák képezik az aktuális E halmazt.

= az így kialakuló döntési fa alapján generálhatók a szabályok; példá-ul: "ha T1 = t1 ÉS T2 = t2 .... ÉS ...Tn = tn akkor Qi a megoldás"

• problémák:

= osztályozó tulajdonságok kiválasztása problémás, = nincs minden tulajdonság figyelembe véve, ami lényeges lenne, = a példák nem fedik le teljeskörűen a döntési teret;

• célszerű alkalmazni, ha = sok mintapélda van, = csak kiindulásként akarjuk használni a szabályrendszer további fino-

mításához, = használat közben a kimenet ellenőrzött a felhasználó által, = fel lehet vázolni, a kérdéses kimenetelű feladatokat, hogy a felhasz-

náló dönthessen további feltételek alapján.

Page 356: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA11- 33/34

7/2. Adatbányászat

• lényeg: az intelligens adatbányászat olyan információkat tár fel az adattárházakban, amelyeket lekérdezéssel, jelentéskészítéssel nem le-hetne elérni.

• fő információ előállítási formák:

= asszociációk, = adatsorok, szekvenciák, = osztályozás, = csoportosítás (klaszterezés), = előrejelzés;

• eszközök: = esetbázis alapú következtetés, = neurális hálózatok, = intelligens ügynök (robot) programok.

Page 357: Mesterséges intelligencia

GÁBOR DÉNES FŐISKOLA

INFORMATIKAI INTÉZET

MESTERSÉGES INTELLIGENCIA

12. ELŐADÁS (előadásvázlat)

DR. CSERNY LÁSZLÓ főiskolai tanár

BUDAPEST, 2018/2019-2

Page 358: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 2/30

TÉMAKÖRÖK

Bevezetés

1. Mesterséges intelligencia fogalma, előzmények. 2. Alapproblémák, a problémamegoldás feltételei

3. Keresési eljárások (informált, nem-informált keresések)

4. Tudásreprezentációs módszerek, következtetés 5. Bizonytalanságkezelés (valószínűségi, fuzzy rsz.)

6. Gépi tanulás (neurális hálók) 7. Intelligens (/tudásalapú) rendszerek

7.1. Tudásalapú rendszerek jellemzői

7.2. TA rendszerek fejlesztése, módszertanok 7.3. Fejlesztendő területek meghatározása

7.4. TA rendszerek kialakítása

7.5. TA rendszerek jellemző formáinak kialakulása

Page 359: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 3/30

7. TUDÁSALAPÚ RENDSZEREK

7.1. Tudásalapú rendszerek jellemzői

7.2. TA rendszerek fejlesztése, módszertanok

7.3. Fejlesztendő területek

7.4. TA rendszerek kialakítása 7.4.1. IB kialakítása a.) Ismeretgyűjtés/szerzés

Page 360: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 4/30

b.) Ismeretek strukturálása

Az összegyűjtött ismereteket rendezni, szervezni kell. Ez függ a TA rendszer működési módjától.

Leggyakoribb TA rendszer típusok:

• szabályalapú rendszerek:

= az IB-ban szabályokkal leírt ismeretek találhatók, = az ismeretfeldolgozás cél-, vagy adatvezérelt módon történik;

• keretalapú rendszerek:

= az egy fogalomhoz kapcsolódó ismeretek együttes kezelését, tárolását jelenti, → technikai megvalósítása: objektumorientáltság alkalmazása,

azaz adatok és ezen dolgozó metódusok együttes kezelésének megoldását jelenti;

= a feldolgozás alapjaiban esemény-vezérelt, az objektumok közötti üzenetváltással;

Page 361: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 5/30

• hibrid rendszerek: = az IB többféle tárolási módot tartalmaz:

- szabályalapú és - keretalapú ismerettárolási formát;

= a következtetési rendszer alapjaiban esemény-vezérelt (→ adatve-zérelt); függ a szabályokkal megvalósított kapcsolatoktól is;

• induktív (eset-alapú) rendszerek:

= többféle ismerettárolási forma; a megoldott példákat jellemzőikkel és azok értékeivel, az eredménnyel együtt tárolja;

= a következtető rendszerbe be van építve egy szabálygeneráló rész, amely a tárolt esetek alapján dolgozik;

• blackboard (munkatábla) rendszerek:

= több rendszer együttműködése egy közös 'munkatáblá'-n keresztül, üzenetek küldésével.

Page 362: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 6/30

1.Szabályok kialakítása A szabálykészlet kialakítási stratégiái:

• egyik lehetőség:

= kisebb problémák megoldatása a szakértővel, kérdések alapján a következtetési logika feltárása → szabályok kialakítása,

= új probléma megoldásával kiegészíteni a szabálykészletet → fokoza-tos bővítéssel (pl.: indukciós módszerrel);

• másik lehetőség:

= interjú keretében közvetlenül meghatározni a szabályokat. A szabálykialakítás lépései:

• változók feltárása: a szabályokban hivatkozott változók meghatározása; ebben olyan kérdések segítenek, pl.:

→ miről kell tudnia (a szakértőnek) a probléma megoldásához?

Page 363: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 7/30

→ milyen tényezők befolyásolják döntésében? → milyen kapcsolatok vannak a döntési tényezők között? → milyen dolgokat, hipotéziseket kell meghatározni a probléma

megoldásához?

• változók, fogalmak(objektumok) közötti kapcsolatok feltárása → ontológiai módszer,

• feltárt változók dokumentálása (név, leírás, értéktípus, ... függőség,

stb.), • függőségi diagram készítése (mitől mi függ?), • szabályok felállítása a függőségek alapján (nem célszerű túl bonyolult

szabályokat kialakítani), • szabályhalmaz ellenőrzése, redukálása (átfedések megszüntetése,

összevonás, stb.), • szabályhalmaz kezdőértékezésének meghatározása (sorrend, forrás).

Page 364: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 8/30

A szabályhalmaz strukturálása:

Nagy szabályhalmazt célszerű kisebb, logikailag összetartozó egységekbe (kontextusokba) szervezni:

• szabály-részhalmazok kialakítása: (logikailag, funkcionálisan szorosan kapcsolódó szabályok alkotják);

• típusai:

= statikus (feldolgozás előtt kialakított szerkezet), = dinamikus (feldolgozás közben kialakított szerkezet; az igénybe vett

modult az adott feladatnak megfelelően kell kezdőértékezni);

• előnye:

= áttekinthetőség, = könnyebb tesztelhetőség, = egy-egy modul több feladat esetén is alkalmazható → kontextusvál-

tás → egyszerűbb keretprogram; • az objektumorientált technika (hibrid technika) háttérbe szorítja az al-

kalmazását.

Page 365: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 9/30

2.Objektumorientált (keretalapú) megközelítés

Az ismeretek strukturálása alapjaiban az objektumorientált módszertan lépé-seit követi.

Főbb lépések:

• a feladat mghatározó objektumainak feltárása → leíró tulajdonságok

összegyűjtése (jellege, értéktartománya, kezdőértéke, stb.),

• az objektumok közötti kapcsolatok felmérése, jellegük (magába fogla-lás, leszármazás, együttműködés, aktivizálás, stb.) meghatározása,

• cselekvésre bíró kapcsolatok megvalósítóinak (metódusoknak) definiá-lása, az objektum változóihoz való kapcsolódásuk meghatározása,

• objektumosztályok (keretek) 'rés'-ei (slots) tartalmának meghatározása, ú.m. adat, szabály, hivatkozás, metódus, stb.

A programozástechnikai háttér miatt, az objektumorientált megközelítés az alapvető, kiegészítve a szabályalapú ismerettárolási formával.

Page 366: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 10/30

7.4.2. TA rendszerek felépítése

TA rendszer főbb egységei:

• ismeretbázis és kezelő rendszere,

• problémakezelő rendszer:= probléma- és feladatszerkesztő egység,= feldolgozó/következtető egység, = keresőrendszer,

• tanuló/tanító/magyarázó rendszer,

• fejlesztő és ismeretgyűjtő rendszer,

• kommunikációs rendszer,

• illesztő és kapcsolati rendszer.

Page 367: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 11/30

Fontosabb részegységek:

Komm.rendszer rendszer

Probléma-feldolg./szerk.

Tanuló/tanító

rendszer rendszerFejlesztõ

rendszer

Ismeret-gyûjtõ

rendszerKeresõ

Ismeretbáziskezelõ rendszer

Külsõismeret-

bázis

I l l e s z t õ é s k a p c s o l a t i r e n d s z e r

rendsz.

Illesztõ

kapcs.és

IS ismeretbázisa

AB MB EB TB

Felhasználó Felhasználó Felhasználó Felhasználó Felhasználó(tudásmérnök)

rendszer

Szervezetiinformáció-feldolgozó

Külsõkapcsolatok

Szervezeti ismeretbázis

Page 368: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 12/30

a.) IB rendszer

Mind struktúrában, mind tartalomban összetett!

Strukturális felbontás:

• ismeretbázis: = belső IB:

→ szervezeti IB, → helyi, egyéni IB,

= külső IB;

• ismeretbáziskezelő rendszer: = belső és külső források közötti kapcsolat, = ismeretkigyűjtő kapcsolat a szervezeti és a lokális IB között, = IB és a TA rendszer közötti kapcsolatok.

Ismeretbáziskezelõ rendszer

Szervezeti ismeretbázis

AB MB EB TB

rendszer

Szervezetiinformáció-feldolgozó

Kigyûjtõ rendszer

Felhasználó

Egyéniismeret-

bázis

Helyiismeret-

bázis

Szerv.ism.kez.rsz.

Page 369: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 13/30

Tartalmi felbontás: Az IB mindegyik részeleme (szervezeti, helyi és egyéni) hasonló tartalmú: • adatbázis rész, amely a legkidolgozottabb a fejlesztési munkában;

alkalmazott szerkezeti megoldások: = hierarchikus, = hálós, = relációs, = asszociatív;

adatforrások: külső, belső (szervezetre vonatkozó adatok is);

adatbáziskezelő rendszer → globális lekérdező nyelv használata.

• modellbázis rész, amely többnyire végrehajtható eljárásokat, leíró jel-legű, szerkezeti modelleket tartalmaz;

modellek funkcionális (pénzügyi, gazdasági, termelési, stb.) jellegük, hi-erarchián belüli alkalmazási helyük (alsó-, közép-, felsővezetői szint) szerint csoportosíthatók;

Page 370: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 14/30

cél: → a modellek összekapcsolhatósága; modellbázis kezelő rendszer (karbantartás, modellszerkesztés → mo-dellező nyelv).

• esetbázis rész, amely a feldolgozott problémák, feladatok megoldá-

sainak leírásait tartalmazza;

tárolási formák: = esetleírás (script), = (indukcióval levezetett) szabályrendszer;

esetbáziskezelő rendszer (aktuális esethez hasonló keresése, karban-tartás, esetleírás szerkesztés):

• tudásbázis rész, amely tényállításokat, szabályokat, következtetéseket tartalmaz;

tárolási formák: = szabályalapú,

= keretalapú.

Page 371: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 15/30

b.) Problémakezelő rendszer

Feladata: a megoldandó problémák kezelése, előkészítése és megoldása.

Részei:

• problémaszerkesztő (feladat megfogal-mazás, szerkesztés),

• feldolgozó egység (algoritmikus, heu-

risztikus, MI alapú, szimulációs eljárá-sokkal),

• kereső rendszer (az IB felé közvetíti az

alkalmazás kérését valamilyen lekér-dező nyelv segítségével).

Probléma-feldolgozó Tanuló/

tanítórendszer

Illesztõ és kapcsolati rendszer

Felhasználó

Probléma-szerkesztõ

rendszerKeresõ

Ismeretrendszer

Page 372: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 16/30

c.) Tanuló/tanító/magyarázó rendszer

Tanuló rész feladata: a megoldott problémák alapján, az új ismeretek (té-nyek, modellek, szabályok, stb.) tárolása arra alkalmas formában.

Lehetséges tanulási formák:

• gyakorlás alapján (azonos típusú feladatok megoldásával), • tapasztalat alapján (az eredményesség szerint módosítva a kapcsola-

tok erősségét, valószínűségét).

Tanító/magyarázó rész feladata: a tárolt ismeretek, a megoldott problémák segítségével a felhasználó tudásának bővítése.

Tanítás: kiválasztott feladat megoldásának bemutatása, magyarázata.

Magyarázás: feladat megoldása közben kérdéseket lehet feltenni; a rend-

szer erre ad magyarázatot, indoklást.

Page 373: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 17/30

d.) Fejlesztő/ismeretgyűjtő rendszer

Feladata: a rendszer IB-ának feltöltése, szerkezetének továbbfejlesztése.

Használható módszerek: • automatikus ismeretgyűjtés (a szervezeti IB feltöltése a szervezet

tranzakció feldolgozó részétől függetlenül, amely utóbbi, elsősorban az adatbázis részt érinti);

• megoldott problémák modelljének, szabályainak, leírásának tárolása a tanuló rendszer használatával;

• a felhasználó által bevitt egyedi modellek, esetek tárolása.

e.) Kommunikációs rendszer

Feladata: a szervezet különböző pontjai közötti kapcsolatok, külső és belső ismeretforrásokhoz történő hozzáférés biztosítása.

Módszerek: = közvetlen számítógépes kapcsolat, = internet, intranet használata, = távközlési szolgáltatások (vezetékes, vezeték nélküli), = videokonferenciák, stb.

Page 374: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 18/30

f.) Illesztő és kapcsolati rendszer (felhasználói interfész)

Feladata: a TA rendszer és a felhasználó közötti kapcsolatok megvalósítása.

Felhasználói csoportok:

• döntéshozó, vezető, átlag felhasználó,

• közreműködő specia-lista (mediator): = felhasználó asszisz-

tense, = elemző (akinek a

munkájához állan-dóan kell),

= csoportos (döntéshozatali munka) irányítója;

• TA rendszerszakértő (karbantartás, fejlesztés).

Felhasználó

Felhasználói illesztõkezelõrendszere

Bevitelirendszer

Kivitelirendszer

formátumokbázisa

Beviteli/kiviteli

TA rendszer egyéb részei

Felhasználói

szokásokhasználati

Page 375: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 19/30

A kapcsolati módokat, használati szokásokat a

• felhasználói használati szokások bázisa, amely - lehetővé teszi az illesztő felületek egyéniesítését, - használati szokások alapján, a munkaterületek elérésének egyszerű-

sítését; és a

• beviteli/kiviteli formátumok bázisa tárolja, amely - a bevitelnél, illetve a kivitelnél alkalmazott megjelenítési formátumokat

tárolja.

Az illesztő felületek kialakításakor figyelembe vehető jellemzők, tényezők:

• független (külső) tényezők: = felhasználó (képzettség, szakértelem, kor, stb.), = környezet (szervezeti hierarchia szintje, szervezeti struktúra, bizony-

talanság), = a feladat bonyolultsága, = illesztő felület iránti igény (eszköz, nyelv, megjelenítési forma, szí-

nek, stb.);

Page 376: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 20/30

• kialakítástól függő tényezők: = használhatóság, = használat nehézségi foka, = tanulhatóság, = egységesség, = hajlékonyág, = hibakeresés támogatása, = teljesítmény, = felhasználói vélemények, stb.

7.5. Tudásalapú (intelligens) információs rendszerek kialakulása kialakulásuk, generációik: → több generációjuk értelmezhető.

• ösztönös ('történelem előtti') IR − '40-es évek végéig, − esetleges a kialakításuk, − nincs előtérben a fontosságuk, − alapvetően kézi feldolgozásra, papír alapú nyilvántartásokra épül, − nincs szervezési módszertan még;

Page 377: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 21/30

• kezdeti ('őskori') IR − '60-as évek végéig, − felismerik a fontosságát, − számítógép megjelenik, − mágneses adattárolók használata, − file-kezelő, hierarchikus adatbázis kezelő rendszerek megjelenése, − módszertanok megjelenése (pl.: BISAD);

• tudatos ('középkori') IR − '70-es évek és '80-as évek eleje, − növekvő szervezetek és adatmennyiség, − mikroszámítógépek megjelenése, − adabáziskezelők széleskörű elterjedése, − strukturált módszertanok (SYSTEMATICS, HIPO) megjelenése, − DSS megjelenése;

• szolgáltató ('modernkori') IR

− napjainkig, − tudatosan tervezett szolgáltató IR (SSADM), − információ stratégiai erőforrásá válik, − elemző, előrejelző szolgáltató funkciók,

Page 378: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 22/30

− számítógép hálózatok, − relációs adatbáziskezelő, SQL használata,

→ adattárházak, adatbányászat;

• intelligens IR − felhasználói környezet (felületek, tartalom) módosítható, beállítható, − felhasználói szokásokat követi → adaptiv IR, − vezeti a felhasználót a problémamegoldásban, − segíti a kapcsolattartást a rendszer más felhasználóival, − IB = adat + modell + állítás

+ → lágy ('soft') információk tárolása, használata, − belső kapcsolatokban:

adatraktár, adatbányászat, globális ismeretkezelő rendszerek; feldolgozásban: következtető rendszerek, kommunikációs részrendszerek;

− külső kapcsolatokban: multimédiás, interaktiv, széleskörű kapcsolattartás a többi felhasz-nálóval, testreszabás lehetősége.

Page 379: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 23/30

7.5.1. IR-ek az alkalmazási cél alapján

Tranzakciófeldolgozó rendszer (TPS=Transaction Processing Systems) Jellemző, hogy

• napi gazdasági események feldolgozására szolgálnak,• operativ, jól szabályozott tevékenységekhez kapcsolódnak,• forrásadatok feldolgozására, adatszolgáltatásra használják,• elemi adatkezelő, majd egyre összetettebb funkciók teljesítésére alkalmas

adatbáziskezelő rendszerrel rendelkeznek.

Irodaautamatizálási rendszer (OAS=Office Automation Systems) Szakmai információs rendszer (KWS=Knowledge Work Systems)

A kezelt tevékenységek:

• irodai, ügyviteli munkák (szövegszerkesztés, táblázatkezelés, levelezés),• dokumentum- és kiadványszerkesztés,• időbeosztások, ütemezések,• műszaki tervezés, dokumentálás, stb.

Page 380: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 24/30

Vezetői információs rendszer (MIS=Management Information Systems) A vezetői információs rendszerek a '60-as években jelentek meg és feladatuk:

• a vezetői munka segítése adatokkal, az eltérések jelzésével, • meghatározott formátumú és tartalmú anyagok, időközönkénti előállítása, • egyszerűbb lekérdezések megadott területeken, • a tervezési, ellenőrzési munka segítése egyszerű elemzésekkel, • a szükséges alapadatokat a tranzakciófeldolgozó rendszer szolgáltatja.

Döntéstámogató rendszer (DSS=Decision Support Systems)

A '70-es évek közepén megjelent rendszerek a rosszul strukturált vezetői dönté-sek kiszolgálását célozták meg. Jellemzőjük, hogy:

• adataikat a tranzakciófeldolgozó, illetve a vezetői információs rendszertől, va-lamint külső forrásokból kapják,

• feladatmegoldásokhoz modellbázissal rendelkeznek, • a modell- és adatbázis segítségével elemzéseket és optimalizálásokat lehet

végezni,

Page 381: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 25/30

• használatukra az interaktivítás jellemző, • a döntéshozó (a felhasználó) által alakítható, folyamatosan fejleszthető, • szakértői rendszerjellemzőkkel is rendelkeznek.

Szakértői rendszerek (ES=Expert Systems) A mesterséges intelligenciakutatás eredményeit használják fel. A kialakuló rend-szerek következtető részrendszerekkel is rendelkeznek. Hatásuk a döntéstámo-gató (DSS) és a felsővezetői információs (EIS) rendszereken érezhető, amelyek-nek ma már részét képezik.

Felsővezetői információs rendszerek (EIS=Executive Information Systems) A '90-es évek elején jelentek meg. Hatékony információtechnológiai eljárások (pl.: OLAP=On-Line Analytical Processing, adatbányászat). A rendszer jellemzői:

• stratégiai döntések támogatása,

• felsővezetői tervezési, szervezési feladatok támogatása,

• 'lágy' információk (vélemények, elképzelések, előrejelzések) kezelése,

Page 382: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 26/30

• fejlett grafikus és kommunikációs eszköztárral rendelkeznek,

• nincs feladatmegoldó része, mint a döntéstámogató rendszereknek,

• nem tartalmaz modellbázist,• korszerű információtechnológiai technikák használata.

Felsővezetői szolgáltató rendszer (ESS=Executive Support Systems)

Tulajdonságai megegyeznek a felsővezetői információs rendszerével (EIS), bővít-ve a döntéstámogató rendszerek (DSS) jellemzőivel is.

Vezetői támogató rendszer (MSS=Managerial[management] Support Sys-tems)

A legutóbbi időkben megjelent változat, amely magában foglalja a döntéstámo-gató, a szakértői, valamint a felsővezetői információs rendszerek tulajdonságait.

Page 383: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 27/30

7.5.2. Intelligens információs rendszerek jellemzői

A legfontosabb követelmények a következők: • a felhasználó kérdéseire adjanak gyors (azonnali) válaszokat;

• legyen könnyen kezelhető, kezelése könnyen tanulható;

• felhasználói környezete legyen módosítható, beállítható, az egyéni elképzelé-sekhez illeszkedő formájú és működésű;

• segítse a kapcsolattartást a rendszer más felhasználóival.

A felhasznált információk három fő megjelenítési és tárolási formája különböz-tethető meg:

• adatbázis, amelyben dokumentumok, kép- és hanganyagok is megtalálhatók;• modellbázis, amely összetett problémák többnyire algoritmikus megoldását is

tartalmazza; az ú.n. 'ügynök (ágens)' programok egyre nagyobb szerepet kap-nak az információs rendszerek robotmunkáiban (üzenetek, levelek csoportosí-tása, adatbányászat, stb.);

• tudásbázis, állítások, következtetések, esetek, helyzetleírások tárolására.

Page 384: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 28/30

Egyre fontosabb az ú.n. 'lágy (soft)', valamint a bizonytalan és hiányos informáci-ók szerepe.

A információs rendszer ismeretbázisának szerkezete a gyors működés és a haté-konyság miatt hierarchikus strukturálású.

A tárolt információk között tetszőleges relációs és asszociatív kapcsolatok épít-hetők fel, mind az adatok, mind a modellek, következtetések, esetleírások között.

A működést megszabó belső kapcsolatok legfontosabb területei közé tartozik

• az adatraktárakkal kapcsolatos, adatkeresési (adatbányászati) módszerek ki-dolgozása,

• globális ismeretbáziskezelő rendszerek,• következtető rendszerek továbbfejlesztése, újszerű következtetési módok

alkalmazása,• kommunikációs részrendszer kialakítása.

A felhasználó számára a leglényegesebb a külső kapcsolatok kialakítása: • sokoldalú, multimédiás kapcsolati lehetőség (grafika, virtuális 3D megjelenítés,

mozgókép, párhuzamos feladatmegoldás és megjelenítés, stb.),

Page 385: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 EA12- 29/30

• párbeszédes működtetés, gyors válaszlehetőség (OLAP, adatbányászat),• kapcsolattartási lehetőség a rendszer többi felhasználójával (információcsere,

munkakapcsolatok, elektronikus ügykezelés, csoportmunka, globális kap-csolattartás),

• kiadványszerkesztés, prezentációkészítés,• eszköztár az egyéni arculat kialakításához, a felhasználói szokások megjegy-

zése.

Az intelligens információs rendszerek célja:

• a szervezeti döntéshozatal segítése a szervezet minden szintjén,• a felhasználói illesztő felületeknek az egyes felhasználók egyéni igényeinek és

gyakorlottságának megfelelő kialakítása,

• kommunikációs támogatás nyújtása a felhasználók kapcsolatteremtéséhez,

• a döntéshozók számára fontos háttér ('lágy') információk, a bizonytalan és hiá-nyos információk megfelelő használata.

Page 386: Mesterséges intelligencia

GÁBOR DÉNES FŐISKOLA

INFORMATIKAI INTÉZET

MESTERSÉGES INTELLIGENCIA (GYAKORLAT - PÉLDATÁR)

DR. CSERNY LÁSZLÓ főiskolai tanár

BUDAPEST, 2018/2019-2

Page 387: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 2/46

TÉMAKÖRÖK*

Bevezetés 1. Feladatreprezentáció

2. Keresési eljárások (informált, nem-informált keresések)

3. Tudásreprezentációs módszerek, következtetés• Logikai reprezentáció

• Szabály-alapú reprezentáció• Keret-alapú reprezentáció

4. Bizonytalanságkezelés (valószínűségi, fuzzy rsz.)

5. Gépi tanulás módjai (statisztikus, neurális hálók, stb.)

* Készült dr. Szalay Tibor (GDF-BME) anyagának felhasználásával.

Page 388: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 3/46

1. FELADATREPREZENTÁCIÓ

1-1. példa: Egy ember kecskét, káposztát és farkast visz magával. Egy folyóhozér, ahol nincs híd csak egy kis csónakot talál, amelybe rajta kívül már csak egy dolog fér. Hogyan tud a folyón úgy átkelni, hogy se a farkas ne falja fel a kecskét, se a kecske a káposztát, ami akkor következne be, ha ezek felügyelet nélkül együtt maradnának? Reprezentálja a fenti feladatot keresési feladatként, tehát adja meg a le-hetséges állapotokat (az állapotteret pl. keresési faként), az operátoro-kat és a céltesztet!

Megoldás: állapotok leírása: 4-elemű 1-0-s vektor → pl.: (1,0,1,1), ahol 1. elem: ember és a csónak helyzete;2. elem: kecske helyzete;3. elem: káposzta helyzete;4. elem: farkas helyzete; az 1-es a kiinduló oldalt, a 0 a túlpartot jelenti.

induló állapot: (1,1,1,1) célállapot: (0,0,0,0) operátor: a vektor max. 2 elemének modósítása.

Page 389: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 4/46

A keresési fa, a nem megengedett állapotok áthúzva:

= tiltott állapot

= már bejárt áll.

Page 390: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 5/46

1-2. példa: Adott a következő alaprajz, amelyben a vonalak falakat, a nyílások aj-tókat jelölnek. A legbelső szobában levő lakó szeretné megtalálni a kijá-ratot. Reprezentálja a keresési feladatot! Egészítse ki a reprezentációt úgy, hogy feltesszük, a lakó a legkevesebb szoba érintésével szeretne kijutni!

Megoldás: állapotok: az aktuális helyzetet a sor- és oszlopsorszám megadásával

jelöljük → (2,1) kezdő állapot → (1,1)-es szoba célállapot: kijutott az épületből → (kinn van) operátor: átmegy a másik szobába, vagy a szabadba költség: egységnyi költség egy-egy átlépés

Page 391: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 6/46

A keresési fa (részlete):

További lehetőségek: = ajtók a szobák közé → plusz költség → cél: minimális költség; = módosítani a kezdő állapotot.

Page 392: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 7/46

2. KERESÉSI ELJÁRÁSOK

2.1 Nem-informált (vak) keresési eljárások

2-1. példa: Adott az alábbi fa gráf. Az A jelű csomópont-ból szeretnénk eljutni a H jelű csomópontba. Írja fel a meglátogatott csomópontokat sor-rendben, ha a a) keresési stratégia a szélességben előszörkeresés, és az azonos szinten található cso-mópontokat balról jobbra terjesztjük ki!b) keresési stratégia a szélességben előszörkeresés, és az azonos szinten található cso-mópontokat jobbról balra terjesztjük ki!c) keresési stratégia a mélységben először ke-resés, és az azonos szinten található csomó-pontokat balról jobbra terjesztjük ki!

Megoldás: a) A - B - C - D - E - F - G - H b) A - D - C - B - G - F - E - Hc) A - B - E - C - F - H

Page 393: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 8/46

2-2. példa: Adott az alábbi fa gráf. Az B jelű csomó-pontból szeretnénk eljutni a G jelű csomó-pontba. Írja fel a meglátogatott csomóponto-kat sorrendben, ha a a) keresési stratégia a szélességben először keresés, és az azonos szinten található cso-mópontokat balról jobbra terjesztjük ki! b) keresési stratégia a szélességben először keresés, és az azonos szinten található cso-mópontokat jobbról balra terjesztjük ki! c) keresési stratégia a mélységben először keresés, és az azonos szinten található cso-mópontokat balról jobbra terjesztjük ki!

Megoldás:

Page 394: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 9/46

2-2. példa: Adott az alábbi fa gráf. Az B jelű csomó-pontból szeretnénk eljutni a G jelű csomó-pontba. Írja fel a meglátogatott csomóponto-kat sorrendben, ha a a) keresési stratégia a szélességben először keresés, és az azonos szinten található cso-mópontokat balról jobbra terjesztjük ki! b) keresési stratégia a szélességben először keresés, és az azonos szinten található cso-mópontokat jobbról balra terjesztjük ki! c) keresési stratégia a mélységben először keresés, és az azonos szinten található cso-mópontokat balról jobbra terjesztjük ki!

Megoldás: a) B - E - A - C - D - F - G

b) B - A - E - D - C - G

c) B - E - A - C - F - H - G

A

B

C D

G F

E

H

Page 395: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 10/46

2-3. példa: Adott az alábbi gráf. Az A jelű csomópontból szeretnénk eljutni a H je-lű csomópontba. Írja fel a meglátogatott cso-mópontokat sorrendben, ha a a) keresési stratégia a szélességben először keresés és az azonos szinten található cso-mópontokat balról jobbra terjesztjük ki! b) keresési stratégia a szélességben először keresés, az azonos szinten található csomó-pontokat jobbról balra terjesztjük ki! c) keresési stratégia a mélységben először keresés és az azonos szinten található cso-mópontokat balról jobbra terjesztjük ki! d) keresési stratégia a mélységben először keresés és az azonos szin-ten található csomópontokat jobbról balra terjesztjük ki!

Megkötés: a hurok miatt, a már érintett csomópontok felé nem terjeszt-

hető ki a keresés.

Megoldás: a) A-B-C-D-E-F-H b) A-D-C-B-F-E-G-H c) A-B-E-H d) A-D-F-G-H

Page 396: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 11/46

2-4. példa: Adott az alábbi gráf. Milyen sorrendben jár-ja be a mélységben először keresési stratégi-ával az F-ből a H-t kereső algoritmus a gráfot, ha a keresés során az azonos szinten lévő csomópontok közül mindig a '12 órától' indu-ló, óramutató járásával ellenkező irányba eső csomópontok sorrendjében haladunk?

Hányadik lépésben jutunk el a célba? Mi lesz a bejárási sorrend, ha az irányt az óramutató járásának megfelelőre változtatjuk?

Megoldás:

F-C-A-B-E-H, összesen 6 lépésben (hiszen az F-re is lépnünk kell).

Az irány megváltoztatásával a sorrend a következő:

F-D-A-C-E-H → ez is 6 lépés.

Page 397: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 12/46

2-5. példa: Az ábra szerinti gráfon az A csomópontból az Icsomópontba kell eljutni. Milyen sorrendben kell bejárni a gráfot

a.) szélességi kereséskor, b.) mélységi kereséskor,

ha az óra járásával egyező irányban vá-lasztunk új csomópontot; illetve

c.) szélességi kereséskor, d.) mélységi kereséskor,

ha az óra járásával ellenkező irányban vá-lasztunk új csomópontot?

Már bejárt csomópontot nem lehet ismételten igénybe venni!

Megoldás:

Page 398: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 13/46

2-5. példa: Az ábra szerinti gráfon az A csomópontból az I csomópontba kell eljutni. Milyen sorrendben kell bejárni a gráfot

a.) szélességi kereséskor, b.) mélységi kereséskor,

ha az óra járásával egyező irányban vá-lasztunk új csomópontot; illetve

c.) szélességi kereséskor, d.) mélységi kereséskor,

ha az óra járásával ellenkező irányban vá-lasztunk új csomópontot?

Már bejárt csomópontot nem lehet ismételten igénybe venni!

Megoldás:

a.) A - E - B - D - C - F - G - H - I b.) A - E - D - G - I c.) A - B - E - F - C - D - H - G - I d.) A - B - F - C - H - I

Page 399: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 14/46

2-6. példa: Adott az alábbi kereső-gráf. Határozza meg a csomópontok bejárásisorrendjét: - szélességben először, jobbról-balra (fekete színnel);

- mélységben először, jobbról-balra (piros színnel);- mélységben korlátozott (d=2) b-j-ra keresés esetén (kék

színnel).Megoldás: S

G

1

2 4 3 5

10 9 8 7 6 11

5

6 3

2

1

4

14

12

11

10 7

8

9 13

6

15

16

18

17

1

4

2

3

5

Page 400: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 15/46

S

G

10 9

7 2 1

8

d=0 szint

d=1 szint

d=2 szint

3 4 6 5 11

12

2-7. példa: Adott az alábbi kereső-gráf. Határozza meg a csomópontok bejárásisorrendjét: -iteratív mélységi kereséssel, balról jobbra.

Megoldás:

Page 401: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 16/46

2-8. példa: Milyen keresési fát épít és milyen sorrendben vizs-gálja a csomópontokat az ábrázolt labirintus bejárása-kor (az azonos szinten levő csomópontokat mindig a fel-balra-le-jobbra sorrendben fejtsük ki!) a) a szélességben először keresés, ha az (1,1) mező-ből indul, és a (4,4) mező a célja?b) a mélységben először kere-sés, ha az (1,1) mezőből indul,és a (4,4) mező a célja?

Megoldás: A már vizsgált csomópontok felé nem terjesztjük ki keresést.

Page 402: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 17/46

2-8. példa: Milyen keresési fát épít és milyen sorrendben vizs-gálja a csomópontokat az ábrázolt labirintus bejárása-kor (az azonos szinten levő csomópontokat mindig a fel-balra-le-jobbra sorrendben fejtsük ki!)

a) a szélességben először keresés, ha az (1,1) mező-ből indul, és a (4,4) mező a célja?b) a mélységben először kere-sés, ha az (1,1) mezőből indul,és a (4,4) mező a célja?

Megoldás: A már vizsgált csomópontok fe-lé nem terjesztjük ki keresést.

Page 403: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 18/46

2.2. Informált (heurisztikus) keresés

2-9. példa: Adott az ábrán látható hálózat, ahol az élekre írt számérték a csomó-pontok közötti valódi távolságot, a csomópontokra írt szám pedig a cso-mópont célponttól (G) „légvonalban mért” legkisebb távolságát jelenti. Milyen fát épít és milyen sorrendben járja be az adott hálózatot S-ből indulva a) a mohó keresés, illet-

ve b) az A* keresés, ha azalkalmazott becslés (he-urisztika) a célponttól mért legkisebb távolság nagysága?

Megoldás: a) A mohó keresés a mindig a becslés alapján rövidebb utat fogja vá-lasztani; a csomópontok sorrendje a következő: 54 – 42 – 25 – 0, ami azösszes megtett valódi távolság tekintetében (71 km) nem optimális.

S

G

Page 404: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 19/46

b) Az A* keresésnél a választás alapja az ed-dig megtett út és a hát-ralevő út becslésének összege (f(n) = g(n) + h(n)), ahol g(n) értéke az aktuális élekre írt tá-volságok összege, h(n) értéke pedig az aktuális csomópontba írt legki-sebb távolság. A fán a csomópontba írt szám-mal jelzett csomópontok mellé a g(n)+h(n)=f(n) számokkal fölírt össze-get írjuk, ahol mindig a legkisebb érték felé foly-tatódik a fa továbbterjesztése. Természetesen a választás miatt kiter-jesztett csomópontokat itt is tartalmazza az A* által épített keresési fa.

Page 405: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 20/46

b) Az A* keresésnél aválasztás alapja az ed-dig megtett út és a hát-ralevő út becslésénekösszege (f(n) = g(n) +h(n)), ahol g(n) értékeaz aktuális élekre írt tá-volságok összege, h(n)értéke pedig az aktuáliscsomópontba írt legki-sebb távolság. A fán a csomópontba írt szám-mal jelzett csomópontokmellé a g(n)+h(n)=f(n)számokkal fölírt össze-get írjuk, ahol mindig alegkisebb érték felé foly-tatódik a fa továbbterjesztése. Természetesen a választás miatt kiter-jesztett csomópontokat itt is tartalmazza az A* által épített keresési fa.

G

G

S

Page 406: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 21/46

2-10. példa: Adott egy keresési feladat a háromjegyű számok halmazán (100 és999 közötti számok). A feladat egy tetszőlegesen megadott számból (I-ből) eljutni egy másik megadott számhoz (G-be). A feladat szabályai a következők: I. egy lépés azt jelenti, hogy az adott szám egyik számjegyét eggyel

növeljük vagy eggyel csökkentjük.II. két egymás utáni lépésben nem szabad ugyanazt a számjegyet

módosítani.III. a 9-es számjegyhez nem lehet hozzáadni, a 0-ból nem lehet le-

vonni.IV. nem tehető olyan lépés, amely a tiltott halmazba tartozó számot

állítana elő.A feladat megoldásához az A* algoritmust kell használni. Legyen a h(n) függvény a következőképpen definiálva:

h(n) = |G1-n1| + |G2-n2| + |G3-n3| ahol az aktuális állapothoz tartozó szám számjegyei rendre n1 n2 n3, míg a célállapothoz tartozó szám számjegyei G1 G2 G3.

Rajzolja meg a keresési fát, ha I=567, G=777 és a tiltott számok halma-za: 666,667. Adja meg minden csomópontra a g, h és f függvények ér-tékeit! (g(.) = az adott állapotig tett lépések száma)

Page 407: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 22/46

Megoldás:

5

688

4+3=7

Page 408: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 23/46

2-11. példa: Adott egy labirintus, jelölje „B1” a kiindulási pontot és „F5” a célpontot. A labirintus egyes négyzetének a távolsága a céltól a Manhattan távolság segítségével számítható. Az egyes négyzetek jósági értékeit úgy képezhetjük, hogy a négyzet Manhattan távolságát 20-ból kivonjuk. a) Eljut-e a célpontba az adott labirintuson a

definiált jósági értékekkel a csúcsramászás algoritmusa?

b) Milyen labirintus esetén nem használható a csúcsramászás algorit-musa?

Megoldás: B1 jósági értéke: M(B1,F5)=|2-6|+|1-5| = 8 → j(B1) = 20-8=12

A1 jósági értéke: M(A1,F5)=|1-6|+|1-5| = 9 → j(A1) = 20-9=11 C1 jósági értéke: M(C1,F5)=|3-6|+|1-5| = 7 → j(C1) = 20-7=13 → (ezt választja) Hasonlóan folytatva a számolást és a lépkedést:

j(C2) = 14 továbblép; j(C3) = 15 továbblép; j(C4) = 16 továbblép; j(B4) = 15, vagy j(C5) = 17 közül ez utóbbit választja; j(D5) = 18 továbblép; j(E5) = 19 továbblép; j(E4) = 18, vagy j(F5) = 20; ez utóbbit választja, és célba ér.

12 11 13

14 12

13

14

16

18 15 17

19 20

15 16

17

18

18

Page 409: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 24/46

2-12. példa: Az alábbi állapottérnél az ABC betűijelölik a különböző állapotokat, a mellet-tük található szám az állapotok jóságát képviselő értéket adja meg. a.) Adja meg, hogy milyen utat jár be a keresőalgoritmus a csúcsramászás módszerének alkalmazásával, ha az A pontból az N pontba kell eljutni! b.) Változtassa meg valamelyik csomó-pont jósági értékét úgy, hogy a csúcsra-mászás módszere segítségével a fela-dat ne legyen megoldható (a keresés elakadjon)!

Megoldás: az algoritmus mindig a szomszédos csomópontok jóságát vizsgálva, a legjobb (pl. max. értékű) csomópontot választja a következő lépésben.

a.) A(0) - D(5) - I(6) - K(7) - N(8) → ez a max jóságú pont, egyúttal ez volt a célpont is.

b.) Pl., ha a H pont jóságát 8-ra változtatjuk → lokális maximummá válik!

Page 410: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 25/46

2-13. példa: Az alábbi állapottérnél az ABC betűi jelölik a különböző állapotokat, a hozzájuk tartozó jósági értékeket pedig az alábbi táblázat foglalja össze.

A B C D E F G H I 0 2 3 5 4 7 10 11 9

a) Adja meg, hogy milyen

utat jár be a keresőalgorit-mus a csúcsramászás módszerének alkalmazá-sával, ha az A pontból az H pontba kell eljutni, illet-ve eljut-e a célba!

b) Optimális-e a megoldás és miért (az érintett csomópontok száma alapján dönt-

sük el)? Megoldás: a.) Legjobb jósági értékű pontot választva:

A(0) - C(3) - D(5) - F(7) - I(9) - H(11) b.) Nem optimális, mivel az érintett csomópontok száma = 6.

A legrövidebb út az A-C-E-H lenne.

A

B

C

D

E

F

G

H

I

Page 411: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 26/46

3. TUDÁSREPREZENTÁCIÓ, KÖVETKEZTETÉS

3.1. Logikai reprezentáció

3-1. példa: Igazolja a következő azonosságokat!

a) (¬A ∨ ¬B) ⇒ (A ∧ B) = (A ∧ B)b) [(¬A ∧ B) ∨ ¬B] ⇒ (A ∨ B) = (A ∨ B)

Megoldás:

a) (¬A ∨ ¬B) ⇒ (A ∧ B) = ¬ (¬A ∨ ¬B) ∨ (A ∧ B)de Morgan szabály alapján: = (A ∧ B) ∨ (A ∧ B) = (A ∧ B)ekvivalens átalakításokat végezve a keresett alakot kaptuk.

b) [(¬A ∧ B) ∨ ¬B] ⇒ (A ∨ B) = ¬[(¬A ∧B) ∨ ¬B)] ∨ (A ∨ B) =¬(¬A ∧ B) ∧ B ∨ (A ∨ B) = (A ∨ ¬B) ∧ B ∨ (A ∨ B) =(A ∧ B) ∨ (¬B ∧ B) ∨ A ∨ B = (A ∧ B) ∨ (False) ∨ A ∨ B =A ∧ (B ∨ True) ∨ B = A ∨ Bekvivalens átalakításokat végezve a keresett alakot kaptuk.

Page 412: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 27/46

3-2. példa: Határozza meg az alábbi logikai mondatok értékét az igazságtábla fel-használásával!

a) (A ∨ B) ⇒ Ab) (A ∨ B) ∧ (A ⇒ C)c) (A ∧ C) ⇒ (¬A ∨ B)

Megoldás:

a) (A ∨ B) ⇒ A

Page 413: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 28/46

b) (A ∨ B) ∧ (A ⇒ C)

Page 414: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 29/46

c) (A ∧ C) ⇒ (¬A ∨ B)

Page 415: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 30/46

3-3. példa: Igazolja az igazságtábla segítségével a következő azonosságot!

A ∧ (B ∨ C) = (A ∧ B) ∨ (A ∧ C)

Megoldás:

Page 416: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 31/46

3-4. példa: Adottak a következő premisszák (mondatok):P ∧ ¬Q, P ∨ Q, ¬Q ⇒ R

Igazolja az igazságtáblával, hogy ezek egyik következménye ¬Q !

Megoldás: Legyen Z = (P ∧ ¬Q) ∧ (P ∨ Q) ∧ (¬Q ⇒ R) ekkor Z ⇒ ¬Q minden interpretációban igaz értékű.

A következtetés minden interpretációban igaz, tehát ¬Q következmény.

Page 417: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 32/46

3-5. példa: Ismert a következő TB: kórházban_van ⇒ beteg gyógyszert_szed ⇒ meggyógyul beteg ⇒ gyógyszert_szed idős ⇒ kórházban_van idős

Milyen következményeket állít elő a Modus Ponens következtetési módszer?

idős, idős ⇒ kórházban_van ________________________________________________________________

kórházban_van

kórházban_van, kórházban_van ⇒ beteg ______________________________________________________________________________________________

beteg

beteg, beteg ⇒ gyógyszert_szed __________________________________________________________________________

gyógyszert_szed

gyógyszert_szed, gyógyszert_szed ⇒ meggyógyul ___________________________________________________________________________________________________________________

meggyógyul

Tehát a TB-ból levezethető, hogy 'kórházban_van', 'beteg', 'gyógyszert_szed' 'meggyógyul'.

Page 418: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 33/46

3-6. példa: Alkalmazza a következő tudásbázison a Modus Ponens szabályt új té-nyek előállítására!

Q ⇒ P, ¬P ∨ R, Q

Megoldás: A Modus Ponens alkalmazható az 1., és a 3. mondatra: (Q ⇒ P, Q) → P, tehát P tény; mivel (¬P ∨ R) = (P ⇒ R), így (P ⇒ R, P) → R alapján R is tény.

3.7. példa: Alkalmazza a Modus Ponens szabályt új tények előállítására, ha a tu-dásbázis a következő:

A ⇒ B, B ⇒ C, C ⇒ D.

Megoldás: Mivel nincs tényállítás a TB-ban, tegyük fel, hogy A tény. Ekkor (A ⇒ B, A) → B, azaz B tény; így (B ⇒ C, B) → C is tény, valamint (C ⇒ D, C) → D is tény. De tény: A ⇒ C, A ⇒ D, B ⇒ D is.

B, C, D mondatok csak A igaz volta esetén igazak.

Page 419: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 34/46

3-8. példa: Adott a következő tudásbázis: A ∨ B, ¬B ∨ C, A ∨ ¬C Igazoljuk a rezolúció módszerével, hogy A következik ebből a tudás-bázisból!

Megoldás: a bizonyítandó állítás tagadottját bevesszük a TB-ba; ha a rezolúció

módszerével így ellentmondásra jutunk, akkor az eredeti állítás igaz értékű. 1. Tegyük fel ¬A is része a TB-nak.

2. (¬A, A ∨ B) → B tény

3. (B, ¬B ∨ C) → C tény

4. (C, A ∨ ¬C) → A tény, viszont 5. (¬A, A) → ellentmondás! Tehát A igaz értékű és következik a TB-

ból.

Page 420: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 35/46

3-9. példa: Adott a következő tudásbázis: A ⇒ B, ¬C ⇒ B, A ∨ ¬C A rezolúció módszerét alkalmazva, vizsgáljuk meg, hogy következik-e mindebből B?

Megoldás: A rezolúció alkalmazásához a TB elemeit klóz alakra kell alakítani.

1. A ⇒ B → ¬A ∨ B 2. ¬C ⇒ B → C ∨ B 3. A ∨ ¬C 4. tegyük fel ¬B is eleme a TB-nak. 5. (¬B, ¬A ∨ B) → ¬A (4),(1) alapján, 6. (¬A, A ∨ ¬C) → ¬C (5),(3) alapján, 7. (¬C, C ∨ B) → B (6),(2) alapján, 8. (B, ¬B ) → ellentmondás! (7),(4) alapján. Tehát a feltételezés hamis, így B következménye a TB-nak.

Page 421: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 36/46

3-10. példa: Adott a következő TB: Fáradt ⇒ ¬Kocog kocog ⇒ Egészséges ¬egészséges ⇒ fáradt ¬kocog ⇒ ¬Szomjas ¬szomjas ⇒ ¬Iszik iszik

Bizonyítsuk be rezolúció segítségével, hogy az 'egészséges' következmény!

A TB-t a jelöléseknek megfelelően átírva és átalakítva klóz formába, kapjuk: (1) F ⇒ ¬K ¬F∨¬K (2) K ⇒ E ¬K∨E E∨¬K (3) ¬E ⇒ F E∨F E∨¬S (4) ¬K ⇒ ¬S K∨¬S E∨¬I (5) ¬S ⇒ ¬I S∨¬I E (6) I I ⊥ (7) bizonyítandó: ¬E

Tehát a rezolúció ellentmondásra jutott, így (7) hamis, azaz 'egészséges' igaz.

Page 422: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 37/46

3-11. példa: Adott a következő tudásbázis: Kutyatulajdonos ⇒ ÁllatimádóÁllatimádó ⇒ ¬Macskát_öl János ⇒ Kutyatulajdonos János ∨ Bodri ⇒ Macskát_öl

Határozza meg a rezolúciós következtetési szabály segítségével, hogy a „Bodri ⇒ Macskát_öl” következmény!

Megoldás: A rezolúcióhoz a TB elemeit klóz alakra kell hozni és a bizonyítandó állítás tagadottját, azaz ¬(B ⇒ M) -t hozzáfűzzük a TB-hoz.

(1) K ⇒ A → ¬K ∨ B(2) A ⇒ ¬M → ¬A ∨ ¬M(3) J ⇒ K → ¬J ∨ K(4) (J ∨ B) ⇒ M → ¬( J ∨ B) ∨ M = (¬J ∧ ¬B) ∨ M = (¬J ∨ M) ∧ (¬B ∨ M)

(4a) → (¬J ∨ M)(4b) → (¬B ∨ M) a logikai ÉS miatt (4) szétbontható

(5) ¬(B ⇒ M) → ¬(¬B ∨ M) = B ∧ ¬M(5a) → B(5b) → ¬M

*

Ekkor (¬M, ¬B ∨ M) → ¬B (4b),(5b) alapján; és ez ellentmondásra ve-zet (5a) miatt. Tehát a „Bodri ⇒ Macskát_öl” következmény!

Page 423: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 38/46

4. BIZONYTALANSÁGKEZELÉS

4.1. Valószínűségi bizonytalanság 4-1. példa: A savanyú szőlő és az érett szőlő logikai mondatok együttes valószí-

nűségi eloszlását az alábbi táblázatban foglaltuk össze. Határozza meg a következő mondatok valószínűségi értékét!

a) savanyú és érett szőlő b) nem savanyú vagy érett szőlő c) savanyú szőlő d) nem savanyú feltéve, hogy érett Megoldás: A valószínűségi eloszlást ábrázoló táblázatban szereplő értékek a megfelelő mon-datok együttes bekövetkezésére, (ÉS) kapcsolatára vonatkoznak. a) Tehát a P(savanyú ∧ érett szőlő) = 0,1 valószínűségi értékkel rendelkezik.

savanyú ~savanyú érett 0,1 0,3 ~érett 0,4 0,2

Page 424: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 39/46

b) A VAGY kapcsolat a benne szereplő mondatok oszlopában, sorában megtalál-ható valamennyi valószínűségi érték összegeként adódik, de minden elemet csak egyszer számítunk be az összegbe. P(¬savanyú ∨ érett) = (0,3 + 0,2) + (0,1 + 0,3) = 0,6

c) Egy mondat valószínűsége a rá vonatkozó valószínűségek összege, azaz

P(savanyú) = 0,1 + 0,4 = 0,5

d) A feltételes valószínűség a teljes valószínűségi teret leszűkíti a feltételben sze-

replő állításra vonatkozó valószínűségekre. Mivel, általánosan: P(A|B) = P(AB)/P(B), így (A ÉS B) együttes valószínűségét viszonyítjuk B valószínűsé-géhez. Tehát:

P(tétel|feltétel) = P(tétel ∧ feltétel) / P(feltétel) azaz P(¬savanyú | érett) = P(¬savanyú ∧ érett) / P(érett) = 0,3 / (0,1 + 0,3) = 0,75

Page 425: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 40/46

4-2. példa: Legyenek egy tudásbázis logikai mondatai, tényei: lány, szőke, szép ! Az alábbi táblázat tartalmazza ezen mondatok együttes valószínűsé-gi eloszlását. Határozza meg a következő mondatok valószínűségét!

a) Szép, szőke lány b) ¬Lány és szőke c) Szőke, vagy ¬szép d) (Lány és szőke), vagy szép e) Szép feltéve, hogy szőke f) ¬Lány és szőke feltéve, hogy ¬szép Megoldás: a) P(szép ∧ szőke ∧ lány) = 0,2 b) P(¬lány ∧ szőke) = (0,1 + 0,2) = 0,3 c) P(szőke ∨ ¬szép) = ((0,2 + 0,1) + (0,1 + 0,1)) + ((0,1 + 0,2) + (0,2 + 0,1)) = 0,8

Mindkét táblázatot figyelembe kell venni.

lány szép ~szép szőke 0,2 0,1 ~szőke 0,1 0,1

~lány szép ~szép szőke 0,1 0,2 ~szőke 0,1 0,1

Page 426: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 41/46

d) P((lány ∧ szőke) ∨ szép) = (0,2 + 0,1) + (0,2 + 0,1 + 0,1 + 0,1) = 0,6 e) P(szép | szőke) = P(szép ∧ szőke) / P(szőke) =

= (0,2 + 0,1) / ((0,2 + 0,1) + (0,1 + 0,2)) = 0,5 f) P((¬lány ∧ szőke) | ¬szép) = P(¬lány ∧ szőke ∧ ¬szép) / P(¬szép) =

= 0,2 / ((0,2 + 0,1) + (0,1 + 0,1)) = 0,4 4-3. példa: Legyenek egy tudásbázis logikai mondatai: zajos, piszkos, rendezett!

Az alábbi táblázatok tartalmazzák ezen mondatok valószínűségi el-oszlását. Határozza meg a következő mondatok valószínűségét!

a) zajos feltéve, hogy piszkos vagy nem rende-

zett b) piszkos és zajos feltéve, hogy rendezett c) nem rendezett feltéve, hogy zajos

rendezett zajos ~zajos piszkos 0,1 0,05 ~piszkos 0,05 0,2

~rendezett zajos ~zajos piszkos 0,3 0,15 ~piszkos 0,05 0,1

Page 427: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 42/46

Megoldás: a) P(zajos | (piszkos ∨ ¬rendezett)) =

= P(zajos ∧ (piszkos ∨ ¬rendezett)) / P(piszkos ∨ ¬rendezett) = = (0,1 + 0,3 + 0,05) / ((0,1+0,05+0,3+0,15)+(0,3 + 0,15 + 0,05 + 0,1)) = = 0,45 / 0,75 = 0,6

b) P((piszkos∧zajos) | rendezett) = P(piszkos∧zajos∧rendezett)/P(rendezett) =

= 0,1 / (0,1 + 0,05 + 0,05 + 0,2) = 0,25

c) P(¬rendezett | zajos) = P(¬rendezett ∧ zajos) / P(zajos) = = (0,3 + 0,05) / ((0,1 + 0,05) + (0,3 + 0,05)) = 0,35 / 0,5 = 0,7

Page 428: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 43/46

4.2. Fuzzy bizonytalanságkezelés 4-4. példa: A közlekedési lámpák szabad jelzését a forgalom nagyságától (azaz

adott ponton időegység alatt áthaladó autók számától - sebességé-től) és a lámpáknál várakozó autók számától teszik függővé. Hogyan szabályozható a forgalom, a járművek átlagsebessége a várakozó autók függvényében?

Megoldás: a.) A várakozó autók száma fuzzy halmazai:kevés, sok, nagyon sok a db szám

függvényében:

kevés sok nagyon sok

Page 429: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 44/46

b.) A forgalom nagysága fuzzy halmazai: alacsony, közepes, magas az elérhető átlagsebesség ([km/ó]) függvényében:

alacsony közepes magas

c.) Tudásbázis szabályhalmaza:

1. ha az autók száma kevés, akkor a forgalom alacsony; 2. ha az autók száma sok, akkor a forgalom közepes; 3. ha az autók száma nagyon sok, akkor a forgalom magas.

d.) Milyen átlagsebesség várható 280 autónál?

A 280 db autó két fuzzy halmazt is érint: a 'kevés' és a 'sok' halmazt. Az első tagsági értéke: ≈ 0,15; a másodiké: ≈ 0,45. Ez azt jelenti, hogy a TB 1. és 2. szabálya is tüzel:

Page 430: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 45/46

1. ha az autók száma kevés, akkor a forgalom alacsony; 2. ha az autók száma sok, akkor a forgalom közepes;

A két, forgalmi halmazt 0,15-ös (alacsony forgalom), illetve 0,45-ös (közepes forgalom) szinten metszi a következő ábrának megfelelően:

közepes alacsony forgalom Ha a defuzzifikáláshoz (a sebesség meghatározásához) a CoA (Center of Area) módszert használjuk, akkor kb. 43 [km/ó] sebességet kapunk eredmé-nyül.

Page 431: Mesterséges intelligencia

Cserny L.: Mesterséges intelligencia, 2018/2019-2 GY01- 46/46

KÖVETKEZŐ ALKALOMMAL:

VIZSGA