3.2.4 Programmation génétique
linéaire
La programmation génétique linéaire (ou
GPL pou Linear Genetic Programming) a été créée,
comme son origine, pour le développement automatique des programmes.
Comme la structure d'arbre n'est pas la seule façon de
représenter un programme, et comme tous les problèmes ne peuvent
pas être modélisés sous forme d'arbres, l'idée de la
programmation génétique linéaire est de représenter
les individus sous forme de séquences linéaires de vecteurs
réels. La différence entre cette représentation et celle
des stratégies d'évolution et certaines version d'algorithmes
génétiques, est que les individus ne sont pas des vecteurs de
réels, mais plutôt des séries de vecteurs de réels,
c'est-à-dire des vecteurs de vecteurs.
L'avantage de la programmation génétique
linéaire est que grâce à la structure linéaire de
ses individus, son champ d'application peut s'étendre à plusieurs
autres problèmes pour lesquels, une modélisation arborescente est
impossible ou inadéquate, et ce, en profitant de au même temps de
la richesse de la programmation génétique en opérateurs de
reproduction. Cependant, l'application de certains opérateurs devient
inefficace ou voir impossible, vu que leur puissance réside
essentiellement dans le fait
qu'ils sont dédiés à être
appliqués sur des arbres. Pour l'évolution des programmes
informatiques, le problème devient beaucoup plus compliqué. En
effet, le contrôle de flux du programme ne sera plus implicite comme est
le cas des arbres, mais il sera assuré par un mécanisme de sauts.
L'ajout ou la suppression d'un ou de plusieurs éléments modifiera
complètement la sémantique du programme.
Pour ces raisons, un nouvel opérateur été
défini. En biologie, Des protéines homologues sont des
protéines dont les gènes qui les codent ont une origine commune.
On reconnaît deux protéines homologues car elles ont des
structures spatiales proches et des séquences en acides aminés
qui présentent des similarités. Les fonctions de ces
protéines peuvent être plus ou moins semblables. En programmation
génétique linéaire avec le croisement habituel, il est
difficile à l'évolution d'établir une structure claire
entre les positions spatiales et les fonctionnalités. Le croisement
collant ressemble à l'homologie en n'autorisant l'échange que des
éléments se situant dans les mêmes positions spatiales. Il
choisit en premier une séquence d'éléments puis
l'échange avec la séquence qui se trouve à exactement la
même position dans le deuxième parent.
|