32
“ Heuristiques pour la gestion d'énergie dans les bâtiments intelligents ”

Présentation stage G-SCOP

Embed Size (px)

DESCRIPTION

Stage de master en management spécialité génie industriel de l'INP Grenoble en 2010 au laboratoire G-SCOP. Gestion d'énergie pour les bâtiments intelligents (G-SCOP - Schneider Electric - Orange Labs). Développement de méthodes heuristiques pour accélérer la convergence des algorithmes d'optimisation pour la gestion de l'énergie dans les bâtiments. Transcription des programmes (java) de Glpk vers Cplex.

Citation preview

Page 1: Présentation stage G-SCOP

“ Heuristiques pour la gestion d'énergie dans les bâtiments intelligents ”

Page 2: Présentation stage G-SCOP
Page 3: Présentation stage G-SCOP

*Contexte du stage

*Description du problème

*MDA et projeteur vers CPLEX

*Validation du projeteur CPLEX

*Validation du service photovoltaïque

*Conclusion et perspectives

Page 4: Présentation stage G-SCOP
Page 5: Présentation stage G-SCOP

*Gestion de la consommation

d’électricité

*Utilisation de ressources

renouvelables

*Réduction des émissions de

gaz à effet de serre

*Appareils intelligents et

communicants

Page 6: Présentation stage G-SCOP

Il faut assurer:

*L’éfficacité énergétique des composants: meilleurs

rendements possibles.

*La conception efficace du système: éviter les

surdimensionnements, confort de l’usager.

*Le pilotage optimal du système: logiques de

contrôle/commande pour la gestion de l’intermittence

des sources d’énergie.

Page 7: Présentation stage G-SCOP

Travail existant:

* Structuration du problème de gestion de flux

énergétiques,

*Modèles mathématiques et informatiques décrivant les

services et le problème d’optimisation,

*Solveur intégré pour résoudre le problème d’optimisation,

Page 8: Présentation stage G-SCOP

Tâches demandées:

*Valider l’intégralité du prototype d’optimisation anticipative,

*Intégrer un autre solveur au système informatique existant en développant un projeteur de problèmes adapté,

*Comparer les résultats avec l’ancien solveur,

*Intégration du service photovoltaïque et analyse multicritère.

Page 9: Présentation stage G-SCOP
Page 10: Présentation stage G-SCOP

*Services fournisseurs d’énergie: Ex. Réseau EDF, Solaire

*Services à l’usager:

*Services Permanents: Ex. Chauffage

*Services Temporaires: Ex. Machine à laver, Four électrique

*Services Non supervisés: Ex. Eclairage, Ordinateur

Page 11: Présentation stage G-SCOP

Couche Anticipative

• Objectif: générer le plan d’affectation des ressources

en fonction des prédictions disponibles

• Flexibilité: basée sur les degrés de liberté offerts par

l’utilisateur

• Contrainte: l’énergie affectée moyenne

Couche réactive

• Objectif: adapter le plan d’affectation des ressources

pour faire face aux événements imprévus

• Flexibilité: basée sur les degrés de liberté offerts par le

fonctionnement des équipements

• Contrainte: puissance consommée maximale

Couche locale

• Objectif: suivre la consigne de la couche d’anticipation

et de la couche réactive en utilisant le contrôle

embarqué

• Flexibilité: régulation locale

• Contrainte: capacité de l’équipement

Page 12: Présentation stage G-SCOP

*Modèles de comportement des services

*Contraintes de conservation d’énergie

*Contraintes de satisfaction de l’usager (température,

date de début et date de fin)

*Fonction objective (compromis entre coût et satisfaction)

Formulation type programmation linéaire à variables

mixtes (MILP)

Page 13: Présentation stage G-SCOP
Page 14: Présentation stage G-SCOP

*Elaboration des modèles issus du logique métier des systèmes

indépendamment aux plateformes d’exécution,

*Transformation vers des modèles dépendants des

plateformes,

*Quatres niveaux de modélisation:

1. Modèle d'exigence (CIM) - Computation Independent Model

2. Modèle d'analyse abstraite (PIM) - Platform Independent

Model

3. Modèle de de conception concrète (PSM) - Platform

Specific Model

4. Code

Page 15: Présentation stage G-SCOP

+ getContinuousVariableValue()

+ getIntegerVariableValue()

+ getConstraintValue()

+ getObjective()

+ getStatus()

«interf ace »

+ Solution

solverRepresentation

name

index

lowerBound

upperBound

value

# Variable()

+ getName()

+ getIndex()

+ setSolverRepresentation()

+ getSolverRepresentation()

+ getLowerBound()

+ setValue()

+ getValue()

+ setLowerBound()

+ getUpperBound()

+ setUpperBound()

+ isRegistered()

+ getType()

+ CONSTANT

+ DOMAIN

«enumeration »

+ TYPE

+ Variable

# problemName

# problemType

# optimizationType

constraintCoeff icients

continuousVariables

integerVariables

constraints

objective

numberOf Variables

numberOf Constraints

+ MIPproblem()

+ createContinuousVariable()

+ createBinaryVariable()

+ createIntegerVariable()

+ createEqualityConstraint()

+ createGreaterEqualConstraint()

+ createLowerEqualConstraint()

+ setConstraintCoef f icient()

+ addObjectiveCoef ficient()

+ createSemiContinuousVariable()

+ solve()

+ solve()

+ getContinuousVariables()

+ getIntegerVariables()

+ getVariable()

+ getConstraints()

+ getConstraint()

+ getObjective()

+ getConstraintMatrixElements()

+ MIXED_INTEGER_PROGRAMING

+ LINEAR_PROGRAMMING

«enumeration »

+ PROBLEM_TYPE

+ MINIMIZATION

+ MAXIMIZATION

«enumeration »

+ OPTIMIZATION_TYPE

+ M IPproblem

constraintIndex

variableIndex

value

+ ConstraintCoef ficient()

+ getConstraintIndex()

+ getVariableIndex()

+ getValue()

+ ConstraintCoefficient

name

type

bound

index

solverRepresentation

# Constraint()

+ getName()

+ getIndex()

+ setSolverRepresentation()

+ getSolverRepresentation()

+ getType()

+ getBound()

+ LOWER_EQUAL

+ EQUAL

+ GREATER_EQUAL

«enumeration »

+ TYPE

+ Constraint

+ EqualityConstraint()

+ EqualityConstraint

+ GreaterEqualConstraint()

+ GreaterEqualConstraint

+ LowerEqualConstraint()

+ Low erEqualConstraint

- solver

+ GLPKproblem()

+ solve()

- _addVariable()

- _addConstraint()

+ GLPKproblem

solver

continuousVariables

integerVariables

constraints

problemType

+ GLPKsolution()

+ getContinuousVariableValue()

+ getIntegerVariableValue()

+ getConstraintValue()

+ getObjective()

+ getStatus()

+ GLPKsolution

+ CPLEXproblem()

+ solve()

- f indConstraintCoef f icients()

+ CPLEXproblem

iloCplex

continuousVariables

integerVariables

constraints

problemType

+ CPLEXsolution()

+ getObjective()

+ getStatus()

+ getConstraintValue()

+ getContinuousVariableValue()

+ getIntegerVariableValue()

+ CPLEXsolution

Page 16: Présentation stage G-SCOP

*Création d’un modèle CPLEX vide ;

*Parcourir les variables (entières et réelles) du problème qui sont générées à partir du métamodèle et les ajouter au modèle CPLEX ;

*Parcourir les coefficients qui multiplient les variables de chaque contrainte du problème ;

*Former les expressions numériques qui représentent ces contraintes et les ajouter au modèle ;

*Former la fonction objectif de la même façon que les contraintes ;

*Entrer le type d’optimisation (maximisation/minimisation).

Page 17: Présentation stage G-SCOP
Page 18: Présentation stage G-SCOP

0

2

4

6

8

0 2 4 6 8 10 12 14 16 18 20 22

Température de l'air à l'extérieur (°C)

0

50

100

150

200

250

300

350

400

0 2 4 6 8 10 12 14 16 18 20 22

Radiation solaire (W/m2)

0

0.2

0.4

0.6

0.8

1

0 2 4 6 8 10 12 14 16 18 20 22

Coût d'électricité (€/kWh)

0

500

1000

1500

2000

2500

3000

3500

4000

0 2 4 6 8 10 12 14 16 18 20 22

Puissance disponible(W)

Page 19: Présentation stage G-SCOP

Température préférée : 294 K (21°C)

Puissance maximale : 1000 W

Ecart toléré : 288 K – 303 K Constante de temps : 1000 s

Température initiale : 294 K (21°C)

Gain : 0.03 K/W

Température en absence : 298 K (16°C)

Priorité : 1

•Service Chauffage :

Température préférée : 279 K (6°C)

Constante de temps : 56000 s

Ecart toléré : 280 K – 275 K Gain : -0.6 K/W

Température initiale : 279 K (7°C) Priorité : 1

Puissance maximale : 150 W

•Service Réfrigérateur

Température préférée : 265K (-8°C)

Constante de temps : 70000 s

Ecart toléré : 258 K – 268 K Gain : -0.36 K/W

Température initiale : 268 K (-5°C)

Priorité : 1

Puissance maximale : 200 W

•Service Congélateur

Date de fin préférée : 18h Puissance maximale : 2000 W

Ecart toléré : 13h – 21h Priorité : 1

Durée : 1.5h

•Service Machine à laver

• Charges non contrôlées

Puissance moyenne : 700 W

Page 20: Présentation stage G-SCOP

*Résultats expérimentaux:

851 contraintes

107 variables entières

413 variables réelles

Temps d’exécution: 0.09 sec

Page 21: Présentation stage G-SCOP
Page 22: Présentation stage G-SCOP

ScénarioModèle Basique

Fenêtre 4h

Modèle confort

Fenêtre 4h

5T 0.02 s 3.2 s

6T 0.02 s 14 s

7T 7.44 s 16 s

8T 15 s 145 s

9T 782 s 2574 s

10T >8000 s >7000s

Page 23: Présentation stage G-SCOP
Page 24: Présentation stage G-SCOP

*Coût d’électricité constant pendant toute la journée

Page 25: Présentation stage G-SCOP

*Formulation mathématique et intération du service

photovoltaïque dans le code

*Même scénario (sans le service congélateur)

*Résultats expérimentaux:

850 contraintes

107 variables entières

388 variables réelles

Temps d’exécution: 0.06 sec

Page 26: Présentation stage G-SCOP
Page 27: Présentation stage G-SCOP

Timed service: 8-16-23

Ponderation for dissatisfaction: 1

Page 28: Présentation stage G-SCOP

Timed service: 8-16-23

Ponderation for dissatisfaction: 0,001

Page 29: Présentation stage G-SCOP
Page 30: Présentation stage G-SCOP

Contribution:

*Validation de l’intégralité du prototype d’optimisation anticipative,

*Intégration du solveur CPLEX au système informatique existant en développant un projeteur de problèmes adapté,

*Amélioration remarquable des résultats par rapport au solveur GLPK,

*Intégration du service photovoltaïque et analyse multicritère par agrégation.

Page 31: Présentation stage G-SCOP
Page 32: Présentation stage G-SCOP