Conversational personalizationControl systems personalization
ChatMPC enables users to personalize control system specifications (like safety margins) in real-time by interpreting natural language feedback into parameter updates for Model Predictive Control.
Core Problem
Standard control systems use fixed specifications (like safety constraints) that do not adapt to individual user preferences or changing environments.
Why it matters:
Traditional personalization requires tedious surveys or feedback loops that burden the user
Real-time adaptation is difficult with standard data collection methods
Fixed specifications fail to accommodate diverse user preferences (e.g., how close a robot should get to an object)
Concrete Example:A robot navigates avoiding obstacles. One user might want it to stay far from a fragile vase, while another might prefer it ignores a sturdy toy to reach the goal faster. Without personalization, the robot treats both obstacles with the same rigid safety margin, potentially taking inefficient paths.
Key Novelty
Natural Language-driven MPC Parameterization
Introduces a 'personalization loop' that runs alongside the standard control loop at a slower timescale
Uses an 'Interpreter' module comprising a language model (Sentence BERT) to map user chat to specific control parameter updates
Adjusts mathematical constraints (Control Barrier Functions) inside the MPC controller dynamically based on semantic intent (e.g., 'separate' vs. 'approach')
Architecture
Overall structure of ChatMPC, illustrating the interaction between the Control Loop and the Personalization Loop.
Evaluation Highlights
Successfully adjusted safety margins for distinct objects (vase vs. toy) based on prompts like 'Separate from the vase'
Demonstrated real-time trajectory updates where the robot increased distance from fragile objects and decreased distance from non-fragile ones across 3 trials
Showed consistent adaptation behavior across two different simulation environments (different obstacle placements)
Breakthrough Assessment
5/10
A proof-of-concept integrating LLMs with control theory. While the idea of controlling robots via language is established, applying it to persistenty update MPC constraint parameters is a neat niche application, though the experiments are simple simulations.
⚙️ Technical Details
Problem Definition
Setting: Personalizing the parameters θ of a Model Predictive Control (MPC) controller Cθ based on user natural language feedback
Inputs: Natural language prompt p from user H, state x from plant P
Outputs: Control input u to the plant
Pipeline Flow
User observes Plant behavior
User provides natural language Prompt
Interpreter extracts intent (Update Marker)
Interpreter updates MPC Parameters (θ)
MPC Controller computes optimal input using new parameters
System Modules
Intent Extractor (Interpreter)
Classify user prompt into an actionable update direction
Model or implementation: Sentence BERT (deepset/sentence_bert) + Embedding Classifier
Parameter Updater (Interpreter)
Apply the update marker to the current parameters
Model or implementation: Deterministic rule: θ_new = pow(d, s) ⊙ θ_old
MPC Controller
Compute control inputs for the robot
Model or implementation: MPC-CBF (Optimization Problem)
Novel Architectural Elements
Integration of a natural language 'Personalization Loop' directly updating Control Barrier Function parameters (gamma) in real-time
Modeling
Base Model: Sentence BERT (deepset/sentence_bert)
Training Method: Training a simple classifier on top of frozen Sentence BERT embeddings
Training Data:
Small set of example prompts (approx 20 examples listed in Table I) mapping to 4 update markers
vs. Preference-based MPC: ChatMPC uses natural language instead of binary selection or ratings, reducing user burden
vs. LLM to Code [11]: ChatMPC updates controller parameters (specifications) rather than generating trajectories or code, allowing persistent personalization across environments [not cited in paper as direct baseline, but conceptual contrast]
vs. Liang & Lo [4]: Updates parameters via chat intent rather than learning from safety violation data
Limitations
Relies on a pre-defined set of update markers and classification classes; not fully open-ended
Simple numerical experiment with only two types of obstacles
No user study with real humans to validate the 'reduced burden' claim
Stability analysis of the personalization loop is mentioned as future work
Code is publicly available at https://github.com/Mya-Mya/ChatMPC. The paper lists specific parameters for the MPC (matrices Q, R, P) and the update logic.
📊 Experiments & Results
Evaluation Setup
Simulation of an autonomous robot navigating 2D environments with 'vase' (fragile) and 'toy' (robust) obstacles.
Benchmarks:
Custom Simulation Environment A (Navigation with obstacle avoidance) [New]
Custom Simulation Environment B (Navigation with obstacle avoidance) [New]
Metrics:
Qualitative Trajectory analysis (Visual inspection of distance to obstacles)
Statistical methodology: Not explicitly reported in the paper
Key Results
Benchmark
Metric
Baseline
This Paper
Δ
The paper relies on qualitative trajectory plots rather than tabular metrics. The key result is the change in robot path relative to obstacles after prompts.
Experiment Figures
Robot trajectories in Environment A across three trials: initial, after 'separate from vase', and after 'don't care about toy'.
Main Takeaways
The robot successfully modified its path to be further from the 'vase' after the prompt 'Separate from the vase.'
The robot successfully modified its path to be closer to the 'toy' after the prompt 'You don't have to be so careful about the toy.'
Personalization logic (parameter updates) transferred consistently across two different environments with different obstacle layouts.
📚 Prerequisite Knowledge
Prerequisites
Model Predictive Control (MPC)
Control Barrier Functions (CBF)
Basic NLP embeddings (Sentence BERT)
Key Terms
MPC: Model Predictive Control—a control strategy that optimizes future system behavior over a finite time horizon at each step
CBF: Control Barrier Function—a mathematical construct used to ensure safety by enforcing forward invariance of a safe set (keeping the system within safe bounds)
Personalization Loop: A secondary feedback loop proposed in this paper that updates controller parameters based on user feedback, running slower than the main control loop
Interpreter: The module that translates natural language prompts into parameter update vectors
Update Marker: A vector indicating which parameters should be increased, decreased, or left unchanged based on the user's intent
Sentence BERT: A modification of the BERT network to derive semantically meaningful sentence embeddings that can be compared using cosine similarity