Ontologies Reasoning Components Agents Simulations Project Topics: MCI 2007.1 Jacques Robin.

Slides:



Advertisements
Similar presentations
MAS Tomasz Pieciukiewicz Rafał Hryniów. Main Topics Zasady Zasady Referaty Referaty Projekt Projekt Kolosy Kolosy.
Advertisements

The role of OCL in the Model Driven Architecture Jos Warmer Klasse Objecten
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
Ontologies Reasoning Components Agents Simulations Homework Assignment 1: Modeling the Tangram Puzzle in UML and OCL Jacques Robin & Franklin Ramalho.
ISBN Chapter 3 Describing Syntax and Semantics.
UML Class Diagram. UML Class Diagrams2 Agenda What is a Class Diagram? Essential Elements of a UML Class Diagram Tips.
Object-Oriented Analysis and Design
UML – Class Diagrams.
Artificial Intelligence Constraint satisfaction Chapter 5, AIMA.
Ontologies Reasoning Components Agents Simulations Project Topics: MCI 2006 Jacques Robin.
Chapter 14 (Web): Object-Oriented Data Modeling
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Automatically Extracting and Verifying Design Patterns in Java Code James Norris Ruchika Agrawal Computer Science Department Stanford University {jcn,
C++ Training Datascope Lawrence D’Antonio Lecture 11 UML.
Ontologies Reasoning Components Agents Simulations Project Topics: MCI Jacques Robin.
Describing Syntax and Semantics
UML Class Diagram: class Rectangle
Ontologies Reasoning Components Agents Simulations Basic Structural Modeling with UML2 Jacques Robin.
UML class diagrams (1) UML = Unified Modeling Language We use only class diagrams, not other UML diagrams Purpose: –keep OO concepts separate from implementation.
Ontologies Reasoning Components Agents Simulations Agent Modeling Language: An Overview Wendell Véras Vinícius Remígio Jacques Robin.
© 2008 IBM Corporation Behavioral Models for Software Development Andrei Kirshin, Dolev Dotan, Alan Hartman January 2008.
Chapter 14: Object-Oriented Data Modeling
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Database Systems Group Department for Mathematics and Computer Science Lars Hamann, Martin Gogolla, Mirco Kuhlmann OCL-based Runtime Monitoring of JVM.
Faculty of Informatics and Information Technologies Slovak University of Technology Peter Kajsa and Ľubomír Majtás Design.
Chapter 11 Inheritance and Composition. Chapter Objectives Learn about inheritance Learn about subclasses and superclasses Explore how to override the.
MDE Model Driven Engineering Xavier Blanc Université Pierre et Marie Curie
3 April SOA: Services Oriented Architecture MDA: Model Driven Architecture.
Introduction to MDA (Model Driven Architecture) CYT.
Programming Pillars Introduction to Object- Oriented Programming.
Ontologies Reasoning Components Agents Simulations Structural Modeling with UML2 Jacques Robin.
SaveUML System design. System overview Possible...
Paper written by Flavio Oquendo Presented by Ernesto Medina.
CS 363 Comparative Programming Languages Semantics.
1 © Prentice Hall, 2002 Chapter 14: Object-Oriented Data Modeling Modern Database Management 6 th Edition Jeffrey A. Hoffer, Mary B. Prescott, Fred R.
© 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Chapter 15: Object-Oriented Data Modeling Modern Database Management 9 h Edition Jeffrey A.
CHAPTER 13: OBJECT-ORIENTED DATA MODELING (OVERVIEW) © 2013 Pearson Education, Inc. Publishing as Prentice Hall 1 Modern Database Management 11 th Edition.
An Ontological Framework for Web Service Processes By Claus Pahl and Ronan Barrett.
Ontologies Reasoning Components Agents Simulations KobrA: A Model-Driven Component-Based Software Product Line Engineering Methodology Jacques Robin.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
MAS Tomasz Pieciukiewicz Rafał Hryniów. Main Topics  Rules  Presentations  Project  Tests.
Secure Systems Research Group - FAU Model Checking Techniques for Security Systems 5/14/2009 Maha B Abbey PhD Candidate.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Object-Oriented Data Modeling
Ontologies Reasoning Components Agents Simulations Architectural Modeling with UML2 Composite Structures and Components Jacques Robin.
8. Inheritance “Is-a” Relationship. Topics Creating Subclasses Overriding Methods Class Hierarchies Abstract Class Inheritance and GUIs The Timer Class.
MDPs (cont) & Reinforcement Learning
Class diagrams Terézia Mézešová.
Chapter 16 UML Class Diagrams 1CS6359 Fall 2012 John Cole.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
Chapter 3: Introducing the UML
2 Software CASE tools state-of-the-art UML modeling Partially automatic code generation Refactoring browsers (occasionally) Context-sensitive search and.
CHAPTER 13: OBJECT-ORIENTED DATA MODELING (OVERVIEW) Modern Database Management 11 th Edition Jeffrey A. Hoffer, V. Ramesh, Heikki Topi © 2013 Pearson.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
(c) University of Washington05-1 CSC 143 Java Abstract Classes and Frameworks Reading: Ch. 11.
Object Design More Design Patterns Object Constraint Language Object Design Specifying Interfaces Review Exam 2 CEN 4010 Class 18 – 11/03.
UML (Unified Modeling Language)
Artificial Intelligence
Object-Oriented Modeling
Interface, Subclass, and Abstract Class Review
Unified Modeling Language
Web Service Modeling Ontology (WSMO)
Web Application Modeling
UML - Unified Modeling Language
UML Class Diagram: class Rectangle
Behavioral Models for Software Development
Lec 3: Object-Oriented Data Modeling
Object-Oriented Knowledge Representation
Java Programming Course
Software Components Jacques Robin.
Presentation transcript:

Ontologies Reasoning Components Agents Simulations Project Topics: MCI Jacques Robin

Topic  Developing a component framework of search algorithms  Based on the books:  Artificial Intelligence a Modern Approach by Russell & Norvig  Constraint Processing by Dechter  Stochastic Local Search by Hoos & Stützle  Using under development KobrA-2 method for PIM modeling  Maximizing separation of concerns:  Search problem specifications  Search algorithms  Search heuristics (variable choice, value choice, backtracking point choice, etc.)  Search visualization (GUI to follow reasoning)

Topic  Modeling a hierarchical framework of abstract components  which generic description is inherited by concrete components  that can be used to assemble variations of two main target algorithms  Conflict directed backjumping (complete, not very scalable)  Min-conflict (incomplete, very scalable)

Something along those lines... SearchAlgo GlobalSearchAlgoLocalSearchAlgo CSPSearchProblem SearchProblem FullStateFormulation SearchProblem PartialStateFormulation SearchProblem FDCSP SearchProblem VariableChoice Heuristic ValueChoice Heuristic Backtracking Heuristic PartialStateFormulation FDCSPSearchProblem FullStateFormulation FDCSPSearchProblem CSPSearchAlgo FDCSP SearchAlgo GlobalFDCSP SearchAlgo LocalFDCSP SearchAlgo CDBJMin-Confllict

PSM and Code  Develop a partial UML Profile for Java OSGi Component Model  Model the PSM using this profile  Either:  Manually translate the PIM to PSM and to source code  Write ATL rules that automatically perform these translations  Test the framework on a set of benchmark problems including:  Map coloring  N-Queens

Division of Labor  All four students:  PIM of general abstract framework classes  Problem formulations (Heron)  Algorithms (Geovane)  Heuristics (Juliana)  UML profile for Java OSGi (Weslei)  PIM of benchmark problems (Roberto)  Can suggest division of labor for those tasks

Division of Labor  Heron & Weslei:  PIM of abstract superclasses of Conflict-Direct Backjumping  PIM of abstract Conflict-Direct Backjumping  PIM of benchmark problems Partial State Formulation  PIM of concrete Conflict-Direct Backjumping variant assemblies  PSM of these PIM  Java code of these PIM  Geovane, Juliana & Roberto:  PIM of abstract superclasses of Min-Conflict  PIM of abstract Min-Conflict  PIM of benchmark problem Full State Formulations  PIM of concrete Min-Conflict variant assemblies  PSM of these PIM  Java code of these PIM

Timetable  21/03: Version 1.0 of KobrA PIM for common components  10/04:  Version 2.0 of KobrA PIM for common components  Version 1.0 of KobrA PIM for concrete components  Version 1.0 of UML Profile for OSGi Java  24/04:  Version 2.0 of KobrA PIM for concrete components  Version 2.0 of UML Profile for OSGi Java  Version 1.0 of PSM and Source Code for common and concrete components  03/05: Final oral presentation and demos

Reminder: KobrA’s PIM as a Recursive Component Assembly

KobrA-2 Artifacts for each Component Specification  Class diagrams: interfaces with operations, realizing component classes, classes defining non-primitives types of operation parameters  Structural OCL constraints of these class diagrams  (if needed) OCL derived attributes  OCL pre and post conditions or body for each operation of each interface  Component diagrams: socket-lollypop interfaces, port types, realizing component classes  (if needed) Protocol state machine: states changes of components resulting from calling operations of the interface that it realizes, primitive operation calls or OCL expressions on the transitions, primitive state attribute specification or OCL expression on the nodes

KobrA-2 Artifacts for each Component Realization  Class diagrams: interfaces with operations, realizing component classes, classes defining non-primitives types of operation parameters  Structural OCL constraints of these class diagrams  (if needed) OCL derived attributes  OCL pre and post conditions or body for each operation of each interface  Component diagrams: socket-lollypop interfaces, port types, realizing component classes  Composite structure diagrams (one for each constructor operation): component instances, port instances, connections  Activity diagrams (one for each operation): nodes either names of other activities, names of primitive actions or OCL expressions joining primitive actions