Skip to content

Batch Training Example

Erik Harpstead edited this page Aug 6, 2020 · 4 revisions

Requirements

To use this example you must have the following Apprentice Learner repositories installed:

Batch Training Walkthrough

One of the main ways we employ AL agents in the LearnLab is to simulate one or more students learning while using an intelligent tutor. We have applied this approach to model human behavior in previously authored tutoring systems from prior studies [pdf]. We have also used it to compare different tutoring systems (e.g., that present fractions training in different ways) to see which best support human learning [pdf]. Finally, we have used learner simulation to test different theories of how people learn—through comparison of model behavior and human behavior [pdf]. All of these studies made use of batch training.

Batch training is used to provide AL agents with a predefined set of training problems that they will learn from. When training agents using this approach, you do not need to manually provide it with examples or feedback. Agents are trained using previously created practice problems. Specifically, our current tools support the use of example-tracing tutors created by the CTAT authoring tool. The training tool is called altrain and was installed as part of the AL_Train repository.

To see an example of how batch training works, navigate to the examples folder of the AL_Train repository (AL_Train/examples) then run the following command:

altrain example_training.json

Note that the first time you run the training script it may take some time to start up. After you run the command, you should see a user interface open in your web browser that looks something like this:

An whole number addition tutor interface showing the problem 1 + 1.

The agent will attempt to take actions in the interface, receive feedback based on the tutoring model represented by the CTAT BRD file that is loaded (specified at the bottom) and work through the problems. Fields in the interface should populate as the agent works and turn red or green based on the correctness of actions (blue text represents demonstrations from the tutoring system).

At the same time you should see text scrolling in your terminal that looks something like this after some time (colors may vary slightly by operating system but red, green, and blue lines should be noticeable):

An image of a console log showing colored rows of output.

This log describes the series of interactions the agent experiences as it works through the problem. Initially the agent mostly gets examples (blue lines) as it starts out knowing nothing about the task. Eventually it will try to take its own actions, which initially are often incorrect (red lines). As the agent learns, it will make a higher percentage of correct actions (green lines). The white lines denote problem transitions.

Slight variation in the agent’s behavior between systems, or even runs of altrain on the same system, are normal. If you are seeing substantially different behavior from what is described above, consult the Troubleshooting Batch Training Example section or reach out to one of the track chairs.

The examples folder of the AL_Train repository contains several other training specification files that you can try running to see other kinds of AL behavior. The integration_test.json file runs a similar simulation to example_training.json but uses three differently configured agents to show how different theoretical assumptions impact learning performance.

Troubleshooting the Batch Training Example

No interface loads in my browser or it looks wrong

One error that we’ve encountered before was due to an ad blocker preventing the tutoring interface from properly loading in the browser. If the interface shown above does not seem to load in your browser and you have an ad blocker, then try disabling it.

Large blocks of text in the terminal window

If there are occasionally large blocks of normally colored text in the terminal window this is often normal. The main thing to look for is the blue, red, and green lines.

Warning about a development server

You may see a warning at the beginning of the run that says “WARNING: This is a development server. Do not use it in a production deployment.” This is normal and does not pose any problem if you are running tests on your own machine. If you plan to deploy a larger simulation project on a remote server you would need to reconfigure some of the server settings to make sure it is secure for the public web.

Clone this wiki locally