Cover Page

Optimization Heuristics Set

coordinated by

Nicolas Monmarché and Patrick Siarry

Volume 2

Metaheuristics for Robotics

Hamouche Oulhadj

Boubaker Daachi

Riad Menasri

Wiley Logo

Preface

Optimization deals with methods that make it possible to optimize the use, operation and performance conditions of a system, whether it is physical or related to human activity. Situated at the crossroads of several disciplines, namely applied mathematics, computer science and artificial intelligence, optimization makes it possible to quickly find a solution to numerous problems which would otherwise be more difficult to solve relying solely on restricted mathematical analysis.

Based on heuristics or even metaheuristics at a higher level, optimization methods provide operational solutions, which are not necessarily optimal solutions but eligible suboptimal solutions, so-called acceptable solutions, because they demonstrate the level of performance required to reach a goal without conflicting with associated constraints. A number of problems whose resolution is based on optimization methods can be provided as examples:

The applications outlined above are inherently very complex, which raises the problems of implementing accurate mathematical methods that provide admissible solutions without having to mobilize huge computational resources. In these circumstances, we are limited to considering approximated solutions, which are suboptimal solutions, but acceptable, ones since they guarantee goal realization while satisfying constraints.

In this book, we will address issues specifically related to the field of medical robotics. The focus of the applications being considered is on trajectory planning for redundant manipulative arms (articulated robots) within the context of surgical gesture assistance, and robust control for effort compensation or physical assistance in disability situations (exoskeleton). These applications are presented in detail, with the aim of understanding with the utmost clarity the problems to be solved, as well as the choices made to find effective solutions within a reasonable time frame.

The methods developed make use of optimization metaheuristics, which are high-level abstraction algorithms. Unlike heuristics, which are computational processes, often informally and “individually” adapted to specific problems, metaheuristics are general algorithms applicable to a very wide range of optimization problems, without the need to resort to a fundamental modification of the structure of these algorithms. The methods studied and results achieved are commented on and presented in detail for each of the applications addressed. Although the proposed methods are developed within the context of their application to medical robotics, their generic nature allows them to be easily expanded to other optimization problems which do not necessarily fall within the same scope of application.

Hamouche OULHADJ
Boubaker DAACHI
Riad MENASRI
November 2019

Introduction

This work is part of a collection of books, published by ISTE and Wiley, devoted to metaheuristics and their applications. Known for being specific and particular algorithms, what practical interest do metaheuristics have to make them increasingly attractive to engineers, researchers and scientists from various areas interested in different fields of application? There are two important arguments that provide us with obvious answers: on the one hand, the scope of application of metaheuristics is constantly gaining momentum, without apparently being concerned with any limitations; on the other hand, these resolution methods possess a high level of abstraction, which makes them adaptable to a wide range of engineering problems. Furthermore, a small number of necessary adjustments that do not change the nature of algorithms are usually sufficient to solve new optimization problems without any particular links existing between them.

Moreover, metaheuristics belong to a particular class of algorithms, not always easy to configure and reserved for difficult optimization problems for which there are no accurate methods to solve them more efficiently. These problems are renowned for being complex and among them we can find problems whose mathematical models are not derivable; problems whose research space is too extended to exhaustively enumerate all feasible solutions, such as problems of a combinatorial nature or involving continuous decision variables; as well as any problem making use of highly noisy, erroneous or even incomplete data, which prove unsuitable for mathematical modeling. For all these categories of problems, we generally adopt approximated solutions belonging to the field of admissible solutions, which are capable of reaching a goal without violating constraints that might be a priori imposed.

In practice, there may be several existing solutions to an optimization problem, of which only one of these solutions is generally optimal. All others are suboptimal solutions, but are still eligible, so-called acceptable, solutions because they guarantee the completion of an objective without violating associated constraints. However, the notion of optimizing acceptability may appear to be overly abstract: how can the level of solution operability be identified when the level of appreciation of that solution may vary not only from one user to another, but also with the margin of error tolerated by each type of application? Clearly, there is no absolute answer to this question, because it is ultimately each individual who decides how to define the level of acceptability for a solution, based on individual needs and the quality of the results sought for the application to be addressed.

Are metaheuristics deterministic or stochastic algorithms? Providing a clear answer to this question is also not an easy task. In effect, while it is clear that metaheuristics are not deterministic algorithms, they are also not completely stochastic algorithms. In fact, they can be categorized halfway between these two families of algorithms, because solving an optimization problem by means of a metaheuristic systematically relies on a more or less random sampling process of the solution space. When the algorithm is started, chance plays an important role in the process of finding solutions. Then, as the iterations progress, this randomness is progressively attenuated as we approach the final phase of the algorithm. Therefore, a metaheuristic will behave as a stochastic algorithm during initial iterations, and will asymptotically tend towards a greedy and deterministic algorithm during the last iterations. As we might expect, the accuracy of a metaheuristic lies in the right balance to be found between exploration phases, in which chance plays an important role, and the phases of intensification of solutions, also called phases of exploitation, in which randomness is reduced in order to focus only on potentially promising solutions. At the moment, there is no automatic parameterization method for these two search phases, whose respective weights generally depend on the type of application under study, the type of computational effort to be sustained and the type of results sought after.

Today, metaheuristics have become almost unavoidable in numerous areas of engineering due to the difficulties that have to be overcome to properly solve common optimization problems. These difficulties generally lie in the complex nature of the systems under study: the number of constraints and decision variables to be taken into account can be very high, computational times can be very long and non-differentiable objective functions can be highly multimodal or even too complex to be mathematically formalized with accuracy. The field of robotics is by nature a very broad field of application. In fact, these very relevant algorithms can be found in many applications of robotics:

In this book, we will focus more specifically on using metaheuristics for solving trajectory planning problems for redundant manipulative arms, as well as automatic control problems involving collaborative robots for assistance. These studies are conducted with a view to eventually exploiting the results within a clinical framework, within the context of surgical or physical assistance in order to compensate for efforts or to increase motor capabilities in performing a task.

With regard to trajectory planning, the difficulties raised are related to the redundant nature of the robot being used (the manipulative arm with several degrees of freedom), the nature of the environment in which the robot evolves (the environment cluttered with obstacles, uncertainties about the environment, etc.) and of course the complexity of the task at hand (the level of accuracy required, the time allowed to perform this task, the amount of motor power needed in order to minimize consumed energy and avoid sudden movements which could deteriorate the mechanical structure of the robot). All of these parameters can induce an excessively high number of decision variables and constraints to be taken into account.

For the control of collaborative robots (force-feedback robots designed for physical assistance in carrying out a task), the complexity of the problem resides in the almost infinite number of combinatory solutions to be tested before finding the proper values of control parameters. These must provide the desired optimal effort, within a reasonable time frame, without anachronistic movements that could endanger the person under assistance or present a risk of resonance that could deteriorate the mechanical structure of the robot. Since the automatic control system is designed to operate in an uncertain and dynamic environment, the task becomes more complex due to the servo control that operates in real time, in order to take into account external disturbances and the permanent evolution of input data (setpoints) over time.

We underline that the optimization issues studied in this book have been the subject of research carried out in collaboration between university laboratories and hospitals. Despite the practical and experimental aspect of this work, the methods developed are generic overall and can be generalized to other areas of application without requiring significant changes in the structure of the algorithms. Given this last point, these methods might be of particular interest to a very wide audience including students of robotics, algorithmics, applied mathematics and operational research, as well as engineers or teachers/researchers whose work deals with difficult optimization problems.

This book is organized into five chapters.

Chapter 1 is a general study which reviews the mathematical foundations needed for modeling optimization problem in order to solve them using numerical methods. A list of basic methods can be found therein, including comments and a great deal of information about their characteristics and properties. This chapter is essential for understanding the approaches developed in the following chapters to solve more complex medical problems.

Chapter 2 focuses on the application of metaheuristics in optimization problems related to robotics. Particular emphasis is placed on issues related to the fields of trajectory planning and automatic control. The challenges encountered, the difficulties that have to be overcome and the pertinence of metaheuristics for their solution in an approximate but sufficiently effective manner are described with the utmost concern for clarity. Most common general algorithms within these two areas of application are also presented in detail.

Chapter 3 is dedicated to the specific problem of trajectory planning for redundant manipulative arms. A resolution method based on a bigenetic algorithm (two genetic algorithms running in parallel) is presented in this chapter. Inspired by two-tier optimization problems, this method distinguishes two planning spaces: the Cartesian space, in order to control and guide the movements of the effector (terminal organ of the manipulative arm) in the work environment, and the joint space, in order to operate the different segments of the motorized arm. The coordination of the movements of the robot within these two spaces is ensured by the collaboration of the two genetic algorithms. Each of these two algorithms uses its own decision variables and optimizes its own objective function by exploring its limited planning space (Cartesian space or joint space exclusively). Nonetheless, the decision-making processes of the two algorithms are achieved through interaction by permanently exchanging their data. In this way, the results of one of the algorithms are also exploited by the other, in order to strengthen or correct its own decisions.

Chapter 4 focuses on a particular aspect of trajectory planning, i.e. how smooth curves are obtained (primitive and derived curves). Based on the results produced by the method outlined in Chapter 3, the objective is to complement the latter in order to simultaneously optimize the trajectory and the dynamic behavior of the robot. For this purpose, the planning of the trajectory is reformulated in the form of a constrained optimization problem, the resolution of which resorts to a metaheuristic combining a genetic algorithm with the augmented Lagrangian method.

Chapter 5 addresses the problems of state feedback control for collaborative robots. More specifically, the main topic will concern the exoskeleton, whose purpose is to increase motor skills when performing a task or for effort compensation in disability situations. The automated control system implements a PID controller. The goal is to find the optimal combination of the three actions of the controller, providing in real time the effort best suited to the needs of the assisted person:

The problem to be solved being combinatory by nature and using continuous variables, the difficulty lies in the almost infinite number of solutions to be tested to find the combination of parameters Kp, Ki and Kd that would produce the appropriate control torque. The second difficulty lies in the real-time operation of the PID control, in order to take into account the external disturbances and the continuous evolution of the work requested of the robot. To overcome all these difficulties, a metaheuristic based on an algorithm making use of swarm intelligence is developed. This metaheuristic is an adaptation of the particle swarm optimization (PSO) algorithm for the purposes of the application.

Finally, a general conclusion, given at the end of the book, briefly summarizes the problems studied and reviews the methods recommended for solving them appropriately. Development perspectives and avenues to be explored are also outlined to ultimately make use of the results in a clinical framework. This conclusion is followed by a list of bibliographic references that the reader can consult in order to deepen their understanding, if necessary, of the theoretical and practical concepts developed in this book.