Assignment Model¶
Method — instantiates Discrete Commitment Optimization
Represents pairings between agents and tasks as an eligibility grid, then commits each agent to exactly one compatible partner.
An Assignment Model frames a discrete commitment problem as a pairing problem: on one side a set of agents, on the other a set of tasks, slots, or partners, and between them a grid saying which agent may be matched to which — and, where it matters, how good each allowed match would be. Its defining move is that the decision object is the edge between two entities, not the entity itself: you are not asking "do we fund this?" but "who goes with what?", subject to the rule that a valid pairing must respect eligibility and that each agent (and often each task) is committed exactly once. That one-to-one, edge-centered representation is what separates it from every sibling here that selects standalone items or opens standalone sites.
Example¶
A county courthouse must pair its roster of certified interpreters with the day's hearings. Some interpreters speak Mandarin, some Somali, some ASL; some hearings are scheduled at 9:00, others at 11:00; a few interpreters are conflicted out of specific cases they previously worked. The scheduler builds a grid: rows are interpreters, columns are hearings, and a cell is allowed only if the language matches, the times don't clash, and there's no conflict of interest. Where a cell is allowed, it carries a small quality weight — a courtroom-tested interpreter on a complex asylum hearing scores higher than a newly certified one.
The model then commits each hearing to exactly one eligible interpreter and each interpreter to at most one hearing at a time, choosing the set of pairings that maximizes total match quality. The output is a clean roster: interpreter A → hearing 3, interpreter B → hearing 1, and so on, with no double-booking and no ineligible match. Crucially, a locally "best" interpreter for hearing 3 may be left unassigned there because pulling her onto 3 would strand hearing 7 with nobody qualified — the model buys global coverage over per-hearing greed.
How it works¶
The model is built from three moves specific to pairing:
- Lay out the eligibility grid. Enumerate agents and tasks, then mark every admissible pairing. Inadmissible cells are simply absent — the grid encodes hard compatibility before any scoring happens.
- Attach a value to each allowed edge. Each admissible cell gets a weight: a cost, a preference rank, a quality score. This is what turns feasibility into optimization.
- Impose the one-to-one (or one-to-few) rule. Each agent is committed to a bounded number of tasks and each task to a bounded number of agents, so the chosen edges form a clean matching rather than an overloaded tangle.
Solving it is the classic assignment problem, addressed for small instances by the Hungarian algorithm[1] and for larger or side-constrained ones by handing the formulation to a general solver. The model itself stops at the representation and the objective; it does not prescribe the search engine.
Tuning parameters¶
- Match-value definition — whether edge weights encode cost, stated preference, skill fit, or a blend. The choice silently decides whose interests the roster serves.
- Capacity per side — strict one-to-one, or many-to-one (one supervisor, several mentees). Loosening it adds flexibility but blurs accountability for each pairing.
- Eligibility strictness — how permissive the grid is. A sparse grid guarantees clean matches but can leave tasks unfillable; a dense one improves coverage but admits weaker pairings.
- Unassigned penalty — how heavily to punish a task left without a partner versus a low-quality match. This dial trades coverage against quality.
When it helps, and when it misleads¶
The model shines wherever the real action is coupling two populations under compatibility and capacity — interpreters to hearings, kidney donors to recipients, reviewers to submissions. It refuses double-booking and ineligible matches by construction, and it resists the greedy trap of handing every task its locally favorite agent.
Its failure mode is that the eligibility grid and the edge weights are the model, and both are easy to get quietly wrong. An omitted conflict-of-interest leaves an "optimal" roster that is actually inadmissible; a preference score that privileges one side's stated wishes can bake a hidden unfairness into a result that looks purely technical. The classic misuse is treating a single-objective quality score as if it were neutral when it encodes contested priorities. The guarding discipline is to separate the hard grid (who may be paired) from the soft weights (who is preferred), review each on its own, and run an informal legitimacy check on the weights before trusting the roster — leaving the standing fairness rules to a Selection Review Board.
How it implements the components¶
assignment_compatibility_matrix— its signature output: the explicit agent-by-task grid of admissible pairings with per-edge value.binary_decision_variable— each admissible cell is a yes/no: this pairing is committed or it is not.coupling_constraint— the one-to-one / one-to-few rule ties the cells together so no agent or task is over-committed.objective_function— total match quality (or total cost) the chosen matching is tuned to optimize.
It does not implement cardinality_limit or fairness_guardrail — capping how many commitments are made and equalizing their distribution across people is the province of its nearest twin, Crew Scheduling Model; nor integer_constraint, which belongs to Integer Programming Model.
Related¶
- Instantiates: Discrete Commitment Optimization — the Assignment Model is its pairing/matching variant.
- Consumes: Integer Programming Solver when the matching is large or carries side constraints beyond a clean bipartite grid.
- Sibling mechanisms: Constraint Satisfaction Search · Crew Scheduling Model · Facility Location Model · Integer Programming Model · Integer Programming Solver · Project Selection Matrix · Selection Review Board · Solver Dashboard
Editorial Notes¶
Form Classification¶
Form family: Decision, Gate & Allocation
Rationale: Represents pairings between agents and tasks as an eligibility grid, then commits each agent to exactly one compatible partner, making its operative form a bounded selection, routing, admission, or allocation among eligible alternatives.
Independent corroboration: The frozen evidence defines Assignment Model as 'Represents pairings between agents and tasks as an eligibility grid, then commits each agent to exactly one compatible partner', so its operative form is Decision, Gate & Allocation.
Nearest alternative: Analysis, Modeling & Optimization — It commits agents to case-specific eligible partners rather than merely representing or recommending pairings.
Review outcome: Independent reviewer agreement; medium confidence.
Origin Attribution¶
Primary origin: Operations Research
Origin pattern: Single lineage
Present-day reach: Multi-domain
Rationale: Operations research formalized the assignment problem as binary one-to-one matching on an eligibility or cost matrix.
Related originating lineages:
- Computer Science & Software Engineering — The Hungarian algorithm makes exact matching computationally tractable.
- Mathematics — Bipartite matching and combinatorial optimization provide the formal structure.
Review resolution: The classical assignment problem is agreed to originate in operations research. Bipartite matching mathematics and algorithm design are formative foundations; economics is an application context. The model is broadly reusable but not literally present across every domain, so multi-domain reach is calibrated.
Review outcome: Reconciled after independent review; high confidence.
References¶
[1] The Hungarian algorithm (Kuhn, 1955) solves the classical assignment problem — minimum-cost perfect matching in a bipartite graph — in polynomial time. Its existence is why clean one-to-one assignment is tractable even when the full combinatorial menu is enormous. withdrawn registry ↩