1. Elastic Cognitive Systems
Cognitive Systems Institute Group, 18 June 2015
Schahram Dustdar
Distributed Systems Group
TU Vienna
dsg.tuwien.ac.at
2. eHealth &
Smart Health
networksGame Machine
Telephone
PC
DVD
Audio
TV
STBDVC
Smart
Homes
Smart eGovernments &
eAdministrationsSmart Energy
Networks
Smart Evolution – People, Services,Things
Elastic Systems
Smart Transport
Networks
3. Marine Ecosystem: http://www.xbordercurrents.co.uk/wildlife/marine-ecosystem-2
Think Ecosystems:
People, Services, Things
Diverse users with
complex networked
dependencies and
intrinsic adaptive
behavior – has:
1. Robustness
mechanisms:
achieving stability in
the presence of
disruption
2. Measures of health:
diversity, population
trends, other key
indicators
7. Connecting machines and people
Event Analyzer on
PaaS
Peak Operation
Other stakeholders
...
events stream
Normal Operation
Human Analysts
Peak OperationNormal Operation
Machine/Human
Event Analyzers
Critical
situation 1
Experts
SCU
(Big) Data analytics
Wf. A
Wf. B
Critical
situation 2
Cloud DaaS
Data analytics
M2M PaaS
Cloud IaaS
Operation
problem
Maintenance
process
Core principles:
Human computation capabilities under elastic service units
Augmenting human-based units together with software-based units
9. Specifying and controling elasticity
Basic primitives
Schahram Dustdar, Yike Guo, Rui Han,
Benjamin Satzger, Hong Linh Truong:
Programming Directives for Elastic Computing.
IEEE Internet Computing 16(6): 72-77 (2012)
SYBL (Simple Yet Beautiful Language) for
specifying elasticity requirements
SYBL-supported requirement levels
Cloud Service Level
Service Topology Level
Service Unit Level
Relationship Level
Programming/Code Level
Current SYBL implementation
in Java using Java annotations
@SYBLAnnotation(monitoring=„“,constraints=„“,strategies=„
“)
in XML
<ProgrammingDirective><Constraints><Constraint
name=c1>...</Constraint></Constraints>...</Programm
ingDirective>
as TOSCA Policies
<tosca:ServiceTemplate name="PilotCloudService">
<tosca:Policy name="St1"
policyType="SYBLStrategy"> St1:STRATEGY
minimize(Cost) WHEN high(overallQuality)
</tosca:Policy>...
10. Elasticity Model for Cloud Services
Moldovan D., G. Copil,Truong H.-L., Dustdar S. (2013). MELA:
Monitoring and Analyzing Elasticity of Cloud Service. CloudCom
2013
Elasticity space functions: to determine if a
service unit/service is in the “elasticity behavior”
Elasticity Pathway functions: to characterize the
elasticity behavior from a general/particular view
Elasticity Space
12. Human-based service elasticity
Which types of human-based service instances
can we provision?
How to provision these instances?
How to utilize these instances for different types
of tasks?
Can we program these human-based services
together with software-based services
How to program incentive strategies for human
services?
14. Specifying and controling elasticity
of human-based services
What if we need to
invoke a human?
#predictive maintanance analyzing chiller measurement
#SYBL.ServiceUnitLevel
Mon1 MONITORING accuracy = Quality.Accuracy
Cons1 CONSTRAINT accuracy < 0.7
Str1 STRATEGY CASE Violated(Cons1):
Notify(Incident.DEFAULT, ServiceUnitType.HBS)
15. Evolution of Human-Based Computing
• Tim Berners-Lee’s Social Machines:
“a computational entity that blends
computational and social processes”
• Our view:
• People AND Computational Units
• Complex Workflows
• Respond to ad-hoc situations
• Leverage human creativity
• Embrace uncertainty
• No over-regulation
• Human-driven adaptation
16. Complex collaborative patterns/workflows
On-demand (machine-driven)
Open-call (human-driven)
Crowd satisfaction and non-monetary motivation
Incentives and rewards
Reputation, accountability
Career ladders, reputation transfer, virtual careers, hierarchy
Developments in Human-Based Comp.
①
②
③
18. Elastic SCU provisioning
Elastic profile
SCU (pre-)runtime/static formation
Cloud APIs
Muhammad Z.C. Candra, Hong-Linh Truong, and Schahram
Dustdar, Provisioning Quality-aware Social Compute Units in
the Cloud, ICSOC 2013.
Algorithms
Ant Colony
Optimization
variants
FCFS
Greedy
SCU
extension/reduction
Task reassignment
based on trust, cost,
availability
Mirela Riveni, Hong-Linh Truong, and Schahram
Dustdar, On the Elasticity of Social Compute Units,
CAISE 2014
①
20. Open-call Collaborative Use-case
The platform composes the possible/optimal execution plans based on
subtask offers submitted by crowd members.
Plans are recommended/offered to interested crowd members
Crowd members are able to negotiate for participating in execution of
multiple plans concurrently, effectively making only a subset of them
happen.
Negotiation orchestrated by the platform
Composition
Recommendation
NegotiationExecution
Feedback
②
request
21. SmartSociety Platform
M. Rovatsos et al., Agent protocols for social computation Quality-aware Social Compute Units,
in Metaheuristics for Smart Cities, 2015.
P. Zeppezauer et al., Virtualizing communication for hybrid and diversity-aware collective adaptive
systems, WESOA@ICSOC, 2014.
http://www.smart-society-project.eu/publications/deliverables/D_6_1/
users
crowd of human and
machine peers
②
22. Crowd satisfaction and
non-monetary motivation
[2] Kittur, A., et al.: The future of crowd work. Proc. of CSCW ’13, New York, USA.
• How to make virtual labor market competitive
and attractive for skilled workers? [2]
Complex collaborative patterns/workflows
Hierarchy/structure
Worker satisfaction and non-monetary motivation
Reputation, accountability
Career ladders, reputation transfer, virtual careers
Incentive
Management
③
26. Modeling Incentives
Examined incentive strategies in over 200 existing
social computing platforms
Examined incentive mechanisms in economics,
management science, sociology, psychology
Identified fundamental incentive mechanisms
in use today and their constituent elements
New mechanisms can be built by composing
and customizing well-known incentive elements
[3] Scekic, O., Truong, H.-L., Dustdar, S.: Incentives and rewarding in social computing.
Communications of the ACM, 56(6), 72 (2013).
③
27. Research Questions
abstraction
interlayer
• Virtualize system-specific worker team representations into a system-
agnostic model amenable to the application of incentives.
• Develop primitives for executing (applying) incentive actions.
③
28. Abstraction Interlayer
PRINC (PRogrammable INcentives) framework.
Allows modeling of human worker teams
– storing and altering worker metrics
– storing and altering worker structure
– storing behavioral history and scheduling of incentive actions
Event-based communication with underlying socio-technical system
[4] Scekic, O., Truong, H.-L., Dustdar, S.: Modeling
rewards and incentive mechanisms for social BPM.
Proc. BPM’12 (pp. 150–155), Talinn, (2013).
[5] Scekic, O., Truong, H.-L., Dustdar, S.:
Programming incentives in information systems. In
Proc. CAiSE’13 (pp. 688–703), Valencia (2013).
③
29. Research Questions
abstraction
interlayer
• Design a declarative, human-friendly way of modeling incentives
out of fundamental incentive elements.
• Translate the modeled incentive strategy into executable actions.
③
30. A Domain-Specific Language for
Incentives
[6] Scekic, O., Truong, H.-L., Dustdar, S.:
Managing Incentives in Social Computing Systems with PRINGL. WISE’14 (pp. 415—424), Thessaloniki, Greece
PRINGL – PRogrammable INcentive Graphical Language
Visuo-textual language
– Graphical elements for modeling and
composing incentive elements
– Traditional code snippets for additional
business logic
System-independent
Human-friendly syntax
Elements can be stored, shared, reused
Translated to code executable on abstraction interlayer
③
32. Conclusions
Elastic Cognitive Computing is the next step in the man &
machine „symbiosis“
Novel environments needed for
Complex collaboration patterns-> include Things, Services
Incentive management
Reputation transfer
Virtual careers
33. Thanks for your attention!
Prof. Dr. Schahram Dustdar
Distributed Systems Group
TU Wien
dsg.tuwien.ac.at