Vous êtes sur la page 1sur 5

Filière : 5 ème année Génie industriel

Module : Introduction aux mètheuristiques


Examen final
Dimanche 19 Janvier 2020

Exercice 1 : (6pts)

Le directeur d’une entreprise est confronté à un problème d’affectation qui consiste à réaliser un
planning permettant d’affecter à chaque journée un employé bien déterminer tout en minimisant le
coût total d’affectation. Les employés sont numérotés de 1 à 5 et le coût d’affectation de chaque
employé à une journée donnée est résumé par le tableau ci-dessous :

Dimanche Lundi Mardi Mercredi Jeudi


1 12 13 20 15 18
2 14 16 11 21 17
3 15 14 19 17 16
4 12 11 15 17 15
5 9 12 13 10 12

Sachant qu’une solution correcte consiste à affecter chaque employé à une et une seule journée :

1. Proposer et expliquer à travers un exemple un codage de solutions en nombres entiers


pour ce problème.
2. En utilisant l’exemple donné comme solution initiale de l’algorithme de recherche
tabou, utiliser cet algorithme pour trouver la meilleure solution de ce problème.

Nombre d’itération: 2.
Taille de liste tabou: 2.
Nombre de voisins: 3.

Exercice 2 : (7 pts)

Une entreprise désire sélectionner un ensemble de fournisseur afin de satisfaire les demande de ses
clients, l’objectif est de choisir deux fournisseurs parmi les quatre potentiels, et d’affecter chaque
client à un et un seul fournisseur choisi afin de minimiser les coûts de distribution, les coûts de
distribution unitaire entre les fournisseurs et les clients sont mentionnés dans le tableaux ci-
dessous :

Coût de distribution F1 F2 F3 F4
Par unité de produit
C1 10 12 11 13
C2 9 11 13 10
C3 14 9 13 12
C4 10 10 15 16
C5 13 17 15 18
Le tableau suivant résume les demandes clients :

C1 C2 C3 C4 C5
20 17 12 14 18

1. Donner un modèle mathématique modélisant ce problème


2. Proposer et expliquer à travers un exemple un codage de solutions matriciel pour ce
problème.
3. En utilisant une configuration initiale sélectionnant les fournisseurs F1 et F3, utiliser
l’algorithme du recuit simulé pour trouver la meilleure solution de ce problème.

Nombre d’itération : 2.
Température initiale T = 10.
Coefficient de refroidissement : α = 0.5.
Si ∆𝑬 > 0, la probabilité d’acceptation de la nouvelle solution est : 0.6.

Exercice 3 : (7 pts)

Etant donner une machine de fabrication de produits dont la capacité maximale de production est de
30 produits, cette machine peut fabriquer six types de produits différents où la quantité maximale de
chaque produit est de 6. Le tableau suivant représente le délai de réalisation et le profit de chaque
produit :

Produit 1 2 3 4 5 6
Profit 14 17 10 12 9 11
Délai 9 7 8 11 12 14

L’objectif est de déterminer les quantités de chaque produit à fabriquer permettant de minimiser le
délai de fabrication et de maximiser le profit. En utilisant l’algorithme génétique multi-objectif
(NSGA II) :

1. Proposer et expliquer à travers un exemple un codage de solutions pour ce problème.


2. Donner une population initiale composé de (04) chromosomes génères aléatoirement.
3. Calculer le rang de chacune des solutions en se basant sur le principe de dominance.
4. En utilisant les opérateurs de reproduction (sélection binaire par tournoi, croisement
un point et mutation). Donner la nouvelle génération obtenue en utilisant une
probabilité de croisement (Pc = 100%) et une probabilité de mutation (Pm = 10%).
Exercice 1

1- Le codage utilisé consiste à affecter un employé à chaque journée, l’exemple donné ci-
dessous représente une solution où l’employé 1 est affecté au dimanche, l’employé 2 au
lundi etc…

1 2 3 4 5

2- En utilisant la solution initiale S donnée dans la question 1, l’utilisation de la recherche tabou


consiste à calculer la valeur de la fonction objectif de S, f(S) = 76, S*=S et C*=76
Générer des voisins (03 dans notre cas) :

S1 2 1 3 4 5 f(S1)= 75

S2 1 2 4 3 5 f(S2)=72

S3 5 2 3 4 1 f(S3)=79

On sélectionne la solution S2 et on sauvegarde le mouvement (3,4) dans la liste tabou.


On met à jours la meilleure solution obtenue puisque cette dernière a été améliorée, S*=S2
et C*=72.
Les mêmes étapes sont refaites en détails pour la 2 ème itération en considérant que S = S2.

Exercice 2

1- Modèle mathématique :

𝑑𝑖 : Demande du client i.
𝑇𝑖𝑗 : Coût de transport du client i au fournisseur j.
𝑋𝑗 = 1 si le fournisseur j est sélectionné, 0 sinon.
𝑌𝑖𝑗 = 1 si le cillent i est affecté au fournisseur j, 0 sinon.

min ∑ ∑ 𝑑𝑖 𝑇𝑖𝑗 𝑌𝑖𝑗


𝑖 𝑗
Sous les contraintes :
∑ 𝑋𝑗 = 2
𝑗
𝑌𝑖𝑗 ≤ 𝑋𝑗 ∀ 𝑖, 𝑗
∑ 𝑌𝑖𝑗 = 1 ∀𝑖
𝑗
𝑋𝑗 , 𝑌𝑖𝑗 ∈ {0, 1}

1
2- Codage de solution :

On propose un codage binaire matriciel de solution, où la première ligne représente la variable


𝑋𝑗 , les autres lignes représentent l’affectation des fournisseurs pour chaque client, ceci
représentera la variable 𝑌𝑖𝑗 :

𝑋𝑗 1 0 1 0
1 0 0 0
0 0 1 0
𝑌𝑖𝑗 1 0 0 0
0 0 1 0
1 0 0 0

Dans cette solution, les fournisseurs 1 et 3 sont sélectionnés, les clients 1, 3 et 5 sont affectés au
fournisseur 1 tandis que les clients 2 et 4 sont affectés au fournisseur 3.

3- La solution donnée dans la question 2 sélectionne les fournisseurs 1 et 3, cette solution est
considère comme une solution initiale dans l’algorithme du recuit simulé qui consiste à :
Itération 1 :

Initialiser la température initiale T = 10.


Calculer la valeur de la fonction objectif de S, f(S) = 1033
Générer une solution voisine S’ :

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

Dans cette solution le client 1 est affecté au fournisseur 3.


Calculer la valeur de la fonction objectif de S’, f(S’) = 1053
ΔE = 1053 – 1033 = 20>0
𝚫𝐄 𝟐𝟎
On calcule la probabilité, 𝑒 − 𝑇 = 𝑒 −10 =0.13 < 0.6, la solution S’ n’est pas acceptée.
T = 0.5 *10 = 5

2
Itération 2 :

Générer une solution voisine S’ à partir de S :

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

Dans cette solution le client 2 est affecté au fournisseur 1.


Calculer la valeur de la fonction objectif de S’, f(S’) = 965
ΔE = 965 – 1033 = -68 < 0

Accepter la nouvelle solution et mettre S = S’.


T = 0.5 *5 = 2.5

Exercice 3

1- Codage de solution :

Le codage de solution utilisé permet de déterminer les quantités à produire par la machine pour
chaque type de produit :

4 3 3 6 5 6

Cette solution respecte les contraintes de fabriquer 6 produits de chaque type au maximum et de 30
produits au total, et consiste à fabriquer 4 produit 1, 3 produit 2 etc..

2- NSGA-II (Ces étapes doivent être détaillées à travers des exemples de solutions)

Générer une population de 4 solutions faisables (respectant les contraintes).


Calculer les fonctions objectifs pour toutes les solutions.
Utiliser le principe de dominance pour calculer les rangs.
Utiliser la sélection binaire par tournoi, le croisement et la mutation pour générer 4 nouveaux
individus.
Corriger les solutions infaisables.
Calculer les fonctions objectifs pour toutes les solutions.
Utiliser le principe de dominance pour calculer les rangs des 8 individus.
Générer la nouvelle population en choisissant les 4 solutions ayant les meilleurs rangs.

Vous aimerez peut-être aussi