軟體代理人(Software Agent)這個概念的起源甚早,可以追溯到1970年 代有關分散式人工智慧(Distributed AI,簡稱DAI)的研究。直到近年 來由於網際網路的普及,電腦資訊及電腦人口呈爆炸性成長,人們開始需 要一種更有效率同時也更人性化的方式來處理資訊,而軟體代理人的特性 正符合這種需求,於是軟體代理人的相關研究再度在資訊科學的各個領域 中蓬勃發展。 事實上,軟體代理人的觀念很早就被引進電腦輔助教學 這個領域了,而最近這股研究軟體代理人的潮流亦吸引了更多這個領域的 研究者投入這方面的研究,軟體代理人在電腦輔助教學系統中的角色與重 要性也漸漸被釐清。社會型學習系統(Social Learning Systems)的概 念就是在這樣的研究背景下所孕育出來的。 基本上,社會型學習系統 是一種多代理人系統(Multi-Agent Systems),而其中的軟體代理人被 稱為教育代理人(Educational Agents 或稱PedagogicalAgents)。在一 個社會型學習系統中,可能同時存在一個以上的教育代理人分別扮演老師 、同學、小老師、助教或學習助理等角色,經由這些角色之間的社會性互 動如教導、學習、褒貶、合作與競爭等可以大幅提高學生的學習動機與效 率。然而,美中不足的是,市面上仍找不到良好的軟體代理人發展系統, 更遑論要支援社會型學習系統這樣複雜的多代理人系統的開發了。因此, 我們決定要以之前的課程樹架構(Curriculum-Tree Architecture)為基 礎,設計了CAROL5這個代理人導向程式語言(Agent-Oriented Programming Language)來滿足開發社會型學習系統的軟體需求( Software Requirements)。 本論文的內文總共分為兩個部份,第一 部份闡述CAROL5的設計理念,包含了研究背景以及在設計語言的過程中所 作的取捨,並展示如何用CAROL5這種代理人導向程式語言來撰寫社會型學 習系統,以及CAROL5在開發社會型學習系統上的優點,最後並討論CAROL5 現有的缺點以及未來研究的方向。第二部份則利用環境模型( Environment Model)深入探討CAROL5程式語言所使用之雛型式知識模型 (Prototype-Based Knowledge Model)的語意(Semantics),並據以討 論CAROL5中的高階程序(Higher-Order Procedures)與高階方法( Higher-Order Methods)。這部份的內容可以當成製作CAROL5解譯器( Interpreter)的一個指引。
|