Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

25
Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2

Transcript of Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Page 1: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Cours GOL460 Optimisation avancée avec Lingo

Travaux pratique # 2

Page 2: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Plan

• Objectif: cet atelier permet de vous familiariser avec la programmation d’un modèle d’optimisation linéaire surtout pour des grands modèles en utilisant LINGO. – Comment écrire le modèle sous la forme

compacte sur LINGO

– Comment interfacer LINGO et EXCEL pour résoudre des problèmes de grande taille.

Page 3: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Exemple : Modèle de transport

Warehouses Capacity

Reno 35

Chicago 25

Newark 21

Customers Demand

San Francisco 15

Dallas 17

St. Louis 22

Miami 12

Unit Cost: San Francisco Dallas St. Louis Miami

Reno 2 6 7 10

Chicago 6 4 2 6

Newark 9 5 4 5

Warehouses Capacity

Reno 35

Chicago 25

Newark 21

Customers Demand

San Francisco 15

Dallas 17

St. Louis 22

Miami 12

Unit Cost: San Francisco Dallas St. Louis Miami

Reno 2 6 7 10

Chicago 6 4 2 6

Newark 9 5 4 5

Page 4: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Exemple : Modèle de transport

• Écrire le modèle de programmation linéaire sous la forme compacte pour qui permet de trouver la quantité à acheminer entre le sites

• Définir – Les ensembles – Les paramètres – Les variables de décision– La fonction objectif – Les contraintes

Page 5: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Exemple : Modèle de transport• Les ensembles

– I: ensemble des entrepôt– J: ensemble des clients

• Les paramètres – Cij: coût de transport entre l’entrepôt i et

le client j – Bi : capacité de l’entrepôt i – Aj : la demande du client j

• Les variables de décision– Xij: Volume transporté entre l’entrepôt i et

le client j

Page 6: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

• La fonction objectif

• Les contraintes– Contraintes de demande

– Contraintes de capacité

Exemple : Modèle de transport

4,3,2,1, 3

1

jAjXi

ij

iji j

XMin

3

1

4

1ijC Z

3,2,1, 4

1

ibiXj

ij

Page 7: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Structure de données dans LINGO

• Les ensembles et les variables de décision

Variables de décision

Paramètres

Page 8: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Structure de données dans LINGO

• Les paramètres

Page 9: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Structure de données dans LINGO

• Fonction objectif

• Contraintes– De demande

– De capacité

Page 10: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

• Le modèle au complet

Page 11: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

• Solution avec LINGO

Page 12: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Interface entre LINGO et EXCEL

• Écrier les données dans le programme n’est pas la meilleure façon surtout quand le nombre de paramètres et très grand.

• Avec LINGO, on a la possibilité de charger les données de EXCEL.

Page 13: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Interface entre LINGO et EXCEL

• Comment faire?– Deux étapes importantes

1. Préparation des données dans EXCEL

2. Modifications dans la section DATA

Page 14: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Interface entre LINGO et EXCEL

• Comment faire?– Deux étapes importantes

1. Préparation des données dans EXCEL

2. Modifications dans les sections SETS et DATA

Page 15: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Interface entre LINGO et EXCEL

• Préparation des donnéesEnsemble: Warehouse

Page 16: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Interface entre LINGO et EXCEL

• Préparation des donnéesEnsemble: Customer

Page 17: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Interface entre LINGO et EXCEL

• Préparation des donnéesParamètre: CAPACITY

Page 18: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Interface entre LINGO et EXCEL

• Préparation des donnéesParamètre: DEMAND

Page 19: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Interface entre LINGO et EXCEL

• Préparation des donnéesParamètre: COST

Page 20: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Interface entre LINGO et EXCEL

• Préparation des donnéesVariable: VOLUME

Page 21: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Interface entre LINGO et EXCEL

• Préparation des donnéesVariable: VOLUME

Cellules réponses

Page 22: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

Interface entre LINGO et EXCEL

• Modifications dans les sections SETS et DATA

Renvoi les réponses

Chargement des données

Page 23: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

• Le modèle au complet devient :

Page 24: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

• Solution avec LINGO

Page 25: Cours GOL460 Optimisation avancée avec Lingo Travaux pratique # 2.

• Solution renvoyée vers EXCEL