Efficient Roadway Modeling and Behavior Control for Real-time Simulation Hongling Wang Department Of Computer Science University of Iowa Oct. 28, 2004.

Slides:



Advertisements
Similar presentations
Steady-state heat conduction on triangulated planar domain May, 2002
Advertisements

Arc-length computation and arc-length parameterization
Chapter 9: Vector Differential Calculus Vector Functions of One Variable -- a vector, each component of which is a function of the same variable.
Differential geometry I
On Map-Matching Vehicle Tracking Data
CSCI 347 / CS 4206: Data Mining Module 07: Implementations Topic 03: Linear Models.
Geometric Modeling Notes on Curve and Surface Continuity Parts of Mortenson, Farin, Angel, Hill and others.
Verbs and Adverbs: Multidimensional Motion Interpolation Using Radial Basis Functions Presented by Sean Jellish Charles Rose Michael F. Cohen Bobby Bodenheimer.
Animation Following “Advanced Animation and Rendering Techniques” (chapter 15+16) By Agata Przybyszewska.
Forward and Inverse Kinematics CSE 3541 Matt Boggus.
School of Systems, Engineering, University of Reading rkala.99k.org April, 2013 Motion Planning for Multiple Autonomous Vehicles Rahul Kala Genetic Algorithm.
Trajectory Generation
Chapter 18 Interpolation The Islamic University of Gaza
Image Segmentation and Active Contour
1 Minimum Ratio Contours For Meshes Andrew Clements Hao Zhang gruvi graphics + usability + visualization.
On Constrained Optimization Approach To Object Segmentation Chia Han, Xun Wang, Feng Gao, Zhigang Peng, Xiaokun Li, Lei He, William Wee Artificial Intelligence.
1 Peds and Paths: Small Group Behavior in Urban Environments Joseph K. Kearney Hongling Wang Terry Hostetler Kendall Atkinson The University of Iowa.
Offset of curves. Alina Shaikhet (CS, Technion)
N.E. Leonard – ASAP Progress Meeting – February 17-18, 2005 Slide 1/22 ASAP Progress Report Adaptive Sampling and Cooperative Control Naomi Ehrich Leonard.
Prénom Nom Document Analysis: Linear Discrimination Prof. Rolf Ingold, University of Fribourg Master course, spring semester 2008.
Motion Analysis (contd.) Slides are from RPI Registration Class.
CSci 6971: Image Registration Lecture 4: First Examples January 23, 2004 Prof. Chuck Stewart, RPI Dr. Luis Ibanez, Kitware Prof. Chuck Stewart, RPI Dr.
Modelling. Outline  Modelling methods  Editing models – adding detail  Polygonal models  Representing curves  Patched surfaces.
Geometric Modeling Surfaces Mortenson Chapter 6 and Angel Chapter 9.
Curves Mortenson Chapter 2-5 and Angel Chapter 9
Mobile Robotics: 10. Kinematics 1
Chapter 5: Path Planning Hadi Moradi. Motivation Need to choose a path for the end effector that avoids collisions and singularities Collisions are easy.
Steering Behaviors For Autonomous Characters
Linear Discriminant Functions Chapter 5 (Duda et al.)
Inverse Kinematics Jacobian Matrix Trajectory Planning
CSci 6971: Image Registration Lecture 5: Feature-Base Regisration January 27, 2004 Prof. Chuck Stewart, RPI Dr. Luis Ibanez, Kitware Prof. Chuck Stewart,
CSE554Laplacian DeformationSlide 1 CSE 554 Lecture 8: Laplacian Deformation Fall 2012.
Introduction Tracking the corners Camera model and collision detection Keyframes Path Correction Controlling the entire path of a virtual camera In computer.
October 14, 2014Computer Vision Lecture 11: Image Segmentation I 1Contours How should we represent contours? A good contour representation should meet.
KINEMATICS OF PARTICLES Kinematics of Particles This lecture introduces Newtonian (or classical) Mechanics. It concentrates on a body that can be considered.
Adaptive CSMA under the SINR Model: Fast convergence using the Bethe Approximation Krishna Jagannathan IIT Madras (Joint work with) Peruru Subrahmanya.
V. Space Curves Types of curves Explicit Implicit Parametric.
Chapter 5 Trajectory Planning 5.1 INTRODUCTION In this chapters …….  Path and trajectory planning means the way that a robot is moved from one location.
Chapter 5 Trajectory Planning 5.1 INTRODUCTION In this chapters …….  Path and trajectory planning means the way that a robot is moved from one location.
Robotics Chapter 5 – Path and Trajectory Planning
Evolution-based least-squares fitting using Pythagorean hodograph spline curves Speaker: Ying.Liu November
Steering Behaviors for Autonomous Vehicles in Virtual Evironments Hongling Wang Joseph K. Kearney James Cremer Department Of Computer Science University.
Course 13 Curves and Surfaces. Course 13 Curves and Surface Surface Representation Representation Interpolation Approximation Surface Segmentation.
Computer Animation Rick Parent Computer Animation Algorithms and Techniques Optimization & Constraints Add mention of global techiques Add mention of calculus.
How Errors Propagate Error in a Series Errors in a Sum Error in Redundant Measurement.
Behavior Control of Virtual Vehicle
Ship Computer Aided Design MR 422. Geometry of Curves 1.Introduction 2.Mathematical Curve Definitions 3.Analytic Properties of Curves 4.Fairness of Curves.
Intersections.
Course14 Dynamic Vision. Biological vision can cope with changing world Moving and changing objects Change illumination Change View-point.
City College of New York 1 John (Jizhong) Xiao Department of Electrical Engineering City College of New York Mobile Robot Control G3300:
CSCE 441: Keyframe Animation/Smooth Curves (Cont.) Jinxiang Chai.
CSCE 441: Keyframe Animation/Smooth Curves (Cont.) Jinxiang Chai.
IEEE VR 2003 Ribbon Networks for Modeling Navigable Paths of Autonomous Agents in Virtual Urban Environments Peter Willemsen Joseph Kearney Hongling Wang.
Ship Computer Aided Design
An Algorithm to Follow Arbitrarily Curved Paths Steven Kapturowski.
Simulations of Curve Tracking using Curvature Based Control Laws Graduate Student: Robert Sizemore Undergraduate Students: Marquet Barnes,Trevor Gilmore,
Introduction to Parametric Curve and Surface Modeling.
Linear Discriminant Functions Chapter 5 (Duda et al.) CS479/679 Pattern Recognition Dr. George Bebis.
October 3, 2013Computer Vision Lecture 10: Contour Fitting 1 Edge Relaxation Typically, this technique works on crack edges: pixelpixelpixel pixelpixelpixelebg.
Physically-Based Motion Synthesis in Computer Graphics
Trajectory Generation
Character Animation Forward and Inverse Kinematics
Department of Computer Science
12 Vector-Valued Functions
Calculus III Exam Review
Dongwook Kim, Beomjun Kim, Taeyoung Chung, and Kyongsu Yi
Calibration and Validation
CSCE 441: Keyframe Animation/Smooth Curves (Cont.)
Chapter 4 . Trajectory planning and Inverse kinematics
Survey Networks Theory, Design and Testing
Presentation transcript:

Efficient Roadway Modeling and Behavior Control for Real-time Simulation Hongling Wang Department Of Computer Science University of Iowa Oct. 28, 2004

Overview Research introduction Motivation Model of roadways Behavior control on roadways Contributions Future work

Research Introduction Dynamic Virtual Environment –Vehicles, pedestrians, etc… –Lots of them! Roadway Modeling –Put some activities on roadways Behaviors –Control the activities happing on roadways

Motivation Virtual environments –Laboratories for psychology –Understanding driver/rider behavior –Test future car concepts More applications

Roadway Modeling Ribbon network –Modeling roads, streets, sidewalks, and other navigable ways as ribbons Ribbon defines geometry and orientation of navigable surface –Centerline curve –Ribbon twisting around centerline –Boundaries on two sides –Orientation

Ribbon Ribbon coordinate system –Distance, Offset, and loft (D,O,L) Provides a frame of reference for local spatial relationships

Ribbon Centerline Modeled by cubic spline Q(t)=(x(t),y(t),z(t)) Arc-length parameterization –Compute arc length s as a function of parameter t –Compute the inverse function t=A -1 (s) –Replace parameter t with A -1 (s) P(s)=(x(A -1 (s)),y(A -1 (s)),z(A -1 (s )))

Arc-length Parameterization Generally integral for A(t) does not integrate s=A(t)= Function t=A -1 (s) is not elementary function Numeric methods impractical for real-time applications Solution: Approximately arc-length parameterized cubic spline curve

Approximately Arc-length Parameterized Cubic Spline Curve Compute length of input curve Find m+1 equally spaced points on input curve Interpolate the equally space points to arc length s to derive a new cubic spline curve

Errors Analysis Match error –Misfit of the derived curve from an input curve –Measured by difference between the two curves at corresponding points, |Q(t)-P(s)| Arc-length parameterization error –Deviation of the derived curve from arc-length parameterization –Measured by formula

Experimental Results (1) m=5 (2) m=10 Experimental curve(blue) and the derived curve (red) with their knot points

Experimental Results (cont.) (1) m=5 (2) m=10 Match error of the derived curve

Experimental Results (cont.) ( 1) m=5 (2) m=10 Arc-length parameterization error of the derived curve

A parametric model for ribbons Through any point on a ribbon passes a line that lies on it and is perpendicular to the central axis –Intersection between the line and the central axis (x(s),y(s),z(s)) –Unit normal vector v on the line pointing to left side –A parametric surface model

Mapping between Ribbon and Cartesian coordinates Some computations are most naturally expressed in Cartesian coordinates (D,O,L) –Kinematics code computing object motion Other computations require object locations expressed in ribbon coordinates (X,Y,Z) –Behavior code tracking roads Efficient and robust code to map between ribbon and Cartesian coordinates

Mapping DOL to XYZ Compute p 1 with distance coordinate D p Compute p 2 with p 1 and offset coordinate O p Compute p with p 2 and loft coordinate L p Conclusion: this mapping is very efficient

Mapping XYZ to DOL Locate the closest point p 1 and get D p Compute p 2, the projection of p Offset O p is |p 1 -p 2 | Loft L p is |p-p 2 | Problem: computation of the closest point

Closest Point Computation Modeled as an optimization problem of computing the minimum distance between a spatial point and a parametric spatial curve –Quadratic minimization –Newton’s method –Combining quadratic minimization and Newton’s method

Method 1: Quadratic Minimization Let s 1, s 2, and s 3 be estimates of s * 1)Compute a quadratic polynomial p(s) that interpolates D(s) at s 1, s 2, and s 3 2)Solve s 4 that minimizes p(s) 3)if then s *  s 4 else { s i  s 4 with i such that p(s i ) = ( p(s j ) ) repeat }

Observation of Quadratic Minimization Rates of slow convergence and divergence make this method unacceptable by itself. Fails on seemingly simple cases. In these cases the method usually makes progress in the initial iterations and then stalls.

Method 2: Newton’s Method Solve the rootfinding problem Let s 0 be initial estimate of s * repeat until

Observation of Newton’s Method Infrequent divergence causes unacceptable failure rate. Unpredictably diverges for some points With a good initial estimate converges in 1 or 2 iterations.

Method 3: Combining Quadratic Minimization and Newton’s Method Exploits the complementary strengths of the two optimization techniques Run the quadratic method for a small number of steps (typically about 4). Run Newton’s method initialized with the result from the quadratic method.

Observation of Composite Method Reliable and rapid convergence –Quadratic method provides a good estimate to initialize Newton’s method –Newton’s method robustly converges (usually in 1 or 2 iterations.) The method has undergone rigorous testing in the Hank Simulator –We have had no failures.

Results of Three Methods Example curve and some spatial points Statistics of three methods

Intersections—Where Roads Join Shared regions of way Non-oriented Corridors splice together incoming and outgoing lanes –Seen as single lane ribbons

Limitations of ribbons Transition between ribbons is hard –Different ribbons represent different local coordinate systems –Hard to understand the spatial relationship of positions on different ribbons Solution: a uniform ribbon called a path to unite connected, aligned ribbons –Lanes on roads and corridors on intersections are seen ribbons

Path Single-lane ribbon overlaid on the road network –Easy transition between a road and an intersection An interface between behaviors and the environment –The path relates behaviors to environment Augmented dynamically –The vehicle is never behind or ahead of its path.

A Path as a Basis for Building Behaviors A path is a frame of reference for tracking –Aim for a succession of pursuit points on the path A frame of reference for local spatial relationships

Tracking Behavior Ribbon coordinates Pursuit point Project pursuit point onto the vehicle’s local XY plane Compute a circular track Move the vehicle to a new position on the circular track Project the new position onto ribbon surface

Cruising Behavior Determine desired speed of an vehicle Proportional controller

Path Based Following Behavior Query the leader on path Compute relative distance and relative speed Proportional-derivative controller Discarded if positive otherwise applied

Intersection Behavior Gates access to a shared region of roads – An intersection is a resource Decision of action selection – Going forward/stopping – Stop a vehicle on a desired position Right-of-way rules and social conventions embedded in environment database Regulate the motion of a vehicle before it enters an intersection

Intersection Behavior (Cont’) Solve deadlock problem –Two vehicles yield right of way to other two vehicles to block them at the same time Solve starvation problem –A vehicle yielding right of way gets stuck if vehicles having right of way come in a continuous stream

Limitations of a Path An action-oriented geometric steering guide –A path between the current and goal positions does not always exist Solution: a goal-oriented topological directional steering guide called a route

Route A succession of roads and intersections A global, strategic goal of an agent –The route is determined ahead of the path –The path is updated according to the requirements of the route Support lane changing behaviors –Discretional lane change (DLC) –Mandatory lane change (MLC)

Route Based Lane Changing Decision Making The route forms constraints for choice of lane on a road Lane change decisions subject to the constraints –A DLC must consider route constraints –An MLC must enforce route constraints

Path Based Lane Changing Action A lane changing gap determined by the spatial relationship between the vehicle and nearby vehicles The path forms a frame of reference to deviate the pursuit point from the current lane to the target lane

Behavior Combination Combine acceleration contributions from –Cruising behavior –Following behavior –Intersection behavior Combine steering angle contributions from –Tracking behavior –Lane changing behavior

Solve Disturbances between Component Behaviors The switch in leaders when a vehicle leaves one lane and enters another –Abrupt acceleration change –Start two copies of following behavior Following behavior stops lane changing progress –Relaxing following distance

Solve Disturbances between Component Behaviors (Cont.) Following behavior unnecessarily slows down lane changing process –Disable following behavior in the original lane when it has a clear trajectory to the target lane –Visibility computation in DO plane

Contributions An accurate, efficient, robust roadway model –Ribbon network –Arc length parameterization –Efficient mapping between ribbon and Cartesian coordinates A framework for modeling behaviors –Ribbon based tracking –Path based behaviors –Route as a strategic goal

Future Work Accuracy, efficiency, and robustness of geometric computations for off-road objects Efficient model for non-oriented navigable surfaces, i.e., intersections Good pursuit point control Behavior diversity Non autonomous behaviors