8 research outputs found

    Generating Random Logic Programs Using Constraint Programming

    Get PDF
    Testing algorithms across a wide range of problem instances is crucial to ensure the validity of any claim about one algorithm's superiority over another. However, when it comes to inference algorithms for probabilistic logic programs, experimental evaluations are limited to only a few programs. Existing methods to generate random logic programs are limited to propositional programs and often impose stringent syntactic restrictions. We present a novel approach to generating random logic programs and random probabilistic logic programs using constraint programming, introducing a new constraint to control the independence structure of the underlying probability distribution. We also provide a combinatorial argument for the correctness of the model, show how the model scales with parameter values, and use the model to compare probabilistic inference algorithms across a range of synthetic problems. Our model allows inference algorithm developers to evaluate and compare the algorithms across a wide range of instances, providing a detailed picture of their (comparative) strengths and weaknesses.Comment: This is an extended version of the paper published in CP 202

    Hybrid conditional planning for service robotics

    Get PDF
    Planning is an indispensable ability for intelligent service robots operating in unstructured environments. Given service robots commonly have incomplete knowledge about and partial observability of handle such uncertainty. Moreover, the plans they compute should be feasible for real-world execution. Conditional planning is concerned with reaching goals from an initial state, in the presence of incomplete knowledge and partial observability; by utilizing sensing actions. Since all contingencies are considered in advance, a conditional plan is essentially a tree of actions where the root represents the initial state, leaves represent goal states, and each branch of the tree from the root to a leaf represents a possible execution of (deterministic) actuation actions and (non-deterministic) sensing actions to reach a goal state. Hybrid conditional planning extends conditional planning further by integrating lowlevel feasibility checks into executability conditions of actuation actions in conditional plans. We introduce a parallel offline algorithm called HCPlan, for computing hybrid conditional plans in robotics applications. HCPlan relies on modeling actuation actions and sensing actions in the causality-based action description language C+, and computation of the branches of a conditional plan in parallel using a SAT solver. In particular, thanks to external atoms, continuous feasibility checks (such as collision and reachability checks) are embedded into causal laws representing actuation actions and sensing actions; and thus each branch of a hybrid conditional plan describes a feasible execution of actions to reach their goals. Utilizing causal laws that describe iv non-deterministic effects of actions, sensing actions can be explicitly formalized; and thus each branch of a conditional plan can be computed without necessitating an ordering of sensing actions in advance. Furthermore, we introduce two different extensions of our hybrid conditional planner HCPlan: HCPlan-Anytime and HCPlan-Reactive. HCPlan-Anytime computes a partial hybrid conditional plan within a given time, by generating the branches with respect to their probability of execution. HCPlan-Reactive computes a hybrid conditional plan with a receding horizon. These extensions trade-off completeness of hybrid conditional plans for improved computation time, and provide useful important variations towards real-time use of the hybrid conditional planning. We develop comprehensive benchmarks for service robotics domain and evaluate our approach over these benchmarks with extensive experiments in terms of computational efficiency and plan quality. We compare HCPlan with other related conditional planners and approaches. We further demonstrate the usefulness of our approach in service robotics applications through dynamic simulations and physical implementations

    Generalising weighted model counting

    Get PDF
    Given a formula in propositional or (finite-domain) first-order logic and some non-negative weights, weighted model counting (WMC) is a function problem that asks to compute the sum of the weights of the models of the formula. Originally used as a flexible way of performing probabilistic inference on graphical models, WMC has found many applications across artificial intelligence (AI), machine learning, and other domains. Areas of AI that rely on WMC include explainable AI, neural-symbolic AI, probabilistic programming, and statistical relational AI. WMC also has applications in bioinformatics, data mining, natural language processing, prognostics, and robotics. In this work, we are interested in revisiting the foundations of WMC and considering generalisations of some of the key definitions in the interest of conceptual clarity and practical efficiency. We begin by developing a measure-theoretic perspective on WMC, which suggests a new and more general way of defining the weights of an instance. This new representation can be as succinct as standard WMC but can also expand as needed to represent less-structured probability distributions. We demonstrate the performance benefits of the new format by developing a novel WMC encoding for Bayesian networks. We then show how existing WMC encodings for Bayesian networks can be transformed into this more general format and what conditions ensure that the transformation is correct (i.e., preserves the answer). Combining the strengths of the more flexible representation with the tricks used in existing encodings yields further efficiency improvements in Bayesian network probabilistic inference. Next, we turn our attention to the first-order setting. Here, we argue that the capabilities of practical model counting algorithms are severely limited by their inability to perform arbitrary recursive computations. To enable arbitrary recursion, we relax the restrictions that typically accompany domain recursion and generalise circuits (used to express a solution to a model counting problem) to graphs that are allowed to have cycles. These improvements enable us to find efficient solutions to counting fundamental structures such as injections and bijections that were previously unsolvable by any available algorithm. The second strand of this work is concerned with synthetic data generation. Testing algorithms across a wide range of problem instances is crucial to ensure the validity of any claim about one algorithm’s superiority over another. However, benchmarks are often limited and fail to reveal differences among the algorithms. First, we show how random instances of probabilistic logic programs (that typically use WMC algorithms for inference) can be generated using constraint programming. We also introduce a new constraint to control the independence structure of the underlying probability distribution and provide a combinatorial argument for the correctness of the constraint model. This model allows us to, for the first time, experimentally investigate inference algorithms on more than just a handful of instances. Second, we introduce a random model for WMC instances with a parameter that influences primal treewidth—the parameter most commonly used to characterise the difficulty of an instance. We show that the easy-hard-easy pattern with respect to clause density is different for algorithms based on dynamic programming and algebraic decision diagrams than for all other solvers. We also demonstrate that all WMC algorithms scale exponentially with respect to primal treewidth, although at differing rates
    corecore