• No se han encontrado resultados

In order to conserve the economic properties of the TBM discussed in section 6.6, it is imperative that the algorithms used to determine the allocation produce the allocation that maximises the expected utility (i.e. the algorithm needs to solve the optimisation problem presented in equation 6.8 exactly). This restricts our scope since we cannot use approximate algorithms such as those developed by [Parkes and Schneidman, 2004; Lehmann et al., 2002].

The search space of the optimisation problem we seek to solve can be represented graphically as shown in figure 6.5. Thus, as compared to figure 6.2, the task column has been expanded in order to represent possible allocations of tasks from task requesters to task performers. Be- fore explaining this mapping in more detail, we will first introduce some useful graph theory notations.

Notice that in figure 6.5, each node in the valuation column,v, is potentially related to multiple nodes in the expanded task column T(as shown by the dotted red sets) and each node in c

is potentially linked to multiple nodes in T (as shown by the dotted black sets). T contains decomposed tasks from the bids denoting the bidder, one particular task, and the set of tasks in the bid from which this particular task originates (e.g. t1[1,{t1, t3}]signifies task1from agent

1in the bid placed for tasks{t1, t3}(as shown by the arrows on the figure)). The relationships

between the nodes ofv,c, andT can be thus be regarded as a special type of edge involving several nodes. Hence, the problem we are trying to solve contains hypergraphs.

Specifically, a hypergraph can be defined in the following manner [Berge, 1973]:

Definition 6.7. Hypergraph. LetX={x1, x2, . . . , xn}be a finite set, and letE={Ei|i∈I}

be a family of subsets of X. The familyEis said to be a hypergraph on X if: 1. Ei 6=∅ (i∈I)

2. i∈IEi =X.

The pairH = (X,E)is called a hypergraph. The elementsx1, x2, . . . , xnare called the vertices

t1 [ 1, {t1t3} ] V1(t1,t2) V2(t2,t3) V3(t1) C1(t1) C1(t1,t3) C2(t2,t3) C3(t2) t1 [1,{t1}] t2 [3,{t2}] t3 [1,{t1t3}] t2 [2,{t2t3}] t3 [2,{t2t3}] e 1 e 2 e' 1 e' 2

H

v

H

c VALUATION HYPERGRAPH BID HYPERGRAPH

v

VALUATIONS

T

TASKS BIDS

c

}

}

FIGURE6.5: Graphical representation of the TBM search space.

In a hypergraph, two hyperedges are said to be adjacent if their intersection is not empty. Oth- erwise they are said to be disjoint. We say that a hypergraph is weighted if we associate to each hyperedgeE ∈ Ea real number,w(E), called the weight ofE.

From the formal definition of hypergraph, we observe that figure 6.5 results from the overlapping of two separate hypergraphs: (i) the valuation hypergraph resulting from linking valuations to task bids and (ii) the bid hypergraph resulting from linking each bid to its task bids. In what follows, we formally define both hypergraphs based on valuations and bids.

Letv = {vi(τ, θi)|vi(τ, θi) ∈ vi i ∈ I}andc = {cj(τ, θj)|cj(τ, θj) ∈ cj j ∈ J} be the

sets of all valuations and all bids respectively. Consider now that each bidcj(τ, θj)standing

for the offer of agentj for a set of tasksτ can be split into single-task bids for every task in

τ so thatkτj (τj1, θj), . . . , kjτ(τjn, θj)represents the cost of agentjfor tasksτj1, . . . , τjn, and cj(τ, θj) = Pττj (τ′, θj). Thus, we defineK = {kjτ(τ′, θj)|cj(τ, θj) ∈ c, τ′ ∈ τ}as

of bids into single-task bids is, as shown below, an artefact to help us build our optimisation model. Therefore, single-task bids must be regarded as dummy single-task bids since we shall never require sellers to make explicit their values.

Hence, on the one hand, we define the valuation hypergraph as a pair Hv = (v ∪ K,Ev).

We say that e ∈ Ev wheree = {vi(τ, θi)} ∪K and K ⊆ K iffτ = ∪k(τ,θ)τ. Thus, each

hyperedge inHv consists of a single valuation vertex corresponding to an element in v along

with a complete task allocation out of the dummy single-task bids in K. On the other hand, we define the bid hypergraph as a pair Hc = (K ∪ c,Ec). For each bidcj(τ, θj) ∈ c such

that it splits into dummy single-task bidskjτ(τj1, θj), . . . , k τ

j (τjn, θj), there is a hyperedgee=

{cj(τ, θj), kτj (τj1, θj), . . . , kjτ(τjn, θj)}. In other words, each hyperedge inHc consists of a

single bid vertex corresponding to an element incalong with the single-task costs inKresulting from splitting the bid. Notice that our definitions of valuation and bid hypergraphs ensure that each hyperedge inHv contains a single valuation fromvand each hyperedge inHc contains a

single bid fromc.

In addition to the definitions above, we shall require some auxiliary functions to operate on the hyperedges of both hypergraphs:

• δ(x) ={e∈ Hv|x∈e}returns all hyperedges inHvcontainingx. • λ(x) ={e∈ Hc|x∈e}returns all hyperedges inHc containingx. • ν(e)returns the valuation vertex invin hyperedgee∈ Hv. • α(e)returns the bid vertex incin hyperedgee∈ Hc.

• β(e) ={k∈ K|ke}returns the cost vertexes in hyperedgee∈ Hv.

Consider now that we turn bothHv andHc into weighted hypergraphs as follows. On the one

hand, since each hyperedgee ∈ Hv stands for a local bid allocation, namely an allocation for

valuation vertexν(e), we can associate to each hyperedge the expected valuation forν(e)given the local bid allocation represented by the cost vertexes inβ(e)as its weight. We can thus recast our calculation of expected valuations as follows:

E[vi(τ, θi), K] = X τn∈2τ  vi(τn, θi) Y τl∈τn,(τl→j)∈K tij,τl Y τm∈τ/τn,(τm→k)∈K 1−tik,τm   (6.11) whereiassigns the tasksτlorτm to a given agentj andkrespectively according to the local

bid allocationKchosen.

On the other hand, we can associate to each hyperedge e′ ∈ Hc the value of the bid vertex α(e′) ∈ C. Henceforth, ω(e) shall stand for the weight of hyperedgee ∈ Hv, whereas κ(e′)

Once bothHvandHc are completely constructed, we can then exploit these structures to obtain

an allocation for the TBM model. In order to do so, notice that if two hyperedges inHv are

adjacent it means that two valuations sharing some tasks would be allocated the very same bid for that task, which turns out to be an unfeasible allocation. Therefore, feasible allocations can be expressed as sets of disjoint hyperedges, which leads to the well-known matching problem in a hypergraph [Gross and Yellen, 1999]:

Definition 6.8. Matching problem. For a hypergraphH = (X,E), a familyE⊆ E is defined to be a matching if the hyperedges ofE′are pairwise disjoint.

With respect to a given matchingE′, a vertexxi is said to be matched or covered if there is a

hyperedge inE′incident tox

i. If a vertex is not matched, it is said to be unmatched or exposed.

A matching that leaves no vertexes exposed is said to be complete.

Therefore, our aim is to find a matching forHv that is not necessarily complete (the optimal

allocation may demand that some valuations remain exposed). However, we are not interested in any matching, but specifically in the one that maximises the sum of the total expected valuations weighting the hyperedges inHv. This leads us to the well-known maximum weighted matching

problem [Gondrand and Minoux, 1986] which consists of finding a matching for which the sum of the weights of the hyperedges is maximised.

Nonetheless, we cannot solve the maximum weighted matching problem forHv without taking

into accountHc. We also require a matching forHc, but, in this case, a minimum weighted

matching so that the total cost of selected bids is minimised. In turn, the matching forHc also

depends on the matching forHv: whenever hyperedgee∈ Hvis selected (a valuation is selected

along with a set of task costs) we must enforce the fact that the hyperedges inHc containing

the cost vertexes ineare also selected (and thus, a selected bid is considered along with its task costs). In this way, any matching inHv generates an associated matching inHc. Our aim is to

obtain the maximum weighted matching inHvthat minimises its associated weighted matching

inHc.

Finally, the surplus maximising task allocation in a trust-based scenario results from the solution to the maximisation of the following expression:

X e∈Ev xe·ω(e)− X e′∈E c ye′·κ(e′) (6.12) subject to: 1. Peδ(k)xe=yλ(k)∀k∈ K 2. ye+ye′ ≤1∀e, e′iffc(e) =cij, θi), c(e′) =cik, θi)andτj ∩τk6=∅ 3. xe+xe′ ≤1∀e, e′iffv(e) =vij, θi), v(e′) =vik, θi)andτj∩τk6=∅

wherexe∈ {0,1}is a binary decision variable representing whether the valuation in hyperedge eis selected or not, andye′ ∈ {0,1}is a binary decision variable representing whether the bid

in hyperedgee′is selected or not.

As to the side constraints restricting expression 6.12, constraint (1) ensures at the same time that the very same bid cannot be allocated to the very same task of separate valuations and that a valuation cannot have more than one bid allocation. Constraint (2) enforces the fact that over- lapping bids owned by the very same agent are exclusive (XOR bids [Andersson et al., 2000]), and hence they cannot be simultaneously selected. Finally, constraint (3) enforces exclusivity among valuations with overlapping tasks (XOR asks). Notice that our optimisation model, as formalised by equation 6.12, resembles the combinatorial exchange (which is a double auction in which buyers and sellers submit sealed bids) since it consists of both bids and asks. Indeed, we can consider the goods in the exchange to be the dummy tasks inK, the bids the elements inc, and the asks the weights of the hyperedges in Hv. Thus, while the number of bids re-

main the same in the exchange, the number of valuations may significantly increase (since we are consideringHv instead ofv). This increased complexity can be attributed to the introduc-

tion of trust in our theoretical model which makes the initial valuations (asks) (the elements in

v), allocation-dependent. Hence, from every single valuation inv, several potential asks orig- inate for the exchange when considering the bidder to which each task my be allocated. As shown by Sandholm et al. [2001], the decision problem for a binary single-unit combinatorial exchange winner determination problem isN P −completeand the optimisation problem can- not be approximated to a ration1−ǫin polynomial time unlessP =ZPP. Our problem is thus N P −complete.