99 research outputs found

    Narrative based Postdictive Reasoning for Cognitive Robotics

    Full text link
    Making sense of incomplete and conflicting narrative knowledge in the presence of abnormalities, unobservable processes, and other real world considerations is a challenge and crucial requirement for cognitive robotics systems. An added challenge, even when suitably specialised action languages and reasoning systems exist, is practical integration and application within large-scale robot control frameworks. In the backdrop of an autonomous wheelchair robot control task, we report on application-driven work to realise postdiction triggered abnormality detection and re-planning for real-time robot control: (a) Narrative-based knowledge about the environment is obtained via a larger smart environment framework; and (b) abnormalities are postdicted from stable-models of an answer-set program corresponding to the robot's epistemic model. The overall reasoning is performed in the context of an approximate epistemic action theory based planner implemented via a translation to answer-set programming.Comment: Commonsense Reasoning Symposium, Ayia Napa, Cyprus, 201

    Cognitive Modeling for Computer Animation: A Comparative Review

    Get PDF
    Cognitive modeling is a provocative new paradigm that paves the way towards intelligent graphical characters by providing them with logic and reasoning skills. Cognitively empowered self-animating characters will see in the near future a widespread use in the interactive game, multimedia, virtual reality and production animation industries. This review covers three recently-published papers from the field of cognitive modeling for computer animation. The approaches and techniques employed are very different. The cognition model in the first paper is built on top of Soar, which is intended as a general cognitive architecture for developing systems that exhibit intelligent behaviors. The second paper uses an active plan tree and a plan library to achieve the fast and robust reactivity to the environment changes. The third paper, based on an AI formalism known as the situation calculus, develops a cognitive modeling language called CML and uses it to specify a behavior outline or sketch plan to direct the characters in terms of goals. Instead of presenting each paper in isolation then comparatively analyzing them, we take a top-down approach by first classifying the field into three different categories and then attempting to put each paper into a proper category. Hopefully in this way it can provide a more cohesive, systematic view of cognitive modeling approaches employed in computer animation

    2Planning for Contingencies: A Decision-based Approach

    Full text link
    A fundamental assumption made by classical AI planners is that there is no uncertainty in the world: the planner has full knowledge of the conditions under which the plan will be executed and the outcome of every action is fully predictable. These planners cannot therefore construct contingency plans, i.e., plans in which different actions are performed in different circumstances. In this paper we discuss some issues that arise in the representation and construction of contingency plans and describe Cassandra, a partial-order contingency planner. Cassandra uses explicit decision-steps that enable the agent executing the plan to decide which plan branch to follow. The decision-steps in a plan result in subgoals to acquire knowledge, which are planned for in the same way as any other subgoals. Cassandra thus distinguishes the process of gathering information from the process of making decisions. The explicit representation of decisions in Cassandra allows a coherent approach to the problems of contingent planning, and provides a solid base for extensions such as the use of different decision-making procedures.Comment: See http://www.jair.org/ for any accompanying file

    Modelling and Simulation of Asynchronous Real-Time Systems using Timed Rebeca

    Full text link
    In this paper we propose an extension of the Rebeca language that can be used to model distributed and asynchronous systems with timing constraints. We provide the formal semantics of the language using Structural Operational Semantics, and show its expressiveness by means of examples. We developed a tool for automated translation from timed Rebeca to the Erlang language, which provides a first implementation of timed Rebeca. We can use the tool to set the parameters of timed Rebeca models, which represent the environment and component variables, and use McErlang to run multiple simulations for different settings. Timed Rebeca restricts the modeller to a pure asynchronous actor-based paradigm, where the structure of the model represents the service oriented architecture, while the computational model matches the network infrastructure. Simulation is shown to be an effective analysis support, specially where model checking faces almost immediate state explosion in an asynchronous setting.Comment: In Proceedings FOCLASA 2011, arXiv:1107.584

    Modelling and analyzing adaptive self-assembling strategies with Maude

    Get PDF
    Building adaptive systems with predictable emergent behavior is a challenging task and it is becoming a critical need. The research community has accepted the challenge by introducing approaches of various nature: from software architectures, to programming paradigms, to analysis techniques. We recently proposed a conceptual framework for adaptation centered around the role of control data. In this paper we show that it can be naturally realized in a reflective logical language like Maude by using the Reflective Russian Dolls model. Moreover, we exploit this model to specify, validate and analyse a prominent example of adaptive system: robot swarms equipped with self-assembly strategies. The analysis exploits the statistical model checker PVeStA

    A backwards theorem prover with focusing, resource management and constraints for robotic planning within intuitionistic linear logic

    Get PDF
    Ankara : The Department of Computer Engineering and the Institute of Engineering and Science of Bilkent University, 2010.Thesis (Master's) -- Bilkent University, 2010.Includes bibliographical references leaves 74-77.The main scope of this thesis is implementing a backwards theorem prover with focusing, resource management and constraints within the intuitionistic first-order linear logic for robotic planning problems. To this end, backwards formulations provide a simpler context for experimentation. However, existing backward theorem provers are either implemented without regard to the efficiency of the proofsearch, or when they do, restrict the language to smaller fragments such as Linear Hereditary Harrop Formulas (LHHF). The former approach is unsuitable since it significantly impairs the scalability of the resulting system. The latter family of theorem provers address the scalability issue but impact the expressivity of the resulting language and may not be able to deal with certain non-deterministic planning elements. The proof theory we describe in this thesis enables us to effectively experiment with the use of linearity and continuous constraints to encode dynamic state elements characteristic of robotic planning problems. To this end, we describe a prototype implementation of our system in SWI-Prolog, and also incorporate continuous constraints into the prototype implementation of the system. We support the expressivity and efficiency of our system with some examples.Kortik, SıtarM.S

    Flexible plan execution using temporal planning and probabilistic models

    Get PDF
    Tese de mestrado integrado em Engenharia Física, Universidade de Lisboa, Faculdade de Ciências, 2020A inteligência sempre foi um dos fatores mais importantes para a espécie humana, daí nos termos chamado Homo Sapiens, que significa ”Homem sábio”. Desde a Antiguidade Grega que o Homem procura perceber o mundo à sua volta. Este desejo foi evoluindo durante séculos, até que o estudo da lógica matemática levou Alan Turing à Teoria de Computação, que sugere que uma máquina pode simular qualquer ato de dedução lógico através da manipulação de símbolos tão simples como ‘0’ e ‘1’. Esta ideia levou à cri ação de uma nova área científica, a Inteligência Artificial (IA), cujo propósito é criar programas capazes de demonstrar comportamento inteligente [42]. Um ramo específico da IA é o Planeamento, que trata a construção e execução de planos. Uma aplicação das tecnologias desenvolvidas em IA é a Robótica, que consiste no ramo de tecnologia responsável pelo desenho, construção, operação e aplicação de robôs, assim como de sistemas de controlo. Contudo, o Planeamento e a Robótica continuam a ser duas áreas científicas distintas, com os seus avanços distintos e conferências próprias. O objetivo desta tese consiste em estabelecer uma ponte entre o Planeamento e a Robótica, ao desenvolver um algoritmo inovador capaz de executar um plano temporal num ambiente perturbado, resistindo a mudanças inesperadas no meio ambiente e ao insucesso de ações. O algoritmo desenvolvido, denominado Olisipo, é uma evolução de um algoritmo desenvolvido previamente por Oscar Lima, Michael Cashmore, Daniele Magazzeni, Andrea Micheli e Rodrigo Ventura [33]. A versão original do algoritmo possuía uma fase offline e uma fase online. Este trabalho consistiu em melhorar a fase online, com a fase offline permanecendo inalterada. A fase offline usa um plano totalmente ordenado ∏tt, obtido a partir de um planeador já existente, e relaxa-o para obter um plano parcialmente ordenado ∏′ . Este plano parcialmente ordenado consiste em: uma rede com nós, correspondentes a todas as ações do plano totalmente ordenado inicial; e relações entre nós, nomeadamente temporais e de interferência. A fase online, que ocorre durante a execução do plano, consiste em utilizar uma procura Branch and Bound (B&B) [29] para construir, a partir de ∏′ , o plano totalmente ordenado com maior probabilidade de execução bem sucedida Γ, tendo em conta o estado atual. A procura B&B utiliza uma Rede de Bayes Dinâmica (RBD), construída iterativamente, para calcular a probabilidade de sucesso de um plano totalmente ordenado e podar a procura. Depois de encontrar Γ, a primeira ação desse plano é executada. Após a execução desta ação, o algoritmo Olisipo executa a última ação, de Γ, que seja compatível com o estado atual. Se nenhuma ação do plano for compatível com o estado atual, então um novo Γ é construído, utilizando ∏′ e o estado atual. Para testar e avaliar o algoritmo Olisipo, desenvolveu-se um ambiente virtual capaz de simular as perturbações do mundo real à execução de um plano. Com este propósito, o ambiente de simulação desenvolvido para o algoritmo original [33] foi extendido. Um código em Python foi desenvolvido para perturbar a Knowledge Base do ambiente virtual e, o código original escrito em C++, foi alterado para contabilizar a probabilidade de uma ação ser bem sucedida e a probabilidade dos efeitos de uma ação. As perturbações de factos no mundo e de ações ocorrem de forma aleatória, tendo em conta as probabilidades definidas pelo utilizador num ficheiro de texto. De seguida, estendeu-se o executor Esterel do ROSPlan [8] para servir como termo de comparação ao algoritmo Olisipo. Este simples executor executa um plano totalmente ordenado até a execução de uma ação falhar ou até uma ação deixar de ser aplicável. Quando isto acontece, o executor Esterel constrói um novo plano totalmente ordenado e tenta executá-lo. Este ciclo repete-se até o objetivo ser atingido ou até terem sido efetuados 10 replaneamentos, que foi definido como o número máximo de replaneamentos permitidos para ambos os algoritmos. Utilizou-se o planeador POPF [10] para construir o plano totalmente ordenado do executor Esterel, pois este também foi o planeador utilizado na fase offline do algoritmo Olisipo. Para comparar o algoritmo Olisipo e o executor Esterel, construiu-se um ambiente de simulação de um robô numa fábrica. Neste ambiente, o robô é responsável pela manuntenção de um conjunto de máquinas, de forma a evitar que alguma máquina se avarie e interrompa a produção. Cada máquina possui uma probabilidade diferente de se avariar e pode também receber uma manutenção aleatória não prevista, atualizando o seu estado. A ação de executar manutenção numa máquina, e de a máquina ser efetivamente mantida, tem também uma probabilidade de sucesso associada. A partir deste ambiente, dois domínios foram construídos, um domínio simples com apenas uma ação não-instanciada possível e outro com duas ações não-instanciadas possíveis. Para o domínio mais simples, foram construídos 10 problemas diferentes. Para o domínio mais complicado, foram construídos 8 problemas. As métricas escolhidas para avaliar o desempenho de cada algoritmo são: a probabilidade de uma execução bem sucedida; o número médio de replaneamentos em execuções bem sucedidas; o número médio de ações em execuções bem sucedidas e falhadas. A análise destas métricas foi feita a partir de 2000 tentativas de resolução de cada algoritmo em cada problema. Verificou-se que o algoritmo Olisipo supera o executor Esterel em todas as métricas. A partir dos resultados obtidos, é possível afirmar que o algoritmo Olisipo possui uma probabilidade de execução bem sucedida maior ou equivalente ao executor Esterel em todos os problemas testados, sendo que este aumento na probabilidade pode ir até aos 16%. Relativamente a replaneamentos em execuções bem sucedidas, o algoritmo Olisipo apresentou uma mediana de zero em todos os problemas, enquanto o executor Esterel apresentou uma mediana de até 2,2 replaneamentos. Relativamente ao número de ações executadas em execuções bem sucedidas, a mediana da distribuição correspondente ao algoritmo Olisipo foi sempre inferior à mediana correspondente à distribuição do executor Esterel. A melhoria relativa, apresentada pelo algoritmo Olisipo, no número de ações executadas em execuções bem sucedidas variou entre 10% e 52%. No caso de execuções falhadas, o algoritmo Olisipo também possuiu uma mediana inferior ao executor Esterel em todos os problemas, com uma melhoria relativa entre 39% e 58%. Com base nestes resultados, é possível concluir que o algoritmo Olisipo, relativamente a um simples executor como o Esterel, possui uma probabilidade de execução bem sucedida mais elevada, precisa de replanear menos vezes e executa menos ações, tanto em execuções bem sucedidas como falhadas. Estas vantagens do algoritmo Olisipo tornam-se particularmente interessantes em situações em que a execução de uma ação possui um custo ou resulta em consequências negativas. Considerando o exemplo utilizado anteriormente, de um robô que realiza manuntenção em máquinas numa fábrica, a execução de menos ações contribui para prolongar o tempo de trabalho do robô, uma vez que consumiria menos energia e precisaria de carregar as baterias com menos frequência. Esta vantagem é também útil em situações em que o robô não se encontre facilmente acessível ou em que não pode ser carregado facilmente. Por sua vez, o menor número de replaneamentos possibilita a utilização de um sistema computacional mais simples no robô, contribuindo também para a redução do seu consumo de energia. O código fonte do trabalho desenvolvido nesta tese é público 1 . Como o algoritmo Olisipo recebe apenas um plano totalmente ordenado e realiza uma execução de forma a maximizar a sua probabilidade de sucesso, é possível aplicar diretamente este algoritmo a outros planeadores, tornando a sua execução mais robusta. Relativamente ao trabalho futuro a desenvolver, uma possibilidade consiste em, durante a procura B&B, guardar outros planos totalmente ordenados, para além do plano que maximiza a probabilidade de sucesso. Isto pode ser útil pois as perturbações no ambiente podem, inesperadamente, tornar a execução de outro plano na execução com uma maior probabilidade de sucesso. Uma segunda possibilidade consiste em repetir a fase offline do Olisipo após um certo números de planos Γ serem consecutiva mente construídos ou após não ser possível construir um plano Γ. Uma terceira possibilidade consiste em guardar partes da árvore de procura e RBD, de forma a que, se for necessário procurar por um novo plano Γ e construir uma nova RBD, seja possível utilizar a árvore de procura e RBD anteriores para acelerar e facilitar as suas construções. Uma quarta possibilidade consiste em estudar o impacto da repetição da sub-fase PGen e verificar se podem haver outras soluções mais frutíferas. Uma quinta possibilidade consiste em otimizar o código desenvolvido, utilizando ferramentas como o Cython [3] para acelerar a sua execução. Por último, outra possibilidade consiste na implementação e teste do Olisipo num robô real, de forma a avaliar a sua praticabilidade e vantagens de forma mais concreta e relevante. Esta implementação consistiria num trabalho futuro bastante relevante.Planning is the branch of Artificial Intelligence which concerns the realisation of strategies or action sequences to be executed by intelligent agents. One of the assumptions considered in Classical Planning is the determinism of the world, meaning it is possible to predict with certainty the state resulting from the application of a certain action to another state. However, when the agent executing a plan is a robot interacting with the real world, then the agent is dealing with an uncertain and nondeterministic environment. In the real world, facts can unexpectedly change, actions are not instantaneous and their execution might fail. This makes the planning problem increasingly complex. This thesis aims to address the problem of executing a temporal plan in a perturbed environment. As a way to solve this problem, an algorithm capable of executing a temporal plan, while resisting unforeseen changes in the world, was developed and tested. The developed algorithm, named Olisipo, takes a probabilistic description of the world and aims to maximise the probability of a successful execution. In addition to this, the Olisipo algorithm acts as an add-on to external planners. The Olisipo algorithm is an improved version of the algorithm presented in [33]. This algorithm consists of an offline and an online phase. In the offline phase, a totally-ordered plan is relaxed and converted into a partially-ordered plan. In the online phase, Olisipo uses a Branch and Bound search to find the totally-ordered plan with the highest success probability. The success probability of a plan is calculated with a Dynamic Bayesian Network and a probabilistic description of the world. Afterwards, the algorithm tries to execute this plan while it is compatible with the state of the world, allowing for the skipping and repetition of actions, as well as for ignoring irrelevant facts in the world. If the plan stops being compatible with the state of the world, then a new totally-ordered plan is built. To test the performance of Olisipo, a simulation environment was created with 18 different problems. The Esterel dispatcher, from ROSPlan [8], was extended to act as a comparison term for the Olisipo algorithm. From the obtained results, it was shown that the Olisipo algorithm consistently had a higher probability of successfully solving a problem, performed fewer replans and also executed fewer actions, both for successful and failed executions. Hence, Olisipo offers a substantial improvement in performance for disturbed environments. Olisipo acts as an add-on to external planners and it has a public source code, so it can be implemented to improve the execution of any other planner

    On the connection of probabilistic model checking, planning, and learning for system verification

    Get PDF
    This thesis presents approaches using techniques from the model checking, planning, and learning community to make systems more reliable and perspicuous. First, two heuristic search and dynamic programming algorithms are adapted to be able to check extremal reachability probabilities, expected accumulated rewards, and their bounded versions, on general Markov decision processes (MDPs). Thereby, the problem space originally solvable by these algorithms is enlarged considerably. Correctness and optimality proofs for the adapted algorithms are given, and in a comprehensive case study on established benchmarks it is shown that the implementation, called Modysh, is competitive with state-of-the-art model checkers and even outperforms them on very large state spaces. Second, Deep Statistical Model Checking (DSMC) is introduced, usable for quality assessment and learning pipeline analysis of systems incorporating trained decision-making agents, like neural networks (NNs). The idea of DSMC is to use statistical model checking to assess NNs resolving nondeterminism in systems modeled as MDPs. The versatility of DSMC is exemplified in a number of case studies on Racetrack, an MDP benchmark designed for this purpose, flexibly modeling the autonomous driving challenge. In a comprehensive scalability study it is demonstrated that DSMC is a lightweight technique tackling the complexity of NN analysis in combination with the state space explosion problem.Diese Arbeit präsentiert Ansätze, die Techniken aus dem Model Checking, Planning und Learning Bereich verwenden, um Systeme verlässlicher und klarer verständlich zu machen. Zuerst werden zwei Algorithmen für heuristische Suche und dynamisches Programmieren angepasst, um Extremwerte für Erreichbarkeitswahrscheinlichkeiten, Erwartungswerte für Kosten und beschränkte Varianten davon, auf generellen Markov Entscheidungsprozessen (MDPs) zu untersuchen. Damit wird der Problemraum, der ursprünglich mit diesen Algorithmen gelöst wurde, deutlich erweitert. Korrektheits- und Optimalitätsbeweise für die angepassten Algorithmen werden gegeben und in einer umfassenden Fallstudie wird gezeigt, dass die Implementierung, namens Modysh, konkurrenzfähig mit den modernsten Model Checkern ist und deren Leistung auf sehr großen Zustandsräumen sogar übertrifft. Als Zweites wird Deep Statistical Model Checking (DSMC) für die Qualitätsbewertung und Lernanalyse von Systemen mit integrierten trainierten Entscheidungsgenten, wie z.B. neuronalen Netzen (NN), eingeführt. Die Idee von DSMC ist es, statistisches Model Checking zur Bewertung von NNs zu nutzen, die Nichtdeterminismus in Systemen, die als MDPs modelliert sind, auflösen. Die Vielseitigkeit des Ansatzes wird in mehreren Fallbeispielen auf Racetrack gezeigt, einer MDP Benchmark, die zu diesem Zweck entwickelt wurde und die Herausforderung des autonomen Fahrens flexibel modelliert. In einer umfassenden Skalierbarkeitsstudie wird demonstriert, dass DSMC eine leichtgewichtige Technik ist, die die Komplexität der NN-Analyse in Kombination mit dem State Space Explosion Problem bewältigt
    corecore