6,244 research outputs found

    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

    Solving Constraints in Model Transformations

    Full text link
    Constraint programming holds many promises for model driven software development (MDSD). Up to now, constraints have only started to appear in MDSD modeling languages, but have not been properly reflected in model transformation. This paper introduces constraint programming in model transformation, shows how constraint programming integrates with QVT Relations - as a pathway to wide spread use of our approach - and describes the corresponding model transformation engine. In particular, the paper will illustrate the use of constraint programming for the specification of attribute values in target models, and provide a qualitative evaluation of the benefit drawn from constraints integrated with QVT Relations

    A Universal Machine for Biform Theory Graphs

    Full text link
    Broadly speaking, there are two kinds of semantics-aware assistant systems for mathematics: proof assistants express the semantic in logic and emphasize deduction, and computer algebra systems express the semantics in programming languages and emphasize computation. Combining the complementary strengths of both approaches while mending their complementary weaknesses has been an important goal of the mechanized mathematics community for some time. We pick up on the idea of biform theories and interpret it in the MMTt/OMDoc framework which introduced the foundations-as-theories approach, and can thus represent both logics and programming languages as theories. This yields a formal, modular framework of biform theory graphs which mixes specifications and implementations sharing the module system and typing information. We present automated knowledge management work flows that interface to existing specification/programming tools and enable an OpenMath Machine, that operationalizes biform theories, evaluating expressions by exhaustively applying the implementations of the respective operators. We evaluate the new biform framework by adding implementations to the OpenMath standard content dictionaries.Comment: Conferences on Intelligent Computer Mathematics, CICM 2013 The final publication is available at http://link.springer.com

    FV-RAD : a practical framework for rapid application development

    Get PDF
    Estágio realizado na OPT-Optimização e Planeamento de Transportes, S.ATese de mestrado integrado. Engenharia Informática e Computação. Faculdade de Engenharia. Universidade do Porto. 200

    Data utilization software for assisting power plant project sales

    Get PDF
    A business opportunity in power plant project sales goes through several stages before a quote can be made. Previously made quotes can offer insight on how earlier projects were sold in certain areas or countries. Therefore, a salesperson working in energy business will often want to compare the cost and scope of current power plant projects with earlier sold projects. The role of web applications continues to grow. Increasing amount of software developers write their software for web browsers. In addition, modern software development tools such as Django and React allow efficient web development. Since the popularity of web applications is increasing, web browsers have become the main platform for new applications. In this thesis, a prototype web application is designed and developed. The application allows a salesperson to compare current power plant projects with previously sold projects. The comparison process should mainly illustrate how the costs of the compared projects differ from one another. The goal of the application is to enable sales personnel to access relevant data and make comparisons by utilizing just a single application instead of using many separate systems. This reduces the workload in sales department and increases the productivity in power plant project sales. The prototype application developed in this thesis will be integrated into energy feasibility tools platform, which hosts several different applications used in energy sales. Furthermore, the application should utilize data located on Wärtsilä Data Platform. The prototype is written with Python and JavaScript programming languages. The backend server is created by utilizing Django web framework. The user interface of the application is constructed with React and Semantic UI libraries. The users of the application are authenticated with the help of OAuth 2.0 authorization framework. In this thesis, a working prototype application was designed and developed. The resulting application allows a salesperson to compare different power plant projects and examine the details of individual projects. The application developed in the thesis can be used in the future as a model for similar systems utilizing Wärtsilä Data Platform data. Currently, the application is mainly designed for engine power plant data. However, in the future the application could be modified to work better with energy storage data. Finally, it should be investigated whether machine learning algorithms could be used to offer recommendations for users based on the data of previous projects.Voimalaitosprojektin myyntiprosessi koostuu useista vaiheista, joiden aikana liiketoimintamahdollisuudesta kehittyy tarjous. Aiemmin tehdyt tarjoukset voivat tarjota tietoa siitä, kuinka edellisiä projekteja on myyty tietyissä maanosissa tai valtioissa. Tästä syystä myyntihenkilöt haluavat usein vertailla meneillään olevien projektien kustannuksia ja laajuutta aiemmin myytyihin projekteihin. Web-sovellusten rooli on kasvanut vuosien varrella. Kasvava joukko sovelluskehittäjiä kirjoittaakin nykyään sovelluksiaan web-selaimille. Tämän lisäksi modernit kehitystyökalut kuten Django ja React lisäävät sovelluskehityksen tehokkuutta. Web-sovellusten kasvava rooli onkin tehnyt web-selaimista tärkeimmäin alustan uusille sovelluksille. Tämän diplomityön tarkoituksena on suunnitella sekä kehittää prototyyppi web-sovellus. Tämä sovellus auttaa myyjiä vertailemaan meneillä olevia voimalaitosprojekteja aiemmin myytyihin projekteihin. Vertailuprosessin päämäärä on lähinnä havainnollistaa, kuinka eri projektien kustannukset eroavat toisistaan. Työn tavoite on auttaa myyjiä hyödyntämään ja vertailemaan voimalaitosprojektien dataa käyttämällä pelkästään yhtä sovellusta. Mikäli voimalaitosdataa voitaisiin vertailla yhdellä sovelluksella useiden hajanaisten sovelluskokonaisuuksien käyttämisen sijaan, myyjien työtaakka vähentyisi ja samalla tuottavuus voimalaitosprojektien myynnissä kasvaisi. Tässä diplomityössä kehitetty prototyyppisovellus liitetään osaksi energy feasibility tools työkalua, joka toimii alustana useille eri voimalaitossovelluksille. Tämän lisäksi työssä kehitetty sovellus hyödyntää Wärtsilä Data Platform yritystietovarastossa olevaa dataa. Työssä toteutettava protyyppisovellus ohjelmoidaan Python ja JavaScript ohjelmointikieliä käyttäen. Palvelimen toiminnallisuudet luodaan käyttämällä Django web-sovelluskehystä. Sovelluksen käyttöliittymä rakennetaan hyödyntämällä React ja Semantic UI kirjastoja. Protyyppisovelluksen käyttäjät tullaan todentamaan käyttämällä OAuth 2.0 kehystä. Tässä diplomityössä suunniteltiin ja kehitettiin toimiva prototyyppisovellus. Tätä sovellusta käyttävät myyjät pystyvät vertailemaan erilaisia voimalaitosprojekteja sekä tarkastelemaan yksittäisten voimalaitosprojektien yksityiskohtia. Työssä kehitetty sovellus voisi toimia tulevaisuudessa mallina vastaavan kaltaisille Wärtsilä Data Platform dataa hyödyntäville sovelluksille. Tällä hetkellä sovellus on suunniteltu lähinnä moottorivoimalaitosprojekteja varten. Tulevaisuudessa sovellusta voitaisiin räätälöidä siten, että se sopisi paremmin myös energian varastointia koskeviin projekteihin. Varteenotettavaa olisi myös tutkia, pystyisikö koneoppimismenetelmillä tarjota käyttäjille dataan perustuvia suosituksia

    A Statically Typed Logic Context Query Language With Parametric Polymorphism and Subtyping

    Get PDF
    The objective of this thesis is programming language support for context-sensitive program adaptations. Driven by the requirements for context-aware adaptation languages, a statically typed Object-oriented logic Context Query Language  (OCQL) was developed, which is suitable for integration with adaptation languages based on the Java type system. The ambient information considered in context-aware applications often originates from several, potentially distributed sources. OCQL employs the Semantic Web-language RDF Schema to structure and combine distributed context information. OCQL offers parametric polymorphism, subtyping, and a fixed set of meta-predicates. Its type system is based on mode analysis and a subset of Java Generics. For this reason a mode-inference approach for normal logic programs that considers variable aliasing and sharing was extended to cover all-solution predicates. OCQL is complemented by a service-oriented context-management infrastructure that supports the integration of OCQL with runtime adaptation approaches. The applicability of the language and its infrastructure were demonstrated with the context-aware aspect language CSLogicAJ. CSLogicAJ aspects encapsulate context-aware behavior and define in which contextual situation and program execution state the behavior is woven into the running program. The thesis concludes with a case study analyzing how runtime adaptation of mobile applications can be supported by pure object-, service- and context-aware aspect-orientation. Our study has shown that CSLogicAJ can improve the modularization of context-aware applications and reduce anticipation of runtime adaptations when compared to other approaches

    A general framework for positioning, evaluating and selecting the new generation of development tools.

    Get PDF
    This paper focuses on the evaluation and positioning of a new generation of development tools containing subtools (report generators, browsers, debuggers, GUI-builders, ...) and programming languages that are designed to work together and have a common graphical user interface and are therefore called environments. Several trends in IT have led to a pluriform range of developments tools that can be classified in numerous categories. Examples are: object-oriented tools, GUI-tools, upper- and lower CASE-tools, client/server tools and 4GL environments. This classification does not sufficiently cover the tools subject in this paper for the simple reason that only one criterion is used to distinguish them. Modern visual development environments often fit in several categories because to a certain extent, several criteria can be applied to evaluate them. In this study, we will offer a broad classification scheme with which tools can be positioned and which can be refined through further research.
    corecore