ARGUS: An Agenda-Driven Framework for Reliable User Simulation
Organizations: X-LANCE Lab, School of Computer Science, MoE Key Lab of Artificial Intelligence SJTU AI Institute, Shanghai Jiao Tong University, Shanghai, China · Jiangsu Key Lab of Language Computing, Suzhou, China · AISpeech Co., Ltd., Suzhou, China · Suzhou Laboratory, Suzhou, China
Abstract
High-fidelity user simulators are essential for evaluating and training agents in interactive environments. However, current LLM-based simulators struggle with reliability issues, such as goal omission and policy non-compliance. We propose ARGUS (Agenda-dRiven Goal-oriented User Simulator), a neuro-symbolic framework that maintains the user's goal state using a dynamic agenda stack manipulated via symbolic operations. By rigorously decoupling state tracking from natural language generation, ARGUS facilitates strict goal progression and constraint-aligned interactions. For cost-efficient deployment, we distill ARGUS into compact models using a unified pipeline: evaluator-guided SFT followed by online RL with dense step-level rewards. To rigorously evaluate behavioral fidelity, we introduce a rubric-based metric Composite Behavioral Score (CBS). Evaluations on -Bench and MultiWOZ demonstrate the significant superiority of the ARGUS architecture and the efficacy of our training pipeline. Code and data will be released soon.
Figures & tables
| Method | Retail | MultiWOZ | Airline | |||
| CBS | TSR | CBS | TSR | CBS | TSR | |
| Prompt-based | ||||||
| Vanilla (8B) | 50.3 | 44.4 | 76.5 | 56.8 | 59.8 | 40.4 |
| ARGUS (8B) | 72.5 | 51.6 | 76.0 | 57.4 | 69.0 | 42.4 |
| Vanilla (235B) | 73.1 | 50.4 | 88.4 | 63.2 | 75.1 | 47.2 |
| ARGUS (32B) | 83.9 | 57.5 | 80.4 | 58.6 | 78.9 | 34.4 |
Appendix figures & tables15 assets
Supplementary material from the paper’s appendix.
Appendix
| Mean step-score bucket | Mean step score | Mean CBS (%) | |
| 8 | 0.2751 | 27.30 | |
| 12 | 0.3584 | 46.70 | |
| 30 | 0.4625 | 62.18 | |
| 39 | 0.5618 | 70.86 | |
| 51 | 0.6480 | 73.42 | |
| 54 | 0.7552 | 82.37 |
| Domain or layer | Supported operations |
| Hotel | Search by static attributes and dynamic constraints; check room availability and price; create, modify, cancel, and retrieve bookings. |
| Restaurant | Search by area, food type, price range, and reservation support; check table availability; create, modify, cancel, and retrieve reservations. |
| Train | Search by route, date, time, class, seat preference, and availability; assign seats; create, modify, cancel, and retrieve bookings. |
| Taxi | Search by route, time, capacity, vehicle attributes, and reservation support; estimate fares; create, modify, cancel, and retrieve taxi bookings. |
| Attraction | Search by area, type, name, and reservation support; check reservation feasibility; create, modify, cancel, and retrieve reservations when supported. |
| Geo and utility | Compute distances between places, retrieve nearby entities within a target domain, and perform simple arithmetic calculations. |
| Dimension | Subcriterion | Description |
| D1: Faithfulness & Consistency | Hallucination | Simulator fabricates information in the response, introducing new details not present in the scenario or conversation facts, such as fictitious order numbers, account information, device status, or other business details. |
| State Confusion | Simulator confuses the conversation state, mixing up attributes of different entities, different orders, different slots, or different check results, which leads to incorrect factual correspondences. | |
| Ungrounded Confirm | Simulator makes ungrounded confirmations, directly saying "yes" or "that’s right" without verification when the Agent proposes candidate information that is unprovided or incorrect. | |
| Cooperativeness | Simulator fails to cooperate truthfully, baselessly pretending not to know, shifting responsibility, or glossing over information that it already knows in the scenario and should have answered. | |
| D2: Policy Adherence | Constraint Violation | Simulator violates constraints by prematurely leaking information it should not say, exposing meta-instructions, or accepting options and out-of-boundary solutions explicitly prohibited by the scenario. |
| Cond. Logic Failure | Simulator fails to execute conditional logic correctly, meaning the if -> then rules in the scenario are either not triggered when they should be (missed trigger) or triggered when they should not be (false trigger). |
| Metric | Agreement |
| Cell CBS Pearson | 0.873 |
| Cell CBS Spearman | 0.886 |
| Cell CBS Kendall | 0.746 |
| Protocol Failure agreement | 93.81% |
| Protocol Failure Cohen’s | 0.624 |
| Method-pair ranking agreement | 91.67% |
| Dimension | CBS Subcriterion | Human IAA | Human–Qwen | Human–GPT | Qwen–GPT |
| AC2 | AC1 | AC1 | AC1 | ||
| Faithfulness & Consistency | Hallucination | 0.896 | 0.807 | 0.528 | 0.705 |
| State Confusion | 1.000 | 0.846 | 1.000 | 0.901 | |
| Ungrounded Confirm. | 0.928 | 0.935 | 0.539 | 0.638 | |
| Cooperativeness | 0.939 | 0.929 | 0.916 | 0.887 | |
| Policy Adherence | Constraint Violation | 0.828 | 0.603 | 0.701 | 0.739 |
| Method | Retail | MultiWOZ | ||
| CBS | TSR | CBS | TSR | |
| Naive-SFT (trajectory) | 62.3 | 47.0 | 84.5 | 64.0 |
| Naive-SFT (step-level) | 66.8 | 43.8 | 84.6 | 65.7 |
| UGST-SFT (trajectory) | 54.3 | 48.6 | 78.2 | 67.1 |
| UGST-SFT (step-level) | 62.6 | 47.2 | 81.4 | 64.9 |
| Argus -SFT (trajectory) | 81.9 | 51.9 | 84.5 | 63.6 |
| Method | Qwen3-MoE-30B | Gemma3-27B | ||
| CBS | TSR | CBS | TSR | |
| Retail | ||||
| Vanilla | 65.1 | 44.6 | 68.1 | 32.6 |
| + Structured goal | 76.4 | 48.4 | 71.6 | 39.1 |
| + Prompt constraints | 68.8 | 47.5 | 67.6 | 43.7 |
| + Both | 78.0 | 53.5 | 76.1 | 42.5 |
| Method | Qwen3-MoE-30B | Gemma3-27B | ||
| CBS | TSR | CBS | TSR | |
| Retail | ||||
| UGST (GPT-4o extractor) | 60.7 | 52.3 | 74.7 | 41.8 |
| UGST (GPT-5.1 extractor) | 69.9 | 34.9 | 74.7 | 44.7 |
| Argus | 85.6 | 61.1 | 85.6 | 53.8 |
| Airline | ||||
| Method | Retail | Airline | MultiWOZ | |||
| CBS | TSR | CBS | TSR | CBS | TSR | |
| Naive-SFT | 53.7 | 43.3 | 59.6 | 32.0 | 69.6 | 53.2 |
| UGST-SFT | 49.7 | 46.1 | 57.5 | 31.6 | 69.4 | 59.6 |
| UGST-RL | 53.0 | 52.5 | 58.1 | 30.0 | 72.6 | 63.1 |
| ARGUS-SFT | 76.0 | 50.5 | 72.8 | 34.4 | 78.6 | 55.4 |
| ARGUS-RL | 82.6 | 57.7 | 80.4 | 35.6 | 83.0 | 58.3 |
| Simulator | Easy | Medium | Hard | Expert | Overall | |||||
| TSR | CBS | TSR | CBS | TSR | CBS | TSR | CBS | TSR | CBS | |
| Vanilla | 77.1 | 70.7 | 47.6 | 68.8 | 38.2 | 71.9 | 35.0 | 69.9 | 48.8 | 70.3 |
| React | 72.5 | 68.4 | 54.4 | 69.6 | 42.5 | 67.6 | 41.0 | 66.3 | 52.2 | 68.0 |
| Verify | 72.3 | 72.1 | 45.8 | 71.2 | 42.3 | 73.8 | 36.6 | 67.2 | 48.6 | 71.0 |
| Reflection | 74.2 | 70.6 | 47.6 | 67.3 | 41.2 | 69.9 | 36.6 | 62.5 | 49.3 | 67.5 |
| UGST | 72.3 | 68.7 | 49.2 | 67.1 | 44.3 | 67.1 | 32.4 | 55.4 | 49.0 | 64.5 |
| Case 1: Skipping a Conditional Preference |
| Task and intended interaction. The user should first request a double room for two people in a centre guesthouse on January 8, 2026. If no centre guesthouse is available, the user may relax the type constraint and accept any centre accommodation. If multiple options remain, the user should request expensive properties. If there are still several expensive options, the user should ask the agent to choose the lowest total price among them. |
| Abridged dialogue. Agent: No centre guesthouse is available. Would you like me to search for other accommodation types? User: Okay, please look for any type of accommodation in the centre that can offer a double room for two people for one night. Agent: I found two centre hotels: Gonville Hotel (£147, expensive) and University Arms Hotel (£237, expensive). Would you like to proceed with one of these? User: Yes, please book the Gonville Hotel. It is the cheaper one, so that works for me. |
| Final-state result. The final booking is correct: the simulator books Gonville Hotel for the requested date, room type, party size, and stay length. The final-state check therefore marks the task as successful (TSR = 1.0). |
| CBS judgment. The judge preserves credit for faithfulness and format, since the simulator does not hallucinate unsupported facts and follows the output protocol. However, it removes credit for policy adherence and goal completion/progression. After the agent presents two options, the user immediately selects the cheaper hotel. The intended behavior is to first express the expensive-property preference and then use lowest price only as a tie-break among expensive options. Although the final hotel happens to be correct, the simulated user exposes the final choice through a shortcut rather than through the specified conditional goal progression. |
| Case 2: Skipping a Required Search Refinement |
| Task and intended interaction. The user should book standard-class train tickets for two people from Cambridge to Bishops Stortford on January 7, 2026. The initial request should only consider available trains departing after 23:30. If no train is found, the user should ask the agent to search again without the time restriction. If this produces too many results, the user should add a new constraint requiring departures after 05:28. Only then should the user choose the option with the earliest arrival time, using the lowest total price as a tie-break. |
| Method | Qwen3-8B | Qwen3-32B | Qwen3-MoE-30B | Qwen3-MoE-235B | ||||
| T | D | T | D | T | D | T | D | |
| Vanilla | 0.113 | 0.842 | 0.341 | 1.96 | 0.149 | 0.879 | 0.412 | 2.43 |
| React | 0.180 | 1.17 | 0.634 | 3.83 | 0.260 | 1.52 | 0.697 | 4.26 |
| Verify | 0.308 | 2.26 | 0.820 | 4.75 | 0.383 | 2.32 | 0.874 | 5.20 |
| Reflection | 0.317 | 2.68 | 0.848 | 4.88 | 0.362 | 2.15 | 0.956 | 5.71 |
| UGST | 1.09 | 9.79 | 3.88 | 29.5 | 2.00 | 11.8 | 5.00 | 26.0 |
| Method | 4B | 8B | ||
| T | D | T | D | |
| Naive-SFT | 0.066 | 0.418 | 0.098 | 0.609 |
| UGST-SFT | 0.079 | 0.452 | 0.127 | 0.752 |
| UGST-RL | 0.075 | 0.397 | 0.125 | 0.784 |
| ARGUS-SFT | 0.123 | 0.820 | 0.144 | 0.950 |
| ARGUS-RL | 0.088 | 0.661 | 0.138 | 0.974 |
| Environment | SFT | RL | Test |
| Retail | 100 | 406 | 114 |
| MultiWOZ | 196 | 508 | 155 |
| Airline | – | – | 50 |
| Telecom | – | – | 114 |
Task-Oriented Dialogue Systems
Task-oriented dialogue systems use conversation to understand user goals, gather information, and complete actions across multiple turns.
See all 59 papers