Stoupat (kognitivní architektura) - Soar (cognitive architecture)

Soar je kognitivní architektura , kterou původně vytvořili John Laird , Allen Newell a Paul Rosenbloom na univerzitě Carnegie Mellon . (Rosenbloom nadále sloužil jako spoluřešitel po přesunu na Stanfordskou univerzitu , poté na Institut informačních věd University of Southern California .) Nyní jej udržuje a vyvíjí výzkumná skupina Johna Lairda na University of Michigan .

Cílem projektu Soar je vyvinout pevné výpočetní stavební bloky nezbytné pro obecné inteligentní agenty - agenty, kteří mohou provádět širokou škálu úkolů a kódovat, používat a učit se všechny typy znalostí, aby realizovali celou škálu kognitivních schopností lidé, jako je rozhodování, řešení problémů, plánování a porozumění přirozenému jazyku. Je to jak teorie toho, co je poznání, tak výpočetní implementace této teorie. Od svých počátků v roce 1983 jako teze Johna Lairda ji vědci AI široce používají k vytváření inteligentních agentů a kognitivních modelů různých aspektů lidského chování . Nejaktuálnějším a nejobsáhlejším popisem Soar je kniha The Soar Cognitive Architecture z roku 2012.

Teorie

Soar ztělesňuje několik hypotéz o výpočetních strukturách , které jsou základem obecné inteligence , z nichž mnohé jsou sdíleny s dalšími kognitivními architekturami, včetně ACT-R , kterou vytvořil John R. Anderson , a LIDA , kterou vytvořil Stan Franklin . V poslední době byl důraz na Soar kladen na obecnou AI (funkčnost a účinnost), zatímco důraz na ACT-R byl vždy kladen na kognitivní modelování (detailní modelování lidského poznání).

Původní teorie poznání, která je základem Soar, je hypotéza problémového prostoru, která je popsána v knize Allena Newella Unified Theories of Cognition . a sahá až k jednomu z prvních AI systémů vytvořených, Newell, Simon a Shaw ‚s Logic teoretik , nejprve představil v roce 1955. problému prostoru hypotéza tvrdí, že všechny cílená chování může být obsazen jako probírat prostoru možných stavů ( problémový prostor ) při pokusu o dosažení cíle. V každém kroku je vybrán jeden operátor a poté aplikován na aktuální stav agenta, což může vést k interním změnám, jako je například získání znalostí z dlouhodobé paměti nebo modifikace nebo externí akce ve světě. (Název Soar je odvozen z tohoto základního cyklu State, Operator, and Result; nicméně již není považován za zkratku.) Hypotéza problémového vesmíru je taková, že veškeré chování, dokonce i složitá činnost, jako je plánování, je rozložitelné. do sekvence výběru a aplikace primitivních operátorů, která při mapování na lidské chování trvá ~ 50 ms.

Druhou hypotézou Soarovy teorie je, že ačkoliv v každém kroku lze vybrat pouze jednoho operátora, což vynucuje sériové zúžení, procesy výběru a aplikace jsou implementovány prostřednictvím paralelních spouštění pravidel, která poskytují kontextově závislé získávání procedurálních znalostí.

Třetí hypotéza je, že pokud jsou znalosti pro výběr nebo použití operátora neúplné nebo nejisté, dojde k slepé uličce a architektura automaticky vytvoří substát. V substátu se rekurzivně používá stejný proces řešení problémů, ale s cílem získat nebo objevit znalosti, aby rozhodování mohlo pokračovat. To může vést k hromadě substrátů, kde přirozeně vznikají tradiční problémové metody, jako je plánování nebo rozklad hierarchického úkolu . Když výsledky vytvořené v substátu vyřeší slepou uličku, substrát a související struktury budou odstraněny. Celkový přístup se nazývá Universal Subgoaling.

Tyto předpoklady vedou k architektuře, která podporuje tři úrovně zpracování. Na nejnižší úrovni je zdola nahoru, paralelní a automatické zpracování. Další úroveň je deliberativní úroveň, kde se znalosti z první úrovně používají k návrhu, výběru a použití jediné akce. Tyto dvě úrovně implementují rychlé a kvalifikované chování a zhruba odpovídají úrovni zpracování systému Kahneman System 1. Složitější chování vzniká automaticky, když jsou znalosti neúplné nebo nejisté, a to prostřednictvím třetí úrovně zpracování pomocí substrátů, což zhruba odpovídá systému 2.

Čtvrtá hypotéza v Soar je, že základní struktura je modulární, ale ne z hlediska modulů založených na úkolech nebo schopnostech, jako je plánování nebo jazyk, ale místo toho jako moduly nezávislé na úkolu, které zahrnují: modul rozhodování; paměťové moduly (krátkodobé prostorové/vizuální a pracovní paměti; dlouhodobé procedurální, deklarativní a epizodické paměti), učební mechanismy spojené se všemi dlouhodobými paměťmi; a percepční a motorické moduly. Níže jsou popsány další předpoklady o konkrétních vlastnostech těchto vzpomínek, včetně toho, že veškeré učení je online a přírůstkové.

Pátá hypotéza je, že paměťové prvky (kromě těch v prostorové/vizuální paměti) jsou reprezentovány jako symbolické, relační struktury. Hypotéza, že pro obecnou inteligenci je nezbytný symbolický systém, je známá jako hypotéza systému fyzických symbolů . Důležitým vývojem v Soar je, že všechny symbolické struktury mají přidružená statistická metadata (jako jsou informace o aktuálnosti a frekvenci používání nebo očekávaná budoucí odměna), která ovlivňují získávání, udržování a učení se symbolických struktur.

Architektura

Cyklus zpracování - rozhodovací postup

Hlavní cyklus zpracování Soar vychází z interakce mezi procedurální pamětí (její znalostí o tom, jak věci dělat) a pracovní pamětí (její reprezentací aktuální situace) za účelem podpory výběru a aplikace operátorů. Informace v pracovní paměti jsou reprezentovány jako symbolická struktura grafu , zakořeněná ve stavu. Znalosti v procedurální paměti jsou reprezentovány jako pravidla if-then (sady podmínek a akcí), která jsou neustále porovnávána s obsahem pracovní paměti. Když podmínky pravidla odpovídají strukturám v pracovní paměti, spustí se a provede své akce. Tato kombinace pravidel a pracovní paměti se také nazývá produkční systém . Na rozdíl od většiny produkčních systémů v Soar střílí všechna pravidla, která se shodují, paralelně.

Místo toho, aby jádrem rozhodování byl výběr jediného pravidla, rozhodování Soar probíhá prostřednictvím výběru a aplikací operátorů , které jsou navrhovány, vyhodnocovány a uplatňovány podle pravidel. Operátor je navržen podle pravidel, která testují aktuální stav a vytvářejí reprezentaci operátora v pracovní paměti, stejně jako přijatelnou preferenci , která naznačuje, že operátor by měl být zvažován pro výběr a aplikaci. Další pravidla se shodují s navrhovaným operátorem a vytvářejí další preference, které je porovnávají a vyhodnocují oproti jiným navrhovaným operátorům. Předvolby jsou analyzovány rozhodovacím postupem, který vybere preferovaného operátora a nainstaluje jej jako aktuálního operátora do pracovní paměti. Pravidla, která odpovídají aktuálnímu operátorovi, se poté aktivují a provedou změny v pracovní paměti. Změnami v pracovní paměti mohou být jednoduché závěry, dotazy pro načítání z dlouhodobých sémantických nebo epizodických pamětí Soar, příkazy k motorickému systému k provádění akcí v prostředí nebo interakce s prostorovým vizuálním systémem (SVS), což je pracovní paměť. rozhraní k vnímání. Tyto změny pracovní paměti vedou k navrhování a vyhodnocování nových operátorů, po nichž následuje výběr jednoho a jeho aplikace.

Posílení učení

Soar podporuje posilování učení , které ladí hodnoty pravidel, která vytvářejí numerické preference pro hodnocení operátorů, na základě odměny. Aby byla zajištěna maximální flexibilita, existuje v pracovní paměti struktura, kde se vytváří odměna.

Podchody, substráty a kusy

Pokud preference operátorů nepostačují k určení výběru jednoho operátora nebo neexistují dostatečná pravidla pro použití operátora, nastává slepá ulička. V reakci na slepou uličku se v pracovní paměti vytvoří náhradník, jehož cílem je vyřešit slepou uličku. Další procedurální znalosti pak mohou navrhovat a vybírat operátory v substátu, aby získali další znalosti, a buď vytvořit preference v původním stavu, nebo tento stav upravit, aby byla slepá ulička vyřešena. Substáty poskytují prostředky pro komplexní uvažování na vyžádání, včetně dekompozice hierarchického úkolu, plánování a přístupu k deklarativním dlouhodobým vzpomínkám. Jakmile je slepá ulička vyřešena, všechny struktury v substátu jsou odstraněny s výjimkou jakýchkoli výsledků. Soarův mechanismus blokování kompiluje zpracování v substátu, což vedlo k výsledkům do pravidel. V budoucnosti se naučená pravidla v podobných situacích automaticky spustí, takže nevznikne slepá ulička, která postupně převádí složité uvažování na automatické/reaktivní zpracování. V poslední době byl celkový postup Universal Subgoaling rozšířen o mechanismus cíleného a automatického rozšiřování znalostní báze, který umožňuje vyřešit slepou uličku rekombinací znalostí inovativního a na problém orientovaného poznání, které vlastní agent Soar.

Symbolický vstup a výstup

K symbolickému vstupu a výstupu dochází prostřednictvím struktur pracovní paměti připojených k nejvyššímu stavu, kterému se říká vstupní odkaz a výstupní odkaz. Pokud jsou na výstupním odkazu v pracovní paměti vytvořeny struktury, jsou tyto převedeny do příkazů pro externí akce (např. Řízení motoru).

Prostorový vizuální systém a mentální obraznost

Aby podporoval interakci se systémy vidění a nesymbolické uvažování, má Soar svůj prostorový vizuální systém (SVS). SVS interně představuje svět jako graf scény , soubor objektů a dílčích objektů, každý s prostorovými vlastnostmi, jako je tvar, umístění, pozice, relativní poloha a měřítko. Agent Soar pomocí SVS může vytvářet filtry pro automatické extrahování funkcí a relací ze svého grafu scény, které jsou poté přidány do pracovní paměti. Agent Soar navíc může do SVS přidávat struktury a používat je pro mentální zobrazování. Agent například může v daném místě vytvořit hypotetický objekt v SVS a dotazovat se, zda koliduje s nějakými vnímanými objekty.

Sémantická paměť

Sémantická paměť (SMEM) v Soar je navržena tak, aby byla velmi velkou dlouhodobou pamětí struktur podobných faktům. Data v SMEM jsou reprezentována jako směrované cyklické grafy. Struktury lze ukládat nebo načítat pomocí pravidel, která vytvářejí příkazy ve vyhrazené oblasti pracovní paměti. Načtené struktury se přidají do pracovní paměti.

Struktury SMEM mají aktivační hodnoty, které představují frekvenci nebo aktuálnost využití každé paměti, implementující aktivační schéma základní úrovně původně vyvinuté pro ACT-R. Během načítání se načte struktura v SMEM, která odpovídá dotazu a má nejvyšší aktivaci. Soar také podporuje aktivaci šíření , kde se aktivace šíří ze struktur SMEM, které byly načteny do pracovní paměti do jiných dlouhodobých pamětí, se kterými jsou propojeny. Tyto vzpomínky zase šířily aktivaci do vzpomínek jejich sousedů s určitým úpadkem. Aktivace šíření je mechanismus, který umožňuje aktuálnímu kontextu ovlivňovat vyhledávání ze sémantické paměti.

Epizodická paměť

Epizodická paměť (EPMEM) automaticky zaznamenává snímky pracovní paměti v dočasném proudu. Předchozí epizody lze načíst do pracovní paměti pomocí dotazu. Po načtení epizody lze načíst další (nebo předchozí) epizodu. Agent může použít EPMEM k postupnému přehrávání epizod ze své minulosti (což jí umožňuje předpovídat účinky akcí), získávání konkrétních vzpomínek nebo dotazování na epizody s určitými strukturami paměti.

Učení se

Každá z dlouhodobých vzpomínek společnosti Soar má přidružené online učební mechanismy, které vytvářejí nové struktury nebo upravují metadata na základě zkušeností agenta. Například Soar se učí nová pravidla pro procedurální paměť prostřednictvím procesu zvaného blokování a pomocí posilovacího učení ladí pravidla zahrnutá ve výběru operátorů.

Vývoj agenta

Standardní přístup k vývoji agenta v Soar začíná psaním pravidel, která jsou načtena do procedurální paměti, a inicializací sémantické paměti s vhodnými deklarativními znalostmi. Proces vývoje agenta je podrobně vysvětlen v oficiální příručce Soar a také v několika tutoriálech, které jsou k dispozici na webových stránkách výzkumné skupiny .

Software

Rozšíření Soar Cognitive Architecture od Johna Lairda, 2008.

Architektura Soar je udržována a rozšiřována výzkumnou skupinou Johna Lairda na University of Michigan. Současná architektura je napsána v kombinaci C a C ++ a je volně dostupná (licence BSD) na webových stránkách výzkumné skupiny .

Soar může komunikovat s externími jazykovými prostředími včetně C ++, Java, Tcl a Python prostřednictvím jazyka Soar Markup Language (SML). SML je primární mechanismus pro vytváření instancí agentů Soar a interakci s jejich I/O odkazy.

JSoar je implementace Soar napsaná v Javě. Spravuje ji společnost SoarTech , společnost pro výzkum a vývoj AI. JSoar pozorně sleduje implementaci architektury University of Michigan, ačkoli obecně neodráží nejnovější vývoj a změny této verze C/C ++.

Aplikace

Níže je uveden historický seznam různých oblastí aplikací, které byly implementovány v Soar. V Soaru bylo implementováno přes sto systémů, ačkoli drtivá většina z nich jsou úkoly nebo hádanky.

Hádanky a hry

Během své historie byl Soar používán k implementaci široké škály klasických AI hádanek a her, jako je Tower of Hanoi, Water Jug, Tic Tac Toe, Eight Puzzle, Misionáři a Cannibals a variace světa Blocks . Jedním z počátečních úspěchů Soar bylo ukázat, že mnoho různých slabých metod bude přirozeně vycházet ze znalosti úkolu, která byla v něm zakódována, což je vlastnost zvaná Universal Weak Method.

Konfigurace počítače

První rozsáhlou aplikací Soar byla R1-Soar, částečná reimplementace expertního systému R1 ( XCON ) od Paula Rosenblooma vyvinutého Johnem McDermottem pro konfiguraci počítačů DEC. R1-Soar prokázal schopnost Soar škálovat na středně velké problémy, používat rozklad a plánování hierarchického úkolu a konvertovat záměrné plánování a řešení problémů na reaktivní provádění pomocí blokování.

Porozumění přirozenému jazyku

NL-Soar byl systém pro porozumění přirozenému jazyku, který v Soar vytvořili Jill Fain Lehman, Rick Lewis, Nancy Green, Deryle Lonsdale a Greg Nelson. Zahrnovalo možnosti porozumění přirozenému jazyku, generování a dialog s důrazem na inkrementální analýzu a generování v reálném čase. NL-Soar byl použit v experimentální verzi TacAir-Soar a v NTD-Soar.

Simulovaní piloti

Druhá rozsáhlá aplikace Soar zahrnovala vývojové agenty pro použití ve školení v rozsáhlé distribuované simulaci. Dva hlavní systémy pro létání amerických taktických leteckých misí byly vyvinuty společně na University of Michigan a Information Sciences Institute (ISI) z University of Southern California. Michiganský systém se jmenoval TacAir-Soar a létal (v simulaci) americké vojenské taktické mise s pevnými křídly (jako podpora zblízka, údery, CAP , tankování a mise SEAD ). Systém ISI se jmenoval RWA-Soar a létal na rotačních (helikoptérových) misích. Mezi schopnosti začleněné do systémů TacAir-Soar a RWA-Soar patřila pozornost, situační povědomí a adaptace, plánování v reálném čase a dynamické přeplánování a komplexní komunikace, koordinace a spolupráce mezi kombinacemi agentů Soar a lidí. Tyto systémy se účastnily DARPA 's Synthetic Theatre of War (STOW-97) Advanced Concept Technology Demonstration (ACTD), což bylo v té době největší seskupení syntetických látek ve společném bitevním prostoru po dobu 48 hodin, a zahrnovaly školení personál aktivní služby. Tyto systémy prokázaly životaschopnost použití agentů AI pro rozsáhlé školení.

PÁRA

Jedním z důležitých růstů projektu RWA-Soar byl vývoj STEAM od Milind Tambe , rámce pro flexibilní týmovou práci, ve kterém agenti udržovali modely svých spoluhráčů pomocí rámce společných záměrů Cohen & Levesque .

NTD-stoupat

NTD-Soar byla simulací testovacího ředitele NASA (NTD), osoby odpovědné za koordinaci přípravy raketoplánu NASA před startem. Byl to integrovaný kognitivní model, který zahrnoval mnoho různých komplexních kognitivních schopností, včetně zpracování přirozeného jazyka , pozornosti a vizuálního vyhledávání a řešení problémů v širokém agentském modelu.

Virtuální lidé

Soar byl použit k simulaci virtuálních lidí s podporou dialogů tváří v tvář a spolupráce ve virtuálním světě vyvinutém na Institutu kreativní technologie na USC. Virtuální lidé mají mimo jiné integrované schopnosti vnímání , porozumění přirozenému jazyku , emoce , ovládání těla a akce.

Herní AI a mobilní aplikace

Herní agenti AI byli vytvořeni pomocí hry Soar pro hry jako StarCraft , Quake II , Descent 3 , Unreal Tournament a Minecraft , podporující schopnosti, jako je prostorové uvažování , strategie v reálném čase a očekávání soupeře . Agenti AI byli také vytvořeni pro videohry, včetně Infinite Mario, který používal posilovací učení, a Frogger II , Space Invaders a Fast Eddie, který využíval jak posilovací učení, tak mentální snímky .

Soar může běžet nativně na mobilních zařízeních . Mobilní aplikace pro hru Liar's Dice byla vyvinuta pro iOS, která spouští architekturu Soar přímo z telefonu jako engine pro soupeřovy AI.

Robotika

Od doby, kdy byl původní Robo-Soar v roce 1991 implementován pro ovládání robotického ramene Puma, bylo postaveno mnoho různých robotických aplikací. Ty sahají od mobilního ovládání robotů po roboty REEM pro humanoidní služby , taskovatelné robotické muly a podvodní vozidla bez posádky .

Interaktivní učení úkolů

Aktuálním zaměřením výzkumu a vývoje v komunitě Soar je Interactive Task Learning (ITL), automatické učení nových úkolů, funkcí prostředí, omezení chování a dalších specifikací prostřednictvím přirozené interakce instruktora. Výzkum v oblasti ITL byl aplikován na stolní hry a navigaci ve více místnostech.

Plánování

Merle-Soar na začátku předvedl, jak se Soar mohl naučit složitému úkolu plánování podle vzoru hlavního plánovače lidí ve výrobním závodě na čelní sklo poblíž Pittsburghu.

Viz také

Reference

Bibliografie

externí odkazy