elastic cognitive systems 18 6-2015-dustdar
TRANSCRIPT
Elastic Cognitive SystemsCognitive Systems Institute Group, 18 June 2015
Schahram Dustdar
Distributed Systems Group
TU Vienna
dsg.tuwien.ac.at
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
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
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
Elasticity ≠ Scaleability
Resource elasticity Software / human-based
computing elements,
multiple clouds
Quality elasticityNon-functional parameters e.g.,
performance, quality of data,
service availability, human
trust
Costs & Benefit
elasticityrewards, incentives
Elasticity
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>...
Elasticity Model for Cloud ServicesMoldovan 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
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?
Computing Models
Machine-based
Computing
Human-based
Computing
Things-based
computing
Grid
Pro
cessin
g
Unit
Arc
hitectu
reC
om
m.
SMP
S. Dustdar, H. Truong, “Virtualizing Software and
Humans for Elastic Processes in Multiple Clouds – a
Service Management Perspective”, in International
Journal of Next Generation Computing, 2012
Ad hoc networks Web of things
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)
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
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.
①
②
③
On-demand Collaborative Use-case
Hybrid ad-hoc collectives
Provisioned on-demand by the platform (e.g., SmartSociety, SCU)
①
Elastic SCU provisioning
Elastic profileSCU (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
①
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
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 andmachine peers
②
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
③
Research Questions
abstraction
interlayer
• Identify common incentivizing patterns in existing systems• Express the patterns as compositions of fundamental,
platform-agnostic incentive elements.
③
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).
③
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.
③
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).
③
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.
③
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 additionalbusiness logic
System-independent
Human-friendly syntax
Elements can be stored, shared, reused
Translated to code executable on abstraction interlayer
③
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