Feedback Delay, explained.
Feedback delay separates observing a system from correcting it, potentially turning stabilising negative feedback into oscillation or instability.
Why it happens
Starting at 50, update x[t+1]=x[t]+gain(100−x[max(0,t−delay)]). The target is 100. Apply a negative 20 disturbance, compare gains and delays, and inspect the full path. A numerical guard stops updates beyond magnitude 1,000.
Feedback delay separates observing a system from correcting it, potentially turning stabilising negative feedback into oscillation or instability.
Read the result
Watch the relation between current state and the measurement driving the next correction. A controller can continue correcting an error that has already reversed.
A worked example
A controller chasing old information
Start with gain 0.8 and a two-step measurement delay. Advance repeatedly and observe the response relative to the target of one hundred.
Reset through a gain change and compare a lower gain or zero delay while retaining the same target and starting state.
Apply a negative twenty disturbance and inspect recovery. Responsiveness and stability are different properties.
OPTIONAL DEEPER DETAILGo deeper: inside the model
Inside this model
Starting at 50, update x[t+1]=x[t]+gain(100−x[max(0,t−delay)]). The target is 100. Apply a negative 20 disturbance, compare gains and delays, and inspect the full path. A numerical guard stops updates beyond magnitude 1,000.
Where this idea is useful
A practical use
Repeatedly changing inventory orders before earlier orders arrive can amplify rather than fix a shortage.
A common misconception
“Stronger correction must return a system to target faster.”
With delayed information, aggressive corrections can amplify oscillation or instability. Controller tuning must account for the plant and measurement timing.
What this explanation leaves out
- This discrete linear controller has no physical saturation, observation noise or optimisation. The numerical guard is solely a display limit. Results cannot be transferred directly to a thermostat or real control system.
What does the numerical guard represent?
It stops plotting updates beyond magnitude one thousand to avoid runaway display values. It is not a real limiter that makes the underlying controller stable.
Are you reacting to the system's current state or to an earlier state that has already changed?
Associated thinkers
Associations marked provisional are awaiting source review.
Further reading
Explore the original research or the teaching reference behind this experiment.