Towards Deep Blue: Un ghid pas cu pas pentru crearea unui AI simplu pentru jocul de șah. Inteligență artificială și baze de cunoștințe Proiect educațional șah și inteligență artificială

Acasă

cultură. Disertaţie. Cand. Ped.Sc. Rostov-pe-Don. 2003. 2. Azarova E.A. Forme distructive, educația familiei problemele actuale

modernitate, crime din ultima vreme: aspecte spirituale, morale și criminologice. - Rostov-pe-Don: Editura Universității Pedagogice de Stat din Rusia, 2005.

3. Gabdreva GSh. Principalele aspecte ale problemei anxietății în psihologie // Psiholog școlar. - 2004. - Nr. 8. - P. 9. 4. Enikolopov S.N. Probleme violența în familie

// Probleme de psihologie. -2002. -Nr 5-6.

5. Tseluiko V.M. Psihologia familiilor disfuncționale: o carte pentru profesori și părinți. - M.: Editura VLADOS-PRESS, 2003. 6.Shapar V.B. Psihologie practică

. Psihodiagnostica relațiilor dintre părinți și copii. -Rostov n/d: Phoenix, 2006.

© Azarova E.A., Zhulina G.N., 2016

A.I. Alifirov

Ph.D. ped. Științe, profesor asociat RGSU, Moscova, Federația Rusă

I.V. Mikhailova Ph.D. ped. Științe, profesor asociat RGSU, Moscova, Federația Rusă

„INTELEGENȚA ARTIFICIALĂ” LA ȘAH

Adnotare

Articolul examinează geneza utilizării software-ului și hardware-ului capabil să desfășoare o activitate intelectuală comparabilă cu activitatea intelectuală umană.

Cuvinte cheie

Tehnologii informatice în șah, programe de șah, șah. Astăzi, sub termenul „ inteligenţă artificială

„(AI) este înțeleasă ca teoria creării de software și hardware capabile să desfășoare o activitate intelectuală comparabilă cu activitatea intelectuală umană. Atunci când rezolvă probleme practice, aceștia folosesc cel mai adesea o sarcină din listă, crezând că dacă un sistem informatic este capabil să rezolva aceste probleme, apoi este un sistem AI Această listă include adesea jocul de șah, demonstrarea teoremelor, rezolvarea problemelor de diagnosticare dintr-un set inițial incomplet de date, înțelegerea limbajului natural, capacitatea de a învăța și de a auto-învăța, abilitatea de a clasifica. obiecte și capacitatea de a dezvolta noi cunoștințe bazate pe generare de noi reguli și modele pentru regularizarea cunoștințelor. Unul dintre cele mai importante probleme- Cibernetica a devenit o problemă a modului de îmbunătățire a managementului, a modului de îmbunătățire a procesului decizional. Unul dintre fondatorii ciberneticii, C. Shannon, a propus formalizarea și programarea șahului pentru a utiliza un computer de șah ca model pentru rezolvarea unor probleme similare de control. Autoritatea lui K. Shannon a fost atât de mare încât ideile sale au pus imediat bazele unui nou direcție științifică. Ideile lui K. Shannon au fost folosite în lucrările lui A. Turing, K. Zuse, D. Prinz.

Autor al teoriei informației. K. Shannon, a scris: „O mașină de șah este ideală pentru a începe, deoarece (1) problema este clar definită de operațiunile permise (mușcări) și scopul final (șahmat); (2) nu este prea simplu pentru a fi banal. , și nu prea greu de obținut o soluție satisfăcătoare (3) ei cred că șahul necesită „gândire” pentru a juca cu pricepere, rezolvarea acestei probleme ne va conduce fie să admirăm abilitățile gândirii mecanizate, fie să ne limităm conceptul de „; gândire" (4) Structura discretă a șahului se potrivește bine cu natura digitală a computerelor moderne."

Ulterior, șahul a devenit subiect de competiție între inteligența naturală și cea artificială și s-au jucat o serie de meciuri între cei mai importanți jucători de șah din lume împotriva computerelor. În 1995, într-un interviu acordat revistei populare Wired, G.K. Kasparov și-a subliniat viziunea despre jocul de șah: „Șahul nu este matematică, este fantezie și imaginație, este o logică umană și nu un joc cu un rezultat previzibil un set de formule sau algoritmi.” Doi ani mai târziu, supercomputerul DEEP BLUE, după ce l-a învins pe al 13-lea campion mondial G.K. Kasparova, într-o revanșă de șase meciuri, a eliminat problema capacităților inteligenței artificiale de șah de pe ordinea de zi. DEEP BLUE a stocat o bază de date completă cu toate jocurile în memorie și a analizat strategia exclusiv prin calcul. După meci G.K. Kasparov și-a schimbat punctul de vedere, admițând că: „Șahul este singurul domeniu în care poți compara intuiția și creativitatea umană cu puterea și mașinile”. Meciul a schimbat cursul dezvoltării atât a șahului clasic, cât și a celui pe computer. Asistența cu inteligența artificială a devenit utilizată pe scară largă în sistemul de instruire. DI. Bronstein, în cartea sa „David vs. Goliath” (2003), a scris: „Botvinnik credea că șahul este arta analizei, iar vremea improvizatorilor singuratici precum Andersen, Morphy, Zukertort a dispărut pentru totdeauna Trebuie să recunosc că Botvinnik s-a dovedit a avea dreptate „Băieții de la computer” au dus ideea despre necesitatea analizei acasă până la absurd. Nici măcar nu au ascuns faptul că șlefuiau variantele de deschidere . La turneul de la Linares (2000), ungurul Leko a recunoscut fără nicio umbră de jenă că tot jocul cu Anand a fost pe computer!

Lista literaturii folosite:

1. Alifirov A.I. Lucrări de orientare în carieră în școlile secundare scoli medii prin intermediul șahului / Alifirov A.I. // Probleme de dezvoltare a științei și educației: teorie și practică. Colectare lucrări științifice pe baza materialelor din International conferinta stiintific-practica 31 august 2015: în 3 părți. Partea a II-a. M.: „AR-Consult”, 2015 - p. 13-14.

2. Mihailova I.V., Alifirov A.I. Acțiuni tactice ale jucătorilor de șah / Mikhailova I.V., Alifirov A.I. // Rezultate cercetarea stiintifica Culegere de articole ale Conferinței internaționale științifice și practice. Editor executiv: Sukiasyan Asatur Albertovich (15 februarie 2016) la 16:00 Partea 3 - Ufa: AETERNA. -2016.S. 119-121.

3. Mihailova I.V., Alifirov A.I. Fundamentele teoretice și metodologice ale metodei de gândire cu schemele jucătorilor de șah / Mikhailova I.V., Alifirov A.I. // Rezultatele cercetării științifice Culegere de articole ale Conferinței internaționale științifice și practice. Editor executiv: Sukiasyan Asatur Albertovich (15 februarie 2016) la 16:00 Partea 3 - Ufa: AETERNA. - 2016. p. 123-125.

4. Mihailova I.V. Formarea tinerilor jucători de șah cu înaltă calificare folosind programe de șah pe calculator și internet: rezumatul autorului. dis. ...cad. ped. Științe: 13.00.04 / Mikhailova Irina Vitalievna; RGUFK. - M., 2005. - 24 p.

© Alifirov A.I., Mikhailova I.V., 2016

UDC 378.046.2

© Azarova E.A., Zhulina G.N., 2016

Candidat la Științe Pedagogice, Conf. univ. RGSU, Moscova, Federația Rusă V.V. Fedchuk, Ph.D.

Blagopoluchie LLC, metodolog instructor senior, Moscova, RF STUDIU AL NIVELULUI DE SĂNĂTATE FIZICĂ A ADOLESCENTILOR

„INTELEGENȚA ARTIFICIALĂ” LA ȘAH

Articolul discută problema sănătatea fizică adolescenților și influența diverșilor factori

Meciul este pierdut: computer versus om.

Gândire creativă, logică, experiență - calități care au permis unei persoane să conducă în lupta „om-mașină”. Se părea că aceste beneficii vor exista întotdeauna armă secretă o persoană, iar computerul va juca rolul de a „prinde din urmă”.

Dar a fost nevoie de foarte puțin timp pentru ca inteligența artificială să ajungă din urmă și să depășească pentru totdeauna oamenii în multe domenii, inclusiv în domeniul divertismentului intelectual.

Inteligența artificială învinge oamenii: unde și cum

Cubul Rubik
Acest puzzle este cunoscut în întreaga lume. Milioane de oameni încearcă să finalizeze sarcina și să asambleze cubul corect, iar unii chiar concurează în viteza de asamblare. Recordul uman a fost stabilit de Lucas Etter, în vârstă de 14 ani, din Statele Unite, care a rezolvat puzzle-ul în 4,904 secunde. Incredibil, nu-i așa? Dar acest rezultat a fost depășit de robotul creat de doi entuziaști Jay Flatland și Paul Rose: rezultatul robotului a fost de 1,047 secunde.


Datorită camerelor încorporate, dintre care sunt patru, computerul evaluează poziția și selectează cel mai bun algoritm de acțiune. Sistemul se bazează pe formula Kotzebue (asamblare în 20 de mișcări). Aproape niciun om poate rezolva un cub Rubik în mai puțin de 1 secundă.
0:1 în favoarea inteligenței artificiale.

"Othello"
Apogeul popularității acestui joc a avut loc la începutul anilor 70 ai secolului trecut. Esența jocului este să plasezi jetoane pe terenul de joc (8x8 celule): trebuie să folosești jetoane de culoarea ta pentru a bloca rândurile de jetoane ale adversarului pe ambele părți, apoi jetoanele își schimbă culoarea și merg la adversarul tău. Victoria revine celui care a ocupat cea mai mare suprafață.


În 1980, campionul mondial Othello a fost Hiroshi Inoue, care a învins cu ușurință programul Moor cu 5:1.
Mai târziu, programele au învățat să calculeze mișcările adversarului (cu aproximativ 25 de mișcări), iar când actualul campion mondial Takeshi Murakami s-a confruntat cu sistemul Logistello într-o revanșă în 1997, scorul a fost zdrobitor de 0:6 în favoarea software-ului.

table
Inteligența artificială își datorează avantajul în table față de oameni campionului mondial de șah prin corespondență (și mai sunt și alții) Hans Berliner, care a scris programul BKG 9.8. Și în 1979, programul s-a dovedit a fi mai puternic decât campionul mondial la table Luigi Villa.


Se crede că computerul a avut noroc în acel joc (zarurile bune au căzut de mai multe ori), dar nimeni altcineva nu a vrut să lupte într-o revanșă repetă, mai ales că software-ul a fost îmbunătățit de mai multe ori de atunci.

Şah
Sistemele de șah au început să fie dezvoltate la mijlocul secolului al XX-lea, evoluțiile aparțineau IBM. Dar, din cauza faptului că programul necesita calcule serioase și lungi, această întreprindere a trebuit să fie amânată cu 30 de ani. În 1996, „creierul de șah” - computerul Deep Blue - a fost înfruntat cu Garry Kasparov.


Meciul s-a încheiat în favoarea bărbatului: 3 victorii, 2 egaluri, 1 înfrângere. Un an mai târziu, meciul s-a repetat, iar de data aceasta Deep Blue a fost mai pregătit. Desigur, sistemul a evaluat 200 de milioane de poziții pe secundă. Și deși Harry a vrut să obțină și mai târziu, IBM a refuzat, considerând că este inutil.

Dame (un tip de dame)
Marion Tinsley a fost o campioană de checker de-a lungul carierei sale. Iar când în 1992 a întâlnit sistemul dezvoltat la Universitatea din Alberta (Canada), victoria a fost a lui. Din 39 de jocuri - 4 victorii, 2 înfrângeri și 33 de egaluri.


Doi ani mai târziu, a avut loc o revanșă, dar Tinsley s-a retras din competiție din cauza unor probleme de sănătate (la momentul refuzului său erau 6 meciuri egale), iar victoria a revenit sistemului. De atunci, inteligența artificială a devenit mult mai puternică: în 2007, canadienii au anunțat creația sistem ideal, și nimeni nu mai încearcă să-l bată la dame.

Scrabble
Triumful computerului în acest joc a fost ușor în prima rundă: campionul mondial David Boyes a fost învins în 2006 de rivalul său robotic Quackle.


Apropo, acest program este disponibil pe internet și puteți concura cu el și poate veți aduce victoria echipei „Man”.

Merge
Acest joc a apărut în China antică în urmă cu mai bine de două mii de ani, dar în ciuda unei experiențe atât de lungi în joc, oamenii încă au pierdut. Pe teren (19x19), doi jucători își plasează pietrele (alb/negru), câștigă cine marchează mai multe puncte (se numără jetoanele aranjate într-o linie). Pe de o parte, totul este simplu, dar interesul constă în varietatea de opțiuni și mișcări posibile.


De asemenea, a fost interesant pentru dezvoltatorii AlphaGo (creat sub auspiciile Google) să creeze un sistem care să poată calcula mii de opțiuni. În primul rând, inteligența artificială și-a încercat mâna cu alte software-uri, iar când din 500 de jocuri 499 au fost pentru AlphaGo, s-a înfruntat de trei ori campion european Fan Hui. Campioana nu a avut nicio sansa: 5:0.

televizor
Îți place să răspunzi la întrebări la emisiunile de chestionare TV? Dezvoltatorii robotului Watson de la IBM, de asemenea, nu au putut rezista, iar în 2011 Watson a apărut ca participant la emisiunea de televiziune intelectuală „Jeopardy!”. În ciuda faptului că adversarii săi erau deținătorii recordului emisiunii - Brad Rutter și Ken Jennings - el a câștigat, iar milionul de dolari câștigat a fost donat unor organizații de caritate.


Și deși computerul și-a arătat deja superioritatea intelectuală și logică față de oameni, el continuă să se dezvolte. Astfel, Alibaba Group și Microsoft (dezvoltările au fost realizate în paralel) au prezentat inteligența artificială, care s-a dovedit a fi mai puternic decât omulîn înțelegerea informațiilor citite.
Testul de la Universitatea Stanford constă din peste 100 de mii de întrebări, care se bazează pe cinci sute de articole din biblioteca Wikipedia.

Cel mai bun scor pentru o persoană este de 82,304 puncte, totalul lui Alibaba este de 82,44, rețea neuronală Microsoft – 82.605. rezultatele indică faptul că inteligența artificială este capabilă să răspundă la orice întrebări cu o mare acuratețe, ceea ce înseamnă că tehnologiile pot fi folosite pentru a servi clienții, pacienții, vizitatorii muzeului etc.

Jocurile pe calculator au fost, de asemenea, captivate de program. Programul a bătut programul: cine ar fi crezut că acest viitor este atât de aproape? Popularul joc Quake III, în care jucătorii sunt gladiatori, este foarte popular în e-sporturile. Dar cei mai buni aici nu au fost oamenii, ci o echipă de roboți DeepMind creată de o divizie a Google. Și deși bătălia s-a desfășurat într-o versiune redusă, conform calculelor cu o variație de 73%, bot-ul ar fi câștigat orice competiție.


Este o asemenea superioritate a inteligenței artificiale periculoasă sau nu? Nimeni nu poate răspunde sigur. Și în cele din urmă, acest răspuns nu va fi cheia, pentru că principalul lucru rămâne nu faptul că o persoană este inferioară unui computer, ci dacă putem folosi acest potențial în beneficiul nostru. După cum vedem, inteligența artificială învinge oamenii și nu lasă nicio șansă de câștig.

Subiect, vârsta elevilor

Informatica si TIC, clasa a 10-a

Scurt rezumat al proiectului

Proiectul a fost dezvoltat în cadrul disciplinei „Informatică și TIC” pentru elevii din clasele 10-11

Întrebări care ghidează proiectul

Întrebare fundamentală

Poate un computer să înlocuiască o persoană?

Probleme problematice

1. Poate un computer în sine să pună probleme și să le rezolve?

2. Este un computer capabil să reproducă toate acțiunile și gândurile umane?

3. Este un computer capabil să controleze o persoană?

Întrebări de studiu

1. Ce probleme rezolvă un computer?

2. Calculatorul se autoinvata?

3. Pot mașinile să înlocuiască oamenii?

4. Inteligenta artificiala=Inteligenta umana?

5. Este necesar să se supravegheze funcționarea unui computer?

6. Este posibil să puneți un robot „în capul mesei”?

7. Poate un computer să gândească?

8. Este posibil să înlocuim creierul uman cu unul artificial?

9. Sunt oamenii gata să încredințeze toată munca roboților?

Planul de proiect

Prezentarea situatiei problematice:

Profesorul trebuie să facă brainstorming cu elevii pentru a identifica cunoștințele existente ale elevilor cu privire la problemă, motivația, înclinațiile și interesele acestora. Instrumentul face brainstorming folosind o prezentare de lansare. Cu ajutorul unei prezentări, profesorul creează o situație problemă, organizează o sesiune de brainstorming, discută problemele apărute, propune ipoteze și distribuie elevii în grupuri tematice ținând cont de interesele lor.

Lucrați la proiect:

Pe stadiu inițialÎn timpul lucrului la proiect, profesorul ajută fiecare grup tematic să atribuie roluri, să discute strategia de cercetare, modalități de căutare a informațiilor, metode de cercetare și posibilități de formatare a rezultatelor lucrării. Rezultatul este plan individual activități. În continuare, cercetarea independentă și munca de căutare a studenților începe în conformitate cu planul. În această etapă, elevii colectează informații cu privire la subiectul unei probleme problematice în enciclopedii, manuale și pe Internet, discută informațiile colectate într-un grup, dezvoltă instrumente de cercetare, efectuează cercetări, compară rezultatele acesteia cu informațiile colectate și trag concluzii care va răspunde la întrebarea problematică. Profesorul trebuie să se concentreze pe discuții intermediare, discuții în cadrul grupurilor și consultări cu profesorii de materii. Fișa de autoevaluare va ajuta participanții la proiect să înțeleagă nivelul de creștere personală.

Înregistrarea rezultatelor activitati ale proiectului:

Rezultatele sunt planificate să fie prezentate sub formă de prezentare, broșură sau articol wiki, așa că aici poate fi necesar să vă consultați cu un profesor de informatică la una dintre consultări, trebuie să discutați criteriile de evaluare a acestor produse cu; elevii. În același timp, performanța grupului este în curs de pregătire, astfel încât criteriile de evaluare trebuie să includă puncte pentru evaluarea performanței elevilor, capacitatea de a pune și de a răspunde la întrebări.

Apărare proiect, opoziție, discuție:

În timpul apărării, fiecare grupă își prezintă lucrările (prezentare, broșură sau articol wiki) și răspunde la întrebări. Evaluarea are loc folosind criterii dezvoltate de membrii grupului, membrii altor grupuri și profesori. Apărarea proiectului vă permite să răspundeți la întrebarea fundamentală și să formulați concluzii generale pe baza rezultatelor lucrării.

La terminarea lucrărilor:

Un element necesar al tuturor activităților proiectului este o analiză a muncii efectuate, în care profesorul discută cu elevii ce au făcut, ce nu a funcționat și de ce. În această etapă, vă puteți referi din nou la fișa de autoevaluare și puteți vedea creșterea calitativă a fiecărui participant. În plus, este posibil să organizați o reflecție pe un blog. Recompensarea grupurilor devine importantă. Rezultatele muncii pot fi găsite pe site-ul proiectului.

Carte de vizită a proiectului

Publicarea profesorului


Să ne uităm la unele concepte de bază, care ne va ajuta să creăm o inteligență artificială simplă care poate juca șah:

  • mutarea;
  • evaluare tablă de șah;
  • minimax;
  • cutoff alfa beta.

La fiecare pas, ne vom îmbunătăți algoritmul folosind una dintre aceste tehnici de programare a șahului testate în timp. Veți vedea cum fiecare dintre ele afectează stilul de joc al algoritmului.

Algoritmul terminat poate fi găsit pe GitHub.

Pasul 1. Generarea mutărilor și vizualizarea tablei de șah

Vom folosi bibliotecile chess.js pentru a genera mișcări și chessboard.js pentru a reda tabla. Biblioteca pentru generarea mutărilor implementează toate regulile șahului. Pe baza acestui lucru, putem calcula toate mișcările pentru o anumită stare de bord.

Vizualizarea funcției de generare a mișcării. Poziția inițială este folosită ca intrare, iar ieșirea este toate mișcările posibile din această poziție.

Folosirea acestor biblioteci ne va ajuta să ne concentrăm doar pe cea mai interesantă sarcină - crearea unui algoritm care găsește cea mai bună mișcare. Vom începe prin a scrie o funcție care returnează o mișcare aleatorie din toate mișcările posibile:

Var calculateBestMove = function(game) ( //Generarea tuturor miscarilor pentru o pozitie data var newGameMoves = game.ugly_moves(); return newGameMoves; );

Deși acest algoritm nu este un jucător de șah foarte solid, este un bun punct de plecare, deoarece este suficient de nivel pentru a ne juca:

Negrul joacă cu mișcări aleatorii

JSFiddle.

Pasul 2: Evaluarea consiliului

Acum să încercăm să înțelegem care parte este mai puternică într-o anumită poziție. Cel mai simplu mod de a realiza acest lucru este să calculați rezistența relativă a pieselor de pe tablă folosind următorul tabel:

Folosind funcția de scor, putem crea un algoritm care selectează mutarea cu cel mai mare scor:

Var calculateBestMove = funcție (joc) ( var newGameMoves = game.ugly_moves(); var bestMove = null; //Folosiți orice număr negativ var bestValue = -9999; for (var i = 0; i< newGameMoves.length; i++) { var newGameMove = newGameMoves[i]; game.ugly_move(newGameMove); //Возьмите отрицательное число, поскольку ИИ играет черными var boardValue = -evaluateBoard(game.board()) game.undo(); if (boardValue >bestValue) ( ​​​​bestValue = boardValue; bestMove = newGameMove ) ) returnează bestMove; );

Singura îmbunătățire tangibilă este că algoritmul nostru va mânca acum bucata dacă este posibil:

Negrul joacă cu o funcție simplă de scor

Puteți vedea ce s-a întâmplat în această etapă pe JSFiddle.

Pasul 3. Căutați arborele și minimax

Vom crea apoi un arbore de căutare din care algoritmul poate alege cea mai bună mișcare. Acest lucru se face folosind algoritmul minimax.

Nota traducere Într-unul dintre articolele noastre, ne-am ocupat deja - am învățat să creăm IA care nu poate fi învinsă la tic-tac-toe.

În acest algoritm, un arbore recursiv al tuturor mișcărilor posibile este explorat la o adâncime dată, iar poziția este evaluată la „frunzele” arborelui.

După aceasta revenim fie cel mai mic fie cea mai mare valoare copil către nodul părinte, în funcție de a cărui mișcare este calculată (adică încercăm să minimizăm sau să maximizăm rezultatul la fiecare nivel).

Vizualizarea minimax în poziție artificială. Cea mai bună mișcare pentru alb este b2-c3, așa că putem garanta că vom ajunge într-o poziție în care scorul este -50

Var minimax = funcție (adâncime, joc, isMaximisingPlayer) ( if (adâncime === 0) ( return -evaluateBoard(game.board()); ) var newGameMoves = game.ugly_moves(); if (isMaximisingPlayer) ( var bestMove = -9999; pentru (var i = 0; i< newGameMoves.length; i++) { game.ugly_move(newGameMoves[i]); bestMove = Math.max(bestMove, minimax(depth - 1, game, !isMaximisingPlayer)); game.undo(); } return bestMove; } else { var bestMove = 9999; for (var i = 0; i < newGameMoves.length; i++) { game.ugly_move(newGameMoves[i]); bestMove = Math.min(bestMove, minimax(depth - 1, game, !isMaximisingPlayer)); game.undo(); } return bestMove; } };

Cu minimax, algoritmul nostru începe să înțeleagă tacticile de bază ale șahului:

Minimax cu nivel de adâncime 2

Puteți vedea ce s-a întâmplat în această etapă pe JSFiddle.

Eficacitatea minimax depinde în mare măsură de adâncimea de căutare realizabilă. Acesta este ceea ce vom îmbunătăți în pasul următor.

Pasul 4. Tăiere alfa-beta

Poziții de care nu avem nevoie dacă se folosește tăierea alfa-beta. Arborele este vizitat în ordinea descrisă.

Cu tăierea alfa-beta, obținem o îmbunătățire semnificativă a minimax, așa cum se arată în următorul exemplu:

Numărul de poziții care trebuie evaluate în cazul unei căutări cu o adâncime de 4 și poziția de plecare prezentată în imagine.

Puteți vedea ce s-a întâmplat în această etapă pe JSFiddle.

Pasul 5: Funcția de evaluare îmbunătățită

Funcția de scor inițială este destul de naivă, deoarece pur și simplu numărăm punctele pieselor care se află pe tablă. Pentru a o îmbunătăți, vom începe să luăm în considerare poziția figurilor. De exemplu, un cavaler din centrul tablei este „mai scump” deoarece are mai multe mișcări disponibile și, prin urmare, este mai activ decât un cavaler de pe marginea tablei.

Grishanin E.A. Durin S.V. Cuprins 1. Ce este inteligența artificială? 2. Despre baze de cunoștințe. 3. Sarcini de testare. Inteligenţă artificială. În anii 60 ai secolului al XX-lea, a apărut o nouă secțiune de informatică, numită „Inteligenta artificială”. ÎN dicţionar enciclopedic este scris: „Inteligenta (din latină intellectus - cunoaștere, înțelegere, rațiune) - capacitatea de a gândi, cunoaștere rațională”. Această abilitate este pe deplin caracteristică numai oamenilor. Subiectul de studiu al științei „Inteligenta artificială” este gândirea umană. Oamenii de știință caută un răspuns la întrebarea: cum gândește o persoană? Scopul acestei cercetări este de a crea un model de inteligență umană și de a-l implementa pe un computer. Oarecum simplificat, scopul de mai sus sună astfel: - Să învețe o mașină să gândească. Când începe să rezolve o problemă, o persoană adesea nu are un program clar de acțiune. El însuși construiește acest program pe măsură ce lucrează. De exemplu, când joacă șah, un jucător de șah cunoaște regulile jocului și are scopul de a câștiga jocul. Acțiunile lui nu sunt preprogramate. Ele depind de acțiunile adversarului, de poziția în dezvoltare pe tablă, de inteligență și experiență personală jucător de șah. Există multe alte tipuri activitatea umană, care nu poate fi programat în prealabil. De exemplu, compunerea muzicii și a poeziei, demonstrarea unei teoreme, traducerea literară din limba straina , diagnosticul și tratamentul bolilor și multe altele. Știți bine că un computer efectuează orice lucru conform unui program. Programele sunt scrise de oameni, iar computerul le execută în mod formal. Dezvoltatorii sistemelor de inteligență artificială încearcă tocmai să învețe o mașină, ca o persoană, să construiască în mod independent un program al acțiunilor sale pe baza condițiilor problemei. Puteți spune și asta: scopul este de a transforma computerul dintr-un interpret formal într-un interpret intelectual. Program formal de date executant Executarea rezultatelor programului Date executor inteligent Construirea programului Executarea rezultatelor programului Model de funcționare a executorului formal și intelectual Orice sistem de inteligență artificială funcționează într-un domeniu specific (diagnostic medical, legislație, matematică, economie etc. .). Ca un specialist, un calculator trebuie să aibă cunoștințe într-un domeniu dat. Cunoștințele dintr-un anumit domeniu, formalizate într-un anumit mod și stocate în memoria computerului, se numesc bază de cunoștințe de calculator. De exemplu, doriți să utilizați un computer pentru a rezolva probleme de geometrie. Dacă o carte de probleme conține 500 de probleme cu conținut diferit, atunci cu utilizarea tradițională a computerului va trebui să scrieți 500 de programe. Dacă un specialist în inteligență artificială preia această problemă, o va aborda cu totul altfel. El va pune cunoștințele de geometrie în computer (la fel cum profesorii pun cunoștințe în tine). Pe baza acestor cunoștințe și folosind un algoritm special de raționament logic, computerul va rezolva oricare dintre cele 500 de probleme. Pentru a face acest lucru, va fi suficient să-i spuneți doar starea problemei. Sistemele de inteligență artificială funcționează pe baza bazelor de cunoștințe încorporate în ele. Fiecare școlar știe că pentru a rezolva orice problemă nu este suficient să-ți amintești regulile, legile, formulele, dar trebuie să fii capabil să gândești, să raționezi și să aplici aceste cunoștințe. Gândirea umană se bazează pe două componente: stocul de cunoștințe și capacitatea de raționament logic. Aceasta duce la două sarcini principale atunci când se creează sisteme inteligente pe un computer: - modelarea cunoștințelor (dezvoltarea metodelor de formalizare a cunoștințelor pentru a le introduce în memoria computerului. o bază de cunoștințe); - modelarea raţionamentului (crearea de programe informatice care imită logica gândirii umane la rezolvarea diverselor probleme). Un tip de sistem de inteligență artificială este sistemele expert. De obicei, cuvântul „expert” se referă la o persoană care are cunoștințe și experiență vastă într-un anumit domeniu. Sistemele informatice expert conțin cunoștințe de acest nivel. Scopul sistemelor expert este de a oferi consultanță utilizatorilor și de a ajuta în luarea deciziilor. O astfel de asistență devine deosebit de importantă în situatii extreme, de exemplu, în condiții de accident tehnic, operare de urgență, la conducere vehicule . Calculatorul nu este supus stresului. El va găsi rapid soluția optimă, sigură și o va oferi persoanei. Cu toate acestea, decizia finală este luată de individ. Pe scurt despre principalul lucru Inteligența artificială (AI) este o ramură a informaticii. Subiectul studiului AI este gândirea umană; scopul este de a crea sisteme inteligente pe un computer. Exemple de domenii în care sunt create sisteme de inteligență artificială: șah și alte jocuri, scriere de poezie și muzică, traducere de texte dintr-o limbă în alta, robotică, criminalistică (identificare amprentă etc.), diagnostic medical. Sistemele de inteligență artificială funcționează pe baza cunoștințelor încorporate în ele într-o anumită zonă. Modelul de cunoștințe încorporat în memoria computerului se numește bază de cunoștințe de calculator. Gândirea umană se bazează pe două componente: stocul de cunoștințe și capacitatea de a raționa logic. Sistemele AI implementează un model de raționament (logica umană). Pe baza bazei de cunoștințe și a modelului de raționament, sistemul AI însuși își programează activitatea atunci când rezolvă orice problemă. Un sistem expert este un sistem AI care conține cunoștințele și experiența unui expert într-un anumit domeniu. Iată compoziția bazei de cunoștințe „Rude”: Fapte: Leo este tatăl lui Andrei; Leo este tatăl lui Peter; Andrey - tatăl lui Alexey; Peter - tatăl lui Mihai; Peter este tatăl lui Dmitry. Reguli: fiecare om este fiul tatălui său; bunicul - tatăl tatălui; frați - fii ai aceluiași tată; unchi - fratele tatălui; nepot - fiul fratelui; nepot – fiu de fiu. Pe baza acestor fapte și reguli, este posibilă, prin raționament logic, să se stabilească toate tipurile de legături familiale între bărbații acestei familii. Atenție la două caracteristici ale bazei de cunoștințe: - faptele sunt private, iar regulile sunt generale (corecte pentru orice familie); - baza de cunoștințe include doar fapte fundamentale. Într-adevăr, este suficient să știi cine este tatăl căruia pentru a putea, folosind regulile, să stabilești și alte legături de familie. Pe baza unei astfel de baze de cunoștințe, este posibil să se construiască un sistem expert în domeniul relațiilor de rudenie între bărbați. Pentru a-l folosi în relație cu o altă familie, este suficient să înlocuiți lista de fapte, iar regulile, desigur, vor rămâne aceleași. Comparând baza de date cu baza de cunoștințe, ajungem la concluzia: baza de date conține doar fapte, baza de cunoștințe conține fapte și reguli. Acasă Despre bazele de cunoștințe. Sunteți deja familiarizat cu conceptul de „bază de date”. O bază de date (DB) este un model de informații al unui sistem real din memoria computerului. S-a spus mai sus că o bază de cunoștințe (KB) este un model al cunoștințelor unei persoane într-un anumit domeniu. Să arătăm diferența dintre o bază de date și o bază de cunoștințe folosind un exemplu specific. Să luăm în considerare această problemă folosind exemplul legăturilor de familie între bărbați din aceeași familie. Iată cum arată ele sub forma grafică a unui arbore genealogic: Lev Peter Andrey Mikhail Dmitry Alexey Arborele genealogic Aici liniile reprezintă relația dintre tată (la nivelul superior) și fiu (la nivelul de jos). Legături de familie Bărbat Leu Fii Tată Bunic Frați Unchi Nepoți Nu știu Nu știu Nepoți Andrei, Petru Nu știu Nu știu Nu știu Andrei Alexey Lev Nu știu Petru Nu știu nu-l cunosc pe Mikhail Dmitry nu Peter Mikhail, Dmitry Lev Nu îl cunosc pe Andrei Nu îl cunosc pe Alexey nu Alexey Nu Andrei Lev nu nu Mihail Nu Peter Lev Dmitri Andrei nu nu Dmitri Nu Peter Lev Mihail nu nu nu Peter Andrey Alexey Mikhail Dmitry Tabelul 9.1 conține informații despre legăturile de familieîntre aceiaşi bărbaţi este prezentat în formă extinsă. Folosind un SGBD relațional, este ușor să creați o bază de date relațională bazată pe acest tabel. Adresându-te la ea cu cereri, poți determina cine este tatăl, bunicul sau fratele. Acest tabel reprezintă un model informativ al obiectului „familie”. Acum să trecem la construirea unei baze de cunoștințe. Subiectul aici îl reprezintă legăturile de familie între bărbați din aceeași familie. În inteligența artificială există diverse tipuri modele de cunoștințe. Vom lua în considerare doar unul dintre ele, care se numește modelul logic al cunoașterii. Această abordare este utilizată în sistemul de programare PROLOG (Prolog este discutat în partea a doua a cărții). Conform modelului logic, baza de cunoștințe este formată din fapte și reguli. Acum hai să dăm definiție generală conceptele de „fapt” și „regulă”. Un fapt este un mesaj (informație) despre un anumit eveniment, despre proprietatea unui anumit obiect, despre legătura acestuia cu alte obiecte. De exemplu, următoarele afirmații sunt fapte: - pin - conifer; - Columb a descoperit America în 1492; - densitatea apei este de 1 g/cm; - Regele Solomon - fiul regelui David; - Lev Tolstoi este un scriitor rus. O regulă este o afirmație care este mai generală decât un fapt. Regulile definesc unele concepte prin altele, stabilesc relația dintre diferitele proprietăți ale obiectelor și formulează legile naturii sau ale societății. O bază de cunoștințe este o colecție de fapte și reguli fundamentale într-un anumit domeniu. Recent, a apărut un nou „inginer de cunoștințe” de specialitate, a cărui sarcină este să oficializeze cunoștințele, să dezvolte baze de cunoștințe și să creeze sisteme de inteligență artificială pe baza acestora. Exemplul la care ne-am uitat este foarte simplu. Aici nu este greu să ghicim ce fapte sunt fundamentale și să formulezi un set complet de reguli. În domeniile mai complexe, această sarcină este mult mai dificilă. Adesea, doar un specialist major (expert) sau o echipă de specialiști cu cunoștințe vaste în acest domeniu o poate rezolva. Pe scurt despre principalul lucru. Modelul logic al cunoașterii într-un anumit domeniu este reprezentat de o bază de cunoștințe compusă din fapte și reguli. Un fapt este o informație despre un anumit eveniment, despre proprietatea unui anumit obiect, despre legătura acestuia cu alte obiecte. Regulile definesc unele concepte prin altele, stabilesc relația dintre diferitele proprietăți ale obiectelor și formulează legile naturii sau ale societății. Baza de cunoștințe include doar fapte fundamentale pentru o anumită domeniu de studiu Acasă Sarcini 1. 2. 3. 4. Sarcina nr. 1 Sarcina nr. 2 Sarcina nr. 3 Sarcina nr. apar în informatică A. În anii 50 B. În anii ’70 D. În anii 80 Corect Următorul Gândește-te mai departe Ce este o bază de cunoștințe A. O bază de cunoștințe este o proprietate specifică a unui eveniment? obiect particular, despre legătura sa cu alte obiecte B. O bază de cunoștințe este un set de fapte și reguli fundamentale într-o anumită arie C. O bază de cunoștințe este D. O bază de cunoștințe este o dezvoltare a unui enunț mai general decât. un fapt pentru a le introduce în memoria computerului ca bază de cunoștințe Ce este modelarea raționamentului A. Crearea de programe de calculator, Dezvoltarea unor metode care imită logica gândirii umane în rezolvarea diverselor probleme. formalizarea cunoștințelor pentru introducerea lor într-o lipire computerizată ca bază de cunoștințe. C. Acesta este un model de cunoaștere umană în D. Acesta este un algoritm pentru un domeniu specific. înregistrate în limba interpretului. Ce este FACT? A. Orice obiect format din B. Aceste informații despre compoziție și C. Un mesaj despre un anume D. Aceasta este o anumită ordine a mai multor părți interconectate și structura sistemului, prezentată grafic existând ca un singur întreg. formă. eveniment și proprietatea unui anumit obiect, legătura acestuia cu alte obiecte. combinând elementele care alcătuiesc sistemul.



Ce altceva de citit