Active Active, a platform for building intelligent software

Slides:



Advertisements
Similar presentations
Programming Paradigms and languages
Advertisements

Key-word Driven Automation Framework Shiva Kumar Soumya Dalvi May 25, 2007.
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
Object-Oriented Analysis and Design
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
Supervised by Prof. LYU, Rung Tsong Michael Department of Computer Science & Engineering The Chinese University of Hong Kong Prepared by: Chan Pik Wah,
Applying Design Patterns to Wireless Sensor Network Sajjad Soroush AmirKabir University of Technology, Department of Computer Engineering.
Java Programming, 3e Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
Managing Agent Platforms with the Simple Network Management Protocol Brian Remick Thesis Defense June 26, 2015.
Interpret Application Specifications
Guided Conversational Agents and Knowledge Trees for Natural Language Interfaces to Relational Databases Mr. Majdi Owda, Dr. Zuhair Bandar, Dr. Keeley.
© Copyright Eliyahu Brutman Programming Techniques Course.
01 -1 Lecture 01 Intelligent Agents TopicsTopics –Definition –Agent Model –Agent Technology –Agent Architecture.
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
WebDynpro for ABAP Short introduction.
© 2008 IBM Corporation Behavioral Models for Software Development Andrei Kirshin, Dolev Dotan, Alan Hartman January 2008.
Matthew J Mattia CSC  Cumbersome Code  Consistent/Predictable design (GUEPs #5, CD’s #10)  Display “proper” amount of information  Including.
Understanding and Managing WebSphere V5
© 2006 by IBM 1 How to use Eclipse to Build Rich Internet Applications With PHP and AJAX Phil Berkland IBM Software Group Emerging.
TIBCO Designer TIBCO BusinessWorks is a scalable, extensible, and easy to use integration platform that allows you to develop, deploy, and run integration.
UNIT-V The MVC architecture and Struts Framework.
February Semantion Privately owned, founded in 2000 First commercial implementation of OASIS ebXML Registry and Repository.
Introduction 01_intro.ppt
Java Programming, 2E Introductory Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
SOA, BPM, BPEL, jBPM.
The Design Discipline.
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
INTELLIGENT AUTOMATION INC. Extending Rational Rose to support MAS design in UML Intelligent Automation Inc. 2 Research Place, Suite 202 Rockville, MD.
An Introduction to Software Architecture
DISTRIBUTED COMPUTING
CONTENTS Arrival Characters Definition Merits Chararterstics Workflows Wfms Workflow engine Workflows levels & categories.
DBSQL 14-1 Copyright © Genetic Computer School 2009 Chapter 14 Microsoft SQL Server.
Plug-in System for the Xylia Extensible XML Editor Student: Jonathan Milley Supervisor: Dr. T. S. Norvell.
111 Notion of a Project Notes from OOSE Slides – a different textbook used in the past Read/review carefully and understand.
CHAPTER TEN AUTHORING.
Selected Topics in Software Engineering - Distributed Software Development.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
LHCb Software Week November 2003 Gennady Kuznetsov Production Manager Tools (New Architecture)
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
Intelligent Robot Architecture (1-3)  Background of research  Research objectives  By recognizing and analyzing user’s utterances and actions, an intelligent.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 13. Review Shared Data Software Architectures – Black board Style architecture.
Introduction to Interactive Media Interactive Media Tools: Authoring Applications.
1 Object Oriented Logic Programming as an Agent Building Infrastructure Oct 12, 2002 Copyright © 2002, Paul Tarau Paul Tarau University of North Texas.
CASE (Computer-Aided Software Engineering) Tools Software that is used to support software process activities. Provides software process support by:- –
Application Ontology Manager for Hydra IST Ján Hreňo Martin Sarnovský Peter Kostelník TU Košice.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
CS562 Advanced Java and Internet Application Introduction to the Computer Warehouse Web Application. Java Server Pages (JSP) Technology. By Team Alpha.
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
Model Integrated Computing and Autonomous Negotiating Teams for Autonomic Logistics G.Karsai (ISIS) J. Doyle (MIT) G. Bloor (Boeing)
Activiti Dima Ionut Daniel. Contents What is Activiti? Activiti Basics Activiti Explorer Activiti Modeler Activiti Designer BPMN 2.0 Activiti Process.
W3C Multimodal Interaction Activities Deborah A. Dahl August 9, 2006.
Ganga/Dirac Data Management meeting October 2003 Gennady Kuznetsov Production Manager Tools and Ganga (New Architecture)
Integrating and Extending Workflow 8 AA301 Carl Sykes Ed Heaney.
V7 Foundation Series Vignette Education Services.
Visual Programming Borland Delphi. Developing Applications Borland Delphi is an object-oriented, visual programming environment to develop 32-bit applications.
TIBCO Business Events Online Training. Introduction to TIBCO BE Tibco Business Events is complex event processing software with a powerful engine enables.
Programming Logic and Design Seventh Edition Chapter 1 An Overview of Computers and Programming.
Kai Li, Allen D. Malony, Sameer Shende, Robert Bell
Chapter 1: Introduction to Systems Analysis and Design
N-Tier Architecture.
Unified Modeling Language
The Improvement of PaaS Platform ZENG Shu-Qing, Xu Jie-Bin 2010 First International Conference on Networking and Distributed Computing SQUARE.
#01 Client/Server Computing
Introduction to Software Testing
An Introduction to Software Architecture
Chapter 1: Introduction to Systems Analysis and Design
강의 내용 및 방법 접근방법 리포트 시험 Lambda Calculus, Proof of Correctness
Chapter 1: Introduction to Systems Analysis and Design
#01 Client/Server Computing
Presentation transcript:

Active Active, a platform for building intelligent software Dr. Charles Baur (EPFL) Adam Cheyer (SRI International) Didier Guzzoni (EPFL) Active

Presentation Plan Introduction Active Framework Applications Problem space Active proposition Active Framework Active Ontologies Implementation Methodologies Applications Conclusion Introduction Active

Motivation Our information environment is rich and complex Ubiquitous access to a wealth of data and services Software and hardware industry constant innovations UIs have not changed: Simple click-and-do approach not enough Need for computer assistants Interact naturally with humans Can be delegated complex tasks Observe, understand, anticipate and act Introduction Active

Intelligent Systems Resolve Anticipate Interpret Plan action Understand Resolve Anticipate Interpret Plan action Observe Act Effectuate Communicate Listen Vision Sense Intelligent Systems : Naturally collaborates with human users to deliver services and contents through adaptable, efficient, multimodal user interfaces. Introduction Active

Difficult Task Requires numerous AI techniques Language processing Plan execution Dynamic service brokering (MAS) Implementation is difficult HCI components (speech recognition, vision, robotics) Large teams of specialists Different programming languages and platforms Testing, debugging and maintenance is difficult Performance is likely to be affected Lack of an integrated tool and methodology to easily and effectively build intelligent systems Introduction Active

Goal of Active Provide programmers with an integrated framework and a methodology to build complex AI-based systems Capable of encapsulating AI techniques Language processing, plan execution and agent type techniques Programmer friendly Small teams Based on popular programming languages (Java/Javascript) Offers an IDE (code, test, debug and deploy) Open and standard compliant SOA-based (SOAP, REST, RMI) Deployment (Java, J2EE) Active Framework Active

Basic Concept : Active Ontologies Ontology : A data structure Formal representation for domain knowledge Classes, attributes, relations P movie P genre P actor P rating Active Ontology : A processing environment Processing elements arranged according to ontology notions Communication channels Active Framework Active

Active Ontology : Processing Production Rule System Rules Sets Rules (Conditions, actions) Data store (facts) Current state of the system Evaluation Engine Evaluation passes Active Innovations Organizing rules around Ontologies helps design and debug Developer friendly rule language. Enhanced Java/Javascript with unification P movie rule set rule condition action Active Framework Active

Active Application Design One or more Active Ontologies Hosted on Active runtime Typically : Language processing Plan execution Dynamic service brokering Service oriented (SOA) Loosely coupled Sensors (user interfaces, speech recognition, vision) Actuators (robots, user interfaces) Reusable Dynamically swapped Active runtime Optionally hide. Spend less time on it. services Active Framework Active

Implementation Active Server Active Editor Active Console Hosts Active Ontologies Maintains a fact store Runs evaluation engine Extensions Active Editor IDE Code, deploy, test Pluggins Active Console Manages Active Server Active Editor Active Ontology Active Server deploy Facts store debug Evaluation Engine monitor Active Ontology Active Console Active Ontology Active Ontology Implementation Active

Active Server Runs and hosts Active Ontologies Implementation Evaluation Engine Fact Store Implementation Java application/J2EE webapp SOAP / RMI interface Rule language is Java/JavaScript enhanced by unification Extensions Encapsulate pre-compiled complex operations Active Server Evaluation Engine Active Ontologies Fact store Extensions Connect out SOAP/RMI interface services Implementation Active

Active Editor IDE Active Server Connection Plugins Graphical editing of ontologies Specialized concept and rule editors Active ontology definition files saved locally (XML) Active Server Connection Deploy/undeploy edited ontologies Integrated test/debug Plugins Automatically creates concepts and rules based on interactive wizards Show relationships names options. Implementation Active

Active Console Management tool Query (read) panel Store (write) panel Monitor and configure deployed Active Ontologies SOAP/RMI interface Query (read) panel Construct complex queries to Active Server Tabular result sets Store (write) panel Stimulates Active Ontologies by sending events to the server Could be hidden Implementation Active

Active Methodologies Language Processing Agent techniques Chart Parsing Event based Agent techniques Delegated computing Dynamic service selection Plan execution Process Execution Engine Reactive Planning Methodologies Active

Language Processing : Grammar-Based Chart parsing Advantages Formal parsing (Mathematical expressions) Deterministic Disadvantages Not flexible Not robust to missing words Not well suited for non-reliable input modalities (Speech recognition) Add: Screen Shot from chart parser Methodologies Active

Language Processing : Domain-Based Implementation Bottom Up Leaves : Word set, regex Nodes : Gather, Select Context Kept among utterances Errors, Suggestions Advantages Robust to syntax Ports well to different languages Wizards Easy modifications “find action movies in San Francisco” “nearby Chinese restaurants” Popup a leaf wizard in the animation. Second utterance. Shared address -> Context. Half-life: stay in context get gradually weaker. Change probability to confidence. Final command should not stay red. Methodologies Active

Activity/Dialog Modeling Dialogs, Activities, Behaviors Full-featured workflow management State / Transitions Flow instances, Instance space Basic flow constructs Start, End Wait, Switch (branching) Parallel, sequences Active Implementation Set of plugins (Editor Wizards) Extension (Java/JavaScript) to access flow variables Has the core primitives such as BPEL. Popup Wizard Just do by drag and drop. Front end : language processing. Second tier: Use the term business logic term. Backend : dynamic services delegation. Then you can build your entire application in Active. Methodologies Active

Dynamic Service Brokering Delegated Computing What instead of how or who Service Registry Service categories cross-ontology references Service instances (providers) Broker Parallel, Sequential, Broadcast Third-party meta-agents Active Implementation Specialized Active Ontology Server Extension, IDE Wizards Enable Fandango. One more Wizard : Test panel. Methodologies Active

Prototypes / Demonstration Information Retrieval Assistant Meeting Organizer Assistant Operating Room Assistant Prototypes Active

Information Retrieval Assistant Language Processing Plan Execution Delegation Active Server SOAP Extensions Email gmail SMTP/POP server Google Movies Yahoo! Local City Information Opentable Prototypes Active

Meeting Organizer Assistant Active Server Language Processing Plan Execution Delegation Extensions IM SOAP Email gmail calendar gmail SMTP/POP server Prototypes Active

Operating Room Assistant Mouse 3D Speech Recognizer Patient vital signs probes Context History Hand/Head Tracker Language Processing Plan Execution Powered Endoscope Actions through Delegation User Interface Gesture Recognizer Text to Speech Prototypes Active

Active Advantages One platform to learn for programmers Can build all three tiers of applications in Active One language and tool to learn Easier to debug, test and deploy AI Encapsulation-Lowering the bar Methodologies encapsulated as Active Wizards and Extensions NLP, process execution, service brokering Componentized reusable sensors and actuators TTS, Speech, Gesture recognizers, vision systems Open and Standard-based SOA design Ease of integration through SOAP and REST Reuse of existing components in multiple applications Bringing AI to the masses. Conclusion Active

Ongoing Work Research Topics Active implementation and features Combine activity recognition with process execution Implement and evaluate BDI-like behaviors with Active (goal and intention stack) Active implementation and features Scalability Performance optimizations Lightweight embedded Active Server User Evaluations Put some of our systems on-line Measure feedback from surgeons (Intelligent Operating Room) Conclusion Active

Thank You ! Questions ? Suggestions ? Remarks ? Conclusion Active