Soar Laird John E 2012 The Soar Cognitive Architecture MIT Press ISBN 9780262122962 是一種認知架構 ，Newell Allen December 1990 Unified Theories of Cognition Harvard University Press ISBN 9780674920996 最初是由、艾倫紐厄爾和卡內基梅隆大學的保羅羅森布魯姆建立。現在由萊爾德在密西根大學的研究小組維護和開發。 Soar 專案的目標是開發通用型智慧代理人（，）所需的固定計算性構成單元 ，可以執行各式各樣的任務，並編碼、使用和學習所有型別的知識，以實現人類全部的認知能力，如決策、問題解決、計劃和自然語言理解。Soar 既是認知理論，也是該理論的計算實作。自 1983 年萊爾德發表論文以來，人工智慧研究人員已經根據不同的人類行為面向，廣泛使用 Soar 來建立智慧代理人和認知模型 。目前對 Soar 最全面的描述是 2012 年出版的《Soar 認知架構》Laird John E 2012 The Soar Cognitive Architecture MIT Press ISBN 9780262122962。 理論 Soar 涵蓋了通用智慧在計算結構上的多個假設，而當中有許多假設與其他認知架構是相通的，包括由約翰羅伯特安德森建立的 ACTR 以及建立的 LIDA 。最近，Soar 著重於通用 AI（功能和效率），而 ACTR 著重於認知建模（對人類認知的詳細建模）。 Soar 理論的第一個假設是，在艾倫紐厄爾的書 認知統一理論 中，描述了最早構成 Soar 基礎的認知理論「問題空間假設」。 Newell Allen December 1990 Unified Theories of Cognition Harvard University Press ISBN 9780674920996 這也追溯到最早期的人工智慧系統之一，由紐厄爾、西蒙和 Shaw 在 1955 年提出的邏輯理論家。問題空間假設認為，在嘗試實現目標時，所有目標導向的行為都可以被看作是對可能狀態空間的搜尋（問題空間）。每個步驟都會選擇一個運算元，將其應用到代理的當前狀態，這可能導致內部發生變化，比如從長期記憶、世界的改變或外部行為中提取知識。 Soar 的名稱源於狀態、運算元和結果（StateOperator And Result）的基本迴圈，但已不再被視為縮寫字。問題空間假設的本質是，即使是像規劃這樣複雜的活動，所有行為都可以分解為一系列選擇及應用的原始運算元，而這些選擇及應用對映到人類行為上需要大約的時間。 Soar 理論的第二個假設是，雖然每一步只能選擇一個運算元，從而造成一個連續的瓶頸，但是選擇和應用的過程是透過平行規則觸發來實現的，因此能夠脈絡依賴地提取程式性知識。 Soar 理論的第三個假設是，如果選擇或應用運算元的知識不夠完整或不夠確定時，就會產生僵局，結構會自動建立一個子狀態。在子狀態中，會遞迴地使用相同的問題解決過程，但是目標必須是提取或發現知識，以便決策能夠繼續。這可能會導致子狀態的堆疊，在這些子狀態中，如規劃或等傳統的問題方法自然會產生 。當在子狀態中建立的結果解決僵局時，子狀態及其相關結構被移除。總體方法被稱為通用子目標。 這些假設導致了一個支援三層處理的的架構。最低層級是自下而上、平行和自動化的處理歷程。下一層是審議層級，在這個層級，會將從第一層獲得的知識用於提議、選擇和應用單個動作。這兩個層級實現了快速、熟練的行為，並且大致對應于丹尼爾卡內曼的「系統一處理級別」。當知識不完整或不確定時，則與丹尼爾卡內曼的「系統二處理級別」大致對應，會透過使用子狀態的第三層處理，自動產生更複雜的行為。 Soar 理論的第四個假設是，其底層結構是模組化的，但是並非像計劃或語言這樣基於任務或能力的模組，而是作為獨立於任務的模組，包括：決策模組、記憶模組（短期空間 視覺記憶、工作記憶、長期程式性記憶、陳述性記憶和情節記憶）、與所有長期記憶相關的學習機制、知覺模組、運動模組。關於下述記憶的具體屬性還有進一步的假設，包括所有的學習都是與系統連結且漸進的。 Soar 理論的第五個假設是，記憶元素（空間 視覺記憶中的記憶元素除外）被表示為符號的關係結構。符號系統是通用智慧所必需的假設，被稱為「物理符號系統」假設。Soar 的一個重要演進是所有符號結構都具有相關的統計後設資料（例如使用頻率、近期資訊或預期的未來回報），這些統計後設資料會影響符號結構的提取、維護和學習。 架構 處理週期 決策程式 Soar 的主要處理週期來自程式性記憶（如何操作的知識）和工作記憶（當前情況的表徵）之間的互動作用，以支援運算元的選擇和應用。工作記憶中的資訊以一種基於狀態的符號圖形結構表示。程式性記憶中的知識被表示為 ifthen （條件和動作的集合），這些規則不斷地與工作記憶的內容匹配。當規則的條件與工作記憶中的結構匹配時，將觸發並執行這個動作。這種規則和工作記憶的組合也稱為產出系統。與大多數產出系統不同的是，在 Soar 中，所有匹配規則都是平行觸發。 與將單個規則的選擇作為決策的關鍵不同，Soar 會藉由規則提出、評估和應用來選擇及採用運算元，以實現決策。運算元會由測試當前狀態的規則提出，並在工作記憶中建立運算元的表徵形式和可接受的偏好，這表明這個運算元應該被考慮選擇和採用。附加規則會去匹配提議的運算元，並比較及評估提議的其他運算元來建立附加偏好。透過決策過程分析偏好，決策過程會選擇優選的運算元，並安裝為工作記憶中的當前運算元。匹配到當前運算元的規則將觸發應用，並修改工作記憶。修改工作記憶可以是簡單的推論、查詢以提取 Soar 的長期語義記憶或情節記憶、對運動系統下達指令來執行環境動作，或與空間視覺系統的互動作用（是工作記憶與知覺的介面）。對工作記憶的這些修改會導致提出和評估新的運算元，然後選擇並採用。 強化學習 Soar 有著建立數值偏好來評估運算元的規則，而 Soar 支援強化學習，可以根據獎勵來調整規則值。為了提供最大的靈活性，在工作記憶中有一個結構會創造獎勵。 僵局、子狀態和組集 如果對運算元的偏好不足以指定選擇哪一個運算元，或者沒有足夠的規則來採用某個運算元，就會出現僵局。為了應對並化解僵局，將在工作記憶中建立子狀態。然後，附加的程式性知識可以在子狀態中建議和選擇運算元，以獲得更多的知識，並在原始狀態中建立偏好或修改該狀態來化解僵局。子狀態為隨需求應變的複雜推理提供了一種手段，包括層次任務分解、計劃和對陳述性長期記憶的觸接。一旦僵局被化解，除了結果外，子狀態中的所有結構都將被移除。導致結果的子狀態處理，Soar 的組集機制會將其編譯成規則。自此之後，學習的規則會在類似的情況下自動觸發，這樣就不會出現僵局，逐步地將複雜的推理轉換為自動化 反應性處理。最近，透過目標導向和自動知識庫擴充機制，已擴充套件了整個通用子目標化程式，該機制允許以創新和問題導向的方式重新組合 Soar 代理所擁有的知識，從而解決僵局 Lieto Antonio Perrone Federico Pozzato Gian Luca Chiodino Eleonora 2019 Beyond Subgoaling A Dynamic Knowledge Generation Framework for Creative Problem Solving in Cognitive Architectures Cognitive Systems Research 58 305316 。 符號輸入和輸出 符號輸入及輸出是透過附加在頂部狀態的工作記憶結構（輸入 連結及輸出 連結）來產生。如果結構建立在工作記憶的輸出連結上，這些結構就會被轉換為外部動作的命令（例如，運動控制）。 空間視覺系統與心像 為了支援與視覺系統和非符號推理的互動作用，Soar 擁有其空間視覺系統。內部將世界表示為場景圖（一個物件和元件子物件的集合，每個物件和元件子對像都具有諸如形狀、位置、姿態、相對位置和比例等空間屬性）。使用的 Soar 代理可以建立過濾器，自動從其場景圖中提取特徵及關聯，然後將其新增到工作記憶中。此外，一種 Soar 工具可以新增結構到並用於心像。例如，代理可以在給定位置建立中的假想物件，並查詢它是否與任何感知物件發生衝突。 語義記憶 Soar 中的語義記憶被設計為事實類結構的超大型長期記憶。中的資料表示為有向迴圈圖。可以透過在工作記憶的保留區域中建立命令的規則來儲存或提取結構。提取到的結構將新增到工作記憶中。 結構具有表示每個記憶使用頻率或新近度的啟用值，從而實現了最初為 ACTR 開發的基本級別的啟用方案。在提取過程中，將提取中與查詢匹配並具有最高啟用值的結構。Soar 還支援擴散激發，其中啟用從已提取到工作記憶中的結構擴散到與其連結的其他長期記憶。Jones Steven et al 2016 Efficient Computation of Spreading Activation Using Lazy Evaluation PDF ICCM Proceedings of the 14th International Conference on Cognitive Modeling 182187 這些記憶又將有所衰減地擴散激發到其相鄰記憶。擴散激發是一種允許當前情境影響提取語義記憶的機制。 情節記憶 情節記憶 會自動在時間流中記錄工作記憶的快照。先前的情節可以透過查詢提取到工作記憶中。一旦提取到情節，則可以提取下一個（或上一個）情節。代理可以使用順序播放過去的情節（允許它預測動作的效果）、提取特定記憶或查詢具有某些記憶結構的情節。 學習 Soar 的每一個長期記憶都與線上學習機制有關，這些機制可以建立新的結構，或者根據代理的經驗修改後設資料。例如，Soar 透過一個稱為組集的過程來學習新的程式性記憶規則，並使用強化學習來調整運算元的選擇規則。 開發代理 在 Soar 中開發代理的標準方法首先從編寫載入程式性記憶的規則開始，然後使用適當的陳述性知識來初始化語義性記憶。代理開發的過程在官方的 Soar 手冊和研究小組網站提供的教程中有著詳細說明。 軟體 Soar 架構由密歇根大學的約翰萊爾德研究小組維護和推廣。當前架構以 C 和 C 組合編寫而成，這可以免費在研究小組的網站上獲得（BSD 許可證）。 Soar 可以透過 Soar 標記語言實作與外部語言環境的介面，包括 C、Java、Tcl 及 Python。 是用於「建立 Soar 代理例項」及「實現其 I O 連結介面」的主要機制。 JSoar 是用 Java 編寫的 Soar 的實作。它由 AI 研發公司 SoarTech 維護。儘管 JSoar 通常不會反映 Soar 的 CC 版本的最新發展和變化，但它緊密遵循密歇根大學的架構實現。 應用領域 以下是在 Soar 中實作的不同應用領域的歷史列表。儘管其中絕大多數是玩具任務或拼圖，但在 Soar 中已經實作了一百多種系統。 拼圖和遊戲 縱觀 Soar 的歷史，Soar 已被用於實作各種經典的 AI 謎題和遊戲，例如河內塔、水壺、井字遊戲、8 拼圖問題、傳教士和吃人惡魔問題，以及積木世界的變體。 這些都是早期 Soar 的成就，顯示出許多不同的弱方法會很自然地從它所編碼的任務知識中產生，這個屬性被稱為 通用弱方法。Laird John Newell Allen 1983 A Universal Weak Method Summary of results IJCAI 2 771772 電腦配置 Soar 的第一個大規模應用是 R1Soar，這是由 Paul Rosenbloom 部分地重新實作 John McDermott 為配置 DEC 計算機而開發的 R1（ XCON ） 專家系統。R1Soar 展示了 Soar 能夠擴充套件到中等規模的問題，使用分層任務分解和規劃，以及透過組集將將深思熟慮的計劃和問題解決轉化為具反應性的執行能力。Rosenbloom Paul Laird John Mcdermott John 27 January 2009 R1Soar An Experiment in KnowledgeIntensive Programming in a ProblemSolving Architecture IEEE Transactions on Pattern Analysis and Machine Intelligence PAMI7 5 561569 doi101109TPAMI19854767703 自然語言理解 NLSoar 是由 Jill Fain Lehman，Rick Lewis，Nancy Green，Deryle Lonsdale 和 Greg Nelson 以 Soar 開發的自然語言理解系統。包括自然語言理解、生成和對話的能力，強調即時增量解析和生成。NLSoar 被用於 TacAirSoar 的實驗版本和 NTDSoar 的實驗版本。Rubinoff Robert Lehman Jill 1994 Realtime natural language generation in NLSoar INLG Proceedings of the Seventh International Workshop on Natural Language Generation 199206 模擬飛行員 Soar 的第二個大規模應用涉及代理的開發，用於大規模分散式模擬的訓練。密西根大學和南加州大學資訊科學學院共同開發了兩種用於執行美國戰術空中任務的主要系統。密西根州的系統被稱為 TacAirSoar，並模擬駕駛固定翼機的美國軍事戰術任務（例如近空支援、打擊、CAPs、加油和 SEAD 任務）。開發的系統被稱為 RWASoar，用於模擬旋翼機 直升機 的飛行駕駛任務。兩個個系統具備的能力有：注意力、態勢感知和適應、即時計劃和動態重新計劃，以及 Soar 代理與人類之間的複雜溝通、協調和合作。這些系統參加了美國國防部高等研究計劃署 的綜合戰區 （STOW97）先進概念技術演示驗證，這是當時聯合戰場在 48 小時內合成代理的最大部署，包括現役人員的培訓。這些系統證明了使用 AI 代理進行大規模培訓的可行性。Jones et al 1999 Automated Intelligent Pilots for Combat Flight Simulation AAAI 20 1 STEAM RWASoar 專案的重要成果之一是Tambe Milind 1997 Agent Architectures for Flexible Practical Teamwork AAAI Proceedings of the fourteenth national conference on artificial intelligence and ninth conference on Innovative applications of artificial intelligence 2228 所開發的 STEAM，這是一種靈活的團隊合作框架，在這種框架中，代理使用科恩 萊維斯克的聯合意圖框架，來維護他們的隊友模型。Cohen Philip Levesque Hector 1991 Confirmations and joint action IJCAI 2 951957 NTD NTDSoar 是 NASA 測試主任 的模擬人，該負責人負責協調 NASA 太空梭發射前的準備工作。NTDSoar 是一個綜合的認知模型，整合了許多不同的複雜認知功能，包括自然語言處理、注意力、以及在一個廣泛的代理模型中解決問題。Nelson G Lehman J John B 1994 Integrating cognitive capabilities in a realtime task Proceedings of the 16th Annual Conference of the Cognitive Science Society 658663 虛擬人類 Soar 已經被用來模擬虛擬人類，在南加州大學創意技術研究所開發的虛擬世界中，支援面對面的對話及協作。虛擬人類具有知覺、自然語言理解、情緒、身體控制和動作等綜合能力。van Lent Mike et al 2001 ICT Mission Rehearsal Exercise PDF Cite journal requires journal help 遊戲 AI 和移動應用 在《星際爭霸》Turner Alex 2013 SoarSC A Platform for AI Research in StarCraft Cite journal requires journal help、《雷神之鎚 2》Laird John 2001 It Knows What YouRe Going to Do Adding Anticipation to a Quakebot AGENTS Proceedings of the Fifth International Conference on Autonomous Agents pp 385392 doi101145375735376343 ISBN 9781581133264、《》van Lent Michael Laird John 1991 Developing an artificial intelligence engine Cite journal requires journal help、《魔域幻境之浴血戰場》Wray Robert et al December 2002 Intelligent opponents for virtual reality trainers IItsec Proceedings of the InterserviceIndustry Training Simulation and Education Conference CiteSeerX 10115492187 和《我的世界》等遊戲中，遊戲 AI 代理都是使用 Soar 來構建的，它們的支援功能包括 、即時策略和對手等等。AI 代理也被用於電子遊戲，包括使用強化學習的《無限馬裡奧》Mohan Shiwali Laird John 2009 Learning to Play Mario Technical Report CCATR200903 CiteSeerX 10113875972、《》、《太空侵略者》和使用強化學習和心像的《Fast Eddie》Wintermute September 2012 Imagery in Cognitive Architecture Representation and Control at Multiple Levels of Abstraction Cognitive Systems Research 1920 129 CiteSeerX 10113875894 doi101016jcogsys201202001。 Soar 可以在移動裝置上執行。為遊戲《》開發了針對 iOS 手機的應用程式，該程式會直接從手機上執行 Soar 架構作為 AI 對手的引擎。 機器人技術 自 1991 年實現最初的 RoboSoar 來控制 Puma 機器人手臂以來，已經使用 Soar 構建了許多機器人的應用程式。Laird John Yager Eric Hucka Michael Tuck Christopher November 1991 RoboSoar An integration of external interaction planning and learning using Soar Robotics and Autonomous Systems 8 12 113129 CiteSeerX 10117267247 doi10101609218890 91 90017f hdl20274229045 範圍從移動式機器人的控制到的人形服務機器人、Puigbo JordiYsard et al 2013 Controlling a General Purpose Service Robot By Means Of a Cognitive Architecture AIC 45 CiteSeerX 10114025541 任務型機器騾 Talor Glen et al February 2014 MultiModal Interaction for Robotic Mules Soar Technology Inc 以及無人水下載具 。The Mystery of Artificial Intelligence Office of Naval Research 11 February 2013 互動式任務學習 目前，Soar 社群的研究和開發重點是互動式任務學習，即透過自然教練的互動，自動學習新任務、環境特徵、行為約束和其他規範。 Laird John 2014 NSF Report Interactive Task Learning PDF Cite journal requires journal help 對的研究已應用於桌面遊戲 Kirk James Laird John 2016 Learning General and Efficient Representations of Novel Games Through Interactive Instruction PDF Advanced Cognitive Systems 4 和多房間導航。Mininger Aaron Laird John 2016 Interactively Learning Strategies for Handling References to Unseen or Unknown Objects PDF Advanced Cognitive Systems 排程 在初期，MerleSoar 演示了 Soar 如何學習，模仿匹茲堡附近的擋風玻璃生產工廠中的排程人員的複雜排程任務。 參見 認知架構 ACTR 通用問題解決者 邏輯理論家 參考文獻 參考書目 Laird 2012 The Soar Cognitive Architecture Lehman Laird and Rosenbloom 2006 A Gentle Introduction to Soar 2006 update Rosenbloom Laird and Newell 1993 The Soar Papers Readings on Integrated Intelligence Information Sciences Institute 外部連結 Soar Homepage on University of Michigan Soar Frequently Asked Questions List Soar Tech Homepage