Page 28 - Designing Autonomous Mobile Robots : Inside the Mindo f an Intellegent Machine
P. 28
2
CHAPTER
A Brief History of Software Concepts
To say that autonomous vehicle design encompasses a vast array of concepts and
disciplines is an understatement. A robot designer needs a practical working knowl-
edge of classical disciplines such as geometry, calculus, statics, dynamics, thermo-
dynamics, and biology. Additionally, a working familiarity with narrower disciplines
from battery technology to signal processing is important. Fortunately, it isn’t neces-
sary to have the law-of-cosines at one’s fingertips, but only to know of its existence
and possible usefulness. The World Wide Web has placed information on every topic
imaginable at our fingertips. We have only to know to look for it.
Likewise, if one is to effectively program such a system, a wide knowledge of many
software concepts is essential. No one concept or language is sufficient for all the
requirements, but rather these concepts are the palette from which you will create
your masterpiece. The richer the palette, the greater the potential will be. Again, it
is only necessary at the start to have an overview of as many tools as possible.
There is a natural tendency for experts in each of these fields to generate a mystique
around their specialties. In the course of this book, I hope to demystify many of
these concepts, and to help you to grasp the core of their meaning. Not only are
most of these concepts relatively simple at their center, but many of the concepts are
mirrored across multiple disciplines. Once you have identified a need to incorporate
a concept into your design, you can easily find reference material to help you gain
the depth you require in the subject.
The more we know about one thing, the more we know about many things. The universe is
a huge fractal.
11

