Designing an autonomous robot