The EU Platform Work Directive, to be transposed by December 2026, requires ride-hailing platforms to state in plain language the main parameters of their automated decisions and how a worker's behaviour affects them. Such rules are exactly what a large language model (LLM) can read, so drivers will be able to let one decide for them. We compare two main families of rebalancing policy once their rules are public: a reactive policy (R) that sends idle drivers to cover requests just lost, and an anticipatory policy (A) that plans moves on a demand forecast. Each driver is an LLM agent maximizing its own net income, given no rules (N) or the rules at the directive's level of detail (L). We test two LLMs, Claude Haiku 5.5 and Jev, which understand the rules equally well, in a three-zone model and in Manhattan. With the rules disclosed, drivers follow the platform more closely: in Manhattan, the share of relocation offers they decline falls from about four in five to one in four under both policies. Yet the effects differ by policy. For the platform, disclosure costs R 3.7% of its profit in Manhattan, as R now pays for moves drivers used to make for free, while A's profit is unchanged; the two policies, which tie on profit under full compliance, end 6.1% apart. For drivers, disclosure raises income in the small model under both policies and LLMs; for users, it raises the service rate there by 10 to 18 percentage points. In Manhattan, self-interested drivers also make A a win-win-win against full compliance, raising driver income, platform profit and service rate by 10 to 12% each. Rebalancing policies that perform equally well under full compliance can thus show opposite results under mandatory disclosure. The study offers a framework to evaluate such policies under the new requirement and is, to our knowledge, the first to do so with LLM agents.
Figures & tables
Symbol
Meaning
Symbol
Meaning
Indices, policies and conditions
Requests and demand
o , d , z
Zones: origin, destination, any zone
qz
Requests in zone z over the last price interval
r ; or , dr
Passenger request; its origin and destination zones
qdlost
Requests lost in zone d since the last plan
v ; V
Vehicle and its driver; set of vehicles
q^odk
Forecast requests from o to d in interval k
t
Decision step (a period in the small model)
λ(t) , λod(t)
Mean requests per period, in total and from o to d (small model)
k
Interval of A’s horizon, k=0,…,H−1
λ0 , λ1
Base level and peak height of λ(t)
Table 1: Notation. A quantity keeps one symbol under both policies and in both instances; its variants are marked by an index, a superscript or an accent. Parameter values are given in Table 11 (Appendix A ).
Section
Content
[ROLE]
Role and goal
[PLATFORM RULES]
The disclosed rules (Section 3.2.2 ); empty under N
[TIME]
Clock time and the end of the shift
[YOU]
Zone, state, share of each fare kept, own history over the last six price intervals
[YOUR OFFER]
Only when an offer is held: origin, destination zone and compensation
[YOUR REQUEST]
Only when a request is assigned: pickup and drop-off zones, trip distance and time, pickup time, fare and the driver’s share, earlier rejections
Table 2: Sections of the prompt sent to each agent at each decision, in the order the agent reads them (city model; Appendix B gives the prompts in full, and those of the small model).
Figure 1: The rebalancing paragraph of the platform rules, which specifies the active policy, either reactive (R) or anticipatory (A). The rules, as the agents read them, call rebalancing offers “relocation offers”.
Decision point
Actions
Idle
STAY/MOVE
On request
ACCEPT/REJECT; if REJECT: STAY, MOVE
On rebalancing offer
ACCEPT/REJECT; if REJECT: STAY, MOVE
Table 3: Actions at each decision point.
N: no disclosure
L: law-level disclosure
R: reactive
R × N: offers cover lost requests; rules not shown
R × L: offers cover lost requests; rules shown, with the R rebalancing paragraph
A: anticipatory
A × N: offers follow the forecast plan; rules not shown
A × L: offers follow the forecast plan; rules shown, with the A rebalancing paragraph
Table 4: The 2×2 design: each test case pairs a rebalancing policy with a disclosure condition.
Figure 2: The network of the small model. It contains three zones: one residential, one middle and one business district. The distance between neighbouring zones is one period, and the distance between the two end zones is two periods. 60% of the morning demands start in zone 0, and 80% of the evening demands start in zone 2.
Figure 3: The Manhattan network and its 29 hexagonal zones. The map is rotated 60 degrees clockwise.
Item
Setting
Network
Manhattan road network with 29 hexagonal zones
Test day
Wednesday 23 March 2016, 4:00–24:00
Warm-up
3:00–4:00, every driver complies
Requests on the test day
52,461
Fleets
500 AI Drivers; In mixed fleets: 100 or 250 AI drivers and the others complying
Test cases
R × N, R × L, A × N, A × L
Table 5: Set-up of the city experiment. Parameter values are in Table 11 (Appendix A ).
Scale
Model
R
A
Minimum confidence
Small model
Jev
12/12
12/12
0.92
Claude Haiku 5.5 (xhigh)
12/12
12/12
–
City
Jev 1.13.0
17/17
17/17
0.94
Table 6: Comprehension test under disclosure L: rule text only, no market state, multiple choice.
Table 7: Small model results with all ten drivers AI agents, compared with the benchmark in which every driver complies. Values are means over all drivers and all runs. For offers and requests, acc. means that the driver accepts the offer or request, and decl. that it rejects it. The numbers in brackets are the differences from the benchmark in which all drivers comply.
Figure 4: How much drivers move decides the platform’s outcome: own moves per driver against the change in platform profit relative to everyone complying ( ΔΠ ), one dot per run (60 per panel: Jev and Haiku, N hollow and L filled, 15 runs per cell), all ten drivers AI. The dashed line is one quadratic fit over both models and both conditions; arrows join each model’s N and L cell means. (a) Under A the fit explains 91% of the variation (94% for driver income and 95% for the service rate). (b) Under R the curve rises then falls, peaking at 10.0 moves per driver, and explains 45%.
R
A
Service rate (%)
57.8±0.2
51.2±0.9
Utilization (%)
61.3±0.1
54.5±0.9
Platform profit (USD/day)
$$136,500±550
136,600$\pm$1,900
Commission (USD/day)
152,100
139,900
Compensation paid (USD/day)
15,600
3,270
Rebalancing offers accepted
2,508
1,016
Table 8: Compliant city baseline: means over the 5 repeats, with ± the standard deviation across them. Driver net income is the share 1−θ of fares plus compensation, minus the cost Cv of Eq. ( 3 ), over the day.
Table 9: City results when all 500 drivers are Jev agents. Income, offers, compensation (USD), own moves and requests are means per driver over the day; Π is in thousand USD a day. Acc. and decl. mean accepted and declined; own moves are moves made without an offer. The numbers in brackets are the change against everyone complying in the same repeat, repeat 0 (R: Iv 590.9, Π 136.50, service rate 58.0%; A: 519.8, 136.86, 51.6%). In panel b, VKT is the distance driven by the whole fleet, the synchrony index is that of Figure 11 , and own moves beyond the plan are those in excess of the rebalancing moves the platform planned (Figure 5 e).
Figure 5: Metrics of the four test cases in the city model by hour of the day; solid lines L, dashed N. Top row, what the platform offers and pays: (a) rebalancing offers accepted; (b) compensation paid; (c) compensation saved by own moves that stand in for declined offers; (b) and (c) share one scale. Bottom row, what the drivers do on their own, and demand: own moves (d) following the platform’s plan and (e) beyond it; (f) requests and lost requests, with the morning and evening peaks shaded.
Figure 6: (a) Running total of the change in platform profit Π from N to L under R and A; (b) fare per km of the trips served; (c) for R and (d) for A, on one scale, the running total split into the change in commission and the change in compensation paid (as a cost); the curves run past midnight.
Table 10: City outcomes when 100 or 250 of the 500 drivers are Jev agents and the others comply. Π and compensation are in thousand USD a day; driver income is the mean per driver over the day. The numbers in brackets are the change against everyone complying. For the AI and compliant drivers, the change is against what the same drivers earned when everyone complied.
Figure 7: Who gains when only some drivers use an AI agent (a, b), and where the AI drivers’ gain comes from (c, d): the change over the day against everyone complying, in thousand USD, under R (a, c) and A (b, d), on a common scale within each row. Gains are stacked above zero and losses below it. In (a) and (b) the diamond marks the total of all drivers: among the drivers, R is close to zero-sum and A is positive-sum. In (c) and (d) the square marks the AI drivers’ net gain; Under R, the AI drivers’ gain is roughly what the compliant drivers lose; under A, it is new to the market.
Figure 8: Drivers in a long wait by hour of the day, with 100, 250 and all 500 AI drivers under R (a–c) and A (d–f). A wait runs from the drop-off of a driver’s last trip to the acceptance of the next one, and a driver counts for the whole of a wait of over 30 minutes. Solid lines L, dashed N; the demand peaks are shaded.
Figure 9: The value of an idle decision of an AI driver in the mixed fleets, under R (a, b) and A (c, d) with 100 (a, c) and 250 (b, d) AI drivers, by where the driver starts. Each value is the income over the next 2 hours against compliant drivers of the same run in the same zone and hour who have waited about as long: the drivers’ share of fares and compensation, before driving cost. Bars are AI drivers who move on their own at the decision, with 95% intervals (standard errors clustered by driver). Zones are grouped hour by hour into poor, middling and busy by the share of idle decisions soon followed by a trip when everyone complies. The labels give each group’s share of the AI drivers’ own moves.
Figure 10: Own moves as the number of AI drivers grows. (a) Extra trips served in the whole market against everyone complying, per own move of the AI drivers. (b) Mean time to the next trip after an AI driver leaves a poor zone (Figure 9 ), and for compliant drivers in the same zones and hours when everyone complies, as the mean over N and L. Each point is one run.
Appendix figures & tables5 assets
Supplementary material from the paper’s appendix.
Appendix
Parameter
Symbol
Small model
City (Manhattan)
Network and clock
Zones
3 on a line (residential, middle, CBD)
29 hexagons of 1,000 m radius on the road network
Travel time between zone centres
tod
1 period between neighbours, 2 between the end zones
along the road network
Unit of distance
ℓod
one zone spacing, driven in one period
road km
Decision step
ΔT
one period of 5 min
15 s
Price interval
ΔTp
one period
5 min
Appendix
Table 11: Parameter values of the two instances.
Experiment
Model
Runs
API calls
Cost (USD)
Per run (USD)
Dates
Small model, all ten drivers AI
Jev 1.13.0, option of highest probability
60
20,396
2.43
0.040
17 Oct
Small model, all ten drivers AI
Claude Haiku 5.5, effort xhigh
60
19,914
26.61
0.44
17 Oct
City, all 500 drivers AI
Jev 1.13.0, option of highest probability
4
217,350
49.54
12.39
23 Oct
Total
124
257,660
78.58
Appendix
Table 12: Models, API calls and costs of the runs reported in the paper. One API call answers one decision of an AI driver. Costs in USD as recorded by the runs (Jev: 0.042 USD per million input tokens; Claude Haiku 5.5: 0.10 and 0.50 USD per million input and output tokens).
#
Question
Options (correct in bold)
Jev R
Jev A
1
In a strictly positive shortage away from payment caps, with all other inputs fixed, fewer online idle vehicles make fare:
Increase ; Unchanged; Decrease
1.00
1.00
2
Hold requests and committed arrivals fixed. In a positive shortage away from caps, a rejection reducing measured online idle supply makes next period fare:
Increase ; Unchanged; Decrease
1.00
1.00
3
In a positive shortage away from caps, increasing the committed supply used for pricing makes fare:
Increase; Unchanged; Decrease
0.99
1.00
4
In a positive shortage with positive included supply, away from caps, increasing the demand input used in the rule makes fare:
What decides where relocation offers send drivers?
Requests left unserved recently (R); Forecast demand over the coming periods (A)
1.00
1.00
Appendix
Table 13: Comprehension questions of the small model (12 per policy), rules text only, disclosure L. The dispatch question has a different correct answer under R and A, marked (R) and (A). Jev 1.13.0 on 12 October 2026: probability on the correct option; Claude Haiku 5.5 (xhigh), asked the same day, answered every question correctly under both policies.
#
Question
Options (correct in bold)
Jev R
Jev A
1
A zone has a shortage. With everything else fixed, if fewer drivers are counted as available in it, its fare per kilometre at the next price update:
Increase ; Unchanged; Decrease
1.00
1.00
2
Hold everything else fixed. A driver rejects a passenger request and stays in the zone. The zone’s next fare:
Increase; Unchanged ; Decrease
0.94
0.98
3
A zone has a shortage. With everything else fixed, if more drivers are committed to arrive there before the next price update, its next fare:
Increase; Unchanged; Decrease
1.00
1.00
4
A zone has a shortage and some counted drivers. With everything else fixed, if more requests start there before the next price update, its next fare:
Increase ; Unchanged; Decrease
0.96
0.99
5
Which demand does the fare rule use?
Requests that started in the zone since the last price update ; Forecast requests for the coming minutes
1.00
1.00
6
What decides where relocation offers send drivers?
Requests lost in each zone since the platform’s last plan (R); Forecast requests in each zone for the near future (A)
1.00
1.00
Appendix
Table 14: Comprehension questions of the city (17 per policy), rules text only, disclosure L. Jev 1.13.0 on 22 October 2026, archived in the frozen package: probability on the correct option.
Figure 11: Synchrony of the drivers’ idle choices in the city, by hour of the day. Decisions are grouped by zone and by time windows of length ΔTp , keeping groups of at least two drivers. In each group the index is the largest share of drivers taking the same deviating action, minus the expectation of that share when the drivers draw independently from the run’s action distribution (Monte Carlo); the line is the mean over the groups. Solid lines L, dashed N.
Bringing Large Language Models (LLMs) into industrial ride-hailing dispatch as semantic feature extractors over platform-scale behavioral logs is a compelling but under-explored data systems problem. Production matching pipelines remain dominated by structured numerical features, yet decisive behavioral signals (e.g., a driver's habitual aversion to certain regions) are inherently contextual and naturally expressible as LLM-generated user profiles. However, scaling such profiling to a live, millisecond-latency dispatcher faces three intertwined constraints rarely addressed together: on a platform with millions of daily orders, logs exceed any LLM's context window by orders of magnitude; most users are long-tail, with too few interactions for per-user profiling; and surface-fluent profiles do not necessarily improve downstream prediction utility. We present ProfiLLM, an agentic LLM data pipeline that operationalizes utility-aligned user profiling for production matching systems through two modules. (1) Tool-Augmented Global Knowledge Mining equips an LLM agent with 27 analytical tools to mine platform-scale data, producing reusable global knowledge, adaptive user clustering rules, and region-level supply-demand priors. (2) Utility-Aligned Profile Exploration generates multiple candidate profiles per cluster, evaluates them via a lightweight downstream utility proxy, iteratively refines the best candidates and constructs preference pairs for DPO fine-tuning. Deployed on DiDi's production dispatcher, ProfiLLM achieves up to +6.14% relative AUC improvement in outcome prediction, up to +4.35% GMV gain in dispatching simulation, and consistent improvements in a 14-day online A/B test including +0.47% GMV, +0.33% Completion Rate, and -0.82% Cancel-Before-Accept rate.
Consumers increasingly delegate product search to AI shopping agents powered either by generative large language models (LLMs) that deliberate in natural language or by non-generative decision models that output calibrated choice probabilities in a single forward pass. Because retail platforms monetize through sponsored placements that shoppers typically discount, we examine whether an AI agent's evaluation of paid listings depends on who delegates the agent across both model families. Across three studies with no instructions to favor advertisers, naming a booking platform (vs. a traveler) as the agent's principal significantly attenuates the penalty applied to sponsored listings. Study 1 establishes this sponsorship bias across generative LLMs, prompt wordings, and reasoning efforts, showing that platform delegation weakens pre-choice skepticism and that naming the consumer as the beneficiary eliminates the bias. Study 2 establishes the bias across six commercial and open-weight decision models on calibrated choice probabilities and shows that consumer-aligned fine-tuning of an open-weight decision model (Kev 9B) across non-hotel retail categories eliminates the bias zero-shot on hotel choices. Study 3 decomposes the disclosure label across both model families, showing that attributing the placement to the platform triggers the sponsorship bias, whereas stricter disclosure wording ("Sponsored" vs. "Promoted") lowers paid-listing evaluation without eliminating this bias.
Davood Wadi, Yu Ma
Desautels Faculty of Management, McGill University, Montreal, Quebec, Canada
In large-scale ride-hailing, hold control is a critical mechanism for improving passenger-driver experience. By selectively delaying certain driver-order pairs, the system waits for better opportunities, reduces cancellations, and mitigates wasted driver effort. However, existing industrial hold strategies often rely on heuristic thresholding over multiple predictive models, which can be brittle under non-stationary traffic and hard to optimize for multi-objective experience signals. We propose EXHOLD, a deployable two-stage framework decoupling experience-aware pair assessment from hold-time execution. In Stage I, we learn a decision model assigning each driver-order pair to discrete, interpretable experience tiers by optimizing a unified objective that aggregates satisfaction signals across the matching funnel. In Stage II, we solve for a monotone hold-time schedule via constrained optimization over empirical quantiles. This explicitly enforces service guardrails bounding the unnecessary holding of promising matches while maximizing overall experience improvement. We evaluate EXHOLD through randomized A/B experiments in DiDi's production system in Brazil. Results show consistent gains in marketplace efficiency and experience: EXHOLD increases trip completion and driver income, significantly reduces passenger cancellations, and improves funnel efficiency. Ablations and behavioral analyses confirm both stages are essential and that the policy makes calibrated decisions under spatiotemporal heterogeneity. EXHOLD is currently deployed, serving production traffic in Brazil.