jun ma - coin-or · 9 jun ma, optimization services, may 06, 2005 outline 2. demonstration 3....
TRANSCRIPT
![Page 1: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/1.jpg)
Jun Ma, Optimization Services, May 06, 2005
Optimization Services (OS)
Jun Ma
Dissertation Defense
Industrial Engineering and Management Sciences
Northwestern University 05/06/2005
-- A Framework for Optimization Software
-- A Computational Infrastructure
-- The Next Generation NEOS
-- The OR Internet
![Page 2: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/2.jpg)
2 Jun Ma, Optimization Services, May 06, 2005
OUTLINE
2. Demonstration
3. Optimization Services and Optimization Services Protocol
6. Optimization Services Protocol - Representation
10. Future and Derived Research
1. Motivations
7. Optimization Services Protocol - Communication
8. Optimization Services Protocol - Registry
5. Computing and Distributed Background
9. Optimization Services modeling Language (OSmL)
4. Optimization System Background
![Page 3: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/3.jpg)
3 Jun Ma, Optimization Services, May 06, 2005
MotivationFuture of Computing
![Page 4: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/4.jpg)
4 Jun Ma, Optimization Services, May 06, 2005
MotivationBut how… with so many type of components
1. Modeling Language Environment (MLE) (AIMMS, AMPL, GAMS, LINGO, LPL, MOSEL, MPL, OPL, OSmL )
2. Solver(Too many)
3. Analyzer/Preprocessor(Analyzer, MProbe, Dr. AMPL)
4. Simulation(Software that does heavy computation, deterministic or stochastic)
5. Server/Registry(NEOS, BARON, HIRON, NIMBUS, LPL, AMPL, etc.)
6. Interface/Communication Agent(COIN-OSI, CPLEX-Concert, AMPL/GAMS-Kestrel, etc.)
7. Low Level Instance Representation(Next page)
![Page 5: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/5.jpg)
5 Jun Ma, Optimization Services, May 06, 2005
MotivationBut how… with so many optimization types and repres entation formats
NoneOptimization via Simulation
NoneOptimization with Distributed Data
NoneConstraint and Logic Programming
None (except for TSP input, only intended for solving Traveling Sales Person problems.
Combinatorial Optimization
NoneStochastic Nonlinear Programming
sMPSStochastic Linear Programming
NETGEN, NETFLO, DIMACS, RELAX4Linear Network Optimization
Sparse SDPA, SDPLRSemidefinite & Second Order Cone Programming
MLE instancesSIF (only for Lancelot solver)
Nonlinearly Constrained OptimizationBounded Constrained OptimizationMixed Integer Nonlinearly Constrained OptimizationComplementarity ProblemsNondifferentiable OptimizationGlobal Optimization
MPS, xMPS, LP, CPLEX, GMP, GLP, PuLP, LPFML, MLE instances
Linear Programming Quadratic ProgrammingMixed Integer Linear Programming
OSiL
![Page 6: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/6.jpg)
6 Jun Ma, Optimization Services, May 06, 2005
MotivationLook at the NEOS server Web site
M X N drivers M + N drivers
![Page 7: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/7.jpg)
7 Jun Ma, Optimization Services, May 06, 2005
MotivationAs if it’s not bad enough …
1. Tightly-coupled implementation (OOP? Why not!)
2. Various operating systems
3. Various communication/interfacing mechanisms
4. Various programming languages
5. Various benchmarking standards
![Page 8: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/8.jpg)
8 Jun Ma, Optimization Services, May 06, 2005
MotivationNow…
• The key issue is communication, not solution!
• … and Optimization Services is intended to solve all the above issues.
![Page 9: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/9.jpg)
9 Jun Ma, Optimization Services, May 06, 2005
OUTLINE
2. Demonstration
3. Optimization Services and Optimization Services Protocol
6. Optimization Services Protocol - Representation
10. Future and Derived Research
1. Motivations
7. Optimization Services Protocol - Communication
8. Optimization Services Protocol - Registry
5. Computing and Distributed Background
9. Optimization Services modeling Language (OSmL)
4. Optimization System Background
![Page 10: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/10.jpg)
10 Jun Ma, Optimization Services, May 06, 2005
OUTLINE
2. Demonstration
3. Optimization Services and Optimization Services Pro tocol
6. Optimization Services Protocol - Representation
10. Future and Derived Research
1. Motivations
7. Optimization Services Protocol - Communication
8. Optimization Services Protocol - Registry
5. Computing and Distributed Background
9. Optimization Services modeling Language (OSmL)
4. Optimization System Background
![Page 11: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/11.jpg)
11 Jun Ma, Optimization Services, May 06, 2005
Optimization Services (OS)What is happening behind?
Agent
OSmL
Parse to OSiL
XML-based standard
OS
Server
OS Server
location
OS Server
browser
Web page
Web Server
CGIsocket
Data in HTML Form
http/html
OSP --OShL(OSiL)
Database/ App Service
HTML Checker
Web address
html form
OS Server
![Page 12: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/12.jpg)
12 Jun Ma, Optimization Services, May 06, 2005
Optimization ServicesWhat is it? – A framework for optimization software
![Page 13: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/13.jpg)
13 Jun Ma, Optimization Services, May 06, 2005
Optimization ServicesWhat is it? – A computational infrastructure
![Page 14: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/14.jpg)
14 Jun Ma, Optimization Services, May 06, 2005
Optimization ServicesWhat is it? – The next generation NEOS
•The NEOS server and its connected solvers uses the OS framework.•NEOS accepts the OSiL and other related OSP for problem submissions•NEOS becomes an OS compatible meta-solver on the OS network •NEOS hosts the OS registry
![Page 15: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/15.jpg)
15 Jun Ma, Optimization Services, May 06, 2005
Optimization ServicesWhat is it? – The OR Internet
![Page 16: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/16.jpg)
16 Jun Ma, Optimization Services, May 06, 2005
Optimization Services Protocol (OSP) What is it? – Application level networking protocol
– Interdisciplinary protocol between CS and OR
![Page 17: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/17.jpg)
17 Jun Ma, Optimization Services, May 06, 2005
Optimization Services Protocol (OSP) What does the protocol involve? – 20+ OSxL languages
![Page 18: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/18.jpg)
18 Jun Ma, Optimization Services, May 06, 2005
OUTLINE
2. Demonstration
3. Optimization Services and Optimization Services Protocol
6. Optimization Services Protocol - Representation
10. Future and Derived Research
1. Motivations
7. Optimization Services Protocol - Communication
8. Optimization Services Protocol - Registry
5. Computing and Distributed Background
9. Optimization Services modeling Language (OSmL)
4. Optimization System Background
![Page 19: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/19.jpg)
19 Jun Ma, Optimization Services, May 06, 2005
Optimization System Background What does an optimization system look like?
0x
tosubject
minimize
≥= bAx
cxx
users
modelers
developers
![Page 20: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/20.jpg)
20 Jun Ma, Optimization Services, May 06, 2005
Optimization System Background What is the difference between a model and an insta nce?
0x
tosubject
minimize
≥= bAx
cxx
model high-level, user-friendlysymbolic, general,
concise, understandable
AMPL
instance
MPS
OSiL
Low-level, computer-friendlyexplicit, specific,
redundant, convenient
compile
![Page 21: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/21.jpg)
21 Jun Ma, Optimization Services, May 06, 2005
Optimization System Background What’s the difference between local interfacing and communication agent
![Page 22: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/22.jpg)
22 Jun Ma, Optimization Services, May 06, 2005
Optimization System Background Why is analyzer important?
![Page 23: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/23.jpg)
23 Jun Ma, Optimization Services, May 06, 2005
Optimization System Background What’s the difference between a server and a regist ry
![Page 24: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/24.jpg)
24 Jun Ma, Optimization Services, May 06, 2005
Optimization System Background What’s a simulation?
0,0x
932tosubject
2 minimize
21
21
22
21
≥≥≥+
+
x
xx
xxx
![Page 25: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/25.jpg)
25 Jun Ma, Optimization Services, May 06, 2005
Optimization System Background AMPL, NEOS and Kestrel
ampl : option optimizationservices on
![Page 26: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/26.jpg)
26 Jun Ma, Optimization Services, May 06, 2005
Optimization System Background Motorola Optimization System
![Page 27: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/27.jpg)
27 Jun Ma, Optimization Services, May 06, 2005
OUTLINE
2. Demonstration
3. Optimization Services and Optimization Services Protocol
6. Optimization Services Protocol - Representation
10. Future and Derived Research
1. Motivations
7. Optimization Services Protocol - Communication
8. Optimization Services Protocol - Registry
5. Computing and Distributed Background
9. Optimization Services modeling Language (OSmL)
4. Optimization System Background
![Page 28: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/28.jpg)
28 Jun Ma, Optimization Services, May 06, 2005
Computing and Distributed BackgroundWhat we used in our implementation
1. Java, Open Source Libraries, Object-oriented Pro gramming (OS library)
2. Networking Protocols: HTTP, SOAP, OSP(OS server: Tomcat , Axis , OS library )
3. Eclipse IDE for JAVA development
4. XML Spy for XML Schema design
![Page 29: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/29.jpg)
29 Jun Ma, Optimization Services, May 06, 2005
Computing and Distributed BackgroundXML and XML Dialect (e.g. MathML, OSiL)
MathML
OSiL
![Page 30: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/30.jpg)
30 Jun Ma, Optimization Services, May 06, 2005
Computing and Distributed BackgroundXML Schema
![Page 31: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/31.jpg)
31 Jun Ma, Optimization Services, May 06, 2005
Computing and Distributed BackgroundOther XML Technologies
1. Parsing: SAX and DOM models
2. Transformation : XSL style sheet
3. Lookup: XPath and XQuery
![Page 32: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/32.jpg)
32 Jun Ma, Optimization Services, May 06, 2005
Computing and Distributed BackgroundWeb services
•Platform and implementation independent components
•Described using a service description language (WSDL)
•Published to a registry of services (UDDI, OS Registry)
•Discovered through a standard mechanism (UDDI, OS Registry)
•Invoked through a declared API (SOAP)
•Composed with other services (SOAP)
Service-oriented Architecture (SOA)
![Page 33: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/33.jpg)
33 Jun Ma, Optimization Services, May 06, 2005
Computing and Distributed BackgroundWeb services and SOAP
Protocol ViewArchitecture View
![Page 34: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/34.jpg)
34 Jun Ma, Optimization Services, May 06, 2005
Computing and Distributed BackgroundWeb services and WSDL
![Page 35: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/35.jpg)
35 Jun Ma, Optimization Services, May 06, 2005
Computing and Distributed BackgroundWeb services and WSDL
![Page 36: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/36.jpg)
36 Jun Ma, Optimization Services, May 06, 2005
OUTLINE
2. Demonstration
3. Optimization Services and Optimization Services Protocol
6. Optimization Services Protocol - Representation
10. Future and Derived Research
1. Motivations
7. Optimization Services Protocol - Communication
8. Optimization Services Protocol - Registry
5. Computing and Distributed Background
9. Optimization Services modeling Language (OSmL)
4. Optimization System Background
![Page 37: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/37.jpg)
37 Jun Ma, Optimization Services, May 06, 2005
Optimization Services RepresentationWho else did this before?
•Many “standards”
•All limited to problem input
•Highly fragmented and no general format
• Fourer, Lopes, and Martin’s LPFML (OSlL)
•Kristjánsson’s OptML
•Bradley’s NaGML
•We are the first in designing
- Systematic representation of major optimization types
- All major instance types (result, analysis, input, query, etc.)
-Web services (SOAP) based communication standards
-Optimization registry
-A universal framework
![Page 38: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/38.jpg)
38 Jun Ma, Optimization Services, May 06, 2005
Optimization Services RepresentationOptimization Services general Language (OSgL)
General data structures; Included in other schemas
Optimization Services instance Language (OSiL)
All major optimization types
Optimization Services nonlinear Language (OSnL)
Provides 200+ function/operator/operand nodes for O SiL
arithmetic, elementary function, statistic/probabil ity, constants, optimization, terminals, trigonometric, logic/relational, special
Optimization Services result Language (OSrL)
Multiple solutions; built-in standard results, solve r-specific, analysis result
Optimization Services option Language (OSoL)
Few built-in standard options; well-scalable design structure for specific options
Optimization Services simulation Language (OSsL)
Both simulation input and output; supports values a nd links
Optimization Services transformation Language (OStL )
XSL transformation style sheet;
![Page 39: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/39.jpg)
39 Jun Ma, Optimization Services, May 06, 2005
OUTLINE
2. Demonstration
3. Optimization Services and Optimization Services Protocol
6. Optimization Services Protocol - Representation
10. Future and Derived Research
1. Motivations
7. Optimization Services Protocol - Communication
8. Optimization Services Protocol - Registry
5. Computing and Distributed Background
9. Optimization Services modeling Language (OSmL)
4. Optimization System Background
![Page 40: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/40.jpg)
40 Jun Ma, Optimization Services, May 06, 2005
Optimization Services CommunicationOptimization Services hookup Language (OShL)
Hookup to solvers, and analyzers
Optimization Services instance Language (OScL)
Call simulations
Optimization Services flow Language (OSfL)
Orchestrate flow logics;
![Page 41: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/41.jpg)
41 Jun Ma, Optimization Services, May 06, 2005
OUTLINE
2. Demonstration
3. Optimization Services and Optimization Services Protocol
6. Optimization Services Protocol - Representation
10. Future and Derived Research
1. Motivations
7. Optimization Services Protocol - Communication
8. Optimization Services Protocol - Registry
5. Computing and Distributed Background
9. Optimization Services modeling Language (OSmL)
4. Optimization System Background
![Page 42: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/42.jpg)
42 Jun Ma, Optimization Services, May 06, 2005
Optimization Services Registryregistration
Optimization Services entity Language (OSeL, repres entation)
Static service entity information
Optimization Services process Language (OSpL, , rep resentation)
Dynamic service process information
Optimization Services benchmark Language (OSbL, , r epresentation)
Score based benchmarks ?
Optimization Services yellow-page Language (OSyL, , representation)
OS registry database; native XML; A sequence of [OSeL, OSpL, OSbL] triplets
Optimization Services join Language (OSjL, communic ation)
Join the OS registry (manual and automatic process) with entity (OSeL) information.
Optimization Services knock Language (OSkL, communi cation)
“Knock” at the services for run time dynamitic process (OSpL) information
![Page 43: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/43.jpg)
43 Jun Ma, Optimization Services, May 06, 2005
Optimization Services Registrydiscovery
Optimization Services query Language (OSqL, represe ntation)
Like SQL for relational database; can use XQuery, O SaL (analysis), predefined
Optimization Services discover Language (OSdL, comm unication)
send the query to the OS registry to discover servi ces
Optimization Services uri Language (OSuL, representa tion)
A sequence of uri (url) addresses for service locati ons with degree of fitness
Optimization Services validate Language (OSvL, vali date)
A validation service provided by the OS registry th at validates all OSxL instances
![Page 44: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/44.jpg)
44 Jun Ma, Optimization Services, May 06, 2005
OUTLINE
2. Demonstration
3. Optimization Services and Optimization Services Protocol
6. Optimization Services Protocol - Representation
10. Future and Derived Research
1. Motivations
7. Optimization Services Protocol - Communication
8. Optimization Services Protocol - Registry
5. Computing and Distributed Background
9. Optimization Services modeling Language (OSmL)
4. Optimization System Background
![Page 45: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/45.jpg)
45 Jun Ma, Optimization Services, May 06, 2005
Optimization Services modeling Language(OSmL)
A derived research
Open source and general purposeStandard based (XQuery input; OSiL output)Suitable for distributed optimization
XML data is ubiquitous
![Page 46: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/46.jpg)
46 Jun Ma, Optimization Services, May 06, 2005
Optimization Services modeling Language
#set, parameter, and variable constructionsparam T;set PROD;set LINKS = {PROD, 1..T};param HC {PROD} ;param FXC {PROD} ;param CAP {1..T} ;param DEM {LINKS};param PCOST {PROD, 1..T} ;
#VARIABLE DECLARATIONvar x {PROD, 1..T} >= 0;var I {PROD, 0..T} >=0;var y {PROD, 1..T}binary;
#OBJECTIVE CONSTRUCTIONminimize Total_Cost:sum {i in PROD} I[i, 0] + sum {i in PROD, t in 1..T}
(PCOST[i, t]*x[i, t] + HC[i]*I[i, t] + FXC[i]*y[i, t]);
# INITIAL INVENTORY CONSTRAINTSsubject to Init_Inv {i in PROD}: I[i, 0] = 0.0;
# DEMAND CONSTRAINTSsubject to Balance {i in PROD, t in 1..T}:
x[i, t] + I[i, t - 1] - I[i, t] = DEM[i, t];
# FIXED CHARGE CONSTRAINTSsubject to Fixed_Charge {i in PROD, t in 1..T}:
x[i, t] <= CAP[ t]*y[i, t];
# CAPACITY CONSTRAINTS subject to Capacity {t in 1..T}:
sum {i in PROD} x[i, t] <= CAP[ t];
(: set and parameter constructions:)let $capacity := doc("./lotsizeData.xml")/lotSizeData/periodCapacity/capacitylet $products := doc("./xml/ds800m.xml")/lotSizeData/productlet $N := count($products)let $T := count($capacity[periodID])let $FXC := data($products/@fixedCost)let $HC := data($products/@holdCost)let $PCOST := data($products/@prodCost)let $CAP := data($capacity/text())let $DEM := $products/period/demandlet $PROD := (1 to $N)return <mathProgram> (: VARIABLE DECLARATION :)<variables>{ for $i in (1 to $N), $t in (1 to $T) return
(<var name="X[{$i},{$t}]"/>,<var name="I[{$i},{$t}]"/>,<var name="Y[{$i},{$t}]" type="B" />) }
</variables>
(: OBJECTIVE FUNCTION :)<obj maxOrMin="min" name="Total_Cost">SUM(for $i in (1 to $N), $t in (1 to $T) return{$PCOST[$i]}*X[{$i},{$t}] + {$FXC[$i]}*Y[{$i},{$t}] + {$HC[$i]}*I[{$i},{$t}])</obj>
<constraints>(: INITIAL INVENTORY CONSTRAINTS :){for $i in $PROD return <con name="inventory[{$i}]"> I[{$i},0] = 0 </con> }
(: DEMAND CONSTRAINTS :){for $i in $PROD, $t in (1 to $T)let $demand := ($products[$i]/period[@periodID=$t]/demand/text()) return<con name="demand[{$i},{$t }]"> X[{$i},{$t}] + I[{$i},{$t - 1}] - I[{$i},{$t}] = {$demand} </con> }
(: FIXED CHARGE CONSTRAINTS :){for $t in (1 to $T), $i in (1 to $N) return<con name="fixed_charge[{$i},{$t }]" > X[{$i},{$t}]-{$CAP[$t]}*Y[{$i},{$t}] <= 0</con> }
(: CAPACITY CONSTRAINTS :){for $t in (1 to $T) return <con name="capacity[{$t}]"> SUM(for $i in (1 to $N) return X[{$i},{$t}])<= {$CAP[$t]} </con>}</constraints> </mathProgram>
AMPLOSmL
![Page 47: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/47.jpg)
47 Jun Ma, Optimization Services, May 06, 2005
Optimization Services modeling Language4 ways of combining XML with optimization
1. Use XML to represent the instance of a mathemati cal program
2. Develop an XML modeling language dialect
3. Enhance modeling languages with XML features suc h as XPath
4. Use XML technologies to transform XML data into a problem instance
![Page 48: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/48.jpg)
48 Jun Ma, Optimization Services, May 06, 2005
OUTLINE
2. Demonstration
3. Optimization Services and Optimization Services Protocol
6. Optimization Services Protocol - Representation
10. Future and Derived Research
1. Motivations
7. Optimization Services Protocol - Communication
8. Optimization Services Protocol - Registry
5. Computing and Distributed Background
9. Optimization Services modeling Language (OSmL)
4. Optimization System Background
![Page 49: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/49.jpg)
49 Jun Ma, Optimization Services, May 06, 2005
Future and Derived Research• The Optimization Services project• Standardization • Problem repository building • OS server software, library enhancement• Derived research in distributed systems (coordination, scheduling and congestion control)• Derived research in decentralized systems
(registration, discovery, analysis, control)• Derived research in local systems (OSI? OSiI, OSrI, OSoI?)• Derived research in optimization servers (NEOS)• Derived research in computational software
(AMPL, Knitro, Lindo/Lingo, IMPACT, OSmL, MProbe, Dr. AMPL, etc. )• Derived research in computational algorithm
Parallel computingOptimization via simulation
Optimization job scheduling
Analyzing optimization instances according to the needs of the OS registry.Modeling and compilation
Efficient OSxL instance parsing and preprocessing algorithms.
Effective Optimization Services process orchestration.
Promote areas where lack of progress are partly due to lack of representation schemes• Derived business model
Modeling language developers, solver developers, and analyzer developers
Library developers, registry/server developers, and other auxiliary developers
Computing on demand and “result on demand”
![Page 50: Jun Ma - COIN-OR · 9 Jun Ma, Optimization Services, May 06, 2005 OUTLINE 2. Demonstration 3. Optimization Services and Optimization Services Protocol 6. Optimization Services Protocol](https://reader033.vdocuments.us/reader033/viewer/2022050116/5f4d3aea5981cc449d27f4a5/html5/thumbnails/50.jpg)
50 Jun Ma, Optimization Services, May 06, 2005
Acknowledgement • Robert Fourer• Kipp Martin• Tom Tirpak and my colleagues at Motorola Advanced Technology Center• My committee• Professor Mehrotra’s group• My wife and my family
http://www.optimizationservices.org (.net)