The Smart Classroom: Merging Technologies for Seamless ...yamao/publications/MPervasive.pdfLaser...

9
1536-1268/03/$17.00 © 2003 IEEE Published by the IEEE CS and IEEE ComSoc PERVASIVE computing 47 THE HUMAN EXPERIENCE The Smart Classroom: Merging Technologies for Seamless Tele-Education T ele-education systems promise wider access to education and support for lifelong learning. These systems are either asynchronized or synchronized. Asynchronized systems are relatively simple. An organization can use the Internet to pub- lish hyperlinked multimedia content and reach a wide audience. Yet, most current courseware is sim- ply textbook material transferred to HTML; instead of reading the book, students read the screen. In most cases, live instruction catches students’ attention and interest much more effectively than static materials. Real-time interactive virtual classrooms therefore play an indispensable role in distance learning. In this type of tele-education, multimedia communication systems let teach- ers and students in different locations participate in the class synchronously. Most systems are desktop- based, however, so the teacher must remain at the computer, using the keyboard and mouse to operate the class—an awkward experience for a teacher. By applying smart space technologies in a real classroom, the Smart Classroom project bridges the gap between tele-education and traditional class- room activities in terms of the teacher’s experience and seamlessly integrates these two currently sepa- rate educational practices. (See the sidebar for a dis- cussion of other projects seeking to merge pervasive computing technologies and education.) More specif- ically, we extend the user interface of a legacy desk- top-based tele-education system—SameView 1,2 into the 3D space of an augmented classroom. In the Smart Classroom, teachers can use multiple nat- ural modalities while interacting with remote stu- dents to achieve the same effect as a teacher in a classroom with local students. Figure 1 gives an overview of the Smart Classroom. The system turns a physical classroom into a natural user interface for tele-education software. Teachers in the Smart Classroom can move freely, using con- ventional teaching methods to instruct remote stu- dents. Because they are in a real classroom environ- ment, they can accommodate local students at the same time. Simultaneously instructing local and remote stu- dents also requires a smaller workforce than separate on-campus and tele-education operations. Further- more, the lecture, recorded as hypermedia course- ware, is available for playback after class. Classroom setup Our prototype system is in a 3.2 × 7.6-meter room divided by a curtain. The class takes place in the main part of the room. The other section is filled with computers required by the system, purpose- fully hidden from view to exemplify the “invisible computer” notion. The classroom has two wall-size projector screens, one on the front wall and the other on a side wall (see Figure 2). The MediaBoard is a touch- sensitive SmartBoard screen for displaying teaching materials. Remote students can view the board’s content via a client program (assuming remote stu- The Smart Classroom integrates voice-recognition, computer-vision, and other technologies to provide a tele-education experience similar to a real classroom experience. Yuanchun Shi, Weikai Xie, Guangyou Xu, Runting Shi, Enyi Chen, Yanhua Mao, and Fang Liu Tsinghua University

Transcript of The Smart Classroom: Merging Technologies for Seamless ...yamao/publications/MPervasive.pdfLaser...

Page 1: The Smart Classroom: Merging Technologies for Seamless ...yamao/publications/MPervasive.pdfLaser pointers as interaction tools In most current desktop-based tele-edu-cation systems,

1536-1268/03/$17.00 © 2003 IEEE ■ Published by the IEEE CS and IEEE ComSoc PERVASIVEcomputing 47

T H E H U M A N E X P E R I E N C E

The Smart Classroom:Merging Technologies forSeamless Tele-Education

Tele-education systems promise wideraccess to education and support forlifelong learning. These systems areeither asynchronized or synchronized.Asynchronized systems are relatively

simple. An organization can use the Internet to pub-lish hyperlinked multimedia content and reach awide audience. Yet, most current courseware is sim-ply textbook material transferred to HTML; insteadof reading the book, students read the screen. In mostcases, live instruction catches students’ attention and

interest much more effectivelythan static materials. Real-timeinteractive virtual classroomstherefore play an indispensablerole in distance learning. In thistype of tele-education, multimediacommunication systems let teach-

ers and students in different locations participate inthe class synchronously. Most systems are desktop-based, however, so the teacher must remain at thecomputer, using the keyboard and mouse to operatethe class—an awkward experience for a teacher.

By applying smart space technologies in a realclassroom, the Smart Classroom project bridges thegap between tele-education and traditional class-room activities in terms of the teacher’s experienceand seamlessly integrates these two currently sepa-rate educational practices. (See the sidebar for a dis-cussion of other projects seeking to merge pervasivecomputing technologies and education.) More specif-ically, we extend the user interface of a legacy desk-

top-based tele-education system—SameView1,2—into the 3D space of an augmented classroom. Inthe Smart Classroom, teachers can use multiple nat-ural modalities while interacting with remote stu-dents to achieve the same effect as a teacher in aclassroom with local students.

Figure 1 gives an overview of the Smart Classroom.The system turns a physical classroom into a naturaluser interface for tele-education software. Teachersin the Smart Classroom can move freely, using con-ventional teaching methods to instruct remote stu-dents. Because they are in a real classroom environ-ment, they can accommodate local students at the sametime. Simultaneously instructing local and remote stu-dents also requires a smaller workforce than separateon-campus and tele-education operations. Further-more, the lecture, recorded as hypermedia course-ware, is available for playback after class.

Classroom setupOur prototype system is in a 3.2 × 7.6-meter room

divided by a curtain. The class takes place in themain part of the room. The other section is filledwith computers required by the system, purpose-fully hidden from view to exemplify the “invisiblecomputer” notion.

The classroom has two wall-size projectorscreens, one on the front wall and the other on aside wall (see Figure 2). The MediaBoard is a touch-sensitive SmartBoard screen for displaying teachingmaterials. Remote students can view the board’scontent via a client program (assuming remote stu-

The Smart Classroom integrates voice-recognition, computer-vision, andother technologies to provide a tele-education experience similar to areal classroom experience.

Yuanchun Shi, Weikai Xie,Guangyou Xu, Runting Shi, EnyiChen, Yanhua Mao, and Fang LiuTsinghua University

Page 2: The Smart Classroom: Merging Technologies for Seamless ...yamao/publications/MPervasive.pdfLaser pointers as interaction tools In most current desktop-based tele-edu-cation systems,

dents access the classroom via their com-puters). The StudentBoard displays remotestudents’ images and a computer-animatedvirtual assistant. When a remote studenttakes the floor, live video and audio of thestudent is projected here too. The teacher

and local students view and interact withremote students through the StudentBoard.

The classroom is equipped with severalcameras. Some capture the teacher’sactions, which are recognized and trans-lated into an interaction command to the

underlying tele-education software. Othercameras capture live video of the class-room, which the system broadcasts toremote students. The teacher also wears awireless microphone to capture his or herspeech.

Numerous software modules provideclassroom functionality. For example,SameView provides the interaction chan-nels between local and remote students, andvarious perception modules let the teacherinteract with remote students as thoughthey were local. The system’s softwareinfrastructure coordinates the distributedmodules.

Component technologiesThe system involves a number of com-

ponent technologies that make the inter-action between the teacher and remote stu-dents as smooth as that in a physicalclassroom. With the exception of IBMChina Research Lab’s speech recognition,our lab developed all these componenttechnologies. Due to space limitations, weonly describe how the technologies func-tion in the Smart Classroom project. Wedirect interested readers to the works citedfor descriptions of the technologies’ inter-nal algorithms.

Remote student telepresence When merging tele-education with real

classroom instruction, the teacher andlocal students must be made aware of theremote students. In the Smart Classroom,when remote students log on using theprovided client program, the client pro-gram uses cameras on the students’ com-

48 PERVASIVEcomputing http://computer.org/pervasive

T H E H U M A N E X P E R I E N C E

Camera

Lecture recording

Smart classroom

Display

Internet

Figure 1. The Smart Classroom system.Integrated modules let teachers interactwith remote students as though theywere in the physical classroom.

Figure 2. A snapshot of the prototypeSmart Classroom. Teaching materials aredisplayed on the MediaBoard at the frontof the class, while remote student imagesare displayed on the StudentBoard,located on a side wall.

Remote students

StudentBoard

MediaBoard

Virtual assistant

Page 3: The Smart Classroom: Merging Technologies for Seamless ...yamao/publications/MPervasive.pdfLaser pointers as interaction tools In most current desktop-based tele-edu-cation systems,

puters to capture their images and transferthem to the classroom’s StudentBoard. Pre-senting live video of all the remote studentswould certainly add color to the class, butdoing so would place too much of a burdenon the network and CPU. Thus, the Stu-dentBoard only displays the live video ofremote students who are explicitly giventhe floor.

We allocate the same fixed amount ofspace for each remote student image andplace them side-by-side. This approach,however, is not scalable when there aremore remote students than fit in the Stu-dentBoard’s display space. Our currentsolution is to limit the number of studentsthat can request the floor and display theirimages only. To better address the prob-lem, we are seeking more sophisticatedvisualization methods. One plan is to ren-der each image as if the remote studentswere seated in a large hall—the students’image size decreases as their virtual dis-tance from the teacher increases.

Pen-based user interface Teachers in real classrooms often write

on chalkboards or whiteboards. Most cur-rent tele-education practices, however, con-fine teachers to their computers by requir-

ing them to use the mouse and keyboard.We address this problem by adopting thewall-size touch-sensitive SmartBoarddevice as the display screen for Media-Board. A SmartBoard accommodates mostmouse functions. To move to a new page,for example, the teacher need only touchan icon on the display. Teachers can usedigital pens and erasers to write or removenotes and to diagram on the SmartBoarddirectly (see Figure 2).

With the help of the underlying real-timemultimedia communication software,remote students see the same lecture mate-rials or notes on the SmartBoard as localstudents do. Figure 3 shows the client pro-gram for remote students. A remote stu-dent who has the floor can also write onthis board freely—for instance, a studentmight write the solution to a question theteacher has just posed.

Laser pointers as interaction toolsIn most current desktop-based tele-edu-

cation systems, teachers use a mouse or key-board to relay classroom arbitration deci-sions to the computer. In the SmartClassroom, a computer-vision-based mod-ule called Laser2Cursor lets teachers accom-plish this task more intuitively: the teacher

aims the laser pointer at a remote student’simage (highlighted to indicate that it is thecurrent selection), and by clicking on theselected image—fixing the laser spot on thepoint of interest for a second and then cir-cling that point—the teacher gives the floorto a remote student or revokes it at will.

The module also works for the Media-Board, where the laser pointer serves as aremote mouse. Using this module, a teacherneed not approach the MediaBoard to runa slide presentation. Moreover, when theteacher points the laser pointer at the Media-Board to highlight a point in the lecture, ared spot is visible at the same position onthe remote students’ view.

Laser2Cursor embodies a number ofideas not seen in previous work on laserpointer tracking.3,4 First, we have devel-oped a training process to improve thesystem’s adaptability. By learning thebackground of the image captured by thecameras and parameters such as color seg-mentation and motion detection thresh-olds, our system automatically adapts tonew environments. Second, to improvethe system’s robustness, we integrate mul-tiple cues such as color, motion, and shapein the laser spot detection. Because mostpeople’s hands are unsteady, when a per-

APRIL–JUNE 2003 PERVASIVEcomputing 49

Figure 3. Remote students’ client interface. Students can watch live video of the teacher, view lecture notes on the MediaBoard, orchat with the teacher or other students.

MediaBoard withlecture notes

Student roster

Video ofteacher

Page 4: The Smart Classroom: Merging Technologies for Seamless ...yamao/publications/MPervasive.pdfLaser pointers as interaction tools In most current desktop-based tele-edu-cation systems,

son aims a laser pointer, the spot’s exactposition usually jitters. We use this char-acteristic as an additional cue to detectthe spot. Next, a Kalman filter smoothesthe spot’s trajectory, which tends to beirregular and rough. Finally, the moduleuses a finite state machine to track thespot’s behavior—that is, whether it ismoving or clicking.

To test the module’s usability, we askedseveral students in our lab to select items onthe MediaBoard using a laser pointer. Themodule yielded satisfactory performance,with most testers agreeing that spot detec-

tion is precise and that moving the cursoris almost as easy as it is with a mouse. Still,some students complained that clickingwas relatively difficult. As a remedy, weoffer users an optional interaction modal-ity: the voice command.

Speech-capable virtual assistantIn the Smart Classroom, a speech-recog-

nition module lets the teacher performsome common tasks using voice com-mands. For example, the teacher might say,“jump to the previous page,” or “goahead” to give the floor to a remote stu-

dent whose image is highlighted with thelaser pointer, as Figure 4 shows. To obtainreliable recognition, we limit the number ofvalid voice commands. Moreover, becausethe system’s recognition engine is set towork in voice-command-oriented mode, itseldom mistakes the teacher’s continuousspeech for voice commands.

The Smart Classroom also uses a text-to-speech module5 to notify the teacherwhen certain events occur. For example,when remote student Tom asks for thefloor by clicking a menu item on the clientprogram, the system advises the teacher,“Tom is asking for the floor.”

Because teachers might feel strangeinteracting with a lifeless classroom, weadopted a virtual assistant to representthe Smart Classroom. On the Student-Board, a computer-animated humanimage (see Figures 2 and 5) with facialexpressions and lip movements synchro-nized with the text-to-speech module’ssynthesized voice represents the virtualassistant.6 Thus, the system provides anatural metaphor and the teacher inter-acts with an assistant that understandsvoice commands and produces propervocal notification and feedback.

Biometrics-based loginThe Smart Classroom must identify a

lecturer before authorizing use of the class-room facilities. By combining face-recog-nition and speaker-verification technolo-gies,7,8 the Smart Classroom can identifya teacher automatically and provide anundeterred login experience.

On entering the Smart Classroom, theteacher stands in front of a camera andsays his or her name (or any other words

50 PERVASIVEcomputing http://computer.org/pervasive

T H E H U M A N E X P E R I E N C E

Figure 4. A teacher highlights a remotestudent’s image using a laser pointer andissues the voice command, “Go ahead,”to give the student the floor.

Go ahead

Figure 5. A teacher logs on to the SmartClassroom using a biometrics-based module combining face-recognition andspeaker-verification technologies.

Your name,please.

A camera for face recognition is installed

behind the mirror

I’m Weikai

Virtual assistant

Page 5: The Smart Classroom: Merging Technologies for Seamless ...yamao/publications/MPervasive.pdfLaser pointers as interaction tools In most current desktop-based tele-edu-cation systems,

the teacher has chosen). If both the face-recognition and speaker-verification mod-ules respond positively, the virtual assis-tant replies with a greeting that places theSmart Classroom at the teacher’s disposal,as Figure 5 illustrates. The system uses theteacher’s identification information toload the proper voice model into thespeech-recognition module, if the teacherhas trained the model in advance. Thisimproves voice-recognition accuracy dur-ing the lecture.

Smart CameramanIn a conventional classroom, students

naturally follow the class’s focus as itchanges from time to time. For instance,when a teacher writes a formula on theblackboard, the formula becomes the cen-ter of attention; when a teacher holds upa model, the model becomes the object ofgeneral interest. Yet in most current real-time teaching systems, remote studentsonly see a fixed scene regardless of thechanging context of the class, which ham-pers their understanding of the instruction.Although a human camera operator canselect the proper view for live video, thehigh labor cost often makes this infeasi-ble. More importantly, teachers and stu-dents generally agree that having such aperson in class would make them uneasy.

The Smart Cameraman overcomes thisproblem. This component consists of anarray of cameras and a decision module.

By drawing clues from observed classroomactivities, the Smart Cameraman auto-matically distinguishes among severalactivities during a typical class. Using thisinformation, the decision module selectsthe most appropriate view. We define sev-eral context types for this module:

• Teacher writing on the MediaBoard.Whenever the teacher is writing on theMediaBoard, the module selects a close-up view of the board, as Figure 6ashows.

• Teacher showing a model. When theteacher holds up a model, the camerazooms in on it, as Figure 6b shows.

• Remote student speaking. When aremote student is speaking, live video ofthe student will be delivered to otherremote students. Meanwhile, it will bedisplayed on the StudentBoard.

• Other. In all other situations, the mod-ule selects the classroom overview, asFigure 6c shows.

By tracing the SmartBoard’s mouseevents, the Smart Cameraman knows

when the teacher is writing on the Media-Board; by monitoring floor control events,it can tell when a remote student is speaking.Meanwhile, a separate computer-vision-based hand-gesture-recognition moduledecides whether the teacher is holding upa model.9 For reliable recognition, we cur-

rently restrict the teacher to a predefinedarea when displaying models. We modelthe class context using a finite-statemachine whose state transitions are trig-gered by recognized cues. To filter possibletransient misrecognition, each state has anassociated minimum steady time.

Software infrastructureIn systems such as the Smart Classroom,

in which various modules must be con-nected and coordinated, the software infra-structure plays a key role. The infrastruc-ture provides the runtime environment andcommon services for the modules as well asa development interface for building mod-ules that can be seamlessly integrated intothe system. The Smart Platform10 (see ourWeb site, http://media.cs.tsinghua.edu.cn/

APRIL–JUNE 2003 PERVASIVEcomputing 51

Figure 6. Different scenes delivered to remote students according to the class context: (a) teacher writing on MediaBoard; (b) teacher showing a model; (c) teacher having a discussion with local students.

(a) (b) (c)

In systems such as the Smart Classroom,

in which various modules must be connected

and coordinated, the software infrastructure

plays a key role.

Page 6: The Smart Classroom: Merging Technologies for Seamless ...yamao/publications/MPervasive.pdfLaser pointers as interaction tools In most current desktop-based tele-edu-cation systems,

~pervasive, for runtime code and the soft-ware developer’s kit) is not limited to theSmart Classroom but addresses commonareas of concern for any smart space pro-ject, including these issues:

• The components in a smart space mightnot have been designed to cooperate with

each other. To assemble them with leasteffort, we need a high-level abstractionmodel and coordination mechanism.

• Many perceptual interface modules areprone to runtime errors or exceptions,making it necessary to occasionallyrestart them, especially during jointdebugging. A loosely coupled system is

therefore essential not only to ensureruntime error resilience but also to facil-itate system development.

• Many modules must exchange real-time data at a constant rate—that is,they exhibit characteristics of stream-oriented communications. For instance,the Laser2Cursor module sends the

52 PERVASIVEcomputing http://computer.org/pervasive

T H E H U M A N E X P E R I E N C E

M any research projects have sought to augment traditional

education with pervasive computing technologies. They

cover different aspects of educational activities.

As many students might agree, it is difficult to keep up with

both their notes and the lecture. DePauw University’s Debbie pro-

ject (http://acad.depauw.edu/~dberque/debbie/index.htm) tack-

les this problem by providing teachers and students with pen-

based tablet PCs and associated software. As the teacher displays

digitalized lecture materials or writes notes on his or her tablet, the

system distributes a synchronized view to the students’ devices,

and students can save it with their notes. Laurent Denoue and

Patrick Chiu at Fuji-Xerox Palo Alto Laboratory (FXPAL)1 assume

students have handheld devices with relatively inconvenient

means of inputting text. In their system, a word or phrase entered

by one person can be quickly reused by others. With the

concerted efforts of all group members, note taking becomes

more efficient.

Other researchers attempt to capture the classroom experience,

where not only the note and slides, but also the live video and

audio and other class threads can be recorded in a synchronized

and structured manner. A student can use the recorded documents

to review the lecture after class, or to make up for a missed class.

GaTech’s Classroom 2000,2 McGill University’s Intelligent Class-

room,3 Cornell University’s Lecture Browser (www.cs.cornell.edu/

zeno/projects/lecture browser/Default.html), and the conference

room at FXPAL4 are different implementations of the same facility.

In these projects, the captured classes are stored in a Web-accessi-

ble format so they readily become courseware for tele-education.

Rather than have students passively view recorded documents,

David Bargeron and his colleagues at Microsoft Research propose

adding communication channels such as email so a student can

interact with the teacher when viewing the recorded class.5 As they

note, however, such interaction is asynchronous.

Other projects seek to automate routine classroom tasks. In

McGill’s Intelligent Classroom, the computer system does the

housekeeping chores, so lecturers need not worry about things

such as light or drape control or A/V device configuration. North-

western University’s Intelligent Classroom project focuses on auto-

mated lecture video production, in which the camera uses plan-

recognition technologies to track the lecture’s focus.6 AutoAudito-

rium (www.autoauditorium.com), a commercially available prod-

uct, shares a similar objective but is more suitable for business pre-

sentations.

Although our system has many similarities to these works, it dis-

tinguishes itself by allowing the teacher to simultaneously interact

with local and remote students in a similar fashion. Work at the

University of Toronto’s Knowledge Media Design Institute (http://

epresence.kmdi.utoronto.ca) is similar to ours in that remote stu-

dents can participate in a real classroom via the Internet. Our sys-

tem provides a rich variety of bidirectional interaction capabilities,

however, whereas in their work the interaction channel from

remote students to local teachers or students is limited to plain

text chatting. Furthermore, many tele-education projects have

used computer-supported cooperative work or videoconference

products such as Microsoft’s NetMeeting, which involve desktop-

based teaching—exactly what we try to overcome.

REFERENCES

1. L. Denoue, P. Chiu, and T. Fuse, “Shared Text Input for Note Taking onHandheld Devices,” Proc. ACM Human Factors in Computing Systems(CHI 2002), ACM Press, 2002, pp. 794–795.

2. G.D. Abowd, “Classroom 2000: An Experiment with the Instrumenta-tion of a Living Educational Environment,” IBM Systems J., special issueon pervasive computing, vol. 38, no. 4, 1999, pp. 508–530.

3. J.R. Cooperstock, “Classroom of the Future: Enhancing Educationthrough Augmented Reality,” Proc. Conf. Human-Computer Interaction(HCI Int’l 2001), Lawrence Erlbaum Assoc., 2001, pp. 688–692.

4. P. Chiu et al., “Room with a Rear View: Meeting Capture in a Multime-dia Conference Room,” IEEE Multimedia, vol. 7, no. 4, Oct.–Dec. 2000,pp. 48–54.

5. D.M. Bargeron et al., Asynchronous Collaboration Around Multimedia andIts Application to On-Demand Training, Microsoft Research tech. report99-66, 1999.

6. D. Franklin, “Cooperating with People: The Intelligent Classroom,”Proc. 15th Nat’l Conf. Artificial Intelligence (AAAI 98), AAAI Press, 1998,pp. 555–560.

Pervasive Computing Technologies in Education

Page 7: The Smart Classroom: Merging Technologies for Seamless ...yamao/publications/MPervasive.pdfLaser pointers as interaction tools In most current desktop-based tele-edu-cation systems,

updated cursor position to the Media-Board module 10 times per second. Insuch cases, communication latency isof serious concern.

• Developers of smart space componenttechnologies are not necessarily distrib-uted computing experts and thus prefera simple system structure and develop-ment interface to a sophisticated one.

Architecture and runtime structure In the Smart Platform, each module is

modeled as an agent that has its own goaland cooperates with others through aninteragent language. An agent encapsulatesnot only the module’s state and behavior butalso the logic for activating its behavior, andinteragent communication occurs on a rel-atively high level, usually the intention level.These features are suitable for constructinga system involving diversified componenttechnologies, such as the Smart Classroom.

Figure 7a shows the Smart Platformarchitecture. Between the bottom operatingsystem/network layer and the upper appli-cation layer are the communication andcoordination layers. The former enhancesthe underlying network layer’s quality ofservice; the latter lets agents collaborate ina structured and coherent manner to achievethe system’s overall goal. A vertical run-time environment management mechanismmanages tasks such as agent registry, agentlifecycle, and so on.

The Smart Platform’s runtime structure,shown in Figure 7b, has two tiers. Eachcomputer in the system hosts a containercomponent, which provides a local runtimeenvironment for agents on the same host.Globally, a directory service component isresponsible for agent registration, messagedispatch, and system management.

On startup, agents connect to their localcontainer on a predefined local socket,

while the container and the directoryservice establish connection with a self-discovery mechanism based on IP multicast.More specifically, the directory servicealways listens on a multicast address. Thecontainer sends a “hello” message to thisaddress. On receiving the message, thedirectory service responds with a “hello-ack” message to the container, specifying

its IP address and port where the containercan establish a connection to it.

The two-tier structure has two signifi-cant advantages: resilience to transient net-work failures and zero system configura-tion. When the network connectionrecovers from a transient failure, only thecontainer must renegotiate the connectionwith the directory service; the connectionsbetween local agents and containers willremain unaffected. The automatic directoryservice–container negotiation mechanismalso frees developers and users from hav-ing to configure system components to tellthem the locations of other components.

Interagent communicationThe Smart Platform coordinates agent

communication via a message-group-based

publish-and-subscribe model. Each agentcan publish messages or subscribe to anymessage group. If an agent designates anunknown message group, the system cre-ates the new group immediately. Therefore,the agents need not start up in a rigid rel-ative order. When an agent publishes amessage to a group, the system forwardsit to all subscribers by invoking a callback

function on the receiving side. This coor-dination model enables a loosely coupledsystem with these features:

• An agent need not have prior knowledgeof other agents’ names or locations. Aslong as it is working with the correctmessage group, the directory service willhandle all message routing.

• Agents communicate in an asynchro-nous and nonblocking way, restrictingthe spread of failures and facilitating sys-tem recovery after an agent fails.

Two kinds of message groups areavailable:

• Message-oriented, for communicationswithout tight temporal constraints

APRIL–JUNE 2003 PERVASIVEcomputing 53

C

D

Participatingcomputer

Participatingcomputer

Participatingcomputer

C

C

Communication layer

Coordination layer

Application layer

OS/network

Runtime environm

entm

anagement

A

A

A

A

AA

A

A

Legend:A AgentC ContainerD Directory service(b)(a)

Figure 7. The Smart Platform. (a) The platform architecture consists of four layers and a vertical runtime environmentmanagement mechanism to manageagents. (b) The two-tier runtime structureprotects against transient network failuresand requires no configuration.

In the Smart Platform, each module is modeled

as an agent that has its own goal

and cooperates with others through an

interagent language.

Page 8: The Smart Classroom: Merging Technologies for Seamless ...yamao/publications/MPervasive.pdfLaser pointers as interaction tools In most current desktop-based tele-edu-cation systems,

• Stream-oriented, to transmit data thatare sensitive to transmission delay anddelay variation

Messages in the message-oriented groupare transferred along the agent-container-directory service-container-agent path,with the directory service acting as messagedispatcher and replicator. For the stream-oriented messaging service, the directoryservice assigns an IP multicast address toeach streaming group, and the system trans-fers the message to this address directly,using the real-time transport protocol(RTP). Such peer-to-peer communicationeffectively reduces transmission delay. RTPand the associated buffering scheme on thereceiver’s side lessen the variation in mes-sage delivery latency. Furthermore, IP mul-ticast ensures that subscribers in the samegroup receive messages simultaneously.

The Smart Platform message formatconforms to the XML standard both onthe agent level and the wire protocol level.XML’s extensibility means developers canadd more descriptive fields to their mes-sages without disturbing agents that onlyunderstand old versions of messages. TheXML-based wire protocol will help oursystem interoperate with others in thefuture.

Runtime environment managementand debugging support

Users or developers of a distributed sys-tem often find it cumbersome to have to

walk from computer to computer to startagents or check their running states. Toavoid this, the Smart Platform uses anagent dependency-management mecha-nism and a centralized system-monitoringand debugging mechanism.

When registering with the directory ser-vice, each agent should specify two argu-ments: OfferedSvcs, a list of services the agentoffers; and ReliedSvcs, the services it relies onfor normal operation. Through these argu-ments the directory service learns the inter-agent dependencies. Furthermore, byrecording agents’ location history, thedirectory service can automatically nego-tiate with the correct container to launchan agent whose service is demanded by arunning agent. Thus, a group of agents canbe loaded in one action.

The containers and directory servicehave built-in system state collection andcontrol capabilities, which can be accessedthrough a system-level agent called themonitor. Figure 8 shows the monitor’s userinterface, which includes the host nameand IP address of the computers partici-pating in the runtime environment, therunning agents and their status, and theinteragent dependency topology. Systemdevelopers can use monitor agents toremotely launch or kill an agent, trace anagent’s messages, or manually send a mes-sage to a group or an individual agent.

Agent development interfaceThe Smart Platform agent development

interface is fairly simple and straightfor-ward. In most cases, agents only need fiveprimitives: Register, Subscribe, OnMsgNotify, Pub-lish, and Quit. The interface is provided asan abstract class, available in both C++and Java. We also implemented a customAppWizard for Visual C++, with whichdevelopers can generate an agent’s skele-ton code in a single step. In addition, weprovide a standard setup program thatautomatically installs and configuresrequired components for new computers,making deployment much easier.

We performed an informal usabilitystudy of the Smart Platform by trainingSmart Classroom project members to useit. The seven participants differed inresearch backgrounds and distributedcomputing expertise. Our observationsshowed that most of them grasped theSmart Platform principles and could use itsSDK in less than an hour. Half of thetrainees deployed the Smart Platform ontheir own computers and began developingagents without further help.

In informal user evaluations with sev-eral teachers from different depart-ments at our university, our proto-type system received positive

comments, especially for its rich and intu-itive interactive channels for working withremote students. In collaboration withTsinghua University’s Distance LearningSchool, we plan large-scale testing of thesystem in Fall 2003.

As portable computing devices prolifer-ate, teachers will more likely take portablecomputers or PDAs into the Smart Class-room. Thus, our future work will seek toconfigure the interfaces to support theavailable devices and seamlessly addmobile devices to the Smart Classroom.

54 PERVASIVEcomputing http://computer.org/pervasive

T H E H U M A N E X P E R I E N C E

Figure 8. Monitor agent user interface.The system-level agent lets usersremotely launch or kill an agent, traceagent messages, or send messages manually.

Hierarchicallist of

containersand agents

Tracedmessages

Existingmessagegroups and their subscribers

Graphicalillustrationof agentdependency

List of message

groups andtracedagents

Page 9: The Smart Classroom: Merging Technologies for Seamless ...yamao/publications/MPervasive.pdfLaser pointers as interaction tools In most current desktop-based tele-edu-cation systems,

ACKNOWLEDGMENTSThe research presented here is supported by theNational Natural Science Foundation of China, 863High-Tech Plan, the Ministry of Education, China,and IBM China Research Lab.

REFERENCES1. C.Y. Liao, Y.C. Shi, and G.Y. Xu,

“AMTM—an Adaptive Multimedia Trans-port Model,” Proc. SPIE Int’l Internet Mul-timedia Management Systems, Int’l Soc. forOptical Eng. (SPIE), 2000, pp. 141–149.

2. Y.Z. Pei et al., “Totally Ordered ReliableMulticast for Whiteboard Application,”Proc. 4th Int’l Workshop on CSCW inDesign, Univ. de Technologie de Com-piegne, Compiegne, France, 1999, pp.253–256.

3. C. Kirstein and H. Muller, “Interaction witha Projection Screen Using a Camera-Tracked Laser Pointer,” Proc. MultimediaModeling (MMM 98), IEEE CS Press,1998, pp. 191–192.

4. D.R. Olsen and T. Nielsen, “Laser PointerInteraction,” Proc. ACM Human Factorsin Computing Systems (CHI 2001), ACMPress, 2001, pp. 17–22.

5. J.H. Tao and L.H. Cai, “A Neural NetworkBased Prosodic Model of Mandarin TTSSystem-2,” Proc. Int’l Conf. Spoken Lan-guage Processing (ICSLP 2000), China Mil-itary Friendship Publish, vol. II, 2000, pp.75–78.

6. H. Zhang et al., “Robust Pose Estimationfor 3D Face Modeling from StereoSequences,” Proc. IEEE Conf. Image Pro-cessing (ICIP 2002), vol. III, IEEE SignalProcessing Soc., 2002, pp. 333–336.

7. F. Xie, G.Y. Xu, and E. Hundt, “A Face Ver-ification Algorithm Integrating Geometri-cal and Template Features,” Proc. 2ndIEEE Pacific-Rim Conf. Multimedia(PCM2001), Springer, 2001, pp. 253–260.

8. Z.Y. He and Q.X. Hu, “A Speaker Identi-fication System with Verification MethodBased on Speaker Relative Threshold andHMM,” Proc. 6th Int’l Conf. Signal (ICSP2002), People’s Posts and Telecomm. Pub-lishing House, 2002, pp. 488–491.

9. H.B. Ren and G.Y. Xu, “Human ActionRecognition in Smart Classroom,” Proc.5th IEEE Int’l Conf. Automatic Face andGesture Recognition, IEEE CS Press, 2002,pp. 399–404.

10. W.K. Xie et al., “Smart Platform: A Software

Infrastructure for Smart Space (SISS),” Proc.4th Int’l Conf. Multimodal Interfaces (ICMI2002), IEEE CS Press, 2002, pp. 429–434.

For more information on this or any other comput-ing topic, please visit our Digital Library at http://computer.org/publications/dlib.

APRIL–JUNE 2003 PERVASIVEcomputing 55

the AUTHORS

Yuanchun Shi is a professor in the State Key Laboratory of Intelligent Technologyand Systems, Department of Computer Science, Tsinghua University, China. Herresearch interests include pervasive computing, human-computer communicationtechnology, and distributed multimedia processing. She received her PhD in com-puter science from Tsinghua University. She is a member of the IEEE and the vicechairperson of the Young Scientist Committee of the China Computer Federation.Contact her at [email protected].

Weikai Xie is a PhD candidate in the Department of Computer Science at TsinghuaUniversity, China. His research interests include software infrastructure for smartspaces, formal context data representation, and context-reasoning models in con-text-aware computing. He received a BS in computer science from Tsinghua Univer-sity. Contact him at [email protected].

Guangyou Xu is the chair professor of the Department of Computer Science,Tsinghua University. His research interests are in computer vision, human–computerinteraction, and multimedia computing. He graduated from the Department ofAutomatic Control Engineering, Tsinghua University, China. He is a senior memberof the IEEE and a standing member of the Council of China Image and GraphicAssociation. Contact him at [email protected].

Runting Shi is a senior undergraduate in the Department of Computer Science’sPervasive Computing Group at Tsinghua University, and a part-time student in theInternet Media Group, IBM China Research Lab. Her research interests include soft-ware infrastructures for smart spaces, media streaming, peer-to-peer computing,and scalable multicast infrastructures. Her homepage is available at http://media.cs.tsinghua.edu.cn/~shirunting.

Enyi Chen is a PhD candidate in the Department of Computer Science, TsinghuaUniversity. His major research interests include smart spaces, mobile and wirelessnetworks, human–computer interaction, and multimedia systems. He received hisMS in computer engineering from Northern Jiaotong University, China. Contacthim at [email protected].

Yanhua Mao is an MS candidate in the Department of Computer Science, TsinghuaUniversity. He received a BS in computer science from Tsinghua University. He isnow working on software infrastructures for smart spaces. Contact him at [email protected].

Fang Liu is an MS candidate in the Department of Computer Science, TsinghuaUniversity. His research interests include computer vision, graphics, and human–computer interaction. He received a BS in computer science from Huazhong Uni-versity of Science and Technology. Contact him at [email protected].