designing agent societies volha bryl phd student ict, dit [email protected]
TRANSCRIPT
Agent Society
Agent
Goals Capabilities
……
……
……
……
+ collaboration (through delegation)
- competitive goals
Society member’s objective: use others capabilities to achieve personal goals
Problem
Find optimal assignments:
satisfy all goals of all agents
or reach an compromise?
Formalization (1)
Two types: Actors and Goals
Goals: an actor wants a goal to be satisfied
Capabilities: an actor can satisfy a goal
Communication: an actor can pass (or delegate) a goal to another actor
Formalization (2)
Goals can be decomposed into subgoals
Only one possible decomposition
Goal is satisfied iff all its subgoals are satisfied
Decomposition can be performed by any actor
Decomposition is actor-independent
Formalization (3)
Three basic actions: an actor satisfies a goal an actor passes (or delegates) a goal to
another actor an actor decomposes a goal into subgoals
Solution is a list of actions that should be executed to satisfy all initial goals of all actors (or to reach an equilibrium)
Idea
Let’s look at
PLANNING
which is in AI
“the problem of finding a sequence of primitive actions to achieve some goal”
Planning problem
we need to formalize actions
an action has precondition and effect
precondition and effect can be represented as conjunction or disjunction (for precondition only) of predicates or their negations
Planning problem. Predicates
Actor’s capabilities can_satisfy (a – actor, g – goal) can_depend_on (a1 – actor, a2 – actor)
Actor’s initial desires wants (a – actor, g – goal)
Possible decomposition of goals can_be_decomposed (g – goal, g1 – goal, g2 –
goal, …)
Planning problem. Actions
1) Satisfies (a – actor, g – goal)precondition (and
can_satisfy (a, g) wants (a, g) )
effect (and done (g)*
not (wants(a,g) )
* done (g – goal) is an additional predicate which means “goal g is satisfied, no one wants it anymore”
Planning problem. Actions
2) Decomposes* (a – actor, g – goal, g1 – goal, g2 – goal)
precondition (and can_be_decomposed (g, g1, g2) wants (a, g) )
effect (and wants(a,g1) wants(a,g2) not (wants(a,g) )
* can be extended to more than two actions
Planning problem. Actions
3) Passes (a1 – actor, g – goal, a1 – actor)
precondition (and
can_depend_on (a1, a2)
wants (a1, g) )
effect (and
wants(a2, g)
not (wants(a1, g) )
Planning problem. Intuition (1)
wants (A, G)
Decomposes (A, G, G1, G2)
wants (A, G1)
wants (A, G2)
wants are propagated through the graph and then eliminated – become done
Planning problem. Intuition (2)
wants (A, G)
done (G)
Satisfies (A, G)
wants are propagated through the graph and then eliminated – become done
wants (A, G) wants (B, G)
Passes (G, A, B)
Example. Informal formulation
I can buy a ticket
I want to go to the conference
…to go there means: buy a ticket and get reimbursementProfessor
Accounting officeI can ask accounting office for
help
We can help to get the reimbursement
Example. PDDL formulation(define (problem example) (:domain tropos-domain) (:objects Professor Accounting_office - t_actor Go_to_conference Get_reimbursement Buy_ticket - t_goal ) (:goal (and (done Go_to_conference) ) ) (:init (can_do Accounting_office Get_reimbursement ) (can_do Professor Buy_ticket ) (can_depend_on Professor Accounting_office ) (wants Professor Go_to_conference ) (and_subgoal2 Go_to_conference Buy_ticket Get_reimbursement
) )
Example. Using the tool
Example. Using the tool
Example. Solution
decomposes [professor, go-to-conference, buy-ticket, get-reimbursement]performs [professor, buy-ticket]
pass [professor, get-reimbursement, accounting-office]
performs [accounting-office, get-reimbursement]
Big example. Description
I need to write a letter to the UK embassy
I know English
I can use printer
I have an official stamp
I can only sign letters…
Boss
1st Secretary
2nd Secretary
3rd Secretary
…to write a letter means: type, print and certify it with stamp and boss’s signature
Big example. Solution
decomposes [boss, write-letter, send-letter, type-letter-in-english]decomposes [boss, send-letter, certify-letter, print-letter]pass [boss, type-letter-in-english, secretary-1]pass [boss, print-letter, secretary-1]performs [secretary-1, type-letter-in-english]decomposes [boss, certify-letter, stamp-letter, sign-letter]pass [boss, stamp-letter, secretary-1]performs [boss, sign-letter]pass [secretary-1, print-letter, secretary-2]performs [secretary-2, print-letter]pass [secretary-1, stamp-letter, secretary-2]pass [secretary-2, stamp-letter, secretary-3]performs [secretary-3, stamp-letter]
combines [certify-letter, stamp-letter, sign-letter]combines [send-letter, certify-letter, print-letter]combines [write-letter, send-letter, type-letter-in-english]
Big example. Solution
Summing up… two views
We have different views on the problem Cooperation in multi-agent communities
(strategic games) Analyzing requirements
These views might be though as different
application areas of the proposed solution
Summing up… or what we do not have
We need iterative solution building (iteration by imposing constraints on next solution)
We need “partial” solution (compromise or equilibrium) and its evaluation
We need the possibility of introducing new actors during the solution building