Transcript
Page 1: Designing Agent Societies

Designing Agent Societies

Volha BrylPhD studentICT, [email protected]

Page 2: Designing Agent Societies

Agent Society

Agent

Goals Capabilities

……

……

……

……

+ collaboration (through delegation)

- competitive goals

Society member’s objective: use others capabilities to achieve personal goals

Page 3: Designing Agent Societies

Problem

Find optimal assignments:

satisfy all goals of all agentsor

reach an compromise?

Page 4: Designing Agent Societies

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

Page 5: Designing Agent Societies

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

Page 6: Designing Agent Societies

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)

Page 7: Designing Agent Societies

Idea

Let’s look at

PLANNING

which is in AI “the problem of finding a sequence of primitive

actions to achieve some goal”

Page 8: Designing Agent Societies

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

Page 9: Designing Agent Societies

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, …)

Page 10: Designing Agent Societies

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”

Page 11: Designing Agent Societies

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

Page 12: Designing Agent Societies

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) )

Page 13: Designing Agent Societies

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

Page 14: Designing Agent Societies

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)

Page 15: Designing Agent Societies

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

Page 16: Designing Agent Societies

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 )     )

Page 17: Designing Agent Societies

Example. Using the tool

Page 18: Designing Agent Societies

Example. Using the tool

Page 19: Designing Agent Societies

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]

Page 20: Designing Agent Societies

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

Page 21: Designing Agent Societies

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]

Page 22: Designing Agent Societies

Big example. Solution

Page 23: Designing Agent Societies

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

Page 24: Designing Agent Societies

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


Top Related