210 likes | 354 Views
ICP Architecture: Execution and Control. Bostjan Kaluza, Damjan Kuznar , Erik Dovgan , Jernej Zupancic , and Matjaz Gams Jozef Stefan Institute, Slovenia. Outline. I. Introduction Principles and argumentation Idea Relation to TNO architecture II. Analysis Use cases Agent types
E N D
ICP Architecture:Execution and Control Bostjan Kaluza, DamjanKuznar, Erik Dovgan, JernejZupancic, and Matjaz Gams Jozef Stefan Institute, Slovenia
Outline • I. Introduction • Principles and argumentation • Idea • Relation to TNO architecture • II. Analysis • Use cases • Agent types • Responsibilities • Agent deployment • III. Design – Next steps
Principles and Motivation • Properties of smart cities • Smart Cities, I. Celino, S. Kotoulas (eds.), IEEE Internet Computing, November/December 2013: • Effectively process networked city information • Information to authorities, business, citizens, optimizing energy and water production or consumption, traffic management, public safety, emergency response • Multifaceted and cross-domain challenges, inherently interdisciplinary • Reason on spatial, temporal and contextual aspects of data • Life-cycle of data, integrating heterogeneous sources • Ubiquitous, pervasive, AmI, agents, AI • IBM Smarter Planet initiative, Siemens Sustainable Cities, Oracle IT platform City services, Microsoft CityNext platform
Principles and Motivation/ Design • Principles of designing large distributed systems • Need to balance: simplicity, scalability, performance, reliability, generality, features • Before doing anything, consult people having experience with designing large distributed systems (Belifemine; JSI) • Software design topics • Design concepts: abstraction, refinement … • Design considerations: compatibility, fault-tolerance … • Modeling language: flowchart, UML, SysML, … • Design patterns: reuse of patterns, modules … • Usage: documentation, prototypes • Practical: choose design methodology, forms, languages … • Execute: Definition, analysis, design, implementation, test
Motivation / ourapproach • Agent technologies best for smart cities /ACCUS • Agent: autonomous SW component, providing interoperable interface to an arbitraty system, persuading its agenda for a client • Autonomous, social, reactive, proactive, mobile, truthful, benevolent • Our proposal • Agent design methodology • Prototype on a smart house / current • OSGi, JADE, JADEX • Two parts • very compact (!) core working every-day tasks fast and reliable (limited size and functionality; general and flexible) • complex advanced modules providing „thinking“(negotiating, optimizing, learning; large, heterogenous, complex, not fully reliable, scientific and operational challenges)
Idea Operational and control levels: • ICP Backbone • Runtime environment (management, communication, …) • Focused on execution • Responsive behavior (via service calls, notifications) • ICP Mind • Proactive behavior • Learning, optimization, control
ACCUS architecture ACCUS Service Plug-ins ICP Mind ACCUS Plug-ins Cross Domain Application Event detection Data analytics Traffic monitor Subsystem Application Application Smart Lighting Service Location detection Calamity detection Generic service … Service … ACCUS Applications Service ICP Backbone Subsystems Presence detection Rule engine Generic service … Subsystem adaptor ACCUS Integration and Coordination Platform ACCUS API ACCUSICP Extensions Info Broker & coordination Control Broker & coordination Work Flow Engine Policy DB ACCUS Data Store Ontology DB Service Repository Subsystem Monitoring Semantic mapping Security Management Service Bus ACCUS ICP Core Application Server Application Server Identity & access management Policy management Data management Service Broker OSGi Java VM = Standard software OS = ACCUS specific software Hardware = case specific software
Infrastructure vs. Control View • Two-dimensional view
II. Analysis Use cases Agent types Responsibilities Agent deployment
Agent (Service*) Types: ICP Backbone • Communication • Service management • Service life-cycle • Rule engine • Executing queries • Workflow engine • Executing emergency response • Security *service = basic reactive agent
Agent types: ICP Mind • Subsystem coordinators, city coordinator • Belief-Desire-Intention agents • Proactive, follow their goals • Organizational structure • (decision making, negotiations) • Support agents • Optimization • Stochastic optimization • Game theory (Nash equilibriums, multiagent negotiations) • Learning • Anomaly detection • Surrogate modeling(simulator synthesis) • Data analytics • Adaptive control schemes
Organizational Structure (partial) Mind Support Learning agent Coordinators City coordinator agent Data analytics agent Optimization agent Adaptive control schemes Subsystem 1 coordinator agent Subsystem 2 coordinator agent Rule engine Service management Backbone Subsystem 2 services Communication Work flow engine Subsystem 1 services Transducer 2 Security Transducer 1 … Subsystem 1 Subsystem 2
Responsibilities: Lighting coordinator • Receives lighting schedules from authorized agents • Retrieves information on weather, traffic conditions, pedestrians, cyclists etc • Receives new algorithms for computing lamp brightness • Presents information on lamp conditions, power consumption, brightness levels etc • Uses support agents (Nash equilibria agent, stochastic optimization agent) to compute better – (sub)optimal settings for operation • Uses support agents to specify workflow in case of emergency or anomaly detection • Negotiates with other subsystem coordinator agents • Listens to the City coordinator agent
Deployment Information • ICP Backbone: OSGi • ICP Mind: Jade, Jadex ICP MIND ICP BACKBONE JADE OSGi Database APP server JAVA OS HARDWARE ARTEMIS-2013
Deployment: Integration with ICP • Transducer (whenmodifyingcode is not possible) • Separate process that implements API and communicates with outside system • Each application specifies input/output in the agent language • Wrapper (whenmodifyingcode is possible) • API envelope • Coderewrite (programmed in line withagentsparadigm) • Part of ICP, our components ACL ACL ACL Transducer Wrapper Rewrite Legacy resource Legacycode
Further Work: Architecture Design • Interaction specification • Protocol definition • Message templates • Agent user interaction • Internal agent behavior • Defining ontology