1. A method for controlling a virtual character in a virtual space comprising: defining a plurality of rules in a rules-based system, each of said rules having a part that defines a condition that determines a consequent behavior of a virtual agent when the rule is triggered by the condition being satisfied; upon triggering of multiple rules at the same time, combining all of the consequent behaviors of the multiple rules whose conditions were satisfied into a resultant behavior for the virtual agent rather than selecting one of the consequent behaviors, so that the resultant behavior comprises a new combined operation for execution within the virtual space where each of the consequent behaviors partly contributes to the new combined operation; comparing the resultant behavior with a desired behavior; and providing feedback to each of the multiple rules based on a proportional amount of their corresponding contribution to the resultant behavior as compared to the desired behavior.