Marco Antonio Gómez-Martín
Image Available Soon


Universidad Complutense of Madrid


A virtual view of the Java Virtual Machine
Thursday & Friday

Learning-by-doing is an experience-based style of learning where the student is aware what she needs to learn during the resolution of a problem. This way of learning is inherited from the days of the apprentices of manual works as carpenter or plumber. Computer virtual environments allows us to build simulators of machines and situations where a student acts as she would do in the real world, developing proficiency in a controlled and safe environment. For example Stottler (2000) presents a simulation scenario to instruct tactical action officers, and in Rickel & Johnson (1999) the student boards into a virtual ship to learn how a high-pressure air compressor works. It can be also possible to create virtual environment that have not counterpart in the real world. For example, Bares, Zettlemoyer, & Lester (1998) present a metaphorical computer where the user has to fetch instructions from the main memory to the CPU and executes them.

Similar to these ideas, we propose the use of the learning-by-doing approach to teach the compilation of object-oriented languages, in particular teaching Java compilation. Instead of becoming yet another boring educational program, the resulting system includes a 3D metaphorical simulation of the Java Virtual Machine (JVM) (Lindholm & Yellin, 1999), where the student explores compilation scenarios. The system is called JV2M, meaning twice virtual because of the representation of the Java Virtual Machine in a virtual environment.

The first point of motivation is each exercise being solved in a game-like environment, where the user must move around and manipulate virtual objects. Interaction is accomplished in a similar way to some 3D graphical adventure games, like "Grim Fandango" or "Monkey Island: Escape from Monkey Island". For example, the user owns an inventory where she can store items that represent elements in the underlying Java Virtual Machine, as operands or method names.

On the other hand, the learning environment is enriched with a pedagogical agent called JAVY. A pedagogical agent (to mention just a few see Rickel & Johnson, 1999, and Lester, Voerman, Towns, & Callaway, 1997) is a human-like figure that assists the user in the learning process. It is usually accepted that these characters, when exhibiting strikingly lifelike behaviours, play a powerful motivational role due to their affective dimensions (Lester et al, 1997). JAVY is able to help the user when she asks it or gets stuck, providing contextualised explanations depending on the current resolution situation.

Tutoring is accomplished by means of conversations between the student and the agent. Dialogues are steered by the system in the way adventures games used to do it. Instead of using free natural language, the user is faced to a reduced number of sentences each time, and she must select one of them depending on what she wants to ask.

Although we have implemented a functional prototype, we are still working to improve the conversations. Our current work focuses mainly in two areas: providing a more affective response to JAVY and improving the exercise selection.

Finally, in order to incentive the system use, its educational aspect is hidden under an attractive background story. The user avatar, who used to live in the real world, wakes up with a hangover in a mysterious cartoon straw rick. He discovers he has been rammed into a virtual world, known as YOGYAKARTA, where he wants immediately run away. In the virtual world, our main character is not alone. Other characters who are in similar horrible situation, locked in a world that is not theirs, populate the environment. They are oppressed peasants, who have neither time nor enough knowledge to unleash a war of liberation. That will be, precisely, the role of the user: to lead a crusade for freedom.


W. Bares, L. Zettlemoyer, and J. C. Lester. Habitable 3D learning environments for situated learning. In Proceedings of the Fourth International Conference on Intelligent Tutoring Systems, pages 76{85, San Antonio, TX, August 1998.

J. C. Lester, S. A. Converse, S. E. Kahler, S. T. Barlow, B. A. Stone, and R. Bhogal. The persona effect: affective impact of animated pedagogical agents. In Proceedings Human Factors in Computing Systems (CHI'97), pages 359-366, Atlanta, March 1997.

J. C. Lester, J. L. Voerman, S. Towns, and C. B. Callaway. Cosmo: A life-like animated pedagogical agent with deictic believability. In Working Notes of the IJCAI '97 Workshop on Animated Interface Agents: Making Them Intelligent, pages 61-69, Nagoya, Japan, August 1997.

T. Lindholm and F. Yellin. The Java Virtual Machine Specification. 2nd Edition. Addison-Wesley, Oxford, 1999.

J. Rickel and W. L. Johnson. Animated agents for procedural training in virtual reality: perception, cognition and motor control. Applied Artificial Intelligence, 13(4):343-382, 1999.

R. H. Stottler. Tactical Action Officer Intelligent Tutoring System (TAO ITS). In Proceedings of the Industry/Interservice, Training, Simulation & Education Conference (I/ITSEC 2000), November 2000.

Click here to close the window.