4,002 research outputs found

    An Answer Explanation Model for Probabilistic Database Queries

    Get PDF
    Following the availability of huge amounts of uncertain data, coming from diverse ranges of applications such as sensors, machine learning or mining approaches, information extraction and integration, etc. in recent years, we have seen a revival of interests in probabilistic databases. Queries over these databases result in probabilistic answers. As the process of arriving at these answers is based on the underlying stored uncertain data, we argue that from the standpoint of an end user, it is helpful for such a system to give an explanation on how it arrives at an answer and on which uncertainty assumptions the derived answer is based. In this way, the user with his/her own knowledge can decide how much confidence to place in this probabilistic answer. \ud The aim of this paper is to design such an answer explanation model for probabilistic database queries. We report our design principles and show the methods to compute the answer explanations. One of the main contributions of our model is that it fills the gap between giving only the answer probability, and giving the full derivation. Furthermore, we show how to balance verifiability and influence of explanation components through the concept of verifiable views. The behavior of the model and its computational efficiency are demonstrated through an extensive performance study

    Development of an automated debug log processing system for CSI mechanism

    Get PDF
    Abstract. In the development industry of mobile telecommunication devices, various challenges are faced regarding debugging different errors. One significant difficulty in user equipment (UE) development is the manual processing of massive debug logs of several gigabytes in size. A part of this manual processing may be handled by the automated system, freeing up employees’ time for other assignments, resulting in increased efficiency. The work of this thesis is conducted from the perspective of the channel state information (CSI) mechanism in Fifth Generation Mobile Network New Radio (5G NR) access technology. The purpose of this thesis is to present an example of automated CSI log processing system, and to this end, present basics of CSI mechanism and its standards. The main focus of this thesis is to verify that CSI reporting follows standards of technical specifications provided by the 3rd Generation Partnership Project (3GPP). The presented system contains two major functionalities for verifying the correctness of CSI reporting. The first functionality verifies that all expected CSI reports are transmitted successfully denoting that the processed debug log is not containing any unexpectedly dropped CSI reports. There are several fault reasons for untransmitted CSI reports, and one example is incorrect bit length calculations for CSI report fields, resulting in decreased performance of communication between the Network and UE. Regarding this, the second functionality of the system verifies that the corresponding UE software has calculated bit lengths of different quantities correctly according to 3GPP specifications. These faults are faced in the development phase of devices, for example, when developing new features. As a result of this thesis, a fairly significant system is successfully developed to speed up the manual debugging process. Especially in larger debug log cases, the system provides the ability to investigate the whole log remarkably fast compared to manual debugging.Automaattisen virheenkorjaus lokijärjestelmän kehitys CSI-mekanismille. Tiivistelmä. Matkaviestintälaitteiden kehitysteollisuudessa kohdataan monenlaisia haasteita virheiden korjaukseen liittyen. Yksi merkittävä haaste käyttäjän laitteiden kehityksessä on manuaalinen lokien prosessointi, erityisesti kooltaan suurien ja useiden gigatavujen lokien tapauksissa. Osa tästä prosessista voitaisiin hoitaa automaattisella järjestelmällä vapauttaen virheistä vastuulla olevien työntekijöiden aikaa muihin tehtäviin, lisäen tehokkuutta. Tämä työ on suoritettu viidennen sukupolven langattoman tietoliikenneverkkotekniikan (fifth generation mobile network new radio, 5G NR) radiokanavatilatietoon (channel state information, CSI) perustuvan säädön perspektiivistä. Työn tarkoituksena on esittää esimerkki automaattisen lokiprosessintijärjestelmän kehitysprosessista, ja tätä varten tarjota perustiedot CSI-mekanismista ja sen standardeista. Pääpaino tässä työssä on varmistaa, että CSI-raportointi noudattaa teknisiä standardeja, jotka usean standardointijärjestön yhteistyöorganisaatio (The 3rd Generation Partnership Project, 3GPP) on määrittänyt. Työssä esitetty systeemi sisältää kaksi päätoiminnallisuutta CSI-raportoinnin oikeuden varmistamiseen. Ensimmäinen toiminnallisuus varmistaa, että kaikki odotetut CSI-raportit ovat lähetetty onnistuneesti, joka merkitsee, ettei loki sisällä odottamattomasti pudotettuja CSI-raportteja. Pudotetuille CSI-raporteille on useita vian syitä, ja yksi esimerkki tästä on väärin lasketut bittien pituudet, joka heikentää kommunikaation suorituskykyä verkon ja käyttäjän laitteen välillä. Tähän liittyen, toinen systeemin päätoiminnallisuus varmistaa, että käyttäjän laitteen ohjelmisto on laskenut bittien pituudet eri parametreille oikein 3GPP-standardien mukaisesti. Nämä virheet kohdataan käyttäjän laitteen kehityksen vaiheessa, esimerkiksi, kun kehitetään uusia ominaisuuksia. Työn lopputulos on onnistunut, jossa kohtuullisen merkittävä järjestelmä on kehitetty nopeuttamaan manuaalista virheenkorjausta. Erityisesti suurempien lokien tapauksissa, järjestelmä tarjoaa kyvyn tutkia kokonainen loki huomattavan nopeasti verrattuna manuaaliseen virheiden korjaukseen

    Code Park: A New 3D Code Visualization Tool

    Full text link
    We introduce Code Park, a novel tool for visualizing codebases in a 3D game-like environment. Code Park aims to improve a programmer's understanding of an existing codebase in a manner that is both engaging and intuitive, appealing to novice users such as students. It achieves these goals by laying out the codebase in a 3D park-like environment. Each class in the codebase is represented as a 3D room-like structure. Constituent parts of the class (variable, member functions, etc.) are laid out on the walls, resembling a syntax-aware "wallpaper". The users can interact with the codebase using an overview, and a first-person viewer mode. We conducted two user studies to evaluate Code Park's usability and suitability for organizing an existing project. Our results indicate that Code Park is easy to get familiar with and significantly helps in code understanding compared to a traditional IDE. Further, the users unanimously believed that Code Park was a fun tool to work with.Comment: Accepted for publication in 2017 IEEE Working Conference on Software Visualization (VISSOFT 2017); Supplementary video: https://www.youtube.com/watch?v=LUiy1M9hUK

    The Role of Intensional and Extensional Representations in Simulation

    Get PDF
    This paper was prepared as the author's area examination.I review three systems which do simulation in different domains. I observe the following commonality in the representations underlying the simulations: • The representations used for individuals tend to be domain-dependent. These representations are highly structured, concentrating in one place all the information concerning any particular individual. I call these representations intensional because two such representations are considered equal if their forms are identical. • With important exceptions, the representations used for classes of individuals tend to be domain-independent. These representations are unstructured sets of predications involving the characteristics of class members. I call these representations extensional because two such representations are considered equal if the classes they specify are identical. I draw out various ramifications of this dichotomy, and speculate as to its cause. In conclusion, I suggest research into the process of debugging extensional class representations and the development of intensional ones.MIT Artificial Intelligence Laborator

    Finding The Lazy Programmer's Bugs

    Get PDF
    Traditionally developers and testers created huge numbers of explicit tests, enumerating interesting cases, perhaps biased by what they believe to be the current boundary conditions of the function being tested. Or at least, they were supposed to. A major step forward was the development of property testing. Property testing requires the user to write a few functional properties that are used to generate tests, and requires an external library or tool to create test data for the tests. As such many thousands of tests can be created for a single property. For the purely functional programming language Haskell there are several such libraries; for example QuickCheck [CH00], SmallCheck and Lazy SmallCheck [RNL08]. Unfortunately, property testing still requires the user to write explicit tests. Fortunately, we note there are already many implicit tests present in programs. Developers may throw assertion errors, or the compiler may silently insert runtime exceptions for incomplete pattern matches. We attempt to automate the testing process using these implicit tests. Our contributions are in four main areas: (1) We have developed algorithms to automatically infer appropriate constructors and functions needed to generate test data without requiring additional programmer work or annotations. (2) To combine the constructors and functions into test expressions we take advantage of Haskell's lazy evaluation semantics by applying the techniques of needed narrowing and lazy instantiation to guide generation. (3) We keep the type of test data at its most general, in order to prevent committing too early to monomorphic types that cause needless wasted tests. (4) We have developed novel ways of creating Haskell case expressions to inspect elements inside returned data structures, in order to discover exceptions that may be hidden by laziness, and to make our test data generation algorithm more expressive. In order to validate our claims, we have implemented these techniques in Irulan, a fully automatic tool for generating systematic black-box unit tests for Haskell library code. We have designed Irulan to generate high coverage test suites and detect common programming errors in the process

    Logging and bookkeeping, Administrator's guide

    Get PDF
    Logging and Bookkeeping (LB for short) is a Grid service that keeps a short-term trace of Grid jobs as they are processed by individual Grid component
    corecore