1,529 research outputs found

    Symbolic Control and Planning of Robotic Motion [Grand Challenges of Robotics]

    Get PDF
    Mobile robots are complex systems that combine mechanical elements such as wheels and gears, electromechanical devices such as motors, clutches and brakes, digital circuits such as processors and smart sensors, and software programs such as embedded controllers. They have mechanical constraints (e.g., a car-like robot cannot move sideways), limited energy resources, and computation, sensing, and communication capabilities. They operate in environments cluttered with possibly moving and shape changing obstacles, and their objectives can change over time, such as in the case of appearing and disappearing targets. Robot motion planning and control is the problem of automatic construction of robot control strategies from task specifications given in high-level, human-like language. The challenge in this area is the development of computationally efficient frameworks allowing for systematic, provably correct, control design accommodating both the robot constraints and the complexity of the environment, while at the same time allowing for expressive task specifications

    Symbolic planning for heterogeneous robots through composition of their motion description languages

    Get PDF
    This dissertation introduces a new formalism to define compositions of interacting heterogeneous systems, described by extended motion description languages (MDLes). The properties of the composition system are analyzed and an automatic process to generate sequential atom plan is introduced. The novelty of the formalism is in producing a composed system with a behavior that could be a superset of the union of the behaviors of its generators. As robotic systems perform increasingly complex tasks, people resort increasingly to switching or hybrid control algorithms. A need arises for a formalism to compose different robotic behaviors and meet a final target. The significant work produced to date on various aspects of robotics arguably has not yet effectively captured the interaction between systems. Another problem in motion control is automating the process of planning and it has been recognized that there is a gap between high level planning algorithms and low level motion control implementation. This dissertation is an attempt to address these problems. A new composition system is given and the properties are checked. We allow systems to have additional cooperative transitions and become active only when the systems are composed with other systems appropriately. We distinguish between events associated with transitions a push-down automaton representing an MDLe can take autonomously, and events that cannot initiate transitions. Among the latter, there can be events that when synchronized with some of another push-down automaton, become active and do initiate transitions. We identify MDLes as recursive systems in some basic process algebra (BPA) written in Greibach Normal Form. By identifying MDLes as a subclass of BPAs, we are able to borrow the syntax and semantics of the BPAs merge operator (instead of defining a new MDLe operator), and thus establish closeness and decidability properties for MDLe compositions. We introduce an instance of the sliding block puzzle as a multi-robot hybrid system. We automate the process of planning and dictate how the behaviors are sequentially synthesized into plans that drive the system into a desired state. The decidability result gives us hope to abstract the system to the point that some of the available model checkers can be used to construct motion plans. The new notion of system composition allows us to capture the interaction between systems and we realize that the whole system can do more than the sum of its parts. The framework can be used on groups of heterogeneous robotic systems to communicate and allocate tasks among themselves, and sort through possible solutions to find a plan of action without human intervention or guidance

    Automatic coordination and deployment of multi-robot systems

    Get PDF
    We present automatic tools for configuring and deploying multi-robot networks of decentralized, mobile robots. These methods are tailored to the decentralized nature of the multi-robot network and the limited information available to each robot. We present methods for determining if user-defined network tasks are feasible or infeasible for the network, considering the limited range of its sensors. To this end, we define rigid and persistent feasibility and present necessary and sufficient conditions (along with corresponding algorithms) for determining the feasibility of arbitrary, user-defined deployments. Control laws for moving multi-robot networks in acyclic, persistent formations are defined. We also present novel Embedded Graph Grammar Systems (EGGs) for coordinating and deploying the network. These methods exploit graph representations of the network, as well as graph-based rules that dictate how robots coordinate their control. Automatic systems are defined that allow the robots to assemble arbitrary, user-defined formations without any reliance on localization. Further, this system is augmented to deploy these formations at the user-defined, global location in the environment, despite limited localization of the network. The culmination of this research is an intuitive software program with a Graphical User Interface (GUI) and a satellite image map which allows users to enter the desired locations of sensors. The automatic tools presented here automatically configure an actual multi-robot network to deploy and execute user-defined network tasks.Ph.D.Committee Chair: Dr. Magnus Egerstedt; Committee Co-Chair: Dr. Ayanna Howard; Committee Member: Dr. David Taylor; Committee Member: Dr. Frank Dellaert; Committee Member: Dr. Ian Akyildiz; Committee Member: Dr. Jeff Shamm

    Lightweight Multilingual Software Analysis

    Full text link
    Developer preferences, language capabilities and the persistence of older languages contribute to the trend that large software codebases are often multilingual, that is, written in more than one computer language. While developers can leverage monolingual software development tools to build software components, companies are faced with the problem of managing the resultant large, multilingual codebases to address issues with security, efficiency, and quality metrics. The key challenge is to address the opaque nature of the language interoperability interface: one language calling procedures in a second (which may call a third, or even back to the first), resulting in a potentially tangled, inefficient and insecure codebase. An architecture is proposed for lightweight static analysis of large multilingual codebases: the MLSA architecture. Its modular and table-oriented structure addresses the open-ended nature of multiple languages and language interoperability APIs. We focus here as an application on the construction of call-graphs that capture both inter-language and intra-language calls. The algorithms for extracting multilingual call-graphs from codebases are presented, and several examples of multilingual software engineering analysis are discussed. The state of the implementation and testing of MLSA is presented, and the implications for future work are discussed.Comment: 15 page

    Locally Interacting Hybrid Systems with Embedded Graph Grammars

    Full text link
    Abstract — In many cooperative control methods, the network topology in¤uences the evolution of its continuous states. In turn, the continuous state may in¤uence the network topology due to local restrictions on connectivity. In this paper we present a grammatical approach to modeling and controlling the switching of a system’s network topology, continuous con-trollers, and discrete modes. The approach is based on embedded graph grammars, which restrict interactions to small subgraphs and include spatial restrictions on connectivity and progress. This allows us to direct the behavior of large decentralized systems of robots. The grammatical approach also allows us to compose multiple subsystems into a larger whole in a principled manner. In this paper, we illustrate the approach by proving the correctness of a cooperative control system called the load balanced multiple rendezvous problem. I

    Supervisory control theory applied to swarm robotics

    Get PDF
    Currently, the control software of swarm robotics systems is created by ad hoc development. This makes it hard to deploy these systems in real-world scenarios. In particular, it is difficult to maintain, analyse, or verify the systems. Formal methods can contribute to overcome these problems. However, they usually do not guarantee that the implementation matches the specification, because the system’s control code is typically generated manually. Also, there is cultural resistance to apply formal methods; they may be perceived as an additional step that does not add value to the final product. To address these problems, we propose supervisory control theory for the domain of swarm robotics. The advantages of supervisory control theory, and its associated tools, are a reduction in the amount of ad hoc development, the automatic generation of control code from modelled specifications, proofs of properties over generated control code, and the reusability of formally designed controllers between different robotic platforms. These advantages are demonstrated in four case studies using the e-puck and Kilobot robot platforms. Experiments with up to 600 physical robots are reported, which show that supervisory control theory can be used to formally develop state-of-the-art solutions to a range of problems in swarm robotics

    Fujaba days 2009 : proceedings of the 7th international Fujaba days, Eindhoven University of Technology, the Netherlands, November 16-17, 2009

    Get PDF
    Fujaba is an Open Source UML CASE tool project started at the software engineering group of Paderborn University in 1997. In 2002 Fujaba has been redesigned and became the Fujaba Tool Suite with a plug-in architecture allowing developers to add functionality easily while retaining full control over their contributions. Multiple Application Domains Fujaba followed the model-driven development philosophy right from its beginning in 1997. At the early days, Fujaba had a special focus on code generation from UML diagrams resulting in a visual programming language with a special emphasis on object structure manipulating rules. Today, at least six rather independent tool versions are under development in Paderborn, Kassel, and Darmstadt for supporting (1) reengineering, (2) embedded real-time systems, (3) education, (4) specification of distributed control systems, (5) integration with the ECLIPSE platform, and (6) MOF-based integration of system (re-) engineering tools. International Community According to our knowledge, quite a number of research groups have also chosen Fujaba as a platform for UML and MDA related research activities. In addition, quite a number of Fujaba users send requests for more functionality and extensions. Therefore, the 7th International Fujaba Days aimed at bringing together Fujaba developers and Fujaba users from all over the world to present their ideas and projects and to discuss them with each other and with the Fujaba core development team

    Reconfigurable Computing Systems for Robotics using a Component-Oriented Approach

    Get PDF
    Robotic platforms are becoming more complex due to the wide range of modern applications, including multiple heterogeneous sensors and actuators. In order to comply with real-time and power-consumption constraints, these systems need to process a large amount of heterogeneous data from multiple sensors and take action (via actuators), which represents a problem as the resources of these systems have limitations in memory storage, bandwidth, and computational power. Field Programmable Gate Arrays (FPGAs) are programmable logic devices that offer high-speed parallel processing. FPGAs are particularly well-suited for applications that require real-time processing, high bandwidth, and low latency. One of the fundamental advantages of FPGAs is their flexibility in designing hardware tailored to specific needs, making them adaptable to a wide range of applications. They can be programmed to pre-process data close to sensors, which reduces the amount of data that needs to be transferred to other computing resources, improving overall system efficiency. Additionally, the reprogrammability of FPGAs enables them to be repurposed for different applications, providing a cost-effective solution that needs to adapt quickly to changing demands. FPGAs' performance per watt is close to that of Application-Specific Integrated Circuits (ASICs), with the added advantage of being reprogrammable. Despite all the advantages of FPGAs (e.g., energy efficiency, computing capabilities), the robotics community has not fully included them so far as part of their systems for several reasons. First, designing FPGA-based solutions requires hardware knowledge and longer development times as their programmability is more challenging than Central Processing Units (CPUs) or Graphics Processing Units (GPUs). Second, porting a robotics application (or parts of it) from software to an accelerator requires adequate interfaces between software and FPGAs. Third, the robotics workflow is already complex on its own, combining several fields such as mechanics, electronics, and software. There have been partial contributions in the state-of-the-art for FPGAs as part of robotics systems. However, a study of FPGAs as a whole for robotics systems is missing in the literature, which is the primary goal of this dissertation. Three main objectives have been established to accomplish this. (1) Define all components required for an FPGAs-based system for robotics applications as a whole. (2) Establish how all the defined components are related. (3) With the help of Model-Driven Engineering (MDE) techniques, generate these components, deploy them, and integrate them into existing solutions. The component-oriented approach proposed in this dissertation provides a proper solution for designing and implementing FPGA-based designs for robotics applications. The modular architecture, the tool 'FPGA Interfaces for Robotics Middlewares' (FIRM), and the toolchain 'FPGA Architectures for Robotics' (FAR) provide a set of tools and a comprehensive design process that enables the development of complex FPGA-based designs more straightforwardly and efficiently. The component-oriented approach contributed to the state-of-the-art in FPGA-based designs significantly for robotics applications and helps to promote their wider adoption and use by specialists with little FPGA knowledge

    Fujaba days 2009 : proceedings of the 7th international Fujaba days, Eindhoven University of Technology, the Netherlands, November 16-17, 2009

    Get PDF
    Fujaba is an Open Source UML CASE tool project started at the software engineering group of Paderborn University in 1997. In 2002 Fujaba has been redesigned and became the Fujaba Tool Suite with a plug-in architecture allowing developers to add functionality easily while retaining full control over their contributions. Multiple Application Domains Fujaba followed the model-driven development philosophy right from its beginning in 1997. At the early days, Fujaba had a special focus on code generation from UML diagrams resulting in a visual programming language with a special emphasis on object structure manipulating rules. Today, at least six rather independent tool versions are under development in Paderborn, Kassel, and Darmstadt for supporting (1) reengineering, (2) embedded real-time systems, (3) education, (4) specification of distributed control systems, (5) integration with the ECLIPSE platform, and (6) MOF-based integration of system (re-) engineering tools. International Community According to our knowledge, quite a number of research groups have also chosen Fujaba as a platform for UML and MDA related research activities. In addition, quite a number of Fujaba users send requests for more functionality and extensions. Therefore, the 7th International Fujaba Days aimed at bringing together Fujaba developers and Fujaba users from all over the world to present their ideas and projects and to discuss them with each other and with the Fujaba core development team
    • …
    corecore