TASK ALLOCATION MECHANISMS AND MARKETS FOR ACQUIRING AND HARNESSING SETS OF HUMAN AND COMPUTATIONAL RESOURCES FOR SENSING, EFFECTING, AND PROBLEM SOLVING
First Claim
1. A method of allocating an agent set comprising agents comprising at least one agent capability to perform at least one project, respective projects comprising at least one task, respective tasks involving at least one task capability, the method using a computer having a processor and comprising:
- executing on the processor instructions configured to;
while at least one task of at least one project is unfulfilled;
select a coalition comprising at least one agent in the agent set, the agents of the coalition collectively comprising agent capabilities corresponding to the task capabilities of an unfulfilled task;
allocate the coalition to fulfill the task; and
remove the agents in the coalition from the agent set.
2 Assignments
0 Petitions
Accused Products
Abstract
A set of projects may be defined, each project having a set of tasks to be performed. In turn, each task may be mapped to a set of task capabilities that are involved in completing the task. A set of agents and components (potentially including both human agents and automated agent, and components for sensing and effecting action in the world) may also be defined, and each agent may have a set of agent capabilities representing skills, knowledge, resources, relationships, etc., that an agent may commit to a task. The tasks of the projects may be fulfilled by identifying coalitions of agents for respective tasks, featuring a sufficient set of agent capabilities corresponding to the task capabilities. This model may be used, e.g., in a matching service, whereby projects submitted by managers may be completed through an automated matching of tasks with a set of agents subscribing to the service.
-
Citations
20 Claims
-
1. A method of allocating an agent set comprising agents comprising at least one agent capability to perform at least one project, respective projects comprising at least one task, respective tasks involving at least one task capability, the method using a computer having a processor and comprising:
executing on the processor instructions configured to; while at least one task of at least one project is unfulfilled; select a coalition comprising at least one agent in the agent set, the agents of the coalition collectively comprising agent capabilities corresponding to the task capabilities of an unfulfilled task; allocate the coalition to fulfill the task; and remove the agents in the coalition from the agent set. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
18. A system configured to allocate an agent set comprising agents comprising at least one agent capability to perform at least one project, respective projects comprising at least one task, respective tasks involving at least one task capability, the system comprising:
-
a task selecting component configured to select at least one unfulfilled task of at least one project; a coalition selecting component configured to select a coalition comprising at least one agent in the agent set, the agents of the coalition collectively comprising agent capabilities corresponding to the task capabilities of the task selected by the task selecting component; and an agent allocating component configured to; allocate the coalition selected by the coalition selecting component to fulfill the task selected by the task selecting component, and remove the agents in the coalition from the agent set. - View Dependent Claims (19)
-
-
20. A computer-readable medium comprising a set of processor-executable instructions that, when executed on a processor of a computer having access to agent set comprising agents comprising at least one agent capability having a capability proficiency and a capability cost, the agent set comprising at least one human agent asserting at least one agent capability and at least one automated agent configured to perform at least one agent capability, and the computer having access to at least one project, respective projects comprising at least one task, respective tasks involving at least one task capability, cause the processor to allocate the agents of the agent set to the tasks of the projects by:
-
receiving from at least one manager at least one project involving at least one task; upon receiving a request from a human agent to be added to the agent set, the human agent asserting at least one capability; testing the human agent in the capability with a capability test, and upon the human agent passing the capability test, adding the human agent to the agent set; while at least one task of at least one project is unfulfilled; for respective coalitions that may perform the task, calculating an expected utility of a project based on at least one potential task outcome of the coalition if allocated to fulfill the task; applying a decision-theoretic function to select a coalition maximizing the expected utility of the task, the coalition comprising at least one agent in the agent set, the agents of the coalition collectively comprising agent capabilities corresponding to the task capabilities of the task, and selecting a human agent comprising; offering the task to the human agent; and upon receiving from the human agent an acceptance of the task, selecting the agent for the coalition; allocating the coalition to fulfill the task; removing the agents in the coalition from the agent set, the coalitions selected to achieve at least one project preference selected from a set of project preferences comprising; maximizing the capability proficiencies of the agent capabilities of the agents corresponding to the task capabilities of the task, minimizing the capability costs of the agent capabilities of the agents corresponding to the task capabilities of the task, and for respective tasks, minimizing agent capabilities of the coalition not corresponding to the task capabilities of the task; after allocating the coalitions to fulfill the tasks of a project received from a manager; committing the coalitions to perform the tasks of the project, and notifying the manager of the coalitions allocated to the tasks of the project.
-
Specification