17923 >> Eric Horvitz: Ece is a Ph.D. candidate in...

advertisement
17923
>> Eric Horvitz: Ece is a Ph.D. candidate in the School of Engineering and Applied Science at Harvard
University, working with our colleague, Professor Barbara Grosz there. She's been exploring some
interesting topics and challenges at the intersection of core AI agents in HCI. In particular, looking at
notions of how computers can reason about and support teamwork in mixed networks.
And Ece was a Microsoft Research Fellow here, and she was a two-time intern, each time doing two or
three projects. And one would have been great. And it's been a pleasure to get to know Ece. And this is
going to be a job talk today.
>> Ece Kamar: Thank you, Eric. Thank you for the nice introduction. And thank you for coming to the talk.
It's a pleasure to be here today again for the third time, and this time talking about the research I've been
doing for the past few years at Harvard University.
Today's talk is about making collaboration work in real life. Collaboration is a special kind of group activity
in which participants come together and try to accomplish something that they cannot do alone easily.
We see examples of collaboration in our everyday life. One example is when we cook dinner with our
friends or when we go to them to a concert, we see different artists playing different instruments but
contributing to the same musical piece.
And our example is sports games, we see different players with different capabilities playing at different
positions but having the same goal of winning the game at the end of the day.
There are also more organizational structures and dynamic examples of collaboration. Rescue themes is
one example. The other one is many people working in these big companies contributing, big companies
like Microsoft contributing to the next big software product.
Lately, with increasing connectivity, we started to see different examples of collaboration. We started to
see collaboration between people that are located at different parts of the world and between people that
are not connected with social or organizational structures but still contributing to generate something big.
Wikipedia is one of my favorite examples for showing how much value we can generate by the
collaboration of people. Another nice example is looking at home projects by the University of Delaware
and Berkeley that motivates people to donate their idle time on their computers to solve some
computationally expansive research problems.
However, still in these systems that are assisted by computers, these collaborations are assisted by
computer systems, computers are naturally taking part in this collaboration. They don't have incentive to
help this collaboration much or they are not solving a piece of this collaboration.
So in today's computer systems, people have -- computer agents have -- computer systems have better
interfaces. They have more computational power. They know more about each other and about the world.
But, still, at the deeper problem-solving level, we need to tell these computer systems what to do and when
to do it.
One such interaction is the search engines. When I type an ambiguous word like "Turkey", where I'm from,
to Google search engine, it gives me all these different precomputed fixed answers. The system doesn't
know about the context I'm in and my intentions why I'm doing this search.
So it doesn't really help me to accomplish my task easier. It's just giving me a precomputed answer.
Another example is these error screens, the computer is notifying the user a big problem happened in the
computer but it's not easily readable message, but in fact the computer agent is capable of going into the
computer system, solving the problem for the computer system, and taking the initiative but it's not doing
that.
This is why I believe that if you can have computer agents that are partners that are not servers we can
improve the efficiency of computer systems.
In fact, even in today's systems, computers are no longer alone. They act in mixed complex networks with
other computer agents and people. In these mixed networks, each participant has diverse needs. They
have diverse information about the world and about each other. This is why we need collaborative
teamwork models that will bring these diverse partners together to accomplish something.
I believe that having these computer agents as partners in the future will have a lot of potential to bring
people together so that they can work more effectively and also to build computer systems that can interact
with people better and also have to solve some key problems of today's such as traffic, energy allocation,
information overload.
The talk I'll be giving today will address some key challenges in building these computer agents that can
work effectively with people. The first part of the talk will focus on representations and decision theoretic
models for building agents that can work effectively with people. And then I will show how we can use
these representations and decision theoretic models to manage household behavior and communication
better in collaborative activities.
In the second part of the talk, I will show you what happens if we have people in the loop and how people
perceive these utilities as computed by these computational models. And I will conclude my talk with a real
world application of collaboration.
There's been work on collaboration by formally defining what collaboration is. One such model is joint
intentions proposed by Cohen and Levesque. Another one is [indiscernible] proposed by Barbara Grosz
and Kraus. What these models do is they in detail define the requirements to have a good successful
teamwork.
They are all vertical models. They don't have notions of cost and utilities and probabilities. This is why
they define new requirements for a while but it's very difficult to apply them to real life.
There's been some work on getting these models and deploying them into real world. [indiscernible]
worked on this. He tried to apply these formulaisms into military training and [indiscernible] domains, but
his approach is domain-specific and doesn't generalize to many domains we see in real life.
My work is based on the shared platform. This is why I want to give you a quick summary of the
requirements that it states to have a successful collaborative activity.
The first requirement is bringing agents together and forming groups that will work together. The second
requirements are interleaved. It's about how agents, given that they come together, how can they divide
tasks among each other so that each participant can go plan apart from its own part of the plan.
One important observation here is that the agents do not require to know what partners are doing. They
are just obligated to plan for their own task and accomplish it successfully.
However, there's a fourth requirement. The fourth requirement says that collaboration is more than these
agents divide their task and then performing their own parts. But they still need to reason about what their
partners are doing and support each other when needed, because collaboration is more than the sum of its
individual parts.
So the focus of this part of the talk is designing decision making strategies for supporting the supportive
behavior and collaborative activities given that we have answer [indiscernible] information in the real world.
Let's visit an example of a complex mixed network that we can have in real life. Here we have a person
driving in traffic and he's connected to a computer agent that knows a lot about this person, this computer
agent has access to the person's calendar. It has access to traffic prediction services and satellites. And
this computer agent is helping this person about making this commute much more effective by the mobile
opportunistic planning or informing the person about some surprises that might happen in the traffic.
The person might be also connected to a different computer agent that is scheduling his meeting for the
next day. And at the same time the person's talking with his colleague on the phone and these computer
agents might be connected to another agent that is working at home to coordinate for dinner plans.
These complex mixed networks have different characteristics that they have some important
characteristics. First of all, the participants are distributed. They have partial information about the world
and about what each other is doing.
But still they need to reason about their partners so that they can help each other when needed. Through
this talk I will be focusing on one particular example of mobile opportunistic planning. This example is
influenced by work I've done with Eric Horvitz and Christopher Meek. And this system is called mobile
opportunistic planning. In this system we have a computer agent that is learning about the products that
the user is interested in. And while the user is driving searches the area looking for some good deals for
the person and generating mobile opportunistic plans for these users.
So here in this example we have a collaboration between the person that is driving on the way and also the
computer agent that is doing mobile opportunistic planning. This person and the agent are collaborating to
have the most effective commute as possible.
Here the person picks a plan. He has multiple choices if he's going from Redmond to Kirkland, he might
choose to take Redmond Way or I-405. Similarly, the computer agent can come up with multiple options
for this person. One might be a gas station. Another is stopping at a different gas station. The third one
might be a combination of a gas station and grocery store.
So in this collaboration the agents has partial information about what this person is doing because the
person cannot really tell what he's planning to do at each step. It's too distractive. The person picks a
plan. He might pick the Redmond Way plan and the computer agent may have a belief about the plan that
this person is choosing.
The agent might believe that this person is likely to take the Redmond Way with 90 percent chance, with 10
percent chance he might take the highway.
So we need representations to represent this agent's uncertainty about the probable plans that the partners
are doing and also we need decision theoretic models that will work given this belief and uncertainty.
Here I'm proposing a probabilistic representation called probablistic trees. That will be a solution to this
problem.
In this representation, the top node is the collaborative plan that these participants are collaborating on.
Then this collaborative plan decomposes into subtasks of this plan. This might be driving and the other
might be mobile opportunistic planning.
And then each task stochastically decomposes into possible plans for doing this activity. Here, these
probabilities on these branches represent the likelihood that this agent who is doing this task is doing this
plan.
And I reopen this tree until we have all basic level tasks on the leaves. So it's a hierarchical representation
that is showing agents' beliefs about what their partners are doing.
So here we have a probabilistic repository for the mobile opportunistic planning example showing the
agent's belief about the evening commute plan. Here, the evening commute plan branches into subtasks
which are driving and opportunistic planning and driving tasks stochastically branches into possible plans
for doing this task which are Redmond Way and I-405. And here the basic level tasks are the short
fragments that the user needs to drive.
We can also represent constraints on these PRTs. For example, these two tasks are sharing the same
resource of a person, so they are connected with the resource constraint. And then the basic level task
may have some time constraints between them.
So here now I showed you a representation for agent's beliefs. Now I will show you that we can use this
representation to reason about the utility of probabilistic plans. The important thing is by having these cost
and utilities and utility calculations on these PRTs, now we will be able to enable decision theoretic
reasoning on these vertical teamwork models. So how do we do that?
We insert cost and success probabilities to the leaves of this probabilistic repository. They represent the
cost of doing a basic level action and success probability of a basic level action. The agents are able to
estimate these things and I will show you an example of how they can do so.
Then to capture the cost and success probability of a plan, we propagate these cost and success
probabilities to upwards. So the cost of a plan is the summation of the cost of the basic level tasks.
Similarly, the success probability of a plan is the product of the success probability of the children.
So here we have a way to calculate the cost and utilities of plans. Similarly, we can propagate these cost
and success probabilities from the plan level to the task level. So here the success probability on cost of a
task is the weighted average of the success probabilities and cost of the children. And, finally, when we
reached the top level, which is the collaborative activity that these participants are collaborating around,
now we are able to predict expected utility of accomplishing this plan. It is the value that these participants
have to see this collaborative activity being performed times the success probability of the collaborative
plan minus the cost.
>>: So in the example, you're branching on the drive versus the ancillary activities with -- I'm assuming
probabilities but you can imagine an agent convincing the user to change their plan so some of the tasks
might be on the agent side generated alternative and convince the user that this is a better idea, thus the
opportunity part of it and folding -- convincing the probability of change into the actual model. Do you have
that in there or do you start a new probability [indiscernible] as goals.
>> Ece Kamar: I would have operations to modify these PRTs in real time, and also decision theoretic
rules about when they need to communicate meshed plans to have a more successful plans and how
agents can learn about what the person is doing in real time and how they can convince. And I will share
both points in the next slides.
So you can ask, okay, it's nice to have these basic level cost and success probabilities, but where do these
probabilities come from? Here I will show you how we can extract this knowledge for this mobile
opportunistic planning example. In fact, to act in a world like this and help people, the computer agents
already have access to a lot of information about the people in the world.
It knows the calendar, have access to clear flow to get the live prediction and may access to the time cost
function for this person.
So when this computer agent needs to relate the probabilistic plan, it looks like the basic level action. So
here the basic level actions for the driving task are the short fragments the user needs to drive. So to get
how long it takes to drive on Redmond Way, it can access the clear flow and get these values. And then
access to the time cost function to get a dollar value for these basic level actions.
Similarly, to estimate the cost of doing different mobile opportunistic plans, the computer agent can use the
cost analysis components of the mobile opportunistic planning system and can guess the divergent cost for
going to a grocery store, spending time there, including the fuel that will be spending and also the time
they'll be spending.
To get these probabilities on these branches, in this example the computer agent can access to the
predestination system. This is the work by John Cohen and Eric Horvitz to predict where the user is going
at a given particular time.
But as Eric pointed out a few minutes ago, these rules are not static. They will be changing in the real
world. This is why I define operations that can modify PRTs. One way of modifying a PRT is editing a new
task and at the end we end up with an updated plan with a new task added to it. Another way of updating a
PRT is subtraction where we decide not to do a part of the plan, get rid of it and have come up with an
updated plan with less, in which we have less to do.
Another way of updating a PRT is replacement. We take a part of the PRT and we predict what a new way
can be for doing that task. For example, the agent may convince the person that taking the highway is a
better option than Redmond Way, so we can see these probabilities changing. We put this updated plan
here and come up with an updated plan for the collaborative activity.
So the nice thing about PRTs is if you have some good independence relations between the task, then they
are very efficient. They are modular because we can just get some part of it, change something about it,
plug it in, without changing the different parts of the PRT.
So here I show you this nice representation and I also show you that we can estimate utility of a plan, then I
will show you how we can reason by using PRTs.
>>: Is the list of tasks that's underneath each plan deterministic given the plan?
>> Ece Kamar: Yeah, not really talking about what kind of planning algorithms you can use to get PRTs.
The only requirement is the agent should have access to a planning algorithm that will predict what the
user will be doing.
>>: But let's say I have a plan, like I'm looking at the Redmond Way and there may be more than one way
to break it down breaking it down to different tasks there are a lot of routes I can take. So can you
represent that?
>> Ece Kamar: You can also have another level of stochastic branching that is the composing this
Redmond Way plan to all different plans for doing the Redmond Way plan.
You can open this tree as much as you can and you can have different levels of stochastic branchings from
plans, to different plans of different tasks.
So here I will show you different ways we can reason using PRTs. One possible way is commitment
reconciliation. So here we have a PRT and the agent reasons about adapting or abandoning a
commitment. An example is the computer agent's reasons about whether we should pick up a passenger
on the way and do a carpool rather than sticking with our original plan. And here the computer agent can
put this new updated plan in, see how it changes the rest and get an expected utility for doing this new
plan, with respect to the old one.
Another way we can use PRTs is for measuring plans. It's exactly what Eric mentioned. Here the
computer agents have a probabilistic belief for what the team is doing and then the computer agent can
reason about how this plan should change given this new information about the world. Here if the
computer agent observes that the person is taking a different route than expected, the computer agent can
use this representation to update part of the plan or to communicate with the agent, the person to motivate
him to update his part of the plan.
Another possible way is to reason about the future to estimate the expected utility of this plan in the real
world. Agents can also use this for coordination. And the part I will be focusing on will be for managing
helpful behavior including communication decisions.
So here I will show that we can use these PRTs to build decision theoretic models for managing helpful
behavior and I will empirically show that by having these decision theoretic models we can improve the
performance of teamwork.
So these behavior models are decision theoretic rules about when agents need to help people. The main
idea is really simple. It says that the agent should calculate the expected utility of helping and help if the
utility is bigger than the cost.
One way of helping is communicating. The agents can help people by informing them about an
observation or responding when they ask for an observation. And another way of helping is performing a
helpful act. For example, in the mobile opportunistic planning domain, the agent realizes there is big traffic.
The person will be late to the next meeting, the computer agent can take the initiative, send a message to
the person that the user is supposed to meet in half an hour, a very helpful act.
So just to show an example of how informed decisions work for this mobile opportunistic planning domain,
here is the computer agent finds out that there's a big traffic, there's an accident on Redmond Way and
there's traffic on Redmond Way. And now the agent is reasoning about interrupting this person with this
new information given that the person will have some big cost of interruption for getting this message.
Here the computer agent will capture the expected utility of informing compared with the interruption costs.
So how does the agent do this? First, the computer agent reasons about the original plan that these
participants are doing. Here the person is likely to take the Redmond Way and the expected duration for
this plan is 90 minutes.
Next, the computer agent reasons about how the expected utility of this plan changes given this new
information about the world. So here we see that the cost of taking the Redmond Way increases a lot, and
the expected duration of this plan increases to 48 minutes.
Next, the agent reasons what will happen if the person is notified about the surprise? Here the person will
update the plan so that he wouldn't take the Redmond Way anymore, he will take the highways not to get
stuck in the traffic. And here the expected duration of this new updated plan will be 28 minutes.
So putting all these together to make an informed decision, the computer agent compares the expected
utility of the original plan with the updated plan that will be created after this informed action, compared with
the cost of interruption, and inform if the utility gain we get from this informed action is larger than the cost
of interruption.
>>: How does the agent know when the update [indiscernible] are after the formation? I mean, here it's
very clear. But in general it could be someone is [indiscernible] and that the agent might tell you about
something, how do I know when to release when?
>> Ece Kamar: So the computer agent has a way to predict what the person is doing, which plan the
person's taking. It is an assumption we are making to implement probabilistic repositories in the first place.
And the computer agent also have an estimate for the context that the person is working on, what the
person is believing. So in fact the computer agent uses its belief about the person and the planning
algorithm to get this part of the plan.
>>: So I think what John's asking is what's the -- if you work in the perception that's a box, I'll give you
these things [indiscernible] how might you build that box? Is that going to be a hard challenge to come up
with the probability some day? Is it a machine learning problem?
>> Ece Kamar: It is a combination ->>: I'm curious like how do you decide 0.0 or 1.0? We give them this information and they do something
else.
>> Ece Kamar: So it is a combination of a machine learning and planning challenge to see given
information how the plan changes. And here I'm assuming that the computer agent have those resources
to reason about what the person is doing.
But it is something that the domain expert that is implementing these PRTs to a particular domain, he
needs to reason about how this will work.
>>: Imagine these kind of interpretations are [indiscernible] learning challenges depending on how well you
can do with those challenges, can influence [indiscernible].
>> Ece Kamar: So here the idea is given that we can predict what the person is doing and we can predict
how the plan will change given some information, we can use these PRTs to capture the expected utility of
giving this information to the user.
To empirically test these models, I designed a game on the color trails task pass system. This color trails
task pass system is a game setting that is derived by Harvard. It enables the study of task oriented group
activities. The nice thing about color trails is it abstracts away from particular task domains and can create
a nice analogy without building the characteristics of a real world domain, which is really, really expensive
to do.
And these game settings are used extensively so the various research problems such as negotiation, team
formation and reputation in many countries all over the world. And in fact they are using this game setting
to train as astronauts that will go to space these days. It's a good mediator between a very simple behavior
game such as prisoner's dilemma and more complex hard-to-implement real world domains.
So you can ask why I'm not doing these experiments on, for example, the mobile opportunistic planning
domain. First of all, it's very difficult to implement those kind of domains in real life successfully. And even
if we implement that, it's very difficult to analyze the results that we've got from that kind of a domain
because there's so many domain characteristics we need to think about, and there's a domain knowledge
that we need to reason about.
But by mapping these real world task domains to an abstract game setting, it is much easier to reason
about -- it's much easier to reason about just the problems that we want to investigate and get rid of the
domain details.
So here we have this game board and this game. We have two players that are representing the person
driving on the way and the computer agent. They are collaborating on an activity such that one player, the
supreme player is trying to get to one of the goals which may represent driving challenge, and the other
player, the observer player, is trying to get to its own goal, this might represent the mobile opportunistic
planning.
And here these agents have resources that they have to move on this game board and reach to their goals.
These resources may represent the field that the person needs to spend to go to a particular destination or
the time that this user needs to spend.
To reflect the partial information the participants might have about each other, these players are not able to
see what chips the other players have, so they really don't know which plan these agents will be taking to
get to their individual goals. And also to reflect an agent's [indiscernible] about the world. Some positions
on this game board may stochastically turn into threat positions which may prevent from these players
moving on this game board. This analogy to having a traffic condition on the way which prevents the
person from driving ahead.
So on this game setting, we observe a player is able to observe these trap locations as they appear. You
can think of this as a computer agent having access to the traffic prediction services and getting notified
when something important happens in the traffic.
But the recipient player cannot observe these stochastic events. And there are two different uncertainties
that happen in this world. One uncertainty is the observer is answering about the recipient's chips and the
other is uncertainty about the world how frequently these traps appearing in the game board.
And there are three different ways that the observer player can help the recipient by informing him about
these trap locations by responding to him if he asks about these trap locations and by giving away some
resources [indiscernible].
Here I will just show you the results I got for the communication protocols, but I have similar results I got for
comparing different half life protocols available in the papers. Here I'm comparing two decision theoristic
protocols for informing and asking. These are using PRTs to make decisions. And I'm comparing these
decision theoretic protocols to vertical protocols proposed by the previous work, because in this work the
theoretic reasoning was not possible.
So here I compare these four different communication protocols with different levels of observer
uncertainty, world uncertainty. The height of these bars represents the score that we get from these games
given that we follow these different protocols.
So here the important ->>: The score of fracture of time that the goal is reached.
>> Ece Kamar: It is a factor. And also whether the agents can achieve these rules and how many
resources they are spending to get to the goals. So it's a combination of different factors.
Here the important result is by having decision theoristic reasoning for managing helpful behavior, we are
able to improve the performance of the collaborative activity because for all communication costs
uncertainty levels, the decision theoretical protocols perform equally good compared to the axioms
because these decision theoretic protocols are able to adapt to the change and costs of uncertainties in
real life.
Another important result is we can see where one protocol is better than the other. For example, if the
uncertainty is low, it is better to inform each of them about the changes, whereas when answering these
really, really high it's better to be [indiscernible].
So in this part of the talk I presented to you a new representation for agent's beliefs about what partners
are doing. And on this representation enables decision theoretic reasoning on formal teamwork models.
And I also demonstrated that we can use this representation to build decision theoretic rules about helpful
behavior and show that we can improve the performance of the collaborative activity by doing this decision
theoretic reasoning.
So at this point you can ask, okay, we have these computational models, we have these representations,
but what happens when these computer agents use these computational models to interact with people?
Because people may not see this utility in the way that computer agents calculate them.
So the second part of the talk I will mention what happens when we have people in the loop and how they
perceive the utility that are calculated by these computational models. The previous approach that I
presented in the helpful behavior models use this flow to decide when to communicate. It first tracks the
changes and distinguishes these changes as a way, as an opportunity to communicate, and then captures
the collaborative benefit of communicating, and also if this benefit is positive.
However, when we have people in the loop, there's a different decision that the computer agent needs to
make. The computer agent also needs to reason about whether the partner is willing to communicate or
not.
Because when we have people in the loop, even if we have computer agents using the best computational
models and capturing the utility correctly, if the person is not able to see this benefit, it's just an
unnecessary disturbance for the user and the user will be unhappy with this computational system.
Going back to the mobile opportunistic planning challenge, here again we have the computer agent and the
person but this time the computer agent needs some information from the user.
For example, the computer agent may ask about what do you see in the traffic, how are you feeling? Are
you nervous? Are you busy? Can ask these kind of questions. And if we do so, if the expected utility is
larger than the cost, if the next utility is positive, however here we have the person as a black box we really
don't know what the person is doing. But we know that this person will accept some of these interruptions
and classify them as valuable and reject some of these interruptions. In this part of the talk we will try to
understand how this filter works.
To investigate this problem, I'm also using a game setting that's built on the color trails infrastructure. Here
we have these gameboards and we have two players on this gameboard. One representing the person,
the other representing the computer agent.
They have individual goals that they are trying to achieve. They come up one step at a time to get closer to
their goal location. However, these goal locations made stochastically on the gameboards representing the
answer that these players may have about the real world.
The person player is able to observe whether these goals are moving, but the agent player doesn't know
where its goal is moving. So at some times in the game the computer agent may interrupt a person and
ask where its goal is to be more successful in this game setting.
So I used a combination of the centralized MDP techniques and helpful behavior models to capture this full
iteration of expected utility of interruption.
Then in the empirical analysis, I'm comparing the human responses to this decision theoretic baseline to
see where the person perception, the first run computational models. I [indiscernible] 26 subjects from
Craig's List, housewives, college students and each subjects were given 26 cases of this interruption game.
They received 26 different interruptions. These interruptions were two factors. One is the magnitude of the
interruption outcome as computed by an oracle that knows where goals are. So this is a full iteration of
estimate of how beneficial an interruption is for the collaborative activity.
And as a second factor we investigated what is the effect of the presented partner type on the likelihood
that the people will be accepting these interruptions.
So through all these theoretic interruptions, the people were always paired with the same computer agent
that is using this full iteration estimate to make interruption decisions. But sometimes we told the subjects
that they are playing with a person sitting in the next room so that we can investigate this partner effect.
And there are two hypotheses we investigated. The first one is I believe people will be more likely to
accept interruptions if the outcome is higher. Because if it's more beneficial, so the person will be able to
see this especially in this abstract game setting and respond to interruptions respectively.
As a certain hypothesis, I believe that the people's responses will not be affected by the partner type,
because I believe utility is such a clear reason to accept or reject an interruption, the partner type should
not have an effect. My partner didn't agree with me on this. She said I believe the partner type will have an
effect because the previous work tells us that the way people see their partners affect how they collaborate
with them.
>>: Let me understand, this is one -- what you're saying beyond what people think [indiscernible] I mean,
people accept the outcomes, if the computer outcome is higher you're saying?
>> Ece Kamar: Collaborative outcome as computed by these collaborations.
>>: So it can be a measure of how well your miles are performing, right, because the due credit
assignment, you can have a bunch of reasons why that won't happen, one, for example, that people don't
understand the value to something is wrong with the model and it's less valuable than the model than the
system thinks it is. And the people who know that very well and so on. So it's many possibilities that would
influence whether this is [indiscernible] or not. That usually is verified.
>> Ece Kamar: Because we have these abstract game settings, we are able to exactly capture the
expected utility of interruption by using the centralized MDP methods and using the helpful behavior
models to get the expected utility of interruption. Because in this game setting we're able to control where
the goals are moving and where the people are and use, map this game to an MDP and capture what is the
expected utility of the state.
>>: Real people, crisis people?
>> Ece Kamar: Yeah.
>>: We don't have a model for the cost reduction, for example?
>> Ece Kamar: Given that, we assume that these people will be fully operational and be acting in a way
that these computer models predict, we're able to capture the full iteration of the baseline for the outcome.
However, here we're testing how these computational models, how well they can predict human responses
in real life.
>>: I'm still not clear. Even with this iterative model that's computing that ideal values, it could be wrong
about the estimates based upon not understanding the cost interruption in the context with the user at the
moment.
>> Ece Kamar: Oh, I forgot to mention one thing. Here in this game setting, the cost of interruption is
mapped to these players not moving for one game round. So here we are assuming there's no cognitive
cost for interruption because these people are only focusing on this game setting, they are not doing
something else. And we are mapping the cost of interruption to something about the game, about not
being able to move one game forward. Given that the cost ->>: Is that reasonable? You pay less people ->> Ece Kamar: The reason that we do it this way is so that we will be able to capture the expected utility of
interruption, currently given for this game board, and so that we can analyze where the human perception
differs from these computational models.
>>: I think what he's asking is when you get an interruption, do you lose a turn?
>> Ece Kamar: You lose a turn.
>>: I think there's the matter about the personal agenda, theoretic game and what's [indiscernible], for
example, if I have a game I'm playing, I have a goal I'm trying to achieve. You interrupt me. So would I
rationally act so I would have a high collaborative outcome versus whether I want to have my own personal
gain?
>> Ece Kamar: The game is designed so that the final score of the game is the cumulative score of the
agent and the person. So the person should be focusing on the collaborative outcome to make decisions
so it can perform better in the game. However, after I show the empirical results, I'll show that even in this
equilibrative setting, people care about their own part of the utility more than the agents. And I'll show you
results about that.
>>: I think there might be an issue of timing. So maybe I'm in the middle of making a decision in my own
game and the interruption might develop [indiscernible].
>> Ece Kamar: To get rid of that artifact in the game, we have different phases. For example, one phase
was about only interruptions and the other phase was about moving on the game board and the third phase
was about showing how the world changes to the people so that we try to distinguish these decisions from
each other.
But, again, even in this game setting there might be other factors that are coming into effect. But we try to
get rid of all these different factors as much as possible so we can capture a full iteration of baseline of the
interruptionnal outcome.
So the final results look like this. Here the Y axis is the interruption acceptance rate and the X axis is the
expected value of interruption as computed by these computational models. The red line is the acceptance
rate on the partner type, is a person and the blue line is when the partner type is an agent.
Here we see that when the interruption outcome is obvious, for example, it's negative or it's significantly
positive, people are very good at seeing this and rejecting these interruptions and accepting these
interruptions in a good person touch.
So we see that even if this game setting, calculating the full iteration out estimate of the interruption
outcome is a good estimate of what people are doing, how they do their decisions.
However, in this region where the outcome is not obvious, it's positive but slight, they're having a hard time
understanding whether it's beneficial or not. You see that the partner type has an effect. People are more
likely to accept interruptions coming from a partner than a computer system.
And this agrees with the previous work on the way people behave in collaborative domains. They are more
likely to collaborate with systems that look more like people. And then in the next work I will not be talking
about that here in detail, but the next work I apply some basic learning algorithms to see why that happens.
And I realize that people are more likely to overestimate their own outcome and underestimate the agent's
outcome even in these collaborative settings.
So to revisit the hypothesis, we show that the acceptance rate increases as outcome increases in this, until
the outcome reaches to a significant value and people are good at seeing the utilities as computed by
computational models. But still their decisions are affected by the way they perceive their partners,
especially around the outcome is not significant.
So here in this part of my work I design computational models to effectively capture the utility of the
utilization and design an abstract game setting to map a real world domain to a game setting so we can
analyze the outcome easily and do the human experiments. And conducted a user study showing that the
collaborative utility matters, but still we need to reason about how people perceive these utilities. So it's not
enough to have computational models; you still need to reason about how people see these benefits and
these domains.
So at this part I want to briefly talk about the real world application of collaboration that I do over there,
while I was doing my internship. This system does not use PITs or my theoretical models, but it captures
the main ideas of collaborative activities and the value we can generate by having these collaborative
plans.
So here we see people distributed in the city. They may have different preferences about their morning
commute to come to work that day. And they are computer agents working on their sites capturing their
preferences about these commutes. They can capture the time cost, delay cost, where they're going from
where they are in the city. The computer agents are delivering all these different prices into a central
optimization system, the optimizationnal system is generating a collaborative plan for these users and
giving them the right incentives to collaborate in such a system in terms of payments.
So the ABC mechanism, the agent-based carpooling mechanism, is a nice combination of user modeling,
optimization and payment.
Here we have the user model giving the preferences as to the optimization component. The optimization
component creates the payment plans. And the payment component gives away payments.
How does this system work? First, the agents learn about people's preferences by looking at their
calendars and then generates the initial individual plans, calculates a total cost for these individual plans
including the fuel cost, the time cost, the delay cost and how much cost they have for driving in traffic.
Then the optimization component searches multiple factors including stop ordering, stop timing, stop
location, possible routes to come up with the best possible collaborative plan so that it can minimize the
total cost of transportation and notifies the users about these new plans.
However, when we have people in the loop as self-interested agents it's not enough to build the best
collaborative plans, you need to give them incentives so they will burden the extra cost for picking people
on the way and bringing them to work. However, because our collaborative plans depends on the
preferences, design preferences of people, it is important to have a payment mechanism that has some
nice properties such as truthfulness, because we don't want these users lying to the system about the
preferences they have so that they can adapt their plans according to their own preferences, for example. I
can say I have an important meeting at 9:00 a.m. and arrange all these car pools according to my
preferences, although I don't have this important meeting.
So in this part of the work, we design payments that induce this good behavior about maximizing the total
utility and being truthful and then making every user happy in the system.
We started with a BCG payment mechanism. In this payment mechanism, each agent pays the effect that
it is bringing to the other agents, the value it generates for the other users. And then experimented with
different payment mechanism to see which payment mechanism works better in real life.
Just to show you a brief summary of the results we got from this ABC system, we used GPS data collected
from Microsoft employees in a five-year period and then extracted morning commutes from these GPS data
and used the adaptive carpooling system to generate carpooling plans. The picture on the left is showing
the traffic for these 215 users before the carpooling system and the picture on the right is showing the
traffic for these 215 users after the carpooling system.
So here by having -- by bringing these users together in carpooling plans, we are able to reduce the
number of commutes by 41 percent, reduce the total cost by 15 percent. This cost includes a time cost,
field cost and a combination of cost factors and get admissions by 22 percent.
So in this real world application, we went out and tested a complete computational model for self-interested
agents to bring the self-interested agents together in collaborative plans.
And also we experimented with different challenges and trade-offs we need to make this collaborative
planning work in real life. Also demonstrated how much value can we generate for these users and this
environments if we can apply these ideas into real world problems.
>>: But you didn't actually deploy it so you couldn't test to see if the victory payments actually worked?
>> Ece Kamar: We didn't test that. Yeah. We kind of calculated a baseline, how much value we can
generate if people adapt these plans, they trust the system and they start using the system.
And it is a challenge to deploy these systems in the real world, see how they perform in the real world.
In fact, none of my future interests match John's point in that. To employ these computational models in
real life there are different factors we need to investigate. One of them is understanding how people
perceive these systems, how they accept these systems. Do they trust these systems, or how we can
generate in these systems? It is a problem that I'm very interested in for further investigation into future
work.
So I believe to make such a system work in real life, we need to understand how social an organizational
structure's matter in collaborative plans.
And how we can use this structure to build better models of collaborative plans. By addressing people's
concerns about sharing information or by utilizing the information that exists in social networks,
reputationnal [indiscernible], for example, the picture here is showing my Facebook network as a graph and
we can extract distances from this graph to show the set of people I want to collaborate with and the set of
people I don't want to collaborate with and we can include this to the optimization component to reflect my
preferences about different people in my network.
And finally it is very important to trust systems, to generate systems that build trust with people so that the
people will be happy to be involved in the systems and adapt these systems.
The next challenge that I want to focus on is generating incentives for collaboration. These CG payments
that we build into the carpooling system have very nice properties on paper but we really don't know if they
will work with real people. And there's not much work shopping how these payment mechanisms work in
real life. It's a further challenge to understand what kind of incentives work in real life and what kind of
incentives are good for what kind of domains. For example, in the agent-based carpooling systems, I used
monetary payments. But in Wikipedia there are no payments and people are still collaborating because
they want to contribute to something big. It's part of the utility function. Or we know that altruism,
reciprocity are factors making people collaborate in the real world. It's very important for them to
understand these incentives when one incentive is better than the other.
Finally, I'm very interested in building these computational models but also apply them to real world. The
agent-based carpooling system was a very nice first step in applying these ideas to real world. But I
believe we have a lot of opportunity to use these ideas to other problems such as traffic or managing
resources in real world how we manage energy or making every day tasks easier, how computer agents
helping people in better ways.
And, finally, although we have these very beautiful computational models, payment components, we still
need to understand whether people are happy to share responsibility with these computer agents and
when they're going to share responsibility and control with them so we can always see how people
perceive our systems and rebuild our systems.
So just to summarize my contributions and the work I presented here, I presented a probabilistic
representation for agents, police about the probable plans that teammates are doing, and then use this
representation to enable decision theoretic reasoning on teamwork models.
I also presented a complete computational model to guide self-interested agents to collaboration in the
agent-based carpooling system. I also presented empirical studies of reasoning about helpful behavior.
And the way people perceive collaborative utility as computed by community by these computational
systems, and the value we can generate by applying these collaborative teamwork ideas to the real world,
both for users and the environment.
So the time I spent at Harvard doing my Ph.D. and also during my internships at Microsoft Research show
me the value of collaboration in the real world.
So at this point I want to thank all of my collaborators to make this research possible. And thank you for
listening, and if you have questions I'm happy to answer now.
[applause]
>>: Quick question. How would you -- I know you followed a little bit about directions to make
[indiscernible] to the real, real world versus real data. But what do you think you can do to field a real
world -- how much do you see as being difficult with good challenges [indiscernible].
>> Ece Kamar: Probably the first challenge is modeling user preferences in a better way. Our cost
function was a simplification. It just cared about the field cost and time cost and the lay costs and also
cognitive costs for driving. But as I mentioned in the future work session we need to think about
preferences that people want to collaborate with or how happy they will be for leaving their cars at home
and not having a car with them at work that day.
And also representing incentives for people's incentives for reducing carbon emissions or Microsoft's
incentives for reducing car emissions as a company that can be part of the total cost function that we're
trying to minimize.
And also here we draw up a system that knows about these carpooling plans beforehand. We also have a
dynamic system that's still a simplification of the real world. In the real world, sometimes we'll fail. There
will be unpredicted events such as traffic or accidents, things like that, that will make these plans stochastic
and unpredictable. In an observational system doesn't reason about what happens in the real world when
a plan fails or one of the participants decide not to contribute at all and how we can make this payment
system and the carpooling system dynamic.
It's a big optimization challenge to make it work in the real life.
>>: I wonder if you can model the effect of leadership in a collaboration, a leader does a couple things.
They gather and disseminate information. So that's one way it changes. Your recipe tree. And the other
way to change a recipe tree is to alter the costs, if we're not doing things or better support for doing things.
The vice verse is to have some cost. Would that be an easy thing to model?
>> Ece Kamar: I don't think it will be an easy task to model. In the models I presented, I assumed that
each participant has equal responsibility and they're contributing equally to have the collaborative plan
work. But once we have different organizations such as one is a messenger that's defining other users and
the one is a listener that is adopting the plans accordingly. One person predicts the cost playing utilities for
different tasks. You have a different division of labor and we should adopt these decision heuristic models
to reflect these different responsibilities and change how agents reason about these household behavior
models, for example, would given this new hierarchical structure in the plan.
>>: So in our work, for example, we didn't do a lot of thinking about the [indiscernible] for each structure.
But that kind of reasoning was [indiscernible] directed to the decision model, directed to the influences
diagrams.
How valuable do you think real world will be [indiscernible] versus the modeling approach in terms of how
much do they give us to determine it's true?
>> Ece Kamar: Planning approach, applied mobile approach planning, we're assuming that the world is not
changing much. There's not partial information nor the answer in the real world. We assume we know
where the person is going and we did mobile opportunistic planning given that we know about the person.
But in real life we had applied these mobile opportunistic systems in real life. The computer system will not
know what the person is doing. They'll have an answer about it. We'll also have an answer in the about
the world. I believe that's why PITS will be important to move this mobile opportunistic planning application
to the next step so that the application will not fail under answer and impression information. And also in
the mobile opportunistic planning challenge we didn't really reason about when these agents need to
communicate with the person or what is the utility of communicating, what is useful to informing. These
were all some questions that we didn't answer. And here I show that, by having these nice representations,
we can do more sophisticated reasoning on when an agent needs to update its plan or when the agent
needs to communicate.
>>: But in reality, there are times, for example, where the search tree involves a mega search with the
drag strip, with a plan that we call as a block box. Is this person reaching an opportunity, annotating it with
the details, interleaving of a few men and machine actions.
So am I interested in talking the max, if they are planning, they're a very optimized engine that does the
search to -- it calls and I think it's a big challenge. I think of breaking that open, breaking open that route
planner and making that part of the representation. So I guess the challenge, I guess.
>> Ece Kamar: So here I'm not saying we can just get PRTs applied to real world very easily without even
thinking about how they work in a particular domain. Here I'm just proposing a general representation that
is giving us new ways for reasoning about teamwork which was not possible before.
When we get these PRTs and try to implement them in real world such as mobile opportunistic planning,
you have to think about how we get these plans, how we get these probabilities, what do these black boxes
represent in real life and how do we make it work and what were the complex challenges, intractability
challenges, there are questions that need to be answered. But still we have some tools here that we didn't
have before to make this collaboration more successful on the information.
>> Eric Horvitz: Okay. Thanks very much.
[applause]
Download