Centrum Wiskunde & Informatica

CWI's Institutional Repository
Not a member yet
    26838 research outputs found

    PolyDebug: A framework for polyglot debugging

    Get PDF
    As software grows increasingly complex, the quantity and diversity of concerns to be addressed also rises. To answer this diversity of concerns, developers may end up using multiple programming languages in a single software project, a practice known as polyglot programming. This practice has gained momentum with the rise of execution platforms capable of supporting polyglot systems. However, despite this momentum, there is a notable lack of development tooling support for developers working on polyglot programs, such as in debugging facilities. Not all polyglot execution platforms provide debugging capabilities, and for those that do, implementing support for new languages can be costly. This paper addresses this gap by introducing a novel debugger framework that is language-agnostic yet leverages existing language-specific debuggers. The proposed framework is dynamically extensible to accommodate the evolving combination of languages used in polyglot software development. It utilizes the Debug Adapter Protocol (DAP) to integrate and coordinate existing debuggers within a debugging session. We found that using our approach, we were able to implement polyglot debugging support for three different languages with little development effort. We also found that our debugger did not introduce an overhead significant enough to hinder debugging tasks in many scenarios; however performance did deteriorate with the amount of polyglot calls, making the approach not suitable for every polyglot program structure. The effectiveness of this approach is demonstrated through the development of a prototype, PolyDebug, and its application to use cases involving C, JavaScript, and Python. We evaluated PolyDebug on a dataset of traditional benchmark programs, modified to fit our criteria of polyglot programs. We also assessed the development effort by measuring the source lines of code (SLOC) for the prototype as a whole as well as its components. Debugging is a fundamental part of developing and maintaining software. Lack of debug tools can lead to difficulty in locating software bugs and slow down the development process. We believe this work is relevant to help provide developers proper debugging support regardless of the runtime environment

    Heavy nodes in a small neighborhood: Exact and peeling algorithms with applications

    No full text
    We introduce a weighted and unconstrained variant of the well-known minimum κκ union problem: Given a bipartite graph G(U,V,E)\mathcal{G}(U,V,E) with weights for all nodes in VV, find a set SVS⊆ V such that the ratio between the total weight of the nodes in SS and the number of their distinct adjacent nodes in UU is maximized. Our problem, which we term Heavy Nodes in a Small Neighborhood (HNSN), finds applications in marketing, team formation, and money laundering detection. For example, in the latter application, SS represents bank account holders who obtain illicit money from some peers of a criminal and route it through their accounts to a target account belonging to the criminal. We prove that HNSN can be solved exactly in polynomial time via linear programming. We also develop several algorithms offering different effectiveness/efficiency trade-offs: an exact algorithm, based on node contraction, graph decomposition, and linear programming, as well as three peeling algorithms. The first peeling algorithm is a near-linear time approximation algorithm with a tight approximation ratio, the second is an iterative algorithm that converges to an optimal solution in a very small number of iterations in practice, and the third is a near-linear time greedy heuristic. In addition, we formalize a money laundering scenario involving multiple target accounts and show how our algorithms can be extended to deal with it. Our experiments on real and synthetic datasets show that our algorithms find (near-)optimal solutions, outperforming a natural baseline, and that they can detect money laundering more effectively and efficiently than two state-of-the-art methods

    Optimizing source localization via reinforcement learning in multi-agent underwater networks

    Get PDF
    In this paper, we propose a novel approach to multi-agent underwater source localization by means of Multi-Agent Reinforcement Learning (MARL). Our framework optimizes the trajectories of two autonomous underwater vehicles, each towing an antenna, to maximize the probability of detection of the source. We implement a shared-parameter MARL strategy with non-synchronous actions to address the challenges posed by non-stationary multi-agent environments. We train a neural network on a simplified simulation environment and evaluate it in a realistic simulation engine, demonstrating robustness to communication losses of up to 60%. Our preliminary results indicate that RL-based trajectory optimization can achieve comparable performance to traditional approaches

    Text indexing for long patterns using locally consistent anchors

    Get PDF
    In many real-world database systems, a large fraction of the data is represented by strings: sequences of letters over some alphabet. This is because strings can easily encode data arising from different sources. It is often crucial to represent such string datasets in a compact form but also to simultaneously enable fast pattern matching queries. This is the classic text indexing problem. The four absolute measures anyone should pay attention to when designing or implementing a text index are: (i) index space; (ii) query time; (iii) construction space; and (iv) construction time. Unfortunately, however, most (if not all) widely-used indexes (e.g., suffix tree, suffix array, or their compressed counterparts) are not optimized for all four measures simultaneously, as it is difficult to have the best of all four worlds. Here, we take an important step in this direction by showing that text indexing with sampling based on locally consistent anchors (lc-anchors) offers remarkably good performance in all four measures, when we have at hand a lower bound ℓ on the length of the queried patterns — which is arguably a quite reasonable assumption in practical applications. Specifically, we improve on a recently proposed index that is based on bidirectional string anchors (bd-anchors), a new type of lc-anchors, by: (i) introducing a randomized counterpart of bd-anchors which outperforms bd-anchors; (ii) designing an average-case linear-time algorithm to compute (the randomized) bd-anchors; and (iii) developing a semi-external-memory implementation and an internal-memory implementation to construct the index in small space using near-optimal work. Our index offers average-case guarantees. In our experiments using real (benchmark) datasets of sizes up to 10GB, we show that it compares favorably based on the four measures to all classic indexes: (compressed) suffix tree; (compressed) suffix array; and the FM-index. We also present a counterpart of our index with worst-case guarantees based on the lc-anchors notion of partitioning sets. To the best of our knowledge, this is the first index achieving the best of all worlds in the regime where we have at hand a lower bound ℓ on the length of the queried patterns

    Social density and its impact on behaviour in virtual environments

    Get PDF
    Virtual environments make it possible to connect and collaborate in social immersive realities, but there are still open questions about the influence of their design on the user experience. We conducted a study with 48 participants divided into groups of 6, completing conversational tasks in an instrumented virtual environment. Using a mix-methods approach, combining qualitative and quantitative research methods (interviews, questionnaires, conversation and movement analysis), we compared between two virtual environment designs. We found that the social density (or effective capacity) of the designed virtual environment influenced the quality of interaction between the participants

    Emerging telepresence technologies for hybrid meetings: Experiences and lessons learned from an interactive workshop

    Get PDF
    As demonstrated in recent years, telepresence technologies play a crucial role in the hybrid world. However, successfully carrying out hybrid activities that ensure participant engagement and equal opportunities for interaction and collaboration between in-person and remote participants still require significant effort. Building on this premise, this paper presents the methodology and lessons learned of a hybrid workshop involving eight in-person and eight remote participants. During the workshop, various telepresence technologies for hybrid meetings were tested, including 360-degree video-based systems and a telepresence robot. The workshop involved two main interactive activities: one focused on presentations to the audience (both local and remote), and a second focused on hybrid groups discussing a selection of provocative questions to compare and reflect on these technologies in terms of immersion, interaction capabilities, social implications, and practical convenience. In both activities, we ensured that all participants used the telepresence systems. This paper describes all the details that allowed us to successfully organize the workshop in terms of hardware, software used, roles assigned to organizers, and challenges faced. It also gathers the conclusions raised by both the participants and organizers to provide the community with valuable considerations for the design of future hybrid workshops, along with interesting insights obtained during discussions that highlight areas where future research should focus

    Familiaire hypercholesterolemie opsporen met AI - Reuma Arnhem - 28-01-2025

    No full text

    Urgentie quantumdreiging blijft in Nederland onopgemerkt - iBestuur - 29-01-2025

    No full text

    Elsbeth Etty over Hugo Brandt Corstius - de Brug krant - 23-01-2025

    No full text

    13,690

    full texts

    26,838

    metadata records
    Updated in last 30 days.
    CWI's Institutional Repository
    Access Repository Dashboard
    Do you manage Open Research Online? Become a CORE Member to access insider analytics, issue reports and manage access to outputs from your repository in the CORE Repository Dashboard! 👇