Presentation is loading. Please wait.

Presentation is loading. Please wait.

Stochastic optimization in high dimension Stéphane Vialle Xavier Warin Sophia 21/10/08.

Similar presentations


Presentation on theme: "Stochastic optimization in high dimension Stéphane Vialle Xavier Warin Sophia 21/10/08."— Presentation transcript:

1 Stochastic optimization in high dimension Stéphane Vialle Stephane.Vialle@supelec.fr Xavier Warin Xavier.Warin@edf.fr Sophia 21/10/08

2 21 octobre 2008Juin 2008 Entité d'appartenanceEDF R&D 2 EDF and its customers The assets  58 nuclear power plants on 19 areas (86.6%)  14 thermal power plants (4.6%)  440 hydro plants and 220 dams (8.8%)  Solar energy, wind power (< 0.5%) Customers  Different kind of customers  A lot of style of contracts (for example swing where the producer can suspend delivery)

3 21 octobre 2008Juin 2008 Entité d'appartenanceEDF R&D 3 Assets management at EDF  Manage water stocks, fuel, customers contracts.  Goal :  maximize the expected cash flow  minimize risk  Under constraints  Satisfy the customer load  Respect pollution constraints

4 21 octobre 2008Juin 2008 Entité d'appartenanceEDF R&D 4 Asset management at EDF  Hazards :  Demand  Hydraulicity (inflows)  Weather patterns (cold means high demand)  Market prices  Assets outages. Stochastic control problem in high dimension : Number of state variable linked to :  Number of hazards  Number of stock to be dealt with

5 21 octobre 2008Juin 2008 Entité d'appartenanceEDF R&D 5 Numerical methods associated  Decomposition methods (Lemaréchal)  Very effective for time resolution  Duality gap (non convexity)  Dynamic programming (Bellman 1957)  Very general (non convex, binary …)  Face curse of dimensionnality, global risk constraints difficult to implement  Stochastic Dual Dynamic programming (Pereira)  Approximate convex Bellman values for stocks (needs convexity)  Bender cuts leads to Linear Programming problem  Global risk constraints difficult to implement

6 21 octobre 2008Juin 2008 Entité d'appartenanceEDF R&D 6 EDF process  Optimize the cost function J with approximation and keep all the optimal commands at each step (no asset constraints as ramp constraint, minimum time before restarting etc…)  Use a Monte Carlo simulator with all the assets and constraints to calcule accurate average earnings, risk measure Goal Incorporate more stocks in the optimizer to be more accurate A way to do it :  Use parallelism fo Stochastic Programming optimization  See influence of optimisation parallelisation on simulation

7 21 octobre 2008Juin 2008 Entité d'appartenanceEDF R&D 7 Dynamic programming implementation  Use Monte Carlo for simulations for hazards (flexible, easy to use for risk)  Backward algorithm (Longstaff Schwarz version)  At t = 0 interpolate J for current stock c and current uncertainty s

8 21 octobre 2008Juin 2008 Entité d'appartenanceEDF R&D 8 Algorithm problematic  Sequential in time  Rather sequential for nc nest  Parallel for c nest if all are available in memory for all (c,s)  number of points discretization in each direction.  Is the number of c to explore IDEA : parallelize the C nest by splitting the hypercube Use of communication scheme for optimisation and simulation too (commands spreads with stocks levels on processors)

9 21 octobre 2008Juin 2008 Entité d'appartenanceEDF R&D 9 Example splitting for 3 stocks PiPi Stock-1 levels Stock-2 levels Stock-3 levels PiPi tntn t n+1 Influence area on t n computations

10 21 octobre 2008Juin 2008 Entité d'appartenanceEDF R&D 10 2D example for routing (receive) P0P1P2P3 P4P5P6P7 P8P9P10P11 P12P13P14P15 P6P5P6 P5 P6 P5 P6 P5 Routing plan: What happens on P5 (for example) ? It determines all 2D-subcubes it has to receive from other processors Recv Send Proc 0123456789101112131415

11 21 octobre 2008Juin 2008 Entité d'appartenanceEDF R&D 11 2D example for routing (send) P0P1P2P3 P4 P5 P6P7 P8P9P10P11 P12P13P14P15 P5 Routing plan: What happens on P5 (for example) ? Recv Send Proc 0123456789101112131415 It determines all 2D-subcubes it has to send to other processors: compute « influence area » of P0 compute the intersection with its t n+1 2D-subcube of data P0

12 21 octobre 2008Juin 2008 Entité d'appartenanceEDF R&D 12 2D example for routing P0P1P2P3 P4 P5 P6P7 P8P9P10P11 P12P13P14P15 P5 Routing plan: What happens on P5 (for example) ? Recv Send Proc 0123456789101112131415 It determines all 2D-subcubes it has to send to other processors: repeat with other processors… The routing plan of P5 is complete!  Execute it quickly!

13 21 octobre 2008Juin 2008 Entité d'appartenanceEDF R&D 13 C+ implementation Parallelization: MPI: Mpich-1, OpenMPI, IBM MPI communication routines: MPI_Issend, MPI_Irecv, MPI_Wait  overlap all communications when executing a routing plan (to speedup)  do not use “extra communication buffers” (to size up) + multithreading: Intel TBB or OpenMP  to speedup and to size up more (than using only message passing) Scientific computing libraries: Blitz++, Boost, Clapack, Sprng. Total: 57000 lines of C++ code 10% for parallelization management Parallelization can be withdrawn by preprocessing for small cas debug Same source code on PC-cluster and Blue Gene/L and Blue Gene/P

14 21 octobre 2008Juin 2008 Entité d'appartenanceEDF R&D 14 Test case presentation  Optimization and simulation on 518 days with time step of one day  One stock of water :  225 points discretizations (c)  5 commands (0 to 5000 MW each day for nc )  6 stocks of month future products with delivery of energy (peak and off peak hours)  5 points discretization for each one  5 commandes ( -2000 MW (sell) to 2000Mw (buy) tested every 2 weeks  Aggregated view of thermal assets.  Up to 225*5^6 points discretizations and 5^7 commands to tests

15 21 octobre 2008Juin 2008 Entité d'appartenanceEDF R&D 15 Results Intel 256 *2 cores, BG 8192*4 cores Comparison BG, cluster without multithreading

16 21 octobre 2008Juin 2008 Entité d'appartenanceEDF R&D 16 Results Comparison Blue Gene, Cluster multithreading

17 21 octobre 2008Juin 2008 Entité d'appartenanceEDF R&D 17 Results Some optimizations carried out for Blue Gene Should improve the results in intel. ICC should be used instead of ICC on intel Some more optimizations on Blue Gene should bring the optimization part around 1000s on 8192 mpi sessions with 4 threads

18 21 octobre 2008Juin 2008 Entité d'appartenanceEDF R&D 18 Conclusion Tool developped for stochastic optimization with a limited number of stocks (< 10) Will bring some reference calculation for some other methods (supposing convexity for example) giving some results on how far of optimality we are. To be tested on EDF data without approximation for asset Will be a candidate for GPU cluster optimization


Download ppt "Stochastic optimization in high dimension Stéphane Vialle Xavier Warin Sophia 21/10/08."

Similar presentations


Ads by Google