Niepełne informacje są często dwustronne: robot nie zna celu człowieka, a człowiek z kolei nie zna celu robota — ludzie muszą przewidywać roboty. Jako projektanci robotów nie jesteśmy odpowiedzialni za to, jak człowiek dokonuje przewidywań; możemy jedynie kontrolować to, co robi robot. Jednak robot może działać w taki sposób, aby ułatwić człowiekowi dokonywanie poprawnych prognoz. Robot może założyć, że człowiek używa czegoś z grubsza analogicznego do równania (26.8) do oszacowania celu JR robota, a zatem robot będzie działał tak, aby jego prawdziwy cel można było łatwo wywnioskować. Szczególnym przypadkiem w grze jest sytuacja, w której człowiek i robot są w tej samej drużynie, pracując nad tym samym celem lub zamierzeniem: JH = JR. Wyobraź sobie osobistego robota domowego, który pomaga przygotować obiad lub posprzątać – to przykłady współpracy. Możemy teraz zdefiniować wspólnego agenta, którego działania są krotkami działań człowieka i robota (uH;uR) i który optymalizuje dla JH(x,uH,uR) = JR(x,uR,uH) i rozwiązujemy regularny problem z planowaniem. Obliczamy optymalny plan lub politykę dla wspólnego agenta i voila, teraz wiemy, co powinien zrobić robot i człowiek. To działałoby naprawdę dobrze, gdyby ludzie byli idealnie optymalni. Robot wykonałby swoją część wspólnego planu, a człowiek swoją. Niestety w praktyce wydaje się, że ludzie nie stosują się do perfekcyjnie opracowanego planu wspólnego agenta; mają własny umysł! Nauczyliśmy się już jednak jednego sposobu radzenia sobie z tym, w sekcji 26.6. Nazywaliśmy to sterowaniem predykcyjnym modelu (MPC): chodziło o opracowanie planu, wykonanie pierwszego działania, a następnie ponowne zaplanowanie. W ten sposób robot zawsze dostosowuje swój plan do tego, co faktycznie robi człowiek. Przeanalizujmy przykład. Załóżmy, że ty i robot jesteście w kuchni i zdecydowaliście się zrobić gofry. Jesteś nieco bliżej lodówki, więc optymalny plan połączenia polegałby na tym, że zabierasz jajka i mleko z lodówki, podczas gdy robot pobiera mąkę z szafki. Robot wie o tym, ponieważ może dość dokładnie zmierzyć, gdzie wszyscy się znajdują. Ale przypuśćmy, że zaczniesz iść do szafki z mąką. Sprzeciwiasz się optymalnemu wspólnemu planowi. Zamiast trzymać się tego i uparcie sięgać po mąkę, robot MPC przelicza optymalny plan, a teraz, gdy jesteś wystarczająco blisko mąki, najlepiej, aby robot zamiast tego chwycił gofrownicę. Jeśli wiemy, że ludzie mogą odejść od optymalności, możemy to rozliczyć z wyprzedzeniem. W naszym przykładzie robot może spróbować przewidzieć, że idziesz po mąkę w momencie, gdy zrobisz pierwszy krok (powiedzmy, używając powyższej techniki przewidywania). Nawet jeśli technicznie optymalne jest dla Ciebie odwrócenie się i udanie się do lodówki, robot nie powinien zakładać, że tak się stanie. Zamiast tego robot może obliczyć plan, w którym nadal robisz to, czego chcesz.