400 likes | 508 Views
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.
E N D
Ontology, Software Development and Web Services for Timetabling CoffTea(m)KaHo Sint-Lieven
Overview Overview Semantic Web and Applications 2002
Overview • Presentation COALA & COFFTEA • Purpose of COFFTEA • Timetabling • Ontologies • Web Services • Applications Overview Semantic Web and Applications 2002
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 Introduction Semantic Web and Applications 2002
Hobufonds User committee IWT Academic Partners COALA/COFFTEA project HOBUfonds Public Semantic Web and Applications 2002
3-tier model Practical relevance Feedback, steering SMEs IWT Hobufonds project Academic partner Academic knowledge “Translate” knowledge Semantic Web and Applications 2002
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 Introduction Semantic Web and Applications 2002
COALA De Clercq Engineering MediaGeniX Nimble TNI Universiteit Maastricht University of Nottingham COFFTEA De Clercq Engineering MediaGeniX Nimble Impakt Universiteit Maastricht University of Nottingham Presentation User Committee & Academic Partners COALA & COFFTEA Semantic Web and Applications 2002
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 COALA Semantic Web and Applications 2002
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 COFFTEA Semantic Web and Applications 2002
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” COFFTEA Semantic Web and Applications 2002
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 Timetabling Semantic Web and Applications 2002
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 Timetabling Semantic Web and Applications 2002
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) Timetabling Semantic Web and Applications 2002
Problem Maximal expressive power Complete satisfaction of expressed constraints Timetabling Semantic Web and Applications 2002
Layer Cake once again Semantic Web and Applications 2002
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 Ontology Semantic Web and Applications 2002
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 Ontology Semantic Web and Applications 2002
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 DAML-S Semantic Web and Applications 2002
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) DAML-S Semantic Web and Applications 2002
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 services Semantic Web and Applications 2002
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 services Semantic Web and Applications 2002
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 services Semantic Web and Applications 2002
IBM Web Service Architecture Service Flow Service Discovery Service Publication Security Management Quality of Service Service Description XML-Based Messaging Network Protocols Semantic Web and Applications 2002
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 services Semantic Web and Applications 2002
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 services Semantic Web and Applications 2002
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 services Semantic Web and Applications 2002
.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 Semantic Web and Applications 2002
.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 Semantic Web and Applications 2002
.NET Web services Frameworks and libraries: ASP.NET, ADO.NET, Windows Forms Interchange standards: SOAP, WSDL Common development tools: Visual Studio.Net .NET Component model Object model and common language specification Common language runtime Semantic Web and Applications 2002
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) Lower levels Semantic Web and Applications 2002
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 Lower levels Semantic Web and Applications 2002
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 Higher levels Semantic Web and Applications 2002
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 Higher levels Semantic Web and Applications 2002
Top-level ontology (based on OZONE) produces PRODUCT ACTIVITY restricts imposes requires CONSTRAINT satisfies imposes RESOURCE DEMAND Semantic Web and Applications 2002
Resource ontology • The following picture (in UML) shows how a resources ontology could be constructed for our polytechnic Semantic Web and Applications 2002
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 Ontology Semantic Web and Applications 2002
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? COFFTEA Semantic Web and Applications 2002
COFFTEA • Open system • Users can recombine web services and define new ones? • Applications can call components through SOAP • Other possibilities: CORBA, J2EE, .NET? COFFTEA Semantic Web and Applications 2002
Questions? Semantic Web and Applications 2002