Jill Goryca, Richard Hill American Control Conference June 17, 2013.

Slides:



Advertisements
Similar presentations
Seyedehmehrnaz Mireslami, Mohammad Moshirpour, Behrouz H. Far Department of Electrical and Computer Engineering University of Calgary, Canada {smiresla,
Advertisements

Controlling a manufacturing system efficiently IE450 Fall 2005 Dr. Richard A. Wysk.
MapReduce Online Created by: Rajesh Gadipuuri Modified by: Ying Lu.
Sumitha Ajith Saicharan Bandarupalli Mahesh Borgaonkar.
Technical Advisor : Mr. Roni Stern Academic Advisor : Dr. Meir Kalech Team members :  Amit Ofer  Liron Katav Project Homepage :
Scripts and Flow Control. Scripts So far we have been entering commands directly into the command line But there is a better way Script files (and functions)
JACK Intelligent Agents and Applications Hitesh Bhambhani CSE 6362, SPRING 2003 Dr. Lawrence B. Holder.
Two main requirements: 1. Implementation Inspection policies (scheduling algorithms) that will extand the current AutoSched software : Taking to account.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Controlled Scanning of Microtiter Plates through the Use of LabVIEW® Erica Chin Anton Edmund Samir Laoui May 14, 2008.
Aho-Corasick String Matching An Efficient String Matching.
Chapter 1 and 2 Computer System and Operating System Overview
1 Location-Based Services Using GSM Cell Information over Symbian OS Final Year Project LYU0301 Mok Ming Fai (mfmok1) Lee Kwok Chau (leekc1)
Outline Chapter 1 Hardware, Software, Programming, Web surfing, … Chapter Goals –Describe the layers of a computer system –Describe the concept.
Mehmet Can Vuran, Instructor University of Nebraska-Lincoln Acknowledgement: Overheads adapted from those provided by the authors of the textbook.
Solving problems by searching
[ §4 : 1 ] 4. Requirements Processes II Overview 4.1Fundamentals 4.2Elicitation 4.3Specification 4.4Verification 4.5Validation Software Requirements Specification.
Vision-Based Biometric Authentication System by Padraic o hIarnain Final Year Project Presentation.
An Intelligent Tutoring System (ITS) for Future Combat Systems (FCS) Robotic Vehicle Command I/ITSEC 2003 Presented by:Randy Jensen
Project Presentation by Eddie Smolyansky & Shilo Abramovitch Supervisor: David Erdos.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
02/06/05 “Investigating a Finite–State Machine Notation for Discrete–Event Systems” Nikolay Stoimenov.
Chapter Introduction to Computers and Programming 1.
Introduction 01_intro.ppt
Testing. Definition From the dictionary- the means by which the presence, quality, or genuineness of anything is determined; a means of trial. For software.
Introduction to M ATLAB EE 100 – EE Dept. - JUST.
UPC/SHMEM PAT High-level Design v.1.1 Hung-Hsun Su UPC Group, HCS lab 6/21/2005.
Chapter 5 Engineering Tools for Electrical and Computer Engineers.
Using Dijkstra’s Algorithm to Find a Shortest Path from a to z 1.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Chapter 1: Introduction to Computers and Programming.
Project #4: Experimental Testing of Allocation of Multiple UAVs Tim Arnett, Aerospace Engineering, Junior, University of Cincinnati Devon Riddle, Aerospace.
CHAPTER FOUR COMPUTER SOFTWARE.
Project Management Project Planning Estimating Scheduling.
Introduction to Interactive Media Interactive Media Tools: Software.
Group 4May Final Design Presentation DUNA* (Dynamic Urban Navigation using A*) Name of Team: A*
ECE532 Final Project Demo Disparity Map Generation on a FPGA Using Stereoscopic Cameras ECE532 Final Project Demo Team 3 – Alim, Muhammad, Yu Ting.
Introduction of Geoprocessing Topic 7a 4/10/2007.
Incorporating Dynamic Time Warping (DTW) in the SeqRec.m File Presented by: Clay McCreary, MSEE.
FORMAL VERIFICATION OF ADVANCED SYNTHESIS OPTIMIZATIONS Anant Kumar Jain Pradish Mathews Mike Mahar.
Writing Systems Software in a Functional Language An Experience Report Iavor Diatchki, Thomas Hallgren, Mark Jones, Rebekah Leslie, Andrew Tolmach.
Using a MATLAB/Photoshop Interface to Enhance Image Processing in the Interpretation of Radar Imagery The Center for Remote Sensing of Ice Sheets (CReSIS)
Fall 2004EE 3563 Digital Systems Design EE 3563 VHSIC Hardware Description Language  Required Reading: –These Slides –VHDL Tutorial  Very High Speed.
Avoiding Planetary Rover Damage by Automated Path Planning Michael Flammia Mentor: Dr. Wolfgang Fink Tempe, AZ April 18 th, 2015.
Introduction of Geoprocessing Lecture 9. Geoprocessing  Geoprocessing is any GIS operation used to manipulate data. A typical geoprocessing operation.
Abstract A Structured Approach for Modular Design: A Plug and Play Middleware for Sensory Modules, Actuation Platforms, Task Descriptions and Implementations.
Copyright 2003 Scott/Jones Publishing Standard Version of Starting Out with C++, 4th Edition Chapter 1 Introduction to Computers and Programming.
Tatiana Kichkaylo with Dave Barnhart and Lucy Hoag USC Information Sciences Institute.
1 Circuitscape Capstone Presentation Team Circuitscape Katie Rankin Mike Schulte Carl Reniker Sean Collins.
Introduction of Geoprocessing Lecture 9 3/24/2008.
ECE 448 Lecture 6 Finite State Machines State Diagrams vs. Algorithmic State Machine (ASM) Charts.
TRIUMF HLA Development High Level Applications Perform tasks of accelerator and beam control at control- room level, directly interfacing with operators.
Vision-Guided Humanoid Footstep Planning for Dynamic Environments P. Michel, J. Chestnutt, J. Kuffner, T. Kanade Carnegie Mellon University – Robotics.
Swarm Robotics Research Team A Robotic Application of the Ant Colony Optimization Algorithm The Ant Colony Optimization (ACO) algorithm is generally used.
Beard & McLain, “Small Unmanned Aircraft,” Princeton University Press, 2012, Chapter 12: Slide 1 Chapter 12 Path Planning.
Application architectures Advisor : Dr. Moneer Al_Mekhlafi By : Ahmed AbdAllah Al_Homaidi.
Chapter 1: Introduction to Computers and Programming.
VIEWS b.ppt-1 Managing Intelligent Decision Support Networks in Biosurveillance PHIN 2008, Session G1, August 27, 2008 Mohammad Hashemian, MS, Zaruhi.
SOFTWARE TESTING LECTURE 9. OBSERVATIONS ABOUT TESTING “ Testing is the process of executing a program with the intention of finding errors. ” – Myers.
A Schedule Optimization Tool for Destructive and Non-Destructive Vehicle Tests Jeremy Ludwig, Annaka Kalton, and Robert Richards Stottler Henke Associates,
Travel Modelling Group Technical Advisory Committee
Vision-Guided Humanoid Footstep Planning for Dynamic Environments
Crowd Modelling & Simulation
Finite state machine optimization
Finite state machine optimization
John D. McGregor Session 9 Testing Vocabulary
ECE 448 Lecture 4: Search Intro
Finite State Machines Computer theory covers several types of abstract machines, including Finite State Machines.
DUCKS – Distributed User-mode Chirp-Knowledgeable Server
Intelligent Low-Altitude Air Traffic Management System Group 30
Presentation transcript:

Jill Goryca, Richard Hill American Control Conference June 17, 2013

 Background  System Models  Control Software Implementation  Task Planning Algorithm  Simulation Results  Conclusion

 Goal: ◦ To control two or more robots that work together  Challenges: ◦ Coordinate robot actions ◦ Respond to changing goals and conditions ◦ Scale small examples to larger ones  Practical applications: ◦ Surveillance, search & rescue, and firefighting

 Develop tools necessary to address complex scenarios  Tools include: MATLAB Control Software Task-Planning Optimization

 Apply supervisory control framework ◦ Allow controllable and uncontrollable events ◦ Assume all events are observable ◦ Formally ensure safety and nonblocking  Use a relatively simple, but illustrative scenario involving control of two robots

Components:  2 robots  4 tasks  4 regions Rules:  Complete all tasks ◦ 1 before 2, same robot ◦ 3 before 4, same robot  Different regions

 Finite State Machine (FSM) represents region boundaries and task locations  One FSM for each robot  Initial location of robot is marked with an arrow (Robot A starts in region 5) Geographical Constraints

 Represents the rule that the robot must finish a task before it can start another one Task Contraints

 Represents the order of task completion  Task 1 before task 2 by the same robot  Task 3 before task 4 by the same robot Task Completion

 Represents the rule that robots may not be in the same region at the same time Avoidance

 Use UMDES/DESUMA software  Combine multiple FSMs to synthesize controller that meets goals  Contains 638 states and 1666 transitions  Text file format (*.fsm) is input to MATLAB control software

Interface High-Level Control Low-Level Control (D*Lite, VFH, Mapping) Simulation (Player/Stage) Planner (Main Control File) User InputFinite State Machine MATLAB Tool Intermediary (Goal Plan, Detect Region Events) Optimization (Calculate Costs, Dijkstra) Offline Online User Data

Interface High-Level Control Low-Level Control (D*Lite, VFH, Mapping) Simulation (Player/Stage) Planner (Main Control File) User InputFinite State Machine MATLAB Tool Intermediary (Goal Plan, Detect Region Events) Optimization (Calculate Costs, Dijkstra) Offline Online User Data

 Script file generated from MATLAB Tool  Name of Initial and Final State  User Data matrices: ◦ States—from FSM file ◦ Events—from MATLAB Tool ◦ Tasks—from MATLAB Tool ◦ Regions—from MATLAB Tool

Interface High-Level Control Low-Level Control (D*Lite, VFH, Mapping) Simulation (Player/Stage) Planner (Main Control File) User InputFinite State Machine MATLAB Tool Intermediary (Goal Plan, Detect Region Events) Optimization (Calculate Costs, Dijkstra) Offline Online User Data

 MATLAB high-level control code  Written off-line  References User Data file generated by MATLAB Tool  Controls 1 robot  “While” loop completes “mission” of FSM  Executes optimal path through FSM  Receives events from both robots (when crossing borders and finishing tasks)

Interface High-Level Control Low-Level Control (D*Lite, VFH, Mapping) Simulation (Player/Stage) Planner (Main Control File) User InputFinite State Machine MATLAB Tool Intermediary (Goal Plan, Detect Region Events) Optimization (Calculate Costs, Dijkstra) Offline Online User Data

 Detects “uncontrollable” events (border crossing)  Compares robot current position to all user- defined regions  Converts list of region names to event names for calling function (Goal Plan)

 Commands controllable events, sending robot to goal until event is detected.  Uses low-level algorithms ◦ D*Lite ◦ VFH ◦ Mapping  When uncontrollable event is detected, returns event names to calling function (Main Control File)

Interface High-Level Control Low-Level Control (D*Lite, VFH, Mapping) Simulation (Player/Stage) Planner (Main Control File) User InputFinite State Machine MATLAB Tool Intermediary (Goal Plan, Detect Region Events) Optimization (Calculate Costs, Dijkstra) Offline Online User Data

 Plan the best path through FSM  “Best” is defined as shortest time ◦ (shortest time = shortest distance)  Path is used to: ◦ Control actions of robots ◦ Determine when mission is complete  Path can be re-optimized if costs change

 Determines cost matrix for Dijkstra’s algorithm.  Cost is defined as straight-line distance between robot position and task locations.  New robot position after completion of task is taken into account.

 Plans minimum-cost path through FSM  Sums total cost of all edges (events)  Does not distinguish between robots

 MATLAB high-level control algorithm  Utilizes both robots working simultaneously  Sums cost for each robot individually

 Player/Stage simulation software  Robot A completed tasks 3 and 4  Robot B completed tasks 1 and

 Developed MATLAB control software and optimization algorithms ◦ MATLAB Tool  Generates a data structure from FSM and user input that maps events to low-level functions ◦ Planner  Commands controllable events based on optimal path  Detects uncontrollable events ◦ Optimization  Calculate costs as distance to task  Choose optimal path through FSM for two robots

 Expand MATLAB tool for additional DES applications with controllable and uncontrollable events.  Further test control software ◦ More complex models, actual hardware  Improve optimization algorithms ◦ Save cost information that has not changed, only choose from controllable events