Solution of state equations, controllability and observability
Solves state equations with the state transition matrix and tests controllability and observability with Kalman's rank conditions, linking hidden modes to pole-zero cancellation.
Drafted with Aria, reviewed by the AiCanCode.org team. Spotted an error? Use Give Feedback at the bottom of the page.
Why it matters
Once a plant is written as ẋ = Ax + Bu, two practical questions follow: how does it actually move in time from a given starting state, and can we steer every state with the actuators we have and see every state with the sensors we have? The state transition matrix answers the first. Controllability and observability answer the second — and they tell you, before any design work, whether state feedback or an observer is even possible.
Key ideas
Solution of the state equation
- Homogeneous (zero-input) case
ẋ = Ax:x(t) = e^(At)·x(0). The matrixΦ(t) = e^(At)is the state transition matrix (STM) — it carries the state from time 0 to time t. - Forced case:
x(t) = Φ(t)·x(0) + ∫₀ᵗ Φ(t − τ)·B·u(τ) dτ— zero-input response plus a convolution (zero-state response). - Output:
y(t) = C·x(t) + D·u(t).
Ways to find Φ(t)
- Laplace:
Φ(t) = L⁻¹[(sI − A)⁻¹]— the usual hand method. - Series:
e^(At) = I + At + A²t²/2! + …— exact in a few terms ifAis nilpotent (e.g.[[0, 1], [0, 0]]gives[[1, t], [0, 1]]). - Diagonalisation: if
A = P·Λ·P⁻¹, thene^(At) = P·e^(Λt)·P⁻¹, ande^(Λt)is diagonal with entriese^(λi·t). - Cayley–Hamilton:
e^(At) = α0(t)·I + α1(t)·A + …, with theαifound from the eigenvalues.
Properties of Φ(t): Φ(0) = I; Φ⁻¹(t) = Φ(−t); Φ(t1 + t2) = Φ(t1)·Φ(t2); dΦ/dt = A·Φ. So A = dΦ/dt at t = 0 — useful for checking whether a proposed matrix can be a valid STM.
Controllability: the system is (completely state) controllable if some input u(t) can transfer any initial state to any final state in finite time.
- Kalman test: the n×nm matrix
Qc = [B AB A²B … A^(n−1)B]must have rank n. For a single input,det Qc ≠ 0. - Diagonal form test (distinct eigenvalues): controllable if no row of the transformed
Bis zero.
Observability: the system is (completely) observable if the initial state x(0) can be found from the output y(t) (and known input) over a finite interval.
- Kalman test:
Qo = [C; CA; CA²; …; CA^(n−1)](stacked, pn×n) must have rank n. For a single output,det Qo ≠ 0. - Diagonal form test: observable if no column of the transformed
Cis zero.
Duality: (A, B) is controllable exactly when (Aᵀ, Bᵀ) is observable.
Link to transfer functions: a pole-zero cancellation in C(sI − A)⁻¹B means the cancelled mode is uncontrollable, unobservable, or both. The transfer function is a minimal description only if the realisation is both controllable and observable.
Why it matters for design: with full controllability, state feedback u = −Kx can place the closed-loop poles anywhere (pole placement). With full observability, an observer can estimate all states from measured outputs. Weaker notions — stabilisability (only stable modes are uncontrollable) and detectability (only stable modes are unobservable) — are enough for a working stable design.
Formulas
Φ(t) = e^(At) = L⁻¹[(sI − A)⁻¹]x(t) = Φ(t)·x(0) + ∫₀ᵗ Φ(t − τ)·B·u(τ) dτX(s) = (sI − A)⁻¹·x(0) + (sI − A)⁻¹·B·U(s)Qc = [B AB … A^(n−1)B]; controllable ⇔rank Qc = nQo = [C; CA; …; CA^(n−1)]; observable ⇔rank Qo = nΦ(0) = I,Φ(−t) = Φ⁻¹(t),A = dΦ/dt |t=0
Symbols: n number of states, m inputs, p outputs; Φ is dimensionless when all states have the same unit; t, τ in s; eigenvalues λ in s⁻¹.
Worked examples
Example 1 — state transition matrix and response
Given: A = [[0, 1], [−2, −3]], B = [0; 1], x(0) = [1; 0].
(sI − A)⁻¹ = [[s + 3, 1], [−2, s]]/[(s + 1)(s + 2)].- Partial fractions, element by element:
Φ11 = 2e^(−t) − e^(−2t),Φ12 = e^(−t) − e^(−2t),Φ21 = −2e^(−t) + 2e^(−2t),Φ22 = −e^(−t) + 2e^(−2t). - Check: at
t = 0,Φ = [[1, 0], [0, 1]]. - Zero-input response:
x(t) = Φ(t)·[1; 0] = [2e^(−t) − e^(−2t); −2e^(−t) + 2e^(−2t)]. - At
t = 1 s:x1 = 2(0.3679) − 0.1353 = 0.600,x2 = −2(0.3679) + 2(0.1353) = −0.465. - Unit-step zero-state response:
X(s) = [1; s]/[s(s + 1)(s + 2)]→x1(t) = 0.5 − e^(−t) + 0.5e^(−2t),x2(t) = e^(−t) − e^(−2t).
Result: x(1) = [0.600; −0.465] from x(0) = [1; 0]; the step drives x1 to a final value of 0.5.
Example 2 — controllable but not observable (GATE level)
Given: A = [[−1, 0], [0, −2]], B = [1; k], C = [1, 0].
AB = [−1; −2k], soQc = [[1, −1], [k, −2k]],det Qc = −2k + k = −k. Controllable for every k ≠ 0.CA = [−1, 0], soQo = [[1, 0], [−1, 0]],det Qo = 0, rank 1 — not observable for anyk.- The second state (mode
e^(−2t)) never reaches the output because the second column ofCis zero. - Transfer function:
C(sI − A)⁻¹B = [1, 0]·[1/(s + 1); k/(s + 2)] = 1/(s + 1).
Result: controllable for k ≠ 0, never observable; the transfer function 1/(s + 1) hides the mode at −2. Because that hidden mode is stable, the system is still detectable.
Common mistakes
- Writing
Φ(t) = (sI − A)⁻¹and forgetting the inverse Laplace transform. - Taking
e^(At)element by element (e^(aij·t)); that is wrong unlessAis diagonal. - Building
Qoas[C, AC, …]instead of[C; CA; …]. - Multiplying
ABin the wrong order (BAis usually not even defined). - Concluding "observable" from a transfer function with no visible cancellation, without checking the state model.
- Checking only
det Qcfor multi-input systems, whereQcis not square — use rank.
For GATE IN
Expect questions that ask for e^(At) or one of its elements, the zero-input or step response at a given time, whether a given (A, B, C) is controllable or observable, the parameter value that destroys controllability or observability, and whether a given matrix can be a valid STM. Practise 2×2 partial fractions and the Kalman tests until they take a minute each.
Quick check
- What is
e^(At)forA = [[0, 1], [0, 0]]? - Can
[[e^(−t), 0], [0, 2e^(−2t)]]be a state transition matrix? - For
A = [[0, 1], [−2, −3]],B = [0; 1], is the system controllable? - For
A = [[1, 2], [3, 4]],C = [1, 0], what is the rank ofQo?
Answers: 1. [[1, t], [0, 1]]; 2. No — at t = 0 it gives [[1, 0], [0, 2]] ≠ I; 3. Yes — Qc = [[0, 1], [1, −3]], det = −1; 4. Qo = [[1, 0], [1, 2]], rank 2.
Interview questions
All Control Systems interview questionsTry answering each one aloud before you open it.
1.What is a state equation in control systems, and how is it solved?Concept
The state equation ẋ = A·x + B·u is a set of n first-order differential equations giving the rate of change of each state in terms of the present state and input; the output comes from a separate algebraic equation y = C·x + D·u. Its solution is x(t) = Φ(t)·x(0) + ∫₀ᵗ Φ(t − τ)·B·u(τ) dτ, where the state transition matrix Φ(t) = e^(At) = L⁻¹[(sI − A)⁻¹]. The first term is the zero-input response and the second the zero-state response.
2.Explain the concept of controllability in control systems.Concept
Controllability refers to the ability to move a system from any initial state to any desired final state within a finite time period, using appropriate control inputs. A system is considered controllable if it is possible to drive the state of the system to the origin using a suitable input. This concept is crucial for designing control systems that can achieve desired performance and stability.
3.What does observability mean in the context of control systems?Concept
Observability is a measure of how well internal states of a system can be inferred from knowledge of its external outputs. A system is observable if, for any possible sequence of state and control vectors, the current state can be determined in finite time using only the outputs. This concept is important for designing state observers or estimators, which are used when not all states are directly measurable.
4.What happens if a system is not controllable?Application
If a system is not controllable, it means that there are certain states that cannot be reached from a given initial state using any control input. This limitation can prevent the system from achieving desired performance or stability. In practice, this may require redesigning the system or adding additional actuators to achieve controllability.
5.How can you determine if a system is controllable?Application
To determine if a system is controllable, you can use the controllability matrix. For a system represented in state-space form, the controllability matrix is constructed by concatenating the matrices [B, AB, A²B, ..., A^(n-1)B], where A is the state matrix and B is the input matrix. If the controllability matrix has full rank (equal to the number of states), the system is controllable.
6.What is the significance of the observability matrix?Application
The observability matrix is used to determine if a system is observable. It is constructed by stacking the matrices [C, CA, CA², ..., CA^(n-1)], where C is the output matrix and A is the state matrix. If the observability matrix has full rank (equal to the number of states), the system is observable. This is significant because it indicates whether the internal states of the system can be reconstructed from the outputs.
7.Consider a system with state matrix A = [[0, 1], [-2, -3]] and input matrix B = [[0], [1]]. Is the system controllable?Numerical
To determine controllability, construct the controllability matrix: [B, AB]. Here, B = [[0], [1]] and AB = A * B = [[1], [-3]]. The controllability matrix is [[0, 1], [1, -3]]. The rank of this matrix is 2, which is equal to the number of states. Therefore, the system is controllable.
8.Given a system with state matrix A = [[1, 2], [3, 4]] and output matrix C = [[1, 0]], determine if the system is observable.Numerical
To check observability, construct the observability matrix: [C, CA]. Here, C = [[1, 0]] and CA = C * A = [[1, 0] * [1, 2; 3, 4]] = [[1, 2]]. The observability matrix is [[1, 0], [1, 2]]. The rank of this matrix is 2, which is equal to the number of states. Therefore, the system is observable.
9.Why might a control engineer be concerned with both controllability and observability?Application
A control engineer must ensure that a system is both controllable and observable to design effective control strategies. Controllability ensures that the system can be driven to any desired state, while observability ensures that the internal states can be accurately estimated from the outputs. Together, these properties allow for the design of controllers and observers that can achieve desired performance and stability in the presence of disturbances and uncertainties.
Finished this topic? Mark it so your progress, study plan and readiness keep up.
Stuck on something here?