Lignes directrices. Introduction à la Programmation par Contraintes. Lignes directrices. Affectation des fréquences : énoncé



Documents pareils
Introduction à la Programmation par Contraintes (PPC) Ruslan Sadykov LIX, École Polytechnique

Problème d ordonnancement de véhicules en variables booléennes

Unitecnic 2200 Unitecnic 2200 CS

Plan. 1. La planification d un d 2. Méthodes et techniques de planification 3. Conclusion. D. Leclet

Unitecnic 2210 Unitecnic 2210 CS

TSTI 2D CH X : Exemples de lois à densité 1

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

Information Equipment

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé

Activités de mesure de longueur avec des unités conventionnelles

Interface PC Vivago Ultra. Pro. Guide d'utilisation

V- Manipulations de nombres en binaire

Unité centrale de commande Watts W24

2. Garantie En cas de problème ou de question technique, vous pouvez contacter notre hotline au numéro indigo ci-contre :

Pourquoi l apprentissage?

Cours de Probabilités et de Statistique

Programmation Par Contraintes

Annexe 6. Notions d ordonnancement.

YANN ROUDAUT - Professeur de l Ecole Française de Poker - roudaut@ecolefrancaisedepoker.fr

Le code à barres EAN 13 mes premiers pas...

Diviser un nombre décimal par 10 ; 100 ; 1 000

DBR. VARIZON Diffuseur basse vitesse avec diffusion d air réglable

Indicateur d accélération numérique. Mode d emploi

Quelques algorithmes simples dont l analyse n est pas si simple

Les probabilités. Chapitre 18. Tester ses connaissances

Fiche descriptive d activités

Flow 2 Introduction du Produit

Contrainte de flot pour RCPSP avec temps de transfert

UFR de Sciences Economiques Année TESTS PARAMÉTRIQUES

Plus petit, plus grand, ranger et comparer

BipBatlula, monitoring autonome en haute fréquence

Probabilités. Une urne contient 3 billes vertes et 5 billes rouges toutes indiscernables au toucher.

OUTILS EN INFORMATIQUE

Cours Optimisation Partie Optimisation Combinatoire. Année scolaire Gérard Verfaillie ONERA/DCSD/CD, Toulouse

INFO-F-425 Modèles mathématiques et algorithmes pour l ordonnancement. Bernard Fortz

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

-1- SOUNDMAN. Fabrication et distribution. SOUNDMAN e.k. Bornimer Str Berlin (Allemagne) Tél & Fax (+49)

LIVRET DE facebook.com/asmadigames

Dossier technique. Présentation du bus DMX et Utilisation des options EL13 / EL14 ERM AUTOMATISMES INDUSTRIELS 1 LE PROTOCOLE DMX 2

CIRCUIT DE CHARGE BOSCH

Gamme Emballage DESCRIPTIF TECHNIQUE

guide de branchement

1 Savoirs fondamentaux

Cours (7) de statistiques à distance, élaboré par Zarrouk Fayçal, ISSEP Ksar-Said, LES STATISTIQUES INFERENTIELLES

Traitement bas-niveau

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

Grilles de défense - Garde-corps - Balcons - Portails et clôtures Oeil de boeuf - Marquise - Barres d appui - Mains courantes - Etendoir - Grilles

Chapitre 11. Séries de Fourier. Nous supposons connues les formules donnant les coefficients de Fourier d une fonction 2 - périodique :

Instructions pour l installation

Les correcteurs accorderont une importance particulière à la rigueur des raisonnements et aux représentations graphiques demandées.

Objets Combinatoires élementaires

12 pages. Tableaux de présentation mobiles et fixes Coffrets de présentation Écrans de présentation à emporter. Tout pour une présentation complète

Manomètre pour pression différentielle avec contacts électriques Exécution soudée Types DPGS43.1x0, version acier inox

l Art de la relitique

Résolution du RCPSP avec production et consommation de ressources : modèles PLNE basés sur les événements

TD : Codage des images

INVERSIO. N Azur Service consommateur Castorama BP Templemars. réf. R

Systèmes de transmission

Sommaire. Images Actives Logiciel libre développé par le CRDP de l académie de Versailles 2 Rue Pierre Bourdan Marly le Roi

Algorithmes pour la planification de mouvements en robotique non-holonome

Nom de l application

DETECTOR BICANAL FG2 1. DIMENSIONS ET CONNEXIONS ELECTRIQUES 2. GENERALITES. 24 VDC Alimentat. 24 Vcc. Contact Boucle Contact Boucle 1 6 7

MAQUETTE DE MAISON EN BOIS ET EN BRIQUES

Thème 17: Optimisation

1 Culture Cellulaire Microplaques 2 HTS- 3 Immunologie/ HLA 4 Microbiologie/ Bactériologie Containers 5 Tubes/ 6 Pipetage

Théorie et Codage de l Information (IF01) exercices Paul Honeine Université de technologie de Troyes France

COMPASS 485/232. D Vers. 02 UNITE DE GESTION POUR COMPASS-READER

Infolettre #18 : Les graphiques avec Excel 2010

CHAPITRE. Le mouvement en une dimension CORRIGÉ DES EXERCICES

Cours d analyse numérique SMI-S4

Réseau d Éducation Prioritaire de Harnes. Défis-math Énoncés

Mesure de Salinité Réalisation d'un conductimètre

Modélisation et Simulation

Bases de données réparties: Fragmentation et allocation

Manuel d utilisation Alarme Auto na-2018 Attention :

COMBISAFE ESCALIER UNIVERSEL TM MODE D EMPLOI

Tuto pour connecter une source RVB RGB à un moniteur Commodore / Amiga

JEU VIDEO : UN NOUVEAU COMPAGNON par Colette KELLER-DIDIER

Un seul système national d étiquetage. pour l industrie laitière canadienne

BASE DE REFERENCES.

MANUEL D UTILISATION EASY 12

PHANTOM. Manuel Avancé. V Révision DJI Innovations. All Rights Reserved. 1

Tests de logique. Valérie CLISSON Arnaud DUVAL. Groupe Eyrolles, 2003 ISBN :

1 Avant propos Le réseau informatique Le câble Les connecteurs La norme de câblage EIA/TIA 568B...

L apport des contraintes globales pour la modélisation et la résolution d applications industrielles

Problèmes d ordonnancement dans les systèmes de production. Journée Automatique et Optimisation Université de Paris Mars 2003

PLAN DE COURS. GPA750 Ordonnancement des systèmes de production aéronautique

Je découvre le diagramme de Venn

tarifs préférentiels 2014 pour les entreprises

STI2D : Enseignements Technologiques Transversaux

(51) Int Cl.: H04L 29/06 ( ) G06F 21/55 ( )

Peut-on imiter le hasard?

Le jour et la nuit. Lecture : Le jour et la nuit, comment ça marche?, Collection les questions de Justine, BELIN

CRR. Notice technique 01_ACCES_NT004_carte relais radio_rév A1. Carte relais radio murale pour DAAF, type 4 et DM radio CARTE RELAIS RADIO MURALE

Analyse Combinatoire

1171 Notre-Dame Ouest, # 100 Victoriaville, Qc G6P 7L1. Téléphone: (819) Télécopieur: (819)

UNE REPRESENTATION GRAPHIQUE DE LA LIAISON STATISTIQUE ENTRE DEUX VARIABLES ORDONNEES. Éric TÉROUANNE 1

16 mm 800B UNE CONCEPTION HAUT DE GAMME CARACTÉRISTIQUES DIMENSIONS APPROXIMATIVES

APPEL D INSCRIPTIONS

FRANÇAIS SANO Liftkar SAL 2006 RZ.indd 1 SANO Liftkar SAL 2006 RZ.indd :51:51 Uhr :51:51 Uhr

Transcription:

Introduction à la Programmation par Contraintes Cours 5. Modélisation des problèmes réels (ou proches de la réalité). Ruslan Sadykov INRIA Bordeaux Sud-Ouest 10 Novembre 2014 1 / 35 2 / 35 : énoncé Il y a 5 émetteurs et 7 fréquences de transmission possibles. On doit les affecter les fréquences de telle sorte qu elles évitent des parasites entre les émetteurs proches. Toutes les fréquences affectées doivent être différentes T 1 T 2 = d 23 T 4 T 3 T 5 3 / 35 4 / 35

: modélisation Variables : F i fréquence affectée à l émetteur i. Domaines : D Fi = {1,..., 7}, i. Contraintes : F i F j d ij ou F i F j d ij F i F j d ij, (i, j) ; all-different(f 1,..., F 5 ). 1 5 3 2 7 : contraintes additionnelles Il y a les fréquences basses ou VHF (1,2,3) et hautes ou UHF (4,5,6,7). Exactement 2 fréquences basses et 3 fréquences hautes doivent être affectées. Variables additionnelles : S i = 0 si basse et 1 si haute. Contraintes additionnelles : element(s i, {0, 0, 0, 1, 1, 1, 1}, F i ), i. gcc({si } i, {0, 1}, 2, 3, 2, 3). 1 3 6 7 4 5 / 35 6 / 35 : énoncé Source : Alan M. Frisch 7 / 35 8 / 35

: modélisation Données : n options, m types de voiture. d i voitures de type i doivent être produites, 1 i m, T = m i=1 d i. aij = 1 si types i exige l option j, sinon a ij = 0, 1 i m, 1 j n. Pour chaque sous-séquence de qj voitures, l option j peut être installée à au plus p j, 1 j n. Variables : Xk numéro de type de voiture en position k dans la séquence, 1 k T. O kj = 1 si la voiture en position k exige l option j, sinon O kj = 0, 1 k T, 1 j n. Domaines : DXk = {1,..., m}, k. D Okj = {0, 1}, k, j. : contraintes La demande pour chaque type de voiture doit être satisfaite : gcc ({X k } k, {1,..., m}, {d i } i, {d i } i ). Liaison entre les variables X et O : Contraintes de séquence : k+q j k =k element ( O kj, {a ij } i, X k ), k, j. O k j p j, j, 1 k T q j + 1. 9 / 35 10 / 35 Constrainte globale de séquençage Les deux dernières contraintes peuvent être remplacées par la contrainte globale de séquençage (Source : Puget et Régin) : gsc(x 1,..., X n, V, q, p) Cette contrainte exige que dans chaque sous-séquence de X de longueur q le nombre totale des valeurs dans V prises soit au plus p. Pour notre problème : ) gsc ({X k } k, {i} aij =1, q j, p j, 1 j n. 11 / 35 12 / 35

: énoncé n équipes, n 1 semaines, n 2 périodes. Chaque paire d équipes joue exactement 1 fois. Chaque équipe joue un match chaque semaine. Chaque équipe joue au plus deux fois dans la même période. : variables Pour chaque case, 2 variables représentent les équipes : Tpw h et Tpw, a p [1,..., n 2 ], w [1,..., n 1]. D(T h pw) = D(T a pw) = {0,..., n 1}, T h pw < T a pw, p, w. Pour chaque case, une variable représente le match : M pw, p [1,..., n 2 ], w [1,..., n 1]. D(M pw ) = {1,..., n(n1) 2 }, M pw = n T h pw + T a pw, p, w. Source : Jean-Charles Régin 13 / 35 14 / 35 : contraintes : résultats all-different({m pw } 1 p n/2,1 w n1 ) ; all-different({tpw, h Tpw} a 1 p n/2 ), w [1,..., n] ; gcc({tpw, h Tpw} a 1 w n1, {k, 2, 2} 0 k n1 ), p [1,..., n 2 ]. contraintes implicites ; symétrie (très important) : élimination des permutations. En utilisant PPC, on peut trouver un ordonnancement pour 40 équipes (dans 6 heures) taille réelle! Aujourd hui, les ordonnancements pour MLB (centaines de contraintes) sont produits en utilisant la Recherche Opérationnelle (PLNE, PPC, heuristiques) Source : Michael A. Trick 15 / 35 16 / 35

Emplois de temps : énoncé 4 employées, 7 jours dans la semaine. 3 périodes de travail chaque jour : jour (D, difficulté 1.0), soir (E, 0.8), nuit (N, 0.5). Dans chaque période, exactement un employée doit être présent chaque jour 3 employées travaillent, un est en repos. Difficulté totale pour chacun doit être.0. Lun Mar Mer Jeu Ven Sam Dim M. Vert J M. Bleu S M. Rouge N M. Brun Source : Gilles Pesant 17 / 35 18 / 35 Emplois de temps : modélisation Variables : T âche ij, 1 i 4, 1 j 7, Charge ij, 1 i 4, 1 j 7. Domaines : D T âcheij = {D, E, N, }, i, j. Contraintes : all-different(t âche j ), j. element(chargeij, {1.0, 0.8, 0.5, 0}, T âche ij ), i, j. 7 j=1 Charge ij.0, i. Lun Mar Mer Jeu Ven Sam Dim M. Vert D D D D M. Bleu N N N N N N M. Rouge N D D E D M. Brun E E E E E E Emplois de temps : longueur de série Contrainte additionnelle : longueur d une série doit être comprise entre une valeur min et une valeur max. Modélisation : stretch(t âche i, {2, 1, 1, 1}, {4, 4, 4, 7}). Lun Mar Mer Jeu Ven Sam Dim M. Vert D D N E D D M. Bleu N N N N N N M. Rouge D D D M. Brun E E E E E E 19 / 35 20 / 35

Emplois de temps : contrainte Pattern L automate fini pour notre exemple Contrainte additionnelles : Pas de changement de la période de travail sans le repos. Rotation en avant : D... E... N... D... Modélisation : pattern(t âche i, A), i. Cettes contraintes sont satisfaites si chaque séquence («mot») (T âche i1,..., T âche i7 ) est satisfaite par l automate fini A. start a D E c b D E g E f Lun Mar Mer Jeu Ven Sam Dim M. Vert D D E E E E M. Bleu E E E N N N M. Rouge N N N N D D M. Brun D D D D N d N e N 21 / 35 22 / 35 : une solution réelle 23 / 35 24 / 35

Ordonnancement d atelier Ordonnancement d atelier modélise des problèmes où les tâches se constituent d opérations nécessitantes machines (ressources) spécifiques. Ateliers à cheminement libres : Job-shop M 2 Entrée de l atelier Sortie de l atelier M 1 M 3 Exemples d application Atelier de montage. Ligne de production. Opérations de chaque tâche forment une chaîne : O i1 O i2 O ini. Tâches suivent ces propres séquences sur les machines. 25 / 35 26 / 35 Ordonnancement «job-shop» : énoncé n tâches, chaque tâche J i se constitue d une chaîne de n i opérations (O i1,..., O i,ni ). m machines disponibles. Chaque opération O ij est de longueur p ij est doit être exécutée par machine a ij {1,..., m}. But : trouver un ordonnancement de longueur n excédant pas T où les opérations ne se chevauche pas sur chaque machine. Ordonnancement «job-shop» : modélisation Variables : S ij date de début d exécution de l opération O ij, 1 i n, 1 j n i. Domaines : D Sij = [0, T p ij ], i, j. Contraintes : précédence : Sij + p ij S i,j+1, i, 1 j n i 1 ; non-chevauchement : disjunctive ( {S ij } aij =k, {p ij } aij =k), 1 k m. Machine 3 O 31 O 13 O 23 Machine 3 O 31 O 13 O 23 Machine 2 O 21 O 12 O 33 Machine 2 O 21 O 12 O 33 Machine 1 O 11 O 22 O 32 Machine 1 O 11 O 32 O 22 27 / 35 28 / 35

Job-shop : exemple Chez Faittout, certains produits sont étiquetés avant d être emballés, alors que pour d autres l étiquette est placée sur l emballage. Combien de temps faut-il pour apprêter les lots suivants? lot A B C D E F durée d emballage 10 16 14 4 8 4 durée d étiquetage 12 10 12 0 6 8 emballer avant d étiqueter? oui oui oui no no Source : François Vanderbeck 29 / 35 30 / 35 : énoncé : modélisation On doit couper un morceau rectangulaire (en bois, en acier,...) en petits morceaux. Rotations ne sont pas possibles. H Morceau initial W D E A C B F H G w J J h J I K Variables : X i, Y i coordonnées x et y du coin inférieur gauche du morceau i. Domaines : D Xi = [0, W w i ], D Yi = [0, H h i ], i. Contraintes pour chaque paire (i, j) des morceaux : X i + w i X j Xi X j + w j i est à gauche de j ou i est à droite de j ou Y i + h i Y j Yi Y j + h j i est au-dessous de j ou i est à au-dessus de j Les contraintes sont très «lâches» est locales! 31 / 35 32 / 35

: contraintes superflus : une application On a besoin d un point de vue plus global sur notre problème. On ajoute les contraintes additionnelles : cumulative({xi } i, {w i } i, {h i } i, H) ; cumulative({yi } i, {h i } i, {w i } i, W ). Ces contraintes sont superflus mais utiles! Résultats (Source : Pedro Barahona) : B D J G H C Sans cumulative : 24 seconds. A E Avec cumulative : 40 milliseconds. I K F Source : www.terciel.eu 33 / 35 34 / 35 Essentiel de modélisation «efficace» Essayez d utiliser plus de contraintes globales et moins de contraintes locales (il y a Global Constraint Catalog sur l Internet). Détectez et éliminez toutes les symétries que vous pouvez. Utiliser les contraintes superflus (mais utiles). Essayer différentes modèles. Essayer différentes heuristiques d instanciation des variables et valeurs. 35 / 35