Fluency does not establish applicability
Originally published at https://the-ai-dialogues.com/commentary/the-confident-incompetence-problem
Models can propose sophisticated systems before they have established that the problem requires them or that the implementation will work. Optimization makes the error easy to see. Ask how to allocate resources under uncertain demand, and a model may immediately recommend a stochastic mixed-integer program, Pyomo, a commercial solver, sample-average approximation, and a monthly operating schedule.
Every component is real. The unsupported part is the implied conclusion that this formulation fits this instance and can be operated at the required scale.
What the Proposal Has Not Established
Suppose the prompt is: “Optimize resource allocation across departments with uncertain demand.” Before choosing a method, an engineer needs at least the following information:
- the objective and how competing outcomes are valued;
- the number and type of decisions;
- the planning horizon and frequency of change;
- which decisions must be integral;
- the source and shape of demand uncertainty;
- the constraints that can be violated and the cost of violation;
- the time available for a solve;
- the available solver, license, and operator; and
- the current policy against which a new method will be compared.
Without those facts, “use stochastic mixed-integer programming” is a candidate technique, not an architecture.
The general problem class is computationally hard, but that fact alone does not prove that a particular instance is impractical. Structure, size, tolerances, decomposition, warm starts, and acceptable approximation all affect performance. Conversely, the existence of Pyomo, CPLEX, or Gurobi does not prove that an instance will solve on schedule. The only defensible claim comes from a representative formulation and measured runs.
A recommendation of 100–1,000 scenarios has the same defect. Too few scenarios may represent uncertainty badly; too many may exceed the compute budget. The correct count depends on convergence evidence and the decision’s sensitivity, not a generic range copied into an answer.
Why a Second Model Does Not Settle It
An adversarial prompt often produces an equally unsupported rejection: stochastic MIP will not scale, the scenario tree will explode, and the team should abandon the design. Now one model has recommended a complex system and another has rejected it. Confidence does not decide between them.
A useful critique must preserve the objective and propose a comparison. For example:
- Implement the current manual policy as a baseline.
- Build a deterministic formulation using expected demand.
- Add a small set of stress scenarios or a robust constraint.
- Measure solution quality, runtime, and sensitivity on historical periods.
- Introduce recourse or integer detail only where the simpler model fails materially.
That sequence exposes what each increment costs and improves. It may lead to a stochastic MIP, a heuristic, a rules engine, or no new system at all.
The Error Is Applicability
This failure differs from a fabricated fact. The terminology, libraries, and algorithms may all be accurate. The answer fails because it moves from “this method is used for problems of this kind” to “this method will work for your problem” without evidence connecting the two claims.
Detailed code can make the leap harder to notice. A syntactically plausible model creates the appearance of progress before anyone has checked units, variable counts, constraint growth, data availability, or solve time. Nonexperts cannot reliably infer operational experience from vocabulary or formatting.
They can, however, demand artifacts that experience would produce:
- an explicit list of missing inputs and assumptions;
- an estimate of model dimensions as the problem grows;
- a simpler baseline and the reason it is insufficient;
- a small executable instance;
- runtime and optimality-gap measurements;
- sensitivity tests for scenario count and uncertain inputs;
- a fallback policy when the solver fails or times out; and
- the skills and recurring work required to operate the system.
If the proposal cannot supply those artifacts, treat it as a research direction.
A Better Division of Work
Models are useful for deriving a formulation, identifying missing constraints, generating a prototype, explaining solver output, and comparing alternatives. The human operator remains responsible for defining the objective, validating the data, choosing acceptable approximations, and deciding whether the measured system is safe to use.
Model developers can also make the boundary clearer. An answer that distinguishes a candidate from a tested recommendation is more useful than one that labels generated code “production-ready.” Tooling should report whether code was executed, on what instance, with which solver, and with what result.
The rule is simple: a model may propose an architecture, but only evidence can qualify it. Require the smallest working formulation, compare it with a baseline, and increase complexity only when a measured failure justifies it.
2 responses to “When a Model Proposes a System It Has Not Tested”
[…] 9 in a series. Previously: Model Eats the Software (Part 8), The Confident Incompetence Problem (Part 6), Confidence All the Way Down (Part 6b), On Keeping AI in the Critical Path (Part 7), The […]
[…] Strategy (Part 9), Model Eats Software (Part 8), On Keeping AI in the Critical Path (Part 7), The Confident Incompetence Problem (Part 6), The Disintermediation Principle (Part 5), Zen of Unix Tools (Part […]