Title: Visual Specification and Design of Component-based Slow Intelligence Systems
1Visual Specification and Design of
Component-basedSlow Intelligence Systems
2Outline
- Why Slow Intelligence Systems
- Introduction to SIS
- Visual Specification of SIS
- Incremental Design
- SIS Framework and Test Bed
- User Interface
- Applications
3Outline
- Why Slow Intelligence Systems
- Introduction to SIS
- Visual Specification of SIS
- Incremental Design
- SIS Framework and Test Bed
- User Interface
- Applications
4Why Slow Intelligence Systems
- The slow intelligence system (SIS) technology
is a novel technology for the design and/or
improvement of complex information systems.
5Characteristics ofComplex Information Systems
- Connected
- Multiple sourced
- Knowledge-based
- Personalized
- Hybrid
- Prodigious
6Smarter Planet
- We are all now connected - economically,
technically and socially. Our planet is becoming
smarter via integration of information scattered
in many different data sources from the
sensors, on the web, in our personal devices, in
documents and in databases, or hidden within
application programs. Often we need to get
information from several of these sources to
complete a task. Examples include healthcare,
science, the business world and our personal
lives. (Quoted from Josephine M. Cheng, IBM
Fellow and Vice President of IBM Research)
7(courtesy of IBM)
8Hybrid Intelligence
- While processor speed and storage capacity
have grown remarkably, the geometric growth in
user communities, online computer usage, and the
availability of data is in some ways even more
remarkable. Hybrid Intelligence offers great
opportunities. We have to harness this data
availability to build systems of immense
potential. While today s large scale systems are
evolutionarily based on the distributed computing
technologies envisioned in the 70 s and 80 s,
sheer scaling has led to many unanticipated
challenges. (quoted from Alfred Z. Spector, Vice
President, Research and Special Initiatives,
Google, USA)
9Prodigious Hybrid Intelligence Systems
- Users and computers doing more than either could
individually (quoted from Alfred Z. Spector,
Google).
10Characteristics ofComplex Information Systems
- Connected
- Multiple sourced
- Knowledge-based
- Personalized
- Hybrid
- Prodigious
- gt CONSTANTLY CHANGING
11Challenges in the Design of Complex Information
Systems
- The operating environment, individual/collective
user behavior and underlying technology base of
such complex information systems are constantly
changing. - There is never a stable and static solution for
an optimal complex information system. - There are no general techniques for the design of
a complex information system that can gradually
improve and/or optimize its performance over time
in a changing environment.
12What is a Slow Intelligence System
-
- A Slow Intelligence System (SIS) is a
general-purpose system characterized by being
able to improve performance over time through a
process involving enumeration, propagation,
adaptation, elimination and concentration. A SIS
is characterized by employing super components,
i.e., multiple components that can be activated
either sequentially or in parallel to search for
better solutions. A SIS continuously learns,
searches for new solutions and propagates and
shares its experience with peers.
12
13The SIS Technology
- This SIS technology consists of the visual
specification of SIS as a system of super
components, design principles of the timing
controller, techniques for incremental
application system design, SIS development
framework and the SIS experimental test bed.
14How can SIS technology help?
-
- The SIS technology can be applied to design
and/or modify a complex information system
capable of improving its performance over time in
a changing environment. In this presentation we
will concentrate on visual specification,
incremental design, development framework, user
interface, and application to social influence
analysis.
15Outline
- Why Slow Intelligence Systems
- Introduction to SIS
- Visual Specification of SIS
- Incremental Design
- SIS Framework and Test Bed
- User Interface
- Application to Social Influence Analysis
16Slow Intelligence Systems
- Slow Intelligence Systems are general-purpose
systems characterized by being able to improve
performance over time. - A slow intelligence system is
- a system that (i) solves
- problems by trying different
- solutions, (ii) is context-
- aware to adapt to different
- situations and to propagate
- knowledge, and (iii) may
- not perform well in the
- short run but continuously
- learns to improve its
- performance over time.
17Slow Intelligence Systems
- Slow Intelligence Systems are general-purpose
systems characterized by being able to improve
performance over time through a process involving
- Enumeration
18Slow Intelligence Systems
- Slow Intelligence Systems are general-purpose
systems characterized by being able to improve
performance over time through a process involving
- Enumeration
- Propagation
19Slow Intelligence Systems
- Slow Intelligence Systems are general-purpose
systems characterized by being able to improve
performance over time through a process involving
- Enumeration
- Propagation
- Adaptation
20Slow Intelligence Systems
- Slow Intelligence Systems are general-purpose
systems characterized by being able to improve
performance over time through a process involving
- Enumeration
- Propagation
- Adaptation
- Elimination
21Slow Intelligence Systems
- Slow Intelligence Systems are general-purpose
systems characterized by being able to improve
performance over time through a process involving
- Enumeration
- Propagation
- Adaptation
- Elimination
- Concentration
22Slow Intelligence Systems
- Slow Intelligence Systems are general-purpose
systems characterized by being able to improve
performance over time through a process involving
- Enumeration
- Propagation
- Adaptation
- Elimination
- Concentration
- Slow Decision Cycle
- to complement Fast
- Decision Cycle
23Slow Intelligence Systems
- A SIS continuously learns, searches for new
solutions and propagates and shares its
experience with other peers. - From the structural point of view, a SIS is a
system with multiple decision cycles such that
actions of slow decision cycle(s) may override
actions of quick decision cycle(s), resulting in
poorer performance in the short run but better
performance in the long-run. - Timing Controller What decision cycle to take is
determined by the timing controller.
24Slow Intelligence Systems
- A SIS continuously learns, searches for new
solutions and propagates and shares its
experience with other peers. - From the structural point of view, a SIS is a
system with multiple decision cycles such that
actions of slow decision cycle(s) may override
actions of quick decision cycle(s), resulting in
poorer performance in the short run but better
performance in the long-run. - Timing Controller What decision cycle to take is
determined by the timing controller.
25Slow Intelligence Systems
- A SIS continuously learns, searches for new
solutions and propagates and shares its
experience with other peers. - From the structural point of view, a SIS is a
system with multiple decision cycles such that
actions of slow decision cycle(s) may override
actions of quick decision cycle(s), resulting in
poorer performance in the short run but better
performance in the long-run. - Timing Controller What decision cycle to take is
determined by the timing controller.
26Slow Intelligence Systems
- . A Slow Intelligence System is constructed from
super components, which are the building blocks
of SIS. Therefore SIS is an advancement over
component based software systems while a
component-based software system is constructed
from software components, in SIS some or all of
its components are replaced by super components
capable of improving their performances over time
in a changing environment. - There are two types of super components the
basic building block and advanced building block.
27Basic Building Block (BBB)
28Advanced Building Block (ABB)
29SIS is a component-based systembuilt from BBBs
and ABBs
30Comparison with Other Approaches
30
30
31Outline
- Why Slow Intelligence Systems
- Introduction to SIS
- Visual Specification of SIS
- Incremental Design
- SIS Framework and Test Bed
- User Interface
- Applications
32Visual Specification of SIS
33Dual visual representations by components and
Petri net
34Dual visual representations by class diagrams and
sequence diagram
35Super Components
36Expanded Petri net based upon super components
37A component generator for super components
38Outline
- Why Slow Intelligence Systems
- Introduction to SIS
- Visual Specification of SIS
- Incremental Design
- SIS Framework and Test Bed
- User Interface
- Applications
39Partial dual visual representation (I-card1,
C-card1) for Product Service Customization
(PSC) system
40Partial dual visual representation (I-card2,
C-card2) and (I-card3, C-card3)
41Synthesis of partial visual representations
(I-card1, C-card1), (I-card2, C-card2) and
(I-card3, C-card3) into (I-card1-2-3,C-card1-2-3)
42Outline
- Why Slow Intelligence Systems
- Introduction to SIS
- Visual Specification of SIS
- Incremental Design
- Timing Controller
- User Interface
- Application to Topic/Trend Detection
- Application to High Dimensional Feature Selection
42
43Timing Controller
- Three Types of Timing Controllers
- Basic Timing Controller (using switching circuit)
- Advanced Timing Controller (using associative
memory) - Recursive Timing Controller (for super
components) - Fast Cycle and Slow Cycle
- Any cycle without super component is a fast cycle
- Any cycle with super component is a slow cycle
43
43
44Basic Timing Controller
- The basic timing controller consists of a latch
register and a switching circuit - The latch register has as many cells as there are
software components. Each cell stores a binary
number indicating whether to invoke the
corresponding software component (1) or not (0) - The latch register outputs this binary vector to
the switching circuit, which computes another
binary vector as new input to the latch register,
to control the next round of software components
invocation - This computation cycle repeats itself, until the
binary vector stored in the latch register
becomes (0,,0)
44
44
45Advanced Timing Controller
- The associative memory also receives the binary
vector from the latch register and uses it to
search and access an associated binary vector (or
vectors) as output
- The timing controller with non-deterministic
associative memory determines the invocation of
software components by performing additional
computations on Petri net structure, attributes,
probability, degree of certainty, fuzzy measures
or some other means
- In SIS some or all of the software components may
be super-components. In which case, certain
cells in the latch register may be associated
with super-components.
45
45
46Recursive Timing Controller
- Each cell associated with a super-component can
be expanded into another latch register. The
secondary latch register is part of another
timing controller. In other words, timing
controllers can be recursively defined when super
components are present in a system
- The T icon adjacent to a cell associated with a
super component indicates it can be expanded into
another timing controller. An equivalent, but
simpler, notation is to write a T inside this
cell, which can then be expanded into another
latch register and its associative memory
46
46
47Outline
- Why Slow Intelligence Systems
- Introduction to SIS
- Visual Specification of SIS
- Incremental Design
- SIS Framework and Test Bed
- User Interface
- Application to Social Influence Analysis
48SIS Test Bed
- Initially, to experiment with an application
system under development, the SIS test bed can be
employed.
49SIS Test Bed for Healthcare Systems
50SIS Framework
- The SIS framework is to test and develop the
optimized application system based upon the SIS
technology.
51SIS Framework
52SIS Framework
- The Enumerator reads in the specification of
functional blocks and creates multiple candidate
components for each functional block. The Tester
tests all the functional blocks and records their
performance in the DB. The Eliminator selects the
best candidate components based upon their
performance. The Concentrator packs the selected
candidate components based on dependency
specifications and generates a generic software
package. The Transformer is used to transform
the Concentrator-generated software package to
target software package that serves specific
purpose. The Timing Controller is the system
manager that controls all the above mentioned
components, telling them when to perform what
actions.
53Requirements for SIS Framework
ID Description
R1 Java support
R2 Dynamic lifecycle management of building blocks during runtime
R3 XML message based communications
R4 Code frame generation out of meta-models in a form of class diagram
R5 Scalability of components upto 1,000 10,000 components
R6 Integrated Development Environment (IDE) support
54Related technologies for SIS Framework
- Eclipse has a big ecosystem for Java based
software development both the IDE and runtime
framework - OSGi is a universal middleware which abstract
heterogeneous communication protocols, support
life-cycle management of software component
during runtime which can be a basis for the SIS
framework. - Eclipse EMF provides code generation from the
meta-model - Eclipse ECF provides communication for
point-to-point and publish-and-subscribe for the
distributed systems - Semantic self-organization, self-similarity and
autonomic component model concepts from CASCADAS
project can be useful to augment the SIS
approaches.
55Relationships of related technologies to SIS
56Outline
- Why Slow Intelligence Systems
- Introduction to SIS
- Visual Specification of SIS
- Incremental Design
- SIS Framework and Test Bed
- User Interface
- Application to Social Influence Analysis
57SIS User Interface
- The user interface was developed in part based
upon PIPE tool - In C-card, places specify messages and
transitions specify components - In I-card, components can be simple components or
super components - T-card is used to specify test data
- Spec can be saved as PNML (Petri Net Markup
Language) and XML documents
58Screen Shot for C-card Design
59Screen Shot for place editor and message editor
design
60Screen Shot for I-card Design
61Screen Shot for T-card Design
62Outline
- Why Slow Intelligence Systems
- Introduction to SIS
- Visual Specification of SIS
- Incremental Design
- SIS Framework and Test Bed
- User Interface
- Applications
63Applications
- Social Influence Analysis
- Product and service customization
- Topic/Trend Detection
- High Dimensional Feature Selection
- Personal healthcare
- Emergency Management
- Legacy Systems
64Discussion
- A framework for knowledge-based software
engineering. - Since time is relative, slow intelligence
systems for some can also be fast for others. -
- A slow intelligence system can evolve into a
fast intelligence system.
65Further Work
- How to check and maintain consistency in
incremental application system design - How to find the critical components in a legacy
system for replacement by super components
66QA