Structure and Synthesis of Robot Motion Making Sense of Sensorimotor Systems Subramanian Ramamoorthy School of Informatics 31 January, 2011.

Slides:



Advertisements
Similar presentations
Lect.3 Modeling in The Time Domain Basil Hamed
Advertisements

The General Linear Model Or, What the Hell’s Going on During Estimation?
CY3A2 System identification Modelling Elvis Impersonators Fresh evidence that pop stars are more popular dead than alive. The University of Missouri’s.
Bayesian Robust Principal Component Analysis Presenter: Raghu Ranganathan ECE / CMR Tennessee Technological University January 21, 2011 Reading Group (Xinghao.
System Identification, Estimation and Filtering
Lectures 5 & 6: Least Squares Parameter Estimation
Lecture 11: Recursive Parameter Estimation
Using process knowledge to identify uncontrolled variables and control variables as inputs for Process Improvement 1.
280 SYSTEM IDENTIFICATION The System Identification Problem is to estimate a model of a system based on input-output data. Basic Configuration continuous.
Similarity transformations  Suppose that we are given a ss model as in (1).  Now define state vector v(t) that is the same order of x(t), such that the.
SYSTEMS Identification Ali Karimpour Assistant Professor Ferdowsi University of Mashhad Reference: “System Identification Theory For The User” Lennart.
SYSTEMS Identification Ali Karimpour Assistant Professor Ferdowsi University of Mashhad Reference: “System Identification Theory For The User” Lennart.
Curve-Fitting Regression
Mobile Intelligent Systems 2004 Course Responsibility: Ola Bengtsson.
Transfer Functions Convenient representation of a linear, dynamic model. A transfer function (TF) relates one input and one output: The following terminology.
Development of Empirical Models From Process Data
Basic Concepts and Definitions Vector and Function Space. A finite or an infinite dimensional linear vector/function space described with set of non-unique.
Transfer Functions Convenient representation of a linear, dynamic model. A transfer function (TF) relates one input and one output: The following terminology.
Course AE4-T40 Lecture 5: Control Apllication
Lecture 6: Linear Systems and Convolution
Teknik kendali priyatmadi.
Control Systems and Adaptive Process. Design, and control methods and strategies 1.
Basics of regression analysis
Linear and generalised linear models Purpose of linear models Least-squares solution for linear models Analysis of diagnostics Exponential family and generalised.
Adaptive Signal Processing
Structure and Synthesis of Robot Motion Making Sense of Sensorimotor Systems Subramanian Ramamoorthy School of Informatics 26 January, 2012.
SYSTEMS Identification Ali Karimpour Assistant Professor Ferdowsi University of Mashhad Reference: “System Identification Theory For The User” Lennart.
Control 1 Keypoints: The control problem Forward models: –Geometric –Kinetic –Dynamic Process characteristics for a simple linear dynamic system.
Progress in identification of damping: Energy-based method with incomplete and noisy data Marco Prandina University of Liverpool.
1 CSC 9010 Spring Paula Matuszek CSC 9010 ANN Lab Paula Matuszek Spring, 2011.
SYSTEMS Identification Ali Karimpour Assistant Professor Ferdowsi University of Mashhad Reference: “System Identification Theory For The User” Lennart.
ECE 5525 Osama Saraireh Fall 2005 Dr. Veton Kepuska
1 Research Question  Can a vision-based mobile robot  with limited computation and memory,  and rapidly varying camera positions,  operate autonomously.
Probability Course web page: vision.cis.udel.edu/cv March 19, 2003  Lecture 15.
Structure and Synthesis of Robot Motion Topics in Control Subramanian Ramamoorthy School of Informatics 19 February, 2009.
CHAPTER 5 SIGNAL SPACE ANALYSIS
Robotics Research Laboratory 1 Chapter 7 Multivariable and Optimal Control.
1 Chapter 11 Compensator Design When the full state is not available for feedback, we utilize an observer. The observer design process is described and.
1  The Problem: Consider a two class task with ω 1, ω 2   LINEAR CLASSIFIERS.
Lecture 7: State-Space Modeling 1.Introduction to state-space modeling Definitions How it relates to other modeling formalisms 2.State-space examples 3.Transforming.
Neural Networks Presented by M. Abbasi Course lecturer: Dr.Tohidkhah.
1 1 Slide Simulation Professor Ahmadi. 2 2 Slide Simulation Chapter Outline n Computer Simulation n Simulation Modeling n Random Variables and Pseudo-Random.
Spectrum Sensing In Cognitive Radio Networks
Model Structures 1. Objective Recognize some discrete-time model structures which are commonly used in system identification such as ARX, FIR, ARMAX,
Signals and Systems Lecture #6 EE3010_Lecture6Al-Dhaifallah_Term3321.
State Equations BIOE Processes A process transforms input to output States are variables internal to the process that determine how this transformation.
1 Development of Empirical Models From Process Data In some situations it is not feasible to develop a theoretical (physically-based model) due to: 1.
Computacion Inteligente Least-Square Methods for System Identification.
Statistics 350 Lecture 2. Today Last Day: Section Today: Section 1.6 Homework #1: Chapter 1 Problems (page 33-38): 2, 5, 6, 7, 22, 26, 33, 34,
CSE 330: Numerical Methods. What is regression analysis? Regression analysis gives information on the relationship between a response (dependent) variable.
Fuzzy Logic Workshop   Design of Fuzzy Controller for Temperature Chamber  
Tijl De Bie John Shawe-Taylor ECS, ISIS, University of Southampton
Transfer Functions Convenient representation of a linear, dynamic model. A transfer function (TF) relates one input and one output: The following terminology.
MESB374 System Modeling and Analysis
Modeling and Simulation Dr. Mohammad Kilani
Teknik kendali.
Using Sensor Data Effectively
Transfer Functions Chapter 4
OSE801 Engineering System Identification Spring 2010
PSG College of Technology
Linear Control Systems
Autonomous Cyber-Physical Systems: Dynamical Systems
Hidden Markov Models Part 2: Algorithms
§2-3 Observability of Linear Dynamical Equations
Digital Control Systems Waseem Gulsher
State Space Analysis UNIT-V.
Motion Models (cont) 2/16/2019.
Lecture 3: Signals & Systems Concepts
Chapter 3 Modeling in the Time Domain
Presentation transcript:

Structure and Synthesis of Robot Motion Making Sense of Sensorimotor Systems Subramanian Ramamoorthy School of Informatics 31 January, 2011

What do you Need to Know about your Robot? 31/01/20112Structure and Synthesis of Robot Motion

Recap: What Problem is the Robot Solving? Environment Perception Action Adversarial actions & other agents Adversarial actions & other agents High-level goals Problem: How to generate actions, to achieve high-level goals, using limited perception and incomplete knowledge of environment & adversarial actions? 31/01/20113Structure and Synthesis of Robot Motion

Exercise: What does Robot Need to Know? Given access to raw data channels for various uninterpreted sensors and motors Devise a procedure for learning that will tell you what you need for various tasks (as yet unspecified) – What types of models? – What types of learning methods? Discussion: How will you do this? (5 mins, groups of 3) 31/01/20114Structure and Synthesis of Robot Motion

What are you Learning from? 31/01/20115Structure and Synthesis of Robot Motion

Consider the Various Tasks What does the robot need to know? How to get it? 31/01/20116Structure and Synthesis of Robot Motion

Some Requirements Models of motion – Own dynamics – Object dynamics – Other agents Models of environment – Space & how I move in space – Other navigation considerations Models of self – What is the connection between my sensors and actuators? – What do the sensorimotor channels even mean? – How to ground all of the above at this low level? 31/01/20117Structure and Synthesis of Robot Motion

Recap: Linear Time Invariant (LTI) Systems Consider the simple spring-mass-damper system: The force applied by the spring is Correspondingly, for the damper: The combined equation of motion of the mass becomes: One could also express this in state space form: M FsFs FdFd 31/01/20118Structure and Synthesis of Robot Motion

How to Get Models? Given the difficulty of deriving analytical models in general, one often obtains them from experiment – System Identification By observing inputs and outputs of a system, one tries to fit a suitable model that captures the dynamics The model may then be used as a basis for controller synthesis, planning, etc. In robotics, you need to do this at many different levels – Low level control of sensors and actuators – “Maps” of the world and objects – Models of people and other agents 31/01/20119Structure and Synthesis of Robot Motion

Low-level System Identification In order to design a controller, you must have a model A model is a system that transforms an input signal into an output signal. Typically, it is represented by differential or difference equations. A model will be used, either explicitly or implicitly, in control design ControllerPlant Model u(t)u(t) y(t)y(t) y(t)y(t) ^ u(t)u(t) d(t)d(t) r(t)r(t) 31/01/201110Structure and Synthesis of Robot Motion

Signals & Systems Definitions Typically, a system receives an input signal, x(t) (generally a vector) and transforms it into the output signal, y(t). In modelling and control, this is further broken down: u(t) is an input signal that can be manipulated (control signal) w(t) is an input signal that can be measured (measurable disturbance) v(t) is an input signal that cannot be measured (unmeasurable disturbance) y(t) is the output signal Typically, the system may have hidden states x(t) u(t)u(t) w(t)w(t) v(t)v(t) y(t)y(t) x(t)x(t) 31/01/201111Structure and Synthesis of Robot Motion

Example: Solar-Heated House (Ljung) The sun heats the air in the solar panels The air is pumped into a heat storage (box filled with pebbles) The stored energy can be later transferred to the house We’re interested in how solar radiation, w(t), and pump velocity, u(t), affect heat storage temperature, y(t). 31/01/201112Structure and Synthesis of Robot Motion

Example: Military Aircraft (Ljung) Aim is to construct a mathematical model of dynamic behaviour to develop simulators, synthesis of autopilots and analysis of its properties Data below used to build a model of pitch channel, i.e. how pitch rate, y(t), is affected by three separate control signals: elevator (aileron combinations at the back of wings), canard (separate set of rudders at front of wings) and leading flap edge 31/01/201113Structure and Synthesis of Robot Motion

Identifying a System Models of car behaviour (acceleration/steering) are built from experience/observational data Generally, there may exist some prior knowledge (often formed from earlier observational data) that can be used with the existing data to build a model. This can be combined in several ways: Use past experience to express the equations (ODEs/difference equations) of the system/sub-systems and use observed data to estimate the parameters Use past experience to specify prior distributions over parameters The term modelling generally refers to the case when substantial prior knowledge exists, the term system identification refers to the case when the process is largely based on observed input- output data. 31/01/201114Structure and Synthesis of Robot Motion

Auto-Regressive with eXogenous inputs model Consider this ARX model with no disturbances This can be used for prediction using: and introducing the vectors: the model can be written as Note, that the prediction is a function of the estimated parameters which is sometimes written as 31/01/201115Structure and Synthesis of Robot Motion

Least Squares Estimation By manipulating the control signal u(t) over a period of time 1  t  N, we can collect the data set: Lets assume that the data is generated by: Where  is the “true” parameter vector and  (0,  2 ) generates zero mean, normally distributed measurement noise with standard deviation . We want to find the estimated parameter vector,, that “best fits” this data. Note that because of the random noise, we can’t fit the data exactly, but we can minimise the prediction errors squared using Where X is the matrix formed from input vectors (one row per observation, one column per input/parameter) and y is the measured output vector (one row per observation 31/01/201116Structure and Synthesis of Robot Motion

Example: First Order ARX model Consider the simple, first order, linear difference equation, ARX model: where 10 data points Z 10 = {u(1),y(1), …,u(10),y(10)} are collected. This produces the (9*2) input matrix and (9*1) output vector: Therefore the parameters  =[a b] T can be estimated from In Matlab: thetaHat = inv(X’*X)*X’*y 31/01/201117Structure and Synthesis of Robot Motion

Model Quality and Experimental Design The variance/covariance matrix to be inverted Strongly determines the quality of the parameter estimates. This in turn is determined by the distribution of the measured input. Control signal should be chosen to make the matrix as well- conditioned as possible (similar eigenvalues) Number of training data & sampling time both affect the accuracy and condition of the matrix Experimental design: choose experiments to optimally estimate model parameters 31/01/201118Structure and Synthesis of Robot Motion

System Identification Process In building a model, the designer has control over three parts of the process 1.Generating the data set Z N 2.Selecting a (set of) model structure (ARX for instance) 3.Selecting the criteria (least squares for instance), used to specify the optimal parameter estimates A very popular approach involves (recursive) parameter estimation Validate Model Calculate Model Choose Criterion of Fit Choose Model Set Data Experiment Design Priors  31/01/201119Structure and Synthesis of Robot Motion

Some Questions Who makes all the decisions? How to deploy that aspect? What variables should I be using for the model? – Egocentric/allocentric frames, transformations, etc. Once we have such a model, we can define control tasks in terms of this – where do the specifications come from? What happens at the higher levels (maps, objects) and how do we tie this to that? 31/01/2011Structure and Synthesis of Robot Motion20

A Bootstrap Learning Framework Learn models of robot and environment with no initial knowledge of what sensors and actuators are doing Many learning methods begin this way, e.g., RL, but the goal here is to construct a representation incrementally and continually as well 31/01/2011Structure and Synthesis of Robot Motion21 D. Pierce, B.J. Kuipers, Map learning with un-interpreted sensors and effectors, Artificial Intelligence 91: , 1997.

Simple Scenario Robot critter has a set of distance sensors (range) – one of which is defective – but it doesn’t know that yet Other sensors: battery power, digital compass It has a track-style motor apparatus – turn by differentially actuating its wheels 31/01/2011Structure and Synthesis of Robot Motion22

What do you learn from? Randomized actions (hold a randomly chosen action for 10 time steps), repeatedly applied 31/01/2011Structure and Synthesis of Robot Motion23 How does environment appear in the data?

A Simple but Complete Procedure 31/01/2011Structure and Synthesis of Robot Motion24

One Step: Go from Raw Channels to Structure of Sensor Array Sensors may come in groupings: ring of distance sensors, array of photoreceptors, video camera, etc. We first want to extract groupings based on two criteria: – Sensors that have similar values over time – Sensors that have a similar frequency domain behaviour Two distance metrics: 31/01/2011Structure and Synthesis of Robot Motion25 distribution

Example Trace 31/01/2011Structure and Synthesis of Robot Motion26 d1d1 d2d2

Extending the Group Notion We can reason transitively about similarity: So, a wandering trace might yield something like this as groups: 31/01/2011Structure and Synthesis of Robot Motion27

After Transitive Closure 31/01/2011Structure and Synthesis of Robot Motion28

Getting at Structure of Array Task is to find an assignment of positions (in space) to elements that captures the structure of the array as reflected in distance metric d 1. Distance between positions in image ≈ distance between elements according to d 1. This is a constraint satisfaction problem: n sensor elements yield n(n-1)/2 constraints. Solve by metric scaling: 31/01/2011Structure and Synthesis of Robot Motion29

Structural Model of Distance Array 31/01/2011Structure and Synthesis of Robot Motion30

Roving Eye 31/01/2011Structure and Synthesis of Robot Motion31 If the array slowly roves over a much larger image, can you recover the structure of this array?

Roving Eye Robot 31/01/2011Structure and Synthesis of Robot Motion32

d 1 and d 2 for Roving Eye (after 5 mins) 31/01/2011Structure and Synthesis of Robot Motion33

Metric Scaling Procedure 31/01/2011Structure and Synthesis of Robot Motion34

Where are we going with this? 31/01/2011Structure and Synthesis of Robot Motion35 Even beyond that, can you discover objects?