February 14, 2017: Dagstuhl Seminar Computer-Assisted Engineering for Robotics and Autonomous Systems Optimizing the Performance of Robots in Production Logistics Scenarios Gerhard Lakemeyer Knowledge-based Systems Group RWTH Aachen University kbsg.rwth-aachen.de
Autonomous Robots in Production Logistics Vision: Autonomous robots interacting with machines for flexible on-demand production of products with many variants Challenges include: Navigation and manipulation in unstructured environments Online planning, scheduling, and execution Dealing with failures (machines and robots) 1 / 14
RoboCup Logistics League 2015 2 / 14
RoboCup Logistics League 2015 Game Basics Task: In-factory production logistics Goal: variant production Two teams playing on common field Each team has 3 robots Multi-robot coordination task Two Game Phases Exploration : detect and report machines Production : produce and deliver by using processing stations spread across field 2 / 14
RoboCup Logistics League 2015 Playing Field Team colors: cyan and magenta Exclusive machines spread across field Mirrored at middle axis 2 / 14
RoboCup Logistics League – Machines Common Based on Festo Modular Production Systems (MPS) Marker to identify machine Signal light to indicate state Each team has exclusive set Similar handling for all types Machine Types (per team) 1 × Base Station (BS): retrieve bases 2 × Ring Station (RS): mount colored rings 2 × Cap Station (CS): buffer/mount caps 1 × Delivery Station (DS): final delivery 3 / 14
RoboCup Logistics League – Production BS RS 1 RS 2 RS 2 CS 2 Product Composition Products of four complexities (number of rings) Base (3 colors) + 0–3 rings (4 colors) + cap (2 colors) Order of ring colors is important Some ring colors require additional material Actual product variants randomized by referee box Orders have lead time of a few minutes Order Elements (posted dynamically by refbox) Product to deliver (and number thereof) Time window in which to deliver 4 / 14
RoboCup Logistics League – Production Example BS CS 2 C 0 Production Retrieve base with cap from shelf at CS Prepare CS to retrieve cap Feed base into CS DS Discard cap-less base Prepare BS to provide black base CS Retrieve base from BS Prepare CS to mount cap Feed black base to CS Retrieve black base with cap from CS BS Prepare DS for slide specified in order Deliver to DS 5 / 14
RoboCup Logistics League – Production Example BS CS 2 C 0 Production Retrieve base with cap from shelf at CS Prepare CS to retrieve cap Feed base into CS DS Discard cap-less base Prepare BS to provide black base CS Retrieve base from BS Prepare CS to mount cap Feed black base to CS Retrieve black base with cap from CS BS Prepare DS for slide specified in order Deliver to DS 5 / 14
RoboCup Logistics League – Production Example BS CS 2 C 0 Production Retrieve base with cap from shelf at CS Prepare CS to retrieve cap Feed base into CS DS Discard cap-less base Prepare BS to provide black base CS Retrieve base from BS Prepare CS to mount cap Feed black base to CS Retrieve black base with cap from CS BS Prepare DS for slide specified in order Deliver to DS 5 / 14
RoboCup Logistics League – Production Example BS CS 2 C 0 Production Retrieve base with cap from shelf at CS Prepare CS to retrieve cap Feed base into CS DS Discard cap-less base Prepare BS to provide black base CS Retrieve base from BS Prepare CS to mount cap Feed black base to CS Retrieve black base with cap from CS BS Prepare DS for slide specified in order Deliver to DS 5 / 14
RoboCup Logistics League – Production Example BS CS 2 C 0 Production Retrieve base with cap from shelf at CS Prepare CS to retrieve cap Feed base into CS DS Discard cap-less base Prepare BS to provide black base CS Retrieve base from BS Prepare CS to mount cap Feed black base to CS Retrieve black base with cap from CS BS Prepare DS for slide specified in order Deliver to DS 5 / 14
RoboCup Logistics League – Production Example BS CS 2 C 0 Production Retrieve base with cap from shelf at CS Prepare CS to retrieve cap Feed base into CS DS Discard cap-less base Prepare BS to provide black base CS Retrieve base from BS Prepare CS to mount cap Feed black base to CS Retrieve black base with cap from CS BS Prepare DS for slide specified in order Deliver to DS 5 / 14
RoboCup Logistics League – Production Example BS CS 2 C 0 Production Retrieve base with cap from shelf at CS Prepare CS to retrieve cap Feed base into CS DS Discard cap-less base Prepare BS to provide black base CS Retrieve base from BS Prepare CS to mount cap Feed black base to CS Retrieve black base with cap from CS BS Prepare DS for slide specified in order Deliver to DS 5 / 14
RoboCup Logistics League – Production Example BS CS 2 C 0 Production Retrieve base with cap from shelf at CS Prepare CS to retrieve cap Feed base into CS DS Discard cap-less base Prepare BS to provide black base CS Retrieve base from BS Prepare CS to mount cap Feed black base to CS Retrieve black base with cap from CS BS Prepare DS for slide specified in order Deliver to DS 5 / 14
RoboCup Logistics League – Simulation Gazebo-Based Simulation 3D environment with physics engine Agency provided by referee box Multiple abstraction levels Useful as a Benchmark Reduce effort through higher abstraction Rapid development and testing Fully automated games, e.g., overnight tournaments 6 / 14
Architecture Gazebo Referee Box LLSF Environment Gazebo API Models Robot 1 Gazebo Robot 1 Fawkes, ROS, ... Motor, Laser, Cam, ... Gazebo Robot 2 Robot 2 Motor, Laser, Cam, ... Fawkes, ROS, ... Visualization Gazebo Robot 3 Robot 3 Motor, Laser, Cam, ... Fawkes, ROS, ... 7 / 14
Referee Box Agent 8 / 14
Simulated Vision 9 / 14
Planning Competition for Logistics Robots at ICAPS http://www.robocup-logistics.org/sim-comp Joint work with MIT and Technion Special thanks to Tim Niemueller , RWTH Aachen. 10 / 14
A Challenge: Finding Optimized Plans Currently: Each robot computes the next best action; then coordinates with the others; + very flexible, works even when robots or machines fail; − no guarantees for optimality. Goal of this project: Employ optimization techniques to find better plans. 11 / 14
SAT/SMT solvers to the rescue Environment Robot execution Solution system Logical problem SMT-RAT Problem specification Basic idea: Replace existing decision-making facility by a call to an SMT solver (SMT-RAT). Joint work with Erika ´ Abrah´ am 12 / 14
Project goals 1. Build formal models for movement, order schedules and deadlines, production processes, and rewards 2. Encode the scheduling problem as an optimization problem 3. Develop and improve optimization in SMT solving 4. Embed SMT solver into task exec. and monitoring software 5. Evaluate the approach using the existing RCLL simulator 13 / 14
Conclusion The RCLL and especially the simulator can be a useful bridge between robotics and formal methods. We hope to show soon that SMT solvers can be applied to optimize the performance of robots in such scenarios. 14 / 14
Recommend
More recommend