Robur project
Evolution of neuro-controllers for a flapping-wing animat
Jean-Baptiste Mouret
Overview
Before aiming at designing efficient controllers able to execute as complex maneuvers as real birds, we chose to restrict this work to the control of an horizontal flight at constant speed. We focused on the ability to maintain a constant speed even if the air mass is perturbed. This implies to adapt the kinematics of the wing beats to speed up or slow down, depending on data originating from sensors.
To our knowledge, there are currently no published conclusions about what kind of control to use for a flapping wing robotic platform, neither do we know what shape to use for wings, nor what degrees of freedom the wings shall call upon for the robot to fly efficiently. However, this lack of knowledge and the complexity of efficient flapping-wing control is a challenge perfectly suited for evolutionary techniques.
A good starting point to design such controllers is to take inspiration from real birds. Most animals, and probably birds, base their locomotion behaviors on small neural networks which produce rhythmic patterns even in the absence of external stimulus. These networks are called Central Pattern Generators (CPGs). They have been modeled at several abstraction levels. For efficiency and simplicity reasons, we chose to design our artificial CPGs on non-linear oscillators, the most abstract level. Simpler than any neuron-based oscillator, they share many dynamics with biological oscillators. They can be combined with classical neurons to allow a wide range of signal transformation inside the CPG. A second controller using only McCulloch and Pitt's neurons can be added to control the tail of the bird.
Evolutionary algorithms have been used to design the structure and to determine the value of the parameters of this hybrid neural network, as they are the only algorithms that allow to solve both of these problems for a network of any kind, whether recurrent or not, for instance.

Overview of the used controller
The design of a good controller for a flapping-wing platform requires a trade-off between several aspects, such as the consumed energy, the generated traction, the generated lift or the stability of the platform during flight, for instance. The problem being intrinsically multi-objective, we have used a multi-objective evolutionary algorithm. Among the huge number of such algorithms [1], we chose MOGA [2], which offers a good compromise between the performance and the simplicity of use. Incidentally, it should be noted that, until now, very few studies have used multi-objective evolutionary algorithms to generate neuro-controllers.
The experiments described in this page call upon the ModNet encoding [3] which has already been tested on other flying platforms [4], [5]. ModNet is a modular encoding in which a neural network is made up of a collection of modules, which are small neural structures that are supposed to implement a particular function. They can either be evolved or given as a priori knowledge.
These experiments are implemented thanks to the SFERES framework that gathers an evolution framework with a simulation framework. Written in C++, it is dedicated to experiments involving the design of artificial agents through artificial evolutionary algorithms.

Simulated bird
For the present application, a computationally-efficient, but realistic, aerodynamic model of any flapping-wing engine has been used that made it possible to compare various morphologies and controllers. According to this model, which has been validated for a fixed-wing aircraft in a wind tunnel, a wing is modelled with 3 panels and the body is built using cones and cylinders. Each panel has three degrees of freedom : sweep, twist and dihedral.
The aerodynamic model used in this work calls on upon the classical split between lift and drag components of aerodynamic forces acting upon thin, small, quasi-plane, and rigid quadrilateral panels. The main advantage of this model is to provide a nice balance between simplicity and realism. In particular, it computes realistic -- but not physically exact -- variations of the lift and drag components whatever could be the local direction of free stream velocity.
Results
By using a multi-objective evolutionary algorithm and the ModNet encoding to generate a hybrid network based on non-linear oscillators and standard neurons, we got efficient closed-loop controllers for a simulated flapping-wing robot. The evolved controllers were able to adapt the wing beat pattern according to sensors data. They managed to maintain the horizontal flight speed even if forces were applied to slow down the artificial bird.
The corresponding fitness function called upon a two-step evaluation process. It first assessed the flying performance in a non-perturbed air mass by simulating a wind-tunnel. Four objectives (lift, energy, traction and momentums) and four constraints were used. During the second stage of the evaluation, the horizontal position was released. Two objectives were added during this step: the ability to maintain the desired speed and the minimization of the lift variations.
Two efficient strategies emerged, that both relied on the same principles of synchronizing degrees of freedom than those observed in real birds. According to the first, the amplitude of the wing beat is amplified when the artificial bird has to speed up. According to the second, the neuro-controller is split into two sub-networks. One part is an open-loop wing-beat generator. The other part adapts the external twist in order to generate the traction needed to maintain the speed. The controllers that have been designed in this work are, to our knowledge, the first closed-loop wing beat controllers published in the literature. Moreover, this approach lead to a new working strategy for wing beat control. This first success suggests that evolutionary algorithms constitute a promising avenue for designing controllers for such complex robotic platform as flapping-wing robots.
Related publications
- To appear
References
[.ps.gz ]
[.ps.gz ]


