1,432 research outputs found

    Reusable Knowledge-based Components for Building Software Applications: A Knowledge Modelling Approach

    Get PDF
    In computer science, different types of reusable components for building software applications were proposed as a direct consequence of the emergence of new software programming paradigms. The success of these components for building applications depends on factors such as the flexibility in their combination or the facility for their selection in centralised or distributed environments such as internet. In this article, we propose a general type of reusable component, called primitive of representation, inspired by a knowledge-based approach that can promote reusability. The proposal can be understood as a generalisation of existing partial solutions that is applicable to both software and knowledge engineering for the development of hybrid applications that integrate conventional and knowledge based techniques. The article presents the structure and use of the component and describes our recent experience in the development of real-world applications based on this approach

    Using hierarchical constraint satisfaction for lathe-tool selection in a CIM environment

    Get PDF
    In this paper we shall discuss how to treat the automatic selection of appropriate lathe tools in a computer-aided production planning (CAPP) application as a constraint satisfaction problem (CSP) over hierarchically structured finite domains. Conceptually it is straightforward to formulate lathe-tool selection in terms of a CSP, however the choice of constraint and domain representations and of the order in which the constraints are applied is nontrivial if a computationally tractable system design is to be achieved. Since the domains appearing in technical applications often can be modeled as a hierarchy, we investigate how constraint satisfaction algorithms can make use of this hierarchical structure. Moreover, many real-life problems are formulated in a way that no optimal solution can be found which satisfies all the given constraints. Therefore, in order to bring AI technology into real-world applications, it becomes very important to be able to cope with conflicting constraints and to relax the given CSP until a (suboptimal) solution can be found. For these reasons, the constraint system CONTAX has been developed, which incorporates an extended hierarchical arc-consistency algorithm together with discrete constraint relaxation and has been used to implement the lathe-tool selection module of the ARC-TEC planning system

    Bridging the Gap between Object-oriented and Logic Programming

    Get PDF
    A description is given of an interface that was developed between Loops and Xerox Quintus Prolog. Loops is an extension to the Xerox AI environment to support object-oriented programming; Xerox Quintus Prolog is a version of Prolog that runs on Xerox Lisp machines. Such a bridge enables all the support tools of both environments to be accessed, and degradation of performance that occurs when one language is implemented top of another is avoided. The interface has three layers. At the lowest level, a set of Prolog predicates gives the Prolog programmer access to Loops objects. This lowest level is the bridge from Prolog to Loops. At the next level, programming tools in the Loops environment let object methods be defined in Prolog. At the highest level, the Prolog programmer can treat Prolog clauses as Loops objects that can be manipulated outside the Prolog database. Each layer can be used independently

    A requirements specification for a software design support system

    Get PDF
    Most existing software design systems (SDSS) support the use of only a single design methodology. A good SDSS should support a wide variety of design methods and languages including structured design, object-oriented design, and finite state machines. It might seem that a multiparadigm SDSS would be expensive in both time and money to construct. However, it is proposed that instead an extensible SDSS that directly implements only minimal database and graphical facilities be constructed. In particular, it should not directly implement tools to faciliate language definition and analysis. It is believed that such a system could be rapidly developed and put into limited production use, with the experience gained used to refine and evolve the systems over time

    COLAB : a hybrid knowledge representation and compilation laboratory

    Get PDF
    Knowledge bases for real-world domains such as mechanical engineering require expressive and efficient representation and processing tools. We pursue a declarative-compilative approach to knowledge engineering. While Horn logic (as implemented in PROLOG) is well-suited for representing relational clauses, other kinds of declarative knowledge call for hybrid extensions: functional dependencies and higher-order knowledge should be modeled directly. Forward (bottom-up) reasoning should be integrated with backward (top-down) reasoning. Constraint propagation should be used wherever possible instead of search-intensive resolution. Taxonomic knowledge should be classified into an intuitive subsumption hierarchy. Our LISP-based tools provide direct translators of these declarative representations into abstract machines such as an extended Warren Abstract Machine (WAM) and specialized inference engines that are interfaced to each other. More importantly, we provide source-to-source transformers between various knowledge types, both for user convenience and machine efficiency. These formalisms with their translators and transformers have been developed as part of COLAB, a compilation laboratory for studying what we call, respectively, "vertical\u27; and "horizontal\u27; compilation of knowledge, as well as for exploring the synergetic collaboration of the knowledge representation formalisms. A case study in the realm of mechanical engineering has been an important driving force behind the development of COLAB. It will be used as the source of examples throughout the paper when discussing the enhanced formalisms, the hybrid representation architecture, and the compilers

    Object-oriented data modeling

    Full text link
    The object-oriented paradigm models local behavior, and to a lesser extent, the structure of a problem. Semantic data models describe structure and semantics. This thesis unifies the behavioral focus of the object-oriented paradigm with the structural and semantic focus of semantic data models. The approach contains expressive abstractions to model static and derived data, semantics, and behavior. The abstractions keep the data model closer to the problem domain, and can be translated into a relational (or other) implementation. The paper makes six contributions. First, a comprehensive set of data structuring abstractions are described. Second, the abstractions are compared to the entity-relationship and relational models. Third, semantic information inherent in the functional representation of the abstractions is identified. Fourth, a set of behavioral abstractions are described. Fifth, an algorithm that describes the dynamics between mathematically derived attributes of cooperating objects is presented. Sixth, weaknesses of object-oriented programming languages are identified

    Building a decision support system with a knowledge modeling tool

    Get PDF
    Knowledge modeling tools are software tools that follow a modeling approach to help developers in building a knowledge-based system. The purpose of this article is to show the advantages of using this type of tools in the development of complex knowledge-based decision support systems. In order to do so, the article describes the development of a system called SAIDA in the domain of hydrology with the help of the KSM modeling tool. SAIDA operates on real-time receiving data recorded by sensors (rainfall, water levels, flows, etc.). It follows a multi-agent architecture to interpret the data, predict the future behavior and recommend control actions. The system includes an advanced knowledge based architecture with multiple symbolic representation. KSM was especially useful to design and implement the complex knowledge based architecture in an efficient way

    Using Knowledge Modelling Tools for Agent-Based Systems: The Experience of KSM

    Get PDF
    The aim of this chapter is to discuss the applicability of recently proposed knowledge modelling tools to the development of agent-based systems. The discussion is derived from the real world experience of a particular software tool called KSM (Knowledge Structure Manager). The chapter provides details about this tool and then proceeds to show in which forms the software may be used to support the development of agent-based systems. Two multiagent systems, one in the field of telecommunications management and the other one in the field of flood control, are described. Conclusions about these studies are presented, summarizing the main contributions that knowledge modelling tools can bring to the development of agent-based systems
    • …
    corecore