Biogeography-Based Optimization for Robot Controller Tuning

Biogeography-Based Optimization for Robot Controller Tuning

Paul Lozovyy (Cleveland State University, USA), George Thomas (Cleveland State University, USA) and Dan Simon (Cleveland State University, USA)
DOI: 10.4018/978-1-60960-551-3.ch007

Abstract

This research involves the development of an engineering test for a newly-developed evolutionary algorithm called biogeography-based optimization (BBO), and also involves the development of a distributed implementation of BBO. The BBO algorithm is based on mathematical models of biogeography, which describe the migration of species between habitats. BBO is the adaptation of the theory of biogeography for the purpose of solving general optimization problems. In this research, BBO is used to tune a proportional-derivative control system for real-world mobile robots. The authors show that BBO can successfully tune the control algorithm of the robots, reducing their tracking error cost function by 65% from nominal values. This chapter focuses on describing the hardware, software, and the results that have been obtained by various implementations of BBO.
Chapter Preview
Top

1. Introduction

The purpose of engineering is to find feasible or optimal solutions to problems in the world. As engineering challenges have become larger, more complex, and more multidisciplinary, evolutionary algorithms (EAs) have become attractive optimization methods for problems that are not amenable to traditional, analytic algorithms (Rao, 2009). For example, EA research is being used for smart highway systems to solve traffic problems (Baluja, 2001), and for medical diagnosis (Brameier & Banzhaf, 2001). The prevalence of optimization problems has created an explosion in the development of EAs, especially in the last decade.

The idea and the origin of EAs can be traced to the 1950’s and the works of Bremermann, Friedberg, Box, and others. The scientific community was mostly unaware of the field of EAs for its first three decades due to lack of computer power. Since then, many EAs have been devised, each being named according to its specific emphasis or the model from which it was derived. These works slowly started to be published in the 1970’s. The fundamental works of Holland, Rechenberg, Fogel, and Schwefel began in that decade. The basis for most EAs can be traced to one of three separate and independent approaches: genetic algorithms, evolutionary programming, and evolution or mutation strategies (Bäck, Hammel, & Schwefel, 1997).

Powerful computers became more accessible in the early 1980’s, which facilitated more research in EAs. Since 1985, worldwide conferences have been established with workshops focusing specifically on EAs (Bäck, Hammel, & Schwefel, 1997). The advantages of these algorithms relative to traditional optimization approaches are their flexibility and their adaptability. They are designed for solving complex optimization problems. EAs explore a large search space to find optimal solutions using specific evolutionary techniques.

There are several main topics in the forefront of evolutionary robotics. They can be broken down into two groups: off-line tuning and on-line tuning. Off-line tuning means that the EA optimizes the system from the outside, whereas on-line tuning means that the EA is built into the system. The simplest and most common off-line application of EAs to robotics is the use of EAs to tune robot controller parameters. EAs have been applied this way many times in the past. Robot control tuning can be used as a real-world benchmark test for EAs (Iruthayarajan & Baskar, 2009).

There are several on-line applications of EAs to robotics: on-line controller tuning; automatic controller building (Fleming & Purshouse, 2002); and evolutionary robotics, which is composed of training phase evolution and lifelong adaptation by evolution (Walker, Garrett, & Wilson, 2006). On-line control parameter tuning is useful for situations in which a human cannot tune a controller or compensate for changes in the system. With EA-based tuning software on-line, a robot is able to improve its actions over time without human intervention. Control tuning can occur in real time, or it can be performed before the controller starts, during a less risky training phase (Fleming & Purshouse, 2002). However, the controller may fail while the EA explores the search space. For instance, if an EA is tuning the control parameters in an industrial robot, the EA may choose a poor solution that causes the robot to fail at its task, which can be expensive or dangerous. This is a significant problem with on-line controller tuning.

Automatic controller building is often used in applications where the physical system to be controlled is complicated, hard to model, or hard to define. In these cases an EA can be used to build a control system out of predefined parts. For instance, a robot that performs functions analogous to a human will have many parts, and without a control system optimized for the problem it may not have the ability to complete its tasks (Fleming & Purshouse, 2002).

Complete Chapter List

Search this Book:
Reset