(There are other ways to augment FiniteStateMachines; this page is in relation to RodneyBrooks' work in particular.)
FiniteStateMachines + timers + LinkStrengthArithmetic.
RodneyBrooks has advocated (and achieved a fair amount of success with) SubsumptionArchitecture for robotics, composed entirely of FiniteStateMachines augmented with timers. Google returns no relevant hits for "link strength arithmetic".