SimQL Accessing Simulation as Services to Information Systems Gio Wiederhold July 2001 Gio Wiederhold SimQL 1 Decision-making (DM) Analyze Alternatives • Current Capabilities • Future Expectations Process tasks: • List resources • Enumerate alternatives • Prune alternative • Compare alternatives now future Gio Wiederhold SimQL 2 Prediction Requires Tools E-mail this book, Alfred Knopf, 1997 Gio Wiederhold SimQL 3 DM support is disjoint does not interoperate Planning Science Distribution extensions to move to networked support are also disjoint Gio Wiederhold SimQL 4 Transform Data to Information Application Layer Mediation Layer decision-makers at workstations value-added services Foundation Layer data and simulation resources Gio Wiederhold SimQL 5 Current state of DM Support past now organized support Data integration Databases distributed, heterogeneous future time disjointed support x17 @qbfera ffga 67 .78 jjkl,a nsnd nn 23.5a Intuition + • Spreadsheets • Planning of allocations • Other simulations various point assessments Gio Wiederhold SimQL 6 Information Systems should also Project into the Future past now future time Support of decision-making requires dealing with the future , as well the past • Databases deal well with the past • Sensors can provide current status • Spreadsheets, simulations deal with the likely futures Information systems should be able to combine all three Gio Wiederhold SimQL 7 Information Systems should also Project into the Future One Consistent World past A Bush of Possible Worlds now future time Databases, accessed via SQL or CORBA compliant wrappers Msg systems, sensors Simulations, accessed via SimQL and compliant wrappers Gio Wiederhold SimQL 8 The branches can be labeled with probabilities, then assessed using the outcome with values Next period alternatives 1200 and subsequent periods 0.6 past -1220 600 0.1 0.1 0.3 1100 0.2500 66 134 0.4 0.4 0.5 1266 -1086 1000 0.1 100 0.3 200 0.2 0.3 0.1 -420 0.07 0.2 now time 2000 5000 1000 200 0 0 -6000 -820 0.13-400 -3000 future Values Spreadsheets, other simulations, Databases, . . . Msgs Gio Wiederhold SimQL 9 Integrating data & planning support will make our data reusable and much more valuable A Pruned Bush Re-assess as time marches forward ! 100 1200 1266 ? 66 ? ? 600 1100 200 500 200 0 past now future 1000 2000 5000 1000 0 time Spreadsheets, other simulations, Databases, . . . Gio Wiederhold SimQL 10 Msgs Stanford experiment, supported by DARPA & NIST Phase 1 Architectures Logistics Application Manufacturing Application SimQL access SimQL access SimQL access SQL access wrapper Spreadsheets wrapper wrapper wrapper Weather (short-, long-term) Test Data Engineering Gio Wiederhold SimQL 11 Current State of SimQL research GUI collect language requirements Test Application wrapper wrapper Spreadsheets Weather wrapper Engineering Gio Wiederhold SimQL 12 Moving to a Service Paradigm • Server is an independent contractor, defines service • Client selects service, and specifies parameters • Server’s success depends on value provided • Some form of payment received for services x,y Databases are a current example. Simulations have the same potential. Gio Wiederhold SimQL 13 Enabling Interoperation Databases • serve clients via SQL by Sharing a Model (The Schema) A query language over the model the SQL interface enables • independence of application development DBMS technology development reuse of infrastructure Today • most new systems use a DBMS for data storage even with less performance, inability to handle all problems, but enough of them well enough. Simulations should • serve clients via SimQL by Sharing a Model (research q.) A query language over the model a SimQL interface will enable • independence of application development simulation technology develop’t reuse of infrastructure Objective • build information systems combining DBMS, Simulations even with less performance, inability to handle all problems, but enough of them . . . Gio Wiederhold SimQL 14 Internet requirements • Ubiquitous acess to simulations of a wide variety of types • Rapid response to parameter changes – often High-Performance computation is needed – distributed simulations with synchronization • Rapid Service Composition – High bandwidth among simulations – Acces to multiple services in parallel Gio Wiederhold SimQL 15 Even the present needs SimQL last recorded observations point-in-time for situational assessment simple simulations to extrapolate data past now time future Is the delivery truck in X? • Is the right stuff on the truck? Not all data are current:: • Will the crew be at X? • Will the forces be ready to accept delivery? Gio Wiederhold SimQL 16 Use of Simulation Results Simulation results can be composed for Alternative Courses-of-actions Composition should be seamless, elegant, with computation and recomputation of likelihoods Results change as now moves forwards and eliminates earlier alternatives. Gio Wiederhold SimQL 17 Types of simulation services 1. Continously executing: weather prediction – SimQL result reports best match samples 2. Execution specific to query: what-if assessment – may require HPC power for adequate response 3. Past simulations collect results in a base: materials – performs inter- or extra-polations to match query parameters 4. Combinations, i.e., 2. + 3.: top layer simulation using stored partial lower level results: weapon performance in new setting 5. Human-in-the-loop (mediated by an agent program): SAFs Note • A simulation service program can be written in any language • A simulation service must be compliant to the interface spec. Gio Wiederhold SimQL 18 SimQL research questions • How little of the model needs to be exposed? • How can defaults be set rationally? • How should expected execution cost be reported? • How should uncertainty be reported? • Are there differences among application areas that require different language structures? • Are there differences among application areas that require different language features? • How will the language interface support effective partitioning and distribution? Gio Wiederhold SimQL 19 New DM research questions • How to move seamlessly from the past to the future? • How can multiple futures be managed (indexed)? • How can multiple futures be compared, selected? • How should joint uncertainty be computed? • How can the NOW point be moved automatically? Gio Wiederhold SimQL 20 Summary of SimQL A new service for Decision Making: • follows database paradigm – (by about 25 years) • coherence in prediction – displacement of ad-hoc practices • seamless integration over time – single paradigm for decision makers • systematic partitioning – better software management • simulation industry infrastructure – investment has a potential market Gio Wiederhold SimQL 21