University of Sydney · FACULTY OF MATHEMATICS

MATH2070 Chap.11 Dynamic Programming by Backward Induction

- one subject, every graph, every model, every mark
7 Chapters4-page Bible
Our own words - no uploaded lecturer files
Updated for this semester
Chapter 11 of 11 · MATH2070

Dynamic Programming by Backward Induction

Dynamic programming solves multistage decisions by summarising the past in a state and valuing future options recursively. The principle of optimality says that the remaining decisions of an optimal policy must themselves be optimal from the state they reach. Backward induction starts with terminal values, applies the Bellman recursion one stage at a time, and records the action attaining each optimum.

A forward trace then reconstructs the policy rather than merely reporting its value. A sufficient state retains all information affecting future feasibility and reward while discarding irrelevant history. Terminal conditions anchor the recursion, and infeasible actions must be excluded from each state-specific action set.

Storing only values is insufficient when the required output is a policy, so argmin or argmax choices, including ties, must be retained during the backward pass. Comparing the reconstructed path's accumulated contribution with the initial value provides a direct check on transitions, indexing and optimisation direction.

In this chapter

What this chapter covers

  • 01

    Stages, states and actions

  • 02

    State transitions

  • 03

    Terminal values

  • 04

    Bellman recursions

  • 05

    Backward induction

  • 06

    Policy reconstruction

  • 07

    State design and complexity

Worked example · free

Choose a two-stage policy

Q [5 marks]. Solve an original finite two-stage reward problem by backward induction and reconstruct the optimal action sequence. The marks shown are not a University assessment scheme.
Backward induction through a staged networkA source connects through two decision stages to a destination, with arrows returning continuation values from right to left.continuation values move backwardSABCDTstage 1stage 2stage 3
Solve the last-stage choices first, store each node’s best continuation value, and move those values left until the optimal first action becomes visible.
  • 1Define the stage, state, admissible actions and transition rule.
  • 1Record the terminal value for each reachable final state.
  • 1Evaluate the final decision stage and store each maximising action.
  • 1Apply the Bellman recursion at the initial stage.
  • 1Trace stored actions forward to report the complete policy.
The optimal policy consists of the action attaining the initial Bellman value followed by the stored action for the state produced by that first decision.
Sia tip — Store both the best value and its attaining action at every state.
Glossary

Key terms

State
A summary containing the information needed for future decisions.
Bellman recursion
A recurrence expressing current optimal value through immediate reward and future optimal value.
Terminal value
The value assigned when no decision stages remain.
Policy
A rule selecting an action for each relevant stage and state.
Admissible action
A decision permitted in a particular stage and state. Restricting the Bellman comparison to admissible actions prevents infeasible choices from receiving a continuation value and winning the optimisation accidentally.
Continuation value
The optimal future value associated with the next state after a current action. Backward induction reuses this stored quantity instead of enumerating every remaining decision path from the beginning.
FAQ

Dynamic Programming by Backward Induction FAQ

Why does dynamic programming work backward?

The last decision can be valued directly from terminal outcomes. Once those values are known, the preceding stage treats them as future consequences, allowing the same reasoning to repeat until the initial state is reached.

What makes a good state variable?

A good state retains all information from the past that can affect feasible future actions or rewards, while discarding irrelevant history. Too little information gives incorrect transitions; too much creates unnecessary computational work.

Why must I reconstruct the policy after computing the value?

A maximum value alone does not identify which actions achieve it. Recording each argmax during the backward pass and tracing those choices forward produces the actual decision sequence requested by most applications.

Study strategy

Exam move

Define the model in four columns: stage, state, admissible action and transition. Explain in words why the proposed state retains everything that can affect future feasibility or reward. Test this by imagining two histories reaching the same state; if their remaining choices differ, the state is missing information. Remove history variables that make no future difference so the recursion remains compact enough to calculate.

Write terminal values before the Bellman equation. Clarify whether the problem minimises cost or maximises reward and preserve that direction at every stage. For each state, list feasible actions, immediate contribution, next state and continuation value in a small table. Circle both the best value and an attaining action.

Infeasible actions should be excluded explicitly rather than assigned an accidental finite value that might win the comparison. Work backward one stage at a time and perform a local audit after each layer. Every continuation value used at stage t must come from the already completed stage t plus one. Check state indices, resource balances and boundary cases such as zero remaining capacity.

When ties occur, record all attaining actions or state the tie-breaking convention. The principle of optimality justifies reuse of continuation values, but it does not excuse an insufficient state or an invalid transition. After computing the initial value, reconstruct the policy forward. Start from the given initial state, select the stored action, apply the transition and repeat until the terminal stage.

Sum the realised contributions and compare them with the initial Bellman value. Keep an error ledger for state design, terminal condition, direction of optimisation, transition indexing and policy recovery. Practise networks, resource allocation and a small inventory-style example so that backward induction is recognised as a general decision method rather than a single diagram pattern.

Working through Dynamic Programming by Backward Induction in MATH2070? Sia is AskSia’s AI Mathematics tutor — ask any MATH2070 Dynamic Programming by Backward Induction question and get a clear, step-by-step explanation grounded in how MATH2070 is taught and assessed. Read this chapter free, then take your hardest questions to Sia.

Related courses

MATH1061 · MATH1961

A+Everything unlocked
Unlocks this Bible + all 196 of your University of Sydney subjects - and 1,000+ Bibles across every Australian university.
Sia - your MATH2070 tutor, unlimited, worked the way the exam marks it
The full 4-page Bible + practice bank with worked solutions
Chrome extension - sync your LMS so Sia knows your deadlines
Bilingual EN / Chinese on every Bible and every Sia answer
$0.99 Trial
30-day money-back · cancel in one tap · how it works
MATH2070 · Optimisation and Financial Mathematics - independent study guide on the AskSia Library. More University of Sydney subjects · Microeconomics across all universities