The Science Game

Project Proposal by Martin Stacey


The Science Game

Software

Java or C++ or Smalltalk or another object oriented language with good GUI facilities

Covers

Programming, object oriented design, simple graphics

Skills Required

Programming, preferably curiosity about science and how to teach it

Challenge

Conceptual ???? Technical ?? Programming ?????

Brief Description

Most people reach adulthood with no clue about what science is, even if they have GCSEs or A Levels in science subjects and know quite a lot of scientific facts. They have no exposure to the human endeavour of trying to figure out how some part of the universe works and trying to understand why it works the way it works. So they have no understanding of what scientists do and the relationship between scientific evidence and scientific conclusions.

The aim of this project is to build an educational tool in the form of a computer game, that enables the user to experience doing science. The user should try to understand the behaviour of an artificial system within the game by carrying out experiments, seeing what the results are, reasoning about the relationship between the conditions and observed results, and about how the artificial system produces those results, and making testable predictions about what will happen in further experiments.

The project comprises building a module that can load descriptions of artificial systems, run them with different inputs, and log the results in an appropriate form; an interface that enables the user to perform experiments on the artificial systems by specifying inputs and viewing the results displayed in some appropriate form; and an interface that enables the science game administrator to create artificial systems to be experimented on.

Extensions

Users experimenting to discover the properties of an unknown artificial system would find it very useful to be able to use the system editing facility themselves to create models of the artificial system, test them with the same experimental inputs, and see how their models compare with the unknown system they are trying to understand. Doing this is often an important part of real-life scientific discovery.

The users should be able to store and review the results of their experiments. It would also be useful to enable them to keep a written log of their ideas, hypotheses and predictions. Creating a systematic record - a laboratory notebook - would make the system usable for more formal science teaching and even exams. In an ideal world, the system would generate a report of the investigation from this record.

The users would benefit from additional ways to see their experimental results, especially in graphs if numbers are involved, compare the results of different experiments, and compare the results obtained from the unknown system with the results obtained from the users' models. What ways to display the results of one or more experiments would be useful?

When the experiments and their results involve numbers, the Science Game interface might be made more powerful and realistic by including built-in mechanisms for performing standard mathematical calculations and displaying the results.

Variants

While you should aim to make your Science Game system as powerful and general as possible, what sort of a system you build will depend to some extent on what kinds of artificial system you design it for. Possibilities include physics in an alternative universe: discovering quantitative scientific laws relating inputs and outputs of a physical process, or the relationship between sets of related variables; chemistry in an alternative reality: discovering which substances are elements and which are compounds, and in what categories they belong; xenopsychology: discovering how intelligent aliens' memories work, or figuring out how they make decisions in Prisoner's Dilemma conflict situations; ecology: understanding how the populations of different animals influence each other.


Back to