Adaptive Virtual Tutor for Chemistry Study Preparation (VirtuTutor)

Term SS 2024 + WS 2024/2025
Study programme Computer Science Master's
Computer Engineering Master's

What we have so far

Beginner chemistry students need a lot of practice to internalise basic laboratory operations and routines. To aid with this problem, one of our project groups developed the VirtuChemLab. In this virtual reality application, students can practice in a safe environment which is independent from available lab space and independent from the availability of advisors.

Inside of the virtual chemistry laboratory, students can practice different lab routines like weighing or setting up a gas burner. Additionally, students are able to perform entire experiments. This ranges from simple experiments like oberserving a rise in temperature from the exothermic reaction of sodium hyroxide with water to determining the concentration of an unknown acid via titration. To aid students, an instruction board inide of the lab details the individual steps which need to be done. Upon completion, the steps are automatically marked as done. To make this possible, our application also boasts a chemistry simulation. This simulation tracks multiple aspects like the temperature and pH value of different chemicals.

In addition to the virtual chemistry laboratory, the application contains a virtual seminar room. This can be used to familiarize oneself with the virtual environment, talk to others, and hold presentations.

Our vision – A virtual tutor

What the virtual laboratory currently lacks is adequte feedback for the students. However, we do not want to simply give feedback through the use of dialogue boxes. Instead, we want to incorporate a virtual tutor into the VirtuChemLab. This tutor, in the guise of a human avatar, would be controlled by the system itself. It shall be able to verbally communicate with a human student. Additionally, the tutor should react to what the student does. For example, if a student forgets to zero a scale before trying to weigh a chemical, the tutor should intervene and lecture the student about the proper handling of the scale.

Apart from immediate feedback, the tutor should also be able to give further hints and answer questions. Regarding these aspects, the system should consider the experince level of the student. When a students assembles a gas burner for the first time, they might need some help. If a student has already used the gas burner dozens of times, too many hints might quickly become annoying.

Our vision – The editor

Novice students lack experience in conducting experiments. Because of that, they need guidance when during an experiment. Now, many programmers might also lack this knowledge and experinced chemists might not know how to program. To solve this problem, the project group responsible for the creation of the VirtuChemLab also developed another application: an editor which allows non-programmers to define experiment instructions. Instead of writing code, an experiment can then simply be defined visually.

The visual representation has multiple benefits. Firstly, it is much more approachable than having to write a program which needs to obey a strict syntax. Secondly, it is no longer dependent on the linearity of text. Because of that, it is easier to model that there is not always a single valid order in which experiments need to be conducted. For example, it is not important whether the student first fixes a thermometer onto a support stand and then prepares a beaker with water. It is, however, important that both of these things are done before the student can put the thermometer into the water.

Currently, the scope of the editor is limited. We would like to see the editor being able to handle an increased variety of experiments. Furthermore, it would be interestering to see how the virtual tutor may utilize the information from the editor.

What you can expect

If you join our project group, you will mainly be working with Unity. Unity is a game engine which allows to develop applications such as the VirtuChemLab with C# scripts as well as with visual programming. Constructing 3D models can be done with Blender. Of course, you will also work with Git.

We will provide you with access to our pool area on the second floor of the F building. There, we have multiple powerful PCs and VR headsets.

Who are we looking for?

To improve the VirtuChemLab, we need a lot of different skills. Of course, as we are mainly working with Unity, an interest in 3D graphics and game engines would be great. Apart from that, we will work on topics from

  • Graphical user interface design,
  • Usability and user testing,
  • Artificial intelligence and natural language processing,
  • Multi-user applications, and
  • Simulations.

You do not need to be an expert in any of these topics to participate in our project group. After all, one goal of the project group is to gain expertise in a topic you are interested in.

You do not need to have any prior experience with Unity or C#, you will learn as you go along. You also do not need to be knowledgable about chemistry. This project group will partly be advised by people from the chemistry department. They will be able to help you with any chemistry-related questions which might arise.

Main contact

Jan-Luca Hansel

 Jan-Luca Hansel

Theory of Distributed Systems

Research Associate

Algorithmen und Komplexität / Heinz Nixdorf Institut

Research Associate

+49 5251 60-6433
Fax (External):
+49 5251 60-6482
Fürstenallee 11
33102 Paderborn

The team

Jan-Luca Hansel  

Jan-Luca Hansel

Office: F2.413
Phone: +49 5251 60-6433

André Graute  

André Graute

Office: F2.413
Phone: +49 5251 60-6451

Matthias Fischer  

Dr. Matthias Fischer

Office: F1.223
Phone: +49 5251 60-6466

Hendrik Peeters  

Hendrik Peeters

PhD student

Office: J6.208
Phone: +49 5251 60-1883

Further information :