ontology, software development and web services for timetabling

40
Ontology, Software Development and Web Services for Timetabling CoffTea(m) KaHo Sint-Lieven

Upload: lyneth

Post on 13-Jan-2016

24 views

Category:

Documents


0 download

DESCRIPTION

Ontology, Software Development and Web Services for Timetabling. CoffTea(m) KaHo Sint-Lieven. Overview. Overview. Overview. Presentation COALA & COFFTEA Purpose of COFFTEA Timetabling Ontologies Web Services Applications. Overview. COALA & COFFTEA. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Ontology, Software Development and Web Services for Timetabling

Ontology, Software Development and Web Services for Timetabling

CoffTea(m)KaHo Sint-Lieven

Page 2: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

2

Overview

Overv

iew

Page 3: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

3

Overview Presentation COALA & COFFTEA Purpose of COFFTEA Timetabling Ontologies Web Services Applications

Overv

iew

Page 4: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

4

COALA & COFFTEA COALA & COFFTEA are sponsored by the

IWT (=Institute for the Promotion of Innovation by Science and Technology in Flanders) in the framework of the ‘HOBUfonds’.

GOAL: technology exploration, translation, diffusion

Intr

od

uct

ion

Page 5: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

5

Hobufonds

IWTUser committee

Academic Partners

COALA/COFFTE

A project

Public

HO

BU

fon

ds

Page 6: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

6

3-tier model

Aca

dem

ic partn

er

IWT H

obu

fon

ds p

roje

ct

SM

Es

Academic knowledge

“Translate” knowledge

Practical relevance

Feedback, steering

Page 7: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

7

COALA & COFFTEA Team members

Patrick De Causmaecker (project leader) Greet Vanden Berghe (project supervisor) Philippe De Pauw-Waterschoot / Yang Lu Peter Demeester

More info http://project.kahosl.be/coala http://project.kahosl.be/cofftea

Intr

od

uct

ion

Page 8: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

8

Presentation

COALACOALA De Clercq Engineering MediaGeniX Nimble TNI Universiteit Maastricht University of

Nottingham

COFFTEACOFFTEA De Clercq

Engineering MediaGeniX Nimble Impakt Universiteit

Maastricht University of

Nottingham

User Committee & Academic Partners

CO

ALA

& C

OFF

TE

A

Page 9: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

9

COALA (°1/11/1999-†31/10/2001)

COoperating And Learning Agents Originally about:

Ontology for planning systems Learning agents

Moved during the project to the Semantic Web (at that time brand new)

Semantic Web: combination of technologies in which we are interested Agents (Semantic Web is the natural habitat) Ontology

CO

ALA

Page 10: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

10

CoffTea (°1/11/2001-†31/10/2003)

COmponent Framework For TimEtAbling GOAL (taken from the original project

proposal):Offer planners better insight in: needs of planning practice the opportunities of component based

software development regarding timetabling How software will function with loosely

connected components A component model for timetabling

CO

FFTE

A

Page 11: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

11

Timetabling (definition as given by A. Wren)

“Is the allocation, subject to CONSTRAINTS, of given RESOURCES to objects being placed in space-time, in such a way as to satisfy as nearly as possible a set of desirable OBJECTIVES. Examples are class and examination timetabling and some forms of personnel allocation, for example manning of toll booths subject to a given number of personnel”

CO

FFTE

A

Page 12: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

12

Timetabling in an institute for higher education Extensively studied

PATAT conferences (Springer Verlag) (http://project.kahosl.be/patat2002)

Many practical cases have been described

Mathematical approaches have been studied Meta heuristics (Tabu, SA, GA, EA,…) Constraint programming

Tim

eta

blin

g

Page 13: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

13

Science Authors were personally involved

Implementation Software development

Off the shelf products Not 'powerful' enough Need better algorithms Need to approach the `optimum'

more closely

Tim

eta

blin

g

Page 14: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

14

Market Several products are available Vendor arguments

User friendliness, flexibility and aptness to express complex constraints, both soft and hard

Applying the latest techniques 'Very powerful algorithms', IPR

(legitimate)

Tim

eta

blin

g

Page 15: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

15

Problem

Maximal expressive power

Complete satisfaction of expressed constraintsT

imeta

blin

g

Page 16: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

16

Layer Cake once again

Page 17: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

17

Fourth layer “Ontologies are becoming popular

largely because of what they promise: a shared and common understanding that reaches across people and applications systems” (Fensel et. al.)

2 directions: OIL & DAML Converge to DAML+OIL More info on http://www.daml.org

Onto

log

y

Page 18: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

18

Ontology Part of DAML: DAML-S Ontology for services: dynamic

web sites Agents that want to use services:

description on how service can be used and accessed

Description in DAML

Onto

log

y

Page 19: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

19

Service description with DAML-S

DAML-S is DAML+OIL based web service ontology

Supplies web service providers with a core set of markup language constructs for describing properties & capabilities of their web services

Should facilitate automation of web service tasks: automated web service discovery execution composition interoperation

DA

ML-

S

Page 20: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

20

Service description with DAML-S DAML-S can be regarded as semantics-

based replacement of industry languages for service description (WSDL), service publication (UDDI) and service flow (WSFL): Service profile (describes what the service

does) Service model (describe how the service

works) Service grounding (specifies details on how

an agent can access a service)

DA

ML-

S

Page 21: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

21

Web services DAML-S: academic world Industry (IBM, HP, Microsoft,…): works

also on standards to describe services WSDL, WSFL, UDDI,… Based on available technologies (XML,

SOAP, HTTP, …) Not based on an ontology: lack of

expressiveness, little flexibility, rather for humans than for agents

Web s

erv

ices

Page 22: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

22

Web services Web service provider: offers services Register service: online registry of a

service broker Registry: publishes & locates services Service discovery happens through

standardised taxonomies that describe the functionality of service the service provider how to access & interact with the service

Web s

erv

ices

Page 23: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

23

Web services At the registry human requestor

searches for services By using service description create

a binding for application to invoke with service implementation

Web s

erv

ices

Page 24: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

24

IBM Web Service Architecture

Service Discovery

Service Publication

Service Description

XML-Based Messaging

Network Protocols

Service FlowS

ecu

rity

Man

ag

em

en

t

Quality

of S

erv

ice

WSFL

Static -> UDDI

Direct -> UDDI

WSDL

SOAP

HTTP, FTP, email etc.

Page 25: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

25

IBM Web Service Architecture A service can be described, discovered

and invoked using standard XML technologies such as WSDL, UDDI and SOAP

I.o.w: XML can be used for businesses to agree on what to talk to each other, SOAP can be used to determine how they speak to each other, and UDDI will be used for businesses to determine to whom they should talk to and where they can find other businesses.

Web s

erv

ices

Page 26: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

26

IBM Web Service Architecture Simple Object Access Protocol: model for

simple request and response messages written in XML. Often modelled as platform-neutral remote procedure call mechanism

Web Services Description Language: XML vocabulary that organizes the technical details required for automatic integration at the programming level. Describes the implementation details for those who want to talk to the service.

Web s

erv

ices

Page 27: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

27

IBM Web Service Architecture Universal Description, Discovery and

Integration: specification that describes a service registry of available web services (kind of electronic “yellow pages”).

Web Services Flow Language: defines workflows composed of web services and composes web services from lower-level workflows. This is the newest of the web services technologies.

Web s

erv

ices

Page 28: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

28

.Net architecture “An open language platform for

enterprise and Web development” 6 layers:

Web services Frameworks and libraries: ASP.NET (active

server pages for web pages and services); ADO.NET (databases and object-relational processing); Windows Forms (graphics)

Interchange standards: XML-based, platform-independent exchanging of objects

.NET

Page 29: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

29

.Net architecture Development environment: common software

development environment offering facilities for development, compilation, browsing and debugging

Component model: build assemblies (consist of number of classes with well-defined interfaces)

Object model: provides conceptual basis Common language runtime: provides basic

set of mechanisms for executing .NET programs

.NET

Page 30: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

30

.NET

Common language runtime

Object model and common language specification

Component model

Interchange standards: SOAP,

WSDL

Frameworks and libraries: ASP.NET, ADO.NET, Windows Forms

Web services

Common development tools: Visual Studio.Net

.NET

Page 31: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

31

Application of the Semantic Web in timetabling context Most obvious: use XML as a format or

language to represent instances of a timetable

Burke et. al. propose requirements which should be fulfilled to talk about a standard data format for timetabling: General (express all kinds) Complete (express in full detail) Accessible (easy to translate to and from)

Low

er

levels

Page 32: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

32

Application of the Semantic Web in Timetabling context XML can be used to accomplish this Construct a good DTD Call it Timetabling Markup Language

(TML) To convert from one format to

another: Use DOM XSL-T

Low

er

levels

Page 33: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

33

Application of the Semantic Web in Timetabling context Constructing an ontology for timetabling Why? Better understanding of the problem Opportunity for integrating separate

timetabling systems: Map existing timetabling systems to this ontology Starting point for newly developed ontologies

Through mapping concepts can be translated

Hig

her

levels

Page 34: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

34

Application of the Semantic Web in Timetabling context Starting point: upper level ontology

(based on OZONE) 5 central concepts:

ACTIVITY CONSTRAINT DEMAND PRODUCT or DEMAND OBJECTIVE RESOURCE

Hig

her

levels

Page 35: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

35

Top-level ontology (based on OZONE)

ACTIVITY

RESOURCE

DEMAND

CONSTRAINT

restricts

produces

satisfies

imposes

requires

imposes

PRODUCT

Page 36: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

36

Resource ontology The following picture (in UML)

shows how a resources ontology could be constructed for our polytechnic

Resource-Type Resource-Structure

Discrete State Resource Capacitated Resource Atomic Resource Aggregate Resource

Consumable Resource Reusable Resource Unit-Capacity Resource

Batch Capacity Resource

Homogeneous Resource Pool Heterogeneous Resource Pool

Simple Capaci ty Pool Structured Capacity Pool

Pool of large lecture rooms

Lecture room0..*

Office

Teacher

Teaching Unit

0..*

Lab Assistant

0..*

0..*

0..*

0..*

Page 37: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

37

Timetabling Ontology Concepts + relations Express ontology in a mark-up

language Can be used on Semantic Web Agents can “understand”

documents based on this ontology

Onto

log

y

Page 38: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

38

COFFTEA Project: building a timetabling

application based on loosely coupled components working together

Idea: develop different components that will be published as web services

Is it a convenient way to build timetabling applications?

What about system deployment?

CO

FFTE

A

Page 39: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

39

COFFTEA Open system Users can recombine web services

and define new ones? Applications can call components

through SOAP Other possibilities: CORBA,

J2EE, .NET?

CO

FFTE

A

Page 40: Ontology, Software Development and Web Services for Timetabling

6-3-2002 Semantic Web and Applications 2002

40

Questions?