| Algorithm1. Rule for Speed Adjustment. |
| traffic: enumerate {no-traffic, front of, left side, right side}; |
| visibility: enumerate {no-visibility, low, good, outside}; |
| rain, night: boolean; |
| speed, steering, r_diameter, r_lanes: float; |
| currentValues ← getSensorData() |
| predSpeed ← predictSpeed (speedModel, currentValues) |
| if (currentValues.speed > predSpeed) |
| α ← currentValues.speed - predSpeed |
| activateBrake (α) |
| else |
| α ← predSpeed - currentValues.speed |
| activateAccelerator(α) |
| end rule |