Autonomous Vehicles:
Transcription
Autonomous Vehicles:
CERMA 2007 / Tutorial Autonomous Vehicles: Research, Design and Implementation of Intelligent Autonomous Vehicles Autonomous Vehicles Research Group - GPVA http://www.eletrica.unisinos.br/~autonom http://www.eletrica.unisinos.br/~autonom Tutorial page: http://inf.unisinos.br/~osorio/palestras/cerma07.html http://inf.unisinos.br/~osorio/palestras/cerma07.html Dr. Fernando S. Osório Dr. Christian R. Kelber Dr. Cláudio R. Jung M.Sc. M.Sc. Farlei Heinen - Applied Computing PostPost-Grad. Program PIPCA - Electrical Engineering / Computer Eng. - Applied Computing M.Sc. M.Sc. Program PIPCA - Computer Engineering B.Sc. (Director) Grupo de Pesquisas em Veículos Autônomos Autonomous Vehicles Research Group - Unisinos 1 CERMA 2007 / Tutorial Veículos Autônomos Inteligentes • • Introduction Robotic: Automatons, Mobile Robots and Autonomous Robots • Perception, Action, Locomotion e Communication Control and Intelligence Intelligent Vehicles • Technologies for Vehicle Automation Control pyramid Intelligent Control of Autonomous Vehicles Control: Computational Architectures • Simulation of Autonomous Vehicles Computer Vision • Practical Applications Agenda Intelligent Autonomous Vehicles 2 1 CERMA 2007 / Tutorial CONTROL: CONTROL: Computational Architectures => From where do I start? Modeling and Simulation • Models: - Sensorial Models - Actuator Models - Kinematics Models - Environment Models - A.I. Models (Path Planning, Agents, ...) • Simulation: - Validate models - Test robustness - Improve design Control: Computational Architectures Intelligent Autonomous Vehicles 17 CERMA 2007 / Tutorial CONTROL: CONTROL: Computational Architectures => From where do I start? Modeling and Simulation Scientific American January 2007 Control: Computational Architectures Intelligent Autonomous Vehicles 17 2 CERMA 2007 / Tutorial CONTROL: CONTROL: Computational Architectures C2 C3 C4 C1 C5 C0 • Sensorial Models • Kinematics Models M1 C7 M2 C6 Sensorial Model: • Sonar Kinematics Model: • Infrared • Differential • Radar, Compass, Odometer • Aeckerman φ Y Aeckerman θ X θ = V / L * Sin (Φ) X = V * Cos (Φ) * Cos (θ) Y = V * Cos (Φ) * Cos (θ) Control: Computational Architectures Intelligent Autonomous Vehicles 18 CERMA 2007 / Tutorial CONTROL: CONTROL: Computational Architectures • Sensorial Models • Kinematics Models • Robotic Control: * Reactive * Deliberative * Hierarchical * Hybrid • Environment Maps * Building Maps * Path Planning * SMPA - Sense Model Plan Act • Problems: * Complex tasks * Avoid Obstacles: Static / Mobile - Unexpected obstacles * Robot actual position estimation - Where am I ? Control: Computational Architectures Intelligent Autonomous Vehicles 17 3 CERMA 2007 / Tutorial CONTROL: CONTROL: Computational Architectures Complexity... P.Bessièrre * Action Planning * Ability to Perceive the Environment * Ability to Decide * Ability to Act * High Level Tasks Planning * Reaction: Sensorial-Motor * Estimate Actual and Future States * Adaptation and Learning * Robustness * Unexpected Situations => From where do I start ??? Control: Computational Architectures Intelligent Autonomous Vehicles 20 CERMA 2007 / Tutorial CONTROL: CONTROL: Computational Architectures Complexity... Control: Computational Architectures Intelligent Autonomous Vehicles 21 4 CERMA 2007 / Tutorial CONTROL: CONTROL: Computational Architectures Complexity... Control: Computational Architectures Simplify! How? Intelligent Autonomous Vehicles 22 CERMA 2007 / Tutorial CONTROL: REACTIVE Architecture Complexity... Simplify! How? MIT - OCW • Reactive: Sensorial-Motor Integration • Able to Act • Able to Perceive the Environment • Able to React Reactive Control Architecture Intelligent Autonomous Vehicles 23 5 CERMA 2007 / Tutorial CONTROL: REACTIVE Architecture • Reactive: Sensorial-Motor Integration S2 IF S1 < Threshold and S2 < Threshold and S3 < Threshold and S4 < Threshold THEN Action (Go_Forward) S3 S4 S1 S0 S5 M1 S7 Reactive Control M2 IF S1 < Threshold and S2 < Threshold and S3 > Threshold and S4 > Threshold THEN Action (Turn_Left) S6 IF S2 > Threshold and S3 > Threshold and S2 > S3 and S1 > S4 THEN Action (Turn_Right) Sensorial-Motor: Perceive => Act Reactive Control Intelligent Autonomous Vehicles 24 CERMA 2007 / Tutorial CONTROL: REACTIVE Architecture • Reactive: Sensorial-Motor Integration Reactive Control Robotic Lawn Mowers - Toro iMow - Husqvarna Auto Mower - Automower Electrolux Sensorial-Motor: Avoid Obstacles, Wall Following, Wander Reactive Control Electrolux Trilobite Robotic Vacuum Cleaner ZA1 http://www.onrobo.com/reviews/At_Home/Vacuum_Cleaners http://www.onrobo.com/reviews/At_Home/Vacuum_Cleaners// Intelligent Autonomous Vehicles 25 6 CERMA 2007 / Tutorial CONTROL: REACTIVE Architecture Reactive Control • Reactive: Sensorial-Motor Integration Sensorial-Motor: - Avoid Obstacles - Wall Following - Wander Simple behaviors… Robustness? Complex tasks? Reactive Control Intelligent Autonomous Vehicles 26 CERMA 2007 / Tutorial CONTROL: CONTROL: DELIBERATIVE Architectures • Deliberative: Planning + Action Deliberative Control SIMROB (2D) - Map - Configuration Space - Visibility Graph - Optimized Path (Dijkstra) Robotic Arm: Pre-defined paths Deliberative Control Architecture Intelligent Autonomous Vehicles 27 7 CERMA 2007 / Tutorial Deliberative Control CONTROL: CONTROL: DELIBERATIVE Architectures • Deliberative: Planning + Action Tarefas Complexas... Robustez? Imprevistos? Ambiente pouco conhecido? Geometric Map based Navigation: Planning: Graph+Dijkstra, A* Grid based Navigation: Planning: A* Deliberative Control Intelligent Autonomous Vehicles 28 CERMA 2007 / Tutorial CONTROL: CONTROL: HIERARCHICAL and HYBRID Architectures Hierarchical and Hybrid Control Combining: Deliberative + Reactive Hierarchical Control: - Control Layers - Priorities - Information Exchange Figures From: Brooks, R. A. MIT A.I. Memo 864 Sept. 1985 Brooks - Subsumption Architecture Hierarchical and Hybrid Control Intelligent Autonomous Vehicles 29 8 CERMA 2007 / Tutorial Hierarchical and Hybrid Control CONTROL: CONTROL: HIERARCHICAL and HYBRID Architectures Building the Environment Map: MODEL SMPA - SENSE / MODEL / PLAN / ACT PLAN: AStar Dijkstra S E N S E ACT ! Sebastian Thrun / CMU Hierarchical and Hybrid Control Intelligent Autonomous Vehicles 30 CERMA 2007 / Tutorial Hybrid Control CONTROL: CONTROL: Simple HYBRID Architectures Farlei Heinen PLAN: Dijkstra ACT & ReACT Hybrid Control Intelligent Autonomous Vehicles 31 9 CERMA 2007 / Tutorial Hybrid Control CONTROL: CONTROL: Simple HYBRID Architectures Farlei Heinen References: SEVA2D / SEVA3D Autonomous Vehicle Parking TASK PLANNING & CONTROL: Finite State Automata (FSA) Artificial Neural Net (ANN) ACTION: Sense, Act React (change state) SEVA-A (Automaton) Farlei Heinen SEVA-N (Neural) Farlei Heinen Fernando Osório Luciane Fortes Milton Heinen Publications: SBRN 2002 WCCI 2006 Intelligent Autonomous Vehicles Hybrid Control 32 CERMA 2007 / Tutorial Hybrid Control CONTROL: CONTROL: Simple HYBRID Architectures SimRob3D SEVA3D Simulation Kinematics: Estimation of Position and Orientation 3D World Robot Model Control Motor Actions Perception: Sensor Simulation Sensorial Information Commands Control: SEVA3D-A (FSA) SEVA3D-N (Neural) Sensors Visualization Hybrid Control Intelligent Autonomous Vehicles 32 10 CERMA 2007 / Tutorial CONTROL: CONTROL: Computational Architectures • Sensorial Models • Kinematics Models • Robotic Control: * Reactive * Deliberative * Hierarchical * Hybrid • Environment Maps * Building Maps * Path Planning * SMPA - Sense Model Plan Act • Problems: * Complex tasks * Avoid Obstacles: Static / Mobile - Unexpected obstacles * Robot actual position estimation - Where am I ? Robust Hybrid Control Intelligent Autonomous Vehicles 33 CERMA 2007 / Tutorial Intelligent Autonomous Vehicles Control System Task Execution PROBLEMS: * Avoid Obstacles - Known Obstacles - Unknown Obstacles (static / no movement) - Unknown Obstacles (dynamic / moving objects) * Positioning - How to determine the exact actual position of the robot ? - How to maintain the control of exact position after displacement ? - Error and Imprecision: Move forward / Rotate Robust Hybrid Control Intelligent Autonomous Vehicles 34 11 CERMA 2007 / Tutorial Intelligent Autonomous Vehicles Control System Task Execution * Avoid Obstacles PROBLEMS: - Known Obstacles - Unknown Obstacles (static / no movement) - Unknown Obstacles (dynamic / moving objects) Robust Hybrid Control Intelligent Autonomous Vehicles 35 CERMA 2007 / Tutorial PROBLEMS: Intelligent Autonomous Vehicles Control System Task Execution * Positioning - How to determine the exact actual position of the robot ? - How to maintain the control of exact position after displacement ? - Error and Imprecision: Move forward / Rotate Robust Hybrid Control Intelligent Autonomous Vehicles 36 12 CERMA 2007 / Tutorial Robust Hybrid Control – COHBRA / HyCAR [SimRob3D] Robot Sensors Actuators Control Layers Behaviors Positioning Estimator (Monte Carlo) Environment Representation Maps Polygonal Sequencer Control Modules Grid Path Planning Topological and Semantic Shared Memory Robust Hybrid Control Intelligent COHBRA –Autonomous Controle HíbridoVehicles de Robôs Autônomos HyCAR - Hybrid Control for Autonomous Robots 37 CERMA 2007 / Tutorial Robust Hybrid Control – COHBRA / HyCAR [SimRob3D] Simulation using SimRob3D Robust Hybrid Control Intelligent Autonomous Vehicles 38 13 CERMA 2007 / Tutorial Robust Hybrid Control – COHBRA / HyCAR [SimRob3D] Simulation using a static environment Position estimation based on Monte Carlo Localization Method Robust Hybrid Control Intelligent Autonomous Vehicles 39 CERMA 2007 / Tutorial Robust Hybrid Control – COHBRA / HyCAR [SimRob3D] Simulation using a static environment Position estimation based on Monte Carlo Localization Method Robust Hybrid Control Intelligent Autonomous Vehicles 40 14 CERMA 2007 / Tutorial Robust Hybrid Control – COHBRA / HyCAR [SimRob3D] Simulation using a static environment Environment was changed related to the original map Internal robot representation is different from actual world configuration Robust Hybrid Control Intelligent Autonomous Vehicles 41 CERMA 2007 / Tutorial Robust Hybrid Control – COHBRA / HyCAR [SimRob3D] Simulation using a dynamic environment (mobile obstacles) Robust Hybrid Control Intelligent Autonomous Vehicles 42 15 CERMA 2007 / Tutorial Robust Hybrid Control – COHBRA / HyCAR [SimRob3D] Position estimation based on Monte Carlo Method: Robot was moved, starting in a new and unknown position Robust Hybrid Control Intelligent Autonomous Vehicles 43 CERMA 2007 / Tutorial Robust Hybrid Control – COHBRA / HyCAR [SimRob3D] Virtual Environment: 3D Realistic Environment SimRob3D Simulation Tool Robust Hybrid Control Intelligent Autonomous Vehicles 44 16 CERMA 2007 / Tutorial Robust Hybrid Control – COHBRA / HyCAR [SimRob3D] Virtual Environment: 3D Realistic Environment SimRob3D Simulation Tool Robust Hybrid Control Intelligent Autonomous Vehicles 45 CERMA 2007 / Tutorial Robust Hybrid Control – COHBRA / HyCAR [SimRob3D] SEVA 3D SimRob3D Simulation Tool Robust Hybrid Control Intelligent Autonomous Vehicles 46 17 CERMA 2007 / Tutorial Intelligent Autonomous Robots and Vehicles << Intelligence >> * Task and Actions Planning * Ability to Perceive the Environment * Ability to Decide * Ability to Act * High Level Tasks Planning * Reaction: Sensorial-Motor Integration * Estimate Actual and Future States: Environment + Behavior = Interaction * Adaptation and Learning * Robustness: Unexpected Situations Next steps... Intelligent Autonomous Vehicles GPVA 47 CERMA 2007 / Tutorial Intelligent Autonomous Robots and Vehicles << Intelligence >> DARPA Challenge - Desert (2004, 2005) * Task and Actions Planning * Ability to Perceive the Environment * Ability to Decide * Ability to Act * High Level Tasks Planning * Reaction: Sensorial-Motor Integration DARPA Challenge - Urban (2007) * Estimate Actual and Future States: Environment + Behavior = Interaction * Adaptation and Learning * Robustness: Unexpected Situations Next steps... GPVA Intelligent Autonomous Vehicles 47 18 CERMA 2007 / Tutorial Intelligent Autonomous Robots and Vehicles << Intelligence >> * Task and Actions Planning * Ability to Perceive the Environment Computational Vision * Ability to Decide * Ability to Act * High Level Tasks Planning * Reaction: Sensorial-Motor Integration * Estimate Actual and Future States: Environment + Behavior = Interaction * Adaptation and Learning * Robustness: Unexpected Situations Next steps... Computational Vision Intelligent Autonomous Vehicles 48 CERMA 2007 / Tutorial Intelligent Autonomous Robots and Vehicles << Intelligence >> Computational Vision • Path following: - Follow Me, Lane Follow • Avoid danger situations: going out of the track - Lane Detection • Obstacle detection: pedestrians, cars, etc • Traffic signs detection and recognition • Visual Navigation (Based on Images) Computational Vision Intelligent Autonomous Vehicles 49 19 CERMA 2007 / Tutorial Intelligent Autonomous Robots and Vehicles << Intelligence >> Computational Vision Lane Follow Lane Departure Detection Follow Me Computational Vision Intelligent Autonomous Vehicles 50 CERMA 2007 / Tutorial Visual Navigation Image Database: Path defined by a sequence of image Reference ImagemAtual Image NCC (match) Next Image PróximaImagem Imagem Robot capturada acquired image pelorobô Navigation based on Monochromatic Images [Jones et al. 1997] Algorithm: NCC – Normalized CrossCross-Correlation Visual Navigation Intelligent Autonomous Vehicles 51 20 CERMA 2007 / Tutorial Visual Navigation [Matsumoto et al. 1996] Matlab Code IR: Reference Image ICR: Image Captured by the robot [Righes 2004, 2005] Visual Navigation Intelligent Autonomous Vehicles 52 CERMA 2007 / Tutorial Visual Navigation [Righes 04] Visual Navigation Intelligent Autonomous Vehicles 53 21 CERMA 2007 / Tutorial Visual Navigation Mobile Robot Localization and Mapping with Uncertainty using Scale-Invariant Visual Landmarks Stephen Se, David Lowe, Jim Little (UBC, CA) Algorithm: SIFT Reference Int. Journal of Robotics Research Vol. 21, No. 8, August 2002, pp. 735-758, Visual Navigation Intelligent Autonomous Vehicles 54 CERMA 2007 / Tutorial Visual Navigation Omnidirectional Cameras Visual Navigation Intelligent Autonomous Vehicles 55 22 CERMA 2007 / Tutorial Aerial Visual Navigation Vision System for Unmanned Aerial Vehicles Correlation: Satellite image and Helicopter Results... Not good at all! Visual Navigation Intelligent Autonomous Vehicles 55 CERMA 2007 / Tutorial Aerial Visual Navigation Vision System for Unmanned Aerial Vehicles Referential Correlation in the Crossing Point Using helicopter only images Very Good Match! Visual Navigation Intelligent Autonomous Vehicles 23 CERMA 2007 / Tutorial Vehicle Visual System Vision system used to identify traffic signs [F.Alves 2003] [H]SI RGB Color HSV Color Color based sign segmentation Artificial Neural Network Recognition Visual Systems Intelligent Autonomous Vehicles CERMA 2007 / Tutorial Multiple Vehicles: Fire fighting squad Planning, Navigation, Control + Strategy, Cooperation Visual Systems Intelligent Autonomous Vehicles 24 CERMA 2007 / Tutorial http://www.eletrica.unisinos.br/~autonom Google: Veículos Autônomos Intelligent Autonomous Vehicles CERMA 2007 / Tutorial Intelligent Autonomous Vehicles 25