SHRDLU este un program timpuriu de înțelegere a limbajului natural dezvoltat de Terry Winograd la MIT în 1968-1970 . A fost scris în Micro Planner și Lisp pe un computer DEC PDP-6 și a folosit un terminal grafic DEC . Ulterior, posibilitatea de redare tridimensională cu drepturi depline a „lumii” SHRDLU a fost introdusă în laboratorul de grafică computerizată de la Universitatea din Utah .
Numele SHRDLU este derivat din ETAOIN SHRDLU - aranjarea cheilor alfabetice pe linotipuri în conformitate cu scăderea frecvenței de apariție a literelor în limba engleză . În plus, Etaoin Shrdlu este numele unui linotip sensibil din povestea fantastică cu același nume [1] de Frederick Brown .
Utilizatorul a comunicat cu programul SHRDLU folosind expresii normale în limba engleză. La ordinele sale, SHRDLU a mutat obiecte simple într-o „lume bloc” simplificată: cuburi , conuri , bile și așa mai departe. Ceea ce a făcut SHRDLU unic a fost combinația a patru idei simple, a căror interacțiune a făcut apariția „înțelegerii” de către programul utilizatorului mult mai convingătoare.
Una dintre aceste idei este că lumea SHRDLU era atât de simplă încât setul complet de obiecte și locații putea fi descris prin poate nu mai mult de cincizeci de cuvinte diferite - substantive precum „bloc” sau „con”, verbe precum „așezați pe „ sau „mutați la” și adjective precum „mare” sau „albastru”. Toate combinațiile posibile ale acestor blocuri de limbaj de bază au fost elementare, iar programul, într-o anumită măsură, a înțeles cu succes ce avea în vedere utilizatorul.
SHRDLU a inclus și cea mai simplă memorie pentru menținerea contextului comunicării. Persoana poate cere SHRDLU să „Pune conul verde pe blocul roșu” și apoi „să dea jos conul”. Acel „con” despre care s-a discutat puțin mai devreme va fi îndepărtat. Dacă sunt date adjective suplimentare, în cele mai multe cazuri SHRDLU va putea căuta afirmații mai vechi pentru a găsi contextul potrivit. Persoana poate pune, de asemenea, întrebări despre istoria acțiunilor - de exemplu, poate întreba: „Ai ridicat ceva înainte de a ridica conul?”
Un efect secundar al acestei memorii și al tuturor regulilor originale cu care SHRDLU a fost livrat este capacitatea programului de a răspunde la întrebări despre ceea ce a fost și nu a fost posibil în lume. De exemplu, SHRDLU și-ar putea da seama că blocurile ar putea fi stivuite unul peste altul, uitându-se la exemple și, de asemenea, să motiveze că triunghiurile nu ar putea fi stivuite după ce a încercat să o facă singură. „Lumea” conținea cea mai simplă fizică , astfel încât blocurile să poată cădea sau stau, indiferent de analizatorul de limbă .
În cele din urmă, SHRDLU și-ar putea aminti denumirile date obiectelor și locația acestor obiecte. De exemplu, o persoană ar putea spune: „O turlă este un triunghi mic deasupra unui dreptunghi înalt”, iar apoi SHRDLU ar putea răspunde la întrebări despre turle din lumea ei bloc, precum și să creeze altele noi.
Iată un exemplu luat din faimosul demo SHRDLU:
Persoană: Ridică un bloc mare roșu.
Computer: OK.
Persoana: Prinde piramida.
Computer: Nu înțeleg la ce piramidă vrei să spui.
Persoană (răzgândindu-se): Găsiți un bloc care este mai înalt decât cel pe care îl țineți și puneți-l în cutie.
Computer: Prin „el”, presupun că te referi la blocul care este mai înalt decât cel pe care îl țin eu.
Computer: OK.
Persoana: Ce contine cutia?
Computer: Piramida albastră și blocul albastru.
Persoană: Pe ce este susținută piramida?
Computer: Cutia.
Persoană: Câte blocuri nu sunt în cutie?
Computer: Patru dintre ei.
Persoana: Cel puțin unul dintre ele este mai îngust decât cel pe care ți-am spus să o ridici?
Computer: Da, cubul roșu.
etc.
Traducerea exemplului în rusă:
Om: Ridică blocul roșu mare.
Computer: OK.
Omul: Ia piramida.
Computer: Nu înțeleg la ce piramidă vrei să spui.
Om (după ce s-a răzgândit): Găsiți un bloc care este mai înalt decât cel pe care îl țineți și puneți-l în cutie.
Computer: Prin „el”, presupun că te referi la blocul care este mai înalt decât ceea ce țin eu.
Computer: OK.
Persoană: Ce este în cutie?
Computer: piramidă albastră și bloc albastru.
Barbat: Ce sustine piramida?
Computer: Sertar.
Persoană: Câte blocuri nu sunt în cutie?
Computer: Patru.
Om: Există unul mai îngust decât cel pe care ți-am spus să o ridici?
Computer: Da, cub roșu.
etc.
Rezultatul a fost o demonstrație de mare succes a inteligenței artificiale . Acest lucru le-a oferit altor cercetători AI o perspectivă prea optimistă, care, totuși, a dispărut în scurt timp, deoarece sistemele ulterioare s-au luptat să facă față situațiilor realiste care au expus incertitudinea și complexitatea lumii reale. Continuarea lucrărilor în direcția descoperită de SHRDLU a avut tendința de a crește cantitatea de informații gestionată de program, ducând la lucrări precum Cyc .
După ce s-a întâmplat acest lucru, Winograd s-a distanțat de SHRDLU și AI, crezând că SHRDLU era o zonă de cercetare fără fund. S-a îndepărtat de ideile originale, mecanicist-rationale și s-a îndreptat către filozofia , hermeneutica și fenomenologia lui Heidegger [2] , după care a trecut la problemele interfeței om-mașină [3] .