• Aucun résultat trouvé

Algorithme génétique basé sur la simulation pour l’affectation des voies

7 Algorithme génétique basé sur la simulation pour l’af- l’af-fectation des voies

IV.7 Algorithme génétique basé sur la simulation pour l’affectation des voies

Figure IV.18Illustration d’un individu

7.2 Opérateurs génétiques

7.2.1 Croisements

Nous avons proposé et testé différents opérateurs de croisements. Nous donnons ici quelques exemples de ces opérateurs testés essentiellement des versions variées de croisement classique en un point. Le premier exemple classique d’un croisement en un point considéré est le croisement des voies et positions. En effet, deux enfants sont crées en croisant les deux parties (première et seconde ligne) des deux parents. Une phase de correction succède cet opérateur pour ne garder que des individus réalisables. Un deuxième exemple d’un croisement consiste à ne croiser que les parties représentant le placement des trains sur les voies, l’autre partie représentant les positions sur les voies reste inchangée.

L’autre exemple qui vient naturellement en tête est de croiser les seules parties représentant les positions sur les voies des trains/navettes.

Figure IV.19Croisement voies et positions

Figure IV.20Croisement voies

7.2.2 Mutations

Différentes versions de mutations peuvent être envisagées. Nous avons proposé surtout des mutations par permutation : permutation simple ou double. L’exemple d’une permutation double consiste à interchanger le numéro de la voie et de la position sur la voie de deux trains différents.

Un exemple de permutation simple consiste à permuter les numéros de voies de deux trains. Un autre exemple interchange les positions sur les voies de deux trains différents choisis au hasard.

IV.7 Algorithme génétique basé sur la simulation pour l’affectation des voies

Figure IV.21Croisement positions

Figure IV.22Mutation voies et positions

Figure IV.23Mutation voies

Figure IV.24Mutation positions

7.3 Évaluation par simulation

L’algorithme génétique est implémenté dans l’environnement de développement du modèle la simulation (Anylogic). Nous utilisons la simulation pour évaluer les individus de notre algo-rithme. Un individu définissant un placement des trains et navettes (en x et en y) est utilisé dans le modèle de simulation. Les opérations de manutention et de transfert des navettes com-mencent. À la fin de l’exécution du modèle de simulation, la charge totale des deux portiques ferroviaires est alors enregistrée. Elle représente la fitness de l’individu évalué. Notons que l’ou-til de simulation permet l’exécution et le renvoi rapides de l’évaluation des individus selon le schéma de la figure IV.25.

Figure IV.25Schéma de couplage algorithme génétique simulation

7.4 Comparaison avec une heuristique myope

Pour bien évaluer la qualité de notre algorithme génétique, nous avons conçu une heuristique constructive de la solution basée sur une affectation myope des trains sur les voies de la cour ferroviaire. En effet, on commence par le tri des TGL et des navettes. Les TGL selon leurs fonctions de priorité définie précédemment et les navettes selon leurs degrés d’urgence. Le premier train est alors positionné sur la voie centrale, puis deux navettes sont positionnées sur les voies adjacentes, puis les deux suivants, ainsi de suite selon le principe de Tie-Break. Le positionnement horizontal des navettes étant effectué selon le principe de barycentre. En effet, une navette devant recevoir beaucoup de conteneurs des wagons gauches est positionnée à gauche et inversement.

Les résultats de comparaison des deux algorithmes HTB (pour Heuristique Tie-Break) et AG (pour Algorithme Génétique) sont donnés dans le tableau IV.2. Nous remarquons que pour les 8 instances (issues de données réelles fournies par le GPMH), l’algorithme génétique surclasse l’heuristique myope en fixant comme critère de comparaison la charge totale des deux portiques ferroviaires. Cependant, cet algorithme génétique ne permet pas d’optimiser toute l’organisation des opérations à la cour ferroviaire. Il représente même plusieurs défauts :

– Cet algorithme n’optimise que la partie placement des TGL et navettes sur les voies de la cour ferroviaire. Il omet donc l’optimisation des opérations de manutention qui dépend

IV.7 Algorithme génétique basé sur la simulation pour l’affectation des voies

Début

Trier les trains de grandes lignes selon l’ordre décroissant de leurs fonctions de priorité < t1, t2, ..., tn>,

Trier les navettes selon l’ordre décroissant de leurs urgences< n1, n2, ..., nm >, Positionnert1 sur la voie centrale,

Positionnern1 sur la voie nord adjacente t1 et n2 sur la voie sud adjacente, Positionnert2 ett3 sur les voies nord et sud adjacentes

Ainsi de suite : 2 navettes puis deux trains

Positionner horizontalement en respectant le principe du "barycentre".

Fin

Algorithme 6Heuristique d’affectation en Tie-Break

Instances Taux de remplis-sage TGL Taux de remplis-sage navettes Obj. HTB (×103) (s) Obj. AG (×103)(s) Instance 1 15 30 71.4 69.12 Instance 2 30 60 72.16 70.16 Instance 3 60 80 72.48 69.15 Instance 4 80 90 72.78 72.21 Instance 5 30 15 69.49 67.76 Instance 6 60 30 70.14 68.84 Instance 7 80 60 72.64 71.87 Instance 8 90 80 72.76 72.27

Tableau IV.2Comparaison HTB et AG en temps de service

fortement de placement. Il peut même pénaliser celles-ci.

– Il est de nature statique. En effet, il donne le positionnement des trains une fois pour toutes. Alors qu’il est intéressant est fournir un positionnement dynamique en fonction de l’évolution du modèle de simulation.

– Il ne permet pas de gérer les interactions des deux portiques ferroviaires. En effet, on remarque des temps d’attente réciproques des deux portiques lors de la manutention de certains conteneurs. Ceux-ci pénalisent la productivité des opérations de manutention.

Nous nous sommes particulièrement intéressés au dernier point vu son intérêt pour le GPMH. Nous développons dans la section suivante des algorithmes permettant de réduire les temps de manutention à la cour ferroviaire, surtout les temps d’attente mutuels des portiques.

Documents relatifs