Steerable Pluralistic Policy Alignment from Anonymized Crowd Feedback
Organizations: Kahlert School of Computing, University of Utah, Salt Lake City, USA · U.S. Army DEVCOM Army Research Laboratory, Aberdeen Proving Ground, MD, USA
Abstract
Pluralistic alignment requires AI systems to learn from diverse populations whose preferences may reflect heterogeneous or even conflicting objectives, and to personalize their behavior to individual users. Existing approaches in pluralistic alignment often assume access to annotator identities and rely on powerful pretrained representations to model individual preference variations. We propose Preference-PCA Pluralistic Learning (P3L), a novel framework for pluralistic alignment that jointly learns trajectory embeddings and the shared basis of preference directions via PCA decomposition from heterogeneous crowd feedback without requiring annotator identities. At test time, our approach enables rapid and accurate personalized reward learning and downstream policy optimization. Experiments across multiple embodied control tasks demonstrate that P3L enables steerable personal alignment that generalizes beyond the offline dataset to out-of-distribution new users and attains competitive RL and test performance, while substantially reducing computational cost and supporting variable adaptation query budgets.
Figures & tables
| Baselines | P3L | |||
|---|---|---|---|---|
| Environment | SingleRM | VPL | Privileged-Traj-MaskedDP | Anonymized-CLS-MaskedDP |
| MO-Highway | 70.222 ± 3.326 | 66.667 ± 3.143 | 84.889 ± 5.145 | 78.667 ± 4.576 |
| MO-Reacher | 54.667 ± 0.667 | 52.00 ±3.055 | 93.000 ± 1.453 | 93.500 ± 1.434 |
| MO-Humanoid | 76.280 ± 1.294 | 74.920 ± 2.018 | 88.320 ± 0.515 | 77.880 ± 1.017 |
| MO-Kitchen-2d | 50.000 ± 0.000 | 50.400 ± 0.800 | 100.000 ± 0.0 | 90.400 ± 4.079 |
| MO-Kitchen-3d | 53.185 ± 1.582 | 51.407 ± 1.525 | 84.148 ± 2.227 | 82.667 ± 3.647 |
| Baselines | P3L | ||||
|---|---|---|---|---|---|
| Environment | SingleRM-RL | VPL-OfflineRL | VPL-RL | Privileged-RL | Anonymized-RL |
| MO-Highway | 4.303 ± 9.059 | 8.409 ± 15.063 | 4.354 ± 18.164 | 7.721 ± 16.435 | 5.126 ± 20.505 |
| MO-Reacher | 16.704 ± 1.999 | 16.090 ± 12.372 | 20.427 ± 1.616 | 31.708 ± 4.520 | 28.603 ± 1.996 |
| MO-Humanoid | -48.433 ± 171.307 | -51.301 ± 171.186 | -46.240 ± 172.485 | -10.509 ± 169.372 | -38.794 ± 173.861 |
| MO-Kitchen-2d | 0.274 ± 0.274 | 0.363 ± 0.037 | – | 0.834 ± 0.154 | 0.334 ± 0.182 |
| MO-Kitchen-3d | 0.181 ± 0.140 | 0.134 ± 0.188 | – | 0.799 ± 0.194 | 0.243 ± 0.325 |
| Environment | Eval Metric | Baseline | P3L | |
|---|---|---|---|---|
| VPL | Privileged-Traj-MaskedDP | Anonymized-CLS-MaskedDP | ||
| MO-Highway | Test | 42.667 ± 30.346 | 81.333 ± 9.978 | 78.000 ± 8.641 |
| RL | -5.270 ± 12.064 | 4.866 ± 20.605 | 7.119 ± 17.783 | |
| MO-Reacher | Test | 42.333 ± 36.189 | ||
| RL | 19.598 ± 2.251 | |||
Appendix figures & tables18 assets
Supplementary material from the paper’s appendix.
Appendix
| Baselines | MaskedDP | |||
|---|---|---|---|---|
| SingleRM | VPL | Traj-MaskedDP | CLS-MaskedDP | |
| User 1 | 68.000 ± 13.597 | 73.333 ± 22.311 | 92.000 ± 7.775 | 85.333 ± 11.470 |
| User 2 | 77.333 ± 9.97 | 77.333 ± 9.978 | 78.667 ± 13.597 | 77.333 ± 9.043 |
| User 3 | 65.333 ± 13.597 | 49.333 ± 26.866 | 84.000 ± 5.333 | 73.333 ± 4.216 |
| Average User Accuracy | 70.222 ± 3.326 | 66.667 ± 3.143 | 84.889 ± 5.145 | 78.667 ± 4.576 |
| Baselines | MaskedDP | |||
|---|---|---|---|---|
| SingleRM | VPL | Traj-MaskedDP | CLS-MaskedDP | |
| User 1 | 44.000 ± 2.494 | 27.333 ± 21.848 | 96.000 ± 6.464 | 87.333 ± 3.887 |
| User 2 | 65.333 ± 4.522 | 71.333 ± 18.086 | 93.333 ± 2.981 | 92.667 ± 2.494 |
| User 3 | 24.000 ± 3.887 | 52.667 ± 32.069 | 87.333 ± 6.464 | 99.333 ± 1.333 |
| User 4 | 85.333 ± 4.989 | 56.667 ± 35.777 | 95.333 ± 3.399 | 94.667 ± 2.667 |
| Average User Accuracy | 54.667 ± 0.667 | 52.000 ± 3.055 | 93.000 ± 1.453 | 93.500 ± 1.434 |
| Baselines | MaskedDP | |||
|---|---|---|---|---|
| SingleRM | VPL | Traj-MaskedDP | CLS-MaskedDP | |
| User 1 | 81.000 ± 5.099 | 76.600 ± 7.864 | 90.400 ± 2.939 | 81.000 ± 2.191 |
| User 2 | 72.400 ± 5.678 | 74.800 ± 5.741 | 85.800 ± 3.059 | 82.400 ± 0.800 |
| User 3 | 73.200 ± 5.706 | 68.800 ± 6.046 | 88.000 ± 1.789 | 70.000 ± 2.191 |
| User 4 | 71.400 ± 4.800 | 74.600 ± 6.343 | 89.000 ± 3.033 | 75.400 ± 2.653 |
| User 5 | 83.400 ± 7.940 | 79.800 ± 6.524 | 88.400 ± 3.499 | 80.600 ± 2.653 |
| Baselines | MaskedDP | |||
|---|---|---|---|---|
| SingleRM | VPL | Traj-MaskedDP | CLS-MaskedDP | |
| User 1 | 48.800 ± 6.400 | 63.200 ± 39.387 | 100.000 ± 0.000 | 90.400 ± 4.079 |
| User 2 | 51.200 ± 6.400 | 37.600 ± 38.831 | 100.000 ± 0.000 | 90.400 ± 4.079 |
| Average User Accuracy | 50.000 ± 0.000 | 50.400 ± 0.800 | 100.000 ± 0.0 | 90.400 ± 4.079 |
| Baselines | MaskedDP | |||
|---|---|---|---|---|
| SingleRM | VPL | Traj-MaskedDP | CLS-MaskedDP | |
| User 1 | 72.000 ± 12.696 | 47.111 ± 16.354 | 84.444 ± 4.869 | 84.444 ± 3.718 |
| User 2 | 36.889 ± 12.927 | 37.778 ± 9.428 | 82.667 ± 2.948 | 79.556 ± 7.221 |
| User 3 | 50.667 ± 6.029 | 69.333 ± 17.855 | 85.333 ± 3.875 | 84.000 ± 3.266 |
| Average User Accuracy | 53.185 ± 1.582 | 51.407 ± 1.525 | 84.148 ± 2.227 | 82.667 ± 3.647 |
| Baselines | MaskedDP | |||
|---|---|---|---|---|
| SingleRM | VPL | Traj-MaskedDP | CLS-MaskedDP | |
| User 1 | 65.778 ± 10.242 | 54.667 ± 17.104 | 79.111 ± 4.467 | 75.556 ± 4.332 |
| User 2 | 51.333 ± 8.025 | 48.444 ± 10.390 | 73.778 ± 3.823 | 69.333 ± 5.287 |
| User 3 | 42.889 ± 5.287 | 40.222 ± 9.671 | 77.556 ± 2.931 | 67.333 ± 3.414 |
| User 4 | 61.111 ± 10.352 | 63.556 ± 4.838 | 83.333 ± 2.534 | 76.444 ± 3.326 |
| Average User Accuracy | 55.278 ± 2.159 | 51.722 ± 2.905 | 78.444 ± 0.572 | 72.167 ± 2.021 |
| Baselines | MaskedDP | ||||
|---|---|---|---|---|---|
| SingleRM-PPO | VPL-OfflineRL-IQL | VPL-OnlineRL-PPO | Traj-MaskedDP-PPO | CLS-MaskedDP-PPO | |
| User 1 | 3.335 ± 4.459 | 2.247 ± 3.455 | 4.828 ± 4.125 | 5.120 ± 3.651 | 6.105 ± 3.984 |
| User 2 | 15.850 ± 12.777 | 29.150 ± 3.603 | 26.359 ± 8.281 | 29.024 ± 3.604 | 29.736 ± 1.043 |
| User 3 | -6.276 ± 9.282 | -6.170 ± 10.090 | -18.126 ± 10.030 | -10.980 ± 10.782 | -20.462 ± 7.263 |
| Average RL performance | 4.303 ± 9.059 | 8.409 ± 15.063 | 4.354 ± 18.164 | 7.721 ± 16.435 | 5.126 ± 20.505 |
| Baselines | MaskedDP | ||||
|---|---|---|---|---|---|
| SingleRM-ARS | VPL-OfflineRL-IQL | VPL-OnlineRL-ARS | Traj-MaskedDP-ARS | CLS-MaskedDP-ARS | |
| User 1 | 13.871 ± 7.598 | 1.491 ± 7.190 | 19.721 ± 2.142 | 37.845 ± 6.244 | 29.024 ± 7.352 |
| User 2 | 19.369 ± 8.004 | 35.682 ± 13.034 | 21.106 ± 1.262 | 31.247 ± 4.934 | 31.216 ± 1.413 |
| User 3 | 17.436 ± 6.164 | 12.407 ± 5.575 | 22.618 ± 0.453 | 31.031 ± 3.827 | 26.740 ± 6.324 |
| User 4 | 16.140 ± 6.729 | 14.780 ± 12.437 | 18.262 ± 1.990 | 26.708 ± 1.444 | 27.432 ± 4.787 |
| Average | 16.704 ± 1.999 | 16.090 ± 12.372 | 20.427 ± 1.616 | 31.708 ± 4.520 | 28.603 ± 1.996 |
| Baselines | MaskedDP | ||||
|---|---|---|---|---|---|
| SingleRM-ARS | VPL-OfflineRL-IQL | VPL-OnlineRL-ARS | Traj-MaskedDP-ARS | CLS-MaskedDP-ARS | |
| User 1 | 28.995 ± 14.759 | 46.603 ± 49.040 | 8.323 ± 20.652 | 44.243 ± 31.841 | 21.670 ± 12.302 |
| User 2 | 5.452 ± 30.842 | -9.016 ± 27.408 | 20.551 ± 36.566 | 74.810 ± 70.151 | 21.670 ± 12.302 |
| User 3 | 55.512 ± 21.987 | 65.261 ± 47.616 | 63.180 ± 16.044 | 93.514 ± 57.554 | 60.124 ± 18.740 |
| User 4 | 56.822 ± 26.341 | 30.802 ± 9.216 | 64.996 ± 44.143 | 82.556 ± 44.696 | 85.607 ± 12.131 |
| User 5 | -388.945 ± 6.111 | -390.156 ± 8.367 | -388.251 ± 8.060 | -347.668 ± 42.936 | -383.115 ± 4.540 |
| Baselines | MaskedDP | |||
|---|---|---|---|---|
| SingleRM-IQL | VPL-OfflineRL-IQL | Traj-MaskedDP-IQL | CLS-MaskedDP-IQL | |
| User 1 (Microwave) | 0. 548 ± 0.498 | 0.326 ± 0.469 | 0.680 ± 0.466 | 0.516 ± 0.500 |
| User 2 (Kettle) | 0.00 ± 0.000 | 0.400 ± 0.490 | 0.988 ± 0.109 | 0.152 ± 0.359 |
| Average | 0.274 ± 0.274 | 0.363 ± 0.037 | 0.834 ± 0.154 | 0.334 ± 0.182 |
| Baselines | MaskedDP | |||
|---|---|---|---|---|
| SingleRM-IQL | VPL-OfflineRL-IQL | Traj-MaskedDP-IQL | CLS-MaskedDP-IQL | |
| User 1 (Microwave) | 0.342 ± 0.474 | 0.400 ± 0.490 | 0.528 ± 0.499 | 0.702 ± 0.457 |
| User 2 (Kettle) | 0.000 ± 0.000 | 0.002 ± 0.045 | 0.900 ± 0.300 | 0.028 ± 0.165 |
| User 3 (Light Switch) | 0.200 ± 0.400 | 0.000 ± 0.000 | 0.970 ± 0.171 | 0.00 ± 0.000 |
| Average | 0.181 ± 0.140 | 0.134 ± 0.188 | 0.799 ± 0.194 | 0.243 ± 0.325 |
| Baselines | MaskedDP | |||
|---|---|---|---|---|
| SingleRM-IQL | VPL-OfflineRL-IQL | Traj-MaskedDP-IQL | CLS-MaskedDP-IQL | |
| User 1 (Microwave) | 0.000 ± 0.000 | 0.414 ± 0.493 | 0.526 ± 0.499 | 0.178 ± 0.383 |
| User 2 (Kettle) | 0.000 ± 0.000 | 0.000 ± 0.000 | 0.738 ± 0.440 | 0.004 ± 0.063 |
| User 3 (Light Switch) | 0.000 ± 0.000 | 0.000 ± 0.000 | 0.998 ± 0.045 | 0.002 ± 0.045 |
| User 4 (Top Burner) | 0.000 ± 0.000 | 0.000 ± 0.000 | 0.384 ± 0.486 | 0.000 ± 0.000 |
| Average | 0.000 ± 0.000 | 0.103 ± 0.179 | 0.661 ± 0.232 | 0.046 ± 0.076 |
| Setup | Baselines | MaskedDP | |||
|---|---|---|---|---|---|
| OOD New User | Trained on Users | Eval Metric | VPL | Traj-MaskedDP | CLS-MaskedDP |
| 1 | 2-3-4 | Test | 36.000±3.266 | 100 ± 0.00 | 100 ± 0.00 |
| RL | 22.048 ± 1.975 | 32.841 ± 3.033 | 29.787 ± 3.328 | ||
| 2 | 1-3-4 | Test | 33.333±0.000 | 100 ±0.00 | 100 ±0.00 |
| RL | 17.255 ± 2.414 | 31.249 ± 1.178 | 21.401 ± 4.460 | ||
| 3 | 1-2-4 | Test | 0.000±0.000 | 100.00±0.00 | 77.333±3.266 |
| Setup | Baselines | MaskedDP | |||
|---|---|---|---|---|---|
| OOD New User | Trained on Users | Eval Metric | VPL | Traj-MaskedDP | CLS-MaskedDP |
| 1 | 2-3 | Test | 0.000±0.000 | 68.000±7.483 | 74.000±21.541 |
| RL | 5.603 ± 3.621 | 5.389 ± 3.788 | 5.109 ± 3.490 | ||
| 2 | 1-3 | Test | 68.000±9.798 | 92.000±7.483 | 90.000±10.954 |
| RL | 0.680 ± 2.125 | 29.836 ± 0.235 | 29.833 ± 0.242 | ||
| 3 | 1-2 | Test | 60.000±16.733 | 84.000±10.198 | 70.000±23.664 |
Pluralistic Alignment
Pluralistic alignment develops AI systems that represent and navigate diverse human values rather than optimize for a single preference.
See all 37 papers