Learning Control Decisions in Gas Networks Mark Turner Combinatorial Optimization @ Work 2020
Exact control decisions of Network Stations ◮ Listen to previous talks ◮ Provides descriptions of individual gas network elements ◮ Provides background into the derivation of this problem 1
Exact control decisions of Network Stations ◮ Listen to previous talks ◮ Problem Setting (Important sub-networks inside larger network) ◮ Focus on Network Stations ◮ Network Stations contain all heavy machinery of the entire network ◮ Network stations are commonly the intersection points between large transportation pipelines 1
Exact control decisions of Network Stations ◮ Listen to previous talks ◮ Problem Setting (Important sub-networks inside larger network) ◮ Problem Aim (Control Decisions) ◮ Find control decisions for all network elements ◮ Ensure these control decisions are safe and realisable ◮ Make these control decisions as ‘stable’ as possible ◮ Control decisions are made at each time-step over a time-horizon { 0 , ..., | T |} . 1
Exact control decisions of Network Stations ◮ Listen to previous talks ◮ Problem Setting (Important sub-networks inside larger network) ◮ Problem Aim (Control Decisions) ◮ Two Different Approaches: ◮ (Model driven) Rolling Horizon approach ◮ (Data driven) Machine Learning approach 1
Problem Input and Output ◮ Input: ◮ Network Topology - Complete individual Flow and Pressure Network Initial State of element descriptions and connectedness Topology all Elements Prognosis at Boundaries ◮ Initial State - Starting values for all elements ◮ Prognosis - Set of demands we aim to meet Model Future Control Decisions for all Elements 2
Problem Input and Output ◮ Input: ◮ Network Topology - Complete individual Flow and Pressure Network Initial State of element descriptions and connectedness Topology all Elements Prognosis at Boundaries ◮ Initial State - Starting values for all elements ◮ Prognosis - Set of demands we aim to meet ◮ Output (For all future time steps): ◮ Valve states (Open / Closed) ◮ Compressor states (Active (operating point) / Bypass / Closed) Model ◮ Regulator states (Active (operating point) / Open / Closed) ◮ Additional: Flow / Pressure levels throughout the network Future Control Decisions for all Elements 2
Problem Uncertainties and Difficulties ◮ Organising priorities. 3
Problem Uncertainties and Difficulties ◮ Organising priorities. � � flow ( u , v ) + flow ( v , u ) = v inflow − v slack ◮ Supply and Demand is met u u | v slack | ≤ ǫ v ∈ Boundaries 3
Problem Uncertainties and Difficulties E.g. Make sure there are well defined pressure limits ◮ Organising priorities. for all bits of the network, and that your solution ◮ Supply and Demand is met respects them: ◮ Control Decisions are safe LB(pressure v ) ≤ pressure v ≤ UB(pressure v ) Potentially less well defined requests. E.g. Avoid stressing the network 3
Problem Uncertainties and Difficulties E.g. Make sure that your active point inside of a ◮ Organising priorities. compressor polytope moves as little as possible ◮ Supply and Demand is met ◮ Control Decisions are safe ◮ Control Decisions are stable 3
Problem Uncertainties and Difficulties E.g. Make sure that your active point inside of a ◮ Organising priorities. compressor polytope moves as little as possible ◮ Supply and Demand is met ◮ Control Decisions are safe ◮ Control Decisions are stable 3
Problem Uncertainties and Difficulties E.g. Make sure that your active point inside of a ◮ Organising priorities. compressor polytope moves as little as possible ◮ Supply and Demand is met ◮ Control Decisions are safe ◮ Control Decisions are stable 3
Problem Uncertainties and Difficulties E.g. Make sure that your active point inside of a ◮ Organising priorities. compressor polytope moves as little as possible ◮ Supply and Demand is met ◮ Control Decisions are safe ◮ Control Decisions are stable 3
Problem Uncertainties and Difficulties E.g. Make sure that your active point inside of a ◮ Organising priorities. compressor polytope moves as little as possible ◮ Supply and Demand is met ◮ Control Decisions are safe ◮ Control Decisions are stable 3
Problem Uncertainties and Difficulties E.g. Make sure that your active point inside of a ◮ Organising priorities. compressor polytope moves as little as possible ◮ Supply and Demand is met ◮ Control Decisions are safe ◮ Control Decisions are stable 3
Problem Uncertainties and Difficulties ◮ Organising priorities. min x , y Ax + By ◮ Supply and Demand is met ◮ Control Decisions are safe ◮ Control Decisions are stable vs. ◮ Weighted Objective vs Multi Level min x Ax s.t min y By 3
Problem Uncertainties and Difficulties ◮ Organising priorities. ◮ Solution must be output in reasonable time ◮ Model will be used in reality. ◮ Output in time is necessary https://xkcd.com/612/ 3
Problem Uncertainties and Difficulties ◮ Organising priorities. ◮ What assumptions do I make? E.g. Ignore temperature ◮ Solution must be output in reasonable time ◮ Which discretisation technique do I use? ◮ Model exactness ◮ Do I leave as is, convexify, or linearise my end ◮ Pipe discretisation result? ◮ See Kai Hoppmann’s talk on more information on pipe equations. (We linearise) 3
Problem Uncertainties and Difficulties Compressor stations increase gas-pressure in the ◮ Organising priorities. forward direction. We must choose which ◮ Solution must be output in reasonable time configuration of machines to use inside of the ◮ Model exactness compressor station, and the operating point inside ◮ Pipe discretisation of the configuration’s associated polytope. ◮ Compressor polytope Idea: Disjunctive Formulation Use case: Efficiently model each compressor configuration polytope s.t we retrieve the active configuration, and the active operating point inside of the polytope. 3
Problem Uncertainties and Difficulties m c ∈ { 0 , 1 } ∀ c ∈ C : Active configuration ◮ Organising priorities. pl c ∈ R + ∀ c ∈ C : LHS pressure ◮ Solution must be output in reasonable time pr c ∈ R + ∀ c ∈ C : RHS pressure ◮ Model exactness q c ∈ R + ∀ c ∈ C : Flow ◮ Pipe discretisation ◮ Compressor polytope � � m c = 1 pl = pl c c c � � pr = pr c q = q c c c LB (pl c ) m c ≤ pl c ≤ UB (pl c ) m c LB (pr c ) m c ≤ pr c ≤ UB (pr c ) m c LB ( q c ) m c ≤ q c ≤ UB ( q c ) m c w · pl c + x · pr c + y · q c + z · m c ≤ 0 ∀ c ∈ C ∀ ( w , x , y , z ) ∈ HPlanes(c) 3
Problem Uncertainties and Difficulties ◮ Organising priorities. ◮ Solution must be output in reasonable time ◮ Model exactness ◮ Pipe discretisation ◮ Compressor polytope 3
Operation Modes (Example Constraint Set) Operation Modes: ◮ Determines modes and configurations (binary decisions) for all valves and compressors M ( o , a ) := x where x is the mode / configuration of arc a in operation mode o ∀ o ∈ O with x ∈ { open , closed } if a ∈ Valves x ∈ { bypass , closed , cfgs } if a ∈ Compressors 4
Operation Modes (Example Constraint Set) Operation Modes: ◮ Determines modes and configurations (binary decisions) for all valves and compressors ◮ Limits these mode combinations to a set of size | O | 2 | valves | · � | O | (2 + | cfgs a | ) << a ∈ compressors 4
Operation Modes (Example Constraint Set) Operation Modes: ◮ Determines modes and configurations (binary decisions) for all valves and compressors ◮ Limits these mode combinations to a set of size | O | ◮ Determines the polytope choice for each compressor (Not the active point within) m c 1 = 0 m c 2 = 1 m c 3 = 0 pl c 1 = pl c 3 = pr c 1 = pr c 3 = q c 1 = q c 3 = 0 w · pl c 2 + x · pr c 2 + y · q c 2 + z ≤ 0 ∀ ( w , x , y , z ) ∈ HPlanes( c 2 ) 4
Operation Modes (Example Constraint Set) Operation Modes: ◮ Determines modes and configurations (binary decisions) for all valves and compressors ◮ Limits these mode combinations to a set of size | O | ◮ Determines the polytope choice for each compressor (Not the active point within) ◮ Has an allowed set of flow directions with each choice. For example, the four choices shown never allowed east to north flow. 4
Model Driven Rolling Horizon Approach ◮ Single large MIP is too unreliable. Solve times can take days to even find a primal solution. t = 0 t = 1 t = 2 5
Model Driven Rolling Horizon Approach ◮ Single large MIP is too unreliable. Solve times can take days to even find a primal solution. ◮ Idea: Break up by timesteps. Create greedy heuristic for determining best binary decisions t = 0 t = 1 t = 2 5
Model Driven Rolling Horizon Approach ◮ Single large MIP is too unreliable. Solve times can take days to even find a primal solution. ◮ Idea: Break up by timesteps. Create greedy heuristic for determining best binary decisions ◮ Introduce a penalty for changing operation modes (set of binary control decisions) t = 0 t = 1 t = 2 5
Recommend
More recommend