Climatology / Two-Layer Atmospheric Model Tutor

This tutor helps learners understand a simplified model of a planet’s atmosphere, which gives insight to why greenhouse gases affect our global temperature. You’ll learn the scientific basis of climate change. It is a rule-based tutor with CTAT and Nools rules engine.

This project was done with my partner Jialu Li, for the class Personalized Online Learning with Professor Vincent Aleven. Our “client” is Professor Vaishnav, who teaches the graduate level Climate Change Science and Adaptation class at CMU. Jialu and I did the research and prototyping together, and for the final product, Jialu designed the UI and I implemented it.

Technology Used

This is a rule-based CTAT tutor, with NoolsJS as the rules engine (reference here).

The UI is implemented with plain HTML, CSS and JavaScript (within nools).

Learning Science

The target learners are graduate students new to climate science, but know undergraduate-level physics. We performed cognitive task analysis (think-alouds) to find out what’s difficult for learners so we can give them targeted practice on what they really need.

Cognitive tutors have their roots in the ACT-R cognitive theory. As we translated the targeted knowledge into production rules, CTAT is able to track learners’ progress on each specific skill, shown as skill bars.

We made special efforts to allow learners directly manipulate an interactive diagram, instead of separating controls with the representative graphics. This helps reduce learners’ extraneous cognitive load, and avoid the “split attention” effect.

Known Issues

There’s much room for improvement in terms of defining the skills at a more granular level, and provide more targeted feedback on the many different ways learners might make an error.

For the UI, we’d like to have the overall layout to be more compact (hopefully to avoid vertical scrolling). There are also some less-obvious user interactions that could benefit from better directions or design.

Code & Live Demo

Check out the GitHub repo.