The Participant vs. Agent debate will look at two perspectives on how to build virtual character agents.

The class will be split into 2 teams, one representing Agents-as-participants and one representing Agents-as-actors. Each team will have chances to lay out arguments for their side or against the other side. Teams will take turns putting for new arguments or rebutting the other team's arguments.

Participant Agents

A participant NPC is an agent that believes it is the character. For example, a James Bond NPC thinks it is James Bond and therefore responds to the state of the world as James Bond would. Thus, if in the same room as the villain, the agent will attempt to apprehend or kill the villain.

Actor Agents

An actor NPC is an agent that is programmed to play the role of the character. For example, the agent is Daniel Craig playing James Bond. The agent knows that it is not actually James Bond, but is expected to do James Bond like things. When placed in a room with the villain, the agent will think about what James Bond will do, but may also think about what would be good for the story. Thus, the agent, might actually let the villain get away so there can be a chase.

Preparing

Prepare by brainstorming the pros and cons of designing agents as participants and actors. In particular think about

advantages of participants

disadvantages of participants

advantages of actors

disadvantages of actors.

Some of the types of things to consider when making the lists:

Implementation issues

What can actors/participants do that the other cannot

Algorithmic complexity

Types of applications/games that would be appropriate/inappropriate for each

Inter-agent communication: humans and agents interacting, but also multiple agents interacting with each other

knowledge representation and scripting

Agent goals (goals, as we have seen are important parts of many agent architectures)

Authorability

Other issues may come to mind that give one perspective an edge over the other.