793 research outputs found

    A case study comparing static analysis tools for evaluating SwiftUI projects

    Get PDF
    Declarative programming languages such as SwiftUI have gained increasing relevance for user interface implementation in mobile applications. A tool for evaluating and improving the quality of such projects is static analysis (SA). This study compares the usefulness of two of the most popular SA tools (SonarQube and Codacy) for evaluating real-world SwiftUI projects. Moreover, it recommends setup and adjustments to promote SA tools for SwiftUI projects that can be extended to other languages

    Symbolic Pattern Matching in Clojure

    Get PDF

    Object recognition for the visually impaired

    Get PDF
    This project examines the possibility of applying machine vision research to aid visually impaired persons with the recognition of day to day objects. Background research into everyday problems for visually impaired persons was carried out to see how best machine vision could be developed to tackle these problems. Methods of extracting, storing and classifying shape and colour information were examined, implemented and tested. The best of these methods were combined into the prototype system which was then tested rigorously. The results obtained along with all the problems encountered are discussed in detail. The feasibility and recommendations for further development of this project are also discussed

    Verb Classes and Alternations in Bangla, German, English, and Korean

    Get PDF
    In this report, we investigate the relationship between the semantic and syntactic properties of verbs. Our work is based on the English Verb Classes and Alternations of (Levin, 1993). We explore how these classes are manifested in other languages, in particular, in Bangla, German, and Korean. Our report includes a survey and classification of several hundred verbs from these languages into the cross-linguistic equivalents of Levin's classes. We also explore ways in which our findings may be used to enhance WordNet in two ways: making the English syntactic information of WordNet more fine-grained, and making WordNet multilingual

    Game engines and MAS: tuplespace-based interaction in Unity3D

    Get PDF
    I Game Engines stanno acquisendo sempre più importanza sia in ambito industriale, dove permettono lo sviluppo di applicazioni moderne e videogiochi, sia in ambito di ricerca, in particolare nel contesto dei sistemi multi-agente (MAS). La loro capacità espressiva, unita al supporto di tecnologie e funzionalità innovative, permette la creazione di sistemi moderni e complessi in maniera più efficiente: il loro continuo avanzamento tecnologico li ha portati ad essere una realtà su cui fare affidamento nella produzione di vari applicativi diversi, come applicazioni di realtà aumentata/virtuale/mista, simulazioni immersive, costruzione di mondi virtuali e 3D, ecc. Ciononostante, soffrono la mancanza di proprie astrazioni e meccanismi che possano essere affidabili e utilizzati per aggredire la complessità durante il design di sistemi complessi. Il tentativo di sfruttare le caratteristiche della teoria dei MAS all'interno degli ambienti di sviluppo dei Game Engines procede secondo questa direzione: integrando le astrazioni costituenti i MAS all'interno dei Game Engines, con particolare riferimento ai modelli di coordinazione tra agenti, può portare a nuove soluzioni, riuscendo a risolvere problemi tecnologici grazie all'aiuto degli engine grafici. Questa tesi utilizza il Game Engine Unity3D proponendo due librerie C#, le quali sfruttano una precedente integrazione dello stesso framework con il Prolog per l'abilitazione di un modello di interazione e coordinazione basato su spazi di tuple, utilizzabile tramite l'implementazione di primitive LINDA. Le librerie offrono interfacce di programmazione (API) sfruttabili dai programmatori C# Unity3D per integrare nelle loro creazioni il supporto a tale modello, con una nuova modalità per la gestione della coordinazione tra oggetti in Unity3D e fornisce importanti proprietà, essendo fondamentale nel contesto dei MAS dal punto di vista dell'ingegnerizzazione di sistemi complessi e della gestione delle interazioni tra agenti

    A study of the methodologies currently available for the maintenance of the knowledge-base in an expert system

    Get PDF
    This research studies currently available maintenance methodologies for expert system knowledge bases and taxonomically classifies them according to the functions they perform. The classification falls into two broad categories. These are: (1) Methodologies for building a more maintainable expert system knowledge base. This section covers techniques applicable to the development phases. Software engineering approaches as well as other approaches are discussed. (2) Methodologies for maintaining an existing knowledge base. This section is concerned with the continued maintenance of an existing knowledge base. It is divided into three subsections. The first subsection discusses tools and techniques which aid the understanding of a knowledge base. The second looks at tools which facilitate the actual modification of the knowledge base, while the last secttion examines tools used for the verification or validation of the knowledge base. Every main methodology or tool selected for this study is analysed according to the function it was designed to perform (or its objective); the concept or principles behind the tool or methodology: and its implementation details. This is followed by a general comment at the end of the analysis. Although expert systems as a rule contain significant amount of information related to the user interface, database interface, integration with conventional software for numerical calculations, integration with other knowledge bases through black boarding systems or network interactions, this research is confined to the maintenance of the knowledge base only and does not address the maintenance of these interfaces. Also not included in this thesis are Truth Maintenance Systems. While a Truth Maintenance System (TMS) automatically updates a knowledge base during execution time, these update operations are not considered \u27maintenance\u27 in the sense as used in this thesis. Maintenance in the context of this thesis refers to perfective, adaptive, and corrective maintenance (see introduction to chapter 4). TMS on the other hand refers to a collection of techniques for doing belief revision (Martin, 1990) . That is, a TMS maintains a set of beliefs or facts in the knowledge base to ensure that they remain consistent during execution time. From this perspective, TMS is not regarded as a knowledge base maintenance tool for the purpose of this study

    Expert Systems in Transport – Part 1: An Introduction to Expert Systems.

    Get PDF
    This report describes what expert systems are. It has been written to introduce the concepts involved, and to some extent the techniques, for those who have no previous acquaintance with such systems, but who are concerned with establishing quite what such systems might have to offer, and what is involved in developing them, in their field of application. Ways in which knowledge and uncertainty are represented in expert systems are described, and illustrated by reference to some existing expert systems. The report stems from a project designed to assess the potential for establishing expert systems in the transport field, and discusses the types of expert system package which might be useful in the remaining stages of the project. It includes a useful set of references and a g1ossary.A preliminary assessment of potential transport applications and the implications for the remainder of the project are described in a companion report, ITS Technical Note 145
    corecore