Академический Документы
Профессиональный Документы
Культура Документы
Mihal Badjonski
Institute of Mathematics Faculty of Science Novi Sad Trg Dositeja Obradovica 4, 2 1000 Novi Sad Yugoslavia
Abstract: Intelligent
Mirjana Ivanovic
Institute of Mathematics Faculty of Science Novi Sad Trg Dositeja Obradovica 4. 2 1000 Novi Sad Yugoslavia
Zoran Budimac Institute of Mathematics Faculty of Science Novi Sad Trg Dositeja Obradovica 4. 2 1000 Novi Sad Yugoslavia
tutoring systems a r e important educational tools. They can be built using different methodologies and tools. In this paper a generic architecture for intelligent tutoring system as a multiagent system i s presented. The agents in the architecture are programmed with AGLess - a specialized agentoriented environment. This approach has been compared to an object-oriented approach [l], [2] based on objectoriented lanbwage Less.
ITS can be distributed on several computers (there are three possibilities. one computer - one agent. one computer several agents and one computer - all agents). The research presented in this paper improves by new approach the rcsearch described in [l], [3] In [I]. [3] an object-oriented way. based on the specialized Lesv language. to ITS development is given The agent-oriented approach is based on the environment for agent's programming called .1GLess mhich includes Less as its lower level The rest of this paper is organized as follows ITSs are described in the next section Specialized object-oriented language Less is presented in the third section The fourth section is aimed for AGLess and a genenc architecture for ITS Conclusion is gn en in the last section
I. INTRODUCTION
Today, there are a lot of different systems and tools (with or without intelligence) which are to be used in educational processes. Also, a lot of new trends appear in dsigning and implementing [4] cducational systems which brings a need to use and incorporate in them some intelligent behavior. Building intelligent tutoring system (ITS) from scratch is very expensive, exhaustive and time-consuming process. In order to facilitate ITS development, this paper presents a generic ITS architecture that might be used for every ITS' organization. The architecture is proposed as a multi-agent system (MAS) [6], [SI. It consists of several agents that communicate and cooperatively perform their tasks. As a result, global system's behavior emerges. System acts like tutor and student is unaware of its decomposition into agents. Multi-agent approach to system organization provides at least four advantages: it is easier to program several simple entities than to program one complex entity (exploitation of divide-andconquer strategy), agent-oriented programming primitives are rather comprehensive for any programmer and they make programming easier, MAS approach enables harmless modifications and growth of the ITS,
3. Tutoring module specifies the manner and rhythm of presentation of stored knowledge.
- 871 -
4 Diagnostic module constantly modifies the students module in accordance with answers that students give to posed questions.
L T o p i c i,s the heart of a niult~-digraph structure for storing information information to be presented and information based on which a decision on further learning direction can be made L T o p i c = CLASS i n h e r i t s I n f o ( query : L I S T O F CLASSES ( L T a s k P , L T a s k T , LTaskR, LTaskB, LTaskE) 1
Specialized object-oriented language Less [2] has been enhanced to support building of ITS Kernel of Less consists of different basic data structures for information rcpresentation, and different statements and directives for information presentation Basic classes giT,e opportunity for storage of multimedial information Less also possesses mechanisms for creating of new structures As mentioned in [I], 131, the representation domain (lesson knowledge) can be observed as a complch set of nodes are topics which
Expert module is realized by list of L T o p i c ' s objects There are five types of queries The one where student's answer should be explicitly typed-in ( L T a s k P ) the queries when one of several alternatives has to be chosen ( L T a s kT). the queries where correct pairs of items In tno independent lists should be recognized ( L T a s kR), and the tasks where student has to execute longer procedure ( L T a s k E ) All of these task classes inherit, the common CO
LTask L T a s k = CLASS i n h e r i t s I n f o { aldSlvd : LOGICAL; ( * I s t a s k a l r e a d y solved? * ) disp : LOGICAL; ( * T z d i s p l a y or n o t t h e correct a n s w e r a f t e r t h e w r o n g respo dispLT : PUBLIC METHOD ( * a r r a n g e s a l l t h e i n f o r m a t i o n on t h e s c r e e n and a c c e p t s s t u d e n t ' s response * ) }
LIST
OF
Type
.. .,
V a l N ) -enumerated hpe
es are TEXT. PICTURE ANIMATION and SOUND, They have the same structure
- an instance variable for representation of specific kind of information,
Student's model is maintained in the class S t u d e n t The object of the S t u d e n t class contains a list of topics that student has learned Finally, the class L e s s o n is defined in [ 11 as follows
L e s s o n = CLASS{ ident : STRING; lsn : L I S T O F CLASS L T o p i c ; ( * l i s t of l e s s o n ' s t o p i c s * ) gen : L I S T O F CLASS L T o p i c ; (* topics w i t h extra m a t e r i a l *) start : L I S T O F IDENT L T o p i c ; (* s t a r t i n g topics *) stop : L I S T O F IDENT L T o p i c ; ( * ending topics *) c u r r T p c : IDENT L T o p i c ; (* c u r r e n t t o p i c *) c u r r T s k : IDENT L T a s k ; (* current t a s k *) i n t e r p r : P U B L I C METHOD; stud : L I S T OF Student }
- 872 -
Tutoring module is supported by defined Lesson class e by making connections betuccn topics and tasks in determining paths through topics Diagnostic module is a \\e& point of suggested system It can be realized in Less. i n rclativcly rudimentary, but satisfactory way All the classes enlisted in this section, more or less modified are also uscd in the agent-oriented approach
i
Enlisted coinniuiiicative actions belong to higher level constructs in A G h . 5 , as well as beliefs about facts and private actions Agent uses coiiiinunication in order to ask or inforin another agcnt about bcliefs It can also request the execution of private action from another agent Receiver of such inessage will try to perforin specified private action and report to sender what happened Agents do not use objects in their coiiimunicatioii Objects are lower level constructs used for the specification of private actions and beliefs (see Table 1 ) Mental-change rules arc the iliain part of every AGLess program. Syntax for mental-change rule is
< r u l e > : : = <msg_-cond> ' , ' <mntl-cond> ' - > ' ' ( ' <sequence> ' ) '
<msg-cond> is logical e\pression that describes messages able to activate tlic rule If <msg-cond> is satisfied, <mnt l-cond> is ehainined <mntl_cond> is logical expression describing the internal statc of agent (its beliefs) that need to be satisficd for the rule to fire Finally, if both conditions arc satisfied, sequence of actions <sequence> is e\ecutcd (sequence> consists of private and/or communicative actions as ne11 as of conditional, looping and assignment statement When agent uses REQUEST-ACTION or ASK-VALUE communicative action, it stops the e'iecution of tlie sequence until it receives a response and executcs tlic rulc for that response After that it continues nith started actions' sequence Mental-change rules can contain variables Like in AGENT0 [ 6 ] ,the! arc e\istcntiall) quantified Program in .4GLcts is aimed for programming of exactly one agent It consists of
to-agent,
- 873 -
Intelligent tutoring system can be seen as ai1 agency (see Fig 1 ) consisting of Student-Model agent, Tutor agent, Topicl agent, . , Topic. agent Interface agent is represented using the A mental state of the Topic the class L T o p i c uses Objects of the class L T o p i c lhe class L T a s k, the class is also used, but it is modified In 111, every task has associated the nest action that should be performed after finishing current task In the ITS represented as MAS, these actions are only local one The> cannot activate another topic, but only to activate another task inside the current topic The nest topic selection is controlled b> the Tutor agent In the presenting of their information, the Topic agents use the information from Student-Model agent (tasks that student has already solved and the appropriate level of task presentation) Interface agent supports communication betrvcen student an MAS Topic agents have four private actions available
1) activate. 3 ) get-17ext-task,
The rule induces the presentation of unsolved tasks from agent's topic At the end of tasks presentation, Student-Model agent is informed about the results and Tutor agent is informed about the finish of the Topic agent's work
The rule for messages of type
INFORM ( s t u d e n t-m o d e l , t o p i c l , ? n a m e , ? v a l u e )
where student's history or current level of expertise is received from Student-Modcl agent Mental space of Topic, agent includes beliefs about facts FOUND. HISTORY, LEVEL
A multi-digraph which reprcsents the learning process is part of the Tutor agcnt's mental state The mental state of the Tutor agent is implemented xith a new class called L e s s o n This class slightly differs from the class nith the same name that is defined in [l], [3] This agent uses its knowledge and the information received from the Students-Model agent to govern the process of learning After it receives a list of alread! learned topics, Tutor agent determines the next topic using its private action next-topic L e s s o n is defined as folloms
L e s s o n = CLASS{ graph : L I S T OF T(1DENT L T o p i c , IDENT L T o p i c ) ( * l i s t o f d i r e c t e d edges * ) start : L I S T O F IDENT L T o p i c ; ( * s t a r t i n g topics *) stop : LIST OF IDENT L T o p i c ; ( * ending topics * ) c u r r T p c : IDENT L T o p i c ; (* current topic *) n e x t T p c : METHOD; 1
All private actions uses appropriate methods from classes alined for tasks ( L T a s kP, L T a s kT, L T a s kR. L T a s kB and L T a s kE) Eve? Topic agent has two mental change rules
Tutor agent uses n e x t T p c in its private action next-topic, until it finds the appropriate topic that has not yet been learned according to lesson's scenario It has two rules The first rule always executes whenever Tutor agent is
tutor,
?value)
*
Fig 1 ITS as an agency
- 874 -
Tutor agcnt has its bclicfs about facts such as SOLVED. NEXT-TOPIC-NAME, HISTORY Student-Model agent uscs tlic class Student dcfincd in Less [ 11 Its most important action is get-level It is used for the determination of studcnt's level or hnoivledge or thc lesson It has two rulcs 1. INFORM ( ? t o p i c , student-model, task-history, ? v a l u e ) , TRUE
V. CONCLUSION
->
(update-mode.1(?value))
2. ASK-VALUE(?anybody, student-model, ?name), TRIJE -> (INFORM(student-model, ?anybody, ?name, VAL (?name)) ) Student-model agent has belicfs about facts such as TASK-HISTORY, TOP-HISTORY. LEVEL, STUDENTS, CURRENT-STUDENT Interface agent has only one simple rule that cause tlie cxecution of its private action present-task Aftcr task's prcsentation. it proceeds student's rcsults to appropriate Topic agent The mental change rules in all agents arc defincd way that implements the following algorithm:
in
In this paper, a multi-agcnt generic ITS architccturc using agent-oriented environmcnt ,I GLess is prcscntcd AGLess is clioscn a5 a more suitablc option than an! otlicr or softwarc tool AOP language. environment Appropriateness of AGLess for I T S de\ elopinent stcms from the Less' facilities for ITS' programming [ 11 AOP languagcs such as AGENT0 or an environment such as HOMAGE arc not specialized for tlic dcvelopment of ITS and are less suitable than AGLess for this particular domain On the otlicr hand the most important advantage of tlic ITS as MAS in comparison with the ITS in [ l ] is in the : casicr devclopincnt and modifications of tlic s stein Thc MAS approach esploits divide and conquer stratcg! and thus facilitates a development and modifications of the s stein ! VI REFERENCES M IvanoviC, "Tonards Intelligent Tutoring S stems ! Using Less", (to appear) M Ivanovid.. .4 Contribution to the Developrnent of Programming Languages using Object-0riented ~Methodologv, D Thesis, Unir crsity of No! 1 Sad (in Ph Serbian), 1992 M Ivanovid. and Z Budimac. "Intelligent Tutoring Systems Using Less", in proceedings of the 1993 qmopsis o 1st IEIC BALX4\' Conference on .CIS f Ohrid, Macedonia, pp 2 13-2 14 D A Norman and J C Spohrer. "Lcarncr-centered education", Comniunications of the AGW, vol 39 no 4. Apr 1996,pp 24-27 A Poggi and G Adorni, "A multi language environment to develop multi agcnt applications", in Proceedings of the 1996 Working iVotes of the Third on Agent Theories, International JVorkshop Architectures and Languages, Budapest. Hungaq , pp 249-26 1 Y Shoham, "Agent-oriented programming", Artificial Intelligence, vol 60 no 1, Mar 1993, pp 51-92 P H Wood, "Intelligcnt Tutoring Systems An Annotated Bibliography", SIGART Bulletin, no 1. Jan 1990, pp 21-41 Wooldridge and N R Jennings, "Agent Theories, Architectures, and Languages A Survey", LNAI, Springer-Verlag, vol 890, Intelligent Agents, 1995, pp 1-39
the
step 1. Tutor agent rcccives current studcnt's modcl from Student-Model agent
step 2. Tutor agcnt sends activation message to appropriate Topic agent. step 3. The selected Topic agent presents (through Interface agent) its tasks to the student. using the student's model obtained from Student-Model agent step 4. Aftcr presenting all tasks in the topic, tlie Topic agent sends its report to Student-Model agent to update the student's model. It also sends a message to Tutor agent with information about the end of its activities. step 5. Go to step I
- 875 -