The invention proposes that a software agent for assisting a user in a virtual environment defined by a first concept map, maintains a record of its experiences in the form of a second concept map. The concept maps are compared to obtain a measure of stimulation. The measure of stimulation is used to derive a comparison value indicative an emotional state of the user, and the comparison value is used in a reward function to guide the behavior of the software agent.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A computer system for assisting a user to perform a task in an environment defined by a first concept map based on a plurality of linked concepts, the computer system having: a computer processor; and a data storage device, storing: program instructions operative, when performed by the computer processor, to cause the computer processor to implement a software agent; a database storing a second concept map, which records the history of the software agent; wherein the program instructions are operative to cause the processor: to compare the first and second concept maps, and thereby to derive a stimulation measure; to compare the stimulation measure to one or more thresholds, to obtain a comparison value; and to select a behavior for the software agent using a reward function calculated using the comparison value. 2. A system according to claim 1 further comprising a state-action mapping unit, the state-action mapping unit receiving the comparison value, and being arranged to learn a state-action mapping using the reward function, whereby the behavior of the software agent is controlled. 3. A system according to claim 2 further comprising at least one actuator, the at least one actuator being controlled by the state-action mapping unit. 4. A system according to claim 3 in which the actuator additionally operates with a strength which depends on the comparison value. 5. A system according to claim 3 further comprising a constraint value unit storing a constraint value indicative of a physical constraint on the actuator, the constraint value being an input to the state-action mapping unit. 6. A method performed by a computer system to implement a software agent for assisting a user to perform a task in an environment defined by a first concept map based on a plurality of linked concepts, the method employing a stored second concept map, which records the history of the software agent; the method comprising: comparing the first and second concept maps, and thereby deriving a stimulation measure; comparing the stimulation measure to one or more thresholds, to obtain a comparison value; and selecting a behavior for the software agent using a reward function calculated using the comparison value. 7. A method according to claim 6 wherein the step of selecting a behavior for the software agent is performed using a state-action mapping, the method further comprising learning the state-action mapping using the reward value, whereby the behavior of the software agent is controlled. 8. A method according to claim 6 in which: if the comparison value indicates that the stimulation value is below a first said threshold, or is above a second said threshold higher than the first threshold, the comparison value is negative, and if the comparison value indicates that the stimulation value is between the first and second thresholds, the comparison value is positive. 9. A method according to claim 6 in which the stimulation value is calculated by: calculating curiosity values indicative respectively of novelty, conflict and complexity perceived by the user; and forming the stimulation value by combining the curiosity values. 10. A method according to claim 1 in which the curiosity values indicative or novelty and conflict are derived by a calculation of the level of differences between the two concept maps using the Tversky's ratio model, and the curiosity value indicative of complexity is a measure of the number of concepts in the first concept map. 11. A method according to claim 6 in which the virtual environment is an e-commerce retailer.