M&S Ontology Framework for Complex System Development and

advertisement
M&S Ontology Framework for
Complex System Development and
Testing
Bernard P. Zeigler
Arizona Center for Integrative
Modeling and Simulation
University of Arizona
March 2008
Modeling and Simulation (M&S)
Framework
Experimental Frame
Source
System
Simulator
Simulation
Relation
Modeling
Relation
Model
M&S Framework formulated within UML
M&S Framework classes
classes
Source
systems
construction
mechanisms
ontologies
relationships
constraints
simulators
models
Experimental
& Pragmatic
Frames
create classes to
satisfy use cases
Use Cases
M&S
sensor
collect
data
retrieve
model
memory
UML
store
model
construc
t
model
retri
eve
real worlddata
store
data
model generated
run
model
controlsimulator
simulate
model
apply
pragmatic
frame
goalaction planning
generator
motor
validate
model
model
generator
apply
experimen
tal
frame
model
evaluator
predictive
-simulator
objectives
interpretation
as
software code
(e.g. Java)
DEVS – Formal Specification of a System
A discrete event system specification (DEVS) is a structure
M=<X,S,Y,int, ext, con, ,ta>
where
X is the set of input values,
S is a set of states,
Y is the set of output values,
int :S->S is the internal transition function,
ext,:QX->S is the external transition function,
con,:QX->S is the confluent transition function,
ta: S->R + 0,∞
Where
Q={(s,e)|sS, 0 e ta(s) } is the total state set,
e is the time elapsed since last transition,
:S->Y is the output function and
R + 0,∞ is the set of positive reals with 0 and 
DEVS Hierarchical Modular Models
System Entity Structure
SES
DEVS
Model
Output port
message
coupling
Input port
DEVS
Model
Hierarchical Composition,
Coupling and Variants are
Represented in System
Entity Structure
Some Types of Models Represented in DEVS
Coupled Models
Atomic Models
Ordinary
Differential
Equation
Models
Processing/
Queuing/
Coordinating
Spiking
Neuron
Models
can be
components
in a coupled
model
Petri Net
Models
Networks,
Collaborations
Processing
Networks
Physical
Space
Spiking
Neuron
Networks
n-Dim
Cell Space
Discrete
Time/
StateChart
Models
Stochastic
Models
Cellular
Automata
Quantized
Integrator
Models
Fuzzy Logic
Models
Partial
Differential
Equations
Reactive
Agent
Models
Multi
Agent
Systems
Self Organized
Criticality
Models
Ontology: scheme for organizing data about a
Possible states
domain of interest
allowed by ontology
“slots”
e.g. Cake Ontology –
what defines a cake?
-- distinguish cake from
pie, bicycle, ..
-- cover all varieties of
acceptable cakes
-- distinguish well cooked
cakes from others
Real world things
testability – how to test
whether the standard admits
well-cooked cakes and no
other things
Possible world
states allowed by
ontology constraints
System Entity Structure: Wine
Ontology Example
WineGrowing
WineDec
Wine
specialization WineColorSpec
entity
aspect
Regions
WineTasteSpec
Region
MultiAsp
Region
RoseWineColor
WhiteWineColor
regionGrows
multiple
aspect
regionGrowsMultiAsp
wineCountry
wineCountryDec
RedWineColor
Region
Wine
SES-based Approach to Ontology
Development
using SES to XML
translation
Implementation
Formal
Model
(Ontology)
System Entity
Structure (SES)
offers framework for
constructing model
for domain of interest
evaluate
testing
capability
iterate
can be developed
from formal model
Pruning Creates Submodels and Instances
Pruning based on
pragmatic frame
SES
for
Cake
Use Aspects, Specializations, …
and Pragmatic Frame to develop
System Entity Structure
SES for
Birthday
Cake
Birthday Cake instance3
Birthday Cake instance2
Birthday Cake instance1
DEVS/SES Ontology for M&S
ontology level
System Entity
Structures
Pruned Entity
Structures
pruning
Simulation
Models
(DEVS)
transform
implementation level
XML
Schemata
XML instances
System Entity Structure (SES) : SESBuilder
System Entity Structure/Model Base Repository:
Support Automated DEVS Generation and Reuse
Model
construction
Model
Repository
SES
Experimental
Frame
prune
and
transform
Finite Deterministic DEVS : FD-DEVS
FDDEVS = <incomingMessageSet, outgoingMessageSet, StateSet, TimeAdvanceTable,
InternalTransitionTable, ExternalTransitionTable,OutputTable>
where
incomingMessageSet, outgoingMessageSet, StateSet are finite sets
TimeAdvanceTable: StateSet → R0,∞+ (the positive reals with zero and infinity)
InternalTransitionTable: StateSet → StateSet
ExternalTransitionTable: StateSet × incomingMessageSet → StateSet,
OutputTable: StateSet → the set of subsets of outgoingMsgSet
Natural Language For FDDEVS
• to start hold in PHASE for time SIGMA
• when in PHASE and receive MSG go to PHASE’
<eventually>
• hold in PHASE for time SIGMA
• after PHASE then output MSG
• from PHASE go to PHASE’
Semantics defined by
mapping into DEVS
FD-DEVS
•
•
•
•
•
•
The “right” abstraction of DEVS – retains
important timing properties
Amenable to analysis
Supports automation
Maps to DEVSJAVA
Supplies a skelton that can be extended to full
DEVS
Simple XML expression
ReqForAck
send
First
StartAck
∞
send
Second
0.5
10
Ack
waitFor
Start
∞
ReqForAck
Ack
Received
Ack
10
last
Chance
send
Third
Ack
10
ReqForAck
Example of Natural Language Spec:
1. to start passivate in waitForStart
2. when in waitForStart and receive StartAck
go to sendFirst
3. hold in sendFirst for time 0.5 then output
ReqForAck and go to sendSecond
4. hold in ackReceived for time Infinity
5. …
Overall Processing
Augmented Test
Models
Automated
FDDEVS
atomic model
manual
SES
SES/XML
Of DSR
texts
Pruned
ES
FDDEVS
test models
Automated Analysis: Based on State Input Pairs
Enables Automated Test Model Generation
Terminal State-Input Pairs:
awaitingAdv ,
ProdFeasibilityFalse
Defined State-Input pairs:
listen ,orderOffer
awaitingAdv,ProdFeasibilityFalse
awaitingAdv, ProdFeasibilityTrue
waitForConfrm ,Confirm
Awaiting
Adv
OrderOffer
ProdFeasibilityTrue
listen
waitFor
Confirm
Dominant
State-Input pair:
listen ,orderOffer
Confirm
Dominant StateInput pair paths:
2
4
waitForConfrm , Confirm
ProdFeasibilityFalse
State-Input pair paths:
1= listen ,OrderOffer
2 = listen , OrderOffer, awaitingAdv
,ProdFeasibilityFalse
3= listen ,OrderOffer awaitingAdv
,ProdFeasibilityTrue
4= listen ,OrderOffer awaitingAdv
,ProdFeasibilityTrue waitForConfrm ,Confirm
State-Input Pairs mapped
To Terminal State-Input pairs:
listen ,orderOffer -> awaitingAdv ,
ProdFeasibilityFalse
awaitingAdv , ProdFeasibilityTrue -> waitForConfrm,
Confirm
Generated Test Models in DEVSJAVA SimView
AckCheck
Observe
Outputs
Send
inputs
Observ
Pass/Fa
Trigger next
in Sequence
upon pass
Model Driven Architecture and
Ontology Development
Gašević, D., Djurić, D, Devedžić, V,
Springer-Verlag, Berlin, 2006,
MOF
MetaObject Facility
OUP
Ontology UML Profile
UML Tool
XMI
ODM
Ontology Definition
Metamodel
XSLT
Processor
OWL
In the SES/DEVS framework
• pruning is a critical behavior feature and there is no equivalent concept to pruning of SES
instances in the UML
• DEVS is a formalism that intrinsically controls time advances in arbitrarily complex models.
UML run time semantics explicitly state that UML does not dictate how time elapses between
its events
Global Information Grid/Service Oriented Architecture
Net-centric Enterprise Services (NCES)
Net-Enabled Command & Control
NCES: Secure, agile, robust, dependable, interoperable data-sharing environment for DOD where warfighter, business, and
intelligence users share knowledge on a global network. This, in turn, facilitates information superiority, accelerates decision-making,
effective operations and net-centric transformation.
Requirements for Testing and Data Collection
Testing for
Organization and
Ontology quality
Content/Service
Content discovery
accuracy and
effectiveness
Catalogs/Registries
Verification/
Validation relative to
service
Search
Post
WSDL
find_xxx
save_xxx
(Bind)
Content/Service
XML
XML
Schema
Payload
Content/Service
Assessment of content
for pragmatic,
semantic, syntactic
correctness
Provider
Consumer
Client
SOAP
Access (& Use)
Simple Object Application Protocol
Service
Measurement of
timeliness of information
exchange
Agents for Mission Thread–Based Testing
Observing Agent
for Major Smith
Observing Agent
for Intell Cell
3. Intell Cell initiates high priority collection
against objective, and collectors post raw output
SOAP
SOAP
1. MAJ Smith tasks Intell to
reconnoiter objective area and
provide threat estimate
Observing Agent
alerts other Agent
2. Posts taskings using
Discovery and Storage
4. Intell posts products via Discovery and Storage
notes time of posting
5. Intell Cell issues alert via messaging
6. MAJ Smith pulls
estimate from Storage
Computes Time for Task,
Measure Performance
NCES GIG/SOA
sends time to other Agent
Auto-Generation of Standalone Agent Operation
Step 1
Web service description & client
code generation
Web Service with WSDL
Step 2
DEVS Agent Model &
Experimental Frame
Step 3
Execution of DEVS
Simulation
Augmenting Client code
with DEVS Hooks
DEVS Performance Test
Environment
Auto-generation of web
service client
With AXIS 1.4
Generating a Coupled
model including Atomic
Agent, AgentTransducer,
and AgentAcceptor
DEVS Agent Model &
Experimental Frame (Step 2)
• DEVS models & GUI code
• The Structure of DEVS Hooks
Application Client
TestService
e.g. getInfoByCity("Tucson")
USZipSoapStub
DEVS Hook
DEVS Hook
DevsListenerContainer
NExecutor
* DevsServiceListenerNet
DEVS Coupled model
DevsServiceListenerNet.java
* SimView.SimViewController
* WSresultsFrame
* DevsSoapConnector
informDevsAgent()
DEVS Atomic models
DevsServiceListener
agentAcceptor
agentTransd
Experimental Frame Output
Levels of System of System Interoperability
Linguistic
Level
Interoperability
Demonstrated if:
Example
Pragmatic –
How information in
message is used
The receiver reacts
to the message in a
manner that the
sender intends
A commander’s order is obeyed by
the troops in the field as the
commander intended. (This
assumes semantic
interoperability.)
Semantic –
Shared understanding
of meaning of messages
The receiver
assigns the same
meaning as the
sender did to the
message.
An order from a commander to
multi-national participants in a
coalition operation is understood in
the same manner despite
translation into different languages.
Syntactic –
Common rules
governing composition
and transmitting of
messages
The consumer is
able to receive and
parse the sender’s
message
A common network protocol (e.g.,
IPv4) ensures that all nodes on the
network can send and receive data
bit arrays while adhering to a
prescribed format.
Mapping M&S Layers to Linguistic Levels
Collaboration Layer
Semantic Web, Composition, Orchestration
Pragmatic Level
Design and Test Development Layer
SES, DoDAF, Integrated System Development and Testing
Experimental Frame Layer
.
Observers and Agents for Net-Centric Key Performance Parameters
Semantic Level
Modeling Layer
Ontologies, Formalisms, Model Dynamic Structure, Life Cycle
Continuity, Model Abstraction
Execution Layer
Syntactic Level
Abstract Simulators, Real time Execution, Animation Visualization
Network Layer
Distributed Grids, Service Oriented Architectures
Linguistic Levels in Testing
Pragmatic Level
Highest layer agents collaborate to
control and observe mission thread
executions
End-to-end Mission
Layer
Higher layer agents inform
lower level agents of the
objectives for health
monitoring
Middle layer alert higher layer
agents of network conditions that
invalidate test results
Semantic Level
Information Exchange
Layer
Middle layer agents activate
probes at lower layer
Probe Layer
Syntactic Level
Network probes return statistics
and alarms to higher layer agents
DEVS/SOA Infrastructure: Supports Deployment
and Execution of DEVS Models on the Web
WEB
SERVICE
CLIENT
DEVS
Agent
(Observer)
DEVS
Agent
( Virtual User)
DEVSJAVA
DEVS Modeling Language (DEVML)
WEB
SERVICE
CLIENT
DEVS Simulator Services
Middleware (SOAP, RMI etc)
Net-centric infrastructure
Run Example
Analysis-Based Network Data Extraction
pruning
Network Data
Collection
SES for
Network
Data
Use Aspects, Specializations, …
and Pragmatic Frame to develop
System Entity Structure
SES for
Throughput
Analysis
SES for
Protocol
Analysis
SES for
Intrusion
Detection
Negotiation Modeling Approach
FD-DEVS
Market Place
Domain-independent
behavior
FD-DEVS
Domain-dependent
structure
SES
message specializations
~ phases
~ message types
storeSpec
Surveillance Spec
Receive
message
Interpret
message
Send
message
Applications
• Natural language and Ontologies capture of high
level information technology systems requirements
• Automated generation of DEVS models for real-time
net-centric IT systems testing
• Development of web service workflows using
DEVS/SOA
• Network Traffic data capture, focused extraction, and
model generation for exercising IT systems e.g.,
intrusion detection
• Negotiation Service Applications
Books and Web Links
devsworld.org
acims.arizona.edu
Rtsync.com
Download