Trucks stuck on top of right tunnel A

Note that the absorption rule is moved FIRST in the behavior. This is to ensure that the tunnel is “seen”. Although in this particular situation, it is improbable that the truck would miss “seeing” the tunnel on the right after it has moved to the that position, because it would take a half second to elapse before the truck would be able to move again. In that time, AgentCubes would have visited the truck agent again, in which case the rule with the timer would not run, and the tunnel would be observed. That said, it is always good programming practice to put “exceptional” situations first in the list of rules, simply to preclude possible missed events due to a timer event occurring. Note, also, that the Frogger tutorial on the Scalable Game Design Wiki describes a more formal behavior for the truck which helps students identify problems like this earlier. For example, see: http://sgd.cs.colorado.edu/wiki/images/a/ac/Frogger_Master_v2.0.pdf Technically speaking, the truck should only move to the right if there is empty road to the right. Thus, the rule for movement should include an addition condition requiring that the truck “see” road to the right. If this were the case, then even without the tunnel absorption rule, the student would see the problem as the trucks ‘stacking up’ to left of the right tunnel. This would motivate the student to consider a rule which allows the truck to be absorbed by the tunnel. Summary: Here are some programming lessons from these examples: • First things first! As in life, it is important to put the most important priorities first. In the case of programming agent behavior, that usually means placing rules that hand exceptional conditions – that is, events that happen relatively infrequently compared with other rules – first in the behavior. Good examples are simulation-ending rules, such as winning or losing the game, and rules which cause a change in an agent’s status, such as the truck disappearing. • Include all of the conditions that relate to a given action or set of actions. In this example, the conditions for truck movement are empty road and a periodic timer. It may be possible that the appears simulation to “work” without all of the conditions most of the time; however, conservative programming both eliminates uncertainties and allows for catching other problems (such as the trucks layered on top of the right tunnel).
Data
Created:May 28, 2015
Played:106
Agent:11
Rules:26
Methods:13
false
Settings
New Project Name
Rename
Copy
Download
Show Project Report
Flag Project
Delete
Note that the absorption rule is moved FIRST in the behavior. This is to ensure that the tunnel is “seen”. Although in this particular situation, it is improbable that the truck would miss “seeing” the tunnel on the right after it has moved to the that position, because it would take a half second to elapse before the truck would be able to move again. In that time, AgentCubes would have visited the truck agent again, in which case the rule with the timer would not run, and the tunnel would be observed. That said, it is always good programming practice to put “exceptional” situations first in the list of rules, simply to preclude possible missed events due to a timer event occurring. Note, also, that the Frogger tutorial on the Scalable Game Design Wiki describes a more formal behavior for the truck which helps students identify problems like this earlier. For example, see: http://sgd.cs.colorado.edu/wiki/images/a/ac/Frogger_Master_v2.0.pdf Technically speaking, the truck should only move to the right if there is empty road to the right. Thus, the rule for movement should include an addition condition requiring that the truck “see” road to the right. If this were the case, then even without the tunnel absorption rule, the student would see the problem as the trucks ‘stacking up’ to left of the right tunnel. This would motivate the student to consider a rule which allows the truck to be absorbed by the tunnel. Summary: Here are some programming lessons from these examples: • First things first! As in life, it is important to put the most important priorities first. In the case of programming agent behavior, that usually means placing rules that hand exceptional conditions – that is, events that happen relatively infrequently compared with other rules – first in the behavior. Good examples are simulation-ending rules, such as winning or losing the game, and rules which cause a change in an agent’s status, such as the truck disappearing. • Include all of the conditions that relate to a given action or set of actions. In this example, the conditions for truck movement are empty road and a periodic timer. It may be possible that the appears simulation to “work” without all of the conditions most of the time; however, conservative programming both eliminates uncertainties and allows for catching other problems (such as the trucks layered on top of the right tunnel).
Edit Description
Design