Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • OS
  • Razvoj sučelja prirodnog jezika i strojno prevođenje. "Informatika i računalno inženjerstvo"

Razvoj sučelja prirodnog jezika i strojno prevođenje. "Informatika i računalno inženjerstvo"

Institut Kolomna (podružnica)

Državna obrazovna ustanova viša

strukovno obrazovanje

"MOSKVSKO DRŽAVNO OTVORENO SVEUČILIŠTE"

Zavod za informatiku i informacijske tehnologije

"ODOBRENO"

Odgojno-metodička

Vijeće KI (f) MGOU

Predsjednik Uprave

Profesor

prijepodne Lipatov

"___" ____________ 2010

p.s. Romanov

TEMELJI UMJETNE INTELIGENCIJE

Vodič za učenje prema smjeru discipline

„Informatika i Računalno inženjerstvo»

Za studente viših razreda obrazovne ustanove

Kolomna - 2010

Imati

Objavljeno u skladu s odlukom obrazovno-metodološkog vijeća Kolomna instituta (podružnice) GOU VPO "MGOU" od __________ 2010 grad br. ________

DK 519.6

P69 Romanov P.S.

Osnove umjetna inteligencija... Vodič. - Kolomna: KI (f) MGOU, 2010 .-- 164 str.

Vodič pokriva osnove umjetne inteligencije. Prikazani su osnovni koncepti umjetne inteligencije. Prikazane su odredbe teorije neizrazitih skupova. Glavni inteligentni sustavi, njihova namjena, klasifikacija, karakteristike, problemi stvaranja, primjeri.

Udžbenik je namijenjen studentima visokih učilišta koji studiraju na smjeru "Informatika i računalno inženjerstvo". U proučavanju inteligentnih informacijskih sustava mogu ga koristiti studenti drugih specijalnosti.

Recenzent: Doktor tehničkih znanosti, profesor V.G. Novikov

© Romanov P.S.

© KI (f) MGOU, 2010

Uvod …………………………………………………………………………………………………………………………… 5

Poglavlje 1. Osnovni koncepti umjetne inteligencije ................................ 6

§ 1.1. Osnovni pojmovi i definicije ................................................................. ..... 6

§ 1.2. Povijest razvoja AI sustava ............................................ ........ 12

§ 1.4. Glavni pravci razvoja i primjene

inteligentni sustavi ................................................................ ................ 25

Poglavlje 2. Odredbe teorije neizrazitih skupova ........................................ ... 32

§ 2.1. Nejasan skup. Operacije nad neizrazitim skupovima ... ..32

§ 2.1.1. Osnovne operacije na neizrazitim skupovima .................... 35

§ 2.2. Konstrukcija funkcije članstva ................................................. 38

§ 2.2.1. Neke metode za konstruiranje funkcije članstva ... 39

§ 2.3. Nejasni brojevi ................................................................ ................................. 44

§ 2.4. Operacije s neizrazitim brojevima (L-R) -tip ................................ 46

§ 2.5. Nejasne i jezične varijable ......................................... 47

§ 2.6. Nejasan odnos ................................................................ ........................50

§ 2.7. Mutna logika ................................................ ................................ 51

§ 2.8. Nejasni zaključci ................................................................ .............................. 53

§ 2.9. Automatizacija obrade informacija korištenjem

neizraziti sustavi ................................................. .................................. 59

Poglavlje 3. Osnovni inteligentni sustavi ................................................ 64

§ 3.1. Podaci i znanje ................................................. ................................ 64

§ 3.2. Modeli predstavljanja znanja ................................................. ......... 66

§ 3.3.1. Pravila proizvodnje ................................................................ ............... 69

§ 3.3.2. Okviri ................................................................ ................................................. 72

§ 3.3.3. Semantičke mreže ................................................................ ...................... 74

§ 3.4. Ekspertni sustavi. Predmetna područja ................................ 76

§ 3.5. Svrha i opseg ekspertnih sustava ................. 77

§ 3.6. Metodologija razvoja ekspertnih sustava ................................. 81

§ 3.7. Glavni ekspertni sustavi ................................................................. ......... 86

§ 3.8. Poteškoće u razvoju ekspertnih sustava i njihovi načini

prevladavanje ................................................. .................................... 90

§ 3.9. Namjena, klasifikacija robota ................................................. 94

§ 3.10. Primjeri robota i robotskih sustava ........................... 97

§ 3.10.1. Kućni (kućni) roboti ................................................. .... 97

§ 3.10.2. Spasilački roboti i istraživački roboti .................... 99

§ 3.10.3. Roboti za industriju i medicinu ........................... 100

§ 3.10.4. Vojni roboti i robotski sustavi .................... 101

§ 3.10.5. Mozak kao analogno-digitalni uređaj ................................. 104

§ 3.10.6. Roboti - igračke ................................................................. .................... 104

§ 3.11. Problemi tehničke implementacije robota ................................. 105

§ 3.12. Prilagodljivi industrijski roboti ................................................. 114

§ 3.12.1. Prilagodba i obuka ................................................................. ............. 114

§ 3.12.2. Klasifikacija adaptivnih sustava upravljanja

industrijski roboti ................................................................ ... 117

§ 3.12.3. Primjeri prilagodljivih sustava upravljanja robotima ............ 123

§ 3.12.4. Problemi u stvaranju industrijskih robota .................... 128

§ 3.13. Neuralne mreže i neurokompjuterske tehnologije ...................... 132

§ 3.13.1. Opće karakteristike smjera .................................... 132

§ 3.13.2. Neuropaketi ................................................................. ......................... 140

§ 3.14. Neuronske mreže................................................ ................................ 147

§ 3.14.1. Perceptron i njegov razvoj .................................................. ..... 147

3.14.1.1. McCulloch-Pitts matematički neuron ................ 147

3.14.1.2. Rosenblattov perceptron i Hebbovo pravilo ...................... 148

3.14.1.3. Delta pravilo i prepoznavanje slova ............................. 150

3.14.1.4. Adaline, Madaline i generalizirano pravilo delte .......... 152

§ 3.14.2. Višeslojni perceptron i reverzni algoritam

širenje pogreške ................................................................ ..... 155

§ 3.14.3. Vrste aktivacijskih funkcija .................................................... 160

Uvod

Znanost pod nazivom "umjetna inteligencija" uključena je u kompleks računalne znanosti, a tehnologije stvorene na njezinoj osnovi pripadaju informacijskim tehnologijama. Zadaća ove znanosti je pružiti razumno zaključivanje i djelovanje pomoću računalnih sustava i drugih umjetnih uređaja. Umjetna inteligencija (AI) postoji kao samostalno znanstveno područje tek nešto više od četvrt stoljeća. Tijekom tog vremena, odnos društva prema stručnjacima koji se bave takvim istraživanjima evoluirao je od skepticizma do poštovanja. U naprednim zemljama rad u području inteligentnih sustava podržava se na svim razinama društva. Čvrsto je mišljenje da će upravo te studije odrediti prirodu informacijskog društva koje već zamjenjuje industrijsku civilizaciju, koja je dosegla najvišu točku procvata u 20. stoljeću. Tijekom proteklih godina formiranja AI kao posebne znanstvene discipline, formirali su se njezini konceptualni modeli, akumulirale su se specifične metode i tehnike koje samo njoj pripadaju, te su se uspostavile neke temeljne paradigme. Umjetna inteligencija postala je posve respektabilna znanost, ništa manje časna i potrebna od fizike ili biologije.

Umjetna inteligencija je eksperimentalna znanost. Eksperimentalna priroda umjetne inteligencije leži u činjenici da stvarajući određene računalne reprezentacije i modele, istraživač međusobno uspoređuje njihovo ponašanje i primjerima rješavanja istih problema od strane stručnjaka, modificira ih na temelju te usporedbe, pokušavajući postići bolja podudarnost rezultata. Kako biste modificirali programe na "monoton" način kako biste poboljšali rezultate, morate imati razumne početne reprezentacije i modele. Njih pružaju psihološka istraživanja svijesti, posebno kognitivna psihologija.

Važna karakteristika AI metoda je da se bavi samo onim mehanizmima kompetencije koji su verbalne prirode (dopuštaju simboličko predstavljanje). Nikako nisu svi mehanizmi kojima se čovjek služi za rješavanje problema sljedeći.

Knjiga predstavlja osnove umjetne inteligencije koje omogućuju snalaženje u velikom broju publikacija posvećenih problemima umjetne inteligencije i stjecanje potrebnih znanja iz ovog područja znanosti.

Razvoj umjetne inteligencije

Povijest umjetne inteligencije započeo ne tako davno. U drugoj polovici 20. stoljeća koncept je formuliran umjetna inteligencija(umjetna inteligencija) i predloženo je nekoliko njezinih definicija. Jedna od prvih definicija, koja, unatoč znatnoj širini tumačenja, nije izgubila na važnosti, predstavlja umjetnu inteligenciju kao: "Način da se računalni stroj natjera da razmišlja kao osoba".

Relevantnost intelektualizacije računalnih sustava posljedica je potrebe osobe za pronalaženjem rješenja u stvarnostima suvremenog svijeta kao što su netočnost, dvosmislenost, nesigurnost, nejasne i nerazumne informacije. Potreba za povećanjem brzine i adekvatnosti ovog procesa stimulira stvaranje računalnih sustava, kroz interakciju sa stvarnim svijetom pomoću robotike, proizvodne opreme, instrumenata i drugog hardvera, može doprinijeti njegovoj implementaciji.

Računalni sustavi temeljeni na čisto klasičnoj logici - odnosno algoritmi za rješavanje poznatih problema suočavaju se s problemima, susreću se s neizvjesnim situacijama. Za razliku od njih, živa bića, iako gube u brzini, sposobna su donositi uspješne odluke u takvim situacijama.

Primjer umjetne inteligencije

Primjer je slom burze 1987., kada su računalni programi prodali stotine milijuna dolara vrijednih dionica kako bi ostvarili dobit od nekoliko stotina dolara, što je zapravo stvorilo preduvjete za krah. Situacija je ispravljena nakon prijenosa pune kontrole nad burzovnim trgovanjem na protoplazmatske inteligentne sustave, odnosno na ljude.

Definirajući pojam inteligencije kao znanstvene kategorije, treba ga shvatiti kao prikladnost sustava za učenje. Stoga se jedna od najkonkretnijih, po našem mišljenju, definicija umjetne inteligencije tumači kao sposobnost automatiziranih sustava da stječu, prilagođavaju, modificiraju i nadopunjuju znanje kako bi pronašli rješenja za probleme čija je formalizacija teška.

U ovoj definiciji pojam "znanje" ima kvalitativnu razliku od pojma informacije. Ova razlika se dobro odražava u predstavljanju ovih pojmova u obliku informacijska piramida na slici 1.

Slika 1 - Informacijska piramida

Temelji se na podacima, sljedeću razinu zauzimaju informacije, razina znanja zaokružuje piramidu. Kako se krećete uz informacijsku piramidu, količine podataka se pretvaraju u vrijednost informacija, a zatim u vrijednost znanja. To jest, informacija nastaje u trenutku interakcije između subjektivnih podataka i objektivnih metoda njihove obrade. Znanje se formira na temelju formiranja distribuiranih odnosa između heterogenih informacija, stvarajući formalni sustav - način njihovog odražavanja u preciznim konceptima ili izjavama.

Upravo podrška takvog sustava - sustava znanja, u tako suvremenom stanju, omogućuje izgradnju akcijskih programa za pronalaženje rješenja zadatih zadataka, uzimajući u obzir specifične situacije koje se formiraju. u određenom trenutku u okruženju, zadatak je umjetne inteligencije. Stoga se umjetna inteligencija može zamisliti i kao univerzalni nadalgoritam sposoban stvoriti algoritme za rješavanje novih problema.

,

Vodič. Magnitogorsk: MAGU, 2008. 282 str. U tutorialu su prikazani modeli predstavljanja znanja, teorija ekspertnih sustava, osnove logičkog i funkcionalnog programiranja. Mnogo se pažnje posvećuje povijesti razvoja umjetne inteligencije. Izlaganje gradiva popraćeno je velikim brojem ilustracija, ponuđene su vježbe i pitanja za samokontrolu.
Rad je usmjeren na redovne i izvanredne studente koji se upisuju u smjerove „Informatika“, „Nastava fizike i matematike (Profil – informatika).“ Uvod u umjetnu inteligenciju.
Povijest razvoja umjetne inteligencije kao znanstvenog smjera.
Glavni pravci istraživanja u području umjetne inteligencije.
Filozofski aspekti problema umjetne inteligencije.
Pitanja za samokontrolu.
Književnost.
Modeli predstavljanja znanja.
Znanje.
Logički model predstavljanja znanja.
Semantičke mreže.
Okviri.
Proizvodni model.
Drugi modeli predstavljanja znanja.
Vježbe.
Pitanja za samokontrolu.
Književnost.
Ekspertni sustavi.
Koncept ekspertnog sustava.
Vrste ekspertnih sustava i vrste zadataka koje treba riješiti.
Struktura i načini rada ekspertnog sustava.
Tehnologija razvoja ekspertnih sustava.
Stručni alati sustava.
Inteligentni informacijski sustavi.
Vježbe.
Pitanja za samokontrolu.
Književnost.
Prolog kao logički programski jezik.
Koncept logičkog programiranja.
Prikaz znanja o predmetnom području u obliku činjenica i pravila baze znanja Prolog.
Deskriptivni, proceduralni i strojni smisao Prolog programa.
Osnovne tehnike programiranja u Prologu.
Visual Prolog okruženje.
Vježbe.
Književnost.
Koncept funkcionalnog programiranja.
Povijest funkcionalnog programiranja.
Svojstva funkcionalnih programskih jezika.
Zadaci funkcionalnog programiranja.
Vježbe.
Odgovori za samotestiranje.
Književnost.
ssary.
Prilog 1.
Dodatak 2.
Dodatak 3.

Datoteka će biti poslana na odabranu adresu e-pošte. Može proći do 1-5 minuta prije nego što ga primite.

Datoteka će biti poslana na vaš Kindle račun. Može proći do 1-5 minuta prije nego što ga primite.
Imajte na umu da morate dodati našu e-poštu [e-mail zaštićen] na odobrene e-mail adrese. Čitaj više.

Možete napisati recenziju knjige i podijeliti svoja iskustva. Druge čitatelje uvijek će zanimati vaše mišljenje o knjigama koje ste "pročitali. Bez obzira na to jeste li voljeli knjigu ili ne, ako date svoja iskrena i detaljna razmišljanja, ljudi će pronaći nove knjige koje im odgovaraju.

Ministarstvo obrazovanja i znanosti Ruske Federacije GOU VPO "Magnitogorsk State University" O.E. Maslennikova, I.V. Popova Udžbenik Osnove umjetne inteligencije Magnitogorsk 2008 UDK 681.142.1.01 LBC Z97 M Recenzenti: doktor fizikalno-matematičkih znanosti, profesor S.I. Kadchenko doktor tehničkih znanosti, profesor A, S. Sarvarov M Maslennikova O.E., Popova I.V. Osnove umjetne inteligencije: udžbenik. priručnik / O.E. Maslennikova, I.V. Popov. - Magnitogorsk: MAGU, 2008.-- 282 str. ISBN 978-5.86781-609-4 Vodič opisuje modele predstavljanja znanja, teoriju ekspertnih sustava, osnove logičkog i funkcionalnog programiranja. Mnogo se pažnje posvećuje povijesti razvoja umjetne inteligencije. Izlaganje gradiva popraćeno je velikim brojem ilustracija, ponuđene su vježbe i pitanja za samokontrolu. Rad je usmjeren na redovite i izvanredne studente koji studiraju na smjerovima "Informatika", "Fizičko-matematički odgoj (Profil - Informatika)". UDK 681.142.1.01 BBK Z97 ISBN 978-5.86781-609-4  Maslennikova O.E., Popova I.V., 2008.  Magnitogorsko državno sveučilište, 2008. -2- SADRŽAJ POGLAVLJE ... UMJETNOST UVOD 1. UMJETNOST. ........ 5 1.1. POVIJEST RAZVOJA UMJETNE INTELIGENCIJE KAO ZNANSTVENOG PRAVCA ........................................ ..................................................................... ........ 9 1.2. GLAVNI PRAVCI ISTRAŽIVANJA U PODRUČJU UMJETNE INTELIGENCIJE ........................................ ................................................... ............ 13 1.3. FILOZOFSKI ASPEKTI PROBLEMA UMJETNE INTELIGENCIJE ..... 16 PITANJA ZA SAMOKONTROLU ......................... ..................................................... 21 LITERATURA . ..................................................................... ..................................................................... .... 21 POGLAVLJE 2. MODELI PREDSTAVLJANJA ZNANJA ........................................ .. 22 2.1. ZNANJE................................................. ................................................................ ....... 22 2.2. LOGIČKI MODEL PREDSTAVLJANJA ZNANJA ................................................ 25 2.3. SEMANTIČKE MREŽE ................................................................ .................................... 58 2.4. OKVIRI ................................................. ................................................................ ...... 59 2.5. MODEL PROIZVODA ................................... ............................................... 62 2.6. OSTALI MODELI PREDSTAVLJANJA ZNANJA ........................................ .... 64 VJEŽBE ........................................ ................................................................ ......... 78 PITANJA ZA SAMOKONTROLU ................................... .. ................................................. 83 LITERATURA ....... .. ................................................................ .. ................................................. 84 GLAVA 3. STRUČNI SUSTAVI .............................................. .......... 86 3.1. POJAM EKSPERTNOG SUSTAVA ................................................ ............... 86 3.2. VRSTE EKSPERTNIH SUSTAVA I VRSTE RJEŠENIH PROBLEMA ................................. 89 3.3. STRUKTURA I NAČINI RADA EKSPERTNOG SUSTAVA ................................ 99 3.4. TEHNOLOGIJA RAZVOJA EKSPERTNIH SUSTAVA ........................................ 102 3.5. ALATI STRUČNOG SUSTAVA ............................ 113 3.6. INTELIGENTNI INFORMACIJSKI SUSTAVI ................................ 129 VJEŽBE ............ ................................................................ .................................... 135 PITANJA ZA SAMOKONTROLU ..... .. ................................................................ .. ................. 136 LITERATURA .................................. .. ................................................................ .. ...................... 138 POGLAVLJE 4. PROLOG KAO JEZIK LOGIČKOG PROGRAMIRANJA ............... .................................................... ...... ........... 139 4.1. UVOD O LOGIČKOM PROGRAMIRANJU ........................ 139 4.2. DOSTAVLJANJE ZNANJA O PREDMETNOM PODRUČJU VRSTA ČINJENICA I PRAVILA PROLOŠKE BAZE ZNANJA ................................. ..................................................................... ... 140 4.3 ... OPISNI, PROCEDURALNI I STROJNI SMISAO PROGRAMA NA PROLOGU ........................................ ................................................... ............ 148 4.4. OSNOVNE TEHNIKE PROGRAMIRANJA U PROLOGU .................................. 151 4.5. VIZUALNO OKRUŽENJE PROLOGA ........................................ ................................. 154 VJEŽBE ............... ................................................................ .................................... 194 LITERATURA ............ ................................................................ ......................................... 197 -3- POGLAVLJE 5. PREZENTACIJA OD FUNKCIONALNO PROGRAMIRANJE. ................................................................ ................................. 199 5.1. POVIJEST FUNKCIONALNOG PROGRAMIRANJA ................................ 200 5.2. SVOJSTVA FUNKCIONALNIH PROGRAMSKIH JEZIKA ............... 203 5.3. ZADACI FUNKCIONALNOG PROGRAMIRANJA .................................... 207 VJEŽBE ................... ................................................................ ........................................ 210 ODGOVORI ZA SAMOPROVJERU .... .. ................................................................ .. ..................... 210 LITERATURA ........................ .. ................................................................ .. .......................... 211 RJEČNIK ......................... .. ................................................................ .. ................................. 213 DODATAK 1 ................ .. ................................................................ .. ........................... 221 DODATAK 2 ................... .. ................................................................ .. ....................... 252 DODATAK 3 ........................ .. ................................................................ .................... 265-4- PREDGOVOR B novije vrijeme postoji porast interesa za umjetnu inteligenciju, uzrokovan povećanim zahtjevima za informacijskim sustavima. Čovječanstvo se neprestano kreće prema novoj informacijskoj revoluciji, usporedivoj po razmjeru s razvojem interneta. Umjetna inteligencija je smjer računalne znanosti, čija je svrha razvoj hardverskih i softverskih alata koji omogućuju ne-programeru postavljanje i rješavanje vlastitih, tradicionalno smatranih intelektualnih zadataka, komunicirajući s računalom na ograničenom podskupu prirodnog jezika. Povijest umjetne inteligencije kao novog znanstvenog smjera počinje sredinom 20. stoljeća. U to su vrijeme već bili stvoreni mnogi preduvjeti za njegovo nastanak: među filozofima su se dugo vremena vodili sporovi o prirodi čovjeka i procesu spoznavanja svijeta, neurofiziolozi i psiholozi razvili su brojne teorije o radu čovjeka. mozak i razmišljanje, ekonomisti i matematičari postavljali su pitanja optimalnih proračuna i predstavljanja znanja o svijetu u formaliziranom obliku; konačno, rođen je temelj matematičke teorije računanja - teorija algoritama - i nastala su prva računala. Svrha ovog priručnika je ocrtati glavne smjerove i metode koje se koriste u umjetnoj inteligenciji, kao i utvrditi mogućnost njihove uporabe u profesionalnoj pedagoškoj djelatnosti. Ovaj vodič je podijeljen u pet poglavlja. Prvi daje kratak uvod u umjetnu inteligenciju: istražuje povijest njezina razvoja kao znanstvenog smjera, ističe glavna područja umjetne inteligencije, razmatra filozofske aspekte problema kao što su mogućnost postojanja, sigurnost i korisnost umjetne inteligencije. inteligencija. Drugo poglavlje posvećeno je opisu klasičnih modela reprezentacije znanja: logičkog, semantičkog, okvirnog, produkcijske i neuronske mreže. Treće poglavlje bavi se teorijskim i praktičnim pitanjima razvoja ekspertnih sustava; opisuje omotač XpertRule. Četvrto poglavlje opisuje osnovne principe programiranja u jeziku Prolog, opisuje okruženje Visual Prolog. Peto poglavlje opisuje osnove funkcionalnog programiranja s primjerima u jeziku LISP. Priručnik sadrži veliki broj ilustracije, vježbe i pitanja za samokontrolu. Za praktičnost proučavanja gradiva osiguran je pojmovnik. -5- POGLAVLJE 1. UVOD U UMJETNU INTELIGENCIJU Umjetna inteligencija (AI) je novi smjer informatike čiji je predmet proučavanja svaka ljudska intelektualna aktivnost koja se pokorava dobro poznatim zakonima. Slikovito se ovaj smjer naziva "najstarijim sinom informatike", budući da mnogi neriješeni problemi postupno pronalaze svoje rješenje u okviru umjetne inteligencije. Poznato je da je predmet informatike obrada informacija. Područje AI uključuje takve slučajeve (zadatke) iz ove obrade koji se ne mogu izvesti jednostavnim i točnim algoritamskim metodama, a kojih je jako puno. AI se oslanja na znanje o procesu ljudskog razmišljanja. Istodobno, nije poznato kako točno funkcionira ljudski mozak, međutim, za razvoj učinkovitog rada programa s elementima AI, znanje o značajkama ljudske inteligencije koje znanost danas ima već je dovoljno. Istodobno, AI ne pokušava točno kopirati rad ljudskog mozga, već pokušava simulirati njegove funkcije pomoću računalne tehnologije. Od svog osnutka, AI se razvija kao interdisciplinarni smjer u interakciji s informatikom i kibernetikom, kognitivnim znanostima, logikom i matematikom, lingvistikom i psihologijom, biologijom i medicinom (slika 1.). Informatika i kibernetika. Mnogi stručnjaci došli su u AI iz informatike i kibernetike. Također, mnogi kombinatorni problemi koji se ne mogu riješiti tradicionalnim metodama u informatici migrirali su u područje AI. Osim toga, rezultati dobiveni u AI posuđuju se u stvaranju softvera i postaju dio Računarstva (informatike). Kognitivne znanosti. Kognitivne znanosti su znanosti o znanju. AI se također odnosi na znanje. No, kognitivne znanosti ne koriste samo informacijske i neurobiološke pristupe, već također razmatraju socijalne i psiholingvističke aspekte korištenja znanja. Logika i matematika. Logika je temelj svih poznatih formalizama za predstavljanje znanja, kao i programskih jezika kao što su Lisp i Prolog. Za rješavanje AI problema koriste se metode diskretne matematike, teorije igara i teorije operacija. Zauzvrat, AI se može koristiti za dokazivanje teorema, rješavanje problema u različitim područjima matematika: geometrija, integralni račun. Psihologija i lingvistika. Nedavno su se stručnjaci za umjetnu inteligenciju zainteresirali za psihološke aspekte ljudskog ponašanja kako bi ga mogli modelirati. Psihologija pomaže u izgradnji modela procjene vrijednosti, subjektivnog odlučivanja. Zanimljiva je psihologija komunikacije -6- "čovjek-računalo", psiholingvistika. Računalna lingvistika je dio AI koji se temelji na matematičkim metodama obrade prirodnih i umjetni jezici, s jedne strane, i fenomenologije jezika, s druge strane. Biologija i medicina omogućuju bolje proučavanje i razumijevanje rada mozga, sustava vida, sluha i drugih prirodnih senzora te daju novi poticaj modeliranju njihova rada. Riža. 1. Interakcija AI s drugim disciplinama Ne postoji jedinstvena definicija AI, kao što ne postoji jedinstvena definicija prirodne inteligencije. Među brojnim stajalištima o ovom znanstvenom polju, tri sada dominiraju. 1. Istraživanja u području umjetne inteligencije su temeljna istraživanja u okviru kojih se razvijaju modeli i metode rješavanja problema koji su se tradicionalno smatrali inteligentnim, a prije nisu bili podložni formalizaciji i automatizaciji. 2. AI je novi smjer informatike, povezan s novim idejama za rješavanje problema na računalu, s razvojem bitno drugačije tehnologije programiranja, s prijelazom na arhitekturu računala koja odbacuje klasičnu arhitekturu, koja datira od pr. računala. 3. Kao rezultat rada na području umjetne inteligencije rađaju se mnogi primijenjeni sustavi koji rješavaju probleme za koje prethodno stvoreni sustavi nisu bili prikladni. -7- Primjer s kalkulatorom može se koristiti za ilustraciju prvog pristupa. Početkom stoljeća aritmetički proračuni s dvosmislenim brojevima bila je sudbina nekolicine darovitih pojedinaca i sposobnost izvođenja takvih aritmetičkih radnji u umu s pravom se smatrala jedinstvenim darom prirode i bila je predmet znanstveno istraživanje... Danas je izum kalkulatora ovu sposobnost učinio dostupnom čak i učeniku trećeg razreda. Isto je i s AI: poboljšava intelektualne sposobnosti osobe, preuzimajući rješavanje zadataka koji prethodno nisu formalizirani. Da bismo ilustrirali drugi pristup, možemo razmotriti povijest pokušaja stvaranja računala pete generacije. Sredinom 1980-ih Japan je najavio početak ambicioznog projekta stvaranja računala pete generacije. Projekt se temeljio na ideji hardverske implementacije jezika PROLOG. Međutim, projekt je završio neuspjehom, iako je snažno utjecao na razvoj i širenje jezika PROLOG kao programskog jezika. Razlog neuspjeha bio je ishitreni zaključak da jedan jezik (iako prilično univerzalan) može pružiti jedinstveno rješenje za sve probleme. Praksa je pokazala da do sada univerzalna programska paradigma za rješavanje svih problema nije izmišljena i malo je vjerojatno da će se pojaviti. To je zbog činjenice da je svaki zadatak dio predmetnog područja i zahtijeva pažljivo proučavanje i specifičan pristup. Pokušaji stvaranja novih računalnih arhitektura se nastavljaju i povezani su s paralelnim i distribuiranim računalstvom, neuroračunalima, probabilističkim i neizrazitim procesorima. Rad u području stvaranja ekspertnih sustava (ES) može se pripisati trećem, najpragmatičnijem smjeru u AI. Ekspertni sustavi su softverski sustavi koji zamjenjuju čovjeka stručnjaka u uskim područjima intelektualne djelatnosti koja zahtijevaju korištenje posebnih znanja. Stvaranje ES-a u području medicine (kao što je MYCIN) omogućuje širenje znanja na najudaljenija područja. Dakle, u kombinaciji s telekomunikacijskim pristupom, svaki seoski liječnik može dobiti savjet iz takvog sustava, koji zamjenjuje njegovu komunikaciju sa specijalistom o nekom uskom pitanju. U Rusiji je umjetna inteligencija našla svoje pristaše gotovo od samog početka. Međutim, ova disciplina nije odmah dobila službeno priznanje. AI je kritiziran kao podgrana kibernetike, koja se smatra "pseudoznanošću". Do određenog trenutka negativnu ulogu imao je i šokantan naziv "umjetna inteligencija". Dakle, u Prezidiju Akademije znanosti pojavila se šala da se "umjetnom inteligencijom bave oni kojima nedostaje prirodno". Međutim, danas je AI službeno priznat znanstveni smjer u Rusiji, objavljuju se časopisi "Upravljački sustavi i strojevi" i "AI News", znanstvenim skupovima i seminare. Postoji Rusko udruženje umjetne inteligencije, koje broji oko 200 članova, čiji je predsjednik D.A. Pospelov, doktor tehničkih znanosti, i počasni predsjednik, akademik Ruske akademije znanosti G.S. Pospelov. Pri Vijeću predsjednika Ruske Federacije za informatiku i računalstvo postoji Ruski institut za umjetnu inteligenciju. U okviru Ruske akademije znanosti postoji Znanstveno vijeće o problemu "umjetne inteligencije". Uz sudjelovanje ovog Vijeća objavljeno je puno knjiga o temama umjetne inteligencije, prijevoda. Poznata djela D.A. Pospelova, Litvintseve i Kandrashine - u području predstavljanja i obrade znanja, E.V. Popov i Khoroshevsky - u području obrade prirodnog jezika i ekspertnih sustava, Averkin i Melikhov u području neizrazite logike i neizrazitih skupova, Stefanyuk - u području sustava učenja, Kuznetsov, Finn i Vagin - u području logike i znanja reprezentacija. U Rusiji postoji tradicionalno jaka računalna lingvistička škola, koja proizlazi iz Melchukovog rada na modelu "SmyslText". Poznati računalni lingvisti su Apresyan, Gorodetsky, Paducheva, Narinyani, Leontyeva, Chaliapin, Zaliznyak stariji, Kibrik stariji, Baranov i mnogi drugi. ostali 1.1. Povijest razvoja umjetne inteligencije kao znanstvenog smjera Ideja o stvaranju umjetne sličnosti ljudskog uma za rješavanje složenih problema i modeliranje sposobnosti mišljenja vinula je u zraku od davnina. U starom Egiptu stvorena je "oživljavajuća" mehanička statua boga Amona. U Homerovoj Ilijadi bog Hefest je kovao stvorenja nalik strojevima. U literaturi se ova ideja mnogo puta poigravala: od Galateje Pigmaliona do Pinokija pape Karla. Međutim, rodonačelnikom umjetne inteligencije smatra se srednjovjekovni španjolski filozof, matematičar i pjesnik R. Llull (oko 1235-oko 1315), koji je u XIV.st. pokušao stvoriti stroj za rješavanje raznih problema na temelju opće klasifikacije pojmova. U XVIII stoljeću. G. Leibniz (1646. - 1716.) i R. Descartes (1596. - 1650.) samostalno su razvili ovu ideju, predlažući univerzalne jezike za klasifikaciju svih znanosti. Te su ideje bile temelj teorijskog razvoja u području umjetne inteligencije (slika 2). Razvoj umjetne inteligencije kao znanstvenog smjera postao je moguć tek nakon stvaranja računala. To se dogodilo 40-ih godina. XX. stoljeće U isto vrijeme N. Wiener (1894. - 1964.) stvara svoja temeljna djela o novoj znanosti - kibernetici. Pojam umjetna inteligencija predložen je 1956. godine na istoimenom seminaru na Sveučilištu Stanford (SAD). Seminar je bio posvećen razvoju logičkih, a ne računskih problema. Ubrzo nakon priznavanja umjetne inteligencije kao neovisne grane znanosti, došlo je do podjele na dva glavna područja: neurokibernetiku i kibernetiku crne kutije. I tek u današnje vrijeme postale su vidljive tendencije ponovnog ujedinjenja ovih dijelova u jedinstvenu cjelinu. U SSSR-u 1954. na Moskovskom državnom sveučilištu pod vodstvom profesora A. A. Lyapunova (1911. - 1973.) započeo je s radom seminar "Automati i mišljenje". Na seminaru su sudjelovali glavni fiziolozi, lingvisti, psiholozi, matematičari. Općenito je prihvaćeno da je u to vrijeme u Rusiji rođena umjetna inteligencija. Kao i u inozemstvu, pojavili su se pravci neurokibernetike i kibernetike "crne kutije". Godine 1956. -1963. intenzivno se tragalo za modelima i algoritmima ljudskog mišljenja i razvijalo se prvi program. Pokazalo se da niti jedna od postojećih znanosti - filozofija, psihologija, lingvistika - ne može ponuditi takav algoritam. Zatim je kibernetika predložila stvaranje vlastitih modela. Razvijeni su i testirani različiti pristupi. Prvo istraživanje umjetne inteligencije odnosilo se na stvaranje programa za igranje šaha, jer se vjerovalo da je sposobnost igranja šaha pokazatelj visoke inteligencije. 1954. godine američki znanstvenik Newell osmislio je ideju stvaranja takvog programa. Shannon je predložila, a Turing precizirao, metodu za stvaranje takvog programa. Amerikanci Shaw i Simon u suradnji sa grupom nizozemskih psihologa iz Amsterdama na čelu s de Grootom napravili su takav program. Usput je stvoren i poseban jezik IPL1 (1956.), dizajniran za manipulaciju informacijama u simboličkom obliku, koji je bio prethodnik jezika Lisp (MacCarthy, 1960.). Međutim, prvi program umjetne inteligencije bio je program Theoretical Logic, osmišljen da dokaže teoreme u propozicionom računu (9. kolovoza 1956.). Šahovski program nastao je 1957. (NSS - Newell, Shaw, Simon). Njegova struktura i struktura teoretičarskog programa logike činili su osnovu za stvaranje programa GPS-General Problem Solving. Ovaj program, analizirajući razlike između situacija i konstruiranjem ciljeva, dobar je u rješavanju zagonetki poput Hanojskog tornja ili izračunavanju neodređenih integrala. EPAM (Elementarni program percepcije i pamćenja) - osnovni program za percepciju i pamćenje, koju je zamislio Feigenbaum. Godine 1957. pojavio se članak Chomskyja, jednog od utemeljitelja računalne lingvistike, o transformacijskim gramatikama. U kasnim 50-ima. rođen je model traženja labirinta. Ovaj pristup predstavlja problem kao neki graf koji odražava prostor stanja1, a na ovom grafu se traži optimalni put od ulaznih podataka do rezultirajućih podataka. Mnogo se radilo na razvoju ovog modela, ali u rješavanju praktični zadaci ideja nije bila široko rasprostranjena. 1 Prostor stanja je graf čiji vrhovi odgovaraju situacijama koje se susreću u problemu („problemske situacije“), a rješenje problema se svodi na pronalaženje puta u ovom grafu. - 10 - Početkom 60-ih. - doba heurističkog programiranja. Heuristika je pravilo koje je teoretski neopravdano, ali omogućuje smanjenje broja pretraživanja u prostoru pretraživanja. Heurističko programiranje je razvoj akcijske strategije temeljene na poznatoj, unaprijed definiranoj heuristici. U 60-im godinama stvoreni su prvi programi koji su radili s upitima na prirodnom jeziku. BASEBALL program (Green et al., 1961.) odgovarao je na upite o rezultatima prošlih bejzbol utakmica, STUDENT program (Bobrow, 1964.) imao je pristup rješenju algebarskih problema formuliranih na engleskom jeziku. Riža. 2. Prekretnice u razvoju umjetne inteligencije kao znanstvenog smjera Velike nade polagale su se na rad na području strojnog prevođenja, čiji se početak veže uz ime ruske lingvistice Belske. Međutim, istraživačima je trebalo mnogo godina da shvate da automatsko prevođenje nije izoliran problem i da je za uspješno prevođenje potreban takav korak kao što je razumijevanje. Među najznačajnijim rezultatima do kojih su domaći znanstvenici došli 60-ih godina valja istaknuti algoritam "Kora" M. Bongarda koji simulira aktivnost ljudskog mozga u prepoznavanju uzoraka. Godine 1963-1970 metode matematičke logike počele su se povezivati ​​s rješavanjem problema. Novi pristup formalnoj logici, zasnovan na dovođenju rasuđivanja u proturječnost, pojavio se 1965. - 11. - (J. Robinson). Na temelju metode rezolucija, koja je omogućila automatsko dokazivanje teorema u prisutnosti skupa početnih aksioma, 1973. je stvoren Prolog jezik. U SSSR-u 1954-1964. izrađuju se zasebni programi i istražuje se traženje rješenja logičkih problema. U Lenjingradu (LOMI - Lenjingradski ogranak Matematičkog instituta Steklova) stvara se program koji automatski dokazuje teoreme (ALPEV LOMI). Temelji se na originalnom obrnutom zaključku S. Yu. Maslova, slično metodi Robinsonovih rezolucija. Godine 1965-1980. se razvija nova znanost- situacijsko upravljanje (odgovara zastupljenosti znanja u zapadnoj terminologiji). Osnivač ove znanstvene škole je profesor D.A. Pospelov. Razvijeni su posebni modeli za predstavljanje situacija – reprezentacija znanja. U inozemstvu istraživanja u području umjetne inteligencije praćena su razvojem programskih jezika nove generacije i stvaranjem sve sofisticiranijih programskih sustava (Lisp, Prolog, Plannar, QA4, Macsyma, Reduce, Refal, ATNL, TMS). Dobiveni rezultati počinju se koristiti u robotici, pri upravljanju robotima, stacionarnim ili mobilnim, koji rade u stvarnom trodimenzionalnom prostoru. To otvara problem stvaranja umjetnih organa percepcije. Do 1968. istraživači su radili uglavnom s odvojenim "mikroprostorima", stvarali su sustave prikladne za takva specifična i ograničena područja primjene kao što su igre, euklidska geometrija, integralni račun, "svijet kocaka", obrada jednostavnih i kratkih fraza s malim rječnikom ... Gotovo svi ovi sustavi koristili su isti pristup – pojednostavljivanje kombinatorike temeljeno na smanjenju potrebnog nabrajanja alternativa na temelju zdravog razuma, korištenjem funkcija numeričke procjene i raznih heuristika. Početkom 1970-ih došlo je do kvantnog skoka u istraživanju umjetne inteligencije. Dva su razloga za to.  Prvo. Svi su istraživači postupno shvatili da svim prethodno kreiranim programima nedostaje ono najvažnije - dubinsko znanje iz relevantnog područja. Razlika između stručnjaka i obične osobe je u tome što stručnjak ima iskustvo u tom području, t.j. stečeno znanje tijekom godina.  Drugo. Pojavljuje se specifičan problem: kako to znanje prenijeti u program, ako njegov neposredni tvorac to znanje ne posjeduje. Odgovor je jasan: sam program ih mora izdvojiti iz podataka dobivenih od stručnjaka. Istraživanja o rješavanju problema i razumijevanju prirodnog jezika imaju jednu zajedničku stvar čest problem- zastupljenost znanja. Do 1970. bilo je - 12 - stvoreno mnogo programa temeljenih na tim idejama. Prvi od njih je DENDRAL program. Dizajniran je za generiranje strukturnih formula kemijskih spojeva na temelju informacija iz masenog spektrometra. Program je razvijen na Stanfordu uz sudjelovanje nobelovca D. Lederberga. Iskustvo je stjecala u procesu vlastitog funkcioniranja. Stručnjak je u njemu postavio mnoge tisuće elementarnih činjenica, predstavljenih u obliku zasebnih pravila. Sustav o kojem je riječ bio je jedan od prvih ekspertnih sustava i rezultati njegovog rada su nevjerojatni. Sustav se trenutno isporučuje potrošačima zajedno sa spektrometrom. Godine 1971. Terry Vinograd razvio je sustav SHRDLU, koji simulira robota koji manipulira kockama. S robotom možete govoriti engleski. Sustav je zainteresiran ne samo za sintaksu fraza, već i ispravno razumije njihovo značenje zahvaljujući semantičkom i pragmatičkom poznavanju svog "svijeta kocaka". Od sredine 1980-ih komercijalizacija umjetne inteligencije odvija se u inozemstvu. Rastu godišnji kapitalni izdaci, stvaraju se industrijski ekspertni sustavi. Sve je veći interes za sustave za samoučenje. Kod nas je 1980.-1990. provode se aktivna istraživanja u području predstavljanja znanja, razvijaju se jezici predstavljanja znanja, ekspertni sustavi (više od 300). Jezik REFAL se stvara na Moskovskom državnom sveučilištu. Godine 1988. osnovana je AII - Udruga za umjetnu inteligenciju. Članovi su više od 300 istraživača. Predsjednik Udruge - D.A. Pospelov. Najveći centri - u Moskvi, Sankt Peterburgu, Pereslavl-Zalesskom, Novosibirsku. 1.2. Glavni pravci istraživanja u području umjetne inteligencije Trenutno je umjetna inteligencija brzo razvijajuće i vrlo razgranato znanstveno područje. Godišnje se održava više od 40 konferencija samo iz računalne lingvistike u svijetu. Gotovo svaka europska država, kao i SAD, Kanada, Japan, Rusija, jugoistočna Azija, redovito su domaćini nacionalnih konferencija o umjetnoj inteligenciji. U Rusiji se ova manifestacija održava svake dvije godine pod pokroviteljstvom Ruske udruge za umjetnu inteligenciju (RAII). Osim toga, svake dvije godine održava se Međunarodna zajednička konferencija o umjetnoj inteligenciji (IJCAI). Više od 3 tisuće časopisa objavljuje znanstvene rezultate iz ovog područja. Ne postoji potpuna i stroga klasifikacija svih područja AI; pokušaj klasifikacije zadataka koje AI rješava prikazan je na Sl. 3. Prema klasifikaciji D.A. Pospelova u AI, postoje dva dominantna pristupa istraživanjima u području AI: neurobionički i informacijski (sl. 4 i 5). - 13 - Problemi Opći formalni stručni percepcije Igre (šah, go, zagonetke) Inženjering Obrada prirodnog jezika Matematika Znanstvena analiza Zdrav razum Rasuđivanje Geometrija Financijska analiza Kontrolni program robota Provjera Medicinska dijagnostika Sl. 3. Zadaci umjetne inteligencije Zagovornici prvog postavili su si za cilj umjetnu reprodukciju procesa koji se odvijaju u ljudskom mozgu. Ovo područje je na sjecištu medicine, biologije i kibernetike. Istodobno proučavaju ljudski mozak, identificiraju načine njegova rada, stvaraju tehnička sredstva za ponavljanje bioloških struktura i procesa koji se u njima odvijaju. Područje AI može se grubo podijeliti u pet velikih dijelova: - neuralne strukture; - programi za rješavanje intelektualnih problema; - sustavi temeljeni na znanju; - intelektualno programiranje; - inteligentni sustavi. Svaki od odjeljaka može se prikazati na sljedeći način (vidi sliku 4-9). - 14 - Sl. 4. Neuro-slične strukture Sl. 5. Programi za rješavanje intelektualnih problema Sl. 6. Sustavi temeljeni na znanju - 15 - Sl. 7. Inteligentno programiranje Sl. 8. Inteligentni sustavi 1.3. Filozofski aspekti problema umjetne inteligencije Glavni filozofski problem u području umjetne inteligencije vezan je uz traženje odgovora na pitanje: je li moguće ili ne modelirati ljudsko mišljenje. U slučaju da se na ovo pitanje ikada dobije negativan odgovor, onda sva ostala pitanja iz područja AI neće imati ni najmanjeg smisla. Stoga se pri pokretanju studije umjetne inteligencije unaprijed pretpostavlja pozitivan odgovor. Dokaz o mogućnosti modeliranja ljudskog mišljenja. 1. Školski: dosljednost umjetne inteligencije i Biblije. Očigledno, čak i oni koji su daleko od religije znaju riječi Svetog pisma: "I stvori Gospodin čovjeka na svoju sliku i priliku...". Na temelju ovih riječi možemo zaključiti da budući da je Gospodin, prvo, stvorio ljude, a drugo, oni su mu sami po sebi slični, onda su ljudi sasvim sposobni stvoriti nekoga na sliku i priliku čovjeka. 2. Biološki. Stvaranje novog uma biološkim sredstvima sasvim je uobičajeno za osobu. Promatrajući djecu, vidimo da - 16 - većinu znanja stječu učenjem, a ne onako kako im je unaprijed zadano. Ova izjava nije dokazana na suvremenoj razini, ali prema vanjskim znakovima, sve izgleda upravo ovako. 3. Empirijski. Ono što se prije činilo vrhuncem ljudske kreativnosti - igranje šaha, dame, prepoznavanje vizualnih i zvučnih slika, sintetiziranje novih tehnička rješenja, u praksi se pokazalo da nije tako izazovan zadatak... Sada se posao ne obavlja na razini mogućnosti ili nemogućnosti implementacije navedenog, već na pronalaženju najoptimalnijeg algoritma - često se ti problemi niti ne nazivaju problemima umjetne inteligencije. Nadamo se da je moguća i potpuna simulacija ljudskog razmišljanja. 4. Mogućnost samoreprodukcije. Sposobnost same reprodukcije dugo se smatrala prerogativom živih organizama. Međutim, neke pojave koje se javljaju u neživoj prirodi (na primjer, rast kristala, sinteza složenih molekula kopiranjem) vrlo su slične samoreproduciranju. Početkom 1950-ih J. von Neumann započeo je temeljito proučavanje samoreprodukcije i postavio temelje matematičke teorije "samoreproducirajućih automata". Također je teoretski dokazao mogućnost njihova nastanka. Postoje i razni neformalni dokazi o mogućnosti samoreplikacije, ali programerima je možda najupečatljiviji dokaz postojanje računalnih virusa. 5. Algoritamski. Temeljnu mogućnost automatizacije rješavanja intelektualnih problema pomoću računala pruža svojstvo algoritamske univerzalnosti. Ovo svojstvo računala znači da je moguće programski implementirati (tj. predstaviti u obliku računalnog programa) bilo koje algoritme za pretvaranje informacija o njima. Štoviše, procesi generirani ovim algoritmima potencijalno su izvedivi, odnosno izvedivi su kao rezultat konačnog broja elementarnih operacija. Izvedivost algoritama ovisi o dostupnim alatima, koji se mogu promijeniti s napretkom tehnologije. Dakle, u vezi s pojavom brzih računala, takvi su algoritmi postali praktički izvedivi, koji su prije bili samo potencijalno izvedivi. Osim toga, sadržaj ovog svojstva ima prediktivnu prirodu: kad god u budućnosti bilo koji recept bude prepoznat od strane algoritma, tada se, bez obzira na oblik i način na koji će se prvobitno izraziti, također može postaviti u obliku strojni program. Međutim, to ne treba misliti računalni strojevi a roboti u principu mogu riješiti svaki problem. Analiza raznih problema dovela je matematičare do izvanrednog otkrića. Rigorozno je dokazano postojanje takvih vrsta problema za koje je nemoguć jedinstveni učinkovit algoritam koji rješava sve probleme. ovog tipa; u tom smislu je nemoguće riješiti probleme ovog tipa uz pomoć računala. Ova činjenica pridonosi boljem razumijevanju što strojevi mogu, a što ne mogu. Doista, izjava o algoritamskoj neodlučivosti određene klase problema nije samo priznanje da je takav algoritam nepoznat i da ga još nitko nije pronašao. Takva izjava je ujedno i prognoza za sva buduća vremena da nam ovakav algoritam nije poznat i da ga nitko neće naznačiti, odnosno da ga nema. AI se može promatrati u nizu alata (intelektualnih i neintelektualnih) koje je čovječanstvo stvorilo i ovladalo na putu svog povijesnog razvoja. Tu spadaju:  ručni alati;  alatni strojevi i strojevi;  jezik i govor;  računski uređaji;  VT i telekomunikacijski objekti. Filozofi tvrde da je izrada alata (u najširem smislu riječi) najviše važne vrste aktivnost koja razlikuje naše pretke od drugih primata. Ljudska se bića ističu među životinjama po svojoj sposobnosti da proizvode znanje i alate. Niti jedan drugi tehnološki ili društveno-politički izum nije izazvao tako gigantski jaz u razvoju vrste homo sapience od drugih vrsta žive prirode. Razvoj računalne tehnologije može se općenito podijeliti na dva područja: digitalnu obradu i simboličku obradu. Prvi smjer je učinio informacije mnogo prikladnijim za pohranu, obradu i prijenos od svih prethodnih poboljšanja u tehnologiji papira. Računalo je nadmašilo sve računalne alate prošlosti (abakus, abakus, stroj za zbrajanje) brzinom, raznolikošću funkcija, jednostavnošću korištenja. Dosljedno šireći opseg automatizacije u području monotonog mentalnog rada, digitalna obrada informacija proširila je opseg tiskarskog stroja i industrijske revolucije na nove granice. Druga grana računalne tehnologije, obrada znakova (Newellov i Simonov izraz) ili umjetna inteligencija, omogućila je računalu da oponaša procese senzorne percepcije i orijentacije, zaključivanja i rješavanja problema, obrade prirodnog jezika i drugih ljudskih sposobnosti. Drugim riječima, AI je nova vrsta alata, alternativa postojećim. Ova stvarnost natjerala je filozofe umjetne inteligencije da se odmaknu od pitanja "Je li moguće stvoriti inteligentni stroj?" na problem utjecaja intelektualnih alata na društvo. Uključujući mogući društveni učinak razvoja umjetne inteligencije, i to: - 18 - povećanje razine inteligencije cijelog društva, što će dati nova otkrića, izume i novo razumijevanje samog čovječanstva.  mijenjanje situacije kada je većina ljudi sredstvo i instrument proizvodnje. Sljedeće filozofsko pitanje AI je svrha stvaranja. U principu, sve što radimo u praktičnom životu obično je usmjereno na to da ne radimo ništa drugo. Međutim, za dovoljno visoka razina život (velika količina potencijalne energije) osobe u prvim ulogama više nije lijenost (u smislu želje za uštedom energije), već instinkti traženja. Recimo da je čovjek uspio stvoriti intelekt koji nadmašuje vlastiti (ako ne kvalitetom, onda kvantitetom). Što će se sada dogoditi s čovječanstvom? Kakvu će ulogu ta osoba imati? za što je sad? I općenito, je li u principu potrebno stvoriti AI? Možda je najprihvatljiviji odgovor na ova pitanja koncept "pojačivača inteligencije" (AI). Prema S.L. Sotnik, ovdje je prikladna analogija s predsjednikom države - on nije dužan poznavati valenciju vanadija niti programski jezik Java da bi donio odluku o razvoju industrije vanadija. Svatko radi svoje – kemičar opisuje tehnološki proces, programer piše program; ekonomist kaže predsjedniku da će ulaganjem u industrijsku špijunažu zemlja dobiti 20%, au industriji vanadija - 30% godišnje. Mislim da će s takvom formulacijom pitanja svatko moći napraviti pravi izbor. U ovom primjeru, predsjednik koristi biološku umjetnu inteligenciju - skupinu stručnjaka sa svojim proteinskim mozgom. Ali čak i sada se koriste i neživa korisnička sučelja - na primjer, računala, ugrađeni računski uređaji. Osim toga, osoba već dugo koristi pojačala snage (SAD) - koncept koji je u velikoj mjeri analogan AI. Automobili, dizalice, elektromotori, preše, topovi, avioni i još mnogo, puno više služe kao pojačala snage. Glavna razlika između UI i CS-a je prisutnost volje: prvi može imati svoje "želje" i djelovati drugačije od onoga što se od njega očekuje. Stoga se javlja problem sigurnosti AI sustava. Kako izbjeći negativne posljedice koje prate svako novo dostignuće znanstvene i tehnološke revolucije? Ovaj problem opsjeda umove čovječanstva još od vremena Karla Čapeka, koji je prvi upotrijebio pojam "robot". I drugi pisci znanstvene fantastike također su mnogo pridonijeli njegovoj raspravi. Najpoznatija - serija priča pisca znanstvene fantastike i znanstvenika Isaaca Asimova, koji može pronaći najrazrađenije i od većine prihvaćeno rješenje sigurnosnog problema. Govorimo o tri zakona robotike. 1. Robot ne može naštetiti osobi niti svojim nečinjenjem dopustiti da se čovjeku nanese šteta.  - 19 - 2. Robot mora poslušati naredbe koje mu daje čovjek, osim ako su te naredbe u suprotnosti s prvim zakonom. 3. Robot se mora pobrinuti za svoju sigurnost, u mjeri u kojoj to nije u suprotnosti s prvim i drugim zakonom. Nakon toga, Azimov ovom popisu dodaje "Nulti zakon": "Robot ne može nauditi čovječanstvu niti svojim nečinjenjem dopustiti da se nanese šteta čovječanstvu." Na prvi pogled, takvi zakoni, svojim punim poštivanjem, trebali bi osigurati sigurnost čovječanstva. Međutim, nakon detaljnijeg proučavanja, nameću se neka pitanja. Prvo, zakoni su formulirani na ljudski jezik, što ne dopušta njihovo jednostavno prevođenje u algoritamski oblik. Pretpostavimo da je ovaj problem riješen. Sada, što AI sustav znači pod "štetom"? Neće li odlučiti da je samo postojanje čovjeka puka šteta? Uostalom, puši, pije, godinama stari i gubi zdravlje, pati. Ne bi li bilo manje zlo brzo prekinuti ovaj lanac patnje? Naravno, možete uvesti neke dodatke vezane uz vrijednost života, slobodu izražavanja. Ali to više neće biti jednostavna tri zakona koja su bila u originalu. Sljedeće: što će AI sustav odlučiti u situaciji kada je spašavanje jednog života moguće samo na račun drugog? Posebno su zanimljivi oni slučajevi kada sustav nema potpune informacije o tome tko je tko. No, unatoč navedenim problemima, ovi zakoni su prilično dobra neformalna osnova za provjeru pouzdanosti sigurnosnog sustava za AI sustave. Pa zar doista nema pouzdanog sigurnosnog sustava? Na temelju MI koncepta može se predložiti sljedeća opcija. Prema brojnim eksperimentima, unatoč nedostatku pouzdanih podataka o tome za što je odgovoran svaki pojedini neuron u ljudskom mozgu, mnoge emocije obično odgovaraju uzbuđenju skupine neurona (neuralnog ansambla) u potpuno predvidljivom području. Provedeni su i obrnuti eksperimenti, gdje je iritacija određenog područja dala željeni rezultat. To mogu biti emocije radosti, ugnjetavanja, straha, agresivnosti. Stoga se čini mogućim kao ciljnu funkciju uzeti stupanj zadovoljstva ljudskog mozga domaćina. Ako poduzmete mjere za isključivanje samodestruktivnih aktivnosti u stanju depresije, kao i za druge posebni uvjeti psihe, dobivate sljedeće. Budući da se pretpostavlja da normalna osoba neće naštetiti sebi i, bez posebnog razloga, drugima, a IA je sada dio dane individue (ne nužno fizičke zajednice), tada su sva tri zakona robotike automatski ispunjena. Istodobno, sigurnosna pitanja se prebacuju na područje psihologije i provođenja zakona, budući da - 20 - sustav (obučeni) neće učiniti ništa što njegov vlasnik ne bi želio. Pitanja za samoprovjeru 1. Što je umjetna inteligencija? 2. S kojim znanstvenim područjima surađuje umjetna inteligencija? 3. Opišite pristupe razumijevanju predmeta umjetne inteligencije kao znanstvene discipline. 4. Opišite trenutno stanje umjetne inteligencije u Rusiji. 5. Opiši "predračunalnu" fazu razvoja umjetne inteligencije 6. Opiši razvoj umjetne inteligencije 40-ih godina. XX. stoljeće 7. Opišite razvoj umjetne inteligencije 50-ih godina. XX. stoljeće 8. Opišite razvoj umjetne inteligencije 60-ih godina. XX. stoljeće 9. Opišite razvoj umjetne inteligencije 70-ih godina. XX. stoljeće 10. Opišite razvoj umjetne inteligencije 80-ih godina. XX. stoljeće 11. Opišite glavne zadatke umjetne inteligencije. 12. Koji se dijelovi izdvajaju u području umjetne inteligencije? 13. Navedite dokaze o mogućnosti modeliranja ljudskog mišljenja. 14. Što je temelj za prijelaz na problem utjecaja intelektualnih alata na društvo? 15. Što je uzrokovalo i kako se može riješiti problem sigurnosti sustava umjetne inteligencije? Literatura 1. Luger, J., F. Umjetna inteligencija: strategije i metode rješavanja složenih problema: trans. s engleskog / George F. Luger - M .: Izdavačka kuća "Williams", 2003. - 864 str. 2. Osnove umjetne inteligencije / B.V. Kostrov, V.N. Ruchkin, V.A. Fulin. - M .: "DESS", "Techbook", 2007. - 192 str. 3. Stranica Ruske udruge za umjetnu inteligenciju. - Način pristupa: http://www.raai.org/ 4. Sotnik, S.L. Osnove projektiranja sustava umjetne inteligencije: predavanja. - Način pristupa: http://newasp.omskreg.ru/intellect/f25.htm 5. Russell, S. Umjetna inteligencija: moderni pristup / Stuart Russell, Peter Norvig. - M .: Izdavačka kuća"Williams", 2006. - 1408 str. - 21 - POGLAVLJE 2. MODELI PREDSTAVLJANJA ZNANJA 2.1. Znanje Koje su vrste znanja potrebne za pružanje "inteligentnog" ponašanja? "Tajna" fenomenologije modela znanja leži u svijetu oko nas. V opći slučaj model predstavljanja znanja trebao bi dati drugačiji opis objekata i fenomena koji čine predmetno područje u kojem inteligentni agent mora raditi. Predmetno područje je dio stvarnosti povezan s rješavanjem problema. Inteligentni agent - sustav (osoba, program) s intelektualnim sposobnostima. Znanje su identificirani obrasci predmetnog područja (načela, veze, zakonitosti). Znanje ima složeniju strukturu od podataka (metapodataka). U ovom slučaju, znanje se postavlja ekstenzivno (tj. kroz skup specifičnih činjenica koje odgovaraju danom konceptu i koje se odnose na predmetno područje), i intenzivno (tj. kroz svojstva koja odgovaraju danom konceptu i dijagram veza između atributi). Vrste znanja Objekti. Obično osoba prezentira znanje u smislu činjenica o objektima oko sebe. Iz tog razloga moraju postojati načini predstavljanja objekata, klasa (kategorija, tipova) objekata, opisivanje svojstava i interakcija objekata. Jedan od načina za klasifikaciju objekata je kroz hijerarhiju klasa. Osim toga, potrebno je razlikovati apstraktne objekte koji se koriste za označavanje grupa (skupova, klasa) pojedinaca. Primjer "Ptice imaju krila" "Golubovi su ptice" "Snijeg je bijel" "Ova knjiga je nova" - pojedinačni objekt Situacije - sve vrste interakcija između objekata. Primjer “Jučer je padala kiša” “Vlak je kasnio 10 minuta” Primjer klasifikacije situacija koju je predložila Paducheva prikazan je na sl. 9. Osim toga, kako bi se situacije mogle same opisati, model reprezentacije trebao bi omogućiti opisivanje položaja događaja na vremenskoj osi, kao i njihove uzročne veze. Situacije Statička stanja Konstantna svojstva i odnosi Dinamički procesi Stabilni incidenti Privremeni rezultati Događaji Sl. 9. Primjer klasifikacije situacija koju je predložila Padučeva U prikazu hijerarhije objekata i odnosa glavna je poteškoća izbor temelja, odn. svojstva (atribut) po kojima dolazi do podjele. Obično, čak i ako osoba može lako razlikovati različite vrste objekata i situacija u životu, pokušaj verbalne klasifikacije predstavlja veliki problem. Postupci. Ponašanje (npr. vožnja biciklom) zahtijeva znanje koje je izvan deklarativnog znanja o objektima i odnosima između njih. To je znanje o tome kako napraviti ovu ili onu radnju, koje se naziva proceduralno znanje ili iskustvo (vještina). Slično biciklizmu, većina svjesnih ponašanja (npr. komunikacija, razumijevanje ili dokazivanje teorema) uključuje proceduralno znanje i često je teško jasno razlikovati poznavanje postupka od znanja o objektu. Primjer Pojam "pedagogija" - opisuje situaciju nedostatka proceduralnog znanja kod osobe koja se pretvara da je specijalist. Meta-znanje - znanje o znanju: o obimu i porijeklu znanja o određenom objektu, o pouzdanosti određenih informacija , ili o relativnoj važnosti određenih činjenica. Meta-znanje također uključuje - 23 - ono što ljudi znaju o vlastitoj sposobnosti prerađivača znanja: snagu, slabost, razinu iskustva u različitim područjima i osjećaj napretka u rješavanju problema. Klasifikacija znanja Po dubini:  Površno znanje (skup empirijskih asocijacija i uzročno-posljedičnih veza između pojmova predmetnog područja).  Duboko znanje (apstrakcije, slike, analogije, koje odražavaju razumijevanje strukture predmetnog područja i odnosa pojedinih pojmova). Po načinu postojanja:  Činjenice (poznate okolnosti).  Heuristika (znanje iz stručnog iskustva). U pogledu krutosti:  Kruto znanje (omogućuje vam da dobijete nedvosmislene jasne preporuke za zadane početne uvjete).  Meko znanje (omogućuje višestruke, nejasne odluke i različite opcije preporuke). Po oblicima prezentiranja:  Deklarativna znanja (činjenice u obliku skupova strukturiranih podataka).  Proceduralno znanje (algoritmi u obliku postupaka obrade činjenica). Po načinu stjecanja:  Znanstvena znanja (stečena tijekom sustavnog usavršavanja i/ili studija).  Svakodnevno, svakodnevno znanje (stečeno tijekom života). Za postavljanje baze znanja kako bi se ona koristila za rješavanje primijenjenih problema, potrebno ju je formalno opisati matematičkim modelima. Kao što je već spomenuto, predstavljanje znanja moguće je korištenjem deklarativnih i proceduralnih modela. Tipični deklarativni modeli obično uključuju mrežne i okvirne modele; na proceduralne – logičke i proizvodne. Sa stajališta pristupa predstavljanju znanja u računalu, modeli reprezentacije znanja mogu se klasificirati na sljedeći način: Na temelju heurističkog pristupa: „trojka“, proizvodni, okvirni, mrežni model Na temelju teorijskog pristupa: na temelju formalne logike i temeljene na "ljudskoj logici" - modalnoj i dvosmislenoj. - 24 - 2.2. Logički model predstavljanja znanja Osnovni koncepti logike Većina ljudi misli da riječ “logičan” znači “razumno”. Dakle, ako čovjek razmišlja logično, onda je njegovo razmišljanje opravdano, pa ne dopušta ishitrene zaključke. Logika je znanost o oblicima i metodama ispravnog mišljenja. To znači da s obzirom na potrebnu količinu istinitih činjenica, zaključak uvijek mora biti istinit. S druge strane, ako je zaključak nevažeći, to znači da je na temelju istinitih činjenica dobiven lažan zaključak. Potrebno je razdvojiti pojmove formalne logike i neformalne. Posebnost neformalne logike je da se koristi u svakodnevnom životu. Složen logički dokaz je lanac zaključaka u kojem jedan zaključak vodi drugom itd. U formalnoj logici, koja se naziva i simboličkom logikom, važno je kako se izvodi zaključak, kako se uzimaju u obzir drugi čimbenici koji na prihvatljiv način daju dokaz istinitosti ili neistinitosti konačnog zaključka. Logici je također potrebna semantika da bi dala značenje simbolima. Formalna logika koristi semantiku koja se ne temelji na upotrebi riječi koje nose emocionalno opterećenje, već na izboru smislenih imena za varijable, poput programiranja. Poput matematike, logika izravno proučava ne empirijske, već apstraktne objekte. Ovo postavlja pitanje: Kakva je priroda ili ontološki status apstraktnih objekata? O kakvim apstraktnim objektima je riječ? U logici (klasičnoj) razlikuju se dvije temeljne vrste apstraktnih objekata: - pojmovi (svojstva); - odnosima. Koncepti mogu biti jednostavni ili složeni. Komplicirani koncepti su skup relativno jednostavnijih pojmova (jednostavnih svojstava) povezanih jednim ili drugim odnosom. Složeniji apstraktni objekti su sudovi čiji su strukturni elementi također pojmovi i određeni odnosi. Sudovi su pak strukturni elementi rasuđivanja (sustavi sudova), a zaključci su strukturni elementi pojmova i teorija (sustavi rasuđivanja). Na sl. 10 prikazuje hijerarhiju tipova apstraktnih objekata u klasičnoj logici. Specifičnost logike leži u činjenici da proučava najopćenitije, univerzalne odnose ili međusobne veze između apstraktnih objekata. U skladu s tim postoji sljedeća predmetna - 25 - definicija logike: "Logika je znanost o univerzalnim (općevrijednim) odnosima između pojmova, sudova, zaključaka i drugih apstraktnih objekata." Pojmovi i teorije (sustavi zaključivanja) Zaključci (sustav prosudbi) Prosudbe Pojmovi (svojstva) Odnosi Sl. 10. Hijerarhija tipova apstraktnih objekata u klasičnoj logici Primjer "Učenik" je pojam. "Marljivost" je svojstvo. „Vrijedan student“, „student 4. godine“ – odnosi. "Osoba studira na sveučilištu" - presuda. "Ako osoba studira na institutu, onda je ili student ili diplomirani student" - zaključak. "Teorija predikatnog računa prvog reda" je koncept. Pojam Koncepti su bit apstraktnih objekata dostupnih ljudskom razumijevanju kao jednostavnih i složenih svojstava (atributa) empirijskih objekata. Koncept je suprotstavljen entitetima kao što su: "riječ", "percepcija", "empirijski objekt". Koncept je univerzalna jedinica mišljenja i temelj intelektualne aktivnosti. Najvažnije karakteristike pojmovi su sadržaj i opseg. Sve logičke karakteristike i logičke operacije rezultat su izvedenog znanja iz zakona obrnuto proporcionalnog odnosa između sadržaja i opsega pojma. Svaki pojam ima opseg pojma (konceptualni opseg) i dodatak opsegu pojma (sl. 11, 12). Opseg pojma je skup (skup) svih onih empirijskih (pojedinačnih objekata) koji imaju zadani pojam (kao svojstvo, obilježje). - 26 - Dodatak volumenu - ukupnost svih onih empirijskih objekata koji nisu svojstveni ovom konceptu. Koncept X a1 a2 V Volumen a3 Sl. 11. Pojam X, volumen koncepta X, element volumena (a1, a2, a3) X Nije X Sl. 12. Opseg i njegovo dodavanje Primjer koncepta: činjenični model podataka. Opseg koncepta: relacijski, mrežni, hijerarhijski modeli podataka Dodatak opsegu: dokumentarni modeli podataka (deskriptor, tezaurus, modeli podataka orijentirani na format dokumenta) Koncepti mogu biti sljedećih tipova: 1) po volumenu: a. pojedinačni (U = 1 element, Kamaz); b. općenito (U> 1 element, Moskovski automobilski pogon); 2) postojanjem elemenata: a. neprazan (student); b. prazan (kolobok); 3) po strukturi elemenata: a. nekolektivni (Sjeverni pol); b. kolektivni (dužnik); 4) po sadržaju: a. nebitno (publika); b. korelativni (roditelji); 5) po prisutnosti kvaliteta, svojstava, odnosa a. pozitivno (vrlina); b. negativan (uvreda); 6) po kvaliteti elemenata: a. registriran (časopis " Otvoreni sustavi “, 1/2008); b. neregistrirani (inteligencija), apstraktan; 7) po prirodi predmeta: a. beton (ručka); - 27 - b. sažetak (model). Na temelju navedenih tipova moguće je dati logičan opis svakog pojma, odnosno prikazati upotrebu pojma u svih sedam značenja. Primjerice, pojam dužnika je opći, neprazan, zbiran, korelativan, pozitivan, neprijavljen i specifičan. Osnovne metode shvaćanja pojmova Glavne metode shvaćanja pojma uključuju: - apstrakciju; - usporedba; - generalizacija; - analiza; - sinteza. Apstrakcija je mentalno odvajanje (razumijevanje) određenog svojstva ili odnosa apstrakcijom od drugih svojstava ili odnosa empirijskog objekta. Usporedba je utvrđivanje sličnosti ili razlika između objekata. Generalizacija - mentalna izolacija određenog pojma uspoređivanjem bilo kojeg drugog pojma. Apstrakcija, usporedba i generalizacija tehnike su usko povezane jedna s drugom. Mogu se nazvati "kognitivnim postupcima". Usporedba je nemoguća bez obzira na apstrakciju. Generalizacija pretpostavlja usporedbu i istovremeno nije ništa drugo do svojevrsna složena apstrakcija itd. Analiza je mentalna podjela empirijskog ili apstraktnog objekta na njegove sastavne strukturne komponente (dijelove, svojstva, odnose). Sinteza je mentalno sjedinjenje različitih objekata u određeni integralni objekt. Primjeri 1. Usporedba ljudi po visini pretpostavlja apstrakciju kako bi se istaknulo svojstvo “rasta” koncepta “osoba”. 2. Generalizacija: "stolica" i "stol" - "namještaj". Odnos pojmova Da biste objasnili odnos između pojmova, možete koristiti dijagrame u obliku Eulerovih krugova (slika 13). Primjeri Uniforma (jednak volumen): Kazan je glavni grad. Samostalno (raskrižje): putnik - student. Podnošenje: drvo - breza. Suprotnost (kontrast): bijela i crna. - 28 - Konradikacija: bijela - ne bijela. Podređenost (podugovaranje): časnici (bojnik-kapetan). Logička podjela pojma je podjela opsega pojma na dijelove koji se ne sijeku na temelju nekog atributa. Koncepti X, Y Nekompatibilno M (X) M (Y) =  Kompatibilno M (X) M (Y)  Nezavisno proturječno Y = Ne-X X Y X M (X) M (Y); M (X) M (Y) M (X); M (X) M (Y) M (Y) M (X) M (Y) = U suprotan identitet (jednolik) X, YXYM (X) = M (Y) M (X) M (Y) UX slave na YXYM (X) M (Y) = M (X) Sl. 13. Korelacija pojmova U ovom slučaju postoje: - generički pojam X; - članovi odjela (koncepti vrsta A i B); - baza podjela (tj. znak). - 29 - Tri pravila logičke podjele. 1. Pravilo nespojivosti. Opseg pojmova vrsta ne bi se trebao preklapati (tj. članovi odjela ne bi trebali biti međusobno nekompatibilni); 2. Pravilo dosljednosti. Ne možete dijeliti po nekoliko osnova odjednom; 3. Pravilo proporcionalnosti. Zbroj obujma specifičnih pojmova mora biti jednak volumenu generičkog pojma. Dihotomna podjela (najstroži tip) - podjela pojmova prema principu kontradiktornosti (A, ne-A). Klasifikacije su određeni sustavi (uređeni agregati) pojmova vrsta. Klasifikacije se koriste za pronalaženje novih odnosa između pojmova, kao i za sistematizaciju postojećih znanja. Primjer 1. Periodni sustav je primjer znanstvene klasifikacije kemijskih elemenata. 2. Primjer klasifikacije informacijskih sustava (IS) prikazan je na donjoj slici. Osnove podjela: funkcionalna namjena. A, B, C su primjeri informacijskih sustava prema ovoj klasifikaciji. IS Faktografski sustavi Sustavi umjetne inteligencije Sustavi dokumenata IS "Sveučilište" Lingvo "Konsultant Plus" A V S Sl. 14. Primjer klasifikacije Tehnike shvaćanja pojmova (apstrakcija, usporedba, generalizacija, analiza, sinteza, podjela) su univerzalni i temeljni kognitivni postupci koji još nisu naučili uspješno modelirati u okviru umjetne inteligencije. Ovo je jedan od temeljnih dijelova klasične logike koji bi trebao biti integriran u teoriju baze znanja. Nakon toga će postati dostupni zadaci modeliranja takvih mentalnih radnji kao što su hipoteze, poučavanje deklarativnog znanja, postupci zaključivanja postat će opsežniji. - 30 - Presuda Presuda je strukturno složen objekt koji odražava objektivni odnos između predmeta i njegovog svojstva. Takvi entiteti kao što su "prijedlog", "percepcija", "prizori iz stvarnog svijeta" suprotstavljeni su prosudbi. Primjer. Sljedeće rečenice izražavaju isti sud: - "Morski pas je riba grabežljiva"; - "Svi morski psi su ribe grabežljivci." "Morski psi su grabežljive ribe." Klasična logika strukturu jednostavnog suda razmatra u nešto drugačijem tumačenju nego što je prihvaćeno u modernim logikolingvističkim studijama. Dakle, u skladu s konceptima klasične logike o strukturi suda, jednostavan sud je apstraktni objekt čiji su glavni strukturni elementi: - pojedinačni koncept (IC); - predikatski koncept (PC); - predikacijski odnos (RP). Primjeri Navedena je rečenica: "Platon je filozof." U ovoj rečenici, izražavajući sud S: "Platon" je logički subjekt, tj. simbol koji označava pojedinačni koncept suda S. "Filozof" je logički predikat, tj. simbol koji označava predikatski koncept suda S. “Biti” je veza subjekt-predikat, t.j. simbol koji označava predikacijski odnos. Dakle, može se izvući sljedeći međuzaključak: - pojedinačni koncept je sustav pojmova koji se razmatraju kao konceptualni entitet, neki empirijski objekt; - predikatski koncept - pojam koji se smatra svojstvom određenog empirijskog objekta; - odnos predikacije - odnos koji povezuje pojedinačne i predikatske pojmove nekog empirijskog objekta u holistički apstraktni objekt. Osim toga, može se razlikovati nekoliko vrsta jednostavnih sudova (vidi sliku 15). Postoji nekoliko načina za formaliziranje elementarnih presuda. - 31 - 1. metoda. Prirodni jezik, koji se tradicionalno smatra nezgrapnim i nepreciznim, ali još nije izumljena formalna metoda koja bi se po svojoj svestranosti mogla usporediti s prirodnim jezikom. Jednostavne prosudbe Atributi O odnosima Postojanje Redovnici su u pravilu skromni Magnitogorsk južno od Čeljabinska Postoje plave smreke Sl. 15. Vrste jednostavnih presuda 2. način. Tradicionalna aristotelova logika. 3. način. Suvremena simbolička logika. Glavne vrste složenih sudova Osim sudova izraženih u aristotelovoj logici iskazima oblika A, E, I, O (vidi str. Aristotelova logika), postoje i razne vrste složenih sudova. Što je sud složeniji, to ga je teže točno formalizirati pomoću tradicionalne aristotelovske logike, au nekim slučajevima takva je formalizacija jednostavno nemoguća. Stoga je preporučljivo analizirati logičku strukturu složenih sudova pomoću suvremene simboličke logike, uključujući pomoću logike propozicije i logike predikata (vidi odgovarajuće odlomke paragrafa). Glavne vrste složenih sudova su - konjunktivni; - disjunktivni; - implikacijski; - modalni: o aletički (nužan, možda slučajno); o epistemički (znam, vjerujem, vjerujem, vjerujem); o deontički (odlučeno, zabranjeno); o aksiološki (dobro, loše); o vremenski (u prošlosti, ranije, jučer, sutra, u budućnosti); - pitanja: o da li - pitanja; o koja su pitanja. Također postoji kontinuitet logičkih klasa i metoda umjetne inteligencije. - 32 - Zaključak Pod zaključivanjem (u tradicionalnoj logici) podrazumijeva se oblik mišljenja kroz koji se provodi mentalni prijelaz (nazvan "zaključak") s jednog ili više sudova (koji se nazivaju "premise") na neki drugi sud (koji se naziva "zaključak"). ") ... Dakle, zaključak je složen apstraktni objekt u kojem se uz pomoć određenih odnosa jedan ili više sudova spajaju u jedinstvenu cjelinu. Za označavanje zaključivanja u logici koristi se izraz silogizam. Silogizmi su formalni i neformalni. Prve formalne silogizme koristio je Aristotel. Silogistika koju je razvio (teorija formalnih silogizama, tj. zaključaka) imala je značajan utjecaj na razvoj antičke i skolastičke logike, poslužila je kao temelj za stvaranje moderne logičke teorije zaključivanja. Da biste konsolidirali pojmove logike, morate ispuniti vježbe na stranici 78. Zakoni logike Najvažniji logički zakoni uključuju: - identitete (svaki objekt je identičan samo sebi); - nema proturječnosti (tvrdnje koje su međusobno kontradiktorne ne mogu biti istinite u isto vrijeme); - isključena treća (od dvije tvrdnje koje su međusobno kontradiktorne, jedna je istinita, druga je lažna, a treća nije data); - dovoljan razlog (svaka istinita izjava ima dovoljan razlog, na temelju kojega je istinita, a ne lažna). Razmotrimo detaljnije svaki od navedenih položaja. I. Zakon identiteta Zakon identiteta dokazuje da je svaka misao identična samoj sebi, “A je A” (A → A), gdje je A bilo koja misao. Na primjer: "Kuhinjska sol NaCl sastoji se od Na i Cl". Kršenja ovog zakona mogu rezultirati dolje navedenim pogreškama. Amfibol (od grč. amphibolos - dvosmislenost, dvojnost) je logička pogreška koja se temelji na višeznačnosti jezičnih izraza. Drugi naziv za ovu pogrešku je "zamjena teze". Primjer “Točno kažu da će vas jezik dovesti u Kijev. I jučer sam kupio dimljeni jezik. Sada mogu sigurno ići u Kijev." - 33 - Dvosmislenost je logička pogreška koja se temelji na korištenju iste riječi u različitim značenjima. Dvosmislenost se često koristi kao umjetničko retoričko sredstvo. U logici se ova tehnika također naziva "zamjena koncepta". Primjer “Stari morski vuk je stvarno vuk. Svi vukovi žive u šumi." Pogreška je ovdje zbog činjenice da se u prvoj presudi riječ "vuk" koristi kao metafora, au drugoj premisi - u izravnom značenju. Logomahija je spor oko riječi, do kojeg tijekom rasprave sudionici ne mogu doći jedna točka gledište zbog činjenice da nisu razjasnili početne pojmove. Dakle, zakon identiteta izražava jedan od najvažnijih zahtjeva logičkog mišljenja – izvjesnost. II. Zakon neprotuslovnosti Ovaj zakon izražava zahtjev za dosljednošću mišljenja. Zakon bez proturječja kaže: dva suda, od kojih jedan iznosi nešto o subjektu mišljenja ("A je B"), a drugi poriče istu stvar o istom predmetu mišljenja ("A nije B"), ne može biti istodobno istinit, ako se u isto vrijeme atribut B potvrđuje ili negira o subjektu mišljenja A, razmatranom u isto vrijeme iu istom pogledu. Na primjer, presude “Kama je pritok Volge” i “Kama nije pritoka Volge” ne mogu biti istodobno istinite ako se te presude odnose na istu rijeku. Neće biti proturječnosti ako o istoj osobi nešto potvrđujemo i poričemo, što se, međutim, razmatra u različito vrijeme. Dakle, presude "Ova osoba je student Moskovskog državnog sveučilišta" i "Ova osoba nije student Moskovskog državnog sveučilišta" mogu istovremeno biti istinite ako prva od njih znači jedno vrijeme (kada ta osoba studira na Moskovsko državno sveučilište), au drugom - još jedan (kada je diplomirao na sveučilištu). Zakon nekontradikcije ukazuje da je od dvije suprotstavljene tvrdnje jedna nužno lažna. Ali budući da se odnosi i na suprotne i na kontradiktorne sudove, pitanje druge presude ostaje otvoreno: ne može biti i istinito i lažno: papir ne može biti bijel i nebijel. III. Zakon o isključenom trećem Zakon o isključenom trećem kaže da dvije sukobljene presude ne mogu biti istovremeno lažne: jedna od njih je nužno istinita; drugi je nužno lažan; treća presuda je isključena, t.j. ili je A istinito ili nije-A. - 34 - Zakon isključene trećine formulira važan zahtjev za vaše razmišljanje: ne možete odstupiti od prepoznavanja istinite jedne od dvije sukobljene tvrdnje i tražiti nešto treće između njih. Ako je jedan od njih prepoznat kao istinit, onda se drugi mora prepoznati kao lažan i ne tražiti treći. Primjer: životinje mogu biti ili kralježnjaci ili beskralježnjaci, ne može biti ništa treće. IV. Zakon dovoljnog razloga Sadržaj ovog zakona može se izraziti na sljedeći način: da bi se smatrala potpuno pouzdanom, svaka odredba mora biti dokazana, t.j. moraju biti poznati dovoljni razlozi na temelju kojih se vjeruje da je istinita. Dovoljan razlog može biti druga, već dokazana praksa, priznata kao istinita misao, čiji je nužni rezultat istinitost stava koji se dokazuje. Primjer. Obrazloženje za presudu “Soba je postala toplija” je činjenica da se živa termometra proširila. U znanosti se dovoljnim osnovama smatraju: a) odredbe o potvrđenim činjenicama stvarnosti, b) znanstvene definicije, c) prethodno dokazane znanstvene odredbe, d) aksiomi, kao i e) osobno iskustvo. Zaključak Zaključivanje je izvođenje određene formule na temelju mnogih drugih logičkih formula primjenom pravila zaključivanja. Tumač logičkih izraza, koristeći logičko zaključivanje, on sam gradi potrebni lanac izračuna na temelju početnog opisa. Vrijednost logičkog pristupa leži u mogućnosti konstruiranja interpretatora čiji rad ne ovisi o logičkim formulama. Pravila u logičko predstavljanje imaju oblik: P0 ← P1,…, Pn. R0 se zove cilj, a R1, R2, ..., Rn - tijelo pravila. Predikati P1, P2, ..., Pn su uvjeti koji moraju biti ispunjeni da bi se cilj P0 uspješno postigao. Analizirajmo osnove logičkog zaključivanja na primjeru izvođenja postupka utvrđivanja ispravnosti zaključivanja. Definicija logički ispravnog zaključivanja Kada kažemo da jedna rečenica D logički slijedi iz druge P, mislimo na sljedeće: kad god je rečenica P istinita, onda je istinita i rečenica D. U propozicijskoj logici imamo posla s formulama P i D, ovisno o nekim varijablama X1, X2, .., Xn. Definicija. Reći ćemo da formula D (X1, X2, ..., Xn) logično slijedi iz formule P (X1, X2, ..., Xn) i označit ćemo Pà D ako za - 35 - bilo koji skup vrijednosti ​​X1, X2 , ..., Xn pod uvjetom P (X1, X2, ..., Xn) = I2, uvjet D (X1, X2, ..., Xn) = I. Formula P se naziva premisa, a D je zaključak logičkog zaključivanja... Obično logičko razmišljanje ne koristi jednu premisu P, već nekoliko; u ovom slučaju će obrazloženje biti logički ispravno iz spoja premisa zaključak logično slijedi. Provjera ispravnosti logičkog zaključivanja Prvi način je po definiciji: a) zapisati sve premise i zaključke u obliku formula logike iskaza; b) sastaviti konjunkciju od formaliziranih premisa P1 & P2 & ... & Pn ,; c) provjeriti prema tablici istinitosti da li zaključak D slijedi iz formule P1 & P2 & ... & Pn. Druga metoda temelji se na sljedećem znaku logičke posljedice: "Formula D logički slijedi iz formule P ako i samo ako je formula P | - D tautologija." Tada se provjera ispravnosti logičkog zaključivanja svodi na odgovor na pitanje: je li formula tautologija? Na ovo se pitanje može odgovoriti konstruiranjem tablice istinitosti za formulu ili smanjenjem ove formule korištenjem ekvivalentnih transformacija na dobro poznatu tautologiju. Treći način provjere ispravnosti logičkog zaključivanja nazvat ćemo skraćeno, budući da ne zahtijeva puno nabrajanje vrijednosti varijabli za izradu tablice istinitosti. Kako bismo potkrijepili ovu metodu, formulirajmo uvjet pod kojim je logično razmišljanje netočno. Obrazloženje je pogrešno ako postoji skup vrijednosti za varijable X01, X02, .., X0n tako da je premisa D (X01, X02, .., X0n) = L 3, a zaključak P (X01, X02, .., X0n) = I. Primjer. Dato je obrazloženje: „Ako pada kiša, onda je mačka u sobi ili u podrumu. Miš je u sobi ili u jazbini. Ako je mačka u podrumu, onda je miš u sobi. Ako je mačka u sobi, onda je miš u minku, a sir je u hladnjaku. Sad pada kiša i sir je na stolu. Gdje je mačka, a gdje miš?" Uvedimo sljedeće oznake: D - "kiša pada"; K - "mačka u sobi"; R - "mačka u podrumu"; M - "miš u sobi"; H - "miš u minku"; X - "" sir u hladnjaku "; ¬X -" sir na stolu. "Dobijamo sljedeću shemu razmišljanja: D → K | RM | NK → H & X 2 3 Točno Netočno - 36 - R → MD & ¬X --- -? Koristimo se pravilima zaključivanja 1) D & ¬XÜD; 2) D & ¬XܬX; 3) D → K | P, DÜ K | P. Zatim razmotrite dvije opcije: opcija A. Neka K. 4a) K, K → H & X, Kà H & X; 5a) H & X à X; 6a) ¬X, XÃX & ¬X - dobili smo kontradikciju, što znači da je pretpostavka bila pogrešna i ova opcija je nemoguća. Tada 4b) R, R → MÜM; 5b) R, MÜR & M Zaključak je R & M, tj. "mačka je u podrumu, a miš je u sobi" Primjer Provjerite ispravnost obrazloženja na skraćeni način. ? Dano je obrazloženje: "Ako je danas mraz, onda ću ići na klizalište. Ako je danas otopljenje, onda ja ići će u disko. Danas će biti mraza ili odmrzavanja. Stoga ću ići u disko." M - "danas će biti mraza"; K - "Ići ću na klizalište"; O - "danas doći će do odmrzavanja"; D - "Hoću Idem u diskoteku." Shema zaključivanja ima oblik: M → KO → DM | O --- D Rezoniranje je logično ispravno ako za bilo koji skup vrijednosti varijabli (M, K, O, D), čiji su dani svi premise su istinite, istinit je i zaključak. Pretpostavimo suprotno: postoji zbirka (M0, K0, O0.A0) takva da su premise istinite, ali je zaključak lažan. Koristeći definicije logičkih operacija, pokušat ćemo pronaći ovaj skup. Uvjereni smo da pretpostavka vrijedi za vrijednosti varijabli - 37 - M0 = I, K0 = I, O0 = L, D0 = L (tablica 1). Stoga obrazloženje nije logično ispravno. Tablica 1. Shema za rješavanje logičkog problema br. 1 2 3 4 5 6 7 Točno M0 → K0 O0 → A0 M0 ˅ O0 M0 K0 Netočno Napomene pretpostavljamo da su premise istinite, A0 O0 i zaključak je netočan iz 2.4 i definicije implikacije iz 3, 5 i definiranje disjunkcije od 1, 6 i definiranje implikacije Drugi način rješavanja problema: izgraditi tablicu istinitosti za formulu (M → K) & (O → D) & (M˅O) → D i uvjerite se da nije tautologija. Zatim, na temelju logičke posljedice, obrazloženje nije logički ispravno. Budući da su u obrazloženje uključene četiri varijable izraza (M, K, O, D), tablica istinitosti će sadržavati 16 redaka, a ova metoda je naporna. Uz pomoć pravila zaključivanja moguće je konstruirati logički ispravno zaključivanje, ali nije uvijek moguće dokazati neispravnost logičkog zaključivanja. Stoga je za ovaj zadatak najpogodniji skraćeni način provjere ispravnosti logičkog zaključivanja. Za konsolidaciju pravila zaključivanja potrebno je dovršiti vježbe na stranici 78. Glavni dijelovi moderne simboličke logike U razvoju klasične logike postoje tri glavne faze: antička logika (oko 500. pr. Kr. – rano n.e.), skolastička logika (početak naše ere - prva polovica XIX stoljeća), moderna simbolička logika (sredina XIX-XX stoljeća) Moderna simbolička logika podijeljena je na glavne dijelove, čija je bit razotkrivena u nastavku. Propozicijska logika (propozicijski račun). Proučava jednostavne prosudbe, razmatrane bez uzimanja u obzir njihovu unutarnju strukturu, kao i elementarne zaključke koji su najpristupačniji ljudskom razumijevanju. U prirodnom jeziku, takvi jednostavni sudovi predstavljaju rečenice koje se razmatraju samo sa stajališta njihove istinitosti ili neistinitosti, a zaključci - odgovarajućim sustavima iskaza. - 38 - Predikatska logika (predikatski račun). Složeniji objekti istraživanja su prosudbe koje se razmatraju uzimajući u obzir njihovu unutarnju strukturu. Dio logike, u kojem se ne proučavaju samo veze između sudova, već i unutarnja konceptualna struktura sudova, naziva se "predikatska logika". Metalogic. Metalogika je proširenje predikatske logike. Predmet njezina proučavanja je cjelokupna sfera odnosa u cjelini, svi oni univerzalni odnosi koji se mogu odvijati između pojmova, sudova, zaključaka, kao i simbola koji ih označavaju. Sljedeći odlomci stavka predstavljaju ključne pozicije propozicijske logike i predikata prvog reda. Za bolje razumijevanje suvremene logike potrebno je razmotriti osnovne odredbe određene silogizmima Aristotela. Aristotelova logika U Aristotelovoj logici struktura elementarnih sudova izražena je strukturama: - S je P (1); - S nije P (2), gdje je S neki logički subjekt (od lat. Subjectum); P - neki logički predikat (od latinskog Predicatum). Dolje su navedene vrste sudova Aristotelove logike. 1. Općenito afirmativni sudovi - A "Sve S je P" - Svi pjesnici su dojmljivi ljudi. Riječi "jest", "nije" igraju ulogu subjekt-predikatske veze. Od iskaza (1) i (2) uz pomoć riječi “svi” i “neki” konstruiraju se iskazi oblika: - sve S je P: Tip A (Affirmo); - neki S su P: Tip I (AffIrmo); - svi S nisu P: Tip N (Nego); - neki S nisu P: Tip O (NegO). 2. Opći negativni sudovi - E (N) "Nijedan S nije P" - Nijedna osoba nije sveznajuća. 3. Djelomično potvrdno - I "Neki S su P" - Neki ljudi imaju kovrčavu kosu. 4. Djelomična negativna prosudba – o “Neki S nisu Ps” – Neki ljudi ne znaju slušati. Izjave poput A, E, I, O jednostavne su kategoričke izjave koje čine temelj cijele Aristotelovske logike. Između istinitosti i netočnosti iskaza tipa A, E, I, O postoji funkcionalno-integralni odnos, koji se obično prikazuje u obliku logičkog kvadrata (Sl. 16, Tablica 2). - 39 - Prilikom korištenja logičkog kvadrata, važno je uzeti u obzir sljedeću suptilnost: riječ "neki" razumijeva se u širem smislu - kao "neki, a možda i svi". Tablica 2. Tablica istine za sudove Aristotelove logike 16. Logički kvadrat Objašnjenja Aristotelova logičkog kvadrata U lijevoj gornji kut logički kvadrat sadrži izjave tipa A (općenito afirmativne). U gornjem desnom kutu - izjave tipa E (općenito negativne). U donjem lijevom kutu (pod A) - izjave tipa I (djelomično potvrdne). U donjem desnom kutu (pod E) - iskazi tipa O (djelomično negativni). Izjave tipa A i O, kao i iskazi tipova E i I, u odnosu su na kontradiktornost, odnosno proturječnost (dijagonalni odnosi). Izjave tipa A i E u odnosu su na suprotnost ili suprotnost. - 40 - Izjave tipa I su podređene (dakle, impliciraju) izjave tipa A. Izjave tipa O podređene su izjavama tipa E. Dok kontradiktorne izjave imaju suprotne vrijednosti istinitosti (jedna je istinita, druga je lažna) , kontradiktorne tvrdnje ne mogu biti istinite u isto vrijeme, ali mogu biti i lažne u isto vrijeme. Uz pomoć logičkog kvadrata možete zaključiti suprotne, proturječne i podređene sudove, utvrđujući njihovu istinitost ili laž. Primjer 1. Bilo koji sud izražen je u rečenici A → 1. 2. Nijedan sud nije izražen u rečenici E → 0. 3. Neki sudovi nisu izraženi u rečenici O → 0. 4. Neki su sudovi izraženi u rečenici I → 1. Osim toga, koristeći Aristotelov logički kvadrat, to je moguće utvrditi vrste odnosa među prosudbama: 1) stjecanje znanja zaključivanja; 2) usporedbe različite točke pogled na diskutabilna pitanja; 3) uređivanje tekstova iu drugim slučajevima. Formalizmi propozicionog računa Mnogi modeli predstavljanja znanja temelje se na formalizmima propozicionalnog i predikatskog računa. Strogi prikaz ovih teorija sa stajališta klasične matematičke logike sadržan je u djelima Schenfielda i Tiesea, a kod Pospelova se može naći popularan prikaz ovih teorija, koji se može preporučiti kao početni uvod. Prema Teyseu, logički prijedlozi su klasa rečenica prirodnog jezika koje mogu biti istinite ili netočne, a propozicijski račun je grana logike koja proučava takve rečenice. Postavlja se prirodno pitanje: Što je s rečenicama jezika, o čijoj se istinitosti ne može reći ništa određeno? Primjer. – Ako sutra padne kiša, ostat ću kod kuće. Za sada samo pretpostavimo da sve rečenice s kojima imamo posla pripadaju klasi logičkih iskaza. Izjave će biti označene velikim slovima latinično pismo i indeks, ako to zahtijeva prezentacija. Uzorci zapisivanja iskaza: S, S1, S2, H, H1, H2. Kao što je navedeno, logična izjava je ili istinita ili lažna. Točnoj izjavi dodjeljuje se logička vrijednost - 41 - TRUE (ili AND), false - logička vrijednost FALSE (ili L). Dakle, vrijednost istine tvori skup (I, L). U propozicijski se račun uvodi pet logičkih veziva (tablica 3.) uz pomoć kojih se, u skladu s pravilima građenja, izrađuju logičke formule. Tablica 3 Logički spojevi Uobičajeni naziv Vrsta Druga notacija Negacija Unarni -, ~, NOT, NOT  Konjunkcija ^ Binarno &,., AND, AND * Disjunkcija  Binarno ILI ILI Implikacija  Binarno => -> Ekvivalentnost  Binarno<=> <->~ * Napomena: ne smije se miješati s istinitošću vrijednosti I. Skup pravila za konstruiranje logičkih formula na temelju iskaza uključuje tri komponente: - osnovu: svaka izjava je formula; - korak indukcije: ako su X i Y formule, tada su X, (X ^ Y), (X  Y), X Y i X  Y formule; - ograničenje: formula je jedinstveno dobivena korištenjem pravila opisanih u bazi i koraku indukcije. Formule su označene velikim slovima latinične abecede s indeksima. Primjeri logičkih formula prikazani su u primjeru. Primjeri a) T = S1 ^ S2; b) N = H1H2. Izraz a) može se čitati na sljedeći način: "Logička formula T je konjunkcija (logička konekcija And) logičkih iskaza S1 i S2". Interpretacija izraza b) je sljedeća: "Logička formula N je disjunkcija (logička veziva ILI) negacije (NE) logičkog iskaza H1 i logičkog iskaza H2". Istinitost logičke formule funkcija je vrijednosti istinitosti njezinih sastavnih iskaza i može se nedvosmisleno odrediti pomoću tablica istinitosti. Ispod su tablice istinitosti za negaciju i binarne veznike (tablice 4, 5) Dakle, ako su poznate vrijednosti istinitosti za tvrdnje iz primjera a), na primjer S1 = I, S2 = L, tada je istinita vrijednost za formula - 42 - T se može naći na sjecištu drugog retka i trećeg stupca u tablici 5, odnosno T = L. Tablica 4. Tablica istinitosti za negaciju ¬X I L L I Tablica 5. Tablica istinitosti za binarne veznike XYX ^ YX YXYXY I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I? ... Svaka logika je formalni sustav za koji se mora definirati: - abeceda sustava - prebrojiv skup simbola; - formule sustava - podskup svih riječi koji se mogu formirati od simbola uključenih u abecedu (obično se postavlja postupak koji vam omogućuje sastavljanje formula od simbola abecede sustava); - aksiomi sustava - odabrani skup formula sustava; - pravila za zaključivanje sustava - konačan skup odnosa između formula sustava. Rječnik predikatskog računa u standardnom prikazu uključuje sljedeće pojmove: - varijable (označit ćemo ih posljednja slova engleska abeceda u, v, x, y, z); - konstante (označit ćemo ih prvim slovima engleske abecede a, b, c, d): o pojedinačne konstante; o funkcionalne konstante; o predikatske konstante; - izjave; - 43 - - logički veznici (¬ (negacija), konjunkcija, disjunkcija, implikacija); - kvantifikatori: (egzistencija, univerzalnost); - Pojmovi; - funkcionalni oblici; - predikatski oblici; - atomi; - formule. Pojedinačne konstante i pojedinačne varijable Slične su konstantama i varijablama iz matematičke analize, s jedinom razlikom što su područje njihove promjene pojedinci, a ne realni brojevi. U teoriji umjetne inteligencije, imenovane konstante i varijable u memoriji agenta koje odgovaraju objektima i konceptima u stvarnom svijetu obično se nazivaju konceptima. U jezicima prvog reda postoje samo pojedinačne varijable, pa se jednostavno nazivaju varijable. Kao što će biti pokazano u nastavku, upotreba jezika prvog reda i odbijanje upotrebe jezika višeg reda nameće dodatna ograničenja na klasu rečenica prirodnog jezika koja se razmatra. Pojedinačne konstante bit će označene malim slovima a, b, c, u, v, w latinice s indeksima ili mnemoničkim nazivima preuzetim iz teksta. Za označavanje varijabli koristit će se mala slova slova x, y, z , latinično pismo s indeksima. Primjer. Pojedinačne konstante: a1, b1, c, u, v1, seller_w, k22, buy_l, m10, book_a1. Varijable: x, y2, z33. Konstante predikata Konstante predikata koriste se za označavanje odnosa koji predikat opisuje. Konstanta predikata ne mijenja svoju istinitost. Povezan je s odgovarajućim brojem argumenata ili parametara koji se nazivaju pojmovi, tvoreći predikatski oblik. Oznaka predikatske konstante je mnemonička imena ili slovo latinice P s indeksima. Jezik predikata sadrži jezik iskaza, budući da izjava nije ništa više od predikatne konstante bez argumenata ili predikatnog oblika s nultim mjestom. Semantičko područje predikatskog oblika podudara se s područjem promjene iskaza, tj. (I, L). Funkcionalne konstante Funkcionalna konstanta (f, g, h) kao i predikat konstanta, kada se kombiniraju s odgovarajućim brojem pojmova, tvore funkcionalni oblik. Razlika između funkcionalnog oblika i predikatnog oblika je u tome što - 44 - njegovu semantičku domenu čini skup pojedinačnih konstanti. Nul-arna funkcionalna konstanta jednostavno je individualna konstanta. logički veznici u predikatskom računu služe za tvorbu formula. Kvantifikatori. U predikatskom računu koriste se dva kvantifikatora: kvantifikator općenitosti () i kvantifikator postojanja (). Izraz xP glasi kao "za svaki x P je istinit." Izraz xP glasi “postoji takav x za koji je P istinito”. Pojam je izraz formiran od varijabli i konstanti, moguće pomoću funkcija. Pojmovi, oblici, atomi i formule u predikatskom računu konstruirani su prema sljedećim pravilima: - svaka varijabla ili konstanta je pojam; - ako su t1, ..., tn termini, a f je n-arni funkcionalni simbol, tada je f (t1, ..., tn) pojam; - nema drugih pojmova. Zapravo, svi objekti u logici predikata prvog reda predstavljeni su upravo u obliku pojmova. Ako pojam ne sadrži varijable, onda se naziva osnovnim ili konstantnim pojmom. Pojam (t1, t2 ... tn) je bilo koja varijabla i bilo koji funkcionalni oblik. Funkcionalni oblik je funkcionalna konstanta uparena s odgovarajućim brojem pojmova. Ako je f funkcionalna lokalna konstanta i t1 ..., tn su članovi, tada se odgovarajući oblik obično označava s f (t1, ..., tn). Ako je n = 0, tada je napisano samo f. Predikatski oblik je predikatska konstanta povezana s odgovarajućim brojem pojmova. Ako je p odgovarajuća m -arna konstanta i t1,. .., tn su pojmovi, tada se odgovarajući oblik označava s p (t1, ..., tm). Atom je predikatski oblik ili neka jednakost, t.j. izraz tipa (s = t), gdje su s i t pojmovi. Atomska ili elementarna formula dobiva se primjenom predikata na pojmove, točnije, to je izraz p (t1, ..., tn), gdje je p n-arni predikatski simbol (formula), a t1, .. ., tn su pojmovi. Pojam formule definira se rekurzivno (induktivno) sljedećim pravilima: - atom je formula; - ako je A formula, A je formula; - ako su A i B formule, tada su (A ^ B), (A  B), (A  B) i (A  B) formule; - ako je A formula, a x varijabla, tada su xA i xA formule. Predstavimo abecedu predikatske logike u terminima pojmova. Konstante. Oni služe kao nazivi za pojedince (za razliku od naziva za agregate): objekte, ljude ili događaje. Konstante su predstavljene - 45 - simbolima poput Jacques_2 (Dodatak 2 riječi Jacques označava vrlo specifičnu osobu među ljudima s tim imenom), Book_22, Slanje_8. Varijable. Navedite nazive agregata, kao što su osoba, knjiga, paket, događaj. Simbol Book_22 predstavlja dobro definiranu instancu, a simbol knjige označava ili skup "svih knjiga" ili "koncept knjige". Simboli x, y, z predstavljaju nazive zbirki (specifičnih skupova ili koncepata). Imena predikata (konstante predikata). Oni definiraju pravila za spajanje konstanti i varijabli, na primjer, gramatička pravila, procedure, matematičke operacije. Za predikativna imena koriste se simboli poput sljedećih fraza: Pošalji, Napiši, Plus, Podijeli. Funkcionalna imena (konstante funkcije) predstavljaju ista pravila kao i predikati. Kako se ne bi zamijenili s imenima predikata, funkcionalna imena pišu se malim slovima: fraza, pošalji, napiši, plus, podijeli. Simboli koji se koriste za predstavljanje konstanti, varijabli, predikata i funkcija nisu "ruske riječi". Oni su simboli neke reprezentacije - riječi "jezika objekata" (u našem slučaju, jezika predikata). Prezentacija mora isključiti svaku dvosmislenost jezika. Stoga imena pojedinaca sadrže brojeve pripisane imenima agregata. Jacques_1 i Jacques_2 predstavljaju dvije osobe s istim imenom. Ti su prikazi bit konkretizacije naziva zbirke "Jacques". Predikat je ime predikata zajedno s odgovarajućim brojem pojmova. Predikat se također naziva predikatski oblik. Primjer. Na ruskom: Jacques šalje knjigu Marie, logično: Slanje (Jacques_2, Mari_4, Book_22). Izgled nejasne logike nejasne logike, teorija neizrazitih skupova i druge "nerazgovetne" teorije povezuje se s radom američkog znanstvenika Zadeha. Zadeova glavna ideja bila je da se ljudski način razmišljanja, utemeljen na prirodnom jeziku, ne može opisati u okviru tradicionalnih matematičkih formalizama. Ove formalizme karakterizira strogo jednoznačno tumačenje, a sve što je povezano s uporabom prirodnog jezika ima višeznačno tumačenje. Zadeov cilj bio je izgraditi novu matematičku disciplinu koja se ne temelji na klasičnoj teoriji skupova, već na teoriji neizrazitih skupova. Dosljedno slijedeći ideju fuzzinessa, prema Zadehu, moguće je izgraditi nejasne analogije svih osnovnih matematičkih koncepata i stvoriti neophodan formalni aparat za modeliranje ljudskog razmišljanja i ljudskog načina rješavanja problema (Sl. 17). - 46 - Stvaranje teorije neizrazitih skupova - Rješenje Matematička teorija neizrazitih skupova - Osnova mehanizma Formalizacija rasuđivanja ljudskog načina - Zadatak Teza - osoba u svom svakodnevnom životu - Problem razmišlja i donosi odluke o osnova neizrazitih koncepata Sl. 17. Logika nastanka teorije neizrazitih skupova Trenutno je teorija neizrazitih skupova i neizrazita logika (fuzzy set & fuzzy logic) jako mjesto među vodećim područjima umjetne inteligencije. Koncept "fuzzinessa", primijenjen u početku na skupove, a zatim u logici, uspješno je proširen na druga područja matematike i računarstva i sada već postoji: - teorija neizrazitih odnosa; - teorija neizrazitih skupova; - teorija neizrazitih mjera i integrala; - teorija neizrazitih brojeva i jednadžbi: - teorija neizrazite logike i aproksimativno zaključivanje: - teorija neizrazitih jezika; - teorija neizrazitih algoritama; - teorija neizrazitih modela optimizacije i donošenja odluka. Sljedeći paketi su najpopularniji među ruskim kupcima: 1) CubiCalc 2.0 RTC - jedan od najmoćnijih komercijalnih ekspertnih sustava koji se temelji na neizrazitoj logici, koji vam omogućuje stvaranje vlastitih primijenjenih ekspertnih sustava; 2) CubiQuick - akademska verzija CubiCalc paketa; 3) RuleMaker - program automatsko izvlačenje nejasna pravila iz ulaznih podataka; 4) FuziCalc - proračunska tablica s nejasnim poljima, što vam omogućuje da napravite brze procjene s netočno poznatim podacima bez nakupljanja pogrešaka; 5) OWL - paket koji sadrži izvorne tekstove svih poznatih tipova neuronskih mreža, nejasnu asocijativnu memoriju itd. Glavni "potrošači" nejasne logike na ruskom tržištu su: bankari, financijeri i stručnjaci iz područja političke i ekonomske analize. - 47 - Većina ljudskih zadataka ne zahtijeva visoku preciznost. Često je potrebno pronaći razuman kompromis između pojmova "točnosti" i "važnosti" kada se komunicira sa stvarnim svijetom. Na primjer: da bi donijela odluku da prijeđe ulicu, osoba ne procjenjuje brzinu automobila koji se približava s točnošću od desetinki metra u sekundi. On za sebe definira brzinu automobila kao “vrlo brzo”, “brzo”, “sporo” itd. koristi lingvističke varijable za označavanje brzine. U teoriji neizrazitih skupova predlažu se sljedeći načini formaliziranja neizrazitih koncepata. Prva metoda (temeljena na Zadehovim djelima) uključuje odbacivanje glavne tvrdnje klasične teorije skupova da neki element može pripadati ili ne pripadati skupu. U ovom slučaju uvodi se posebna funkcija skupa karakteristika - takozvana funkcija članstva, koja uzima vrijednosti iz intervala. Ova metoda vodi do kontinuirane logike. U drugom, općenitijem načinu formaliziranja fuzzinessa, pretpostavlja se da karakteristične funkcije skupa ne uzimaju vrijednosti iz intervala, već u konačnoj ili beskonačnoj distributivnoj rešetki. Ova generalizacija se naziva neizrazitim skupovima u smislu Gauguina. Treći način su P-fazi skupovi. S ovom generalizacijom, svaki element univerzalnog skupa nije povezan s točkom u intervalu, već s podskupom ili dijelom tog intervala. Algebra P-izrazitih skupova može se svesti na algebru klasa. Četvrti način su heterogeni neizraziti skupovi. Ovdje su, u općem slučaju, elementima univerzalnog skupa dodijeljene vrijednosti u različitim distributivnim rešetkama. Svaka se stavka može povezati s najprikladnijom ocjenom za nju. Štoviše, vrijednosti samih procjena mogu biti nejasne i dane u obliku funkcija. Dobivena je opća ideja neizrazite logike. Sada o svemu detaljnije. Razmotrimo konceptualni aparat koji se temelji na konceptu "jezične varijable". Definicija jezične varijable (intuitivna) 4 Ako varijabla može poprimiti značenja riječi u prirodnom jeziku (na primjer, "malo", "brzo" itd.) ), tada je ova varijabla definirana kao jezična varijabla. Riječi čija je značenja pretpostavljena jezična varijabla obično označavaju nejasne skupove. 4 Inteligentni informacijski sustavi: Metodološke upute za laboratorijsku praksu na kolegiju "Inteligentni informacijski sustavi" za studente specijalnosti 071900 - Informacijski sustavi u ekonomiji / Ufimsk. država Zrakoplovstvo tech. un-t; komp.: G. G. Kulikov, T. V. Breikin, L. Z. Kamalova. - Ufa, 1999.-40 str. - 48 - Jezična varijabla može poprimiti svoje vrijednosti bilo riječi ili brojeva. Definicija jezične varijable (formalna) Jezična varijabla naziva se pet (x, T (x), X, G, M), gdje je x naziv varijable; T (x) - skup imena jezičnih vrijednosti varijable x, od kojih je svaki neizraziti skup na skupu X; G je sintaktičko pravilo za formiranje imena vrijednosti x; M je semantičko pravilo za povezivanje svake vrijednosti vrijednosti s njezinim konceptom. Svrha koncepta jezične varijable je da se na formalan način kaže da varijabla može uzeti kao značenje riječ iz prirodnog jezika. Drugim riječima, svaka jezična varijabla sastoji se od: - imena; - skup njegovih vrijednosti, koji se naziva i osnovni skup pojmova T. Elementi skupa osnovnih pojmova su nazivi neizrazitih varijabli; - univerzalni set X; - sintaktičko pravilo G prema kojem se novi pojmovi generiraju korištenjem riječi prirodnog ili formalnog jezika; - semantičko pravilo P, koje svakoj vrijednosti jezične varijable dodjeljuje nejasni podskup skupa X. Na primjer, ako kažemo “ brza brzina", Tada varijablu "brzina" treba shvatiti kao jezičnu varijablu, ali to ne znači da varijabla "brzina" ne može poprimiti stvarne vrijednosti. Fazna varijabla je opisana skupom (N, X, A), gdje je N je naziv varijable, X je univerzalni skup (područje rasuđivanja), A je neizraziti skup na X. Vrijednosti jezične varijable mogu biti neizrazite varijable, tj. jezična varijabla je na višoj razini od neizrazite varijable. Glavni pristup formalizaciji fuzzinessa je sljedeći. Fazni skup nastaje uvođenjem generaliziranog koncepta pripadnosti, t.j. proširenje dvoelementnog skupa vrijednosti karakteristične funkcije (0,1) na kontinuum. To znači da se prijelaz iz potpune pripadnosti objekta klasi u njegovu potpunu nepripadnost događa ne naglo, već glatko, postupno, a pripadnost elementa skupu izražava se brojem iz intervala. - 49 - Fuzzy skup (NM), matematički je definiran kao skup uređenih parova sastavljenih od elemenata x univerzalnog skupa X i odgovarajućih stupnjeva pripadnosti μa (x) ili (budući da je funkcija pripadnosti iscrpna karakteristika NM) izravno u obliku funkcije Univerzalnim skupom X neizrazita skupa A naziva se područje definicije funkcije pripadnosti μa. Na sl. 18 prikazuje glavne vrste funkcija članstva. Riža. 18. Vrsta funkcija pripadnosti Po vrsti funkcija pripadnosti razlikuju se na: - submodalne (slika 1. c); - amodal (slika 1. a); - multimodalni (slika 1. m); - unimodalni (slika 1.u). - Primjer. 1) A = ((x1,0,2), (x2,0,6), (x3,1), (x4,0,8)); 2) A = 0,2 | x1 + 0,6 | x2 + 1 | x3 + 0,8 | x4. 3) Isti primjer može se prikazati u obliku tablice. Tablica 6 A = Tablica koja opisuje funkciju članstva x1 x2 x3 x4 0,2 0,6 1 0,8 Primjer "Mnogo visokih ljudi" B stvaran život takav koncept kao što je "rast visoke osobe" subjektivan je. Neki vjeruju da bi visoka osoba trebala biti visoka više od 170 cm, drugi - više od 180 cm, a treći - više od 190 cm. Nejasni skupovi omogućuju nam da uzmemo u obzir takvu zamagljenu procjenu. - 50 - Neka je x lingvistička varijabla koja označava "visinu osobe", njezinu funkciju pripadnosti skupu visokih ljudi A: X (0,1), gdje je X skup koji uključuje sve moguće vrijednosti neke osobe visina, daje se na sljedeći način: Tada je skup "visokih ljudi" dan izrazom A = (x | A (x) = 1), x ϲ X. To je grafički prikazano na Sl. 19 (puna linija), t.j. ovisi o osobi koja procjenjuje. Neka funkcija pripadnosti A: X (0,1) ima oblik prikazan na slici isprekidanom linijom. Riža. 19. Nejasan skup visokih ljudi Dakle, osoba visine 145 cm pripada skupu A sa stupnjem pripadnosti A (145) = 0, osoba visine 165 cm - A (165) = 0,3, visina 185 cm -A (185) = 0,9, a visina 205 cm - A (205) = 1. Primjer. "Je li ti sada hladno?" Temperature od + 60oF (+12oC) ljudi doživljavaju kao hladno, a temperature od +80oF (+27oC) doživljavaju kao toplinu. Temperature od +65oF (+15oC) nekima se čine niskim, drugima prilično ugodnima. Ovu skupinu definicija nazivamo funkcijom pripadnosti skupovima koji opisuju subjektivnu percepciju temperature od strane osobe. Strojevi nisu sposobni za tako finu gradaciju. Ako je standard za određivanje hladnoće "temperatura ispod + 15oC", tada će se +14,99oC smatrati hladnom, ali +15oC neće. Na sl. 20. Prikazan je grafikon koji će vam pomoći razumjeti kako osoba percipira temperaturu. Jednako je lako stvoriti dodatne skupove koji opisuju percepciju temperature od strane osobe. Na primjer, možete dodati setove kao što su "vrlo hladno" i "vrlo vruće". Slične funkcije mogu se opisati za druge koncepte kao što su otvorena i zatvorena stanja, temperatura rashladnog uređaja — 51 — ili temperatura rashladnog tornja. Riža. 20. Fuzzy skup "Temperatura" Dakle, mogu se izvući slijedeći zaključci o biti pojma "fuzzy set": 1) neizraziti skupovi opisuju neodređene pojmove (brzi trkač, topla voda, vruće vrijeme); 2) fuzzy skupovi dopuštaju mogućnost djelomične pripadnosti (petak je dijelom slobodan dan (skraćeno), vrijeme je prilično vruće); 3) stupanj pripadnosti objekta neizrazito skupu određen je odgovarajućom vrijednošću funkcije pripadnosti na intervalu (petak pripada vikendima sa stupnjem pripadnosti 0,3); 4) funkcija pripadnosti pridružuje objekt (ili logičku varijablu) s vrijednošću stupnja njegovog članstva u neizrazito skupu. Oblici krivulja za dodjelu funkcija članstva Postoji više od desetak tipičnih krivulja za dodjelu funkcija članstva. Najraširenije su: trokutasta, trapezna i Gaussova funkcija pripadnosti. Funkcija trokutaste pripadnosti određena je trojkom brojeva (a, b, c), a njezina vrijednost u točki x izračunava se prema izrazu (1).  bx 1  b  a, a  x  b;  c  x MF (x)  , b  x  c; c  b  0, u svim ostalim slučajevima   - 52 - (1) Za (ba) = (cb) imamo slučaj simetrične trokutaste funkcije pripadnosti (slika 21), koja se može jednoznačno odrediti s dva parametri iz trojke (a , b, c). Riža. 21. Funkcija trokutaste pripadnosti Slično, da biste postavili funkciju trapezastog članstva, potrebna su vam četiri broja (a, b, c, d).  bx 1  b  a, a  x  b;  1, b  x  c; MF (x)   d  x, c  x  d; d c 0, u svim ostalim slučajevima  (2) Kada je (b-a) = (d-c), funkcija pripadnosti trapeza poprima simetričan oblik (slika 22). Riža. 22. Trapezoidna funkcija pripadnosti Skup funkcija pripadnosti za svaki član iz osnovnog skupa pojmova T obično se zajedno prikazuje na jednom grafu. Na sl. 23. prikazana je formalizacija nepreciznog koncepta "ljudskog doba". Dakle, za osobu od 48 godina, stupanj pripadnosti skupu "Mladi" je 0, "Prosjek" - 0,47, "Iznad prosjeka" - 0,20. - 53 - Sl. 23. Opis lingvističke varijable "Ljudsko doba" Osnovne operacije nad neizrazitim skupovima U nastavku su prikazane osnovne operacije nad IS-om iz klase svih IS F (X) = ( | : X ) univerzalnog skupa X. 1. Zbrajanje 5  2 =   = 1-  1,  x  X Sl. 24. Raspored operacije "Komplement" nad funkcijom M 2. Raskrižje I (minimalno: varijable koje nisu u interakciji).  3 = ( 1   2) (x) = min ( 1 (x),  2 (x)),  x  X 3. Unija I (maksimum: varijable koje nisu u interakciji).  3 = ( 1   2) (x) = max ( 1 (x),  2 (x)),  x  X 4. Raskrižje II (ograničeni proizvod).  3 = ( 1   2) (x) = max (0,  1 (x) +  2 (x) -1),  x  X 5. Unija II (maksimalno: ograničena količina).  3 = ( 1   2) (x) = min (1,  1 (x) +  2 (x)),  x  X 6. Presjek III (algebarski umnožak). 5 U daljnjem tekstu, operacije koje su iste za sve tri baze prikazane su na žutoj pozadini. - 54 -  3 = ( 1   2) (x) =  1 (x) *  2 (x),  x  X 7. Unija III (algebarski zbroj).  3 = ( 1   2) (x) =  1 (x) +  2 (x) -  1 (x)   2 (x),  x  X A V Sl. 25. Grafikon operacije presjeka I (A) unije I (B) funkcija M i M1 A B Sl. 26. Grafikon rada presjeka II (A) spoja II (B) funkcija M i M1 A B Sl. 27. Grafikon rada presjeka III (A) spoja III (B) funkcija M i M1 - 55 - 8. Razlika.  3 =  1 (x) -  2 (x) = max (0,  1 (x) -  2 (x)),  x  X 9. Koncentracija.  3 =  2 (x),  x  X Sl. 28. Grafikon razlike funkcija M i M1 Sl. 29. Grafikon koncentracije funkcije M1 Za razliku od Booleove algebre, u F (X) nisu zadovoljeni zakoni isključenja trećeg. Prilikom konstruiranja operacija unije ili presjeka u F (X), potrebno je odbaciti ili zakone isključenja trećeg, ili svojstvo distributivnosti i idempotencije. Fuzzy objekti mogu se klasificirati prema vrsti raspona vrijednosti funkcije članstva. I ovdje se razlikuju varijante X: - rešetka; - poluskupina; - prsten; - kategorija. Slučaj S-izrazitih skupova definiranih parom (X, ), gdje je - 56 - : XS preslikavanje iz X u linearno uređeni skup S. Prirodno je nametnuti zahtjeve konačnosti i potpunosti na S. Primjer konačnog linearno uređenog skupa je skup lingvističkih vrijednosti jezične varijable "KVALITETA" = (loše, prosječno, dobro, izvrsno). N 1 2 3 4 5 6 7 8 9 Tablica 7 Korespondentna tablica operacija nad neizrazitim skupovima i logičkim funkcijama Naziv operacije Modifikator / veza Komplement NOT Presjek (minimalno: AND (AND, ..., AND) neinteragirajuće varijable) Unija I ( maksimum: ILI neinteragirajuće varijable) (ILI, ..., ILI) Presjek II (ograničeni proizvod I) Unija II (ograničeni proizvod I) ILI presjek III (algebarski I proizvod) Unija III (algebarski zbroj) ILI Koncentracija razlike VRLO Kao što je prikazano, ovisno Od metoda uvođenja operacija sjedinjenja i presjeka IS-a, postoje tri glavne teorije IS-a. U skladu sa sličnim kriterijima dijele: - fuzzy logiku s maksiminskim operacijama (operacije 1,2,3,8,9); - neizrazita logika s ograničenim operacijama (operacije 1,4,5,8,9); - probabilistička neizrazita logika (operacije 1,6,7,8,9). Tumačenje istine kao jezične varijable dovodi do nejasne logike sa značenjima "istina", "vrlo istinito", "savršeno istinito", "manje ili više istinito", "ne baš istinito", "lažno" itd. , tj. neizrazitoj logici na kojoj se temelji teorija približnog zaključivanja. Područja primjene teorije neizrazitih skupova u različitim područjima ljudskog znanja.

Država Armavir

Pedagoško sveučilište

TEMELJI UMJETNE INTELIGENCIJE

za studente koji studiraju na specijalnosti "Informatika"

Armavir 2004

Objavljeno odlukom UMS ASPU

Recenzent:, kandidat fizikalno-matematičkih znanosti, izvanredni profesor, voditelj Internet centra Kabardino-Balkarske državne poljoprivredne akademije

Kozyrev umjetne inteligencije. Nastavno pomagalo za studente koji studiraju na specijalnosti "informatika". - Armavir, 2004.

Razmatrano Osnovni koncepti umjetna inteligencija, pravci i perspektive razvoja istraživanja u području umjetne inteligencije, osnove logičkog programskog jezika PROLOG.

Priručnik za obuku namijenjen je studentima koji studiraju na specijalnosti "informatika", a mogu ga koristiti i svi koji su zainteresirani za umjetnu inteligenciju i logičko programiranje.

Uvod ………………………………………………………… .. …………………… ... 4

1. Umjetna inteligencija: predmet, povijest
razvoj, smjerovi istraživanja …… .. ………………… .. 5

1.1. Smjerovi istraživanja na tom području
umjetna inteligencija… .. …………………………………………… .. 5


umjetna inteligencija…………………………… .. ……………… ..... 6

2. Sustav znanja ……………………………………………………… .. 8

3. Modeli predstavljanja znanja …………………………………. devet

3.1. Semantičke mreže …………………………………………………………… ..9

3.2. Model okvira …………………………………………………… 10

3.3. Proizvodni model ………………………………………………………… ..11

3.4. Logički model ……………………………………………………. .12

4. Ekspertni sustavi ……………………………………………………… ... 12

4.1. Imenovanje ekspertnih sustava ……………………………………… .12

4.2. Vrste zadataka rješavanih uz pomoć ekspertnih sustava …………… .14

4.3. Struktura ekspertnih sustava ……………………………………… ... 15

4.4. Glavne faze razvoja ekspertnih sustava ……………………………… 16

4.5. Stručni alati za razvoj sustava ……… 18

5. PROLOG - logički programski jezik ……… .19

5.1. Općenite informacije o PROLOGU ………………………………………… 19

5.2. Prijedlozi: činjenice i pravila ……………………………………… 20

5.4. Varijable u PROLOGU ………………………………………… ... 22

5.5. Objekti i tipovi podataka u PROLOGU ……………………………… ... 23

5.6. Glavni dijelovi PROLOG-programa …………………………… .23

5.7. Vraćanje unatrag …………………………………………………………… ... 24

5.8. Kontroliranje vraćanja unatrag: neuspjeh i predikati izrezivanja …… 26

5.9. Aritmetički izračuni ………………………………………… 27

5.10. Rekurzija ……………………………………………………………………… .28

5.11. Popisi …………………………………………………………………… 30

5.12. Standardni zadaci obrade popisa ………………………….… .31

Književnost………………………………………………............................... .35

Uvod

Posljednjih desetljeća umjetna inteligencija je zahvatila sve sfere djelovanja, postajući sredstvo integracije znanosti. Softverski alati bazirani na tehnologijama i metodama umjetne inteligencije postali su rašireni u svijetu. Sve gospodarski razvijene zemlje počele su intenzivno istraživati ​​stvaranje jedinstvenog informacijskog prostora koji stvara uvjete za zajednički rad na daljinu na temelju baza znanja. Kolegij "Osnove umjetne inteligencije" u visokom obrazovanju uključuje proučavanje odjeljaka kao što su prezentacija znanja na formalnom jeziku, struktura ekspertnih sustava i temeljna načela njihova razvoja, različite strategije za pronalaženje cilja. Jedan od glavnih pravaca kolegija je rasprava o implementaciji sustava umjetne inteligencije za rješavanje specifičnih primijenjenih problema.

Kao računalna podrška Predmet ispituje instrumentalno razvojno okruženje za Visual Prolog programe. Programski jezik Prolog, temeljen na idejama i metodama matematičke logike, izvorno je stvoren za razvoj aplikacija umjetne inteligencije. Aplikacije kao što su baze znanja, ekspertni sustavi, sučelja prirodnog jezika i inteligentni sustavi za upravljanje informacijama učinkovito su programirani u okruženju Visual Prolog. Visoka razina apstrakcije, sposobnost predstavljanja složenih struktura podataka i simulacije logičkih odnosa između objekata omogućuju rješavanje problema različitih predmetnih područja.

Nastavno pomagalo "Osnove umjetne inteligencije" pomoći će u proširenju ideja budućeg učitelja informatike o područjima primjene teorije umjetne inteligencije, o postojećim i obećavajućim jezicima programiranje i hardverske strukture za stvaranje sustava umjetne inteligencije.

1. Umjetna inteligencija: predmet, povijest razvoja, pravci istraživanja.

jantellectus(lat) - um, razum, razum, misaone sposobnosti osobe. Umjetna inteligencija(AI) je područje računalne znanosti, čiji je predmet razvoj hardverskih i softverskih alata koji omogućuju korisniku rješavanje problema koji se tradicionalno smatraju inteligentnim. Teorija umjetne inteligencije je znanost o znanju, kako ga izvući, predstaviti u umjetnim sustavima, obraditi unutar sustava i koristiti za rješavanje praktičnih problema. AI tehnologije se danas koriste u mnogim područjima primjene.

Početak istraživanja u području umjetne inteligencije (kraj 1950-ih) vezuje se uz radove Newella, Symana i Shawa koji su istraživali procese rješavanja različitih problema. Rezultati njihovog rada bili su programi kao što su "LOGIK-THEORETIK", namijenjeni dokazivanju teorema u propozicijskom računu, i "OPĆI PROBLEM RJEŠAVAČ". Ovi radovi označili su početak prve faze istraživanja u području umjetne inteligencije, povezane s razvojem programa koji rješavaju probleme na temelju korištenja različitih heurističkih metoda.

U ovom slučaju, heuristička metoda rješavanja problema smatrana je karakterističnom za ljudsko mišljenje "općenito", za koju je karakteristična pojava nagađanja o načinu rješavanja problema s njihovom naknadnom provjerom. Protivio se algoritamskoj metodi korištenoj u računalu, koja se tumačila kao mehanička implementacija zadanog slijeda koraka, koji deterministički vodi do točnog odgovora. Tumačenje heurističkih metoda rješavanja problema kao isključivo ljudske djelatnosti dovelo je do pojave i daljnjeg širenja pojma AI

A. Neurokibernetika.

Neurokiberietika je usmjerena na hardversko modeliranje struktura sličnih strukturi mozga. Fiziolozi su odavno utvrdili da je osnova ljudskog mozga veliki broj međusobno povezanih i međusobno povezanih živčanih stanica – neurona. Stoga su napori neurokibernetike bili usmjereni na stvaranje elemenata sličnih neuronima i njihovo kombiniranje u funkcionalne sustave. Ti se sustavi obično nazivaju neuronskim mrežama ili neuronskim mrežama. Nedavno se neurokibernetika ponovno počela razvijati zbog skoka u razvoju računala. Pojavili su se neuroračunala i transputeri.

Trenutno se koriste tri pristupa za stvaranje neuronskih mreža:

hardver- stvaranje posebna računala, ploče za proširenje, čipsete koji implementiraju sve potrebne algoritme,

program- stvaranje programa i alata dizajniranih za računala visokih performansi. Mreže se stvaraju u memoriji računala, sav posao obavljaju njegovi vlastiti procesori;

hibrid- kombinacija prva dva. Dio proračuna obavljaju posebne ploče za proširenje (koprocesori), a dio softverski.

B. Kibernetika "crne kutije".

Kibernetika "crne kutije" temelji se na principu suprotnom od neurokibernetike. Nije važno kako funkcionira uređaj za "razmišljanje". Glavna stvar je da na zadane ulazne utjecaje reagira na isti način kao i ljudski mozak.

Ovaj smjer umjetne inteligencije bio je usmjeren na pronalaženje algoritama za rješavanje inteligentnih problema na postojećim računalnim modelima.

Istraživanja u području umjetne inteligencije prešla su dug i trnovit put: prvi hobiji (1960.), pseudoznanost (1960.-65.), uspjesi u rješavanju zagonetki i igara (), razočaranje u rješavanju praktičnih problema (), prvi uspjesi u rješavanje niza praktičnih problema ( ), masovna komercijalna upotreba u rješavanju praktičnih problema (). No, temelj komercijalnog uspjeha s pravom čine ekspertni sustavi i prije svega ekspertni sustavi u stvarnom vremenu. Upravo su oni dopustili umjetnoj inteligenciji da prijeđe s igara i zagonetki na masovnu upotrebu u rješavanju praktički značajnih problema.

1.2. Glavni zadaci riješeni na terenu
umjetna inteligencija

Predstavljanje znanja i razvoj sustava temeljenih na znanju

Razvoj modela predstavljanja znanja, stvaranje baza znanja koje čine jezgru ekspertnih sustava (ES). Nedavno uključuje modele i metode za izvlačenje i strukturiranje znanja te se spaja s inženjeringom znanja. U području umjetne inteligencije najveći komercijalni uspjeh postigli su ekspertni sustavi i alati za njihov razvoj.

Igre i kreativnost.

Intelektualni zadaci igre - šah, dame, go. Temelji se na jednom od ranih pristupa - modelu labirinta plus heuristika.

Razvoj sučelja prirodnog jezika i strojno prevođenje

Upravljanje glasom, prijevod s jezika na jezik. Prvi program na ovom području je prevoditelj s engleskog na ruski. Prva ideja, prijevod riječ po riječ, pokazala se neuspješnom. Trenutno se koristi složeniji model, uključujući analizu i sintezu poruka prirodnog jezika, koji se sastoji od nekoliko blokova. Za analizu, to su:

Jezik koji koristi proizvodni model je PROLOG.

3.4. Logički model

Njihov opis temelji se na formalnom sustavu s četiri elementa:

M =<Т, Р, А, В >, gdje

T - skup osnovnih elemenata različite prirode s odgovarajućim postupcima;

P je skup sintaktičkih pravila. Uz njihovu pomoć od T elemenata se formiraju sintaktički ispravne zbirke. Postupak P (R) utvrđuje je li ovaj skup ispravan;

A je podskup skupa P, koji se naziva aksiomima. Postupak P (A) daje odgovor na pitanje o pripadnosti skupu A;

B - skup pravila zaključivanja. Primjenjujući ih na elemente A, možete dobiti nove sintaktički ispravne kolekcije na koje možete ponovno primijeniti ova pravila. Postupak P (B) određuje, za svaku sintaktički ispravnu zbirku, je li deducibilna.

4. Ekspertni sustavi

4.1. Imenovanje ekspertnih sustava

Ekspertni sustavi(ES) su složeni softverski sustavi koji akumuliraju znanje stručnjaka u određenim predmetnim područjima i repliciraju ovo empirijsko iskustvo za savjete manje kvalificiranih korisnika.

Svrha proučavanja ekspertnih sustava je razvoj programa koji rješavanjem problema iz određenog predmetnog područja postižu rezultate koji po kvaliteti i učinkovitosti nisu inferiorni u odnosu na rezultate koje postižu stručnjaci.

Ekspertni sustavi dizajnirani su za rješavanje neformaliziranih, praktičnih zadataka. Korištenje ekspertnog sustava treba koristiti samo kada je njihov razvoj moguć i svrsishodan.

Činjenice koje ukazuju na potrebu razvoja i implementacije ekspertnih sustava:

Nedostatak stručnjaka koji provode značajno vrijeme pomažući drugima;

Potreba za velikim timom stručnjaka, budući da nitko od njih nema dovoljno znanja;

Niska produktivnost, budući da zadatak zahtijeva potpunu analizu složenog skupa uvjeta, a obični stručnjak nije u mogućnosti vidjeti (u dodijeljenom vremenu) sve te uvjete;

Prisutnost natjecatelja koji imaju prednost da bolje rade posao na zadanom zadatku.

Po funkcionalna ekspertni sustavi mogu se podijeliti u sljedeće vrste:

1. Snažni ekspertni sustavi namijenjeni uskom krugu korisnika (sustavi upravljanja složenom tehnološkom opremom, ekspertni sustavi protuzračne obrane). Takvi sustavi obično rade u stvarnom vremenu i vrlo su skupi.

2. Stručni sustavi dizajnirani za širok raspon korisnika. To uključuje medicinske dijagnostičke sustave, složene sustave obuke. Baza znanja ovih sustava nije jeftina, jer sadrži jedinstveno znanje dobiveno od stručnjaka. Prikupljanje znanja i formiranje baze znanja provodi stručnjak za prikupljanje znanja – kognitivni inženjer.

3. Ekspertni sustavi s mali broj pravila i relativno jeftin. Ovi su sustavi namijenjeni široj javnosti (sustavi koji olakšavaju rješavanje problema s hardverom). Korištenje takvih sustava omogućuje bez visokokvalificiranog osoblja, kako bi se smanjilo vrijeme otklanjanja problema. Baza znanja takvog sustava može se nadopunjavati i mijenjati bez pribjegavanja pomoći programera sustava. Obično koriste znanja iz raznih referentnih priručnika i tehničke dokumentacije.

4. Jednostavni ekspertni sustavi za individualnu upotrebu. Često se izrađuje samostalno. Koristi se u situacijama za olakšavanje svakodnevnog rada. Korisnik, organizirajući pravila u određenu bazu znanja, na njezinoj osnovi stvara vlastiti stručni sustav. Takvi se sustavi koriste u jurisprudenciji, komercijalnim djelatnostima i popravku jednostavne opreme.

Korištenje ekspertnih sustava i neuronskih mreža donosi značajne ekonomske koristi. Na primjer: - American Express je smanjio svoje gubitke za 27 milijuna dolara godišnje zahvaljujući stručnom sustavu koji utvrđuje preporučljivost izdavanja ili odbijanja zajma određenoj tvrtki; “DEC štedi 70 milijuna dolara godišnje uz XCON / XSEL, koji prilagođava VAX računalni sustav. Njegova uporaba smanjila je broj pogrešaka s 30% na 1%; - Sira je sa sustavom stručnjaka za cjevovode smanjila troškove izgradnje cjevovoda u Australiji za 40 milijuna dolara.

4.2. Vrste zadataka riješenih s
ekspertni sustavi

Tumačenje podataka... Tumačenje se odnosi na definiranje značenja podataka čiji rezultati moraju biti dosljedni i točni. Primjeri ES-a:

Otkriće i identifikacija različiti tipovi oceanska plovila - SIAP;

Određivanje osnovnih osobina ličnosti na temelju rezultata psihodijagnostičkog testiranja u AUTANTEST i MICROLUSHER sustavima itd.

Dijagnostika... Dijagnostika se odnosi na otkrivanje kvara u određenom sustavu. Primjeri ES-a:

Dijagnostika i terapija koronarne vazokonstrikcije - ANGY;

Dijagnostika grešaka u hardveru i softveru računala - CRIB sustav itd.

Praćenje... Glavni zadatak praćenja je kontinuirana interpretacija podataka u stvarnom vremenu i signaliziranje da su pojedini parametri izvan dopuštenih granica. Glavni problemi su "preskakanje" alarmantne situacije i inverzni zadatak "lažnog" aktiviranja. Primjeri ES-a:

Kontrola rada elektrana SPRINT, pomoć dispečerima nuklearnog reaktora - REAKTOR:

Kontrola senzora za hitne slučajeve u kemijskoj tvornici - FALCON itd.

Oblikovati... Dizajn se sastoji u pripremi specifikacija za izradu "objekata" s unaprijed definiranim svojstvima. Specifikacija se odnosi na cijeli skup potrebnih dokumenata, crteža, objašnjenja itd. Primjeri ES-a:

Dizajn VAX - 1/780 računalnih konfiguracija u XCON (ili R1) sustavu,

LSI dizajn - CADHELP;

Sinteza električnih krugova - SYN itd.

Prognoziranje. Prediktivni sustavi logički zaključuju vjerojatne posljedice iz zadanih situacija. Primjeri ES-a:

Vremenska prognoza - WILLARD sustav:

Procjene buduće žetve - PI. MRAV;

Prognoze u gospodarstvu - ECON et al.

Planiranje. Planiranje se odnosi na pronalaženje akcijskih planova vezanih uz objekte koji su sposobni obavljati neke funkcije. U takvim ES koriste se modeli ponašanja stvarnih objekata kako bi se logički zaključile posljedice planirane aktivnosti. Primjeri ES-a:

Planiranje ponašanja robota - STRIPS,

Planiranje industrijskih narudžbi - 1SIS,

Planiranje pokusa - MOLGEN i sur.

Obrazovanje. Sustavi za učenje dijagnosticiraju pogreške u proučavanju discipline pomoću računala i predlažu prave odluke. Akumuliraju znanje o hipotetičkom "učeniku" i njegovim karakterističnim pogreškama, zatim u svom radu mogu dijagnosticirati slabosti u znanju učenika i pronaći odgovarajuća sredstva za njihovo otklanjanje. Primjeri ES-a:

Učenje programskog jezika Lisp u sustavu Lisp Teacher;

PROUST sustav - podučavanje Pascal jezika itd.

Rješenja ekspertnih sustava su transparentna, odnosno mogu se objasniti korisniku na kvalitativnoj razini.

Ekspertni sustavi su u mogućnosti nadopuniti svoje znanje u interakciji sa stručnjakom.

4.3. Struktura ekspertnih sustava

Struktura ekspertnih sustava uključuje sljedeće komponente:

Baza znanja- jezgra ES-a, skup znanja predmetnog područja, snimljen na strojnom mediju u obliku razumljivom stručnjaku i korisniku (obično na nekom jeziku bliskom prirodnom). Paralelno s ovom "ljudskom" reprezentacijom, postoji baza znanja u unutarnjoj "strojnoj" reprezentaciji. Sastoji se od skupa činjenica i pravila.

Činjenice – opisuju predmete i odnos među njima. Pravila – koriste se u bazi znanja za opisivanje odnosa između objekata. Zaključak se izvodi na temelju odnosa definiranih pravilima.

Baza podataka- namijenjen je za privremeno skladištenje činjenica i hipoteza, sadrži međupodatke ili rezultat komunikacije između sustava i korisnika.

Strojno zaključivanje- mehanizam rasuđivanja koji operira znanjem i podacima u svrhu dobivanja novih podataka, a za to se obično koristi softverski implementiran mehanizam za pronalaženje rješenja.

Komunikacijski podsustav- služi za vođenje dijaloga s korisnikom, tijekom kojeg ekspertni sustav od korisnika traži potrebne činjenice za proces zaključivanja, kao i omogućava korisniku da u određenoj mjeri kontrolira tijek razmišljanja.

Objasniti podsustav- nužan je kako bi se korisniku dala mogućnost kontrole tijeka zaključivanja.

Podsustav stjecanja znanja- program koji inženjeru znanja pruža mogućnost stvaranja baza znanja u interaktivnom načinu. Uključuje sustav ugniježđenih izbornika, jezične predloške za predstavljanje znanja, savjete ("pomoć" - način rada) i druge servisne alate koji olakšavaju rad s bazom podataka.

Ekspertni sustav radi na dva načina:

Stjecanje znanja (definicija, modifikacija, dopuna);

Rješavanje problema.

U ovom načinu rada se podaci o zadatku obrađuju i nakon odgovarajućeg kodiranja prenose u blokove ekspertnog sustava. Rezultati obrade dobivenih podataka šalju se modulu savjeta i objašnjenja te se nakon prevođenja u jezik blizak prirodnom izdaju u obliku savjeta, objašnjenja i komentara. Ako korisniku odgovor nije jasan, može zatražiti objašnjenje od stručnog sustava kako bi ga dobio.

4.4. Glavne faze razvoja ekspertnih sustava

Tehnološki proces razvoja industrijskog ekspertnog sustava može se podijeliti u šest glavnih faza:

1. Odabir pravog problema

Aktivnosti koje dovode do odluke da se počne razvijati određeni ES uključuju:

Definiranje problematičnog područja i zadatka;

Pronalaženje stručnjaka spremnog na suradnju u rješavanju problema i dodjeljivanje razvojnog tima;

Određivanje preliminarnog pristupa rješavanju problema;

Analiza troškova i koristi od razvoja;

Izrada detaljnog plana razvoja.

2. Razvoj prototipa sustava

Prototip sustava je skraćena verzija ekspertnog sustava, dizajnirana za provjeru ispravnosti kodiranja činjenica, odnosa i strategija stručnog zaključivanja.

Prototip mora ispunjavati dva zahtjeva:

Prototip sustava trebao bi rješavati najčešće probleme, ali ne bi trebao biti ni velik.

Vrijeme i trud uključeni u izradu prototipa trebali bi biti zanemarivi.

Rad prototipa programa se evaluira i verificira kako bi se uskladio sa stvarnim potrebama korisnika. Prototip se provjerava za:

Pogodnost i primjerenost ulazno-izlaznih sučelja (priroda pitanja u dijalogu, konzistentnost izlaznog teksta rezultata, itd.)

Učinkovitost strategije kontrole (redoslijed nabrajanja, korištenje neizrazitog zaključivanja, itd.);

Kvaliteta testnih slučajeva;

Ispravnost baze znanja (potpunost i dosljednost pravila).

Stručnjak obično radi s inženjerom znanja koji pomaže u strukturiranju znanja, definiranju i oblikovanju potrebnih koncepata i pravila

riješiti problem. U slučaju uspjeha, stručnjak uz pomoć kognicionog inženjera proširuje bazu znanja prototipa o problemskoj domeni.

Ako ne uspije, može se zaključiti da. Koje su druge metode potrebne za rješavanje ovog problema ili razvoj novog prototipa.

3. Razvoj prototipa industrijskog ekspertnog sustava.

U ovoj fazi, baza znanja je značajno proširena, veliki broj dodatne heuristike. Ove heuristike obično povećavaju dubinu sustava dajući više pravila za suptilne aspekte pojedinačnih slučajeva. Nakon uspostavljanja osnovne strukture ES-a, inženjer znanja prelazi na razvoj i prilagodbu sučelja uz pomoć kojih će sustav komunicirati s korisnikom i stručnjakom.

U pravilu se ostvaruje nesmetan prijelaz s prototipa na industrijske ekspertne sustave. Ponekad se pri razvoju industrijskog sustava razlikuju dodatne faze za tranziciju: demonstracijski prototip - istraživački prototip - radni prototip - industrijski sustav.

4. Procjena sustava

Stručni sustavi se ocjenjuju kako bi se provjerila točnost programa i njegova korisnost. Ocjenjivanje se može provesti na temelju različitih kriterija koje ćemo grupirati na sljedeći način:

Kriteriji korisnika (jasnoća i "transparentnost" sustava, prilagođenost sučelja i sl.);

Kriteriji pozvanih stručnjaka (procjena savjeta-rješenja koje nudi sustav, uspoređivanje s vlastitim rješenjima, procjena podsustava objašnjenja i sl.);

Kriteriji za razvojni tim (učinkovitost implementacije, produktivnost, vrijeme odziva, dizajn, širina opsega, konzistentnost baze znanja, broj zastoja kada sustav ne može donijeti odluku, analiza osjetljivosti programa na manje promjene u zastupljenosti znanja, faktori težine koristi se u logičkom izlazu, podacima itd.).

5. Spajanje sustava

U ovoj fazi se ekspertni sustav spaja s ostalim softverskim alatima u okruženje u kojem će raditi, a obučavaju se i ljudi kojima će služiti.Docking također znači razvijanje veza između ekspertnog sustava i okruženja u kojem djeluje.

Docking uključuje osiguranje povezanosti ES-a s postojećim bazama podataka i drugim sustavima u poduzeću, kao i poboljšanje čimbenika sustava koji ovise o vremenu, kako bi se mogao učinkovitije osigurati i poboljšati njegove karakteristike. tehnička sredstva ako sustav radi u neobičnom okruženju (na primjer, komunikacija s mjernim uređajima).

6. Podrška sustava

Transkodiranje sustava u jezik poput C poboljšava performanse i prenosivost, ali smanjuje fleksibilnost. To je prihvatljivo samo ako sustav zadrži sva znanja o problemskom području, a to se znanje neće promijeniti u bliskoj budućnosti. Međutim, ako je ekspertni sustav stvoren upravo zbog promjene problematičnog područja, onda je potrebno podržati sustav u razvojnom okruženju.

Jezici umjetne inteligencije

Lisp (LISP) i Prolog (Prolog) su najčešći jezici za rješavanje problema umjetne inteligencije. Postoje i manje uobičajeni jezici umjetne inteligencije, kao što je REFAL, razvijeni u Rusiji. Svestranost ovih jezika je manja od tradicionalnih jezika, ali jezici umjetne inteligencije nadoknađuju njezin gubitak bogatim mogućnostima rada sa simboličkim i logičkim podacima, što je iznimno važno za zadatke umjetne inteligencije. Na temelju jezika umjetne inteligencije stvaraju se specijalizirana računala (na primjer, Lisp strojevi) namijenjena rješavanju problema umjetne inteligencije. Nedostatak ovih jezika je njihova neprimjenjivost za stvaranje hibridnih ekspertnih sustava.

Posebni softverski alati

Knjižnice i dodaci za jezik umjetne inteligencije Lisp: KEE (Knowledge Engineering Environment), FRL (Frame Representation Language), KRL (Knowledge Representation Language), ARTS, itd., omogućujući korisnicima rad s ekspertnim sustavima na višoj razini od moguće je u konvencionalnim jezicima umjetne inteligencije.

"školjke"

"Shells" su prazne "verzije postojećih ekspertnih sustava, odnosno gotovih stručnih sustava bez baze znanja. Primjer takve ljuske je EMYCIN (Empty MYCIN), koji je prazan MYCIN ekspertni sustav. da oni ne uopće zahtijevaju rad programera za izradu gotovog ekspertnog sustava. Sve što je potrebno su stručnjaci domene za popunjavanje baze znanja. Međutim, ako se određena domena ne uklapa dobro s modelom koji se koristi u određenoj ljusci, popunjavanje baza znanja u ovom slučaju je vrlo teška.

5. PROLOG - jezik logičkog
programiranje

5.1. Opće informacije o PROLOGU.

PROLOG (PROGRAMIRANJE U LOGICI) je logički programski jezik dizajniran za rješavanje problema u području umjetne inteligencije (izrada ES-a, prevođenje programa, obrada prirodnog jezika). Koristi se za obradu prirodnog jezika i ima moćne alate za dohvaćanje informacija iz baza podataka, a metode pretraživanja koje se u njemu koriste bitno se razlikuju od tradicionalnih.

Osnovne konstrukcije PROLOGA posuđene su iz logike. PROLOG nije proceduralni jezik, već deklarativni programski jezik. Nije usmjereno na razvoj rješenja, već na sistematiziran i formaliziran opis problema tako da rješenje proizlazi iz pisanog opisa.

Bit logičkog pristupa je da se stroju kao programu nudi ne algoritam, već formalni opis predmetnog područja i problema koji se rješava u obliku aksiomatskog sustava. Tada se potraga za rješenjem pomoću izlaza u ovom sustavu može povjeriti samom računalu. Glavni zadatak programera je uspješno predstaviti predmetno područje sustavom logičkih formula i s takvim skupom relacija na njemu koji najpotpunije opisuju zadatak.

Temeljna svojstva PROLOGA:

1) tražilica za zaključivanje i vraćanje

2) ugrađeni motor za usklađivanje uzoraka

3) jednostavna i lako promjenjiva struktura podataka

4) nedostatak pokazivača, operatora dodjele i skoka

5) prirodna rekurzija

Faze programiranja PROLOGUE:

1) objava činjenica o predmetima i odnosu među njima;

2) utvrđivanje pravila za odnos objekata i odnosa među njima;

3) formuliranje pitanja o objektima i odnosu među njima.

Teorijska osnova PROLOGA je grana simboličke logike koja se naziva predikatski račun.

Predikat Naziv je svojstva ili odnosa između objekata sa nizom argumenata.

<имя_предиката>(t1, t2, ..., tn)), t1, t2, ..., tn su argumenti

Na primjer, činjenica crna (mačka) napisana je pomoću predikata crna, koji ima jedan argument. Činjenica napisao (sholokhov, "TIHI DON") napisano pomoću predikata napisao koji ima dva argumenta.

Broj argumenata predikata naziva se arititet predikata i označava se s crnim / 1 (crni predikat ima jedan argument, njegova aritnost je jedan). Predikati možda nemaju argumente; arititet takvih predikata je 0.

Jezik Prolog izrastao je iz rada A. Colmerauera na obradi prirodnog jezika i samostalnog rada R. Kowalskog o primjeni logike u programiranju (1973.).

Najpoznatiji u Rusiji je programski sustav Turbo Prolog - komercijalna implementacija jezika za IBM-kompatibilna računala. Godine 1988. objavljena je mnogo moćnija verzija Turbo Prologa 2.0, uključujući poboljšano integrirano programsko okruženje, brzi prevodilac i alate za programiranje niske razine. Borland je ovu verziju distribuirao sve do 1990. godine, kada je PDC stekao monopol na korištenje izvornog koda kompajlera i dalje plasirao programski sustav pod imenom PDC Prolog.

Razvojni centar Prolog 1996. godine lansira na tržište sustav Visual Prolog 4.0. Visual Prolog okruženje koristi pristup nazvan "vizualno programiranje", u kojem se izgled i ponašanje programa definiraju pomoću posebnih alata za grafički dizajn bez tradicionalnog programiranja u algoritamskom jeziku.

Visual Prolog uključuje interaktivno vizualno razvojno okruženje (VDE - Visual Develop Environment), koje uključuje tekst i razne grafički urednik, alati za generiranje koda koji konstruiraju kontrolnu logiku (eksperti) i sučelje jezičnog proširenja vizualno programiranje(VPI - Visual Programming Interface), Prolog kompajler, skup raznih uključenih datoteka i knjižnica, uređivač linkova, datoteke koje sadrže primjere i pomoć.

5.2. Prijedlozi: činjenice i pravila

PROLOG Program se sastoji od rečenica, koje mogu biti činjenice, pravila ili upiti.

Činjenica- ovo je tvrdnja da se uočava neki specifičan odnos između objekata. Činjenica se koristi za prikaz jednostavnog odnosa između podataka.

Struktura činjenica:

<имя_отношения>(t1, t2, ..., tn)), t1, t2, ..., tn su objekti

Primjeri činjenica:

studiranje (ira, sveučilište). % Ira studira na sveučilištu

roditelj (ivan, aleksej). % Ivan je Aleksejev roditelj

programski_jezik (prolog). % Prolog je programski jezik

Skup činjenica je baza podataka... U obliku činjenice, program bilježi podatke koji su prihvaćeni kao istiniti i ne zahtijevaju dokaz.

pravila koriste se za uspostavljanje odnosa između objekata na temelju dostupnih činjenica.

Struktura pravila:

<имя_правила> :- <тело правила>ili

<имя_правила >ako<тело правила>

Lijeva strana pravila zaključivanja se zove glava pravila, a desna strana je tijelo... Tijelo se može sastojati od nekoliko uvjeta, odvojenih zarezima ili točkom i zarezom. Zarez znači logičku operaciju I, točka-zarez znači logičku operaciju ILI. Rečenice koriste varijable za sažimanje pravila zaključivanja. Varijable vrijede samo u jednoj rečenici. Naziv u različitim rečenicama označava različite objekte. Sve rečenice moraju završiti točkom.

Primjeri pravila:

majka (X, Y): - roditelj (X, Y), žena (X).

student (X): - studij (X, institut); studiranje (X, sveučilište).

Pravilo se razlikuje od činjenice po tome što je činjenica uvijek istinita, a pravilo je istinito ako su istiniti svi iskazi koji čine tijelo pravila. Činjenice i pravila formiraju baza znanja.

Ako imate bazu podataka, možete pisati upit(meta) njoj. Zahtjev je formulacija problema koji program mora riješiti. Njegova je struktura ista kao kod pravila ili činjenice. Postoje stalni upiti i varijabilni upiti.

Stalni upiti omogućuju vam da dobijete jedan od dva odgovora: "da" ili "ne"

Na primjer, postoje činjenice:

zna (lena, tanja).

zna (lena, saša).

zna (sasha, tanya).

a) Poznaje li Lena Sašu?

upit: zna (lena, saša).

Proizlaziti: Da

b) Poznaje li Tanya Lenu?

upit zna (tanya, lena).

Proizlaziti: Ne

Ako je varijabla uključena u zahtjev, tumač pokušava pronaći takve vrijednosti za koje će zahtjev biti istinit.

a) Koga Lena poznaje?

upit: zna (Lena, X).

Proizlaziti:

X = tanja

X = saša

b) Tko poznaje Sašu?

upit: zna (X, saša).

Proizlaziti: X = Lena

Upiti mogu biti složeni, tj. sastojati se od nekoliko jednostavni upiti... Ujedinjuje ih znak ",", koji se shvaća kao logički veznik "i".

Pozivaju se jednostavni upiti podcilj, složeni upit traje pravo značenje kada je svaki podcilj istinit.

Da biste odgovorili imaju li Lena i Sasha zajedničke poznanike, trebali biste postaviti zahtjev:

zna (Lena, X), zna (Sasha, X).

Proizlaziti:

X = Tanja

5.4. Varijable u PROLOGU

Varijabla u PROLOGU ne smatra se dodijeljenom memorijskom lokacijom. Koristi se za označavanje objekta koji se ne može referencirati imenom. Varijabla se može uzeti u obzir lokalni naziv za neki predmet.

Naziv varijable mora početi s veliko slovo ili podvlake i sadrže samo slova, brojeve i donje crte: X, _y, AB, X1. Varijabla koja nije bitna zove se besplatno, varijabla koja ima vrijednost - konkretizirana.

Poziva se varijabla koja se sastoji samo od znaka podvlake anonimni a koristi se ako je njegovo značenje nebitno. Na primjer, postoje činjenice:

roditelj (Ira, Tanya).

roditelj (miša, tanja).

roditelj (Olya, Ira).

Potrebno je identificirati sve roditelje

upit: roditelj (x, _)

Proizlaziti:

X = Ira

X = Miša

X = Olja

Opseg varijable je tvrdnja. Unutar izjave, isto ime pripada istoj varijabli. Dvije izjave mogu koristiti isti naziv varijable na potpuno različite načine.

U PROLOGU nema operatora dodjele, njegovu ulogu ima operator jednakosti =. Cilj X = 5 može se smatrati usporedbom (ako X ima vrijednost) ili zadatkom (ako je X slobodan).

U PROLOGU ne možete napisati X = X + 5 za povećanje vrijednosti varijable. Treba koristiti novu varijablu: Y = X + 5.

5.5. Objekti i tipovi podataka u PROLOGU

Pozivaju se objekti podataka u PROLOGU Pojmovi... Pojam može biti konstantan, varijabilan ili složen pojam (struktura). Konstante su cijeli brojevi i realni brojevi (0, - l, 123,4, 0,23E-5), kao i atomi.

Atom- bilo koji niz znakova stavljen u navodnike. Navodnici se izostavljaju ako niz počinje malim slovom i sadrži samo slova, brojeve i donju crtu (to jest, ako se može razlikovati od zapisa varijable). Primjeri atoma:

abcd, “a + b”, “student Ivanov”, prolog, “Prolog”.

Struktura omogućuje kombiniranje nekoliko objekata u jednu cjelinu. Sastoji se od funktora (ime) i niza pojmova.

Broj komponenti u strukturi naziva se arititet strukture: podaci / 3.

Struktura može sadržavati drugu strukturu kao jedan od svojih objekata.

rođendan_datum (osoba ("Maša", "Ivanova"), podaci (15. travnja 1983.))

Domena u PROLOGU tip podataka je imenovan. Standardne domene su:

cijeli broj - cijeli brojevi.

realni - realni brojevi.

string - nizovi (bilo koji niz znakova zatvoren u navodnike).

char je jedan znak zatvoren u apostrofe.

simbol - niz latiničnih slova, brojeva i podvlaka koji počinje malim slovom ili bilo kojim nizom simbola u navodnicima.

5.6. Glavni dijelovi programa PROLOG

Program PROLOG se u pravilu sastoji od četiri dijela.

DOMENE- odjeljak koji opisuje domene (vrste). Odjeljak se koristi ako program koristi nestandardne domene.

Na primjer:

PREDIKATI - odjeljak za opisivanje predikata. Odjeljak se koristi ako program koristi nestandardne predikate.

Na primjer:

zna (ime, ime)

ime studenta)

KLAUZE - dio prijedloga. Upravo u ovom dijelu su ispisane rečenice: činjenice i pravila zaključivanja.

Na primjer:

zna (lena, ivan).

student (ivan).

poznat_učenik (X, Y): - zna (X, Y), učenik (Y).

CILJ - ciljni dio. Ovaj odjeljak bilježi zahtjev.

Na primjer:

znak_učenika (lena, X).

Najjednostavniji program može sadržavati samo odjeljak GOAL, na primjer:

napisati ("Unesite svoje ime:"), readln (ime),

napišite ("Bok", Ime, "!").

Vrhunski povezani članci