摘要 该文通过对基于Internet环境下辅助教学方式特点的研究和分析,提出了基于Internet的一种新的计算机辅助教学模型——基于Agent的教学模型,讨论了模型的基本体系结构和组成元素及实现技术,重点讨论了支持个性化学习的多Agent技术,包括个性化学习Agent的功能结构以及策略与控制技术。最后讨论了该教学模型的优缺点和发展前景。
关键词 网络教学、Agent 、对象模型、个性化教学
随着网络的普及应用和信息技术的发展,我国互联网用户数量节节攀升。对于教育来说,由此带来了教学模式的重大变化,从传统课堂的“以教师为中心”扩展到Internet环境下的“以学习者为中心”的网络教学。通过对传统网络辅助教学系统的研究可知,传统的辅助教学系统能以数字方式将表现教学内容,通过对图、文、声、像、动画以及活动影象等信息进行计算机系统存储、加工、传输和呈现,用户可通过人机交互方式使用课件,以便辅助教师教和学生学。而借助于Internet的远程教育具有开放性、灵活性、学习终身性和资源共享性等优点[1]。充分利用这些优点不仅可以满足学习者个性化学习需要,而且可以在很大程度上提高学习效率。但据初步调查表明,大多数学习者在网络学习时,会遇到不同程度上的困难,主要原因是其普遍存在的一系列问题,包括:
(1)以呈现教学材料为主,在教学过程中学生被动学习,缺乏必要的交互手段;
(2)对不同认知水平的学生采用相同的教学策略,缺乏智能性和适应性,难以实现因材施教;
(3)由于知识结构是松散无关的,掌握学习主动权的学习者面对众多信息而无所适从,在学习过程中容易出现迷航而偏离学习目标;
(4)采用了不同的数据资源管理标准,不利于教学资源共享以至于造成大量重复劳动。
(5)缺少有效、敏感的响应与反馈、测试与评价系统,无法真正构建出学生的主动学习环境。
Agent的概念最早出现于20世纪70年代的人工智能中,80年代后期成长起来,目前已成为当今计算机科学技术领域、信息工程领域和网络通信领域十分活跃的前沿研究方向之一。Agent具有的自主性、反应性、主动性等一些重要的行为特征对网络教学系统来说是很有意义的,因此Agent/多Agent 系统特别适用于网络教学系统的开发。
1 Agent概述
基于Agent的教学系统将人工智能的技术引入系统,软件代理Agent是具有推理和决策能力的软件,是一个有反应的,主动性的,内在激发的软件实体 ,在面对变化的环境的同时,能采取一定的应对措施。软件Agent 也是一个计算机程序,它的内部又可以细分出很多小的功能模块,使程序具有模块化和一定的弹性。其特点
(1)自治性:Agent能够根据知识库中的事实和规则进行推理,运行于复杂环境中的Agent还应具有学习或自适应的能力。
(2)自主性 Agent是一个独立自主的计算实体,其动作和行为是根据本身的知识、内部状态和对外部环境的感知来进行控制的,它的运行不受人或其他Agent的直接干涉;
(3)目标导向:能够根据高层的指示,负责决定如何来完成任务。
(4)社会性 Agent可以通过某种Agent协作语言与其他Agent或人进行交互和通信,在多Agent系统中,Agent应具有协作和协商能力;
(5)有弹性:完成任务的方式不固定,由实际情况来决定执行顺序和所要调用的程序,以反映外部环境的变化。
(6)适应性:可以对先前的经验进行积累,由使用者的喜好来决定自己的行动。
(7)移动性 Agent作为一个活体,它能够在互联网上跨平台漫游,以帮助用户搜集信息,它的状态和行为具有连续性。
2 基于多Agent的教学模型
现实世界问题是极其复杂的,而单个Agent的功能是极其有限的,单个Agent一般很难完成给定的任务,此时需要通过适当的体系结构把多个Agent组织起来形成多Agent系统,以共同承担一个任务,来弥补单个Agent之不足,使得整个系统的能力超过单个的Agent。 基于多Agent技术的系统是指多个Agent相互通讯、彼此协调,共同完成作业任务的系统,它不仅具备一般分布式系统所具有的资源共享、易于扩张、可靠性强、灵活性强、实时性好的特点,而且各Agent能够通过相互协调解决大规模的复杂问题,使系统具有很强的鲁棒性、可靠性和自组织能力。在多Agent系统中,单个Agent是一个物理的或抽象的实体,能作用于自身和环境,操纵环境的部分表示,并与其他Agent通讯,具有感知、通讯、行动及控制和推理能力等基本功能。多Agent技术的这些特点,使得其在处理基于互联网的知识问题方面,具有广阔的应用前景。
网络教学突出的特点表现在学生是学习的主体,其通过网上虚拟课堂进行交互式的自主学习;教师则要通过课程设计,采取创设问题情景、在线专题讨论、归纳总结、评价激励等方法,激发学生的学习兴趣和学习动机,促使他们理解和掌握知识体系,培养创新精神,进行广泛而又深入的学习。
由于网络教学是一个复杂、庞大、不可预测的信息系统,一般会覆盖教学的各个环节,因此应该将其划分成子问题,并构造多个具有一定功能的Agent,由这些Agent去分别处理子问题。当子问题之间出现相互依赖时,系统中的Agent必须能通过协作来控制依赖性。基于以上分析,我们构造的基于多 Agent的网络教学模型如图1所示。
图1 基于多 Agent的网络教学模型
整个模型分为三个部分:界面代理,分析代理和建议代理。
界面代理:负责与用户直接沟通,询问的功能是记下使用者的基本资料。展示是将教材内容通过输出端口提供给用户。诊断是判断用户的学习能力,知识结构。记录的功能是记录下学习者与系统互动的所有历程。界面代理由界面数据库取得与某一用户对话的模式和画面。
分析代理:分析从界面代理中的诊断,记录,询问等三个子代理那里获得的用户资料,分析后再将所的结果存入其中的学生基本资料库,学习成就资料库和学习资料库中。
建议代理:建议代理获得分析代理资料库的内容,再由其评估代理分析出学习者之间的差异,建议代理根据这些差异来为不同的学习者提供不同的教学方法。
在此多代理系统中,为减少代理之间的直接沟通,故将相互的沟通信息放置在界面代理中的全局数据库中,由主控程序负责通知相关的模块,当然,主控程序代理也可以单独形成一个模块。
模型中涉及5个基本数据库,即学习资源库、系统全局知识库、教学策略库、界面库和学生模型库(含学生基本信息与学习中间信息);3类基本用户,即教师、学生和管理者;6类Agent,即教师Agent、学生Agent、管理者Agent、人机交互界面Agent、教学Agent和管理Agent。下面具体介绍部分Agent的功能。
● 学生Agent。学生登录网络教学系统以后,系统会自动生成一个学生Agent。它一方面要为对应的学生提供交互界面,引导学生的学习,并在学习过程中根据学生的实际情况,通过教学Agent从教学策略库中选择合适的策略给学生以指导,在学习结束后将学生的学习结果返回学生模型库。另一方面学生Agent还要调用目前登录学生的学生基本信息和学习记录,查看学生以往的学习情况,根据这些记录为学生本次学习呈现最初的学习资料。学生Agent在用户的整个学习期间要不断地通过人机交互界面Agent分析学生的学习状态,为用户下一步学习做相应的准备。同时还负责将本次学习的最终分析结果返还给学生信息库以便为下一次学习提供资料。
● 教师Agent。教师登录网络教学系统以后,系统会自动生成一个教师Agent。一方面,教师Agent负责教师与网络教学系统的交互,通过教学Agent对教学的过程进行相关的指导和监控,了解学生的学习过程和学习反应,指出哪个学生的理解或答案是最好(或最坏的)并做出解释。如果学习方向出现偏差,则予以及时纠正。此外,还可以从试题库中抽取相关的问题进行讨论以加强理解。另一方面,教师Agent还是专业知识的资料库和主动收集者,能对每一个学习者提供专业的最大的资源数据,建立相关的课程或课程框架(指包含教学目标、教学策略、教学步骤等)供教学Agent选择。并可根据教师的干预和学生的反应对本身的知识库进行主动的调整和扩充,主动从网络上获取相关的信息,重组成为更有意义的知识。
● 管理者Agent。一般说来,教育教学活动包括一系列的管理,如课程管理、学籍管理、成绩管理等等,因此有必要在网络教学系统内部建立管理Agent来负责整个系统的智能协调。管理者登录网络教学系统以后,系统会自动生成一个管理者Agent。管理者Agent主要通过管理Agent负责对整个教学情况作宏观的调控。管理Agent主动获得其他Agent的数据和资料,并自动地生成相关的管理数据,如学习者的学习时间、地区分布、学习者水平统计、教师工作统计等,协助管理者进行有效而快速的反应。同时,管理Agent还要担负起诸如其他Agent的增删管理、名录和地址管理、通讯链条的管理职责。
人机交互界面Agent。人机交互界面Agent主要负责学生、教师、管理者与教学、管理子系统之间的交互联系,并记录交互过程。特别地,人机交互界面Agent要负责登记学生个体目前的学习状态,以此掌握学生的学习进度、学习效果和学习能力,触发教学Agent,为不同的学生提供个性化教学。同时,人机交互界面Agent还要通过交互信息,监控和评价学生的学习,给出提示、结论和参考信息,控制讨论范围和讨论时间,对学生的非学习性浏览发出告警声音,对学生的解答和知识探索给予激励的评价。
3 系统实现的关键技术
基于多Agent技术的网络教学系统是一个复杂、庞大、不可预测的信息系统,其设计与实现将涉及诸多关键技术。其中,最为重要的是数据模型的组织、Agent的构建及开发技术的选取。
3.1 数据模型的组织
在教学系统中,主要涉及以下几个对象,考虑到系统的扩展性和移植性问题,在对象建模时,参考了“远程教育规范”和新课程改革的相关要求,并且每个对象都有相应的扩展。
(1) 知识点模型
知识点是描述教学领域知识的完整的教学单元,知识点之间存在的各种关联及其关联程度称为知识点关系。若学习知识点A,必须先掌握知识点B,则B称为A的前驱知识点,而A称为B的后继知识点,其关联程度有强弱之分。知识点及其关系的集合称为知识树。
知识点::=知识点标识,知识点名称,关键词,知识目标,情感目标,能力目标,学习内容,难易程度,教学重点,重要程度,学习时间,媒体资源,强前驱知识,弱前驱知识,强后继知识,弱后继知识,扩展基。
在网络学习中,知识点为基本学习单元,相应某一学科的知识点编码和知识树如图1:
这样的知识点编码和知识树结构,清晰的反映了知识点之间的相互关系,以某一知识点为例,可以方便的找到该知识点前驱和后继知识点。树中的每一个知识点都被赋予唯一的编码,方便了知识点的查询、增加和删除。学习者在学习某一知识点时,ITS可以很容易的对其进行前驱知识测试和后继知识提示。根据Web日志挖掘出的频繁访问路径,调整知识树结构,形成适应网络学习的知识点关系网络和导航。
(2)学习资源模型
学习资源的媒体类型分为:文本、图形(图像)、音频、视频、动画五大类。
资源信息::= 资源标识,知识点标识,关键词,描述,有效学习时间,大小,使用环境,反馈评价,扩展基
资源标识编码如下规定:T开头表示文本,P开头表示图形(图像),A开头表示音频,V开头表示视频,F开头表示动画,通过特定开头字母确定素材类型。
(3) 学习者模型
定义:学习者模型是指对学习者属性的详细描述,包括个人信息,安全信息,学业信息,偏好信息,关系信息,学习行为六个元组。描述
Student_Model_Dadabase=(Student_Model (i) | i=1…n)
Student_Model ={个人信息,安全信息,学业信息,偏好信息,关系信息,学习行为}
a. 个人信息是与学习者绩效的度量和记录没有直接联系,主要与管理有关的个人信息。一般说来,这类信息属于个人隐私,是机密的。
个人信息::=学习者标识,姓名,性别,出生日期,电话,Email,扩展基。
b. 安全信息是有关学习者安全凭证的信息。
安全信息::=学习者标识,登录口令,扩展基。
c. 学业信息是与学习者的学习相关的一些简要信息。
学业信息::=学习者标识,学习课程,完成情况,扩展基。
d. 偏好信息描述可促进人机交互的参数选择。
偏好信息::=学习者标识,情感,兴趣,媒体偏好,学习类型,扩展基。
e. 关系信息是描述学习者与其它系统用户(如教师和其它学习者)之间关系的信息。
关系信息::=学习者标识,关系,程度,扩展基。
f. 学习行为是描述学习者对所学知识点的相关操作信息(如作业信息、练习信息、测试信息、提问信息和媒体学习信息)。
学习行为信息={作业信息,练习信息,测试信息,提问信息,媒体学习信息,扩展基}。
作业信息、练习信息和测试信息的结构相同,
① 作业(练习、测试)信息::=学习者标识,知识点标识,起始时间,完成时间,总用时间,有效时间,正确信息,错误信息,难度信息,扩展基。
② 提问信息::=学习者标识,知识点标识,提问时间,提问内容,回答时间,回答人,回答内容,满意程度,扩展基。
③ 媒体学习信息::=学习者标识,知识点标识,媒体资源,起始时间,结束时间,总用时间,有效时间,学习次数,扩展基。
通常,理想的学生模型Student_Model由教师Agent产生。然后在学习过程中,相应的教学Agent根据学生个性化思维特征及每个学生的活动进展确定其学习基础、学习习惯、兴趣爱好、学习进度,从而建立当前的学生模型。教学Agent要运用模糊理论处理学生模型Student_Model的模糊信息,挖掘模糊信息的内在联系,从而建立模糊关系。
(4) 规则模型
规则采用人工智能中加权不确定性推理方法得出,知识的不确定性表示形式
R i:If Ei (ωi) Then Hi (CF ( Hi,Ei ),λ )
其中,Ei是知识的前提条件,它既可以是一个简单条件,也可以是用AND及OR把多个简单条件连接起来所构成的复合条件。Hi是结论,它可以是一个单一的结论,也可以是多个结论。CF(Hi,Ei)是该条知识的可信度,称为可信度因子(Certainty Factor)或规则强度。(可信度是对事物为真的相信程度的一个量化表示,其初始值由领域专家确定,阈值范围为-1~1)。λ是阈值,它对相应知识的可应用性规定了一个限度,只有当前提条件Ei的可信度CF(Ei)达到或超过这个限度,即CF(Ei)≥λ时,相应的知识才有可能被应用。ωi (i=1,2,…,n)是加权因子,ωi是阈值,其值均由领域专家给出。
条件信息::=规则标识,条件标识,关键词,内容,可信度,加权因子,扩展基
结论信息::=规则标识,结论标识,关键词,内容,可信度,λ阈值,扩展基
学习者规则信息::=学习者标识,规则标识,可信度,扩展基
3.2 个性化学习Agent的功能结构
个性化学习策略的实现建立在群Agent技术上,是一种特殊的移动代理,一般情况下需要特定上下文运行。移动(多)代理运行期间在虚拟机之间迁移,不需要中止程序的执行。该模型中应用服务器和数据库服务器拥有移动(多)代理运行所需的运行上下文,在运行上下文移动(多)代理可以执行任何合法的动作。采用Agent实现的个性化学习的结构如图2所示。
图2 个性化学习Agent结构图
管理Agent负责整个系统的管理工作,包括用户的加入、登录,处理交互、协作信息、分析行为、上传下达等事务。教学Agent和存储在数据库中相应的整体知识结构模型、学习主体个性知识结构模型相结合,实现教学中的教师模型;学习Agent和存储在数据库中的相应的学习主体个性知识结构模型相结合,实现教学中的学生模型;协作Agent实际上是由参与协作学习的学习者与网络终端计算机进行交互后,形成协作学习者Agent。协作Agent根据协作学习者(学生模型)中提供的关于学习者的个人特点,按照一定策略,如学习水平、思维方式倾向等划分而成的;通信Agent按规定的协议上传或下达教与学过程中信息,完成各种教与学活动(移动代理)和数据库系统的通信。
教学Agent和学习Agent结合实现与学习主体的个性化教与学。协作Agent分配任务时,按照协作学习小组Agent的对外特性来确定任务的分配方式,并将任务具体到协作学习者Agent,由学习者Agent具体实施或通过协作完成任务。管理Agent中的行为分析功能用来确定教与学事务的类型(教学、学习、协作等),并对学生的学习行为(如认知特征、操作方式等)和知识结构动态分析,将其结果通过“上传下达”操作提交应用服务器,以便处理该学习个体的下一个活动指令。
3.3 Agent的实现技术与策略
目前,研制开发多Agent应用系统可以采纳CORBA(Common Object Request Broker Architecture,公共对象请求代理体系结构)、DCOM(Distributed Component Object Model,分布式组件对象模型)、Java RMI(Remote Method Invocation,远程方法调用)等多种分布式对象构件技术。由于CORBA是一种开放的分布式对象计算框架标准,其不仅内置了“软件总线”,可方便地实现不同程序之间的通信,而无须考虑这些程序的设计方式、编程语言和运行平台,而且提供了一种“即插即用”的软件环境,能够自动地完成许多一般性的编程任务,如对象的注册、定位、激活,请求的分发和异常处理等。同时,CORBA中的接口定义语言IDL还提供了到Java、C++、Smalltalk等语言的映射,可以方便地实现网络上不同平台的对象相互之间的交互。因此,实现基于Agent的网络教学系统的最佳方案是采用CORBA与Java的相结合技术,并采用三层客户/服务器模式,即:
⑴ 用户界面层。即基于浏览器的网络教学系统用户界面,使用普通的浏览器。Web浏览器作为客户层,提供图形用户界面,负责与用户进行交互。它通过Http协议从应用层的Web服务器下载超文本页面,同时下载并执行内嵌在页面中的Java Applet。这些Java Applet中CORBA客户对象通过内部通信机制同应用服务器中有关教学Agent对象进行互操作,教学Agent对象封装了相关的操作,它们之间通过内部协议彼此通信,并能够访问数据层的数据库对象,以协同完成客户请求。
⑵ 管理服务器层。由传统的Web服务器、管理信息库和应用网关组成。CORBA和Http组成的中间层几乎可以由任何一种服务器平台来支持。CORBA对象作为一个中间层应用服务器,将业务逻辑封装起来。同时,服务器端的CORBA对象还能与其它使用CORBA的客户或服务器交互。
⑶ 数据层。是CORBA对象能访问的所有数据库,包括系统所用到的所有数据及知识库。
个性化学习结构模型中的通信代理应用程序采用组件技术开发,实现分布式系统中的通信编码与解码、前台与后台数据库的连接等功能。这种数据库连接技术与以往的ADO/ASP技术相比,具有7个主要优点:减轻网络负载、减小网络时延、支持协议封装、异步和自治执行、动态适应、自然异构以及健壮性和错误容忍等。个性化学习策略以建构主义学习理论为指导,依靠教学代理实现。系统针对某个在线学习者,教学代理通过管理代理的分析后提交的教学指令,获取相应课程知识结构图中的相关结点的内容,如教学的概念、原理、方法、公式、问题、问题解读、试题、答案,以及这些内容的表达方式、教学策略等。在学习者与系统交互的过程中,管理代理不断分析学习者的学习行为,并与教学代理、学习代理的协调,即可动态调整或扩张该学习者的个性化知识结构图,使其个性化的知识得到新的建构,同时更新数据库中的学生模型数据。
4 结束语
基于多Agent技术的网络教学系统具有以下主要特征:⑴学生无需按照系统设计者的预定教学序列学习,教学序列是学习过程中优化产生的;⑵能提供具有智能性、自主性的Agent服务,分析学生的学习状况和学习兴趣,根据其学生水平智能调整课程难度,这样可最大限度挖掘每个人的潜力,从而能够有效地指导学生更好地学习;⑶对于教师来说,能够减少重复劳动,准确把握学生对知识点的掌握情况,有针对性地进行教学指导,提高教学效率。
当然,基于多Agent技术的网络教学系统尚处于研究和实验开发阶段,相关领域的研究工作还有待进一步深化,相信在不久的将来,更多符合中国国情、符合未来学习模式的人性化远程教育系统必将开发成功。
参考文献
[1] 高金岭主编. 教育技术与教育,广西师范大学出版社,1999年8月
沈军.网络教学中个性化策略研究.计算机研究与发展,2003.4:589-595
邓晖. 论网络环境下的学生特征分析系统设计[J]..开放教育研,2003.1
曲红亭,申瑞民 .基于数据挖掘的个性化学习导航系统的设计与实现[J] .计算机工程. Vol.29 No.8 2003.5
申瑞民,许彦青,张同珍,申丽萍.基于多代理的智能型网络教学环境研究[J].计算机工程与应用,2002.4
Duchastel, Learning Environment Designing, Educational Technology System,Vol.22(3) , P.(1993), p225-233
Jonassen, D.H. A Model for Designing Constructivist Learning Environment, Proceedings of ICCE97, 1997