A constrained slate needs a feasible exposure allocation, not only a weighted score
Separate prediction, utility, position exposure, hard eligibility, and aggregate constraints when constructing a recommendation slate.
On this page
The question for today
What you’ll understand
- Calculate position-weighted utility and group exposure for a slate.
- Distinguish per-request requirements from long-run expected exposure constraints.
- Check necessary capacity and candidate-availability conditions before optimization.
A recommendation policy can balance several outcomes, such as relevance, satisfaction, freshness, creator coverage, and resource cost. A click predictor is only one input to that decision. Turning every concern into an arbitrary weighted sum can obscure hard eligibility rules or exposure commitments that the candidate set cannot satisfy. A precise design states its utility proxy, position model, constraint horizon, and fallback for infeasibility. Feasible does not itself mean beneficial; the chosen objectives still need evidence about user outcomes.
Define utility and exposure as separate quantities
Let each eligible item have a declared utility estimate and let each displayed position have an exposure weight. Position-weighted utility combines them under an explicit model; it is not automatically a causal estimate of satisfaction. Exposure records how visible items are expected to be, which can differ from a raw item count. A group appearing once in the last position may receive less exposure than another group appearing once at the top. State whether the weights are measured, modeled, or simply chosen for a teaching calculation.
A randomized ranking can be described by the probability that each item occupies each position. Valid assignment probabilities must correspond to an admissible policy: positions cannot contain multiple items and an item cannot occupy two slots in one slate. Expected utility and exposure then average over that policy's randomness. A deterministic request constraint requires every realized slate to satisfy it; an expectation constraint allows individual slates to differ. Confusing the two can make a statistically feasible allocation violate the promise made for a particular request.
Check candidate and position capacity before tuning weights
Hard eligibility can exclude items before any objective is optimized. Minimum representation requirements can also fail if the candidate union contains no eligible member of a required group. For disjoint groups that partition the eligible items, the total available exposure in a fully filled slate is the sum of position weights. Requested minimum expected exposures cannot sum beyond that total. This is only a necessary check: item availability, per-slate rules, position restrictions, and other constraints can still make an apparently reasonable set of minima infeasible.
A weighted objective usually expresses tradeoffs among feasible alternatives; it does not guarantee a hard constraint merely because its coefficient is large. Conversely, imposing a constraint can reduce the chosen utility proxy while serving another declared objective. Report that tradeoff rather than presenting every metric as free to improve simultaneously. When no feasible slate exists, apply a documented priority or fallback rule and record the violation context. Silently removing difficult requests from aggregate reports hides exactly the cases needed to evaluate the design.
Evaluate feasibility, outcomes, and the horizon together
Specify whether constraints apply within one request, a session, or a population window, and preserve the denominator and policy version. Inspect user and item cohorts because an aggregate exposure target can conceal a subset receiving no useful recommendations. Validate utility predictions and outcomes with an appropriate experiment; a mathematical optimum for a click proxy may reward behavior that does not improve long-term user benefit. Include candidate-source limitations and latency in the serving evaluation so a constrained reranker is judged on the slate it can actually construct.
The probability lab can illustrate the random count in one explicitly chosen mixture. Reset, set both p=0.2 and n=10, predict mean two and variance 1.6, then Play or Step. Reset and set both p=0.2 and n=20 for mean four and variance 3.2. Its exact binomial bars assume independent fixed-probability decisions and playback highlights outcomes rather than sampling. It has no item assignment, exposure weights, eligibility, constraint solver, or user utility. A long-run expected count in that toy model does not prove every realized slate satisfies a hard request-level requirement.
Work it through
An expected exposure target can require randomizing the top position
Two eligible items A and B have utility estimates 0.9 and 0.7. Two positions have exposure weights 1 and 0.5. Require B's expected exposure to be at least 0.6, while each slate contains both items. Compare ordering A,B with B,A and an admissible randomized mixture.
Order A,B gives utility 0.9+0.5×0.7=1.25 and B exposure 0.5. Order B,A gives utility 0.7+0.5×0.9=1.15 and B exposure 1. The first deterministic order misses the 0.6 exposure minimum.
Let B be first with probability q. Expected B exposure is0.5+0.5q, so q≥0.2 is required. Because A,B has greater modeled utility, the best mixture within these two orders uses q=0.2.
Expected utility is0.8×1.25+0.2×1.15=1.23 and B exposure is0.6. Some individual slates still give B exposure 0.5, so this satisfies an expectation constraint rather than an every-slate minimum of0.6.
The optimization is transparent about its utility proxy, feasible randomization, and constraint horizon. It does not establish that the chosen proxy measures actual user benefit.
The living notebook
Explore the model
Interactive lab · probability
Expected counts do not enforce every realized outcome
Reset, set both p=0.2 and n=10, predict mean 2 and variance 1.6, then Play or Step. Reset and re-enter both p=0.2 and n=20 for mean 4 and variance 3.2. The exact binomial model assumes independent mixture choices; playback highlights possible outcomes, not random draws. It has no ranked slate, exposure weights, item eligibility, or constraint optimization, and n caps at30.
- Mean · np
- 5
- Variance · np(1−p)
- 2.5
- Total probability
- 1
These are exact binomial probabilities for independent trials with one fixed success probability. Playback tours the distribution; it does not resample outcomes. Parameter changes pause playback and recompute the model at the current elapsed time. Reset restores both parameters and returns time to zero. Playback starts paused. Adjust either parameter, then choose Play or Step.
Look forState whether a ranking promise is deterministic per slate or statistical over an explicitly defined horizon.
Pause & reason
Check your understanding
Your turn
Try it yourself
A two-slot slate has weights 1 and 0.4. Three disjoint covering item groups each demand minimum expected exposure 0.5. Is the capacity condition feasible? If one minimum changes to0.3, does passing the condition prove feasibility?
Take a moment to make a prediction or work it out on paper. Open a hint when you need one.
Give me a hint
Compare summed minima with total position exposure, then consider missing eligible candidates.
Compare with the solution
The original minima sum to1.5 while total exposure is1.4, so the necessary condition fails. With minima 0.5,0.5,0.3, the sum is1.3 and passes that check, but availability, assignment, position, and per-slate constraints can still make the complete problem infeasible. The inequality alone is not a solver or a guarantee.
Keep the idea
Take it with you
- Utility estimates, exposure, eligibility, and constraint horizons are distinct parts of a ranking policy.
- Check capacity and candidate feasibility before searching objective weights.
- Expected exposure does not guarantee every-slate compliance or validated user benefit.
Read further
Original sources and deeper explanations to follow at your own pace.
Optional progress, saved in this browser when available. Revisit any lesson at any time.
Lesson not marked complete.