Week 29
Prerequisite lessons: 3.4.1 (the reality gap as a spectrum), 3.4.2 (domain randomization), 2.3.3 (contact-rich manipulation), 1.1.3 (PID, computed torque, trajectory tracking), 0.3.2 (MLE and MAP), 0.3.4 (implementing the Kalman filter in PyTorch).
Prior results used in this lesson. From 3.4.1: the four divergence axes, the twin-track’s residual, and the range-from-uncertainty rule whose intervals this lesson supplies. From 3.4.2: the randomization ranges are the identification’s intervals, so the identification’s quality bounds the randomization’s validity. From 1.1.3: the computed-torque law and its dependence on the inertial parameters this lesson estimates. From 2.3.3: the contact law whose this lesson identifies. From 0.3.2: the maximum-likelihood estimator and the Fisher information’s role in a parameter’s uncertainty. Each is restated at the point of use.
What this lesson hands forward. The linear-regressor formulation, the base-parameter set, the excitation-trajectory design, and the identification’s uncertainty intervals. Lesson 3.4.4 (real-to-sim adaptation) uses the identified parameters as its simulator’s nominal values and the intervals as its prior. Module 4.3 uses the excitation design as its experiment template.
The running case in one sentence. The running arm, gripper, eye-in-hand camera, table, cube, bin, and divider are unchanged; this lesson runs a designed excitation trajectory on the real cell, records the joint torques and positions, and estimates the parameters that 3.4.2 randomized — the mass, the friction, the contact stiffness, and the actuator delay — with an uncertainty interval for each.
§L.0 — Lesson map, objectives, and misconceptions
| Part | Content | Lab step | Word budget |
|---|---|---|---|
| A | The inverse problem, identifiability, and excitation | Build the regressor for a 2-link arm | 1,800 |
| B | The four identification methods | Identify mass, friction, stiffness, delay | 1,900 |
| C | Experiment design and the excitation trajectory | Design the Fourier trajectory | 1,800 |
| D | The pipeline, validation, and pitfalls | Run the twin-track validation | 1,700 |
| E | Running case: the identification plan and its intervals | Assemble the plan | 1,500 |
Observable outcomes. By the end of this lesson you can, without notes: (1) state the identification problem as an inverse problem and distinguish it from the forward simulation; (2) write the rigid-body regressor and explain why the inertial parameters enter linearly; (3) state the base-parameter set and why some parameters are unidentifiable; (4) design an excitation trajectory that satisfies persistent excitation and compute its condition number; (5) identify the friction and the contact stiffness from trajectory data; (6) identify the actuator delay from a step response’s cross-correlation; (7) compute the parameter’s covariance from the least-squares’ residual; (8) state the closed-loop bias and its fix; (9) validate the identified parameters with the twin-track’s residual; (10) produce the intervals that 3.4.2’s randomization uses.
Misconception inventory.
| Wrong model | Why attractive | Where displaced | Correct model |
|---|---|---|---|
| Identification is fitting a simulator to data. | Both minimize an error. | §L.A.1 | Identification estimates a model’s parameters under an assumed model structure; the structure’s error is not reduced by the fit, and it dominates the residual once the parameters are close. |
| Every parameter can be identified from any trajectory. | Enough data identifies everything. | §L.B.2 | The parameters that enter the regressor’s null space are unidentifiable; the base parameters are the identifiable combinations, and the rest require a different structure or prior. |
| A longer trajectory gives a better estimate. | More data is better. | §L.C.1 | The estimate’s quality depends on the trajectory’s information content; a long trajectory with low excitation gives a poorly conditioned regressor and a wide interval. |
| Closed-loop data is as good as open-loop data. | The controller’s feedback makes the data realistic. | §L.C.3 | The feedback correlates the input with the noise, producing a biased estimate; the bias is corrected by an instrumental-variable or an open-loop excitation. |
| A validated simulator is a correct simulator. | The twin-track’s residual is small. | §L.D.3 | The validation is on the excitation trajectory’s distribution; the simulator’s behaviour on the deployment’s states is a separate extrapolation. |
Everything is self-contained. Where a prerequisite lesson is used, the result is restated at the point of use.
§L.0.5 — Retrieval warm-up
Q1. In 1.1.3, the computed-torque law used , , and . Which of the arm’s physical parameters enter these terms?
Answer. The link masses, the centres of mass, the inertias, and the geometric lengths; , , and are functions of these parameters and of the configuration. Used in §L.A.2 to show that the torque is linear in the parameters.
Q2. In 2.3.3, the contact law was . Which of its parameters is observable during a sustained contact, and which only during the impact?
Answer. The stiffness is observable during sustained contact from the force-penetration relationship; the damping is observable only during the impact, when is large. Used in §L.B.3 to design the contact identification’s data.
Q3. In 0.3.2, the maximum-likelihood estimate’s covariance was the inverse of the Fisher information. What plays the role of the Fisher information in a linear least-squares problem?
Answer. The regressor’s normal matrix scaled by the noise’s variance; the estimate’s covariance is . Used in §L.B.1 and §L.D.1 to compute the intervals.
Q4. In 3.4.2, the randomization’s ranges were the identification’s intervals . What is the consequence of an over-confident identification, where is underestimated?
Answer. The interval is too narrow, the real parameter falls outside it, and the policy’s robustness does not cover the deployment; the signature is the 3.4.2 §L.D.2’s range mis-specification direction. Used in §L.E.2 to argue that the identification’s covariance must include the model-structure error.
Part A — The inverse problem
§L.A.1 — Forward and inverse
A simulator is a forward model: given the parameters , the state , and the action , it produces the next state . The forward model’s evaluation is cheap and its parameters are the configuration file’s values.
System identification is the inverse problem: given the observed states and actions, estimate the parameters that best explain them under the model’s structure. Formally, with a model and a dataset , the estimate is
The inverse problem differs from the forward problem in three ways that shape everything in this lesson.
The structure is assumed. The estimate is only as good as the model structure ; a parameter can be estimated precisely within a wrong structure and be wrong in absolute terms. The 3.4.1 §L.A.1’s distribution-shift argument is the same: the model’s form is a choice, and the fit reduces the parameter’s error within that choice, not the structure’s.
The data’s information is the constraint. A parameter that the data does not excite cannot be estimated, and the excitation is a property of the trajectory, not of the estimator. §L.C is the design of the excitation.
The estimate is a distribution, not a number. The least-squares estimate under Gaussian noise is the maximum-likelihood estimate, and its covariance is the inverse Fisher information. The covariance is the interval that 3.4.2 randomizes over, and its correctness is the identification’s output’s value.
Self-explanation 1. Why does a precise estimate within a wrong structure not imply a good simulator?
Answer. Because the precision measures the estimate’s variance under the assumed structure, and the structure’s error is a bias that the variance does not capture; the simulator’s prediction error is the bias plus the variance.
§L.A.2 — Why the rigid-body parameters are linear
The rigid-body dynamics of the arm are linear in the inertial parameters, and the linearity is what makes the identification tractable.
The 1.1.3 equation of motion is
and each of , , and is a sum of terms, each proportional to one of the parameters: a link’s mass , its first moment , or its inertia tensor . Collecting the parameters into a vector for links, Eq. (A.2) becomes
where is the regressor, a matrix of known functions of the configuration and its derivatives. The equation is linear in , so the estimate is a linear least-squares problem with a closed-form solution and an exact covariance.
The derivation is the basis of the field (Atkeson, An, Hollerbach 1986, tier A, S; Khosla & Kanade 1985, tier A, S), and its practical consequence is that the identification is a matrix computation, not a nonlinear optimization. The running case’s 6-DOF arm has candidate parameters, and the regressor is at each sample.
§L.A.3 — The base parameters
The 60 parameters are not all identifiable. The regressor has a null space: some parameter combinations produce no change in the torque for every configuration and every trajectory. The identifiable combinations are the base parameters (Gautier & Khalil 1990, tier A, S), and their count is the regressor’s rank.
The unidentifiable combinations arise from three sources.
The first link’s parameters. The first link’s mass, first moment, and inertia about its axis of rotation do not affect the torque about the first joint’s axis when the link rotates about that axis; their combination is absorbed into the joint’s own inertia and is unidentifiable from the joint torque.
The links’ parameters beyond the last joint. The tool’s inertia is absorbed into the last joint’s inertia in the same way.
The structural dependencies. Links whose motion is determined by the same joints’ combination have parameters that enter only through sums; the sums are identifiable and the individual terms are not.
The base-parameter set’s size for a general 6-DOF arm is about 36–40, not 60. The running case’s arm has alternating / axes and equal link lengths m, which makes its base-parameter count computable from the regressor’s rank on a generic trajectory, and the count is what the identification’s data must support.
The unidentifiable parameters are not a problem if the policy does not depend on them. The gravity torque depends on the masses and the first moments, which are identifiable; the tool’s inertia about its own axis depends on the unidentifiable combination, and the running case’s gripper’s inertia about the last joint’s axis is absorbed. The identification’s output is the base parameters, and the simulator’s configuration uses them.
Concept check. A learner attempts to identify all 60 parameters of the running case’s arm and finds the estimate’s covariance is enormous for 20 of them. Which check explains this, and what is the fix?
Answer. The regressor’s rank; the 20 parameters are in the null space’s combinations and are unidentifiable. The fix is to identify the base-parameter set, which is the rank’s size, and to set the unidentifiable combinations to their nominal values.
[displaces M2]
Worked-example ladder.
WE-L.A.a (fully worked). A 2-link planar arm has parameters . Compute the regressor’s dimension and its base parameters’ expected count.
Solution. The parameters number 8 (each link’s mass, inertia, length, and centre-of-mass distance). The regressor’s rank for a 2-link arm is 5: the identifiable combinations are , , , , and . The base-parameter set’s size is 5, and the other 3 combinations are unidentifiable.
WE-L.A.b (completion). With the base parameters identified, the simulator’s torque is computed from the 5 combinations. Compute the torque at , , and state which combination the gravity torque uses.
Completion. At rest, the torque is the gravity’s, which for the 2-link planar arm at (both links horizontal) is and . The combinations are (a base parameter’s part) and (a base parameter). The completion shows the base parameters are exactly what the torque depends on.
WE-L.A.c (faded). Derive the regressor’s rows for a single revolute joint whose link has mass and centre of mass at distance , and show the torque’s linearity in and . Faded step. The gravity torque is ; the inertial torque is ; the centrifugal is . Completion. Each term is linear in the parameters , , and the products are the base combinations; the linearity is the reason the identification is a least-squares problem.
WE-L.A.d (contrastive near-miss). A learner runs the identification with a trajectory that moves only the first joint and finds that the second link’s parameters are badly estimated. Why it fails: the second link’s parameters did not enter the torque’s variation, because the trajectory did not move the second joint; the regressor’s columns for those parameters were constant and the normal matrix was singular. The fix: the excitation trajectory must move every joint, which is the persistent-excitation requirement of §L.C.1.
Comparative table: the regressor’s structure.
| Element | Dimension | Known or estimated |
|---|---|---|
| Regressor | Known from | |
| Parameter vector | Estimated | |
| Base parameters | Rank of | Estimated |
| Null-space combinations | minus rank | Unidentifiable |
Design principle P48.1. Identification estimates the model’s parameters under an assumed structure; the structure’s error is a bias the fit does not remove, and the base parameters are what the data can actually see.
Consolidation checkpoint 1
(a) Three capabilities. You can state the inverse problem and its three differences from the forward model. You can write the linear regressor and explain the linearity. You can state the base-parameter set and the null-space combinations.
(b) Transfer probe. A 3-link planar arm has 12 candidate parameters. What is the base-parameter set’s expected size, and why is it smaller? Answer: about 7, because the first link’s inertia about its own axis and the last link’s parameters’ combinations are unidentifiable; the rank is the base set’s size.
(c) Remediation rule. If you cannot state why the torque is linear in the parameters, re-derive Eq. (A.3) before Part B.
Part B — The four identification methods
§L.B.1 — Inertial parameters by least squares
The least-squares estimate of Eq. (A.3) from samples is
with the covariance
where is the torque’s noise variance, estimated from the residual. The covariance’s diagonal is the parameters’ variances, and the intervals that 3.4.2 uses are .
The estimate’s quality is the normal matrix’s conditioning. The condition number of measures the estimate’s sensitivity to the data’s noise: a condition number of means a small noise in the torque produces a large error in the parameters, and the covariance’s largest eigenvalue is .
The conditioning is a property of the trajectory, not of the estimator. A trajectory that excites the joints in a way that makes the regressor’s columns nearly collinear produces a badly conditioned normal matrix, and no estimator can fix it. §L.C’s excitation design is the fix.
The total least squares variant addresses the case where the regressor’s inputs (the accelerations) are noisy. The ordinary least squares assumes the regressor is exact and the torque is noisy; in practice the acceleration is differentiated from the position and carries noise, which biases the estimate. The total least squares treats both as noisy, and the difference is a bias that the 3.4.1 §L.B.4 double edge’s argument makes worth correcting.
§L.B.2 — Friction identification
The joint friction is not in the rigid-body model, and its omission biases the inertial estimate. The standard friction model is a combination of Coulomb, viscous, and static terms:
where is the Coulomb coefficient, the viscous coefficient, and the third term the Stribeck effect. The model is nonlinear in but linear in the coefficients for a fixed , so the identification is a two-stage procedure: fit by a grid or a nonlinear optimization, then the coefficients by linear least squares.
The identification’s data is a constant-velocity sweep: the joint is moved at a sequence of constant velocities, and the torque at each velocity is the friction at that velocity plus the gravity’s. The gravity is subtracted using the identified inertial parameters, and the residual is the friction’s curve.
The running case’s arm has a friction that the 2.3.3 controller’s steady-state error already encoded — the steady-state error under a constant force was , and the friction adds to the required torque. The identification’s friction reduces the inertial estimate’s bias and supplies the 3.4.1 §L.B.2’s actuation axis’s parameter.
§L.B.3 — Contact stiffness and damping
The contact parameters are the hardest to identify, and the 2.3.3 §L.B.2’s contact law is the model.
Stiffness . Identified from a quasi-static press: the end-effector is pressed into the surface slowly, and the force is recorded against the penetration . The relationship is linear, so the stiffness is the slope of the force-penetration line. The press’s speed must be low enough that the damping term is negligible, which is the quasi-static condition.
Damping . Identified from an impact: the end-effector approaches the surface with a known velocity, and the force’s peak is recorded. The peak’s relationship to the velocity gives the damping, but the relationship is confounded by the stiffness and by the impact’s duration, which is why the damping’s interval is wider than the stiffness’s.
Friction coefficient . Identified from a slip test: the object is grasped with a known normal force and the tangential force is increased until slip. The ratio of the tangential to the normal force at slip is the friction coefficient. The test is repeated at several normal forces to check the Coulomb model’s linearity, and the running case’s cube test’s misalignment is the geometry the test uses.
The identification’s cost is the number of trials. The stiffness’s quasi-static press is one trial; the damping’s impact needs several velocities; the friction’s slip test needs several normal forces and several objects. The 3.4.1 §L.B.2’s intervals come from these trials’ spread.
Self-explanation 2. Why is the damping’s interval wider than the stiffness’s?
Answer. Because the damping is observable only during the impact, whose duration is short and whose force’s peak is confounded by the stiffness and the impact’s geometry; the stiffness is observable during the quasi-static press, whose duration is long and whose relationship is linear.
§L.B.4 — Actuator delay and gain
The actuator’s delay and gain are identified from a step response. The controller commands a step in the joint torque, and the joint’s velocity is recorded. The delay is the time between the command’s step and the velocity’s onset; the gain is the steady-state velocity’s ratio to the torque.
The delay’s estimate’s precision is limited by the sampling rate: a 1 kHz loop resolves a 1 ms delay, and a 100 Hz loop resolves a 10 ms delay. The running case’s controller runs at 1 kHz, so the delay’s resolution is about 1 ms, and the 3.4.1 §L.B.2’s interval’s 10 ms width is a few samples.
The cross-correlation method is the robust alternative to the step’s onset detection. The command’s sequence and the velocity’s sequence are correlated at a range of lags, and the lag with the maximum correlation is the delay. The method is robust to noise and to the controller’s own dynamics, and it is the one the lab implements.
The gain’s identification is confounded by the friction and the inertia, which is why the gain is identified after the inertial and friction parameters. The order is the pipeline’s: inertia, then friction, then delay and gain, then contact.
Concept check. A step response’s velocity onset is detected at 8 ms after the command, and the loop runs at 1 kHz. What is the delay’s interval, and how does the loop’s rate bound it?
Answer. The delay is ms, and the loop’s 1 ms period is the resolution’s bound; a 100 Hz loop would give ms, which is the
3.4.1interval’s width and is too coarse to distinguish a 10 ms delay from a 20 ms one.[displaces M3]
Worked-example ladder.
WE-L.B.a (fully worked). A constant-velocity sweep gives the torques Nm at the velocities rad/s. The gravity’s torque at the configuration is 0.3 Nm. Compute the friction’s coefficients under the model .
Solution. The friction is the residual after subtracting the gravity: Nm at the positive velocities. The model is . Fitting the four points: the slope Nm·s/rad, and the intercept Nm. The Coulomb coefficient is at the resolution’s floor, and the viscous dominates.
WE-L.B.b (completion). The sweep is repeated in the negative direction, giving the residuals . Recompute the coefficients and state what the asymmetry indicates.
Completion. The negative direction’s slope is and the intercept is . The asymmetry’s intercept is versus , which indicates a Coulomb term of 0.1 Nm that the positive direction’s sweep’s resolution did not resolve; the symmetric model is .
WE-L.B.c (faded). Derive the stiffness from a quasi-static press with the forces N at the penetrations µm. Faded step. The slope is N/m. Completion. The stiffness is N/m, and the fit’s residual’s standard deviation gives the interval; the quasi-static condition is what makes the slope the stiffness rather than the damping.
WE-L.B.d (contrastive near-miss). A learner identifies the stiffness from a press at 5 cm/s and finds it 30% higher than the 3.4.1 interval’s nominal. Why it fails: the press’s speed is not quasi-static, so the damping term contributes to the force, and the slope over-estimates the stiffness. The fix: slow the press until the force-penetration line’s slope is speed-independent, which is the quasi-static condition’s operational test.
Comparative table: the four methods.
| Method | Parameter | Data | Interval’s source |
|---|---|---|---|
| Least squares | Inertial | Excitation trajectory | Covariance |
| Velocity sweep | Friction | Constant velocities | Fit’s residual |
| Press and impact | Contact | Quasi-static and impact | Trials’ spread |
| Step response | Delay, gain | Torque step, velocity | Sampling’s resolution |
Design principle P48.2. Identify in order — inertia, friction, actuation, contact — because each later method needs the earlier parameters to subtract their contribution.
Consolidation checkpoint 2
(a) Three capabilities. You can write the least-squares estimate and its covariance. You can identify the friction from a velocity sweep. You can identify the stiffness from a quasi-static press and state the quasi-static condition.
(b) Transfer probe. A step response at 100 Hz gives a delay of ms. Can the delay’s interval distinguish a 10 ms from a 20 ms delay? Answer: no; the sampling’s 10 ms resolution is the same as the interval’s width, and the two delays are indistinguishable.
(c) Remediation rule. If you cannot state why the damping’s interval is wider than the stiffness’s, re-read §L.B.3 before Part C.
Part C — Experiment design and excitation
§L.C.1 — Persistent excitation
A trajectory is persistently exciting for a parameter set if the regressor’s normal matrix is positive definite and well-conditioned. The formal condition is that there exists a time window and a constant such that
which is the requirement that the trajectory’s information is distributed in time, not concentrated in one interval. The condition’s practical content is that every parameter must be excited at every time, not only during a transient.
The Fourier-series trajectory is the standard construction (Swevers et al. 1997, tier A, S). Each joint’s position is a finite Fourier series,
with a fundamental frequency chosen so that the trajectory is periodic and within the joint limits. The coefficients are optimized to maximize the normal matrix’s smallest eigenvalue, or equivalently to minimize its condition number, subject to the limits.
The construction’s advantages are three. The trajectory is periodic, so the initial and final states match and the identification’s data can be concatenated across cycles. The derivatives are analytic, so the acceleration is exact and does not need differentiation. The coefficients are a finite-dimensional design space, so the conditioning’s optimization is tractable.
§L.C.2 — The conditioning and the design’s objective
The condition number is the design’s objective, and its target is a number below for a well-conditioned estimate. A condition number of gives an estimate whose covariance’s largest eigenvalue is , which for the running case’s Nm and gives a variance of 2.5 and a standard deviation of 1.6, which is an interval too wide to be useful.
The design’s degrees of freedom are the amplitudes, the frequencies, and the number of harmonics. The amplitudes are bounded by the joints’ limits and the workspace’s clearance; the frequencies are bounded by the bandwidth of the actuators and by the sampling rate’s Nyquist; the harmonics’ number is bounded by the trajectory’s smoothness.
The running case’s design is a 3-harmonic Fourier series per joint with a 0.5 Hz fundamental, amplitudes within 60% of the joint limits, and a 40 s duration. The 40 s gives cycles, which is enough for the averaging’s noise reduction; the amplitudes’ 60% gives the excitation without saturating the joints.
§L.C.3 — The closed-loop bias
The running case’s data is collected under the controller, not in open loop, and the closed-loop collection biases the estimate.
The bias’s mechanism is the correlation between the regressor and the noise. The controller’s torque is a function of the state’s error, and the error is a function of the noise; the regressor’s columns, which are functions of the state, are therefore correlated with the noise, and the ordinary least squares’ assumption (regressor independent of noise) is violated. The estimate is biased toward the controller’s model, which is the 1.1.3 computed-torque law’s nominal parameters.
The bias’s fix is the instrumental variable or the open-loop excitation. The instrumental variable uses a signal correlated with the regressor but not with the noise — typically the commanded trajectory’s position and its derivatives, which are known and are not affected by the noise — and the estimate becomes
where is the instrumental variable’s matrix. The open-loop excitation runs the trajectory with a torque feedforward and a low-gain feedback, so the regressor is dominated by the commanded trajectory and the correlation with the noise is small.
The running case uses the low-gain feedback: the 1.1.3 controller’s gains are reduced by a factor of ten during the identification, so the feedback’s contribution is small relative to the feedforward’s. The bias’s residual is the 3.4.1 §L.D.2’s identification residual, and the 3.4.2 §L.D.2’s signature’s direction is what catches it if the residual is too large.
Self-explanation 3. Why does the closed-loop collection bias the estimate toward the controller’s nominal parameters?
Answer. Because the controller’s torque is computed from its model, and the feedback’s correlation with the noise makes the estimate consistent with the controller’s model rather than with the true parameters.
Concept check. The condition number of the normal matrix is and the torque’s noise is 0.05 Nm. What is the estimate’s largest standard deviation, and what is the fix?
Answer. The largest eigenvalue’s inverse is , and with the standard deviation is , which is an interval too wide to use. The fix is the excitation’s re-design: more harmonics, larger amplitudes, or a longer duration, to raise the smallest eigenvalue.
[displaces M3]
Worked-example ladder.
WE-L.C.a (fully worked). A trajectory’s normal matrix has eigenvalues . Compute the condition number and the smallest eigenvalue’s implication for the estimate.
Solution. The condition number is . The smallest eigenvalue’s inverse is 100, so the parameter associated with that direction has a variance ; with , the standard deviation is . The interval is , which is wide.
WE-L.C.b (completion). The trajectory is re-designed and the smallest eigenvalue rises to 0.1. Recompute and state whether the interval is usable.
Completion. The condition number is 100, the inverse of the smallest eigenvalue is 10, the standard deviation is , and the interval is . The interval is usable, and the re-design’s cost is the larger amplitudes’ workspace’s clearance.
WE-L.C.c (faded). Write the Fourier trajectory’s construction for the running case’s six joints and state the parameters’ count. Faded step. Each joint has a mean, three sine amplitudes, and three cosine amplitudes, so 7 per joint, 42 total, with the limits’ constraints. Completion. The 42 parameters are the design’s space, and the optimization’s objective is the condition number; the constraints are the joint limits and the workspace’s clearance.
WE-L.C.d (contrastive near-miss). A learner identifies with a trajectory that is a single slow sinusoid per joint and finds the estimate’s covariance is enormous. Why it fails: the single sinusoid’s frequency is low, so the acceleration is small, and the inertial parameters’ regressor’s columns are nearly zero; the normal matrix is nearly singular. The fix: the Fourier trajectory with multiple harmonics, which excites the accelerations at several frequencies.
Comparative table: the excitation’s design parameters.
| Design choice | Bound | Effect |
|---|---|---|
| Amplitudes | Joint limits, clearance | Larger raises the smallest eigenvalue |
| Fundamental frequency | Actuator bandwidth | Higher raises the acceleration |
| Harmonic count | Smoothness, Nyquist | More spreads the information |
| Duration | Time budget | Longer reduces the noise’s variance |
Design principle P48.3. Design the excitation before choosing the estimator; a well-conditioned normal matrix is the estimate’s quality’s prerequisite, and the conditioning is the trajectory’s property.
Consolidation checkpoint 3
(a) Three capabilities. You can state persistent excitation and its practical content. You can write the Fourier trajectory and its design parameters. You can state the closed-loop bias and its two fixes.
(b) Transfer probe. The excitation’s condition number is 100 and the noise is 0.1 Nm. Is the estimate usable for a parameter whose tolerance is 0.3? Answer: the smallest eigenvalue’s inverse is 0.01, the standard deviation is , the interval is , within the tolerance.
(c) Remediation rule. If you cannot state why the single slow sinusoid fails, re-read §L.C.1 before Part D.
Part D — The pipeline and pitfalls
§L.D.1 — The pipeline
The identification’s pipeline has six steps, and the order is the 3.4.1 §L.B.3 axis ranking’s and §L.B.4’s.
Step 1: the model’s structure. Choose the regressor and the friction and contact models. The choice is the structure’s error’s source.
Step 2: the excitation’s design. Design the Fourier trajectory for the inertial parameters, the velocity sweep for the friction, the press and impact for the contact, and the step for the actuation.
Step 3: the data’s collection. Collect the data with the low-gain feedback or the open-loop feedforward, and record the positions, velocities, torques, and, for the contact, the forces.
Step 4: the estimation. The least squares with the covariance for the inertial parameters; the velocity sweep’s fit for the friction; the press’s slope and the impact’s peak for the contact; the cross-correlation for the delay.
Step 5: the validation. The twin-track’s residual on a held-out trajectory, per §L.D.3.
Step 6: the intervals. The covariance’s diagonals, the trials’ spreads, and the sampling’s resolution, combined into the 3.4.2 §L.B.1’s intervals.
The pipeline’s cost is the data’s collection time, which is the 40 s trajectory plus the sweeps and presses. The total is about two hours of cell time, which is the 3.1.3 collection’s fraction and is affordable.
§L.D.2 — The pitfalls and their signatures
The unidentifiable parameters. The base parameters are fewer than the candidates. Signature: the normal matrix’s rank is below the parameters’ count, and the covariance’s diagonals are infinite for the null-space’s combinations. Fix: the base-parameter set.
The poor conditioning. The trajectory’s excitation is insufficient. Signature: the condition number is above and the covariance’s largest diagonal is above the tolerance. Fix: the excitation’s re-design, per §L.C.2.
The closed-loop bias. The estimate is biased toward the controller’s model. Signature: the identified parameters match the 1.1.3 nominal values more closely than the twin-track’s residual justifies. Fix: the low-gain feedback or the instrumental variable, per §L.C.3.
The contact model’s nonlinearity. The stiffness’s quasi-static press’s force-penetration line is not straight. Signature: the fit’s residual is above the noise and the slope varies with the penetration. Fix: a nonlinear contact model or a restricted penetration range.
The validation’s over-fitting. The parameters fit the excitation trajectory well and the held-out trajectory poorly. Signature: the training’s residual is low and the validation’s is high. Fix: a held-out trajectory from a different distribution, per §L.D.3.
The five pitfalls are distinguished by the direction of the residual: the unidentifiable’s is infinite variance, the poor conditioning’s is wide intervals, the bias’s is the controller’s model, the nonlinearity’s is the fit’s shape, and the over-fitting’s is the train-validation gap.
§L.D.3 — The validation
The validation is the held-out trajectory’s residual: a trajectory from a different distribution than the excitation’s, and the simulator’s prediction error on it. The error is the 3.4.1 §L.A.2’s twin-track’s sim track’s, and the 3.4.1 §L.C.1’s metrics apply.
The validation’s threshold is the 3.4.1 §L.C.1’s tail against the deployment’s tolerance. A simulator whose held-out residual’s tail is within the tolerance is validated for the held-out distribution’s states; a simulator whose residual is within the tolerance on the excitation’s states and outside it on the held-out’s is over-fit, and its validation is the held-out’s.
The validation’s limit is the 3.4.1 §L.C.3’s: the held-out trajectory is one sample from the held-out distribution, and the deployment’s states are another. The 3.4.1 §L.E.3’s shadow deployment is the deployment’s evidence, and the validation is the simulator’s.
Self-explanation 1. Why is the excitation trajectory not a valid validation trajectory?
Answer. Because the parameters were fit to it, so its residual is the fit’s, not the simulator’s predictive error; the held-out trajectory is the simulator’s prediction’s test.
Concept check. The excitation’s residual’s tail is 1 mm and the held-out’s is 4 cm. Which pitfall’s signature, and what is the fix?
Answer. Over-fitting; the parameters fit the excitation’s distribution and not the held-out’s. The fix is the held-out trajectory’s distribution’s coverage, and if the gap persists, the structure’s error is the cause.
[displaces M5]
Worked-example ladder.
WE-L.D.a (fully worked). The identified mass is kg against the nominal 0.1 kg. Compute the interval’s coverage and state whether the nominal is inside.
Solution. The interval is , and the nominal 0.1 is inside. The identification’s estimate and the nominal agree within the interval, which is the expected result if the nominal is close to the true value.
WE-L.D.b (completion). The nominal is 0.1 kg and the identified interval is . State the diagnosis and the action.
Completion. The nominal is outside the interval by 0.03 kg, which is a significant discrepancy; the diagnosis is either the structure’s error (the model’s mass’s definition differs) or the identification’s bias. The action is to re-run the twin-track with the identified mass and check the residual’s improvement.
WE-L.D.c (faded). State the validation’s threshold’s source and its comparison’s object. Faded step. The threshold is the 3.4.1 §L.C.1’s tail’s tolerance; the comparison is the held-out trajectory’s residual against it. Completion. The threshold is the deployment’s tolerance, and the object is the simulator’s held-out prediction’s error.
WE-L.D.d (contrastive near-miss). A team validates on the excitation trajectory, reports a 1 mm residual, and deploys. The cell fails. Why it fails: the excitation’s residual is the fit’s, and the deployment’s states are outside the excitation’s distribution. The fix: the held-out trajectory and the 3.4.1 §L.E.3’s shadow deployment.
Comparative table: the pitfalls and their signatures.
| Pitfall | Signature | Fix |
|---|---|---|
| Unidentifiable | Infinite variance | Base parameters |
| Poor conditioning | Wide intervals | Excitation’s re-design |
| Closed-loop bias | Estimate matches the controller’s model | Low gain or IV |
| Contact nonlinearity | Fit’s residual’s shape | Nonlinear model |
| Over-fitting | Train-validation gap | Held-out distribution |
Design principle P48.4. Validate on a held-out trajectory from a different distribution; the excitation’s residual is the fit’s, and the held-out’s is the simulator’s.
Consolidation checkpoint 4
(a) Three capabilities. You can state the six steps and their order. You can diagnose each pitfall from its signature. You can design the validation’s held-out trajectory.
(b) Transfer probe. The identified parameter’s interval is and the nominal is 0.1. Which pitfall? Answer: none of the five necessarily; the discrepancy is the structure’s error’s or the bias’s, and the discriminator is the twin-track’s residual with the identified value.
(c) Remediation rule. If you cannot state why the excitation’s residual is not the validation’s, re-read §L.D.3 before Part E.
Part E — The running case
§L.E.1 — The identification plan
The running case’s plan, from the four methods and the six steps.
Inertial parameters. A 3-harmonic Fourier trajectory per joint, 0.5 Hz fundamental, amplitudes within 60% of the joint limits, 40 s duration. The low-gain feedback at one-tenth the 1.1.3 gains. The base-parameter set is the regressor’s rank, about 36 for the 6-DOF arm.
Friction. A constant-velocity sweep at 8 velocities in each direction, with the gravity subtracted from the identified inertial parameters. The model is , with the Stribeck term omitted because the running case’s joints have no gearbox.
Contact. The quasi-static press at 0.5 mm/s for the stiffness; the impact at three approach velocities for the damping; the slip test at three normal forces for the friction coefficient. The press’s quasi-static condition is verified by the slope’s speed-independence at two speeds.
Actuation. The step response at 1 kHz for the delay, with the cross-correlation for robustness; the gain from the steady-state velocity’s ratio.
The total’s cost is about two hours of cell time, which is the 3.1.3 collection’s budget’s fraction.
§L.E.2 — The intervals
The identified values and their intervals, which are 3.4.2’s ranges.
| Parameter | Identified | Interval | 3.4.2 range |
|---|---|---|---|
| Cube mass | 0.102 kg | 0.08-0.12 | |
| Friction | 0.48 | 0.3-0.7 | |
| Contact stiffness | N/m | ||
| Actuator delay | 11 ms | 0-20 ms |
The 3.4.2 ranges are wider than the identification’s intervals, which is the conservative choice: the randomization’s wider range costs some peak performance, and the 3.4.2 §L.D.1’s curve’s third regime is the cost. The conservative choice is justified by the identification’s structure-error’s bias, which the covariance does not capture: the interval is the statistical uncertainty, and the structure’s error is the additional, unestimated width. The 3.4.2 range’s width is the interval plus the structure’s error’s allowance, and the allowance’s source is the 3.4.1 §L.D.2’s twin-track’s discrepancy.
The intervals’ correctness is tested by the 3.4.1 §L.C.1’s tail: if the tail’s residual exceeds the tolerance with the identified parameters, the intervals are too narrow or the structure is wrong.
§L.E.3 — The validation and the hand-off
The validation’s held-out trajectory is a pick-and-place at a different object position and a different orientation from the excitation’s, and its residual’s tail is the 3.4.1 §L.C.1’s metric.
The expected result, from the 3.4.2 §L.E.3’s numbers, is that the identified parameters reduce the twin-track’s tail from the nominal 4.5 cm to about 3.2 cm, and the randomization’s range is then the identified interval plus the structure’s allowance. The 3.4.4 adaptation’s perception axis is the remaining method, and the 3.4.2 §L.E.2’s placeholder is replaced by the adaptation.
The hand-off to 3.4.4 is the identified parameters as the simulator’s nominal values and the intervals as the prior; the adaptation’s residual is measured against the identified baseline, not the nominal one.
Self-explanation 2. Why are the
3.4.2randomization ranges wider than the identification’s intervals?Answer. Because the interval is the statistical uncertainty and the structure’s error is an additional, unestimated bias; the wider range covers the bias’s plausible magnitude, and the cost is the
3.4.2curve’s third regime’s peak performance.
Worked-example ladder.
WE-L.E.a (fully worked). The identified mass is kg and the 3.4.2 range is . Compute the interval’s width and the range’s width, and state the structure-error allowance.
Solution. The interval is , width 0.012; the range is , width 0.04. The allowance is kg, which is 2.3 times the interval’s half-width. The allowance is the structure’s error’s and the object’s variation’s combined.
WE-L.E.b (completion). The twin-track’s residual with the identified mass is 3.4 cm, and with the 3.4.2 range’s worst case it is 3.1 cm. State whether the allowance is justified.
Completion. The range’s worst case gives a better residual than the identified value alone, which indicates the allowance is justified: the wider range’s policy is more robust than the narrower’s, and the 3.4.2 curve’s third regime’s cost is not binding at this width.
WE-L.E.c (faded). Write the register’s entry for the identification’s structure-error’s residual. Faded step. Failure: the simulator’s structure does not model the joint’s flexibility, and the identified parameters compensate for it. Probability: from the held-out residual’s distribution. Consequence: the simulator’s prediction is biased at high accelerations. Mitigation: the held-out validation. Residual: the flexibility’s unmodelled states. Completion. The entry’s residual is the high-acceleration states, which the excitation’s low-frequency trajectory did not visit.
WE-L.E.d (contrastive near-miss). A team uses the identification’s intervals as the 3.4.2 ranges and finds the deployment’s success is 75% versus the expected 88%. Why it fails: the intervals are the statistical uncertainty, and the structure’s error’s allowance was not included, so the real parameter is outside the range. The fix: the 3.4.2 range is the interval plus the structure’s allowance, per §L.E.2.
Comparative table: the running case’s identification.
| Method | Parameter | Interval | Cost |
|---|---|---|---|
| Least squares | Inertial | From covariance | 40 s trajectory |
| Velocity sweep | Friction | From residual | 16 sweeps |
| Press and impact | Contact | From trials | 9 trials |
| Step response | Delay | From sampling | 10 steps |
Design principle P48.5. The identification’s interval is the statistical uncertainty, and the randomization’s range is the interval plus the structure’s error’s allowance; the two are not the same and the difference is the deployment’s margin.
Consolidation checkpoint 5
(a) Three capabilities. You can state the identification plan’s four methods and their data. You can compute the structure-error allowance. You can state why the 3.4.2 range is wider than the interval.
(b) Transfer probe. The interval’s half-width is 0.01 and the 3.4.2 range’s half-width is 0.025. What is the allowance’s multiple? Answer: 2.5 times the interval’s half-width; the allowance covers the structure’s error’s plausible magnitude, and its justification is the held-out residual.
(c) Remediation rule. If you cannot state why the interval is not the range, re-read §L.E.2 before the lab.
Failure taxonomy
| Symptom | Three causes ranked | Discriminating test | Fix |
|---|---|---|---|
| Estimate has infinite variance | Unidentifiable parameters; rank deficiency; bad data | Normal matrix’s rank | Base parameters |
| Estimate’s interval too wide | Poor conditioning; noise; short duration | Condition number | Excitation’s re-design |
| Estimate matches the nominal | Closed-loop bias; low excitation; wrong structure | Twin-track’s residual with the identified value | Low gain or IV |
| Contact fit is nonlinear | Model’s nonlinearity; penetration range; speed | Fit’s residual’s shape | Nonlinear model |
| Train good, held-out poor | Over-fitting; structure error; distribution gap | Held-out residual | Held-out distribution |
| Deployment fails despite validation | Structure error’s allowance missing; shadow skipped | Register | Range; shadow |
The table covers the three lab corruptions plus three failures not exercised in the lab: wrong structure, distribution gap, and shadow omission.
The lab
Task. Implement the least-squares identification of a 2-link arm’s base parameters from a Fourier trajectory, compute the estimate’s covariance and the condition number, and validate on a held-out trajectory. Then identify a friction coefficient from a velocity sweep and a stiffness from a quasi-static press.
Conditions. Python 3.10+, NumPy. The synthetic arm’s dynamics are the 2-link planar model with known true parameters; the data is generated with Gaussian torque noise. The Fourier trajectory is 3 harmonics at 0.5 Hz. Seed all RNGs.
Controls. (i) The nominal excitation; (ii) the single-sinusoid excitation; (iii) the identified parameters on the held-out trajectory; (iv) the friction’s two-direction sweep.
Metrics.
| Metric | Definition | Target |
|---|---|---|
| Condition number | < 100 | |
| Estimate’s error | Identified minus true | Within the interval |
| Interval’s coverage | Fraction of true inside the interval | ≥ 0.95 |
| Held-out residual | Prediction error’s RMS | < 1% of torque |
| Friction’s asymmetry | Two directions’ intercept difference | Report |
Pre-registered hypotheses.
H1. The nominal excitation’s condition number is below 100, and the estimate’s error is within the 95% interval for all base parameters.
H2. The single-sinusoid excitation’s condition number is above and its estimate’s intervals are at least ten times wider.
H3. The friction’s two-direction sweep reveals an asymmetry that the one-direction sweep misses, because the Coulomb term’s sign changes with the direction.
H4. The held-out residual is larger than the excitation’s residual by at least a factor of two, because the excitation’s low-frequency content does not cover the held-out’s accelerations.
Break-it sequence.
- Use a single sinusoid silently. The condition number explodes and the intervals widen. Silent: the fit’s residual looks small.
- Identify with one-direction sweeps silently. The Coulomb term is unidentifiable. Silent: the fit’s residual is small.
- Validate on the excitation’s trajectory silently. The residual is the fit’s and the held-out’s error is hidden. Silent: the validation looks excellent.
Acceptance criteria.
| Criterion | Pass condition |
|---|---|
| H1 supported | Condition < 100, errors within intervals |
| H2 supported | Single sinusoid’s condition > 1000 |
| H3 supported | Asymmetry detected |
| H4 supported | Held-out residual ≥ 2x excitation’s |
| Break-it 1 detected | Condition number reported |
| Break-it 2 detected | Two-direction sweep |
| Break-it 3 detected | Held-out trajectory |
What good looks like. A good artefact has five properties. (1) The condition number is reported for each excitation, so the design’s effect is visible. (2) The intervals are reported and the true parameters’ coverage is checked. (3) The friction’s asymmetry is a comparison, not an assertion. (4) The held-out residual is reported beside the excitation’s. (5) The break-it results are a table.
A runnable core, seeded and annotated:
# lab_3_4_3.py — base-parameter identification on a 2-link arm
import numpy as np
np.random.seed(0)
# True base parameters for the 2-link planar arm (5 combinations)
TRUE = np.array([0.25, 0.08, 0.06, 0.12, 0.5]) # I1+I2+m2 l1^2, m2 l1 c2, I2+m2 c2^2, m2 c2, m2
G = 9.81
def regressor(q, dq, ddq):
"""5-column regressor for the 2-link planar arm's base parameters."""
c1, c2 = np.cos(q[0]), np.cos(q[0] + q[1])
s1, s2 = np.sin(q[0]), np.sin(q[0] + q[1])
return np.array([
[ddq[0], 2*c2*ddq[0] + c2*ddq[1] - 2*s2*dq[0]*dq[1] - s2*dq[1]**2 + G*s1,
ddq[0] + ddq[1], G*s1, 0.0],
[0.0, c2*ddq[0] + s2*dq[0]**2 + G*s2, ddq[0] + ddq[1], 0.0, 0.0]
]) # simplified but structurally correct
def fourier_traj(t, K=3, w=2*np.pi*0.5):
q = np.array([0.3, 0.2]) # mean
dq = np.zeros(2); ddq = np.zeros(2)
for k in range(1, K+1):
a, b = 0.2/k, 0.15/k # amplitudes
s, c = np.sin(k*w*t), np.cos(k*w*t)
q += np.array([a*s, b*c])
dq += np.array([a*k*w*c, -b*k*w*s])
ddq += np.array([-a*(k*w)**2*s, -b*(k*w)**2*c])
return q, dq, ddq
def collect(K=3, duration=20.0, dt=0.01, noise=0.05):
Phi, tau = [], []
for t in np.arange(0, duration, dt):
q, dq, ddq = fourier_traj(t, K=K)
Y = regressor(q, dq, ddq)
tq = Y @ TRUE + noise * np.random.randn(2)
Phi.append(Y); tau.append(tq)
return np.vstack(Phi), np.concatenate(tau)
Phi, tau = collect(K=3)
N = Phi.T @ Phi
cond = np.linalg.cond(N)
phi_hat = np.linalg.inv(N) @ Phi.T @ tau
resid = tau - Phi @ phi_hat
sigma2 = np.mean(resid**2)
cov = sigma2 * np.linalg.inv(N)
print(f"condition = {cond:.1f}")
print("true =", np.round(TRUE, 3))
print("estimated =", np.round(phi_hat, 3))
print("95% half =", np.round(1.96*np.sqrt(np.diag(cov)), 3))
# Single-sinusoid control
Phi1, tau1 = collect(K=1)
N1 = Phi1.T @ Phi1
print(f"single-sinusoid condition = {np.linalg.cond(N1):.1f}")
# Velocity sweep for friction
vels = np.array([0.1, 0.2, 0.3, 0.4])
fric_pos = 0.1 + 2.0*vels # true: fc=0.1, fv=2.0
fric_neg = -0.1 + 2.0*(-vels)
A = np.vstack([np.ones_like(vels), vels]).T
fc_pos, fv_pos = np.linalg.lstsq(A, fric_pos, rcond=None)[0]
$A_neg$ = np.vstack([np.ones_like(vels), -vels]).T
fc_neg, fv_neg = np.linalg.$lstsq(A_neg$, fric_neg, rcond=None)[0]
print("friction fv pos/neg:", round(fv_pos,2), round(fv_neg,2))
print("friction fc pos/neg:", round(fc_pos,2), round(fc_neg,2))
Line 5 defines the true base parameters; line 7 builds the regressor for the 2-link planar arm’s base combinations. Lines 18–26 generate the 3-harmonic Fourier trajectory with the position, velocity, and acceleration. Lines 28–35 collect the torques with the noise. Lines 37–44 compute the normal matrix, its condition number, the estimate, and the 95% intervals. Lines 46–48 run the single-sinusoid control. Lines 50–60 identify the friction from a two-direction velocity sweep and print the coefficients, whose asymmetry is the Coulomb term.
Cheat sheet
| Term or result | Statement or definition | Role (origin, consumer) |
|---|---|---|
| Inverse problem | Estimate parameters from data | 3.4.3; §L.A.1 |
| Linear regressor | 3.4.3; Eq. (A.3) | |
| Base parameters | Identifiable combinations, rank of | Gautier & Khalil 1990 |
| Least squares | 3.4.3; Eq. (B.1) | |
| Covariance | 3.4.3; Eq. (B.2) | |
| Condition number | 3.4.3; conditioning | |
| Friction model | 3.4.3; Eq. (B.3) | |
| Quasi-static press | ‘s slope | 3.4.3; §L.B.3 |
| Slip test | Tangential/normal at slip | 2.3.3, applied 3.4.3 |
| Delay by cross-correlation | Lag at maximum correlation | 3.4.3; §L.B.4 |
| Persistent excitation | Normal matrix positive definite in every window | Swevers et al. 1997 |
| Fourier trajectory | Finite harmonic series per joint | Swevers et al. 1997 |
| Closed-loop bias | Regressor-noise correlation | 3.4.3; §L.C.3 |
| Instrumental variable | uncorrelated with the noise | 3.4.3; Eq. (C.3) |
| Held-out validation | Residual on a different trajectory | 3.4.3; §L.D.3 |
| Structure-error allowance | Range wider than the interval | 3.4.3; §L.E.2 |
Exercises with solutions
E 3.4.3.1. State the inverse problem and its three differences from the forward model.
S 3.4.3.1. Estimate the parameters from the data; the structure is assumed, the data’s information is the constraint, and the estimate is a distribution. The lesson: the fit’s precision is within the structure, and the structure’s error is a bias the precision does not see.
E 3.4.3.2 (transfer). A 2-link planar arm’s regressor has rank 5 and 8 candidate parameters. Which are the base parameters and what happens to the other 3?
S 3.4.3.2. The base parameters are the 5 identifiable combinations; the other 3 combinations are in the null space and cannot be identified from any trajectory. The lesson: the base set is the data’s limit, and the unidentifiable combinations are set to their nominal values.
E 3.4.3.3. Compute the least-squares estimate’s covariance for and .
S 3.4.3.3. The covariance’s diagonal is , and the standard deviations are . The lesson: the smallest eigenvalue’s direction has the widest interval.
E 3.4.3.4 (diagnostic). The estimate’s interval is 10 times wider than the tolerance and the condition number is . Diagnose and fix.
S 3.4.3.4. The excitation’s conditioning is the cause; the fix is the Fourier trajectory’s re-design with more harmonics and larger amplitudes. The lesson: the conditioning is the trajectory’s property, not the estimator’s.
E 3.4.3.5. Identify the friction’s coefficients from the residuals at the velocities .
S 3.4.3.5. The slope is and the intercept is . The lesson: the two-direction sweep is what identifies the Coulomb term, not the one-direction’s fit.
E 3.4.3.6 (transfer). A quasi-static press at 5 cm/s gives and at 0.5 mm/s gives . Which is the stiffness and why?
S 3.4.3.6. The slow press’s is the stiffness, because the damping’s contribution is negligible at the low speed; the fast press’s slope includes the damping. The lesson: the quasi-static condition’s operational test is the slope’s speed-independence.
E 3.4.3.7 (diagnostic). The identified parameters match the 1.1.3 nominal values and the twin-track’s residual is 4 cm. Diagnose and fix.
S 3.4.3.7. The closed-loop bias: the controller’s feedback correlated the regressor with the noise and the estimate converged to the controller’s model. The fix is the low-gain feedback or the instrumental variable. The lesson: the closed-loop data’s estimate is biased toward the controller’s model.
E 3.4.3.8. State why the 3.4.2 range is wider than the identification’s interval, and compute the allowance for an interval’s half-width 0.006 and a range’s half-width 0.02.
S 3.4.3.8. The interval is the statistical uncertainty and the range includes the structure’s error’s allowance. The allowance is , 2.3 times the interval’s half-width. The lesson: the two are different quantities, and the difference is the deployment’s margin.
E 3.4.3.9 (transfer). The held-out trajectory’s residual is 4 cm and the excitation’s is 1 mm. Diagnose and state the fix.
S 3.4.3.9. Over-fitting; the parameters fit the excitation’s distribution. The fix is the held-out trajectory’s distribution’s coverage and, if the gap persists, the structure’s error’s correction. The lesson: the excitation’s residual is the fit’s, and the held-out’s is the simulator’s.
Exit test
You are ready for Lesson 3.4.4 when you can, without notes:
- State the inverse problem and its three differences from the forward model.
- Write the linear regressor and explain the parameters’ linearity.
- State the base-parameter set and the null-space combinations.
- Write the least-squares estimate and its covariance.
- Compute the condition number and the estimate’s largest standard deviation.
- Identify the friction from a two-direction velocity sweep.
- Identify the stiffness from a quasi-static press and state the condition.
- Identify the delay from a step response and state the sampling’s resolution’s bound.
- State persistent excitation and its practical content.
- Write the Fourier trajectory and its design parameters.
- State the closed-loop bias and its two fixes.
- State the six pipeline steps and their order.
- Diagnose each pitfall from its signature.
- Validate on a held-out trajectory and state why the excitation’s is not valid.
- Compute the structure-error allowance and state why the range is wider than the interval.
Cross-references. 3.4.1 supplies the four axes, the twin-track, and the range-from-uncertainty rule restated in §L.A.1 and §L.D.3. 3.4.2 supplies the randomization’s ranges restated in §L.E.2. 1.1.3 supplies the computed-torque law and its parameters restated in §L.A.2. 2.3.3 supplies the contact law and the slip test restated in §L.B.3. 0.3.2 supplies the maximum-likelihood estimate and the Fisher information restated in §L.B.1. Lesson 3.4.4 uses the identified parameters as its simulator’s nominal values and the intervals as its prior.
Ready. The next lesson to write is
3.4.4— Real-to-Sim Adaptation. Say “next” to generate it.