21
Visualisation d’applications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Embed Size (px)

Citation preview

Page 1: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Visualisation d’applications industrielles du langage NCL

en Java.

Projet 3A03-07

Dominique LAINS & Frédéric VOLPI

10 Juin 2004

Page 2: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 2

Sommaire

Présentation d’Enginest,Cahier des charges et planning,Organisation du travail,Langage NCL,ActiveX de NCL,Présentation des 4 applications :– Call Trafic Optimisation,– Sports Scheduling,– Production Planning,– Well Mining.

Diffusion de notre travail,Conclusion.

Page 3: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 3

Innovation : technologie NCL (Natural Constraint Language) techniques de langage naturel mathématique et programmation par contraintes.

Fournisseur de moteurs de calcul (domaine de la planification et de l’ordonnancement)

Développement de POEM (Programming in Ordinary & Expressive Models) : plate-forme de NCL.

Présentation d’Enginest

Page 4: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 4

Page 5: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 5

Page 6: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 6

Travail demandé (CDCF)

Travail sur 3+1 applications.

Pour chacun :- ActiveX de NCL (calcul),- Visualisation des résultats,- Mise en évidence des contraintes.

Visualisation concrète et interactive des résultats.

Page 7: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 7

Planning

Page 8: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 8

Organisation du travail

Déplacement hebdomadaire chez Enginest,

Recherches de documentation (Internet & MSDN) sur les composants graphiques et leur utilisation,

Etude d’un sujet:– Fichiers de solutions et de données (M. Courtet), lecture des

fichiers,– Réflexion individuelle & mise en commun des résultats

(Brainstorming),– Programmation modulaire, méthode «Essai & Erreur», – ActiveX de NCL,– Traduction en anglais.

Page 9: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 9

Langage NCL

Programmation par contraintes sur des ensembles,

Ecriture proche des mathématiques,

Programmation naturelle,

Typage implicite.

Page 10: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 10

ActiveX permet l’appel d’un composant logiciel depuis un autre.

ActiveX de NCL

Page 11: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 11

Insertion du composant ActiveX sur la fenêtre graphique,

Configuration de celui-ci (fichiers solutions, données, config et source),

Adaptation de notre programme pour la lecture des solutions.

ActiveX de NCL

Page 12: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 12

Call Traffic Optimisation

Problème: acheminer des appels téléphoniques entre 7 villes.

Contrainte principale: problèmes de capacité maximale des lignes, nécessité de minimiser le nombre de villes intermédiaires.

Données: – Nom des villes,– Nombre de flux,– Ville de départ, d’arrivée, flux à faire passer et flux max.

Page 13: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 13

Call Traffic Optimisation

Solution: – Valeur des flux directs entre deux villes,– Valeur des flux intermédiaires.

Mise en place de plusieurs options: affichage des flux ville par ville (démo), valeur des flux entre deux villes…

Raisonnement mathématique et logique:– Fonction de dessin des flux (position des villes),– Difficulté de visualisation des différents types de flux et de leur

capacité,– Utilisation de nouveaux éléments graphiques (tracer des lignes,

possibilité de cliquer sur les villes dans la carte).

Page 14: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 14

ACC Sports Scheduling

Problème: organiser les rencontres Aller-retour d’un championnat de 9 équipes.

Nombreuses contraintes: répartition des matchs domicile extérieur, spécificité des 5 premiers week-ends, critères spécifiques…

179 solutions: pour chacun des 18 jours, 4 matchs sont prévus.

2 onglets:– Calendrier général, – Calendrier spécifique (pour chaque équipe).

Page 15: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 15

Possibilité de choisir la contrainte à mettre en évidence:– Descriptif de la contrainte,– Visualisation de la contrainte sur le calendrier.

Détails sur chaque match (quelles équipes et où?)

Utilisation de nouveaux éléments graphiques : – Remplissage de rectangles en couleur (relief),– Mise en place de hachures, – Utilisation d’images…

ACC Sports Scheduling

Page 16: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 16

Production Planning

Problème: visualisation de la production d’une entreprise sur 3 périodes, avec 3 types de produit (des ordinateurs).

Contraintes: visualisation des évolutions des ventes & de la production en fonction de la solution, respect des capacités maximales.

Données:– Nom et prix des produits et nom de leurs composants,– Demande max et min pour chaque produit pour chaque période,– Capacité maximale de production par période,– Fournisseurs et prix pratiqués en fonctions de la quantité

commandée pour chaque produit.

Page 17: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 17

Production Planning

Solutions:– Chiffre d’affaire,– Production et ventes pour chaque produit et pour chaque

période.

Particularités: – Édition d’une facture (fournisseur, PU, quantité etc.)– Mise en évidence des stocks, de la production, des ventes

et de la demande en composants,– Utilisation de nouveaux éléments graphiques,– Similitude avec les programmes existants (aspect visuel).

Page 18: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 18

Well Mining

Problème: Visualiser l’activité de 5 puits de forage.

Contraintes: problème d’allocation de ressources– Données : 5 puits, 3 machines, un seul workover, 3 types de

couches, …– Minimiser le temps total de forage des 5 puits,– Le workover doit préparer chaque puits avant qu’une machine n’y

creuse.

Données:– Liste des couches pour chaque puits et leur épaisseur,– Taux de production pour chaque puits et par type de sol,– Durée de travail du workover en fonction du type de sol qui suit.

Page 19: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 19

Well Mining

Solutions: pour chaque puits, heures de travail du workover, de la machine et numéro de cette machine.

Visualisation graphique:– Mise en œuvre de l’animation du forage (avancement de la

simulation…): difficulté de programmation importante,– Dessin des diagrammes d’état des puits (activité sur chaque

puit en fonction du temps),– Emploi du temps du workover (nombre d’heures de travail et

de repos…)

Page 20: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 20

Diffusion de notre travail

CD-Rom: – Enginest avec module NCL,– ESSTIN sans module NCL, avec lecture directe

des solutions.

Site internet: http://projetesstin.free.fr– Accès à tous les documents concernant notre

projet (CDCF, planning, rapport de mi-étude…)– Accès aux fichiers exécutables des 4 problèmes.

Page 21: Visualisation dapplications industrielles du langage NCL en Java. Projet 3A03-07 Dominique LAINS & Frédéric VOLPI 10 Juin 2004

Dominique Lains & Frédéric Volpi

Visualisation d’applications industrielles du langage NCL en Java. 21

Conclusion

Contribution au développement des démonstrations de NCL pour Enginest,

Découverte d’un nouveau langage et spécialisation dans le Visual Java,

Diffusion des travaux sur différents supports multimédia,

Bonne collaboration avec Enginest.