The area of multi-objective GP (MO GP) has been very active in the last decade. In a multi-objective optimisation (MOO) problem, one optimises with respect to multiple goals or fitness functions f1,f2,.... The task of a MOO algorithm is to find solutions that are optimal, or at least acceptable, according to all the criteria simultaneously.
In most cases changing an algorithm from single-objective to multi-objective requires some alteration in the way selection is performed. This is how many MO GP systems deal with multiple objectives. However, there are other options. We review the main techniques in the following sections.
The complexity of evolved solutions is one of the most difficult things to control in evolutionary systems such as GP, where the size and shape of the evolved solutions is under the control of evolution. In some cases, for example, the size of the evolved solutions may grow rapidly, as if evolution was actively promoting it, without any clear benefit in terms of fitness. We will provide a detailed discussion of this phenomenon, which is know as bloat, and a variety of counter measures for it in Section 11.3 . However, in this chapter we will review work where the size of evolved solutions has been used as an additional objective in multi-objective GP systems. Of course, we will also describe work where other objectives were used.