visualization of transition systems
Post on 02-Jan-2016
44 Views
Preview:
DESCRIPTION
TRANSCRIPT
/department of mathematics and computer science
Visualization of Transition Systems
Hannes PretoriusVisualization Group
a.j.pretorius@tue.nlwww.win.tue.nl/~apretori
/department of mathematics and computer science
Outline1. Transition systems2. Motivation3. Existing results4. Process5. Experiment 1: projection6. Experiment 2: simulation7. Experiment 3: clustering8. General conclusions
/department of mathematics and computer science
Transition systems• Used to analyze and verify systems• Explicit descriptions of system
behavior: – All system states– Transitions between these
• Describe systems whose states evolve over time
/department of mathematics and computer science
Transition systems
/department of mathematics and computer science
Motivation1. Facilitate insight:
– Tools and techniques to understand systems
– Address size and complexity
2. “Gestalt”:– Associate visual form with abstract
formalism– Enhances communication
/department of mathematics and computer science
Motivation• Frank van Ham’s
FSMView:– Shows global structure and
symmetries
• New approaches:– FSMView excels at what it
was designed for– Investigate techniques with
more focus on attributes (data, transition labels, …)
– More interaction
/department of mathematics and computer science
ProcessFormal
specification
LPE
LTS
Σ
Validate
Simulate
Specify
Real world
/department of mathematics and computer science
Experiment 1: projection
Σ
Validate
Simulate
Specify
/department of mathematics and computer science
• Data communication • Data is stored
– States: vectors of data values– Multidimensional points
Experiment 1: approach
[1,1,0,2]
[1,1,2,1][2,2,1,0]
/department of mathematics and computer science
Experiment 1: approach
Data Visualmapping
Visualmapping
Overview(dims)
2Dprojection
Visualmapping
Selectsubset
/department of mathematics and computer science
Experiment 1: overviewState
Dimension
1 2 1
1 2 1
0 1 2
2 0 1
s1 s2 s3
a
b
c
d
/department of mathematics and computer science
Experiment 1: projecting to 2D
s1 s2
s3
/department of mathematics and computer science
Experiment 1: demo
/department of mathematics and computer science
Experiment 1: results• Identify:
– Superfluous variables– Correlations spanning multiple dimensions– States with specific valuations of variables– Phases of behavior
• Interaction:– Coupling of two views important
• “Data-centric” view:– Does not reveal enough about behavior
/department of mathematics and computer science
Experiment 2: simulation
Validate
Simulate
Specify
/department of mathematics and computer science
Experiment 2: approach• Simulation:
– Quick and incremental checking of specification
• Text-based output:– Time consuming analysis– Not intuitive– Prone to human error
/department of mathematics and computer science
Experiment 2: approach• Automated parking garage• Custom plug-in:
– Maps current system state onto 2D floor plan
• Visual cues:– Lift position– Status of parking space (free, occupied,…)– Status of shuttles
/department of mathematics and computer science
Experiment 2: visual mapping
LiftShuttl
e
Occupied
Free
Conveyor belt
/department of mathematics and computer science
Experiment 2: demo
/department of mathematics and computer science
Experiment 2: results• Efficiency of analysis:
– Saves time– Intuitively clear and easy to follow– Identified and corrected serious errors early on
• Stakeholders: – Convinced colleagues of merit of visualization– Means to communicate abstract ideas to client
• Shows behavior
/department of mathematics and computer science
Experiment 3: clustering
Σ
Validate
Simulate
Specify
/department of mathematics and computer science
Experiment 3: approach• Directed graph:
– Reduce size and complexity
• Associate meaning with states and transitions:– Reduce in meaningful way– Ability to take behavior into account
/department of mathematics and computer science
Experiment 3: initial ideas• Linear representation:
– Predictable– Suggests ordered analysis– Effective way to show patterns
• Initial clustering:– Ranking (BFS, DFS)– Based on local behavior
(fan-in, fan-out of transition labels at every state)
/department of mathematics and computer science
Experiment 3: initial ideas
/department of mathematics and computer science
Experiment 3: approach• Every state is annotated:
– Tuple with coordinates– Every coordinate has associated type– Every type has a domain
• Partition states based on equivalence relation:
– Select subset of coordinates– Cluster domain of associated type
/department of mathematics and computer science
Experiment 3: approach
Defineeq. rel.
Data
Eq. rel
Cluster Clustereddata
Visualmapping
Selectioninfo.
Vis.
Select
/department of mathematics and computer science
Experiment 3: approach
First partitioning: coordinate i
Original transition system
/department of mathematics and computer science
Experiment 3: approach
Second partitioning: coordinate j
Original transition system
/department of mathematics and computer science
Experiment 3: approach• Allows for clustering based on:
– Existing attributes– Derived attributes
(structural properties, equivalence classes, …)
– Construct hierarchy of clusters
/department of mathematics and computer science
Experiment 3: demo
/department of mathematics and computer science
Experiment 3: results• Definition of equivalence relation on the fly:
– Select subset of components– Cluster type domains
• Assumption: – User associates meaning with components
• Combination of clusters and hierarchy promising
• Work in progress: – Interaction– Derived attributes (behavior-related)
/department of mathematics and computer science
General conclusions• Experiments:
– Gap between abstract and real world– Address sub-problems– Better understanding of problem
(focus on behavior, clustering more general, …)• Looking ahead:
– Include insights in current tool– Add more functionality to current tool
(annotation, selection, may- and must-transitions)
/department of mathematics and computer science
General conclusions• Open questions:
– How to move from one clustering to the next
– Simulation works really well, how to generalize?
– User requirements
?
?
/department of mathematics and computer science
Questions
top related