Enseignement spécialisé Optimisation. Projet sur les réseaux de distribution d eau



Documents pareils
Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.

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

Introduction à MATLAB R

3 Approximation de solutions d équations

de calibration Master 2: Calibration de modèles: présentation et simulation d

4.2 Unités d enseignement du M1

Cours 02 : Problème général de la programmation linéaire

RO04/TI07 - Optimisation non-linéaire

Optimisation et programmation mathématique. Professeur Michel de Mathelin. Cours intégré : 20 h

Équations non linéaires

Algorithmique I. Algorithmique I p.1/??

Rappels sur les suites - Algorithme

Cours d Analyse. Fonctions de plusieurs variables

Chapitre 6. Fonction réelle d une variable réelle

Cours d algorithmique pour la classe de 2nde

Table des matières. I Mise à niveau 11. Préface

MATLAB : COMMANDES DE BASE. Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */.


Exercices Corrigés Premières notions sur les espaces vectoriels

L analyse boursière avec Scilab

DECLARATION DES PERFORMANCES N 1

IMAGES NUMÉRIQUES MATRICIELLES EN SCILAB

ANALYSE NUMERIQUE ET OPTIMISATION. Une introduction à la modélisation mathématique et à la simulation numérique

UNIVERSITE DES ANTILLES et DE LA GUYANE Campus de Fouillole BP Pointe-à-Pitre Cedex CONTRAT LE MASTER NOM DU DOMAINE STS

CHAPITRE V SYSTEMES DIFFERENTIELS LINEAIRES A COEFFICIENTS CONSTANTS DU PREMIER ORDRE. EQUATIONS DIFFERENTIELLES.

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

Probabilités stationnaires d une chaîne de Markov sur TI-nspire Louis Parent, ing., MBA École de technologie supérieure, Montréal, Québec 1

Optimisation, traitement d image et éclipse de Soleil

introduction Chapitre 5 Récursivité Exemples mathématiques Fonction factorielle ø est un arbre (vide) Images récursives

Quantification Scalaire et Prédictive

L ALGORITHMIQUE. Algorithme

INTRODUCTION AU DATA MINING

Algorithmes de recherche d itinéraires en transport multimodal

Les structures de données. Rajae El Ouazzani

Programmation linéaire

physicien diplômé EPFZ originaire de France présentée acceptée sur proposition Thèse no. 7178

Web Science. Master 1 IFI. Andrea G. B. Tettamanzi. Université de Nice Sophia Antipolis Département Informatique andrea.tettamanzi@unice.

1 Définition. 2 Systèmes matériels et solides. 3 Les actions mécaniques. Le système matériel : Il peut être un ensemble.un sous-ensemble..

Dimensionnement Introduction

Programmes des classes préparatoires aux Grandes Ecoles

Coup de Projecteur sur les Réseaux de Neurones

Polynômes à plusieurs variables. Résultant

CHAPITRE VIII : Les circuits avec résistances ohmiques

Cours d analyse numérique SMI-S4

I. Programmation I. 1 Ecrire un programme en Scilab traduisant l organigramme montré ci-après (on pourra utiliser les annexes):

Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR

Baccalauréat S Antilles-Guyane 11 septembre 2014 Corrigé

Organigramme / Algorigramme Dossier élève 1 SI

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Résolution de systèmes linéaires par des méthodes directes

Etude d un cas industriel : Optimisation de la modélisation de paramètre de production

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.

CHAPITRE 5. Stratégies Mixtes

Modélisation et simulation du trafic. Christine BUISSON (LICIT) Journée Simulation dynamique du trafic routier ENPC, 9 Mars 2005

LES MÉTHODES DE POINT INTÉRIEUR 1

Pourquoi l apprentissage?

Monitoring continu et gestion optimale des performances énergétiques des bâtiments

Apprentissage statistique dans les graphes et les réseaux sociaux

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://

EES : Engineering Equation Solver Fiche récapitulative - Marie-Sophie Cabot

Système de sécurité de périmètre INTREPID

Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin.

F411 - Courbes Paramétrées, Polaires

ÉdIteur officiel et fournisseur de ServIceS professionnels du LogIcIeL open Source ScILab

Chp. 4. Minimisation d une fonction d une variable

Programmation C. Apprendre à développer des programmes simples dans le langage C

Fonctions de deux variables. Mai 2011

Annexe 6. Notions d ordonnancement.

Calculer avec Sage. Revision : 417 du 1 er juillet 2010

Correction de l examen de la première session

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Mathématique et Automatique : de la boucle ouverte à la boucle fermée. Maïtine bergounioux Laboratoire MAPMO - UMR 6628 Université d'orléans

TP 2 Réseaux. Adresses IP, routage et sous-réseaux

Fonctions de plusieurs variables

Simulation de variables aléatoires

Resolution limit in community detection

Programmation linéaire et Optimisation. Didier Smets

Chapitre 7. Récurrences

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

Calcul Formel et Numérique, Partie I

Chapitre 3 Les régimes de fonctionnement de quelques circuits linéaires

La classification automatique de données quantitatives

Programmation linéaire

Plan. 1 Cycles de développement. 2 Méthodes agiles, principes généraux. 3 Comment se passe un Sprint?

FIMA, 7 juillet 2005

Cours Informatique Master STEP

Matrice d accès. Master SEMS, Pierre Paradinas. October 16, 2013

Licence Sciences et Technologies Examen janvier 2010

Fonctions de plusieurs variables

Tests d indépendance en analyse multivariée et tests de normalité dans les modèles ARMA

TRANSLATION ET VECTEURS

Petit Guide de Survie en Scilab

Exercices du Cours de la programmation linéaire donné par le Dr. Ali DERBALA

données en connaissance et en actions?

Contents. 1 Introduction Objectifs des systèmes bonus-malus Système bonus-malus à classes Système bonus-malus : Principes

NOTATIONS PRÉLIMINAIRES

Pour l épreuve d algèbre, les calculatrices sont interdites.

Équations non linéaires

choisir H 1 quand H 0 est vraie - fausse alarme

Transcription:

Enseignement spécialisé Optimisation Projet sur les réseaux de distribution d eau Kengy Barty et Pierre Carpentier kengy.barty@edf.fr pierre.carpentier@ensta-paristech.fr Année 2014/2015 Site du cours : cas.ensmp.fr/ petit/esoptimisation/ Site du projet : www.ensta.fr/ pcarpent/tp Reseau/ENSMP/

Objectif et modalités du projet Prendre prétexte d un problème d ingénierie (lié à l hydraulique urbaine) pour faire apparaître un problème d optimisation, puis mettre en œuvre sur ce problème les différentes approches et les différents algorithmes présentés dans le cours d optimisation. Dans la vraie vie, il est rare d écrire une méthode d optimisation comme le gradient conjugué ou quasi-newton, car c est un travail de professionnel. Pour ce projet, vous êtes les professionnels... Langage de programmation : Scilab Travail en binôme. Contrôle continu pour l évaluation du projet. Compte rendu à l issue de la 2-ème séance. Rapport final à l issue de la dernière séance.

Schématique d un réseau de distribution d eau

Variables décrivant le réseau et notations Tailles du réseau. n arcs (canalisations du réseau), m nœuds : m r réservoirs, m d consommateurs (m = m r + m d ). Variables hydrauliques du réseau. flux aux nœuds : f = pressions aux nœuds : p = ( fr f d ( pr p d ) R m ) R m à calculer, connus. connues, à calculer. résistances des arcs : r R n connues. débits dans les arcs : q R n à calculer. (m + n) inconnues à déterminer.

Matrice d incidence et équations d équilibre du réseau Matrice d incidence nœuds arcs. 4 f 5 1 b a a b c d e f g e g c 3 d 2 A = Équations décrivant l état d équilibre. 1 1 0 0 0 0 0 0 0 1 1 0 0 0 +1 0 0 +1 1 0 1 0 +1 0 0 +1 1 0 0 0 +1 0 0 +1 +1 1 2 3 4 5 4 e b Noeud 4 : q b + q e q f = f 4. Aq f = 0. f 5 Arc f : p 4 p 5 = r f q f q f. A p + r q q = 0. (m + n) équations.

Problème d optimisation associé à l équilibre (1) En 1978, Collins et al 1 prouvent que ces équations d équilibre : Aq f = 0, A p + r q q = 0, sont en fait les conditions d optimalité du problème d optimisation : min (q R n, f r R mr ) 1 q, r q q + pr, f r, 3 sous la contrainte Aq f = 0. 1. M. Collins, L. Cooper, R. Helgason, J. Kennington and L. LeBlanc. Solving the pipe network analysis problem using optimization techniques. Management Science, Vol.24, No.7, March 1978.

Problème d optimisation associé à l équilibre (2) Le problème initial précédent peut se simplifier : d une part en éliminant les variables de flux f r (qui figurent de manière uniquement linéaire dans le problème) : 1 min q, r q q + pr, A r q, q R n 3 sous la contrainte A d q f d = 0, d autre part en écrivant la contrainte A d q f d = 0 sous la forme équivalente q = q (0) + Bq C, ce qui mène au problème d optimisation sans contrainte équivalent suivant : min q C R n m d 1 q (0) +Bq C, r ( q (0) ) +Bq C q (0) +Bq C 3 ( + p r, A r q (0) ) +Bq C. C est ce problème que l on va résoudre (pour commencer)!

But du projet Écrire des méthodes génériques d optimisation (recherche linéaire, gradient conjugué, quasi-newton, Newton) qui ne communiquent avec le problème que par l intermédiaire d un oracle associé à : F : q C 1 q (0) + Bq C, r ( q (0) ) + Bq C q (0) ( + Bq C + p r, A r q (0) ) + Bq C. 3 Oracle Fonction qui pour tout q C calcule F (q C ), F (q C ), 2 F (q C ) : Algorithme d optimisation [F,G,H] = Oracle(qc,ind). Fonction qui minimise F en partant d un point initial q ini : [Fopt,qopt,Gopt] = Minimise(Oracle,qini). Recherche linéaire Fonction qui assure la décroissance de F dans une direction d.

L algorithme du gradient à pas fixe function [fopt,xopt,gopt]=gradient_f(oracle,xini) alpha = 0.0005; x = xini; for k = 1:iter end [F,G] = Oracle(x,ind); if norm(g) <= tol then kstar = k; break end x = x - (alpha*g); logg = [ logg ; log10(norm(g)) ]; Cout = [ Cout ; F ]; fopt = F; xopt = x; gopt = G; endfunction

Enchaînement des tâches : Moniteur Skel.sce // Donnees du probleme exec( Probleme_R.sce ); exec( Structures_R.sce ); // Fonction de visualisation du deroulement de l algorithme exec( Visualg.sci ); // Fonctions de verification des resultats exec( HydrauliqueP.sci ); exec( Verification.sci ); // Oracle et algorithme d optimisation exec( Oracle.sci ); exec( Gradient_F.sci ); // Optimisation xini = 0.1 * rand(n-md,1); [fopt,xopt,gopt] = Gradient_F(Oracle,xini); // Verification des resultats [q,z,f,p] = HydrauliqueP(xopt); Verification(q,z,f,p);

Variables disponibles dans l environnement Scilab Description de la variable Nom math. Variable info. Espace Nombre total d arcs n n N Nombre total de nœuds m m N Nombre de nœuds de demande m d md N Nombre de nœuds réservoir m r mr N Flux aux nœuds de demande f d fd M(m d, 1) Pressions aux nœuds réservoir p r pr M(m r, 1) Résistances des arcs r r M(n, 1) Vecteur initial des débits q (0) q0 M(n, 1) Matrice d incidence nœuds-arcs A A M(m, n) Sous-matrice demande de A A d Ad M(m d, n) Sous-matrice réservoir de A A r Ar M(m r, n) Sous-matrice arbre de A d A d,t AdT M(m d, m d ) Sous matrice coarbre de A d A d,c AdC M(m d, n m d ) Matrice inverse de A d,t AdI M(m d, m d ) Matrice d incidence arcs-cycles B B M(n, n m d ) Attention : en Scilab, les variables sont globales!

Programme de travail de cette première séance 1 Lire le document descriptif du TP... 2 Récupérer les documents et les codes Scilab du TP : http://www.ensta.fr/ pcarpent/tp Reseau/ENSMP/ 3 Calculer le gradient et le hessien de la fonction : F : R n m d R q C 1 q (0) + Bq C, r ( q (0) ) + Bq C q (0) + Bq C + 3 ( p r, A r q (0) ) + Bq C. 4 Écrire un oracle codant les expressions obtenues (en Scilab). 5 Tester cet oracle avec la fonction optim de Scilab. 6 Écrire et mettre en œuvre l algorithme du gradient à pas fixe. Pour la prochaine séance : avoir un oracle en état de marche!!!

Programmation du projet 1 13 avril (15h00 18h15) 2 17 avril (08h30 12h30) 3 04 mai (14h00 18h15) 4 11 mai (14h00 18h15)

Ce projet...

Le vrai problème...