135 research outputs found

    Unified Behavior Framework for Reactive Robot Control in Real-Time Systems

    Get PDF
    Endeavors in mobile robotics focus on developing autonomous vehicles that operate in dynamic and uncertain environments. By reducing the need for human-in- the-loop control, unmanned vehicles are utilized to achieve tasks considered dull or dangerous by humans. Because unexpected latency can adversely affect the quality of an autonomous system\u27s operations, which in turn can affect lives and property in the real-world, their ability to detect and handle external events is paramount to providing safe and dependable operation. Behavior-based systems form the basis of autonomous control for many robots. This thesis presents the unified behavior framework, a new and novel approach which incorporates the critical ideas and concepts of the existing reactive controllers in an effort to simplify development without locking the system developer into using any single behavior system. The modular design of the framework is based on modern software engineering principles and only specifies a functional interface for components, leaving the implementation details to the developers. In addition to its use of industry standard techniques in the design of reactive controllers, the unified behavior framework guarantees the responsiveness of routines that are critical to the vehicle\u27s safe operation by allowing individual behaviors to be scheduled by a real-time process controller. The experiments in this thesis demonstrate the ability of the framework to: 1) interchange behavioral components during execution to generate various global behavior attributes; 2) apply genetic programming techniques to automate the discovery of effective structures for a domain that are up to 122 percent better than those crafted by an expert; and 3) leverage real-time scheduling technologies to guarantee the responsiveness of time critical routines regardless of the system\u27s computational load

    Automated Software Transplantation

    Get PDF
    Automated program repair has excited researchers for more than a decade, yet it has yet to find full scale deployment in industry. We report our experience with SAPFIX: the first deployment of automated end-to-end fault fixing, from test case design through to deployed repairs in production code. We have used SAPFIX at Facebook to repair 6 production systems, each consisting of tens of millions of lines of code, and which are collectively used by hundreds of millions of people worldwide. In its first three months of operation, SAPFIX produced 55 repair candidates for 57 crashes reported to SAPFIX, of which 27 have been deem as correct by developers and 14 have been landed into production automatically by SAPFIX. SAPFIX has thus demonstrated the potential of the search-based repair research agenda by deploying, to hundreds of millions of users worldwide, software systems that have been automatically tested and repaired. Automated software transplantation (autotransplantation) is a form of automated software engineering, where we use search based software engineering to be able to automatically move a functionality of interest from a ‘donor‘ program that implements it into a ‘host‘ program that lacks it. Autotransplantation is a kind of automated program repair where we repair the ‘host‘ program by augmenting it with the missing functionality. Automated software transplantation would open many exciting avenues for software development: suppose we could autotransplant code from one system into another, entirely unrelated, system, potentially written in a different programming language. Being able to do so might greatly enhance the software engineering practice, while reducing the costs. Automated software transplantation manifests in two different flavors: monolingual, when the languages of the host and donor programs is the same, or multilingual when the languages differ. This thesis introduces a theory of automated software transplantation, and two algorithms implemented in two tools that achieve this: µSCALPEL for monolingual software transplantation and τSCALPEL for multilingual software transplantation. Leveraging lightweight annotation, program analysis identifies an organ (interesting behavior to transplant); testing validates that the organ exhibits the desired behavior during its extraction and after its implantation into a host. We report encouraging results: in 14 of 17 monolingual transplantation experiments involving 6 donors and 4 hosts, popular real-world systems, we successfully autotransplanted 6 new functionalities; and in 10 out of 10 multlingual transplantation experiments involving 10 donors and 10 hosts, popular real-world systems written in 4 different programming languages, we successfully autotransplanted 10 new functionalities. That is, we have passed all the test suites that validates the new functionalities behaviour and the fact that the initial program behaviour is preserved. Additionally, we have manually checked the behaviour exercised by the organ. Autotransplantation is also very useful: in just 26 hours computation time we successfully autotransplanted the H.264 video encoding functionality from the x264 system to the VLC media player, a task that is currently done manually by the developers of VLC, since 12 years ago. We autotransplanted call graph generation and indentation for C programs into Kate, (a popular KDE based test editor used as an IDE by a lot of C developers) two features currently missing from Kate, but requested by the users of Kate. Autotransplantation is also efficient: the total runtime across 15 monolingual transplants is 5 hours and a half; the total runtime across 10 multilingual transplants is 33 hours

    Evolutionary approaches to mobile robot systems.

    Get PDF

    The design and intelligent control of an autonomous mobile robot

    Get PDF
    This thesis presents an investigation into the problems of exploration, map building and collision free navigation for intelligent autonomous mobile robots. The project began with an extensive review of currently available literature in the field of mobile robot research, which included intelligent control techniques and their application. It became clear that there was scope for further development with regard to map building and exploration in new and unstructured environments. Animals have an innate propensity to exhibit such abilities, and so the analogous use of artificial neural networks instead of actual neural systems was examined for use as a method of robot mapping. A simulated behaviour based mobile robot was used in conjunction with a growing cell structure neural network to map out new environments. When using the direct application of this algorithm, topological irregularities were observed to be the direct result of correlations within the input data stream. A modification to this basic system was shown to correct the problem, but further developments would be required to produce a generic solution. The mapping algorithms gained through this approach, although more similar to biological systems, are computationally inefficient in comparison to the methods which were subsequently developed. A novel mapping method was proposed based on the robot creating new location vectors, or nodes, when it exceeded a distance threshold from its mapped area. Network parameters were developed to monitor the state of growth of the network and aid the robot search process. In simulation, the combination of the novel mapping and search process were shown to be able to construct maps which could be subsequently used for collision free navigation. To develop greater insights into the control problem and to validate the simulation work the control structures were ported to a prototype mobile robot. The mobile robot was of circular construction, with a synchro-drive wheel configuration, and was equipped with eight ultrasonic distance sensors and an odometric positioning system. It was self-sufficient, incorporating all its power and computational resources. The experiments observed the effects of odometric drift and demonstrated methods of re-correction which were shown to be effective. Both the novel mapping method, and a new algorithm based on an exhaustive mesh search, were shown to be able to explore different environments and subsequently achieve collision free navigation. This was shown in all cases by monitoring the estimates in the positional error which remained within fixed bounds

    Evolutionary Computation

    Get PDF
    This book presents several recent advances on Evolutionary Computation, specially evolution-based optimization methods and hybrid algorithms for several applications, from optimization and learning to pattern recognition and bioinformatics. This book also presents new algorithms based on several analogies and metafores, where one of them is based on philosophy, specifically on the philosophy of praxis and dialectics. In this book it is also presented interesting applications on bioinformatics, specially the use of particle swarms to discover gene expression patterns in DNA microarrays. Therefore, this book features representative work on the field of evolutionary computation and applied sciences. The intended audience is graduate, undergraduate, researchers, and anyone who wishes to become familiar with the latest research work on this field

    A study of scientific thinking with young adolescents

    Get PDF
    This project looks at the ability of young adolescents at lower secondary level to recognise experiments as ways of asking questions in scientific investigations. Many science curricula emphasise the need for pupils to develop skills necessary for experimenting, like planning and designing experiments for investigations, deciding on which variables to manipulate during the experiment, recognising a critical piece of information which could be used to plan and design a critical experiment. A number of questions based on the available literature and theoretical evidence were raised. These questions formed the basis for the study: (1) Do pupils at lower secondary level appreciate the inclusion of experiments in science learning? (2) Can these pupils identify a critical piece of information necessary for providing a credible solution to a problem? (3) Do lower secondary level pupils have the ability to conceptualise or see experiments as ways of asking critical questions in scientific investigations? ( 4) Can the development of the experimenting skill in those pupils at lower secondary level who have not yet developed it be accelerated through appropriate teaching? (5) Can lower secondary pupils from completely different teaching and cultural backgrounds demonstrate similar performances in terms of seeing the experiment as a way of asking critical questions in scientific investigations? To answer these questions a three stage investigation was used. Each stage was called an experiment. For the entire investigation, a total of 1964 pupils were used from Botswana [junior (lower) secondary schools] and Scotland [lower secondary schools]. A card game called Eloosis, questionnaires/tests, teaching units and interviews were employed at different stages of the investigations. The teaching units and Eloosis were used to help pupils accelerate the development of the ability to recognise critical pieces of information for critical experiments in scientific investigations where possible. The questionnaires/tests were designed to examine evidence of the development of this ability skills. Interviews were meant to solicit more information from pupils regarding the ability of the pupils to conceptualise the place and nature of experimentation in scientific enquiry. However, Scotland pupils and one sample of the Botswana pupils did not participate in the use of teaching units. The data collect from the Scotland pupils was primarily used to establish the wider acceptance of the results obtained from the Botswana group. From the results obtained from this study, it was clear that pupils from different educational and cultural settings equally appreciated the inclusion of experimental work in their science activities. However, their perceptions of its place and purpose differed from those of the curriculum planners. The evidence from the data analysis suggested that the ability to see experiments as ways of asking questions in scientific investigations is significantly developmental and cannot be homogeneously accelerated. The result appears to be true for all pupils at this age range regardless of their educational and cultural background. There was also a general lack of the ability to identify a critical piece of information which, in the opinion of this project is related to the ability to recognise critical experiments for working out solutions to scientific problems. However, it was not possible to gain much insight into the extent to which the teaching units and Eloosis, when used over a longer period of time, could impact on the development of the experimental skills. The reason for this lies within the restrictions on time and the Willingness of the schools to allow such a prolonged access to their pupils. It also emerged from the interview results that most pupils, in their responses, confused experimenting with practical work. This finding explains why a significantly higher number of the pupils indicated that what they liked most about their science lessons were experiments
    • …
    corecore