23
1 The company, product and service names used in this web site are for identification purposes only. © Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners. Cognitum Ontorion: Knowledge Representation and Reasoning System

Cognitum Ontorion: Knowledge Representation and Reasoning System

Embed Size (px)

Citation preview

1The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Cognitum Ontorion: Knowledge Representation and Reasoning

System

2The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Motivation

Modern KRR based on the set of W3C OWL/RDF technologies can be seen as a Smart Graph Database

However if extended with certain functionalities it starts to fulfill the definition of Multi Agent System

We can use it for simulations

3The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Multi-Agent & Simulation systems (MASS)

Deductive Reasoning Agents:1. use logic to encode a theory defining the best

action to perform in a given situation,

2. are the “purest” in terms of their formal specification.

Unfortunately:1. the complexity of theorem proofs

2. the boundaries of expressivity

Making deductive reasoning requires the selection of underlying logics

4The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Multi-Agent & Simulation systems (MASS)

“Reactive agent movement” - an era of reactive agent architecture.

The reactive agent movement manifested in the form of requirements for so-called behavior languages

1. Intelligent behavior can be generated without explicit representations of the kind that symbolic AI proposes.

2. Intelligent behavior can be generated without explicit abstract reasoning of the kind that symbolic AI proposes.

3. Intelligence is an emergent property of certain complex systems.

Agent Oriented Programming (AOP), e.g. JADE

Unfortunately: Lack formal foundations => hard to analyze with formal methods and tools.

5The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Multi-Agent & Simulation systems (MASS)

Hybrid Agent Architecture, Attempts to combine the best of symbolic and reactive

architectures.

Two subsystems: (1) a symbolic world model that allows plans to be developed and

decisions made

(2) a reactive engine which is capable of reacting to events without involving complex reasoning.

Ferguson’s “TouringMachines” - three separate control layers: a reactive layer,

a planning layer,

a modelling layer.

The three layers are concurrently-operating, independently-motivated, and activity

6The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Our approach

We present an approach to hybrid agent architecture, which is implemented on top of a scalable Knowledge Representation & Reasoning (KRR) system.

KRR here:1. Allows environment to be described formally

2. A reactive agent system is based on a rule triggering subsystem.

3. Reasoning itself allows for agent synthesis

7The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Our approach

Here, we consider a reactive agent that is able to maintain its state.

This agent has an internal stand-alone data structure, which is typically used to:

record information about the state and history of the environment

and to store a set of all the internal states of an agent.

Agent

see

next

action

Environment

state

8The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

OntorionSmart Knowledge Management System

9The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Ontorion

Ontorion is a Distributed Knowledge Management System that allows semi-natural language to be used to specify and query the knowledge base.

It also has a built-in engine trigger which fires the rules each time if the corresponding knowledge is modified.

By design, Ontorion allows one to build large, scalable solutions for Semantic Web.

The symmetry of the architecture of the cluster provides system scalability and flexibility:

Ontorion can be deployed and executed in a computing cloud environment, where the total number of nodes can be changed on request, depending on user requirements.

10The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

General Ontorion Architecture

Ontorion

nodenodenodenode A

lert

sExt

ern

al

Stre

am

CN

L O

nto

log

y

11The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Controlled Natural Language in FECNL is a subset of natural language with restricted grammar and vocabulary

in order to reduce the ambiguity and complexity inherent in full natural language

Ontology OWL 2 + SWRLControlled Englishin FluentEditor

Controlled English (CE) in Fluent Editoris automatically translated into and from description

logic OWL 2, SWRL

12The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Exmple of ontology in CNL

January is a month and is-in-quarter equal-to 1.February is a month and is-in-quarter equal-to 1.March is a month and is-in-quarter equal-to 1.April is a month and is-in-quarter equal-to 2.May is a month and is-in-quarter equal-to 2.June is a month and is-in-quarter equal-to 2.July is a month and is-in-quarter equal-to 3.August is a month and is-in-quarter equal-to 3.September is a month and is-in-quarter equal-to 3.October is a month and is-in-quarter equal-to 4.November is a month and is-in-quarter equal-to 4.December is a month and is-in-quarter equal-to 4.

Year-2011 is a year.Year-2012 is a year.Year-2013 is a year.Year-2014 is a year.

If X is-inside Y then Y contains X.

Usa is a country.Canada is a country.

California is a place and is-inside Usa.New-York is a place and is-inside Usa.Washington is a place and is-inside Usa.Ontario is a place and is-inside Canada.Quebec is a place and is-inside Canada.

Every chromebook is a computer-type.Every sleekbook is a computer-type.Every laptop is a computer-type.Samsung is a vendor.Toshiba is a vendor.Gateway is a vendor.Lenovo is a vendor.Dell is a vendor.Acer is a vendor.Asus is a vendor.Hp is a vendor.Touchsmart is a family.Satellite is a family.Elitebook is a family.Alienware is a family.Inspiron is a family.Pavilion is a family.Thinkpad is a family.Qosimo is a family.Aspire is a family.Envy is a family.Intel is a cpu-vendor.Amd is a cpu-vendor.Ssd is a disk-type.Hdd is a disk-type.Solid-State-Drive is a disk-type.Flash-Drive is a disk-type.Hard-Drive is a disk-type.The-"windows-8.1" is an os.Chrome-Os is an os.Windows-7 is an os.Windows-8 is an os.

Computer-1 is a laptop.Computer-1 is-produced-by Hp.Computer-1 has-diagonal-in-inches equal-to 15.6.Computer-1 has-cpu-produced-by Intel.Computer-1 has-cpu-model equal-to 'Intel Pentium N3520'.Computer-1 has-ram-in-gb equal-to 4.Computer-1 has-disk-capacity-in-gb equal-to 500.Computer-1 has-disk-type Hdd.Computer-1 has-os The-"windows-8.1".Computer-1 has-color equal-to 'black licorice'.

13The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Ontology of dimentions

Satellite

Computer-1

os

June

January

Acer

Computer-39

Computer-38

Computer-49

Computer-48

Computer-31

Computer-30

Computer-33

Computer-32

Computer-35

Computer-34

Computer-37

Computer-36

Computer-42

Computer-45

Hdd

Computer-47

Computer-46

laptop

Computer-67

New-York

September

May

Computer-7

Year-2011

Computer-8

July

Pavilion

Elitebook

Computer-2

Inspiron

computer-type

February

Touchsmart

December

Computer-41

Intel

Qosimo

Computer-59

Computer-58

cpu-vendor

Lenovo

Computer-51

Computer-50

Computer-53

Computer-52

Computer-55

Computer-54

Computer-57

Computer-56

Computer-44

Computer-77

vendor

Samsung

Computer-9

August

placeyear

"thing"

Computer-4

sleekbook

Asus

Usa

Computer-80

Computer-5

Computer-21

month

Computer-69

Computer-68

Thinkpad

Computer-61

Computer-60Computer-63

Computer-62Computer-65

Computer-64

November

Computer-66

Computer-19

Computer-18

Computer-76

Computer-11

Computer-10

Computer-13

Computer-12

Computer-15

Computer-14

Computer-17Computer-16

Hard-Drive

Flash-Drive

Windows-8

Windows-7

Year-2014

Year-2013

April

Dell

Solid-State-Drive

Hp

disk-type

October

Quebec

Computer-3

Chrome-Os

Ssd

Computer-40

Ontario

Computer-43

Amd

Aspire

Computer-79

Computer-78

"windows-8.1"

Computer-71

Computer-70

Computer-73

Computer-72

Computer-75

Computer-74

California

country

Toshiba

Computer-29

Computer-28

Canada

Washington

Envy

Computer-20

Computer-23

Computer-22

Computer-25

Computer-24

Computer-27

Computer-26

chromebook

March

family

Alienware

Computer-6

Year-2012

Gateway

14The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

The Agent-Move Rule (MASS definition)

A „move” function as a parameter takes a percept which is a result of a reasoning process over the current state of the environment

We consider reasoning as an implementation of the abstract „see” function

A single agent is determined by its state and all the „move” functions that can be ever executed in the context of its state, therefore here, the agent synthesis process, is a process of the assignment of the „move” functions to the single agent-individual.

The body the „move” function determine the specific environment state that allows the system to assign the function to the agent.

If ... then ... execute <? Move(agent, "current-state", message, "expected-message", ()=> {

/* the agent action */ return "new-state"; });?>.

Agent

see

next

action

Environment

state

15The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Non deterministic behaviour

The overall behaviour of MASS is non-deterministic.

This is due to the fact that the concrete run (the MASS run) needs the selection of agent instances made in runtime – and runtime (in opposition to reasoning time) is a part of the reactive model that is non-deterministic by nature.

The non-deterministic selection of choices, often by use of pseudo-random number generators, and the parallel execution of different threads, are required by underlying technologies to provide an efficient computational model.

Therefore, we need to keep in mind, that simulations based on the reactive/hybrid approach are non-deterministic.

In this case, we have to perform a large set of experiments with the same initial state and then use analytical tools and methods to verify the statistical hypothesis.

16The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Experimental Setup

Software Process Simulation Modelling (SPSM) is widely used nowadays to support planning and control during software development.

MA systems play a very important role here as they naturally can be used to simulate social behaviors in the software testing phase.

In our approach, the SPSM is divided into two components: ontology and knowledge modification triggers. In the example given below, the

ontology defines (with CNL) the core concepts such as: competency, task, developer, manager:

We also defined agent-rules by making use of knowledge modification triggers,

Those triggers implement the following scenario: a developer with certain competencies starts to realize a task.

After the task is finished, new knowledge about the task realization process is added, and a “Busy” state is set on the developer.

The second trigger is fired when the task is finished and a “Ready” state is set back.

17The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Experimental Setup

If a wake-up-message has-target a developer and the wake-up-message has-origin the developer and the wake-up-message has-task-realization-query a task-realization-query and the task-realization-query has-origin a task then for the wake-up-message and the developer and the task-realization-query and the task execute <? Move(developer, "Busy", wake_up_message, "WakeUp", ()=> {// modify the status of task KnowledgeInsert(task+" has-status Done.");

// mark the agent state as ready return "Ready"; });

?>.

Cpp-Programming is a competency.Java-Programming is a competency....Task-0 is a task.Task-1 is a task.Task-1 is-dependent-on Task-0.Task-1 requires-competency Cpp-Programming.Task-1 has-estimated-realization-md equal-to 500.Task-2 is a task.Task-2 is-dependent-on Task-1.Task-2 requires-competency Java-Programming.Task-2 has-estimated-realization-md equal-to 500....Anna is a developer .Anna has-competency Cpp-Programming .Anna has-competency Java-Programming .

John is a developer .John has-competency Java-Programming .John has-competency Web-Programming ....

If a task-realization-query requires-competency a competency and a developer has-competency the competency and the task-realization-query has-origin a task then for the task-realization-query and the developer and the task execute <? Move(developer, "Ready", task_realization_query, "Programming", ()=> {// read the realization timevar realizationTime = (from v in Values where v.source==InstanceDL(task) && v.datarole=="have-estimated-realization-md" select v.value). FirstOrDefault(). SetConsistencyLevel(ConsistencyLevel.Quorum). Execute();

// create the wake-up message var msgid = CreateMessage(developer, "WakeUp",task); // delayed (by the realization time) modification // of KB KnowledgeInsertWithDelay( msgid + " is a wake-up-message."+ msgid + " has-origin " + developer + "."+ msgid + " has-task-realization-query " + task_realization_query + "."+ msgid + " has-target "+ developer + ".", int.Parse(realizationTime));

// mark the agent state as busy return "Busy"; });?>.

18The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Trigger the simulation start

If a start-event exists then for the start-event execute <? Once("Lets the simulation start.", ()=> { CreateAgent("Mark","Ready"); CreateAgent("John","Ready"); CreateAgent("Tom","Ready"); CreateAgent("Gabi","Ready"); CreateAgent("Anna","Ready");

KnowledgeInsert("Task-0 has-status Done."); });?>.

Start-Event is a start-event.

19The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

SPSM Simulation Results

20The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Conclusion

1. In this paper, we showed that the Ontorion server is able to execute, maintain and control massive simulations based on a hybrid MASS approach.

2. The resulting MASS fits well into the definition of a Hybrid MASS.

3. An expressive and distinct Ontorion functionality is the ability to encode agent logics in semi-natural language in the interest of a less professional user.

4. We also observed that this allows end users to understand actions taken by an agent, even if a user is not well trained in formal representation systems.

21The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Future work

An agent synthesis benefits from a formal reasoning engine (being a central component of KRR) and is based on an action-selection procedure

22The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Try it!

Ontorion is free of charge for academic institutions and independent researches. For more information, please visit our website available at http://www.conitum.eu/semantics/.

23The company, product and service names used in this web site are for identification purposes only.

© Cognitum 2014. All trademarks and registered trademarks are the property of their respective owners.

Thank you