• Aucun résultat trouvé

Algorithme de vérification des damiers dans la topologie for chaque particule i de l’essaim do

D ÉVELOPPEMENT D ’ UNE MÉTHODE

Algorithm 15 Algorithme de vérification des damiers dans la topologie for chaque particule i de l’essaim do

for m=1 :2 :sizey-1do for n=1 :2 :sizex-1do

Vérification des bits Tm,n, Tm+1,n, Tm,n+1, Tm+1,n+1 de la matrice Ti.

if Le groupement de bits présente un damiers tel que présenté dans la figure

4.4then

Modification aléatoire d’un des bits nuls du groupement d’élément 0 ⇒ 1 Mise à jour du bit correspondant dans le vecteur vitesse ⇒ Xmax

end if end for end for

for m=1 :2 :sizey-1do for n=2 :2 :sizex-2do

Vérification des bits Tm,n, Tm+1,n, Tm,n+1, Tm+1,n+1 de la matrice Ti.

if Le groupement de bits présente un damiers tel que présenté dans la figure

4.4then

Modification aléatoire d’un des bits nuls du groupement d’élément 0 ⇒ 1 Mise à jour du bit correspondant dans le vecteur vitesse ⇒ Xmax

end if end for end for

for m=2 :2 :sizey-2do for n=2 :2 :sizex-2do

Vérification des bits Tm,n, Tm+1,n, Tm,n+1, Tm+1,n+1 de la matrice Ti.

if Le groupement de bits présente un damiers tel que présenté dans la figure

4.4then

Modification aléatoire d’un des bits nuls du groupement d’élément : 0 ⇒ 1 Mise à jour du bit correspondant dans le vecteur vitesse : ⇒ Xmax

end if end for end for

for m=2 :2 :sizey-2do for n=1 :2 :sizex-1do

Vérification des bits Tm,n, Tm+1,n, Tm,n+1, Tm+1,n+1 de la matrice Ti.

if Le groupement de bits présente un damiers tel que présenté dans la figure

4.4then

Modification aléatoire d’un des bits nuls du groupement d’élément 0 ⇒ 1 Mise à jour du bit correspondant dans le vecteur vitesse ⇒ Xmax

end if end for end for end for

4.2.3/ ALGORITHME ESO-I-PR-PSO GLOBAL

Cette partie présente le fonctionnement de l’algorithme ESO-I-PR-PSO global. Compte tenu des considérations précédentes concernant la gestion des damiers dans la topolo-gie, nous sommes maintenant en mesure de décrire le fonctionnement global de l’algo-rithme ESO-I-PR-PSO, et en particulier de quelle manière les deux algol’algo-rithmes ESO et I-PR-PSO communiquent et se guident l’un l’autre vers l’obtention d’une structure optimale, régulière et continue. Ici, nous choisissons de minimiser la compliance de la structure, approximée par le déplacement maximal du point d’application de la force, en considérant une contrainte d’optimisation sur le volume de la structure.

Comme il l’a été fait dans la littérature, et en particulier dans le travail de Luh et al. [208], l’initialisation des particules est réalisée avec une première itération ESO. En effet, il a été noté que, de par l’augmentation relativement rapide des vitesses des particules de PSO, cet algorithme a plus de facilités à rajouter des éléments à la topologie qu’à en en-lever. Pour ce faire, les topologies initiales sont considérées comme pleines, c’est à dire que tous les éléments contiennent du matériau. Chaque topologie est analysée par élé-ments finis, et l’on supprime un certain pourcentage des éléélé-ments les moins contraints de la structure. Le pourcentage d’éléments supprimés lors de cette première itération ESO pourra varier en fonction du problème à traiter.

Après cette première phase d’initialisation, l’algorithme I-PR-PSO seul cherche une solu-tion optimale au problème d’optimisasolu-tion posé, pour laquelle le volume final est supérieur au volume imposé par la contrainte d’optimisation. On choisira, pour cette première étape de calcul, (V/V0)ini = 80%. Ce calcul d’optimisation par I-PR-PSO est considéré comme convergé lorsque l’algorithme ne trouve plus de meilleure solution pendant 5 itérations consécutives, c’est à dire lorsque Gk+1

best− Gkbest ≤ 1E − 10. On appelle alors l’algorithme ESO, qui va travailler de paire en séquentiel avec I-PR-PSO. Les rr% éléments les moins contraints de la structure sont supprimés (c’est à dire que le matériau les composant est remplacé par le ghost material), où rr est un pourcentage qui évolue au cours des ité-rations. Une fois cette itération ESO réalisée, on laisse à nouveau I-PR-PSO modifier la structure à la recherche d’une topologie optimale. L’algorithme ESO est rappelé à chaque fois que I-PR-PSO stagne pendant 5 itérations consécutives. Ce fonctionnement séquen-tiel est réalisé jusqu’à ce que les contraintes d’optimisation soient respectées, c’est à dire jusqu’à ce que le volume de la structure soit inférieur à un certain pourcentage du volume initial choisi par l’utilisateur.

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

FIGURE4.5 – Représentation graphique de l’algorithme de vérification des damiers dans

A chaque fois que l’algorithme ESO est appelé, le pourcentage d’éléments à supprimer évolue de la manière suivante

rr= rr + evolrr (4.5)

où les valeurs initiales de rr et evolrrsont choisies par l’utilisateur en fonction du problème à traiter. Lorsque l’on s’approche de la topologie finale, c’est à dire lorsque le volume de la structure s’approche du volume imposé par la contrainte d’optimisation, on a V/V0 − Vtarget ≤ 0.1, et l’on décroit le pourcentage d’évolution du paramètre rr, en remplaçant evolrr par evolrr ← evolrr/2. Ainsi, l’algorithme peut raffiner la structure obtenue d’une manière plus lente, et converger au mieux vers le volume Vtargetdemandé.

Un problème rencontré fréquemment lors de l’utilisation des méthodes metaheuristiques est que la vitesse de convergence dépend grandement de l’initialisation des particules. Il n’est donc pas possible de connaître à l’avance le nombre d’itérations nécessaire à la convergence. Il est souvent choisi un nombre d’itérations assez grand, afin d’être en mesure de s’assurer que le calcul aura convergé lorsque le nombre maximal d’itérations aura été atteint. Ici, nous proposons de choisir un nombre maximal d’itérations itmaxassez petit (20 ou 30 itérations), mais de conserver la possibilité d’ajouter des itérations si le calcul n’est pas considéré comme convergé. Ainsi, si V/Vini− Vtarget ≥ 0.1, alors itmax = itmax+ 1. L’algorithme ESO-I-PR-PSO global est récapitulé dans l’algorithme 16.

4.2.4/ DÉFINITION DES PROBLÈMES DOPTIMISATION À RÉSOUDRE

Nous avons donc affaire à deux problèmes d’optimisation couplés, qui seront résolus de manière séquentielle. Le premier problème d’optimisation, résolu en premier lieu par l’algorithme I-PR-PSO, est défini de la manière suivante

min fTu(≡ min d) V ≤αV0, avec α < 1

où d représente le déplacement maximal du point d’application de la force. Alors que le deuxième problème d’optimisation résolu par ESO est le suivant

min V σV M ≤σ

V M

Ces deux problèmes d’optimisation sont en réalité contradictoires, puisque justement c’est généralement en augmentant le volume d’une structure qu’on minimise sa com-pliance. Et en effet, comme nous le verrons dans les résultats qui suivront, lorsque ESO résout le second problème d’optimisation, c’est à dire lorsque l’on minimise le volume, la compliance augmente légèrement. C’est la raison pour laquelle nous avons décidé d’im-poser, pour le premier problème d’optimisation, α = 0.8. Ainsi, la compliance minimisée trouvée par I-PR-PSO reste tout de même acceptable, même après la minimisation du volume imposée par le second problème d’optimisation.

Ces deux problèmes d’optimisation couplés pourraient ainsi être considérés comme un problème d’optimisation multiobjectif, et notre méthode comme une méthode qui mini-mise les différents objectifs de manière successive, comme c’est le cas dansla méthode

lexicographiqueque nous avions vues dans la partie 2.1 à la page 13.

Documents relatifs