90 likes | 186 Views
Computer Science & Engineering, University of Nevada, Reno. CS483/683 Multi-Agent Systems. Lecture 2: Distributed variants of 2 important AI problems: Search and Constraint Satisfaction. 21 January 2010 Instructor: Kostas Bekris. Search on a Graph. Consider a weighted directed graph
E N D
Computer Science & Engineering, University of Nevada, Reno CS483/683 Multi-Agent Systems • Lecture 2: • Distributed variants of 2 important AI problems: • Search and • Constraint Satisfaction 21 January 2010 Instructor: Kostas Bekris
Search on a Graph • Consider a weighted directed graph • n nodes N • directed links L • a weight function w: L → R+ • a start node s ∈ N • a goal node t ∈ N or more generally a set of goal nodes T ⊂ N 2 a d 1 1 2 s t 1 1 0 3 3 c b 2 • Objective: Find a directed path from s to t having minimal total weight. • Difference from typical AI view of the problem: • Distributed solutions • Each node performs only a local computation • Each node has access only to the state of its neighbors
3 ∞ 1 1 2 2 a a d d 1 1 1 1 2 2 s s t t ∞ ∞ 1 1 1 1 0 0 3 3 3 3 c c b b 2 2 ∞ 3 3 2 Distributed Path Planning • procedureASYNCHDP • if i is a goal node then • h(i) ← 0 • else • h(i) ←∞ • repeat • forall neighbors j do • f(j) ← w(i,j) + h(j) • h(i) ← minj f(j) ∞ ∞ 2 a d 1 1 2 s t ∞ 1 1 0 3 3 c b 2 ∞ ∞
0 0 3 a d 1 2 2 s t 0 2 3 0 2 5 c b 3 0 0 Learning Real-Time A* • procedure LRTA* • i ← s • while i is not a goal node do • foreach neighbor j do • f(j) ← w(i,j) + h(j) • i’ ← argminj f(j) • h(i) ← max(h(i),f(i’)) • i ← i’
4 4 4 2 1 1 1 1 3 3 3 3 a a a a d d d d 1 1 1 1 2 2 2 2 2 2 2 2 s s s s t t t t 5 2 4 4 2 2 2 2 3 3 3 3 0 0 0 0 2 2 2 2 5 5 5 5 c c c c b b b b 3 3 3 3 3 3 2 2 0 4 0 4 Learning Real-time A*
2 4 4 1 1 1 3 3 3 a a a d d d 1 1 1 2 2 2 2 2 2 s s s t t t 4 2 5 2 2 2 3 3 3 0 0 0 2 2 2 5 5 5 c c c b b b 3 3 3 3 3 2 4 0 4 Learning Real-Time A* - Multiple Agents
Distributed Constraint Satisfaction • Example: Sensor Networks • Multiple processing units: • local sensing capabilities • limited processing power • limiter power supply • limited communication bandwidth • Must provide, however, a global • service as a team • What algorithm should each agent • run so that the center can still • piece together a reliable global • picture?
Running example: 3 sensors • Three sensors with overlapping • coverage regions • Each sensor can choose 1 of 3 • possible frequencies • All frequencies work well as long as no two • sensors with overlapping coverage areas share the same frequency • Sensors have to decide frequencies for themselves • Abstraction: Graph Coloring Problem • Nodes: Sensors • Frequencies: Colors • Edges: If corresponding nodes share coverage area • Choose a color for each node so that no • 2 neighboring nodes have same color {red, blue, green} ≠ ≠ ≠ {red, blue, green} {red, blue, green}
Distributed CSP • Two types of algorithms • A least-commitment approach: Domain Pruning • Rule out impossible values without losing any possible solutions • More exploratory techniques: Heuristic Search • Select tentative variable values, backtracking when these choices prove unsuccessful