Knowledge and Systems Research Group, University of Huddersfield B vs OCL: Comparing Specification Languages for Planning Domains Diane Kitchin, Lee McCluskey,

Slides:



Advertisements
Similar presentations
Modelling with expert systems. Expert systems Modelling with expert systems Coaching modelling with expert systems Advantages and limitations of modelling.
Advertisements

Knowledge Engineering for Planning Domain Design Ron Simpson University of Huddersfield.
Planning Module THREE: Planning, Production Systems,Expert Systems, Uncertainty Dr M M Awais.
Introducing Formal Methods, Module 1, Version 1.1, Oct., Formal Specification and Analytical Verification L 5.
25 February 2009Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department.
Artificial Intelligence Chapter 21 The Situation Calculus Biointelligence Lab School of Computer Sci. & Eng. Seoul National University.
LIFE CYCLE MODELS FORMAL TRANSFORMATION
Opmaker2: Efficient Action Schema Acquisition T.L.McCluskey, S.N.Cresswell, N. E. Richardson and M.M.West The University of Huddersfield,UK
An Integration of Program Analysis and Automated Theorem Proving Bill J. Ellis & Andrew Ireland School of Mathematical & Computer Sciences Heriot-Watt.
Formal Methods in Software Engineering Credit Hours: 3+0 By: Qaisar Javaid Assistant Professor Formal Methods in Software Engineering1.
ICKEP International Competition for Knowledge Engineering in Planning - A PROPOSAL Lee McCluskey KE TCU.
Formal Methods of Systems Specification Logical Specification of Hard- and Software Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt.
Formal Methods of Systems Specification Logical Specification of Hard- and Software Prof. Dr. Holger Schlingloff Institut für Informatik der.
Software Engineering COMP 201
Towards An Algebraic Formulation of Domain Definitions using Parameterised Machines T. L. McCluskey and R. M.Simpson School of Computing and Engineering.
GIPO II: HTN Planning in a Tool- supported Knowledge Engineering Environment Lee McCluskey Donghong Liu Ron Simpson Department of Computing and Mathematical.
Lee McCluskey, University of Huddersfield - EKAW'04 Knowledge Formulation for AI Planning Lee McCluskey Ron Simpson Artform research group Department of.
School of Computing and Mathematics, University of Huddersfield An Interactive Method for Inducing Operator Descriptions Lee McCluskey Beth Richardson.
GIPO [Graphical Interface for Planning with Objects] Demonstration case-tool for Knowledge Engineering to support Domain Independent Planning Ron Simpson.
Week 4: Introduction to AI Planning Lee McCluskey, room 2/07
PDDL: A Language with a Purpose? Lee McCluskey Department of Computing and Mathematical Sciences, The University of Huddersfield.
Four Dark Corners of Requirements Engineering
School of Computing and Mathematics, University of Huddersfield Knowledge Engineering: Issues for the Planning Community Lee McCluskey Department of Computing.
The Semantic Web Week 14 Module Website: Lecture (SHORT): OWL PIZZAS Practical (LONGER): Getting to know Protégé-2000.
The Semantic Web Week 12 Term 1 Recap Lee McCluskey, room 2/07 Department of Computing And Mathematical Sciences Module Website:
Modelling with Coloured Petri Nets Søren Christensen Department of Computer Science University of Aarhus.
ICKEP International Competition for Knowledge Engineering in Planning Lee McCluskey PLANET Knowledge Engineering.
School of Computing and Mathematics, University of Huddersfield PDDL and other languages.. Lee McCluskey Department of Computing and Mathematical Sciences,
Informatics Research Group University of Huddersfield Tool Support for Planning and Plan Analysis within Domains embodying Continuous Change Lee McCluskey.
School of Computing and Mathematics, University of Huddersfield Week 21: Knowledge Acquisition / GIPO Lee McCluskey, room 2/09
Describing Syntax and Semantics
School of Computer ScienceG53FSP Formal Specification1 Dr. Rong Qu Introduction to Formal Specification
Using GIPO to support learning in knowledge acquisition and automated planning Lee McCluskey and Ron Simpson.
Semantic Web Technologies Lecture # 2 Faculty of Computer Science, IBA.
Formal Methods 1. Software Engineering and Formal Methods  Every software engineering methodology is based on a recommended development process  proceeding.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Verification and Validation l Assuring that a software system meets a user's.
Verification and Validation Yonsei University 2 nd Semester, 2014 Sanghyun Park.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Verification and Validation.
GENERAL CONCEPTS OF OOPS INTRODUCTION With rapidly changing world and highly competitive and versatile nature of industry, the operations are becoming.
Week 6: PDDL, itSIMPLE and running “state of the art” planners Lee McCluskey, room 3/10
1 Intelligent Systems ISCRAM 2013 Validating Procedural Knowledge in the Open Virtual Collaboration Environment Gerhard Wickler AIAI, University.
CHA2555 Week2: Knowledge Representation, Logic and Planning Lee McCluskey First term:
HCI in Software Process Material from Authors of Human Computer Interaction Alan Dix, et al.
Overview of Formal Methods. Topics Introduction and terminology FM and Software Engineering Applications of FM Propositional and Predicate Logic Program.
WSMX Execution Semantics Executable Software Specification Eyal Oren DERI
School of Computing and Mathematics, University of Huddersfield CIA2326: Week 11 LECTURE: Formal Specification TUTORIAL/PRACTICAL: Finish off last weeks.
1 Introduction to Software Engineering Lecture 1.
VDM++ Tutorial Model Quality. Overview Introduction Assessing internal consistency Assessing external consistency.
Deriving Operational Software Specification from System Goals Xin Bai EEL 5881 Course Fall, 2003.
Week III  Recap from Last Week Review Classes Review Domain Model for EU-Bid & EU-Lease Aggregation Example (Reservation) Attribute Properties.
Christoph F. Eick University of Houston Organization 1. What are Ontologies? 2. What are they good for? 3. Ontologies and.
Formal Methods.
Of 33 lecture 1: introduction. of 33 the semantic web vision today’s web (1) web content – for human consumption (no structural information) people search.
Winter 2011SEG Chapter 11 Chapter 1 (Part 1) Review from previous courses Subject 1: The Software Development Process.
Formal Specification: a Roadmap Axel van Lamsweerde published on ICSE (International Conference on Software Engineering) Jing Ai 10/28/2003.
Robust Planning using Constraint Satisfaction Techniques Daniel Buettner and Berthe Y. Choueiry Constraint Systems Laboratory Department of Computer Science.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Requirement Analysis SOFTWARE ENGINEERING. What are Requirements? Expression of desired behavior Deals with objects or entities, the states they can be.
Lectures 2 & 3: Software Process Models Neelam Gupta.
CSC3315 (Spring 2009)1 CSC 3315 Languages & Compilers Hamid Harroud School of Science and Engineering, Akhawayn University
The PLA Model: On the Combination of Product-Line Analyses 강태준.
Defects of UML Yang Yichuan. For the Presentation Something you know Instead of lots of new stuff. Cases Instead of Concepts. Methodology instead of the.
WP4 Models and Contents Quality Assessment
Definition CASE tools are software systems that are intended to provide automated support for routine activities in the software process such as editing.
Concepts used for Analysis and Design
BASICS OF SOFTWARE TESTING Chapter 1. Topics to be covered 1. Humans and errors, 2. Testing and Debugging, 3. Software Quality- Correctness Reliability.
Object Oriented Analysis and Design
ece 627 intelligent web: ontology and beyond
Department of Computer Science Abdul Wali Khan University Mardan
Dept. of Computation, UMIST
Presentation transcript:

Knowledge and Systems Research Group, University of Huddersfield B vs OCL: Comparing Specification Languages for Planning Domains Diane Kitchin, Lee McCluskey, Margaret West TALK to be given by: Ron Simpson Knowledge and Software Systems Research Group, The University of Huddersfield

Knowledge and Systems Research Group, University of Huddersfield Formal Software Specification Languages Artificial Intelligence Planning Domain Model Languages Process/ Systems/ Requirements Modelling Languages CSP Petri Nets Z BVDM UML SSADM PDDL OCL h Declarative/ Descriptive Languages SE AI

Knowledge and Systems Research Group, University of Huddersfield Formal Specification Languages (eg B) are ‘close’ to Planning Domain Model Languages (eg OCL h ) They share: the concept of a `state' the technique of using pre and post conditions in state transformation, via operations to specify state dynamics the assumptions of closed world, default persistence and instantaneous operator execution the presence of state invariants for validity and documentation purposes.

Knowledge and Systems Research Group, University of Huddersfield Capturing domain knowledge very accurately.. the need: Real Planning Applications now exist in safety- related areas: Space mission control Military resource control Robot control - among many other implications (!) there is a need to establish and maintain highly accurate domain knowledge

Knowledge and Systems Research Group, University of Huddersfield Accurate domain knowledge.. How? Our current method using GIPO: Knowledge Sources Operational Domain Model Knowledge Formulation Validation Processes GIPO OCL h

Knowledge and Systems Research Group, University of Huddersfield Accurate domain knowledge.. How? Method using a FSL: Knowledge Sources Formal Specification Operational Domain Model Knowledge Formulation Validation and Translation

Knowledge and Systems Research Group, University of Huddersfield Accurate domain knowledge.. How? FSL = ‘B’, Tool = B-Toolkit Knowledge Sources Formal Specification Operational Domain Model Knowledge Formulation Validation and Translation ‘BToolkit’ B

Knowledge and Systems Research Group, University of Huddersfield Paper content: Compare GIPO to B- Toolkit ( OCL h vs B) Both GIPO and B-Toolkit are tools environments that provide tools for the capture and debugging of formal models The B method is of industrial-strength and while the B-Toolkit is commercially available, GIPO is a research tool

Knowledge and Systems Research Group, University of Huddersfield Simple Comparison Method Take some typical worlds which have been represented in OCL h using GIPO (Blocks World, Tyre World). Re-formulate them using the B-Toolkit. Compare the Process and Result of the formulation.

Knowledge and Systems Research Group, University of Huddersfield Domain Model Formulation in OCL h : GIPO. GIPO contains  domain model editors  basic static analysis checking tools. is object class hierarchy consistent? do object state descriptions satisfy invariants? are predicate structures and operator schema mutually consistent? are task specifications consistent with the domain model?  a plan stepper  a reachability analyser  solution animator  a random task generator  hierarchy consistency check  operator learning mechanism Acquisition of Objects/ Classes /Invariants Operator Acquisition Static Analysis Tools More Static Analysis Solving simple tasks using The Plan Stepper Solving more complex Tasks with Planners

Knowledge and Systems Research Group, University of Huddersfield GIPO’s GUI

Knowledge and Systems Research Group, University of Huddersfield Domain Model Formulation in B: B-Toolkit Define a set of abstract machines To define each machine, define its variables, its invariant, its initialisation and operations e.g. MACHINE: Blocks_World SETS: Block, Gripper VARIABLES: On_Block, On_Table, Gripped, Free

Knowledge and Systems Research Group, University of Huddersfield B-Toolkit Animator

Knowledge and Systems Research Group, University of Huddersfield Domain Model Formulation in B: Language Comparison

Knowledge and Systems Research Group, University of Huddersfield Domain Model Formulation in B: B-Toolkit Generate and Discharge ‘Proof Obligations’ A set of proof obligations involving consistency properties of a system can be automatically generated by the B-Tool. e.g.: (1) Consistency of initialisation: the initialisation must establish the invariant. (2) Consistency of operation: each operation must preserve the invariant. Execute (Animate) Operations

Knowledge and Systems Research Group, University of Huddersfield

Discharged Proof Obligation

Knowledge and Systems Research Group, University of Huddersfield General Results - 1 B allows the user to encode more precise details about the relations in the domain than GIPO - they can be relations, 1-1 functions etc, and can be given accurate restrictions. This level of precision is certainly not available in most planning languages, and is attractive in safety-related applications. As OCL h is aimed specifically at planning, it has in-built structures and mechanisms that anticipate the entities that are to be represented. This makes the encoding rather more compact than the B specification. Encoding in B, as one would expect from a general language, one is left with more choices and decisions in the encoding process.

Knowledge and Systems Research Group, University of Huddersfield General Results -2 Both languages assume default persistence and a closed world. The differences in this respect are subtle, in that in B a variable involved in a precondition remains unaltered by default. However in OCL h there is a local open-world assumption in operator descriptions - a `prevail' is required if precondition variables are unchanged. Regarding validation and debugging, both GIPO and the B-Toolkit provide effective, automated tool support which performs validation/consistency checks and identifies the presence of bugs. Not surprisingly, the B-Toolkit was more reliable at finding inconsistencies in some cases, as it demands a more detailed specification, and the tool is more developed.

Knowledge and Systems Research Group, University of Huddersfield Conclusions The comparison shows a remarkable similarity between the two languages and tool functions. The advantages in using a method such as B are that - it is mathematically based so that formal reasoning can be used to deduce desirable (and potentially undesirable) properties. - support for the method is available via tools - such as the Toolkit. However, the disadvantages are that - there are no special planning - oriented features, - the B specification, once validated, would have to be translated into a more planner-friendly language in order to be used with current planning engines. FUTURE WORK: - build a B -> OCL translator - try out B on a complex planning world