Feature
Operating alone
Autonomous systems are showing up in more places. Competitions such as the DARPA Grand Challenge are increasing their visibility.
By Robert Cravotta, Technical Editor -- EDN, 12/5/2005
|
The DARPA (Defense Advanced Research Projects Agency) Grand Challenge is a highly publicized competition to encourage the development of fully autonomous vehicles that can complete an off-road desert course. On Oct 9, 2005, the Stanford Racing Team, from a field of 23 competitors, claimed the $2 million prize for its vehicle, which completed a 132-mile desert course in California with no human assistance once it left the starting gate (Figure 1). Four other fully autonomous vehicles completed the course with a slower time.
The vehicles had to follow a prescribed course route, provided as a GPS (global-positioning-system) way-point file; avoid obstacles; and negotiate turns in desert conditions while traveling at speeds relevant to a military context (see sidebar "Racing in the desert"). The actual course was secret until just before the competition, so that each vehicle would be running the course for the first time. The competition aims to yield the precursor of deployable and fully autonomous supply convoys that can travel through hostile territory and eliminate the risk to drivers of such vehicles in areas of conflict.
Autonomous systems allow human operators to perform tasks in environments that are hazardous to humans, including outer-space and underwater environments, without requiring continuous human guidance. In these types of environments, a high degree of autonomy is desirable, especially when it is impossible to avoid communication delays and interruptions. Although competitions such as the DARPA Grand Challenge help publicize and push the technological envelope for fully autonomous vehicles, such machines represent only a relatively small and extreme edge of the possible spectrum of these systems (see sidebar "Other competitions").
The current state of electronics-based autonomous systems requires some direction from a human operator. The extent to which the system can operate in uncertain environmental conditions without human intervention determines the level of autonomy the system supports. There is an increasing number of embedded systems with varying levels of autonomy that are invisible to human operators.
Examples of invisible, semiautonomous systems include antilock-braking systems available in many contemporary cars. Machines for washing and drying clothing can exhibit autonomous behavior by being able to automatically adjust the machine's operation based on sensing the condition of the clothing during operation. Remote-controlled aircraft and underwater robots are partially autonomous, because there is no way to transmit relevant operational and control data between the operator and the vehicle to adjust for sudden or rapid shifts in the environment.
AutonomyFor an autonomous system to be able to successfully operate in an unpredictable environment, it must be able to sense and receive information about its operating environment. Another essential capability for autonomous systems is to be able to interact with the environment through a set of actuators. Detection, decision, and control processing, often in the form of software, bridge the sensor and actuators to form the brains of the autonomous system. The whole system operates in a closed-loop fashion, so that the system can detect and adjust for the effect its own actions have upon the environment. An open-loop system, or one that is missing one of these capabilities, is not an autonomous system.
The amount of environmental uncertainty autonomous systems can handle ranges from a small, well-defined set of changes, such as in a factory setting with strict tolerances and control on the environment, to a large set of widely uncertain conditions, such as in the case of autonomous vehicles that are traversing desert terrain for the first time.
Likewise, the level of autonomy a system can manifest can vary widely (Figure 2). For example, once you activate a factory system, it can operate virtually indefinitely without human intervention. At the other extreme, a semiautonomous system, such as an underwater robot, may receive continuous human intervention with regard to course position and task control, but it may receive no human intervention for fine-positioning control. Also, by making the fine control autonomous, the operator can function at a higher abstraction level and focus more on the mission objectives.
The types of commercially available visionlike sensors include passive and active sensors (Reference 1). All sensors have strengths and weaknesses, and it is important that designers choose the right sets of sensors to cover the aspects of the environment that the system will encounter. Passive sensors, such as single-vision, stereovision, and thermal cameras, detect information by sensing what is in the environment, such as light and thermal radiation. Passive sensors are susceptible to too little or too much ambient energy in the environment. Active sensors, such as radar sensors, LIDAR (light-detection-and-ranging) sensors, and infrared and ultrasonic transducers, detect information by transmitting energy into the environment and sensing the amount of and the timing of the reflection of that energy back to the sensor.
In addition to using visionlike sensors, mobile autonomous systems may rely on additional sensors, such as GPS and IMU (inertial-measurement-unit) sensors, to detect the system's position and attitude in the environment. Mobile systems that can work in a constrained environment, such as iRobot's Roomba, employ external transmitters, such as infrared, so that the mobile system can sense and interpret them as a physical boundary.
The sensor-processing, feature-detection, and decision software represent the largest area for innovation in autonomous systems. The software must be able to reduce and abstract key features from the sensor data and be able to correlate the data if there are multiple types of sensors working in concert. Knowing what features to detect in the sensor data is application-specific. In the case of the desert race, the vehicles needed to be able to identify and navigate around stationary obstacles. However, they needed neither to identify nor to predict the movement of those obstacles.
An important ability for autonomous systems is detecting and correcting for anomalous or boundary conditions. The response to each type of condition is also application-specific. Sometimes, the correction is internal to the system, such as repositioning, or it reinitializes the system; other times, the correction is external, such as raising an alarm for a human to intervene. An emerging area for complex autonomous systems is the ability to learn; it would include adjusting decision strategies based on the environment, especially for unanticipated boundary conditions.
Although full autonomy is a goal, employing such systems in complex environments is a long way off. The practical response to this situation is incremental autonomy, in which designers continually expand and improve the abilities of a system over multiple iterations. This approach may manifest itself as a system that begins with an operator's making all of the decisions through remote control and, with each iteration, making fewer actions or decisions. Before the system takes over a decision, an earlier iteration may include the system's notifying the operator of, rather than acting on, the condition.
Initiatives and toolsThe JAUS (Joint Architecture for Unmanned Systems) is an initiative for developing a message-based architecture for upper level interfaces of unmanned systems, so that independent teams may eventually and more easily interoperate with each other. The goals of the initiative are to reduce the development and integration time, as well as the life-cycle costs, of autonomous systems. The initiative specifies a framework for technology insertion and how to accommodate the expansion of systems with new capabilities. It also specifies performance-based requirements about what to build but avoids defining how to build it.
JAUS identifies that manufacturers currently build the subsystems that are common to all unmanned systems from scratch for each system. They cannot easily incorporate the performance gains they make in one system into different systems with similar requirements. The initiative champions a component-based, message-passing architecture that specifies data formats and methods of communication among computing nodes. It defines messages and component behaviors that are independent of technology, computer hardware, operator use, and vehicle platforms and isolated from the mission.
The Unmanned Aerial Robotics Initiative involves people from various laboratories that meet regularly to exchange experience and knowledge, believing that experience they gain in one project is often useful to other projects. The initiative maintains a Web portal at aero.epfl.ch and supports students developing projects in this field.
Software-development tools for autonomous systems lag behind the sensor and actuator options. However, the aerospace and the military markets are driving the tools to handle the complexity that autonomous systems exhibit. In addition to homegrown tools, commercial-modeling tools, such as those from The Mathworks, are supporting multiple-domain modeling with tighter integration between the sensor and the control aspects of the system model. Tools, such as those from National Instruments, are improving to support prototyping to embedded targets, which simplifies integration and communication between distributed intelligent nodes. Real-Time Innovations' tools target systems with real-time distributed data requirements.
Simulation, including hardware-in-the-loop simulation, is an opportunity for simulation-tool providers (Reference 2). The sensor fusion, or the correlation of data from multiple and possibly different sensors, which complex autonomous systems require, presents significant processing requirements on simulators—especially systems with real-time, closed-loop requirements.
Strong project management is essential when developing autonomous systems because of the wide range of engineering disciplines that must work together to design these systems. As an example, the Stanford Racing Team comprised four major groups. The vehicle group oversaw the modification and developments, including the drive-by-wire systems, as well as the sensor and computer mounting, as it related to the core vehicle. The software group handled all the software, including the navigation software and the health-monitoring and safety systems. The testing group was independent from the other groups and was responsible for testing the components and the system as a whole. The communication group managed media relations and fundraising activities.
The complexity of data sharing and maintaining coherency becomes complicated with development teams that are geographically distributed. The PVHS (Palos Verdes High School) Warrior Team not only had to deal with language, time-zone, and shipping delays when working with a group in the Ukraine for the motion-control system of its entry, it also had to be aware of import/export regulations for the data it was sharing.
For some autonomous-system designs, a straight if-then decision tree is sufficient, but, as these systems continue to grow in complexity, there may be an opportunity for decision-rule-management tools. Database management may become more important as these systems evolve from just detecting features in the environment to recognizing features, so that they can better predict and anticipate changes in their environment.
There is a growing opportunity for autonomous systems that can interact with the physical world and manipulate physical objects. Today, autonomous systems take direction, directly and indirectly, from a human operator. Some of these systems are obvious to the end user, but many of them, such as the growing number of automobile-safety features, augment and abstract some aspect of controlling a system so that the operator can focus on higher level tasks and functions. Also, given the success of connected devices and computing networks, it is not a stretch to expect future independent and autonomous systems to work not just with human operators but also cooperatively with each other.
| For more information | ||
| AMD: www.amd.com | Apple: www.apple.com | AUVSI (Association for Unmanned Vehicle Systems International): www.auvsi.org |
| DARPA Grand Challenge: www.darpa.mil/grandchallenge | Freescale: www.freescale.com | Infineon: www.infineon.com |
| Intel: www.intel.com | iRobot: www.irobot.com | JAUS (Joint Architecture for Unmanned Systems): www.jauswg.org |
| The Mathworks: www.mathworks.com | Microchip: www.microchip.com | National Instruments: www.ni.com |
| Real-Time Innovations: www.rti.com | Stanford Racing Team: www.stanfordracing.org | Team Cornell: www.darpa.mil/grandchallenge |
| Team PVHS Road Warriors: www.darpa.mil/grandchallenge | Texas Instruments: www.ti.com | Velodyne Acoustics (Team DAD): www.velodyne.com |
| Xilinx: www.xilinx.com | ||
| Author Information |
You can reach Technical Editor Robert Cravotta at 1-661-296-5096 and rcravotta@edn.com. |
| References |
|
| Racing in the desert |
| The entries in the DARPA (Defense Advanced Research Projects Agency) Grand Challenge employed a range of off-the-shelf sensors, including LIDAR (light-detection-and-ranging) sensors, radars, single-vision and stereovision cameras, color and thermal cameras, ultrasonic transducers, GPSs (global positioning systems), and IMUs (inertial-measurement units). Most entries employed multiple, complementary sensor systems to provide enough coverage for the vehicle to sense the environment, obstacles to avoid, and attitude and positioning. Only a few teams developed custom sensing equipment. Most notable among the custom sensors was a LADAR (laser-radar) system that Team DAD (Digital Auto Drive) developed and successfully demonstrated during the competition (Figure A). The unit generates its own light and uses a proprietary filter to reject sunlight, so it works well under all lighting conditions. The unit can see through fog and heavy rain by ignoring early reflections. The LADAR system employs 10 DSPs that process data from 64 lasers for terrain mapping and object detection, which solves some problems the team experienced when using a camera system in the first Grand Challenge event. The 64 lasers all rotate at 600 rpm in a drum mounted atop the vehicle driver cab. Because the whole system spins, dust and rain spin off the unit as it rotates. Team DAD did not have enough time before the competition event to develop the LADAR data processing to perform localization during loss of the GPS signal. The PVHS (Palos Verdes High School) Road Warrior team also developed a custom sensor. The ground mouse, which the team did not get to successfully demonstrate at the race, uses a narrow, spectral, filtered light source; a detector array; and a modified Newtonian optic system to make ground measurements every 2 msec. The ground mouse works with the IMU. This setup allows the control system to work with an accurate estimate of the vehicle's position when the GPS signal drops. The experience at the competition demonstrates that commercially available sensor technology is sufficient for fully autonomous systems and is not the source of the major challenges for developing these types of systems. Actuators for throttle and steering control were generally straightforward and did not represent the most challenging areas for these fully autonomous vehicles. Most difficult, not surprisingly, is implementing the software detection, decision, and control algorithms. Each team entry emphasizes its software and vehicle intelligence, supporting the assertion that the event is largely a software competition. The teams develop their software using C/C++ code, hand-coded assembly, or Java. Details about each team's sensors, actuators, and control, planning, and decision software are available as technical papers at www.darpa.mil/grandchallenge. Lessons participants learned from the event include the importance of the task and system-level integration effort. Teams that did well in the event logged hundreds of hours and miles of field operation. The integration effort is essential to making the system reliable under the various environmental conditions these vehicles had to endure over the 132-mile course. Team DAD's vehicle stopped short of the finish line in part because the team did not have enough time to harden the vehicle for desert conditions. In its case, the removable mounting on top of the driver cab loosened and contributed to a set of cascading errors that led to the team's pulling the entry before it crossed the finish line. The short time frame to prepare for the competition amplified the need for teams to use off-the-shelf parts wherever possible. Spending more time developing custom hardware systems meant spending less time in integration and field-testing. This trade-off is evident in the teams' processor choices. Most vehicle-sensor and -control systems used general-purpose processors from Intel, AMD, Freescale, and Apple. A few teams used Texas Instruments DSPs, Microchip PIC controllers, or National Instruments controllers. It is unlikely that a production version of these autonomous vehicles would use general-purpose processors, because they are less efficient and more costly than DSPs and microcontrollers for such tasks. But for prototyping, general-purpose processors allowed the teams to more quickly get to field-testing and do that testing for a longer time before the event. |
| Other competitions |
| There is a lot of room for improvement in autonomous robots. One way to spur innovation and speed development for these systems is through competitions such as the DARPA (Defense Advanced Research Projects Agency) Grand Challenge. The aviation industry received a boost by a similar competition that offered $25,000 for the first flight between New York and Paris. This challenge was the motivation that spurred Charles Lindbergh on his historic flight. There is a wide variety of robot contests available to compete in or watch. The FAQ at www.robots.net/rcfaq.html lists information on robot contests and competitions, many of which include cash prizes. The site lists a schedule of 87 contests from October 2005 through September 2006. Some of these competitions, such as the AUVSI (Association for Unmanned Vehicle Systems International) Aerial Robotics Competition, include prizes that increase each year until a team wins the competition. |















You can reach Technical Editor Robert Cravotta at 1-661-296-5096 and 
