Collaborative Modelling Using Ontologies


by Peter Hale - Date: 2007-03-30 - Word Count: 2232 Share This!

The main area of study for this research is the enabling of users such as engineers to model the problems they encounter in manufacturing and design. However the wider aim is to prototype research for enabling a much larger range of software users to model their problems. The intention is to create collaborative tools that allow users to develop software in a way they will be familiar with from their use of spreadsheets. Sternemann and Zelm (1999) explained that even then it had become necessary to research collaborative modelling and visualization tools, because of the business trend towards global markets and decentralised organisation structures. To achieve this, Semantic Web tools would be used that represent the information to be shared in an open standard way. Cheung et al (2007) explain the necessity for collaboration tools to support early stage product development within networked enterprises. The system should consist of applications to be combined in order to represent a layered architecture of:-

Database - ontology engine - ontology visualizer - calculation engine - inputs visualizer - results visualizer

The aim is to ensure ease of development and use of the software system by using applications that operate at one or more levels in a conceptual hierarchy, while still being able to communicate with the layers above and below in the hierarchy, and with other applications. McGuinness (2003) writes about how ease of use via conceptual modelling support and graphical browsing tools is essential if systems are to be usable for mainstream use. To facilitate this, open standard tools are used and communication tested within the overall system. The communication mechanism should be invisible to the end user who cannot be expected to consider such matters. This communication would involve large amounts of related information being translated and passed on in its entirety rather than just individual objects or messages. The intention for this main prototype is to facilitate full communication between software applications and so make it easier for engineers and others to collaborate and co-ordinate their product design and manufacture.

This system would manage software to be used in the following areas - Knowledge Management, Decision support, and Simulation. The system will provide automated translation from a model provided by the user, or by other systems into the software, ontology, and database representation. Any required calculations would then be made and translated to provide a model that can be interpreted by users. Johnson (2004) explains that successful interaction requires mapping between levels of abstractions and that translation between the levels of abstraction required by users and computers is difficult. He explains that this problem often means systems are created that make the user cope with the problems of this mis-translation. The research is intended to solve this problem by giving users more involvement in the translation process by letting them interactively model the problem themselves until they are satisfied with the solution. This allows the user to establish "common ground" with the computer, an expression used by Johnson. Nurminen et al (2003) evaluate a system called NICAD that used calculation rules in this manner. Nurminen et al emphasize that successful expert systems have in common that they put user needs at the centre of a fast and agile development process. The authors explain that users prefer usability over automation, and that users should drive the more difficult tasks where they are needed and leave routine tasks to the system. As well as translating between the user and computer systems it is necessary to provide translations between different computer systems. Ciocoiu et al (2000) make the point that as it becomes necessary to translate between more systems the number of paths for the translation increases exponentially. To improve interoperability it is therefore necessary to provide either a translator or multiple translators, and the translators would be based on taxonomies or ontologies.

The basis of this research is an ontology that can be visualized and edited in tree form. Gruber (1993a) defines and ontology - "An ontology is an explicit specification of a conceptualization. The term is borrowed from philosophy, where an Ontology is a systematic account of existence. For AI systems, what 'exists' is that which can be represented." Gruber goes on to explain design criteria for ontologies. Fensel et al (2001) explain Grubers' ontology definition. They explain that conceptualization refers to an abstract model of a phenomenon in the real world which identifies its relevant concepts. Explicit means the types of concepts and the constraints are explicitly defined. Fensel et al cite another Gruber paper where Gruber (1993b) defines the ontology as a formal explicit specification, and explains that formal means the ontology should be machine understandable. Cheung et al (2005) cite Davies et al (2002) in explaining that ontologies "provide a shared and common understanding of a domain that can be communicated between people and application systems". McGuinness (2003) explains with the aid of a diagram the level of definition in ontologies, from purely human readable to machine readable. A similar diagram with more specific computing technologies is included in Uscholds' presentation (2006) and his paper of 2003 which shows a continuum

Implicit - Informal (explicit) - Formal (for humans) - Formal (for machines)

Uschold states that "there is nothing inherently good about being further along the semantic continuum. In some cases there will be advantages; in other cases there will not. What is good is what works." In my research I have tended to move from left to right towards more formal representations but only as necessary to ensure the modelling approach works. Horrocks (2002) explains that "An ontology typically consists of a hierarchical description of important concepts in a domain, along with descriptions of the properties of each concept. The degree of formality employed in capturing these descriptions can be quite variable, ranging from natural language to logical formalisms, but increased formality and regularity clearly facilitates machine understanding."

The ontology created in Protégé for this research has formal definitions of is-a relationships, and formal instances. Therefore it is much more machine readable than those at the human readable only end of the ontology scale. In fact it is tested as machine readable by the automated conversion process from the Protégé representation to the decision support modelling system used for calculations. The decision support system can be made to read hierarchical trees from Protégé and it can split or combine these trees or branches as needed for the model being used, and in response to decisions made by the user. Logical constraints are informal and failures are caught by the modelling tool which will flag any illogical expressions. It would be better to represent such logical constraints in the ontology also, as is done in the most rigorous machine readable ontologies, this was not finished due to time constraints and because it was not necessary for validation of the concept.

In this research I attempt to take a problem, break it down into sub parts that can be represented by a number or equation, and then allow the user to see and interact with the whole solution as applicable to this persons' defined problem. Gruber examines how equations and quantities can be represented in an ontology. To achieve this I have investigated and/or created tools to allow visualization and interaction with models. This approach has also been taken by Crapo et al (2002) who explain "Models are artefacts used to understand our world. As such they are embedded in intelligent systems as representations of knowledge. In the context of mining data to create knowledge, the modeler is often faced with discovering and understanding relationships in data that have no apparent analog in the laws of physical science. Sketches and diagrams as aids in problem solving and as a means of communication are as old as recorded history. The question now is: Can visualization help us not only to discover the patterns and relationships in these data but also to use newly discovered knowledge to build computational models." Eng and Salustri (2006) discuss the role of computers in aiding decision making, and explain that human mind is the best tool for making decisions. They explain that visualization systems must help the user use the information access capabilities of computers. So the task is to enable the creation and sharing of these visualizations in all ways that can aid in the understanding of the problems to be modelled.

Cheung et al (2005) explain that ontologies until recently have been predominately applied in the medical informatics field. Linking ontologies with modelling tools will also make ontologies very useful, in engineering and science, and mathematics whenever calculations are required. The open standard Stanford University (2007) ontology management tool Protégé has been used for this purpose, although there are other ontology tools that could have been used. This ontology can be translated into a Decision Support tool called Vanguard Studio. Vanguard (2007) are creating a modelling network where universities can share decision support models over a network.

Meta Programming, ontologies, and the Semantic Web

Uschold (2003) defines the Semantic Web as being machine usable and associated with more meaning. Semantic web technologies and the use of agents and ontologies are explained by Hendler (2001), Horrocks (2002), and Uschold (2003) who explains that "In order to carry out their required tasks, intelligent agents must communicate and understand meaning". Horrocks explain the use of meta-data annotations and how they can make resources accessible to agents. Meta programming is the writing of programs that write or manipulate other programs (or themselves) as their data. The idea behind the use of this technique is that instead of writing programs to do a task a domain expert needs the program for, the meta program developer creates an environment which all domain experts, in this and similar fields, can use to create their own solutions. The developer then only needs to maintain and improve this programming environment, and can concentrate on this task; the domain expert can concentrate on solving the problem at hand without having to ask the developer to create the code on his or her behalf. This can prevent problems of misunderstanding, delay, and expense that often result from communication of difficult concepts between people who are experts in different areas (domain expert and programming expert).

Meta programming is writing of programs by other programs. The purpose of this is to provide a cascading series of layers that translate a relatively easy to use visual representation of a problem to be modelled, into code that can be run by present day compilers and interpreters. This is to make it easier for computer literate non-programmers to specify instructions to a computer, without learning and writing code in computer languages. To achieve this, any layer of software or information must be able to read the code or the information represented in any other. Code and information are only separated out as a matter of design choice to aid human comprehension, they can be represented in the same way using the same kinds of open standard languages. Meta-programming can be used as a tool to produce software for linking ontologies, Semantic Web, modelling, and visualization.

References

Cheung, W. M., Maropoulos, P. G., Gao, J. X., Aziz, H., 2005. Ontological Approach for Organisational Knowledge Re-use in Product Developing Environments. In: 11th International Conference on Concurrent Enterprising - ICE 2005, University BW Munich, Germany.

Cheung, W. M., Matthews, P. C., Gao, J. X., Maropoulos, P. G., 2007. Advanced product development integration architecture: an out-of-box solution to support distributed production networks. International Journal of Production Research March 2007.

Ciocoiu, M., Gruninger, M., Nau, D. S., 2000. Ontologies for Integrating Engineering Applications. Journal of Computing and Information Science in Engineering, 1(1) pp 12-22.

Crapo, A. W., Waisel, L. B., Wallace, W. A., Willemain, T. R., 2002. Visualization and Modelling for Intelligent Systems. In: C. T. Leondes, ed. Intelligent Systems: Technology and Applications, Volume I Implementation Techniques, 2002 pp 53-85.

Eng, N., Salustri, F. A., 2006. "Rugplot" Visualization for Preliminary Design. In: CDEN 2006 3rd CDEN/RCCI International Design Conference University of Toronto, Ontario, Canada.

Fensel, D. Van Harmelen, F. Horrocks, I. McGuinness, D. Patel-Schneider, P. F., 2001. OIL: An ontology infrastructure for the semantic web. IEEE Intelligent Systems, 16(2), pp 38-45.

Gruber, T. R. 1993. Toward Principles for the Design of Ontologies Used for Knowledge Sharing. In: N. Guarino and R. Poli, ed. Formal Ontology in conceptual Analysis and Knowledge Representation. Kluwer Academic Publishers.

Gruber, T.R. 1993. A Translation Approach to Portable Ontology Specifications, Knowledge Acquisition, vol 5 pp 199-220.

Hendler, J., 2001. Agents and the Semantic Web. IEEE Intelligent Systems Journal.

Horrocks, I., 2002. DAML+OIL: a Reason-able Web Ontology Language. In: proceedings of the Eighth Conference on Extending Database Technology (EDBT 2002) March 24-28 2002, Prague.

Johnson, P., 2004. Interactions, Collaborations and breakdowns. In: ACM International Conference Proceeding Series; Proceedings of the 3rd annual conference on Task models and diagrams Vol 86 Prague, Czech Republic.

McGuinness D. L., 2003. Ontologies Come of Age. In: Dieter Fensel, Jim Hendler, Henry Lieberman, and Wolfgang Wahlster, ed. Spinning the Semantic Web: Bringing the World Wide Web to Its Full Potential. MIT Press, 2003.

Nurminen, J. K., Karaonen, O., Hatonen, K., 2003. What makes expert systems survive over 10 years-empirical evaluation of several engineering applications. Expert Systems with Applications 24(2) pp 199-211.

Stanford University, 2007. Welcome to protégé http://protege.stanford.edu/

Sternemann, K. H., Zelm, M., 1999. Context sensitive provision and visualisation of enterprise information with a hypermedia based system, Computers in Industry Vol 40 (2) pp 173-184.

Uschold, M., 2003. Where are the semantics in the semantic web? AI Magazine Vol 24 (3) pp 25-36.

Vanguard Studio, 2007. Vanguard Studio http://www.vanguardsw.com/products/vanguard-studio/


Related Tags: modelling, semantic web, collaborative, interoperability, meta programming, ontologies, meta data

I am developing a project to provide free online collaborative modelling tools.

My Research - http://www.cems.uwe.ac.uk/~phale/

Examples - http://www.cems.uwe.ac.uk/~phale/InteractiveSVGExamples.htm

Semantic Web Modelling - http://www.cems.uwe.ac.uk/amrc/seeds/ModellingSemanticWeb.htm

I am a Researcher in the final year of my PhD. I specialise in applying Semantic Web techniques. My current research is on a technique of 'User Driven Modelling/Programming'. My intention is to enable non-programmers to create software from a user interface that allows them to model a particular problem or scenario. This involves a user entering information visually in the form of a tree diagram. I am attempting to develop ways of automatically translating this information into program code in a variety of computer languages. This is very important and useful for many employees that have insufficient time to learn programming languages. I am looking to research visualisation, and visualisation techniques to create a human computer interface that allows non experts to create software.

Your Article Search Directory : Find in Articles

© The article above is copyrighted by it's author. You're allowed to distribute this work according to the Creative Commons Attribution-NoDerivs license.
 

Recent articles in this category:



Most viewed articles in this category: