building cogeneration planning scheduling systems using ibm ilog odme, cplex and impress
TRANSCRIPT
Building Cogeneration Planning
and Scheduling
Applications using IBM ODME
and iMPress
DecisionBrain & Industrial Algorithms LLC.
7/19/2013 Copyright, DB & IAL
Agenda
• What is ODME?
• What are Industrial Modeling Frameworks?
• What is iMPress?
• ODME-iMPress Implementation
• Benefits
• Proof of Concept
2
3
Based on IBM ILOG Optimization
Portfolio
Engines and Tools
CPLEX Optimization High-performance mathematical and constraint programming solvers, modeling language, and development environment
Solution Platform
ODM Enterprise Build and deploy analytical decision support applications based on optimization technology
Oil&Gas Production Scheduling
ILOG ODM Enterprise
Architecture
(OR)
(IT)
Embeds all CPLEX Optimization Studio
Reporting
Data Integration
Data Modeling
ODM Enterprise IDE
ODM Enterprise
Optimization Server/Engine
ODM Enterprise
Client & Planner
Optimization Modeling,
Tuning, Debugging
Application UI Configuration (LoB)
Development Deployment
Application UI Customization
Business Use
Custom GUI
Batch process
ODM Enterprise
Data Server
Industrial Modeling Frameworks
(iMF’s)
• Process industry business problems are
complex hence an iMF provides a pre-project
or pre-solution advantage (head-start).
• An iMF embeds intellectual-property and
know-how related to the process’s flowsheet
modeling as well as its problem-solving
methodology.
iMPress
• iMPress stands for “Industrial Modeling &
PRE-Solving System” and is our proprietary
platform for discrete and nonlinear modeling.
• iMPress can “interface”, “interact”, “model”
and “solve” any production-chain, supply-
chain, demand-chain and/or value-chain
optimization problem.
6
Cogenerartion Scheduling
Application Types
• Off-Line Environments:
– Usually « dynamic » optimization with discrete (logic) & linear variables using Mixed Integer Linear Programming not including feedback (feedforward only).
• On-Line Environments:
– Usually « steady-state » optimization with continuous & nonlinear variables using NLP including feedback (and feedforward).
– Usually includes steady-state detection, data reconciliation and regression (« moving horizon estimation ») with diagnostics for monitoring.
Off-Line Optimization
• Sometimes called « load shedding, shifting &
scheduling ».
– Determines steam and power production subject to
supply availability and demand requirements.
– Respects transition (sequence-dependent)
management of producing units such as boilers and
turbogenerators i.e., understands resting (standby),
ramping (startup/shutdown) and running (setup)
which IAL calls « Phasing ».
– Similar to a « product wheel » found in specialty batch
& fast moving consumer goods industries.
Off-Line Optimization –
« Phasing »
• « Phasing » forces a predictable operational
sequence or order for selected units.
Off-Line Optimization –
« Phasing » • REST = min. 3-d, RAMPUP = 1-d, RUN’s =
min. 3 - max. 10-d, RAMPDOWN = 1-d, Past-Horizon = 2-d & Future-Horizon = 60-d.
On-Line Optimization
• Typically assumes discrete/logic variables are fixed – IAL calls this « phenomenological decomposition ».
• If plant is at « steady-state* » then optimize process or operating conditions using NLP (IPOPT, KNITRO, XPRESS-SLP, IAL-SLPQPE).
• Apply nonlinear data reconciliation & parameter estimation to provide gross-error/outlier detection & calibrate model.
* Kelly & Hedengren, « A steady-state detection algorithm to detect non-stationary drifts in processes », Journal of Process Control,
23, 2013.
On-Line Optimization • An important aspect is to callout/callback to
physical/thermodynamic properties such as enthalpies. – STEAM67.DLL is « wrapped » in
STEAM67_H.DLL to compute saturated enthalpy and its first-order derivatives using its saturated temperature.
&sCondition
HOTF
COLDF
WARMF
HOTT
COLDT
WARMT
FBAL
HFBAL
&sCondition
&sCoefficient,@sType,@sPath_Name,@sLibrary_Name,@sFunction_Name,@iNumber_Conditions,@rPerturb_Size,@sConditi
on_Names
HOTH,dynamic,c:\IndustrialAlgorithms\PhysicalProperties\Debug\,steam67_H,steam67_H,1,1e-6,HOTT
COLDH,dynamic,c:\IndustrialAlgorithms\PhysicalProperties\Debug\,steam67_H,steam67_H,1,1e-6,COLDT
WARMH,dynamic,c:\IndustrialAlgorithms\PhysicalProperties\Debug\,steam67_H,steam67_H,1,1e-6,WARMT
&sCoefficient,@sType,@sPath_Name,@sLibrary_Name,@sFunction_Name,@iNumber_Conditions,@rPerturb_Size,@sConditi
on_Names
Conditions-&sMacro,@sValue
FBAL,HOTF + COLDF - WARMF
HFBAL,HOTH*HOTF + COLDH*COLDF - WARMH*WARMF
Conditions-&sMacro,@sValue
Cogeneration (Steam/Power) iMf
7/19/2013 Copyright, Industrial Algorithms LLC
• Time Horizon: 168 time-periods w/ hour
periods.
• Continuous Variables = 5,000
• Binary Variables = 1,000
• Constraints = 7,500
• Time to First Good Solution = 5 to 30-
seconds
• Time to Provably Optimal = 5 to 15-minutes
Cogeneration (Steam/Power) iMf
Water
Pump
• Time Horizon: 168 time-periods w/ hour
periods.
• Continuous Variables = 5,000
• Binary Variables = 1,000
• Constraints = 7,500
• Time to First Good Solution = 5 to 30-seconds
• Time to Provably Optimal = 5 to 15-minutes.
• Solver: CPLEX
7/19/2013 Copyright, Industrial Algorithms LLC
Cogeneration (Steam/Power) iMf
ODME-iMPress-CPLEX
System Architecture
ODME-iMPress-CPLEX
System Architecture
• A domain-specific data model was created in
ODME using the usual master-data and
transactional-data partitions.
• A mapping between iMPress’ data model and
ODME’s data model was established.
• Java code was written to export iMPress’ IML
file (Industrial Modeling Language).
• SWIG Java was used to create a Java Native
Inerface (JNI) to iMPress.
ODME-IMPRESS-CPLEX
System Architecture
• Java code was written to call iMPress-CPLEX
using its API’s.
• Java code was written to access the solution(s)
from iMPress-CPLEX using its API’s and to
populate the ODME solution-data partition.
ODME Screen Shots
Data-Model in ODME
Master-Data
Transactional-Data
Gantt Chart for Reference (Base)
Trend Plots for Reference (Base)
Demand Variability Scenario Data w/
Reference in ()
Trend Plots for Demand Variability
Scenario w/ Reference
Benefits • Perfectly fit your business model and decision processes
• Sophisticated optimization capabilities able to tackle complex,
non-linear and large-scale problems
• A solution that can be quickly adapted to new production
processes
• A user-friendly GUI to help planners driving refinery operational
excellence and analyzing refinery behavior
• What-if scenario analysis for confident decision-making
• See all your data and options in one place with drill-downs and
graphics
• Collaborate with other planners
• Powered by IBM ILOG CPLEX Optimizers
Proof-of-Concept (POC)
• Select plant type, size and complexity.
• Determine if off-line or on-line
application.
• Configure plant model.
• Integrate data sources.
• Solve plant model with plant data.
• Tune plant model (for accuracy &
tractability).