commitments for organizations dealing with inconsistencies n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
COMMITMENTS FOR ORGANIZATIONS: DEALING WITH INCONSISTENCIES PowerPoint Presentation
Download Presentation
COMMITMENTS FOR ORGANIZATIONS: DEALING WITH INCONSISTENCIES

Loading in 2 Seconds...

play fullscreen
1 / 36

COMMITMENTS FOR ORGANIZATIONS: DEALING WITH INCONSISTENCIES - PowerPoint PPT Presentation


  • 112 Views
  • Uploaded on

COMMITMENTS FOR ORGANIZATIONS: DEALING WITH INCONSISTENCIES. Shameem Shah Nawaz Supervised by: Asst. Prof. Dr. P ı nar Yolum. Outline. Technical Background Addition of Time Conflict Detection Conflict Scenarios Resolving Conflicts Higher Level View of Organizations Software Demo.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'COMMITMENTS FOR ORGANIZATIONS: DEALING WITH INCONSISTENCIES' - zahina


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
commitments for organizations dealing with inconsistencies

COMMITMENTS FOR ORGANIZATIONS: DEALING WITH INCONSISTENCIES

Shameem Shah Nawaz

Supervised by: Asst. Prof. Dr. Pınar Yolum

outline
Outline
  • Technical Background
  • Addition of Time
  • Conflict Detection
  • Conflict Scenarios
  • Resolving Conflicts
  • Higher Level View of Organizations
  • Software Demo
motivation
Motivation
  • representing interactions among agents in multiagent organizations
  • using commitment-based approach
  • detecting and resolving conflicts
  • generating higher level views of interactions
  • desiging and developing a software tool
technical background
Technical Background
  • Commitment
    • is a promise or an obligation
    • expressed as CommitmentId(debtor, creditor, proposition)
    • an example commitment:

Ci(Employee 1, Manager, Produce Toys)

  • Operations on Commitments
    • Create – can only be created by debtor
    • Cancel – can only be cancelled by debtor
    • Release – can only be released by creditor
    • Assign – can only be assigned by creditor
    • Delegate – can only be delegated by debtor
    • Discharge – satisfies a commitment
technical background commitment graph
Technical Background - Commitment Graph

C1(Emp1, Supervisor, Produce) {cancel, discharge}

C2(Emp1, Manager, Produce) {cancel, discharge , assignto Supervisor}

Step1: RC & D nodes are created

D

RC

technical background commitment graph1
Technical Background - Commitment Graph

C1(Emp1, Supervisor, Produce) {cancel, discharge}

C2(Emp1, Manager, Produce) {cancel, discharge , assignto Supervisor}

Step2: For each commitment a new node and edges are created iteratively.

C1

D

RC

technical background commitment graph2
Technical Background - Commitment Graph

C1(Emp1, Supervisor, Produce) {cancel, discharge}

C2(Emp1, Manager, Produce) {cancel, discharge , assignto Supervisor}

Step2: For each commitment a new node and edges are created iteratively.

C1

D

RC

C2

technical background1
Technical Background
  • Resolvable Commitment
  • can either be released or cancelled or discharged
  • or has an edge to another resolvable commitment
  • Conflicts among Commitments

C1(Emp1, Supervisor, Produce) {discharge}

C2(Emp1, Supervisor, Not Produce) {discharge}

  • Set of Conflicting Commitments
addition of time
Addition of Time
  • Importance
  • Time Point
    • discrete moment in time
    • two special time points, tb & te
  • Time Interval – bounded by two time points
  • Transition Point – where propositions reverse smoothly
  • Time Quantifier
    • Existential
    • Universal
addition of time1
Addition of Time
  • Time Model
  • Binding Commitments with Time
  • CommitmentId(debtor, creditor, proposition) [Time Bound] Time Quantifier
  • example:

Ci(Employee 1, Manager, Produce Toys) [ Today ] E

  • Conflicts among Time-bound Commitments

tb

t0

t1

t2

t3

t4

t5

te

conflict detection
Conflict Detection
  • Conflicting Commitments given Time-bounds
    • consider time while detecting conflicts
    • conflict when time is not considered

C1(Emp1, Supervisor, Produce){discharge}

C2(Emp1, Supervisor, Not Produce){discharge}

    • still in conflict after adding time

C1(Emp1, Supervisor, Produce) [ Today ] E{discharge}

C2(Emp1, Supervisor, Not Produce) [ Today ] U {discharge}

    • no longer in conflict if time intervals do not overlap

C1(Emp1, Supervisor, Produce) [ Today ] E{discharge}

C2(Emp1, Supervisor, Not Produce) [ Tomorrow ] U {discharge}

conflict detection1
Conflict Detection
  • Conflict Types
    • Certain

C1(Emp1, Supervisor, Produce) [ Today ] E{discharge}

C2(Emp1, Supervisor, Not Produce) [ Today ] U {discharge}

    • Possible

C1(Emp1, Supervisor, Produce) [ Today ] E{discharge}

C2(Emp1, Supervisor, Not Produce) [ Today ] E {discharge}

  • Unrealistic Commitments
    • not in conflict but depends on other commitments

C1(seller, customer, sell toys)[ Today ] E{discharge}

C2(producer, seller, produce toys)[ Today ] E {discharge}

conflict scenarios
Conflict Scenarios
  • Non-overlapping Time Intervals
  • Identical Time Intervals

C2

C1

t0

t1

t2

t3

t4

C2

C1

t0

t1

t2

t3

t4

conflict scenarios1
Conflict Scenarios
  • Containing Time Intervals
  • Intersecting Time Intervals

C2

C1

t0

t1

t2

t3

t4

C2

C1

t0

t1

t2

t3

t4

resolving conflicts
Resolving Conflicts
  • Discarding a Commitment
    • simplest way; eliminate erroneous commitment
  • Modifying a Commitment
    • Delegate to a different debtor
    • Assign to a different creditor
  • Shifting Time Bounds
    • such that time bounds do not overlap
  • Using Constraints
    • such that conflicting commitments do not have to be valid at the same time
an example scenario of conflict resolution
An Example Scenario of Conflict Resolution

Commitments:

C1(x, y, pass through the door)[1:00pm – 1:10pm] E

C2(y, x, open the door) [12:59pm – 1:09pm] E

C3(x, y, close the door) [1:00pm – 1:11pm] E

  • C2 and C3 are possibly in conflict between 1:00pm – 1:10pm
  • eliminate commitment C3?
  • fairly distributing the time between C2 and C3 ?
  • shift the time bound of commitment C3?
  • using a constraint (C2 < C3) such that C3 is valid only when C2is satified?
higher level view of organizations
Higher Level View of Organizations
  • Aggregation on Time
    • debtor, creditor and proposition same
    • time intervals are consecutive

C1(producer, seller, produce) [ Jan ]

C2(producer, seller, produce) [ Feb ]

C3(producer, seller, produce) [ Mar ]

ULC1(producer, seller, produce) [ Q1 ]

C1

C2

C3

ULC1

Jan

Feb

Mar

Jan

Feb

Mar

higher level view of organizations1
Higher Level View of Organizations
  • Grouping Agents
    • same proposition and time interval
    • group composition known beforehand

C1(producer 1, seller, produce) [Q1]

C2(producer 2, seller, produce) [Q1]

C3(producer 3, seller, produce) [Q1]

ULC1(group of producers, seller, produce)[Q1]

P1

C1

C2

ULC1

P2

S

Group of Producers

Seller

C3

P3

higher level view of organizations2
Higher Level View of Organizations
  • Conceptually Upper Level Commitments
    • base level commitments are part of an upper level concept

C1(professor, department, prepare course outline) [ beginning of term ]

C2(professor, department, give lectures) [ along term ]

C3(professor, department, evaluate students) [ end of term ]

ULC1(professor, department, offer a course) [ term ]

higher level view of organizations3
Higher Level View of Organizations
  • Aggregation on Transitivity of Commitments
    • inherent transitive relations

C1(x, y, pay $100) [ t1 – t2 ]

C2(y, z, pay $100) [ t2 – t3 ]

ULC1(x, z, pay $100) [ t1 – t3 ]

    • aggregation may cause low level data loss
    • designer should decide whether to proceed with aggregation

x

x

t1

C1

y

t2

ULC1

C2

t3

z

z

software tool architecture
Software Tool Architecture
  • developed in Java
  • commitment protocol specified in XML
    • time model
    • commitments
    • constraints
  • when fed with XML specification
    • commitment graph is created
    • conflicts detected
    • help is provided on conflict resolution
    • upper level commitments are created
software tool demo
Software Tool Demo
  • OrgL – larger organization
  • OrgS – smaller organization

GM

Pr

Is

Es

In

E_Pr_1

E_Pr_2

E_Is

E_Es

E_In

GM

Pr

E_Pr_1

E_Pr_2

literature
Literature
  • Fornara and Colombetti
    • a method for agent communication
    • based on social notion of commitments
    • no mention of inconsistency
    • no time frame for commitments
  • Artikis et al.
    • develop a framework to animate computational societies
    • set of agents, roles, constraints, etc characterize a society
    • event calculus is used to represent the concepts of a society
    • no design rules to establish the correctness of societies
discussion
Discussion
  • Summary
    • added the concept of time with commitments
    • extended the algorithm to detect conflicts
    • developed ways to resolve conflicts
    • generated ways to present higher level views
  • Future Directions
    • verify protocol in run time
    • incorporate state transitions
    • process quantifiable information in propositions
    • employ AI techniques to suggest how to resolve conflicts
algorithm 1 build commitment graph cs o
Algorithm 1Build-commitment-graph(CS, O)

1: Create a node RC

2: Create a node D

3: possible-commitments = CS

4: while (possible-commitments != ) do

5: Remove a commitment c

6: Add a new node c to V

7: fori = 1 to |O(c)| do

8: if (O(c)[i] == delegate) then

9: Add a new node c.delegate to V

10: Add (c, c.delegate) to E

11: Add c.delegate to possible-commitments

algorithm 1 build commitment graph cs o1
Algorithm 1Build-commitment-graph(CS, O)

12: elseif (O(c)[i] == assign) then

13: Add a new node c. assign to V

14: Add (c, c. assign) to E

15: Add c. assign to possible-commitments

16: elseif (O(c)[i] == release) || (O(c)[i] == cancel) then

17: Add (c, c.RC) to E

18: elseif (O(c)[i] == discharge) then

19: Add (c, c.D) to E

20: end if

21: endfor

22: end while

algorithm 2 color graph g
Algorithm 2Color-graph(G)

1: visited = 

2: whiteList = 

3: blackList = 

4: fori = 1 to |V| do

5: if (V(i)  visited) then

6: visit(V(i))

7: endif

8: endfor

algorithm 3 visit u
Algorithm 3visit(u)

1: Add u to visited

2: if (u.adjacentTo(D OR RC)) then

3: Add u to whiteList

4: elseif (u.hasNeighbors()) then

5: while (u whiteList) AND

(THERE EXIST E(u, v) : v visited) do

6: if (v visited) then

7: visit(v)

8: endif

algorithm 3 visit u1
Algorithm 3visit(u)

9: if (v whiteList) then

10: Add u to whiteList

11: else

12: Add u to blackList

13: endif

14: endwhile

15: else

16: Add u to blackList

17: endif

algorithm 4 check consistency g
Algorithm 4Check-consistency(G)

1: inconsistentList = 

2: fori = 1 to |V| - 1 do

3: forj = i + 1 to |V| do

4: Determine if V(i) and V(j) are conflicting

5: if conflicting(V(i) and V(j)) then

6: if NOT EXIST(E(V(i)), RC) AND NOT EXIST(E(V(j)), RC) then

7: Add V(i) and V(j) to inconsistentList

8: end if

9: end if

10: end for

11: end for

algorithm 5 detect cpt scp
Algorithm 5Detect-CPT(SCP)

1: conflictGivenTimeList = 

2: noConflictGivenTimeList = 

3: fori = 1 to |SCP| do

4: Compare time intervals of SCP[i]

5: if (time intervals overlapping) then

6: Add SCP[i] to conflictGivenTimeList

7: else

8: Add SCP[i] to noConflictGivenTimeList

9: end if

10: end for

technical background commitment graph3
Technical Background - Commitment Graph

C1(Emp1, Supervisor, Produce) {cancel, discharge}

C2(Emp1, Manager, Produce) {cancel, discharge , assignto Supervisor}

C3(Emp2, Supervisor, Produce) {}

Step2: For each commitment a new node and edges are created iteratively.

C1

D

RC

C3

C2

technical background commitment graph4
Technical Background - Commitment Graph

C1(Emp1, Supervisor, Produce) {cancel, discharge}

C2(Emp1, Manager, Produce) {cancel, discharge , assignto Supervisor}

C3(Emp2, Supervisor, Produce) {}

Step2: For each commitment a new node and edges are created iteratively.

C1

D

RC

C3

C2

technical background commitment graph5
Technical Background - Commitment Graph

C1(Emp1, Supervisor, Produce) {cancel, discharge}

C2(Emp1, Manager, Produce) {cancel, discharge , assignto Supervisor}

C3(Emp2, Supervisor, Produce) {cancel, delegate to Emp1}

Step2: For each commitment a new node and edges are created iteratively.

C1

D

RC

C3

C2

transition point
Transition Point
  • specify a time point when a proposition reverses
  • but both the proposition and its reverse are not valid at the same time
  • a proposition is valid until tp-
  • and its reverse is valid from tp+

tp

t-p

t+p

tb

te

types of proposition
Types of Proposition
  • Cumulative
    • accumulation is significant
    • ex., paying $100 – two same proposition would mean paying $200
    • organization state always changes whenever a cumulative proposition is satisfied
  • Repetitive
    • accumulation is insignificant
    • ex., turning a light on – two same propositions would mean turning on the same light twice
    • organization state may not change when a repetitive proposition is satisfied more than once