Feng and Li get close to the optimum for a constrained pension account, with relative duality gaps of 2.87% and 0.95% against 48% to 71% for established methods. The result belongs to one calibrated model. The authors attribute its roughly 900-fold gap between unconstrained and constrained wealth to the bond shorting allowed in the unconstrained account.
Inside the pension account
The saver enters at 22 and retires at 67, making contributions from a labor-income profile. Her defined-contribution account can hold cash, a 3-year nominal bond, a 10-year nominal bond, a 10-year inflation-linked bond and an equity index. She can buy term life insurance continuously. She can also sell it, which the authors interpret as annuity demand. A two-factor model describes real rates and expected inflation, fitted with a Kalman filter to monthly U.S. data from June 1961 to September 2025. Mortality follows the 2022 SSA male period table. Holdings must be long-only, with no borrowing, reflecting the 401(k) prohibition on extending credit.
Those constraints remove the closed-form solution. Following Cuoco (1997), the authors work in an artificial market: they change asset drifts until an unconstrained CRRA investor chooses holdings within the constraints. Each admissible drift change supplies an upper bound on attainable utility. A neural network searches for changes that lower this bound. The policy from the best candidate is then projected onto the feasible set and simulated. Nested Monte Carlo supplies its conditional expectations by simulating 40 fresh inner paths at each simulated state. The resulting utility provides a lower bound, bracketing the true optimum with the upper bound.
The authors introduce two changes. Their reparameterized neural network constructs admissible drift tilts without passing through an inverse of Σ. Rather than output the five tilts directly, it produces an unconstrained vector u_t and a nonnegative slack s_t. A minimal nonnegative shift maps these into the feasible cone.
For the projection, they solve a quadratic program that minimises (θ−y)'ΣΣ'(θ−y), the covariance-weighted distance from the candidate y. They name this the Hamiltonian QP. The Hamiltonian of the Hamilton-Jacobi-Bellman (HJB) equation is quadratic in θ, making the shortfall from its maximizer exactly this weighted distance. The candidate y takes the maximizer's place.
How much do the bounds establish?
At γ = 1.5, the upper and lower bounds are −0.050946 and −0.052448, giving a relative gap of 2.87%. Bick, Kraft and Munk (SAMS), using affine-in-time drift tilts, leave 71.12%. The deep pricing kernel method of Li and Wei leaves 48.44%. At γ = 0.8, the corresponding gaps are 0.95%, 66.30% and 53.21%.
Wealth-equivalent losses make the result easier to assess. The authors report welfare losses of 0.056485 at γ = 1.5 and 0.046500 at γ = 0.8 for their method. In wealth-equivalent terms, the feasible policy is thus within roughly 5.6% and 4.7% of the optimum. SAMS has losses of 0.916615 and 0.995651, leaving its bounds close to uninformative in this two-factor setting.
The tighter bounds take longer to compute. On an H800 at γ = 1.5, runtime is 870.62 seconds, compared with 371.07 for SAMS. The closer benchmark, the deep pricing kernel method, takes 868.16. The new method is therefore no slower than that comparison.
We did not find Monte Carlo standard errors for any bound.
That reporting gap matters especially when the authors place the direct primal network of Li and Forsyth outside the interval. At γ = 1.5, its utility is −0.052975 versus the lower bound of −0.052448. The difference is about 0.0005 on 10,000 paths. At γ = 0.8, the margin of 0.098 (22.393429 against 22.491808) is easier to believe. The more persuasive evidence against the direct network is the insurance premium: at γ = 1.5 it rises monotonically, whereas the dual methods produce a hump.
Where the tighter gap comes from
Start with projection. With everything else held fixed at γ = 1.5, plain Euclidean projection produces a lower bound of −0.067666 and a gap of 24.71%. The covariance-weighted QP improves those figures to −0.052448 and 2.87%. Using the artificial-market Hamiltonian to recover the policy, rather than the original-market Hamiltonian, increases the gap from 2.87% to 6.24%. The paper offers a structural reason for each preferred choice, and both also performed best in this same experiment. Selecting them costs little beyond Monte Carlo noise, since the simulated utility of any feasible policy supplies a valid lower bound.
Moment estimation makes little difference. At γ = 1.5, nested Monte Carlo gives a relative gap of 2.865316%, compared with 2.810315% for the regression network. At γ = 0.8, the comparison is 0.947800% against 0.926117%.
According to the authors, their deep pricing kernel benchmark already uses the QP. Comparing it with the new method therefore comes close to isolating the reparameterization. The upper bounds show the difference: −0.027245 against −0.050946. To motivate the change, the authors cite cond2(Σ) = 29.54 and describe it as near-singular. A condition number of 29.54 is moderate. Table 3 makes their case more effectively than the diagnostic.
The 900-fold wealth gap
Expected terminal wealth at γ = 1.5 is about 2.54×10^3 with constraints, compared with 2.28×10^6 under the unconstrained closed form. These are normalized units. Both accounts start at W0 = 1 with a contribution rate of 6. Shorting the short-term nominal bond funds the unconstrained policy's large long positions and insurance. Near retirement, the constrained account has about 1.65×10^3 in stocks and almost nothing in that bond.
The authors describe the unconstrained solution as having limited practical meaning. I agree. The roughly 900-fold ratio captures the extent of bond shorting that a frictionless model permits against future contributions. It also compounds an equity premium estimated with little precision: μ0 = 0.04663 with p = 0.14. The authors are right that the constrained solution differs substantially from the unconstrained one. The size of that difference tells us nothing about achievable pension returns.
Calibration without a market test
We could not test the strategy on market data. It requires returns on rolling constant-maturity nominal and inflation-linked cash bonds; we have only yields. Continuously adjustable term insurance is also required, and we have no history of its premiums or benefits. Bond ETFs or rate futures would give a different opportunity set.
The sample from 1961 to 2025 serves solely to estimate parameters. Every reported bound, policy and wealth figure comes from Monte Carlo under one parameter set: 10,000 paths and 210 steps spanning 45 years, or about 0.21 years per step. Several risk prices, including Λ0(4), Λ1(4,1) and Λ1(4,2), are inferred from identities and have no standard errors. The authors put continuous insurance, absent transaction costs and deterministic mortality on their future-work agenda.
The solver is the contribution. Judged on its own terms, it is convincing. I would move closer to using the policies if the same 2.87% gap held across parameter draws from the sampling distribution of the Kalman-filter estimates, with standard errors reported.