A programming architecture for smart autonomous underwater vehicles
a robust layered control system for a mobile robot .