This project introduces an “aquarium” visualization that represents the magnitude of variables, providing a more intuitive interface for exploring causal relationships.
The cognitive task can be described as follows:
“We need to study the food chain relationships among these three types of fish (represented by three different shapes in this demo) and identify which type of fish affects the population of any other type — whether by increasing or decreasing it.”
By modifying the task description, adding more vivid aquarium details, and changing interaction modes, we can systematically explore how the intuitiveness of such a cognitive task — in one particular sense of ecological validity — influences cognitive strategies.
- High performance — Rust is extremely fast, comparable to C++, which is important for running real-time simulations efficiently.
- Strong type system — Rust's type system catches many errors at compile time, improving the reliability of experimental code.
- Pattern matching — Rust's powerful pattern matching simplifies handling of experimental states and events.
- Memory safety — Rust ensures memory safety without a garbage collector, reducing runtime errors and simplifying maintenance.
- Growing ecosystem — Rust provides tools and libraries across many domains, enabling flexible extensions (though its ecosystem is still maturing compared to Python).
- Add a recording system to log experimental data
- Rearrange the UI
- Enrich the details of the aquarium and fish
- Add a historical variable chart to display changes in each variable over the past 10 seconds