Distributed Constraints

Size: px
Start display at page:

Download "Distributed Constraints"

Transcription

1 Distributed Constraints José M Vidal Department of Computer Science and Engineering, University of South Carolina January 15, 2010 Abstract Algorithms for solving distributed constraint problems in multiagent systems. Chapter 2.

2 Centralized Outline

3 Centralized Graph Coloring

4 Centralized Graph Coloring

5 Centralized Problem (CSP) Given variables x 1,x 2,...x n with domains D 1,D 2,...D n and a set of boolean constraints P of the form pk(x k1,x k2,...,x kj ) {0,1}, find assignments for all the variables such that no constraints are violated.

6 Centralized Depth First Search for the CSP DEPTH-FIRST-SEARCH-CSP(i, g) 1 if i > n 2 then return g 3 for v D i 4 do if setting x i v does not violate any constraint in P given g 5 then g DEPTH-FIRST-SEARCH-CSP(i + 1,g + {x i v}) 6 if g 7 then return g 8 9 return

7 Distributed Outline

8 Distributed Definition (Distributed Problem (DCSP)) Give each agent one of the variables in a CSP. Agents are responsible for finding a value for their variable and can find out the values of their neighbors via communication

9 Filtering Algorithm Outline

10 Filtering Algorithm REVISE(x i,x j ) 1 old-domain D i 2 for v i D i 3 do if there is no v j D j consistent with v i 4 then D i D i v i 5 if old-domain D i 6 then k {neighbors of i} k.handle-new-domain(i,d i )

11 Filtering Algorithm x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3

12 Filtering Algorithm x 1 x 2 x 3 REVISE(x 1,x 3 ) x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3

13 Filtering Algorithm x 1 x 2 x 3 REVISE(x 1,x 3 ) x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3

14 Filtering Algorithm x 1 x 2 x 3 REVISE(x 1,x 3 ) Communicate x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3

15 Filtering Algorithm x 1 x 2 x 3 REVISE(x 1,x 3 ) x 1 x 2 x 3 x 1 x 2 x 3 REVISE(x 2,x 3 ) x 1 x 2 x 3

16 Filtering Algorithm x 1 x 2 x 3 REVISE(x 1,x 3 ) x 1 x 2 x 3 x 1 x 2 x 3 REVISE(x 2,x 3 ) x 1 x 2 x 3

17 Filtering Algorithm x 1 x 2 x 3

18 Filtering Algorithm x 1 x 2 x 3 Filtering fails to detect no-solution.

19 Hyper-Resolution Based Consistency Algorithm Outline

20 Hyper-Resolution Based Consistency Algorithm Definition (k-consistency) Given any instantiation of any k 1 variables that satisfy all constraints it is possible to find an instantiation of any k th variable such that all k variable values satisfy all constraints.

21 Hyper-Resolution Based Consistency Algorithm Definition (Strongly k-consistent) A problem is strongly k-consistent if it is j-consistent for all j k.

22 Hyper-Resolution Based Consistency Algorithm Definition (Hyper-Resolution Rule) A 1 A 2 A m (A 1 A 11 ) (A 2 A 21 ) : (A m A m1 ) (A 11 A 21 A m1 ).

23 Hyper-Resolution Based Consistency Algorithm x 1 x 2 x 3 x 1 = x 1 = x 2 = x 2 = x 3 = x 3 = (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) x 1 x 2 x 3

24 Hyper-Resolution Based Consistency Algorithm x 1 x 2 x 3 x 1 = x 1 = x 2 = x 2 = x 3 = x 3 = (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 2 = x 3 = ) x 1 x 2 x 1 x 3 x 1 = x 1 = (x 1 = x 2 = ) (x 1 = x 3 = ) (x 2 = x 3 = )

25 Hyper-Resolution Based Consistency Algorithm x 1 x 2 x 3 x 1 = x 1 = x 2 = x 2 = x 3 = x 3 = (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) x 1 x 1 x 2 x 3 Sends (x 2 = x 3 = ) to x 2 and x 3.

26 Hyper-Resolution Based Consistency Algorithm x 1 x 2 x 3 x 1 = x 1 = x 2 = x 2 = x 3 = x 3 = (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 3 = ) x 2 x 2 x 1 x 3 x 2 = x 2 = (x 2 = x 3 = ) (x 2 = x 3 = ) (x 3 = )

27 Hyper-Resolution Based Consistency Algorithm x 1 x 2 x 3 x 1 = x 1 = x 2 = x 2 = x 3 = x 3 = (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 3 = ) x 1 x 2 x 1 x 3 x 1 = x 1 = (x 1 = x 2 = ) (x 1 = x 3 = ) (x 2 = x 3 = )

28 Hyper-Resolution Based Consistency Algorithm x 1 x 2 x 3 x 1 = x 1 = x 2 = x 2 = x 3 = x 3 = (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 3 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) x 1 x 1 x 2 x 3 Sends (x 2 = x 3 = ) to x 2 and x 3.

29 Hyper-Resolution Based Consistency Algorithm x 1 x 2 x 3 x 1 = x 1 = x 2 = x 2 = x 3 = x 3 = (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 3 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 3 = ) x 2 x 2 x 1 x 3 x 2 = x 2 = (x 2 = x 3 = ) (x 2 = x 3 = ) (x 3 = )

30 Hyper-Resolution Based Consistency Algorithm x 1 x 2 x 3 x 1 = x 1 = x 2 = x 2 = x 3 = x 3 = (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 3 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 3 = ) (x 3 = ) (x 3 = ) x 1 x 2 x 2 x 3 Sends (x 3 = ) and (x 3 = ) to x 3.

31 Hyper-Resolution Based Consistency Algorithm x 1 x 2 x 3 x 1 = x 1 = x 2 = x 2 = x 3 = x 3 = (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 1 = x 2 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 3 = ) (x 2 = x 3 = ) (x 2 = x 3 = ) (x 3 = ) (x 3 = ) (x 3 = ) x 3 x 2 x 1 x 3 x 3 = x 3 = (x 3 = ) (x 3 = ) Contradiction

32 Asynchronous Backtracking Outline

33 Asynchronous Backtracking Backtracking

34 Asynchronous Backtracking Backtracking

35 Asynchronous Backtracking Backtracking

36 Asynchronous Backtracking Backtracking

37 Asynchronous Backtracking Backtracking

38 Asynchronous Backtracking Backtracking?

39 Asynchronous Backtracking Backtracking

40 Asynchronous Backtracking Backtracking

41 Asynchronous Backtracking Agent Variables priority: the agent s fixed priority number. All agents are ordered. local-view: current values of other agents variables. current-value: current value of agent s variable. neighbors: initially, the set of agents with whom agent shares a constraint.

42 Asynchronous Backtracking Remote Calls HANDLE-OK?(j,x j ) This message asks the receiver if that assignment does not violate any of his constraints. HANDLE-NOGOOD(j, nogood) which means that j is reporting that it can t find a value for his variable because of nogood. HANDLE-ADD-NEIGHBOR(j) which requests the agent to add some other agent j as its neighbor.

43 Asynchronous Backtracking HANDLE-OK?(j,x j ) 1 local-view local-view +(j,x j ) 2 CHECK-LOCAL-VIEW()

44 Asynchronous Backtracking CHECK-LOCAL-VIEW() 1 if local-view and x i are not consistent 2 then if no value in D i is consistent with local-view 3 then BACKTRACK() 4 else select d D i consistent with local-view 5 x i d 6 k neighbors k.handle-ok?(i,x i )

45 Asynchronous Backtracking HANDLE-NOGOOD(j, nogood) 1 record nogood as a new constraint 2 for (k,x k ) nogood where k neighbors 3 do k.handle-add-neighbor(i) 4 neighbors neighbors +k 5 local-view local-view +(k,x k ) 6 old-value x i 7 CHECK-LOCAL-VIEW() 8 if old-value x i 9 then j.handle-ok?(i,x i )

46 Asynchronous Backtracking BACKTRACK() 1 nogoods {V V = inconsistent subset of local-view using hyper-res 2 if an empty set is an element of nogoods 3 then broadcast that there is no solution 4 terminate this algorithm 5 for V nogoods 6 do select (j,x j ) where j has lowest priority in V 7 j.handle-nogood(i, V) 8 local-view local-view (j,x j ) 9 CHECK-LOCAL-VIEW()

47 Asynchronous Backtracking Example x 1 x 2 x 3

48 Asynchronous Backtracking Example x 1 x 2 x 3 x 2 x 3

49 Asynchronous Backtracking Example x 1 ok?(x 2, ) ok?(x 3, ) x 2 x 3 x 2 x 3

50 Asynchronous Backtracking Example x 1 local-view = (x 2, ),(x 3, ) ok?(x 2, ) ok?(x 3, ) x 2 x 3 x 2 x 3

51 Asynchronous Backtracking Example x 1 local-view = (x 2, ),(x 3, ) nogood(x 2 = x 3 = ) x 2 x 3 x 2 x 3

52 Asynchronous Backtracking Example x 1 local-view = (x 2, ),(x 3, ) nogood(x 2 = x 3 = ) Added link x 2 x 3 x 2 x 3

53 Asynchronous Backtracking Example x 1 local-view = (x 2, ),(x 3, ) Added link x 2 x 3 x 2 ok?(x 2, ) x 3 nogood(x 2 = x 3 = ) local-view = (x 2, )

54 Asynchronous Backtracking Example x 1 local-view = (x 2, ),(x 3, ) nogood(x 2 = x 3 = ) Added link x 2 x 3 x 2 nogood(x 2, ) x 3 local-view = (x 2, )

55 Asynchronous Backtracking Theorem (ABT is Complete) The ABT algorithm always finds a solution if one exists and terminates with the appropriate message if there is no solution. Proof. By induction. First show that the agent with the highest priority never enters an infinite loop. Then show that given that all the agents with lower priority that k never fall into an infinite loop then k will not fall into an infinite loop.

56 Asynchronous Weak-Commitment Search Outline

57 Asynchronous Weak-Commitment Search Asynchronous Weak-Commitment (AWC) Use dynamic priorities. Change ok? messages to include agent s current priority. Use min-conflict heuristic.

58 Asynchronous Weak-Commitment Search CHECK-LOCAL-VIEW 1 if x i is consistent with local-view 2 then return 3 if no value in D i is consistent with local-view 4 then BACKTRACK() 5 else select d D i consistent with local-view and which minimizes constraint violations with lower priority agents. 6 x i d 7 k neighbors k.handle-ok?(i,x i,priority)

59 Asynchronous Weak-Commitment Search BACKTRACK 1 generate a nogood V 2 if V is empty nogood 3 then broadcast that there is no solution 4 terminate this algorithm 5 if V is a new nogood 6 then (k,xk ) V k.handle-nogood(i,j,priority) 7 priority 1 + max{neighbors priorities} 8 select d D i consistent with local-view and which minimizes constraint violations with lower priority agents. 9 x i d 10 k neighbors k.handle-ok?(i,x i,priority)

60 Asynchronous Weak-Commitment Search Example priority = 0 x 1 x 2 x 3 priority = 0 priority = 0

61 Asynchronous Weak-Commitment Search Example priority = 0 x 1 x 2 x 3 x 2 x 3 priority = 0 priority = 0

62 Asynchronous Weak-Commitment Search Example priority = 0 x 1 ok?(x 2,,0) ok?(x 3,,0) x 2 x 3 x 2 x 3 priority = 0 priority = 0

63 Asynchronous Weak-Commitment Search Example priority = 0 x 1 local-view = (x 2, ),(x 3, ) ok?(x 2,,0) ok?(x 3,,0) x 2 x 3 x 2 x 3 priority = 0 priority = 0

64 Asynchronous Weak-Commitment Search Example priority = 1 x 1 local-view = (x 2, ),(x 3, ) nogood(x 2 = x 3 = ),1 x 2 x 3 x 2 x 3 priority = 0 priority = 0

65 Asynchronous Weak-Commitment Search Example priority = 1 x 1 local-view = (x 2, ),(x 3, ) nogood(x 2 = x 3 = ),1 Added link x 2 x 3 x 2 priority = 0 priority = 0

66 Asynchronous Weak-Commitment Search Example priority = 1 x 1 local-view = (x 2, ),(x 3, ) ok?(x 2,,0) nogood(x 2 = x 3 = ),1 x 2 Added link x 3 local-view = (x 2, ) priority = 0 priority = 0

67 Asynchronous Weak-Commitment Search Example priority = 1 x 1 local-view = (x 2, ),(x 3, ) nogood(x 2 = x 3 = ),1 Added link x 2 x 3 x 2 priority = 0 nogood(x 2, ) priority = 2 local-view = (x 2, )

68 Asynchronous Weak-Commitment Search Theorem (AWC is complete) The AWC algorithm always finds a solution if one exists and terminates with the appropriate message if there is no solution. Proof. The priority values are changed if and only if a new nogood is found. Since the number of possible nogoods is finite the priority values cannot be changed indefinitely. When the priority values are stable AWC becomes ABT, which is complete.

69 Distributed Breakout Outline

70 Distributed Breakout Hill Climbing

71 Distributed Breakout Hill Climbing?

72 Distributed Breakout Hill Climbing

73 Distributed Breakout Hill Climbing?

74 Distributed Breakout Hill Climbing

75 Distributed Breakout Hill Climbing?

76 Distributed Breakout Hill Climbing

77 Distributed Breakout Definition (Quasi-local-minimum) An agent x i is in a quasi-local-minimum if it is violating some constraint and neither it nor any of its neighbors can make a change that results in lower cost for all.

78 Distributed Breakout Remote Procedure Calls HANDLE-OK?(i,x i ) where i is the agent and x i is its current value, HANDLE-IMPROVE(i, improve, eval) where improve is the maximum i could gain by changing to some other color and eval is its current cost.

79 Distributed Breakout HANDLE-OK?(j,x j ) 1 received-ok[j] TRUE 2 agent-view agent-view +(j,x j ) 3 if k neighbors received-ok[k] = TRUE 4 then SEND-IMPROVE() 5 k neighbors received-ok[k] FALSE

80 Distributed Breakout SEND-IMPROVE() 1 cost evaluation of x i given current weights and values. 2 my-improve possible maximal improvement 3 new-value value that gives maximal improvement 4 k neighbors k.handle-improve(i,my-improve,cost)

81 Distributed Breakout HANDLE-IMPROVE(j, improve, eval) 1 received-improve[j] improve 2 if k neighbors received-improve[k] NONE 3 then SEND-OK 4 agent-view 5 k neighbors received-improve[k] NONE

82 Distributed Breakout SEND-OK() 1 if k neighbors my-improve received-improve[k] 2 then x i new-value 3 if cost > 0 k neighbors received-improve[k] 0 quasi-local opt. 4 then increase weight of constraint violations 5 k neighbors k.handle-ok?(i,x i )

83 Distributed Breakout Example

84 Distributed Breakout Example

85 Distributed Breakout Example

86 Distributed Breakout Example

87 Distributed Breakout Theorem (Distributed Breakout is not Complete) Distributed breakout can get stuck in local optima. Therefore, there are cases where a solution exists and it cannot find it. Proof. By example.

88 Distributed Breakout Theorem (Distributed Breakout is not Complete) Distributed breakout can get stuck in local optima. Therefore, there are cases where a solution exists and it cannot find it. Proof. By example. In practice, its really good.

89 Distributed Constraint Optimization Centralized Outline

90 Distributed Constraint Optimization Centralized Definition (Constraint Optimization Problem (COP)) Given variables x 1,x 2,...x n with domains D 1,D 2,...D n and a set of constraints P of the form pk(x k1,x k2,...,x kj ) R, find assignments for all the variables such that the sum of the constraint values is minimized.

91 Distributed Constraint Optimization Centralized BRANCH-AND-BOUND-COP() 1 c Minimum cost found. Global variable. 2 g Best solution found. Global variable. 3 BRANCH-AND-BOUND-COP-HELPER(1, ) 4 return g BRANCH-AND-BOUND-COP-HELPER(i, g) 1 if i = n 2 then if P(g) < c 3 then g g 4 c P(g) 5 return 6 for v D i 7 do g g + {x i v} 8 if P(g) < c 9 then BRANCH-AND-BOUND-COP-HELPER(i + 1,g )

92 Distributed Constraint Optimization Centralized Definition (Distributed Constraint Optimization Problem (DCOP)) Give each agent one of the variables in a COP. Agents are responsible for finding a value for their variable and can find out the values of their neighbors via communication

93 Distributed Constraint Optimization Adopt Outline

94 Distributed Constraint Optimization Adopt Remote Procedure Calls threshold tell children how much cost they can incur, ignore anything that costs more than that. value tell descendants what value agent sets itself to. cost tell parent lower and upper bounds of cost given the current value assignments of ancestors.

95 Distributed Constraint Optimization Adopt d i d j p(d i,d j ) p x 2 = 1 x 3 = 0 p p p x 1 = 0 x 4 = 1

96 Distributed Constraint Optimization Adopt x 1 = 0 d i d j p(d i,d j ) p p p x 2 = 0 p x 3 = 0 x 4 = 0

97 Distributed Constraint Optimization Adopt x 1 = 0 d i d j p(d i,d j ) value x 1 = 0 x 2 = 0 value x 1 = 0 value x 2 = 0 x 3 = 0 x 4 = 0

98 Distributed Constraint Optimization Adopt d i d j p(d i,d j ) cost 2,2 x 1 = 0 x 2 = 0 x 1 = 0 x 2 = 0 x 3 = 0 x 4 = 0 cost 1, x 1 = 0 cost 1,1 x 2 = 0

99 Distributed Constraint Optimization Adopt x 1 = 1 d i d j p(d i,d j ) value x 1 = 1 x 2 = 0 value x 1 = 1 x 3 = 0 x 4 = 0

100 Distributed Constraint Optimization Adopt d i d j p(d i,d j ) cost 2,2 x 1 = 1 x 2 = 0 x 1 = 1 x 2 = 1 cost 0, x 1 = 1 value x 2 = 1 x 3 = 1 x 4 = 0

101 Distributed Constraint Optimization Adopt d i d j p(d i,d j ) cost 0,0 x 1 = 1 x 2 = 1 x 1 = 1 x 2 = 1 x 3 = 1 x 4 = 1 cost 0,3 x 1 = 1 cost 0,0 x 2 = 1

102 Distributed Constraint Optimization Adopt d i d j p(d i,d j ) x 1 = 1 x 2 = 1 cost 0,0 x 1 = 1 x 3 = 1 x 4 = 1

103 Distributed Constraint Optimization OptAPO Outline

104 Distributed Constraint Optimization OptAPO

105 Distributed Constraint Optimization OptAPO

106 Distributed Constraint Optimization OptAPO

107 Distributed Constraint Optimization OptAPO

108 Distributed Constraint Optimization OptAPO

109 Distributed Constraint Optimization OptAPO

110 Distributed Constraint Optimization OptAPO Theorem (APO worst case is centralized search) In the worst case APO (OptAPO) will make one agent do a completely centralized search of the complete problem space. Proof. By example.

111 Distributed Constraint Optimization OptAPO Adopt versus OptAPO Adopt is better when communications are fast. OptAPO is better when communications are slow. Both have very bad worst-case but seem to perform well.

Termination Problem of the APO Algorithm

Termination Problem of the APO Algorithm Termination Problem of the APO Algorithm Tal Grinshpoun, Moshe Zazon, Maxim Binshtok, and Amnon Meisels Department of Computer Science Ben-Gurion University of the Negev Beer-Sheva, Israel Abstract. Asynchronous

More information

Multi-Agent Systems. Bernhard Nebel, Felix Lindner, and Thorsten Engesser. Summer Term Albert-Ludwigs-Universität Freiburg

Multi-Agent Systems. Bernhard Nebel, Felix Lindner, and Thorsten Engesser. Summer Term Albert-Ludwigs-Universität Freiburg Multi-Agent Systems Albert-Ludwigs-Universität Freiburg Bernhard Nebel, Felix Lindner, and Thorsten Engesser Summer Term 2017 Course outline 1 Introduction 2 Agent-Based Simulation 3 Agent Architectures

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems Chapter 5 AIMA2e Slides, Stuart Russell and Peter Norvig, Completed by Kazim Fouladi, Fall 2008 Chapter 5 1 Outline CSP examples Backtracking search for CSPs Problem structure

More information

Value-Ordering and Discrepancies. Ciaran McCreesh and Patrick Prosser

Value-Ordering and Discrepancies. Ciaran McCreesh and Patrick Prosser Value-Ordering and Discrepancies Maintaining Arc Consistency (MAC) Achieve (generalised) arc consistency (AC3, etc). If we have a domain wipeout, backtrack. If all domains have one value, we re done. Pick

More information

Appendix A. Formal Proofs

Appendix A. Formal Proofs Distributed Reasoning for Multiagent Simple Temporal Problems Appendix A Formal Proofs Throughout this paper, we provided proof sketches to convey the gist of the proof when presenting the full proof would

More information

Chapter 6 Constraint Satisfaction Problems

Chapter 6 Constraint Satisfaction Problems Chapter 6 Constraint Satisfaction Problems CS5811 - Artificial Intelligence Nilufer Onder Department of Computer Science Michigan Technological University Outline CSP problem definition Backtracking search

More information

Kruskal s Theorem Rebecca Robinson May 29, 2007

Kruskal s Theorem Rebecca Robinson May 29, 2007 Kruskal s Theorem Rebecca Robinson May 29, 2007 Kruskal s Theorem Rebecca Robinson 1 Quasi-ordered set A set Q together with a relation is quasi-ordered if is: reflexive (a a); and transitive (a b c a

More information

Introduction to Arti Intelligence

Introduction to Arti Intelligence Introduction to Arti Intelligence cial Lecture 4: Constraint satisfaction problems 1 / 48 Constraint satisfaction problems: Today Exploiting the representation of a state to accelerate search. Backtracking.

More information

Alpha-Beta Pruning: Algorithm and Analysis

Alpha-Beta Pruning: Algorithm and Analysis Alpha-Beta Pruning: Algorithm and Analysis Tsan-sheng Hsu tshsu@iis.sinica.edu.tw http://www.iis.sinica.edu.tw/~tshsu 1 Introduction Alpha-beta pruning is the standard searching procedure used for 2-person

More information

The exam is closed book, closed calculator, and closed notes except your one-page crib sheet.

The exam is closed book, closed calculator, and closed notes except your one-page crib sheet. CS 188 Spring 2017 Introduction to Artificial Intelligence Midterm V2 You have approximately 80 minutes. The exam is closed book, closed calculator, and closed notes except your one-page crib sheet. Mark

More information

Impossibility of Distributed Consensus with One Faulty Process

Impossibility of Distributed Consensus with One Faulty Process Impossibility of Distributed Consensus with One Faulty Process Journal of the ACM 32(2):374-382, April 1985. MJ Fischer, NA Lynch, MS Peterson. Won the 2002 Dijkstra Award (for influential paper in distributed

More information

Lecture 9: Search 8. Victor R. Lesser. CMPSCI 683 Fall 2010

Lecture 9: Search 8. Victor R. Lesser. CMPSCI 683 Fall 2010 Lecture 9: Search 8 Victor R. Lesser CMPSCI 683 Fall 2010 ANNOUNCEMENTS REMEMBER LECTURE ON TUESDAY! EXAM ON OCTOBER 18 OPEN BOOK ALL MATERIAL COVERED IN LECTURES REQUIRED READINGS WILL MOST PROBABLY NOT

More information

PROBLEM SOLVING AND SEARCH IN ARTIFICIAL INTELLIGENCE

PROBLEM SOLVING AND SEARCH IN ARTIFICIAL INTELLIGENCE Artificial Intelligence, Computational Logic PROBLEM SOLVING AND SEARCH IN ARTIFICIAL INTELLIGENCE Lecture 4 Metaheuristic Algorithms Sarah Gaggl Dresden, 5th May 2017 Agenda 1 Introduction 2 Constraint

More information

Constraint sat. prob. (Ch. 6)

Constraint sat. prob. (Ch. 6) Constraint sat. prob. (Ch. 6) ypes of constraints ry to do this job problem with: J1, J2 and J3 Jobs cannot overlap J3 takes 3 time units J2 takes 2 time units J1 takes 1 time unit J1 must happen before

More information

A.I.: Beyond Classical Search

A.I.: Beyond Classical Search A.I.: Beyond Classical Search Random Sampling Trivial Algorithms Generate a state randomly Random Walk Randomly pick a neighbor of the current state Both algorithms asymptotically complete. Overview Previously

More information

Alpha-Beta Pruning: Algorithm and Analysis

Alpha-Beta Pruning: Algorithm and Analysis Alpha-Beta Pruning: Algorithm and Analysis Tsan-sheng Hsu tshsu@iis.sinica.edu.tw http://www.iis.sinica.edu.tw/~tshsu 1 Introduction Alpha-beta pruning is the standard searching procedure used for solving

More information

Chapter 7 R&N ICS 271 Fall 2017 Kalev Kask

Chapter 7 R&N ICS 271 Fall 2017 Kalev Kask Set 6: Knowledge Representation: The Propositional Calculus Chapter 7 R&N ICS 271 Fall 2017 Kalev Kask Outline Representing knowledge using logic Agent that reason logically A knowledge based agent Representing

More information

On Stabilizing Departures in Overlay Networks

On Stabilizing Departures in Overlay Networks On Stabilizing Departures in Overlay Networks Dianne Foreback 1, Andreas Koutsopoulos 2, Mikhail Nesterenko 1, Christian Scheideler 2, and Thim Strothmann 2 1 Kent State University 2 University of Paderborn

More information

Alpha-Beta Pruning: Algorithm and Analysis

Alpha-Beta Pruning: Algorithm and Analysis Alpha-Beta Pruning: Algorithm and Analysis Tsan-sheng Hsu tshsu@iis.sinica.edu.tw http://www.iis.sinica.edu.tw/~tshsu 1 Introduction Alpha-beta pruning is the standard searching procedure used for 2-person

More information

Methods for finding optimal configurations

Methods for finding optimal configurations CS 1571 Introduction to AI Lecture 9 Methods for finding optimal configurations Milos Hauskrecht milos@cs.pitt.edu 5329 Sennott Square Search for the optimal configuration Optimal configuration search:

More information

The exam is closed book, closed calculator, and closed notes except your one-page crib sheet.

The exam is closed book, closed calculator, and closed notes except your one-page crib sheet. CS 188 Spring 2017 Introduction to Artificial Intelligence Midterm V2 You have approximately 80 minutes. The exam is closed book, closed calculator, and closed notes except your one-page crib sheet. Mark

More information

Final Exam December 12, 2017

Final Exam December 12, 2017 Introduction to Artificial Intelligence CSE 473, Autumn 2017 Dieter Fox Final Exam December 12, 2017 Directions This exam has 7 problems with 111 points shown in the table below, and you have 110 minutes

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LECTURE 5 Greedy Algorithms Interval Scheduling Interval Partitioning Guest lecturer: Martin Furer Review In a DFS tree of an undirected graph, can there be an edge (u,v)

More information

Constraint satisfaction search. Combinatorial optimization search.

Constraint satisfaction search. Combinatorial optimization search. CS 1571 Introduction to AI Lecture 8 Constraint satisfaction search. Combinatorial optimization search. Milos Hauskrecht milos@cs.pitt.edu 539 Sennott Square Constraint satisfaction problem (CSP) Objective:

More information

Lecture 9: The Splitting Method for SAT

Lecture 9: The Splitting Method for SAT Lecture 9: The Splitting Method for SAT 1 Importance of SAT Cook-Levin Theorem: SAT is NP-complete. The reason why SAT is an important problem can be summarized as below: 1. A natural NP-Complete problem.

More information

CS 4100 // artificial intelligence. Recap/midterm review!

CS 4100 // artificial intelligence. Recap/midterm review! CS 4100 // artificial intelligence instructor: byron wallace Recap/midterm review! Attribution: many of these slides are modified versions of those distributed with the UC Berkeley CS188 materials Thanks

More information

Final Exam December 12, 2017

Final Exam December 12, 2017 Introduction to Artificial Intelligence CSE 473, Autumn 2017 Dieter Fox Final Exam December 12, 2017 Directions This exam has 7 problems with 111 points shown in the table below, and you have 110 minutes

More information

Machine Learning 4771

Machine Learning 4771 Machine Learning 4771 Instructor: Tony Jebara Topic 16 Undirected Graphs Undirected Separation Inferring Marginals & Conditionals Moralization Junction Trees Triangulation Undirected Graphs Separation

More information

Distributed Computing in Shared Memory and Networks

Distributed Computing in Shared Memory and Networks Distributed Computing in Shared Memory and Networks Class 2: Consensus WEP 2018 KAUST This class Reaching agreement in shared memory: Consensus ü Impossibility of wait-free consensus 1-resilient consensus

More information

Notes for Lecture Notes 2

Notes for Lecture Notes 2 Stanford University CS254: Computational Complexity Notes 2 Luca Trevisan January 11, 2012 Notes for Lecture Notes 2 In this lecture we define NP, we state the P versus NP problem, we prove that its formulation

More information

Finding optimal configurations ( combinatorial optimization)

Finding optimal configurations ( combinatorial optimization) CS 1571 Introduction to AI Lecture 10 Finding optimal configurations ( combinatorial optimization) Milos Hauskrecht milos@cs.pitt.edu 539 Sennott Square Constraint satisfaction problem (CSP) Constraint

More information

IS-ZC444: ARTIFICIAL INTELLIGENCE

IS-ZC444: ARTIFICIAL INTELLIGENCE IS-ZC444: ARTIFICIAL INTELLIGENCE Lecture-07: Beyond Classical Search Dr. Kamlesh Tiwari Assistant Professor Department of Computer Science and Information Systems, BITS Pilani, Pilani, Jhunjhunu-333031,

More information

Distributed Consensus

Distributed Consensus Distributed Consensus Reaching agreement is a fundamental problem in distributed computing. Some examples are Leader election / Mutual Exclusion Commit or Abort in distributed transactions Reaching agreement

More information

Distributed Problem Solving and the Boundaries of Self-Configuration in Multi-hop Wireless Networks

Distributed Problem Solving and the Boundaries of Self-Configuration in Multi-hop Wireless Networks 0-7695-1435-9/02 $17.00 (c) 2002 IEEE 1 Distributed Problem Solving and the Boundaries of Self-Configuration in Multi-hop Wireless Networks Bhaskar Krishnamachari, Ramón Béjar, and Stephen Wicker School

More information

Summary. Local Search and cycle cut set. Local Search Strategies for CSP. Greedy Local Search. Local Search. and Cycle Cut Set. Strategies for CSP

Summary. Local Search and cycle cut set. Local Search Strategies for CSP. Greedy Local Search. Local Search. and Cycle Cut Set. Strategies for CSP Summary Greedy and cycle cut set Greedy... in short G.B. Shaw A life spent doing mistakes is not only more honorable, but more useful than a life spent doing nothing Reminder: Hill-climbing Algorithm function

More information

COS597D: Information Theory in Computer Science October 19, Lecture 10

COS597D: Information Theory in Computer Science October 19, Lecture 10 COS597D: Information Theory in Computer Science October 9, 20 Lecture 0 Lecturer: Mark Braverman Scribe: Andrej Risteski Kolmogorov Complexity In the previous lectures, we became acquainted with the concept

More information

AGREEMENT PROBLEMS (1) Agreement problems arise in many practical applications:

AGREEMENT PROBLEMS (1) Agreement problems arise in many practical applications: AGREEMENT PROBLEMS (1) AGREEMENT PROBLEMS Agreement problems arise in many practical applications: agreement on whether to commit or abort the results of a distributed atomic action (e.g. database transaction)

More information

CMPSCI 611 Advanced Algorithms Midterm Exam Fall 2015

CMPSCI 611 Advanced Algorithms Midterm Exam Fall 2015 NAME: CMPSCI 611 Advanced Algorithms Midterm Exam Fall 015 A. McGregor 1 October 015 DIRECTIONS: Do not turn over the page until you are told to do so. This is a closed book exam. No communicating with

More information

Logical Agents. Chapter 7

Logical Agents. Chapter 7 Logical Agents Chapter 7 Outline Knowledge-based agents Wumpus world Logic in general - models and entailment Propositional (Boolean) logic Equivalence, validity, satisfiability Inference rules and theorem

More information

Theoretical Foundations of the UML Lecture 18: Statecharts Semantics (1)

Theoretical Foundations of the UML Lecture 18: Statecharts Semantics (1) Theoretical Foundations of the UML Lecture 18: Statecharts Semantics (1) Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group http://moves.rwth-aachen.de/teaching/ws-1415/uml/

More information

Pengju

Pengju Introduction to AI Chapter04 Beyond Classical Search Pengju Ren@IAIR Outline Steepest Descent (Hill-climbing) Simulated Annealing Evolutionary Computation Non-deterministic Actions And-OR search Partial

More information

Local and Stochastic Search

Local and Stochastic Search RN, Chapter 4.3 4.4; 7.6 Local and Stochastic Search Some material based on D Lin, B Selman 1 Search Overview Introduction to Search Blind Search Techniques Heuristic Search Techniques Constraint Satisfaction

More information

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Matroids and Greedy Algorithms Date: 10/31/16

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Matroids and Greedy Algorithms Date: 10/31/16 60.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Matroids and Greedy Algorithms Date: 0/3/6 6. Introduction We talked a lot the last lecture about greedy algorithms. While both Prim

More information

Lecture 10: Lovász Local Lemma. Lovász Local Lemma

Lecture 10: Lovász Local Lemma. Lovász Local Lemma Lecture 10: Introduction Let A 1,..., A n be indicator variables for bad events in an experiment Suppose P [A i ] p We want to avoid all the bad events If P [ A 1 A n ] > 0, then there exists a way to

More information

CS 453 Operating Systems. Lecture 7 : Deadlock

CS 453 Operating Systems. Lecture 7 : Deadlock CS 453 Operating Systems Lecture 7 : Deadlock 1 What is Deadlock? Every New Yorker knows what a gridlock alert is - it s one of those days when there is so much traffic that nobody can move. Everything

More information

Logical Agents. Outline

Logical Agents. Outline Logical Agents *(Chapter 7 (Russel & Norvig, 2004)) Outline Knowledge-based agents Wumpus world Logic in general - models and entailment Propositional (Boolean) logic Equivalence, validity, satisfiability

More information

Introduction to Computer Science and Programming for Astronomers

Introduction to Computer Science and Programming for Astronomers Introduction to Computer Science and Programming for Astronomers Lecture 8. István Szapudi Institute for Astronomy University of Hawaii March 7, 2018 Outline Reminder 1 Reminder 2 3 4 Reminder We have

More information

Decision Trees. Lewis Fishgold. (Material in these slides adapted from Ray Mooney's slides on Decision Trees)

Decision Trees. Lewis Fishgold. (Material in these slides adapted from Ray Mooney's slides on Decision Trees) Decision Trees Lewis Fishgold (Material in these slides adapted from Ray Mooney's slides on Decision Trees) Classification using Decision Trees Nodes test features, there is one branch for each value of

More information

The Impossibility of Certain Types of Carmichael Numbers

The Impossibility of Certain Types of Carmichael Numbers The Impossibility of Certain Types of Carmichael Numbers Thomas Wright Abstract This paper proves that if a Carmichael number is composed of primes p i, then the LCM of the p i 1 s can never be of the

More information

Definition: A "system" of equations is a set or collection of equations that you deal with all together at once.

Definition: A system of equations is a set or collection of equations that you deal with all together at once. System of Equations Definition: A "system" of equations is a set or collection of equations that you deal with all together at once. There is both an x and y value that needs to be solved for Systems

More information

Math 38: Graph Theory Spring 2004 Dartmouth College. On Writing Proofs. 1 Introduction. 2 Finding A Solution

Math 38: Graph Theory Spring 2004 Dartmouth College. On Writing Proofs. 1 Introduction. 2 Finding A Solution Math 38: Graph Theory Spring 2004 Dartmouth College 1 Introduction On Writing Proofs What constitutes a well-written proof? A simple but rather vague answer is that a well-written proof is both clear and

More information

Unreliable Failure Detectors for Reliable Distributed Systems

Unreliable Failure Detectors for Reliable Distributed Systems Unreliable Failure Detectors for Reliable Distributed Systems A different approach Augment the asynchronous model with an unreliable failure detector for crash failures Define failure detectors in terms

More information

Exact and Approximate Equilibria for Optimal Group Network Formation

Exact and Approximate Equilibria for Optimal Group Network Formation Exact and Approximate Equilibria for Optimal Group Network Formation Elliot Anshelevich and Bugra Caskurlu Computer Science Department, RPI, 110 8th Street, Troy, NY 12180 {eanshel,caskub}@cs.rpi.edu Abstract.

More information

A New Upper Bound for Max-2-SAT: A Graph-Theoretic Approach

A New Upper Bound for Max-2-SAT: A Graph-Theoretic Approach A New Upper Bound for Max-2-SAT: A Graph-Theoretic Approach Daniel Raible & Henning Fernau University of Trier, FB 4 Abteilung Informatik, 54286 Trier, Germany {raible,fernau}@informatik.uni-trier.de Abstract.

More information

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved.

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved. Chapter 11 Approximation Algorithms Slides by Kevin Wayne. Copyright @ 2005 Pearson-Addison Wesley. All rights reserved. 1 Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should

More information

Lecture 4 October 18th

Lecture 4 October 18th Directed and undirected graphical models Fall 2017 Lecture 4 October 18th Lecturer: Guillaume Obozinski Scribe: In this lecture, we will assume that all random variables are discrete, to keep notations

More information

CS 380: ARTIFICIAL INTELLIGENCE

CS 380: ARTIFICIAL INTELLIGENCE CS 380: RTIFICIL INTELLIGENCE PREDICTE LOGICS 11/8/2013 Santiago Ontañón santi@cs.drexel.edu https://www.cs.drexel.edu/~santi/teaching/2013/cs380/intro.html Summary of last day: Logical gents: The can

More information

Math 203A - Solution Set 1

Math 203A - Solution Set 1 Math 203A - Solution Set 1 Problem 1. Show that the Zariski topology on A 2 is not the product of the Zariski topologies on A 1 A 1. Answer: Clearly, the diagonal Z = {(x, y) : x y = 0} A 2 is closed in

More information

Theoretical Computer Science. Partially dynamic efficient algorithms for distributed shortest paths

Theoretical Computer Science. Partially dynamic efficient algorithms for distributed shortest paths Theoretical Computer Science 411 (2010) 1013 1037 Contents lists available at ScienceDirect Theoretical Computer Science journal homepage: www.elsevier.com/locate/tcs Partially dynamic efficient algorithms

More information

Self-Stabilizing Silent Disjunction in an Anonymous Network

Self-Stabilizing Silent Disjunction in an Anonymous Network Self-Stabilizing Silent Disjunction in an Anonymous Network Ajoy K. Datta 1, Stéphane Devismes 2, and Lawrence L. Larmore 1 1 Department of Computer Science, University of Nevada Las Vegas, USA 2 VERIMAG

More information

CSE 591 Foundations of Algorithms Homework 4 Sample Solution Outlines. Problem 1

CSE 591 Foundations of Algorithms Homework 4 Sample Solution Outlines. Problem 1 CSE 591 Foundations of Algorithms Homework 4 Sample Solution Outlines Problem 1 (a) Consider the situation in the figure, every edge has the same weight and V = n = 2k + 2. Easy to check, every simple

More information

Constraint Satisfaction [RN2] Sec [RN3] Sec Outline

Constraint Satisfaction [RN2] Sec [RN3] Sec Outline Constraint Satisfaction [RN2] Sec 5.1-5.2 [RN3] Sec 6.1-6.3 CS 486/686 Lecture 4: Jan 12, 2012 University of Waterloo 1 Outline What are CSPs? Standard search and CSPs Improvements Backtracking Backtracking

More information

Constraint Satisfaction

Constraint Satisfaction Constraint Satisfaction CS 486/686 May 16, 2006 University of Waterloo 1 Outline What are CSPs? Standard search and CSPs Improvements Backtracking Backtracking + heuristics Forward checking 2 Introduction

More information

The Weakest Failure Detector to Solve Mutual Exclusion

The Weakest Failure Detector to Solve Mutual Exclusion The Weakest Failure Detector to Solve Mutual Exclusion Vibhor Bhatt Nicholas Christman Prasad Jayanti Dartmouth College, Hanover, NH Dartmouth Computer Science Technical Report TR2008-618 April 17, 2008

More information

Local Search and Optimization

Local Search and Optimization Local Search and Optimization Outline Local search techniques and optimization Hill-climbing Gradient methods Simulated annealing Genetic algorithms Issues with local search Local search and optimization

More information

Data Structures and Algorithms

Data Structures and Algorithms Data Structures and Algorithms CS245-2015S-23 NP-Completeness and Undecidablity David Galles Department of Computer Science University of San Francisco 23-0: Hard Problems Some algorithms take exponential

More information

Dominating Set. Chapter 26

Dominating Set. Chapter 26 Chapter 26 Dominating Set In this chapter we present another randomized algorithm that demonstrates the power of randomization to break symmetries. We study the problem of finding a small dominating set

More information

Dominating Set. Chapter Sequential Greedy Algorithm 294 CHAPTER 26. DOMINATING SET

Dominating Set. Chapter Sequential Greedy Algorithm 294 CHAPTER 26. DOMINATING SET 294 CHAPTER 26. DOMINATING SET 26.1 Sequential Greedy Algorithm Chapter 26 Dominating Set Intuitively, to end up with a small dominating set S, nodes in S need to cover as many neighbors as possible. It

More information

Causal Consistency for Geo-Replicated Cloud Storage under Partial Replication

Causal Consistency for Geo-Replicated Cloud Storage under Partial Replication Causal Consistency for Geo-Replicated Cloud Storage under Partial Replication Min Shen, Ajay D. Kshemkalyani, TaYuan Hsu University of Illinois at Chicago Min Shen, Ajay D. Kshemkalyani, TaYuan Causal

More information

Fibonacci (Min-)Heap. (I draw dashed lines in place of of circular lists.) 1 / 17

Fibonacci (Min-)Heap. (I draw dashed lines in place of of circular lists.) 1 / 17 Fibonacci (Min-)Heap A forest of heap-order trees (parent priority child priority). Roots in circular doubly-linked list. Pointer to minimum-priority root. Siblings in circular doubly-linked list; parent

More information

Induction; Operational Semantics. Fall Software Foundations CIS 500

Induction; Operational Semantics. Fall Software Foundations CIS 500 CIS 500 Software Foundations Fall 2005 Induction; Operational Semantics CIS 500, Induction; Operational Semantics 1 Announcements Review recitations start this week. You may go to any recitation section

More information

Intelligent Agents. Pınar Yolum Utrecht University

Intelligent Agents. Pınar Yolum Utrecht University Intelligent Agents Pınar Yolum p.yolum@uu.nl Utrecht University Logical Agents (Based mostly on the course slides from http://aima.cs.berkeley.edu/) Outline Knowledge-based agents Wumpus world Logic in

More information

Algebraic geometry of the ring of continuous functions

Algebraic geometry of the ring of continuous functions Algebraic geometry of the ring of continuous functions Nicolas Addington October 27 Abstract Maximal ideals of the ring of continuous functions on a compact space correspond to points of the space. For

More information

Agreement. Today. l Coordination and agreement in group communication. l Consensus

Agreement. Today. l Coordination and agreement in group communication. l Consensus Agreement Today l Coordination and agreement in group communication l Consensus Events and process states " A distributed system a collection P of N singlethreaded processes w/o shared memory Each process

More information

Final. Introduction to Artificial Intelligence. CS 188 Spring You have approximately 2 hours and 50 minutes.

Final. Introduction to Artificial Intelligence. CS 188 Spring You have approximately 2 hours and 50 minutes. CS 188 Spring 2014 Introduction to Artificial Intelligence Final You have approximately 2 hours and 50 minutes. The exam is closed book, closed notes except your two-page crib sheet. Mark your answers

More information

Math 203A - Solution Set 1

Math 203A - Solution Set 1 Math 203A - Solution Set 1 Problem 1. Show that the Zariski topology on A 2 is not the product of the Zariski topologies on A 1 A 1. Answer: Clearly, the diagonal Z = {(x, y) : x y = 0} A 2 is closed in

More information

PETER A. CHOLAK, PETER GERDES, AND KAREN LANGE

PETER A. CHOLAK, PETER GERDES, AND KAREN LANGE D-MAXIMAL SETS PETER A. CHOLAK, PETER GERDES, AND KAREN LANGE Abstract. Soare [23] proved that the maximal sets form an orbit in E. We consider here D-maximal sets, generalizations of maximal sets introduced

More information

Propositional inference, propositional agents

Propositional inference, propositional agents ropositional inference, propositional agents Chapter 7.5 7.7 Chapter 7.5 7.7 1 Outline Inference rules and theorem proving forward chaining backward chaining resolution Efficient model checking algorithms

More information

MA 3280 Lecture 05 - Generalized Echelon Form and Free Variables. Friday, January 31, 2014.

MA 3280 Lecture 05 - Generalized Echelon Form and Free Variables. Friday, January 31, 2014. MA 3280 Lecture 05 - Generalized Echelon Form and Free Variables Friday, January 31, 2014. Objectives: Generalize echelon form, and introduce free variables. Material from Section 3.5 starting on page

More information

Math Models of OR: Branch-and-Bound

Math Models of OR: Branch-and-Bound Math Models of OR: Branch-and-Bound John E. Mitchell Department of Mathematical Sciences RPI, Troy, NY 12180 USA November 2018 Mitchell Branch-and-Bound 1 / 15 Branch-and-Bound Outline 1 Branch-and-Bound

More information

Private and Verifiable Interdomain Routing Decisions. Proofs of Correctness

Private and Verifiable Interdomain Routing Decisions. Proofs of Correctness Technical Report MS-CIS-12-10 Private and Verifiable Interdomain Routing Decisions Proofs of Correctness Mingchen Zhao University of Pennsylvania Andreas Haeberlen University of Pennsylvania Wenchao Zhou

More information

Fault-Tolerant Consensus

Fault-Tolerant Consensus Fault-Tolerant Consensus CS556 - Panagiota Fatourou 1 Assumptions Consensus Denote by f the maximum number of processes that may fail. We call the system f-resilient Description of the Problem Each process

More information

CS154, Lecture 10: Rice s Theorem, Oracle Machines

CS154, Lecture 10: Rice s Theorem, Oracle Machines CS154, Lecture 10: Rice s Theorem, Oracle Machines Moral: Analyzing Programs is Really, Really Hard But can we more easily tell when some program analysis problem is undecidable? Problem 1 Undecidable

More information

Consensus and Universal Construction"

Consensus and Universal Construction Consensus and Universal Construction INF346, 2015 So far Shared-memory communication: safe bits => multi-valued atomic registers atomic registers => atomic/immediate snapshot 2 Today Reaching agreement

More information

Propositional Logic. What is discrete math? Tautology, equivalence, and inference. Applications

Propositional Logic. What is discrete math? Tautology, equivalence, and inference. Applications What is discrete math? Propositional Logic The real numbers are continuous in the senses that: between any two real numbers there is a real number The integers do not share this property. In this sense

More information

Computational Learning Theory. Definitions

Computational Learning Theory. Definitions Computational Learning Theory Computational learning theory is interested in theoretical analyses of the following issues. What is needed to learn effectively? Sample complexity. How many examples? Computational

More information

Searching in non-deterministic, partially observable and unknown environments

Searching in non-deterministic, partially observable and unknown environments Searching in non-deterministic, partially observable and unknown environments CE417: Introduction to Artificial Intelligence Sharif University of Technology Spring 2014 Soleymani Artificial Intelligence:

More information

Exact Algorithms for Dominating Induced Matching Based on Graph Partition

Exact Algorithms for Dominating Induced Matching Based on Graph Partition Exact Algorithms for Dominating Induced Matching Based on Graph Partition Mingyu Xiao School of Computer Science and Engineering University of Electronic Science and Technology of China Chengdu 611731,

More information

Network Algorithms and Complexity (NTUA-MPLA) Reliable Broadcast. Aris Pagourtzis, Giorgos Panagiotakos, Dimitris Sakavalas

Network Algorithms and Complexity (NTUA-MPLA) Reliable Broadcast. Aris Pagourtzis, Giorgos Panagiotakos, Dimitris Sakavalas Network Algorithms and Complexity (NTUA-MPLA) Reliable Broadcast Aris Pagourtzis, Giorgos Panagiotakos, Dimitris Sakavalas Slides are partially based on the joint work of Christos Litsas, Aris Pagourtzis,

More information

Algorithms. NP -Complete Problems. Dong Kyue Kim Hanyang University

Algorithms. NP -Complete Problems. Dong Kyue Kim Hanyang University Algorithms NP -Complete Problems Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr The Class P Definition 13.2 Polynomially bounded An algorithm is said to be polynomially bounded if its worst-case

More information

EE562 ARTIFICIAL INTELLIGENCE FOR ENGINEERS

EE562 ARTIFICIAL INTELLIGENCE FOR ENGINEERS EE562 ARTIFICIAL INTELLIGENCE FOR ENGINEERS Lecture 10, 5/9/2005 University of Washington, Department of Electrical Engineering Spring 2005 Instructor: Professor Jeff A. Bilmes Logical Agents Chapter 7

More information

1 Lecture 25: Extreme values

1 Lecture 25: Extreme values 1 Lecture 25: Extreme values 1.1 Outline Absolute maximum and minimum. Existence on closed, bounded intervals. Local extrema, critical points, Fermat s theorem Extreme values on a closed interval Rolle

More information

Guest lecturer: Mark Reynolds, The University of Western Australia. May 7, 2014

Guest lecturer: Mark Reynolds, The University of Western Australia. May 7, 2014 Università degli studi di Udine Laurea Magistrale: Informatica Lectures for April/May 2014 La verifica del software: temporal logic Lecture 03 LTL tableau continued Guest lecturer: Mark Reynolds, The University

More information

Denotational Semantics of Programs. : SimpleExp N.

Denotational Semantics of Programs. : SimpleExp N. Models of Computation, 2010 1 Denotational Semantics of Programs Denotational Semantics of SimpleExp We will define the denotational semantics of simple expressions using a function : SimpleExp N. Denotational

More information

ALGEBRAIC GEOMETRY COURSE NOTES, LECTURE 2: HILBERT S NULLSTELLENSATZ.

ALGEBRAIC GEOMETRY COURSE NOTES, LECTURE 2: HILBERT S NULLSTELLENSATZ. ALGEBRAIC GEOMETRY COURSE NOTES, LECTURE 2: HILBERT S NULLSTELLENSATZ. ANDREW SALCH 1. Hilbert s Nullstellensatz. The last lecture left off with the claim that, if J k[x 1,..., x n ] is an ideal, then

More information

Decision Tree Learning

Decision Tree Learning Decision Tree Learning Berlin Chen Department of Computer Science & Information Engineering National Taiwan Normal University References: 1. Machine Learning, Chapter 3 2. Data Mining: Concepts, Models,

More information

Logical Inference. Artificial Intelligence. Topic 12. Reading: Russell and Norvig, Chapter 7, Section 5

Logical Inference. Artificial Intelligence. Topic 12. Reading: Russell and Norvig, Chapter 7, Section 5 rtificial Intelligence Topic 12 Logical Inference Reading: Russell and Norvig, Chapter 7, Section 5 c Cara MacNish. Includes material c S. Russell & P. Norvig 1995,2003 with permission. CITS4211 Logical

More information

Intelligent Agents. Formal Characteristics of Planning. Ute Schmid. Cognitive Systems, Applied Computer Science, Bamberg University

Intelligent Agents. Formal Characteristics of Planning. Ute Schmid. Cognitive Systems, Applied Computer Science, Bamberg University Intelligent Agents Formal Characteristics of Planning Ute Schmid Cognitive Systems, Applied Computer Science, Bamberg University Extensions to the slides for chapter 3 of Dana Nau with contributions by

More information

Constraint Satisfaction 101

Constraint Satisfaction 101 Constraint Satisfaction 101 Berthe Y. Choueiry (Shu-we-ri) Nov 14, 2006 Constraint Satisfaction 101 1 Constraint Processing Constraint Satisfaction Computational problem Constraint Satisfaction Problem

More information

CSE613: Parallel Programming, Spring 2012 Date: May 11. Final Exam. ( 11:15 AM 1:45 PM : 150 Minutes )

CSE613: Parallel Programming, Spring 2012 Date: May 11. Final Exam. ( 11:15 AM 1:45 PM : 150 Minutes ) CSE613: Parallel Programming, Spring 2012 Date: May 11 Final Exam ( 11:15 AM 1:45 PM : 150 Minutes ) This exam will account for either 10% or 20% of your overall grade depending on your relative performance

More information