Information Technology Reference
In-Depth Information
Complete-Search( allocation - from - parent )
1
global - utility ← 0
2
final - allocation ←∅
cleared - goods ← b∈allocation - from - parent b g
3
4
valid - bid - pool ←{b ∈ bid - pool
|∀ g∈b g b∈ cleared - goods }
5
if child =
Iamleaf.
6
then final - allocation ← allocation - from - parent ∪ arg max b∈valid - bid - pool w ( b )
7
return final - allocation
8
if valid - bid - pool =
9
then final - allocation ← child . Complete-Search( allocation - from - parent )
10
else
11
for bid ∈ valid - bid - pool
12
do new - allocation ← allocation - from - parent ∪ bid
13
allocation - from - successor ← child . successor( new - allocation )
14
if V ( allocation - from - successor ) >V ( global - utility )
15
then global - utility ← V ( allocation - from - successor )
16
final - allocation ← new - allocation
17
return final - allocation
Fig. 1. Complete search algorithm. It is started by calling the root agent with
Complete-Search( ).
- bid - pool is the list of bids in which it is present,
- final - allocation is the best allocation encountered thus far in the execution,
- global - utility is the utility of the final-allocation,
Each agent adds zero-valued singleton bid for itself, even if a singleton bid is
present in the list of bids. This bid enables the agent to search for the allocations
where the agent is not cleared in any bid. The head agent (whose execution is
initiated by the controller 3 ) does not have any parent. Similarly the last agent
in the ordering does not have a child agent so it does not send a message to child
or wait for a reply. The agents search all the possible allocations to determine
the optimal winner, see Figure 1.
We can prove the correctness of this algorithm by observing that the algo-
rithm is performing a linear search of all the feasible allocations 4 . The agents
simply implement a depth first search over all possible bid sets except that they
only check feasible bid sets. As such, this algorithm sequentializes the agents'
execution so it has a long running time.
5
Individual Hill-Climbing Algorithm
We now present an algorithm that creates a feasible allocation using a simple
hill-climbing approach. In this approach, the agents simply clear bids in a greedy
3 The controller does not control any agents, it simply initiates the execution of the
head agent.
4 Proofs omitted due to lack of space.
Search WWH ::




Custom Search