D6.3 - Learning social structure and dynamics & implementation of data collection and analysis

Page 1

SmartSociety Hybrid and Diversity-Aware Collective Adaptive Systems When People Meet Machines to Build a Smarter Society Grant Agreement No. 600584

Deliverable D6.3 Working Package WP6

Learning social structure and dynamics & implementation of data collection and analysis components Dissemination Level (Confidentiality):1 Delivery Date in Annex I: Actual Delivery Date Status2 Total Number of pages: Keywords:

PU 30/06/2015 02/07/2015 F 43 compositionality, social orchestration, adaptation, preference elicitation, collectives


c SmartSociety Consortium 2013-2017

Deliverable D6.3

1

PU: Public; RE: Restricted to Group; PP: Restricted to Programme; CO: Consortium Confidential as specified in the Grant Agreeement 2 F: Final; D: Draft; RD: Revised Draft 2 of 43

http://www.smart-society-project.eu


Deliverable D6.3

c SmartSociety Consortium 2013-2017

Disclaimer This document contains material, which is the copyright of SmartSociety Consortium parties, and no copying or distributing, in any form or by any means, is allowed without the prior written agreement of the owner of the property rights. The commercial use of any information contained in this document may require a license from the proprietor of that information. Neither the SmartSociety Consortium as a whole, nor a certain party of the SmartSociety’s Consortium warrant that the information contained in this document is suitable for use, nor that the use of the information is free from risk, and accepts no liability for loss or damage suffered by any person using this information. This document reflects only the authors’ view. The European Community is not liable for any use that may be made of the information contained herein.

Full project title:

Project Acronym: Grant Agreement Number: Number and title of workpackage: Document title: Work-package leader: Deliverable owner: Quality Assessor: c SmartSociety Consortium 2013-2017

SmartSociety: Hybrid and Diversity-Aware Collective Adaptive Systems: When People Meet Machines to Build a Smarter Society SmartSociety 600854 WP6 Compositionality and Social Orchestration Learning social structure and dynamics & implementation of data collection and analysis components Michael Rovatsos, UEDIN Michael Rovatsos, UEDIN Agnes Gr¨ unerbl, DFKI 3 of 43


c SmartSociety Consortium 2013-2017

Deliverable D6.3

List of Contributors Partner Acronym UEDIN UEDIN UEDIN UEDIN

4 of 43

Contributor Pavlos Andreadis Dimitris Diochnos Subramanian Ramamoorthy Michael Rovatsos

http://www.smart-society-project.eu


Deliverable D6.3

c SmartSociety Consortium 2013-2017

Executive Summary This document describes the work done in WP6 on developing methods for learning social structure and dynamics from large amounts of interaction data extracted from the observation of HDA-CAS (as specified in task T6.2). As stated in the Description of Work, “the specific challenge to be addressed here relates to dealing with huge amounts of data, identifying the ‘emergent semantics’ of interaction, and discovering regularities in emergent global behaviour, at different levels of granularity.” With regard to the focus of WP6, compositionality and social orchestration, this challenge is not one of passive observation and data analysis, but instead involves algorithmic intervention in the process of composing collaborative activities in HDA-CAS, as our social orchestration platform involves machine peers synthesising possible collaborative tasks and suggesting them to human (and, potentially, machine) participants. This means that the ‘big data’ aspect of this challenge is primarily caused by dealing with large numbers of peers and with the vast number of potential joint activities these peers could perform together. Our approach to tackling this challenge is based on abstraction along three dimensions: Firstly, by introducing user types, we stratify large numbers of peers into smaller numbers of types with similar behaviour. Secondly, by composing team tasks, we allocate groups of peers to joint activities that match their profiles and needs. Thirdly, by assuming coarse preferences, we relax the optimality criteria for overall task allocation by exploiting indifference of peers toward similar choices. Taken together, we envision that these mechanisms will enable us to reduce the combinatorial complexity of composing collective activity in large-scale HDA-CASs sufficiently to be able to provide feasible automation support in practical applications. This document focuses primarily on describing the formal foundations and algorithmic building blocks for task recommendation that make use of these mechanisms and provide the basis of our framework for learning the social structure and dynamics in HDA-CASs that are relevant to compositionality and social orchestration. We also provide a description of a prototypical implementation, and lay out the methodology we will apply in the further development of these algorithms.

c SmartSociety Consortium 2013-2017

5 of 43


c SmartSociety Consortium 2013-2017

Deliverable D6.3

Table of Contents 1 Introduction 2 Team Structure Optimisation 2.1 Social Welfare . . . . . . . . . . . . . 2.2 Utility Functions . . . . . . . . . . . 2.3 Structure of Optimal Solutions . . . 2.4 Greedy Team Allocation Algorithms 2.5 Optimal Allocation and Fairness . .

7

. . . . .

8 8 9 11 11 13

3 Coarse Preferences 3.1 A model of Coarse Preferences . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Computational Reduction through Coarse Preferences . . . . . . . . . . . . 3.3 Considering Decisions over Multiple Users . . . . . . . . . . . . . . . . . . .

15 15 16 18

4 Eliciting Coarse Preferences 4.1 Problem Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Strict Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3 Considering Indifference . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

20 20 21 21

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

5 Toward social structure learning 22 5.1 From prediction to recommendation . . . . . . . . . . . . . . . . . . . . . . 22 5.2 Validation methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 A Omitted Proofs

29

B Submodular Set Functions and Approximations

37

C Proof of the Existence of Coarse Utility Functions

38

D Computational Gains through Coarseness: Analysis D.1 Non-decomposed utility functions over finite outcome domains D.2 Additively decomposed utility functions . . . . . . . . . . . . . D.3 Partial situations . . . . . . . . . . . . . . . . . . . . . . . . . . D.4 Coarseness with additively decomposed utility functions . . . .

40 40 40 41 42

6 of 43

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

http://www.smart-society-project.eu


Deliverable D6.3

1

c SmartSociety Consortium 2013-2017

Introduction

Before proceeding with the exposition of our work on developing methods for learning social structure in HDA-CASs, it is worth reviewing how the research presented here is embedded within the overall work programme of WP6: In deliverable D6.1, we presented an abstract model for social computation, and introduced the “compositionality = context+ collectives” idea. The primary contribution of the present deliverable is to provide concrete models of notions of “collectives” which we apply and exploit to produce scalable orchestration methods, and of the ways in which the learning methods we describe utilise “context” in this process. The three types of collectives we consider are formed through grouping together peers with similar characteristics, building teams that perform joint activities, and stratifying team tasks based on the coarse preferences participants may have toward them. In each case, context is viewed as the set of variables and constraints that are constitutive formation of these collectives. Deliverable D6.2 specified a concrete computational, implemented architecture based on a specific static social orchestration model defined in D6.1. This followed the architectural principles laid out in D6.1, in particular the Play-By-Data idea that enabled us to map peer-to-peer collaboration onto a purely data-driven, Web-based systems infrastructure. This architecture was evaluated in terms of platform scalability and robustness, i.e. without any regard for its usefulness in terms of achieving HDA-CASs objectives, and without embedding “intelligent” task recommendation methods. The present document provides the foundations for realising such functionality within this architecture. Milestone M14 [1] presented the foundations of our approach to task recommendation, and the basic design of a data analysis and predictive classification system. The principles laid out there are further developed in this document, where we present an algorithmic account of the overall recommendation system, as well as a refined description of the implemented prototype. This system has not yet been validated with real-world data, but we describe the validation methodology that will be applied later on during year 3 of the project (until month 36, December 2015). The overall state of progress regarding work on these issues in terms of generality and implementation is as follows: Our initial implementation (prior to D6.2) was based on a domain-specific prototype for ridesharing. The (static) social orchestration architecture (SmartShare) described in D6.2 was generalised from this prototype to accommodate other domains while maintaining the overall orchestration cycle and only allowing minor variations on the negotiation patterns. The models and algorithms presented here have been developed against the backdrop of the orchestration model assumed in SmartShare. Their integration with SmartShare is expected to be completed over the next six months. The remainder of this document is structured as follows: Section 2 describes the problem of optimising team structure and algorithms to solve it assuming a simplistic utility model. Section 3 introduces our model of coarse preferences, and how they could be used to reduce the complexity of identifying optimal social allocations. Section 4 discusses preference elicitation methods capable of taking advantage of this model. Section 5, finally, describes the structure of our recommender system, and the methodology that will be applied in future development and validation of the system. c SmartSociety Consortium 2013-2017

7 of 43


c SmartSociety Consortium 2013-2017

2

Deliverable D6.3

Team Structure Optimisation

In this section we discuss our first contribution, which is the analysis of the problem of allocating large sets of peers to tasks each of which involves a group (team) of peers. We assume that tasks are specified through requests of a leader, i.e. a peer who commissions the activity, and account for such requests without and with capacity constraints. We begin by discussing relevant types of utility functions for participants as well as a social welfare function. Based on these functions we will describe the structure of optimal allocations in the case of uncapacitated requests, as well as in the case of capacitated requests where the total cost of each team activity is assumed to be the same regardless of the amount of participants it can accomodate. We will show that a greedy allocation mechanism with the defined utility functions results in optimal (i.e. social welfare maximising) allocations. We then show how we can modify our allocation mechanism in such a way that the expected utility for every participant is the same regardless of the arrival times of leader and participant requests. Thus, assuming a constant pool of peers, our mechanism has the nice property that all participants will be treated fairly, i.e. their utilities all converge to the same expected value. Omitted proofs are available in Appendix A.

2.1

Social Welfare

Our composition problem consists of pairing leader and participant task requests in such a way that teams are formed where each team is led by one leader, and moreover, we want to maximize a social utility function with the proposed allocation. A critical property in a task request is a property that has to be satisfied during composition, i.e. a hard constraint that cannot be violated. For simplicity, we only consider task requests whose critical properties do not take values in intervals, i.e. every task request with k critical properties is a point in a k-dimensional space. Figure 1 gives an example of how the search space is partitioned into regions in this case. In each region, the critical properties of each P

L P

L

P

L

P

P P

P

L

P

L

P

P

P P

P L

P P

P

P P

P L

P P

P

P

P P

L

P

P

L

P P

L

P

P

P

P P

P

Figure 1: Splitting the search space into regions where hard constraints are satisfied: Participants P can be assigned to leaders L if these are in the same region, as the split is based on grouping peers whose hard constraints can be matched 8 of 43

http://www.smart-society-project.eu


c SmartSociety Consortium 2013-2017

Deliverable D6.3

task request are the same among all task requests. Note that each region in the search space can have an arbitrary number of task requests for leaders and participants, which can be zero, but certainly it contains at least one task request. Definition 2.1 (Allocation per Region). Let R be a region defined by the hard constraints of the task requests. Let DR , ER be the set of leader and participant requests respectively in region R. Further, let |DR | = nR and |ER | = εR . In addition, let CR = PnR capacity (DR,i ) be the total sum of the capacities of the individual leader requests in i=1 region R (each capacity denotes how many participants can be accommodated apart from R R the leader). We call an allocation AR in region R any nR -tuple AR = (aR 1 , a2 , . . . , anR ) that satisfies R • aR i ∩ aj = ∅ for all i 6= j in R,

• |aR i ∩ DR | = 1 for all i ∈ {1, 2, . . . , nR } in R, and • |aR i | ≤ 1 + capacity (DR,i ). A global allocation A is S defined to be the union of the allocations per region Aj for j ∈ {1, 2, . . . , r}, i.e. A = rj=1 Aj . The restriction A|R of A in R refers to the allocation R R in region R i.e. A|R = AR = (aR 1 , a2 , . . . , anR ). Definition 2.2 (Social Welfare). Let A be a global allocation. Let Uj be the function that computes the welfare for an allocation Aj in region j. We define the social welfare function SU to be r X SU (A) = Uj (Aj ) . j=1

Definition 2.3 (Optimal Social Allocation). A global allocation OP T = (o1 , . . . , or ) is called optimal social allocation if for any other global allocation A = 6 OP T it holds SU (A) ≤ SU (OP T ) . Theorem 2.4 (Structure of Optimal Social Allocation). Let OP T = (o1 , . . . , or ) be an optimal social allocation. Then, for j ∈ {1, . . . , r}, Uj (oj ) attains the maximum in Uj among the permitted allocations in region j. Theorem 2.5 (Decomposition). Let A be an allocation algorithm that achieves (1 − γ) approximation of the optimum value Uj for every region j ∈ {1, . . . , r} for some γ ∈ [0, 1]. The union of these allocations forms an (1−γ) approximation of the social optimum value.

2.2

Utility Functions

As individual regions are independent, our analysis from now on will be restricted to one specific region. Thus, we will drop the indices that indicate the region and the term allocation will refer to allocation in a specific region. For example, we will write A instead of Aj when it is clear from the context that we are talking about j. Further, by S(A, i) we will denote the set S individual i belongs to according to the allocation A; when it is clear from the context we will simply write S(i). We associate a utility function u (Aj , i) with c SmartSociety Consortium 2013-2017

9 of 43


c SmartSociety Consortium 2013-2017

Deliverable D6.3

each peer i in region j and allocation Aj that increases monotonically as the cardinality of the set S(Aj , i) increases. This follows our intuition that the cost (utility) per individual decreases (increases) whenever there are more participants, as is the case in domains like ridesharing, meeting scheduling, and crowdsourcing. Whenever the allocation is clear from the context we will simply write u(i) for the utility of the individuals. As for the welfare Uj (Aj ) for the entire region j, we resort to a definition that sums the utilities of representatives of each team formed in the particular region j, where it is assumed that the same utility function u is used to compute the utility of each individual. Again we will drop the subscript j and simply write U (A). Let D be the set of leaders, E be the set of participants in the specific region, and κ be the base cost of a request for a leader if no participant joins their request. We define the utility u of each individual as well as the welfare U in region j of interest as follows: ( u (A, i) = κ − κ/|S (A, i)| P . (1) U (A) = d∈D u (A, d) It is worth explaining why we choose to employ a social utility function that sums only over leaders at this point. First of all, we really want to sum up over representatives of each team formed and it is much easier to do so by summing over the leaders of each team. Assuming that the activities the leaders request have to be carried out in any case (regardless of how many participants join them), the desire of participants to maximise their utility by forming larger and larger groups goes against spreading them equally among leaders so as to also satisfy leaders’ needs. However, such an allocation mechanism would allow the formation of teams with very few members - potentially only the leaders - and thus there would be teams that have extremely low utility. We will revisit the notion of fairness of the allocations in Section 2.5 but for now we will observe the following regarding the welfare function U that is used per region: Defining the welfare function for region j as the sum of all individuals’ utilities, that is, X U (A) = u(A, i) , i∈D∪E

it turns out that this is not a good function for our purposes as the following calculation shows, where |D| = n and |E| = ε. X X X U (A) = u(A, i) = (κ − κ/|S(i)|) = κ · (|D ∪ E|) − κ · 1/|S(i)| i∈D∪E

i∈D∪E

i∈D∪E

    XX X = κ (n + ε) − κ ·  1/|S(i)| = κ (n + ε) − κ ·  1 S S i∈S = κ (n + ε) − κ · n = κ · ε This would imply that U is constant no matter how the participants are distributed among different teams. Therefore, we choose to define the welfare per region based on the benefit to a representative of each equivalence class that is formed by each set/team defined by the allocation. 10 of 43

http://www.smart-society-project.eu


Deliverable D6.3

2.3

c SmartSociety Consortium 2013-2017

Structure of Optimal Solutions

Given the above model, the following two theorems establish what the nature of optimal allocations is in the uncapacitated and the capacitated request case. Theorem 2.6 (Optimal Solutions for Uncapacitated Requests). Let n be the number of leaders and ε be the number of participants. Further, let Pq = bε/nc and r = ε − qn. Then, for an allocation A = (a1 , . . . , an ), the welfare U (A) = d∈D u(A, d) is maximized for any permutation of an allocation vector that is composed of r entries with q + 1 participants and (n − r) entries with q participants. Thus, the best we can do when there are no capacity constraints is to spread the participants equally among leaders as far as the participant/leader ratio permits this, with the remaining participants being allocated randomly to leaders (at most one per leader). Theorem 2.7 (Optimal Solutions for Capacitated Requests). Let D be the set of the leader requests such that |D| = n. Further, let E be the set of the requests of the participants such that |E| = ε. Order the leader requests in increasing order of capacities and split ties arbitrarily. Let kd be the capacity of the request of leaderP d ∈ {1, . . . , n}. Further, let P C = 1≤d≤n kd . Then, using the welfare function U (A) = d∈D u(A, d), for the optimal solution of an allocation we have the following. C ≤ ε. Any assignment of C out of the ε participants to teams (leader requests) is optimal. P C > ε. Let Qj = 1≤d≤j kd + kj+1 · (n − j) for j ∈ {0, 1, 2, . . . , n − 1} and k0 = 0. Moreover, let j ∈ {0, 1, . . . , n − 1} be the P smallest number such that the inequality Qj > ε holds. Further, let ε0 = ε − 1≤d≤j kd − kj · (n − j). In addition, let q = bε0 /(n−j)c and r = ε0 −q·(n−j). Then the utility is maximized by any allocation vector A = (a1 , . . . , an ) where the sets for the allocation in the first j entries have cardinalities equal to the capacities of the respective ordered leader requests plus one (for the inclusion of the respective leader), and among the last (n − j) entries we have r sets with cardinalities kj +q +2 and (n−j −r) sets with cardinalities kj +q +1 (where the respective leader in the request is again counted). Hence, the best we can do when there are capacity constraints is to find a threshold on the capacity constraints such that all the capacitated requests up to this threshold are filled up to their respective capacities, and for the requests above the threshold the allocation mechanism is similar to the uncapacitated version of the problem.

2.4

Greedy Team Allocation Algorithms

In the light of the theorems presented above we are now able to show that simple greedy allocation mechanisms generate optimal solutions; Algorithm 1 presents the basic scheme. As usual we will denote with D the set of the leader requests and with E the set of participant requests, where by abusing notation, we will use the same symbols for the sets of the individuals as well. Following our earlier conventions, we let |D| = n and |E| = ε. The function findmax in Algorithm 1 finds a p ∈ E and a team Tτ , τ ∈ {1, . . . , n}, such that the gain in the welfare function is maximal among all pairs (p, τ) by which the partial c SmartSociety Consortium 2013-2017

11 of 43


c SmartSociety Consortium 2013-2017

Deliverable D6.3

Algorithm 1: A greedy algorithm for allocation. Input: A vector of leader requests D, a vector of participant requests E. Output: Teams of leaders and participants such that the welfare is maximized. 1 initialize(T , D) ; /* create |D| = n teams; one leader per team */ P|D| 2 C ← i=1 capacity(Di ); P|D| 3 while E 6= ∅ and i=1 (|Ti | − 1) < C do 4 hτ, pi ← findmax(T , E); 5 E ← E \ {p}; 6 Tτ ← Tτ ∪ {p}; 7 return T ;

solutions can be extended using p respecting the constraints; ties are split arbitrarily. Note that a naive implementation of findmax requires O (nε) evaluations of the utility and the welfare function. Thus a naive implementation of Algorithm 1 is O nε2 . Lemma 2.8 (Greedy Step). Let |D| = D and s a partial solution generated by the algorithm that tries to maximize U as defined in (1) in every step. Then, when participant is being considered for expanding one of the partial solutions of the requests, the algorithm will introduce the participant to the partial solution with the participants that has not yet reached its capacity limit. Ties are split arbitrarily.

greedy a new leader fewest

Due to Lemma 2.8, at every step of expanding a partial solution, the algorithm does not need to evaluate the welfare function U (which can also be imprecise due to floating point arithmetic), but can rather rely on the simpler heuristic of measuring the cardinality of the partial solutions based on Lemma 2.8. Thus, the complexity of findmax drops from O (nε) to O (n) and the overall complexity of the algorithm drops from O nε2 to O (nε). Theorem 2.9 (Uncapacitated Greedy Optimal Allocation). Let ε be the number of participants and n be the number of leaders per region. Using the utility and the welfare function as defined in (1), the greedy algorithm (Algorithm 1) will generate an optimal allocation in ε assignment steps and with time complexity dominated by O (nε). Theorem 2.10 (Capacitated Greedy Optimal Allocation). Let ε be the number of participants and n be the number of leaders per region. Using the utility and the welfare function as defined in (1), the greedy algorithm (Algorithm 1) will generate an optimal allocation in at most ε assignment steps and with time complexity dominated by O (nε). Theorems 2.6 and 2.7 together the convergence Theorems 2.9 and 2.10 suggest that we can provide allocation algorithms with better complexity. Indeed, in the uncapacitated case, in O (n) time the n teams can be formed by creating one team per leader and then in O (ε) time the ε participants can be assigned to teams by using a pointer and a round-robin allocation, thus completing the entire process in O (n + ε) time; i.e. findmax operates in O (1) time. In the capacitated case, using the same mechanism, the running time would be O (nε) as it can be the case that some leader requests with high capacity are O (n) apart, thus resulting in O (n) increments for the pointer before a single participant is assigned to a team. One solution for improving the complexity would be to preprocess the 12 of 43

http://www.smart-society-project.eu


Deliverable D6.3

c SmartSociety Consortium 2013-2017

leader requests and sort them in increasing order of capacities, thus achieving an optimal allocation in O (n lg n + ε) time and using an additional pointer. However, in both cases we are still lacking some guarantee regarding the fairness that these allocation mechanisms provide to the participants. We address this issue of fairness in the following section.

2.5

Optimal Allocation and Fairness

Using Theorem 2.7 and building on the ideas from the previous paragraph, our goal is to show that Algorithm 2 provides an optimal allocation with better running time and with fairness guarantees in the case of capacitated requests. Note that, for simplicity, Algorithm 2 is presented so that it can deal with the difficult case where the total number of participants is strictly less than the total capacity. Further below we will comment on appropriate modifications for dealing with the case where the total number of participants is at least as large as the total capacity. Finally, the uncapacitated version of an optimal and fair in expectation allocation follows easily and the details are omitted. Algorithm 2: An allocation algorithm that satisfies the structure Theorem 2.7 and guarantees the same expected utility for each participant. Input: A vector of leader requests D, a vector of participant requests E; |D| = n and |E| = ε. Output: Teams of leaders and participants such that the welfare is maximized and the expected utility of each participant is the same. 1 initialize(T , D) ; /* create |D| = n teams; one leader per team */ P|D| 2 C ← i=1 capacity(Di ); 3 order(T ) ; /* increasing order of capacities */ P 4 j ? ← min0≤j≤n−1 { 1≤d≤j ? kd + kj ? +1 (n − j ? ) > ε}; P ? 5 ε0 ← ε − 1≤d≤j kd − kj ? · (n − j ); 0 ? 6 q ← bε /(n − j )c; 7 r ← ε0 − q · (n − j ? ); 8 z ← shuffle(E) ; /* random permutation of E */ 9 for d ← 1 up to j ? do 10 Td ← Td ∪ extract(top kd participants from z); 11 for d ← j ? + 1 up to j ? + r do 12 Td ← Td ∪ extract(top kj ? + q + 1 participants from z); 13 for d ← j ? + r + 1 up to ε do 14 Td ← Td ∪ extract(top kj ? + q participants from z); 15 return T ; we denote with D the set of the leader requests, with E the set of the participant requests, and moreover we let |D| = n and |E| = ε. In this algorithm, line 1 creates n teams, one for each leader, in O (n) time. Line 2 calculates the total capacity offered by the various requests in O (n) time. Line 3 orders the requests in increasing order of capacities and in case of ties orders the requests based on the time the leaders registered their profiles in the system, thus guaranteeing that many executions of the same algorithm c SmartSociety Consortium 2013-2017

13 of 43


c SmartSociety Consortium 2013-2017

Deliverable D6.3

and for leader requests with the same capacities will always result in the same ordering of the teams as it will not depend on the time at which the requests were received by the system. Total time to perform the ordering is O (n lg n). Line 4 computes j ? which is the critical index in the sorted teams, such that all the teams with an index up to j ? will be filled up to their capacities, while all the teams with index greater than j ? will be filled in an uncapacitated manner. The computation of j ? takes time O (n) as there are O (n) additions, subtractions, multiplications and comparisons. With careful implementation lines 5-7 can be implemented using O (1) operations. Line 8 is making a call to a shuffle function. This function is important, as it guarantees that z is assigned a uniformly random permutation of the requests E. Fisher and Yates in [14] gave an algorithm for generating a random permutation for ε elements, such that any permutation among the ε! had equal probability of being generated. Their algorithm also appeared in [11] as well as in Knuth’s book The Art of Computer Programming [19] with the name Algorithm P. In any case, the running time of the shuffle function is O (|E|) = O (ε). Finally, lines 9-14 form teams in aggregate time bounded by O (ε) such that the teams generated respect the structure Theorem 2.7. Thus, the total running time for Algorithm 2 is O (n lg n + ε). Theorem 2.11 (Structured Capacitated Optimal Allocation). Let ε be the number of participants, n be the number of leaders per region and further let the aggregate sum of capacities be larger than ε. Using the utility and the welfare function as defined in (1), Algorithm 2 will generate an optimal allocation in time O (n lg n + ε). Theorem 2.12 (Fair Capacitated Allocation). Let ε be the number of participants, n be the number of leaders per region and further let the aggregate sum of capacities be larger than ε. Algorithm 2 provides a fair expectation on the utility function of every participant. Solutions generated by Algorithm 2 have the additional benefit that the expected individual utility is the same for all participants regardless of the order in which the participant requests arrive in the system. Such an allocation mechanism is an important step toward a long-term fairness guarantee when participants use the system repeatedly. Corollary 2.13 (Fair and Optimal Capacitated Allocation). Let ε the number of participants, n the number of leaders per region, and assume that the aggregate sum of capacities is larger than ε. Using the utility and the welfare functions as defined in (1), Algorithm 2 generates an allocation in time O (n lg n + ε) that is optimal and expected to treat all participants fairly. We note that Algorithm 2 can also be used in the case of uncapacitated leader requests. In this case, j ? = 0, ε0 = ε, q = bε/nc, and r = ε − q · n. Then, lines 9-10 are never executed, and lines 11-14 form teams that respect the optimal structure that is implied by the structure Theorem 2.6. This completes our account of generating optimal team structures in the types of collaborative activities we are interested in, assuming that utility functions are given solely in terms of “diminishing returns” when more peers participate in a task (we include a discussion of the mathematical modelling of diminishing returns in Appendix B). This assumption implies that users have no soft constraints in terms of preferences regarding particular collaborators, or more task-specific attributes. In the next section, we present our model for dealing with such preferences. 14 of 43

http://www.smart-society-project.eu


Deliverable D6.3

3

c SmartSociety Consortium 2013-2017

Coarse Preferences

The model introduced so far assumes that all agents have identical preferences that are purely based on splitting the cost of an activity among them. In the field of cooperative game theory, the standard model of coalition formation considers the generalised problem of allocating agents to coalitions (teams, in our terminology), where each agent may have arbitrary preference profiles over all possible coalitions, and each coalition can generate an arbitrary – subject to some generally assumed conditions, e.g. that a set of agents can achieve at least as much joint utility as its subsets – benefit for its members. If utility can be transferred among members, then an additional question is how profit should be shared among members of the coalition. We have seen that in our simplified model, an optimal coalition structure can be calculated relatively easily under heavily simplifying assumptions. Given that in real-world HDA-CASs there is little hope that we can enumerate all possible coalition structures and evaluate them based on game-theoretic criteria (e.g. will individuals have an incentive to deviate from the coalition, does the structure maximise social welfare), we need to come up with a way of pushing the envelope of preference profiles we can accommodate beyond our initial model, but without exposing ourselves to the intractability of the full problem. Our approach to this is based on coarse preferences, i.e. preferences that involve a great deal of indifference toward specific details of possible outcomes. Similar (but in a sense orthogonal to) types, which abstract from individual agents by assuming that all agents of a particular type have the same preference profile, coarse preferences induce situations that abstract from individual outcomes (solutions) and group them together in such a way that agents are indifferent toward outcomes within a particular situation. In this section we introduce our formal model of coarse preferences and analyse its properties with regard to its capacity to reduce the complexity of the resulting coalition formation problem. The section concludes with an analysis of making decisions over groups of coarse users, as well as a novel approach towards user typing, compatible with our model of coarse preferences. Omited proofs and further analysis of computational gains can be found in Appendices C and D.

3.1

A model of Coarse Preferences

Assume a set of users I and a space of outcomes O. Each user i ∈ I maintains a utility function ui : O → R which determines his preferences over outcomes o ∈ O. We write ui (o) to denote the utility user i assigns to outcome o. Each user is to be mapped to one assignment oi ∈ O for which he would prefer to get an outcome that maximises his utility. Assume two outcomes o1 , o2 ∈ O and an arbitrary user. A weak preference o1 o2 of outcome o1 over o2 is a binary relation indicating that the user weakly prefers outcome o1 to o2 , or, in other words, o1 is at least as good as o2 , for that user. The weak preference relation is typically expected to satisfy the properties of comparability and transitivity, if it is to be considered rational [31]. The binary relations of indifference and strict preference c SmartSociety Consortium 2013-2017

15 of 43


c SmartSociety Consortium 2013-2017

Deliverable D6.3

are defined in terms of the weak preference relation as: o1 âˆź o2 ⇔ o1 o2 ∧ o2 o1

(2)

o1 o2 ⇔ o2 o1 .

(3)

We begin by giving a broad definition of coarse preferences: Definition 3.1 (Coarse preferences). We say that a Decision Maker (DM) exhibits coarse preferences Ď• over outcomes o ∈ O (or is a Ď•-coarse DM) if given a many-to-one mapping Ď• : O → S from a space of outcomes to a space of situations, with Ď•(o) = s, Ď•(o0 ) = s0 , we have: o o0 ⇔ s s0

(4)

Intuitively, a user identifies in each outcome a corresponding situation, according to a mapping Ď•, and maintains a preference ranking over these situations rather than directly over the space of outcomes. The ranking over outcomes is a result of inverting this mapping. An alternative view of situations is that of preferential equivalence classes over the space of outcomes; every situation defines a subset of the space of outcomes, all members of which share the same utility value. Corollary 3.2. Indifference and strict preference: If a DM exhibits coarse preferences then it follows from Def. 3.1 and Eq. 2 and 3 that: o âˆź o0 ⇔ s âˆź s0 0

0

o o ⇔s s

(5) (6)

Appendix C details the proof of the existence of a coarse utility function, over situations, representing the same preferences as a given utility function over outcomes. We can therefore, given a utility function u : O → R defining a coarseness ϕ : O → S, write uc : S → R.

(7)

The importance of this result can be understood by considering the problem of preference elicitation. Proving the equivalence of u and uc is necessary, since elicitation would be done with queries over the original outcome space, that therefore elicit u, even as we assume that uc was used in answering the query. Furthermore, the expected utility of a recommendation requires estimating the expectation over u. Essentially u is a less structured representation of uc , which we eventually wish to elicit along with Ď•.

3.2

Computational Reduction through Coarse Preferences

At the heart of our theory of coarse preferences lies the assumption that users are less “precise� in their preferences (an assumption that can be relaxed by bounding the loss of utility, with use of -close user types, as we show in Section 3.3). Comparing all outcomes in the outcome space can therefore be replaced with a comparison of one outcome from each preferential equivalence class, i.e.situation. We show in Appendix D, in simple terms, 16 of 43

http://www.smart-society-project.eu


c SmartSociety Consortium 2013-2017

Deliverable D6.3

that this intuition is correct. Note that these results refer to preferences that have been defined over finite and discrete outcome or variable domains. In the case of continuous outcome spaces, partitioning into preferential equivalence classes represents an optimal, no-loss, discretisation. Table 1 summarizes results regarding the number of look-ups needed to compute an optimal allocation, with and without explicitly representing coarseness, and for different utility function decompositions. This number of lookups essentially defines how computationally involved determining an optimal allocation will be. The rightmost columns give the upper bounds on the number of outcomes and situations, given the variable domains. These become equalities when each possibility is present in the available outcome or situation space, respectively. We note that computational gains can be significant, depending on the users’ coarse representation of the outcome space. Utility function Non-decomposed AI-decomposed GAI-decomposed

Noncoarse |O| |O| · m |O| · ki

Coarse |S| |S| · m |S| · ki

|O| ≤ Qm |Xj | Qj=1 m j=1 |Xj |

|S| ≤ Qm |S | i,j Qj=1 ki Qyi,l l=1

z=1 |Si,l,z |

Table 1: Summary of number of utility value look-ups; with and without explicitly representing coarseness in preferences, and for different utility function decompositions. The derivation of Table 1 is explained in Appendix D. The results for Additive Independent (AI) and Generalised Additive Independent (GAI) decompositions were obtained through use of the construct of partial situations. The latter allows us to model coarseness at the level of sets of variables, and is explained in detail in Appendix D.3. We list here the definitions of various symbols in the table: • m is the number of variables over which outcomes are defined (each outcome is a vector of m variable values for variables with discrete domains); • ki is the user-specific number of different variable sets over which Generalized Additive Independent (GAI) subutilities are defined; • Xj is the domain of variable xj ; • Si,j is the domain of partial situation si,j that depends on user i’s coarseness ϕi,j : Xi,j → Si,j ; • yi,l is the number of subsets into which user i’s coarse representation partitions the set of variables Xi,l , where the latter is the set of variables over which the GAI subutility function ui,l is defined; and • Si,l,z is the domain of partial situation si,l,z , as depends on user i’s coarseness ϕi,l,z : Xi,l,z → Si,l,z . c SmartSociety Consortium 2013-2017

17 of 43


c SmartSociety Consortium 2013-2017

3.3

Deliverable D6.3

Considering Decisions over Multiple Users

The section above analysed the computational gains one should expect from having knowledge of a user’s coarse preference structure. Next, we examine decisions affecting a group of coarse users, such that some social welfare metric, aggregating their individual preferences, is optimised. A key issue is that, even as coarseness produces a preferential discretisation of the outcome space, this discretisation is, generally, not unique to each user. Examining the problem of multi-user recommendation, we can see how this becomes problematic: it prohibits us from making decisions over the situation space Si of a particular user i. The above becomes obvious if we consider evaluation of two outcomes o1 , o2 such that both belong to the same preferential equivalence class s11 (i.e. ϕ(o1 ) = ϕ(o2 ) = s11 ) for user 1, but belong to different situations s21 , s22 for user 2 (i.e. ϕ2 (o1 ) = s21 , ϕ2 (o2 ) = s22 ). Assume some social welfare function V : R|I| → R used for making a selection for users I = {1, 2}. V should not generally be expected to be indifferent between outcomes in s11 . A similar example could be given for the inverse situation, though, we note that, if our outcome space was O = {o1 , o2 }, we would have no problem making decisions over user 2’s situation space. We could, of course, optimise over the original outcome space. However, this would undermine our goal of computational cost reduction. The question arises: Is there a way of maintaining some of the benefits from the outcome space partitioning, while still making consistent decisions over multiple users? The above example points towards such an approach. A user i’s coarse representation, ϕi : O → Si , represents a partitioning of the space of outcomes O into a set of preferential equivalence classes Si = {Os , ∀s ∈ Si } : Os ⊆ O with ∀o ∈ Os , ϕ(o) = s. Assume a number of users I ⊆ I, such that ϕi : O → Si , ∀i ∈ I. Then we can define the point-wise intersection of all users’ equivalence class partitionings as SI = {OsI , with sI = [si ], ∀si ∈ Si , ∀i ∈ I} : OsI ⊆ O with ∀o ∈ OsI , ϕi (o) = si , ∀i ∈ I . Theorem 3.1 (Coarse Representation for Group of Users). Assume a set of users I ∈ I, exhibiting coarse preferences ϕi : O → Si , with some ranking over Si , ∀i ∈ I, given a space of potential outcomes O. The point-wise intersection of the users’ preferential equivalence class partitionings, results in the maximally coarse representation of the outcome space, ϕI : O → SI , such that each user i ∈ I is indifferent among outcomes in each non-empty preferential equivalence class in the resulting partition. Proof. Proving that each user is indifferent among outcomes in any of the resulting preferential equivalence classes is trivial. Each such equivalence class is a subspace of each user equivalence class from which it was constructed. The preferential indifference among all outcomes of that class, obviously still holds for any of its non-empty subspaces. Proving that the above construction is maximal, requires proving, that, adding any outcome to any resulting equivalence class, would make it lose the above property. Assume that it did not. Then, for each user, it would have belonged to the respective equivalence class which constructed the resulting equivalence class. It would therefore have been included in it. Consequently, it is not a new addition to it. We will refer to the subset of users I ⊆ I defining ϕI : O → SI as the seed group of the partitioning SI . 18 of 43

http://www.smart-society-project.eu


Deliverable D6.3

c SmartSociety Consortium 2013-2017

If the provided rankings over situations allow indifference, and we are provided with rankings of the type rather than , then we can obtain the maximaly coarse representation by, for each user, re-mapping any outcomes belonging to prefererential equivalence classes between which that user is indifferent, to the same situation. The above theorem will then apply. Theorem 3.1 also applies to the case where we have no knowledge of users’ rankings. It is hard to provide any guarantees over the cardinality of equivalence classes resulting from the point-wise intersection, without actually computing it. We can, however, provide a lower bound for the maximum cardinality among equivalence classes for two partitionings, such that the resulting partition contains at least one equivalence class with cardinality greater than 1: Theorem 3.2 (Guaranteed Cardinality Theorem). Assume two partitionings of the discrete outcome space O, A = {A1 , ..., Ak } : O = ∪ki=1 Ai and Ai ∩ Ai0 = ∅, ∀i, i0 ∈ {1, ..., k} with i 6= i0 , and B = {B1 , ..., Bl } : O = ∪lj=1 Bj and Bj ∩Bj 0 = ∅, ∀j, j 0 ∈ {1, ..., l} with j 6= j 0 with maximal cardinalities, among the respective subspaces, a = maxi∈{1,...,k} |Ai | and b = maxi∈{1,...,l} |Bj |, respectively. Then the maximal cardinality among the subspaces resulting from the point-wise intersection of A and B, has a lower bound of max(1, a+b−|O|). Proof. Assume two subsets of O, Ai and Bj , with |Ai | = a and |Bj | = b. We have |O| outcomes from which we want to assign a to Ai and b to Bj . If a + b > |O|, then it becomes impossible to do so without Ai and Bj sharing at least a + b − |O| outcomes. This represents a lower bound on the number of shared outcomes. It is easy to see, that this bound is maximised for maximal a and b. We now need to show that the maximal cardinality among equivalence classes resulting from the pair-wise intersection can never be lower than 1. Indeed, since A and B are partitionings of O, then ∀o ∈ O, there will be some equivalence classes Ai ∈ A, Bj ∈ B such that o ∈ Ai and o ∈ Bj . Therefore, Ai ∩ Bj ⊇ {o} and |Ai ∩ Bj | ≥ 1. Theorem 3.2 gives a lower bound on the maximum cardinality among equivalence classes resulting from the point-wise intersection of two outcome spaces. It can be used to provide guarantees for an iterative computation of intersections. However, it is easy to see how these guarantees can end up trivial for many applications, in which case the use of the Theory on Coarse Preferences will have to be decided empirically. 3 One overlooked problem in our analysis, so far, is that the computation of point-wise intersections can be costly. Moreover, these will, generally, vary with the seed group. One naturally wonders whether this computation can be transferred off-line. An interesting observation is that the point-wise intersection of the resulting group outcome space partitioning with any of those of the respective group members will result in that group partitioning itself. In fact this can be true, even for users who do not belong to the seed group. Crucially, the resulting situation space can be used to make decisions over any set of users for which this is true. This leads to a very natural definition of user typing in the context of coarseness: 3 A note on zero-cardinality/empty equivalence classes: Though these are not useful for optimisation purposes, we might still want to keep track of them in order to answer related queries. Especially if the classes are labelled.

c SmartSociety Consortium 2013-2017

19 of 43


c SmartSociety Consortium 2013-2017

Deliverable D6.3

Definition 3.3 (Coarse Preference User Types). Assume a partitioning A = {A1 , ..., Ak } of the space of outcomes O, and the coarse preferences partitioning of the outcome space Si , for some user i ∈ I. We will say that user i is of Coarse Preference User Type A, iff the pair-wise point intersection of Si with A results in A. We can relax the definition above by allowing approximate user types with bounded loss of accuracy in terms of utility values: Definition 3.4 ( -close Coarse Preference User Types). Assume a partitioning A = {A1 , ..., Ak } of the space of outcomes O, and the coarse preferences partitioning of the outcome space Si , for some user i ∈ I, with Ď•i : O → Si and uci : Si → R. We will say that user i is of -close Coarse Preference User Type A, if there exists a partitioning of the outcome space Si , for a mapping Ď• i : O → Si , such that the pair-wise point intersection of Si with A results in A. Where ∀s ∈ Si , s is the result of the union of equivalence classes defined by some s ∈ Si such that ∀o, o0 ∈ O : Ď•i (o) = s1 , Ď•i (o0 ) = s2 , for some s1 , s2 ∈ Si , with uci (s1 ) − uci (s2 ) ≤ , we have Ď• i (o) = Ď• i (o0 ) = s .

4

Eliciting Coarse Preferences

The following section deals with the problem of eliciting user preferences, such that they involve an explicit representation of indifference between outcomes. This is the first step towards a procedure for eliciting a user’s complete coarse preferences profile. We examine elicitation using list queries, and provide strong theoretical results for binary queries.

4.1

Problem Description

Assume a user who maintains a non-strict preference ranking over a set of outcomes O. At each time-step t, we present the user with an unordered list (i.e. a set) of outcomes Ot ⊆ O from which the user always selects the highest ranked outcome or, in case of a tie, one of the highest ranked outcomes. Specifically, if the user selects o∗ ∈ Ot at time-step t, then it holds that ∀o0 ∈ Ot : o0 o∗ or, equivalently, o∗ o0 or o∗ âˆź o0 . We assume that, when there are multiple highest ranked outcomes, the user selects one by sampling uniformly among them. In other words, if OtH ⊆ Ot : ∀o, o0 ∈ OtH , ∀o00 ∈ Ot and ∈ / OtH we have o o00 and o âˆź o0 , then P (o∗ = o) = |O1H | , ∀o ∈ OtH , where P (o∗ = o) is the t probability of the user selecting o when presented with Ot . We are looking for an answer to the following question: How many sets, or queries, do we need to present the user with, and what must these sets be, in order to elicit the user’s complete preference ranking ? The above question is not well-defined. Intuitively, a user can, when presented with two outcomes between which he is indifferent and with some non-zero probability, always select the same outcome. However, indifference can only be detected when the user alternates his choices. We will therefore have to settle for an upper bound on the number of queries needed in order to approximate a preference ranking with a given confidence level. Before examining this in more detail, let us produce a lower bound on the number of queries. This can be easily constructed by ignoring the possibility of indifference, essentially treating the user’s preference ranking as if it were strict. 20 of 43

http://www.smart-society-project.eu


c SmartSociety Consortium 2013-2017

Deliverable D6.3

4.2

Strict Preferences

First assume that there exists a strict ordering over O. In order to construct this ordering, we need to elicit a relation ∀o, o0 ∈ O. Whenever a user answers a query, i.e. selects an outcome o∗t ∈ Ot , this immediately translates to o∗t o, ∀o 6= o∗t ∈ Ot . We can now omit o∗t from any future lists Ot0 ⊂ Ot − {o∗t }, with t0 > t, since we already know its preference relation with all o ∈ Ot and, hence, Ot0 . If we start at t = 0 and present the list O0 = O, we can proceed by querying the user with the lists Ot = Ot−1 − {o∗t−1 }. The last non-trivial comparison is made when |OT | = 2. Therefore we have T = |O| − 1, which is also a lower bound on the number of queries needed to elicit a complete strict preference ranking.

4.3

Considering Indifference

Introducing indifference to the above transforms the meaning of the user’s selection. In particular, a selection of o∗t from Ot means that, ∀o ∈ Ot : o 6= o∗t , either o∗t o or o∗t ∼ o, ∀o 6= o∗t ∈ Ot . If we follow the algorithm presented above, we would end up with a nonstrict preference ranking, , over O. Stringing multiple such procedures would likely give us different rankings over O, which, when combined, would replace certain weak preference relations with indifference, e.g.: ) a b c d ⇒ a b ∼ c d. (8) a c b d Let us now consider the simplified case of two outcomes O = {o, o0 }, or pair-wise selection queries. We present them to the user at time t = 0, and he selects o∗0 = o. How sure are we that o o0 ? Assume that at time t = 1 the user, always presented with Ot = O ∀t, selects o0 . Given our assumptions on how the user makes choices, we are now certain that o ∼ o0 . A similar pattern does not exist for strict preference. Consider the case where the user is indifferent between o and o0 . Assuming that he breaks ties uniformly, the probability of him selecting one or the other is P (o∗t = o|o ∼ o0 ) = |O1t | = 12 , ∀t ∈ {1, ..., T } (similarly for o0 ). The only way for us not to detect the indifference is if, after T queries, the user happens to constantly have selected the same outcome. The probability of this is: |Ot | ·

Y t=1,...,T

1 T 1 = |Ot | · |Ot | |Ot |

1 T −1 1 T −1 = = = 21−T . |Ot | 2

(9)

That is, the probability of the user selecting either o or o0 for T times in a row, given that he is indifferent between the two outcomes. Let us define the event eT as that of receiving a signal for the indifference between o and o0 (consequently ¬eT as that of not receiving the signal) after T identical queries. c SmartSociety Consortium 2013-2017

21 of 43


c SmartSociety Consortium 2013-2017

Deliverable D6.3

Further, we will use x to refer to the event o ∼ o0 . Eq. 9 can then be written as P (¬eT |x) = 21−T ,

(10)

We wish to give guarantees on the probability of making a mistake when infering a user’s ranking of preferences. The probability of us misinterpreting the relation between two outcomes o, o0 after T pair-wise queries is: P (error) = P (¬eT |a ∼ b) · P (a ∼ b) + 0 · P (¬ a ∼ b) = 21−T · P (a ∼ b) ≤ 21−T .

(11)

that is, the conditional probability of an erroneous inference given that the user is indifferent between the two outcomes, plus the conditionals when the user prefers one to the other, weighted with the appropriate priors. This gives us an upper bound on the prior probability of a pair-wise ranking being incorrect. One might ask what guarantees we provide for the correctness of the complete ranking of outcomes. To calculate this, consider that a complete ordering of outcomes entails n(n−1) n combinations of pairs. The event of us being wrong for at least one pair-wise 2 = 2 ranking is the union of each such event: (n2 ) X n 1−T (n2 ) P (errorpair i ) ≤ 2 . P (≥ 1 pair incorrect) = P (∪∀i=1 errorpair i ) ≤ 2

(12)

i=1

We now ask how many queries we need to provide the user with, in order to provide an upper bound δ over this error. We require that n n 1−T δ δ n 1−T 2 δ≥ 2 ⇒ n ≥ 2 ⇒ log2 n ≥ 1 − T ⇒ T ≥ 1 + log2 = 1 + c log2 , 2 δ δ 2 2 (13) or T = d1 + c log2

5 5.1

n e. δ

(14)

Toward social structure learning From prediction to recommendation

In milestone MS14 [1] we presented our approach for an architecture for Preference Elicitation and Recommendation in HDA-CAS. This section will examine our recent work in terms of this model, while presenting our plans for the near future. We briefly outline our architecture below, while pointing to Figure 2 for a concise overview. The architecture proposes a feature-based approach to task recommendation. Assuming that user preference and task-related information can be infered from various sources (mainly selection of possible solutions for the purposes of this document, though MS14 22 of 43

http://www.smart-society-project.eu


c SmartSociety Consortium 2013-2017

Deliverable D6.3

User behaviour User p

features

User behaviour Request rp

features

...

Tasktiti Task Task Plan oi ti

Composition Manager

features features features features

Environment Recommender System

Plan Execution

Feedback fpi

User Behaviour

Plan Recommendation

features

Figure 2: User information sources and information flow in our orchestration model also considers other forms of feedback), we represent these in terms of feature-value pairs, and attempt to find relations beteen them. Key to this model is also the integration of the recommender and social orchestration systems (where we assume an architecture of the social orchestration system as described in D6.2). Section 2 dealt with identifying optimal team structure and presented a formal, if simplified, approach to solving the task allocation problem that is dealt with by the Composition Manager in our social orchestration architecture. Key in our future work will be to build on those results, extending our methodology to more general utility and/or social welfare functions. The Recommender System is an integral part of our approach, and will have to consider not only how to elicit and recommend according to individual users’ c SmartSociety Consortium 2013-2017

23 of 43


c SmartSociety Consortium 2013-2017

Deliverable D6.3

Recommendation

Task Selection History User Task Selection Instance

User Task Selection Instance

Evaluate Alternatives

Classification

Update Predictions

Classifier

Recommendation

(a) MS14 Architecture

Aggregate Task Selection Data

(b) Future Architecture

Figure 3: A comparison of our Social Orchestration architecture; as presented in milestone MS41 [1] and as aimed for in deliverable D6.4. preferences, but also how to do so in a way that will result in stable social allocations with maximal social welfare. A significant part of this procedure is the optimisation of social welfare for each team of users considered. Given the exponential number of possible team formations and the, generally, continuous space of potential solutions, this represents a significant bottleneck in the process. In Section 3, we presented our theory of coarse preferences, which is ideally suited for resolving this issue. By simplifying the representation of the solution space, we obtained significant computational gains in terms of optimising team solutions. This in turn allows for a more computationally tractable composition problem, which will be critical for the integration of the Composition Manager and the Recommender System. In Section 4, we examined the problem of learning users’ preferences, in the context of their indifference among outcomes. These are the first steps towards an elicitation procedure for coarse preferences, involving user types as defined in Section 3.3. Combining future extensions of Section 2, 3 and 4 will lead to the development of a fully integrated extension to our task composition methods, with effective task recommendation that includes preference elicitation as part of the recommendation procedure. In our current implementation of the SmartShare Social Orchestration model, historical interaction data is fed into a classification scheme. The resulting classifier is used to predict the most preferred tasks, in order to inform future recommendations (see Figure 3a ). Our D6.4 implementation (see Figure 3b) will introduce three key features: 1. Adaptive on-line decision making; through continuously incorporating new information as the user interacts with the system, in order to to guide the user through his selections;. 2. Personalised preference structures; as oppossed to our current demographic approach; 24 of 43

http://www.smart-society-project.eu


Deliverable D6.3

c SmartSociety Consortium 2013-2017

3. Social context will be taken into account, through modelling of the effects a recommendation has on the final structure of the social allocation. Our previous implementation described in milestone M14 had as its general objective to predict future user behaviour based on historical interaction data collected in the SmartShare prototype. In the light of the models of social allocation, user typing and coarse preferences described in this deliverable, we need to adapt the architecture of our initial system for learning social structure applying the following, staged process: 1. In the first step, we will label individual user interactions with the system as indicative of their preferences (for example, choice of plan among alternatives presented to the user, or agreement to a plan during the negotiation stage, or the difference between reputation values assigned to two different experiences) and apply a Bayesian update algorithm suitable for use with our preference models in order to infer user preferences from data. 2. In a second step, we will develop and integrate algorithms for computing appropriate user queries to elicit preferences based on predictive value-of-information models. The challenge in this will be that the lists of possible solutions the system can present to users, in order to learn more about their preferences, depends on the availability of such solutions, as determined by the current requests and offers of all users in the system. 3. In a third step, this preference elicitation will need to be combined with the social allocation procedure, so that, based on the elicited preferences, task allocations have to be computed as recommendations to each user. Helping them, in this way, to optimise their individual outcomes. In this process, we will have to tackle two challenges: Firstly, to define appropriate game-theoretic solution concepts that will not be prohibitively complex to compute; We expect our model of coarse preferences to have significant impact in solving this problem. Secondly, to come up with metrics that balance considerations regarding the progress of preference elicitation with the quality of allocations.

5.2

Validation methodology

We close this document with a discussion of the validation methodology we will apply to evaluate the usefulness of the proposed methods for use in HDA-CASs. The overarching research question behind the work presented here is how to deal with large-scale collectives in terms of providing adequate algorithms to compute and recommend collaborative tasks, and how to embed these in an orchestration architecture that can manage these collaborations. Solving this problem requires discovering latent structure and context in the social task environment, and adapting “calculatively rational” algorithms to actual collective human behaviour. It is currently unclear how abstractions of groups of people into “collectives” should be treated (e.g. based on average behaviour/extreme outliers/salient properties, etc) – we aim to develop a better understanding of this by exploring the use of techniques presented here over the next 12 months (i.e. until the end of WP6 in month 42, June 2016). c SmartSociety Consortium 2013-2017

25 of 43


c SmartSociety Consortium 2013-2017

Deliverable D6.3

Four concrete validation techniques will be applied to establish the value of our methods with regard to answering this overarching research question: • Analytical validation, i.e. proving properties of algorithms for resource allocation, team formation, and recommendation. Such formal analysis will address criteria like correctness, computational complexity, but may also refer to properties like “fairness”, compatibility with user incentives, etc. This deliverable has mostly focused on this form of validation, and produced mostly theoretical insights that will feed into the practical realisation of the methods we are developing. • Simulation-based validation: Simulation experiments will be used to assess robustness and scalability of actual implementations of our adaptive social allocation and task recommendation methods. This complements formal analysis as it looks at practical feasibility (beyond worst-case analysis) and allows analysing the behaviour of the system in more quantitative terms (e.g. measuring average recovery times after introducing stochastic failures). • Laboratory-based experimentation: Controlled experiments with human users will be run to observe their behaviour in actual coalition formation and task allocation scenarios. These experiments will be small-scale and based on contrived toy scenarios, but provide us with opportunities to modify problem parameters easily, to obtain qualitative data by having direct access to subjects. They will help us identify which contextual parameters affect human decision making in the kinds of situations we are interested in, and to calibrate algorithmic parameters to human behaviour. • Large-scale experiments with real data: These will be based on data gathered from upcoming user trials in Italy (and, possibly, further future trials), and allow us to assess whether phenomena observed on a small scale and in simulation carry over to real-world scale. We expect that this data will become available toward the end of 2015.

References [1] Pavlos Andreadis, Michael Rovatsos, and Subramanian Ramamoorthy. First version of architecture and design choices for learning social strutures and dynamics. Technical Report MS14, Smart Society, 2014. [2] A. Angluin. Queries and concept learning. Machine Learning, 2:319–342, 1988. [3] A. Bjorndahl, J. Y. Halpern, and R. Pass. Language-based games. In Proceedings of the 23rd International Joint Conference on Artificial Intelligence, pages 2967–2971. AAAI Press, 2013. [4] C. Boutilier, F. Bacchus, and R. I. Brafman. UCP-Networks: A directed graphical representation of conditional utilities. In Proceedings of the 17th Conference on Uncertainty in Artificial Intelligence, UAI’01, pages 55–64, Seattle, WA, 2001. 26 of 43

http://www.smart-society-project.eu


Deliverable D6.3

c SmartSociety Consortium 2013-2017

[5] C. Boutilier, K. Regan, and P. Viappiani. Online feature elicitation in interactive optimization. In Proceedings of the 26th Annual International Conference on Machine Learning, ICML-09, pages 73–80, Montreal, Quebec, Canada, 2009. [6] C. Boutilier, K. Regan, and P. Viappiani. Preference elicitation with subjective features. In Proceedings of the 3rd ACM Conference on Recommender Systems, pages 23–25, New York, New York, USA, October 2009. [7] C. Boutilier, K. Regan, and P. Viappiani. Simultaneous elicitation of preference features and utility. In Proceedings of the 24th National Conference on Artificial Intelligence, AAAI-10, pages 1160–1197, 2010. [8] H. Cr`es. Aggregation of coarse preferences. Social Choice and Welfare, 18(3):507–525, 2001. [9] L. Decock and I. Douven. Similarity after Goodman. Review of Philosophy and Psychology, 2(1):61–75, March 2011. [10] Shaddin Dughmi. Submodular Functions: Extensions, Distributions, and Algorithms. A Survey. CoRR, abs/0912.0322, 2009. [11] Richard Durstenfeld. Algorithm 235: Random Permutation. Communications of the ACM, 7(7):420, July 1964. ISSN 0001-0782. [12] J. Farfel and V. Conitzer. Aggregating value ranges: Preference elicitation and truthfulness. Autonomous Agents and Multi-Agent Systems, 22(1):127–150, 2011. [13] Uriel Feige. A Threshold of ln n for Approximating Set Cover. Journal of the ACM, 45(4):634–652, 1998. [14] Ronald A. Fisher and Frank Yates. Statistical Tables for Biological, Agricultural and Medical Research. 1938. [15] J. Geanakoplos, D. Pearce, and E. Stacchetti. Psychological games and sequential rationality. Games and Economic Behavior, 1(1):60–79, 1989. [16] Nelson Goodman. Seven strictures on similarity. Goodman, N (Ed.), Problems and Projects, pages 35–41, 1972. [17] D. Haussler. Learning conjuctive concepts in structural domains. Machine Learning, 4:7–40, 1989. [18] Samir Khuller, Anna Moss, and Joseph Naor. The Budgeted Maximum Coverage Problem. Information Processing Letters, 70(1):39–45, 1999. [19] Donald E. Knuth. The Art of Computer Programming, Volume II: Seminumerical Algorithms. Addison-Wesley, 1969. [20] D. Koller and N. Friedman. Probabilistic graphical models: principles and techniques. MIT Press, 2009. c SmartSociety Consortium 2013-2017

27 of 43


c SmartSociety Consortium 2013-2017

Deliverable D6.3

[21] L. K. Komatsu. Recent views of conceptual structure. Psychological Bulletin, 112: 500–526, 1992. [22] B. K˝oszegi and M. Rabin. A model of reference-dependent preferences. Quarterly Journal of Economics, pages 1133–1165, 2006. [23] Andreas Krause and Daniel Golovin. Submodular Function Maximization. Tractability: Practical Approaches to Hard Problems, 3:19, 2012. [24] D. L. Medin. Concepts and conceptual structure. American Psychologist, 44:1469– 1481, 1989. [25] S. Mullainathan. Thinking through categories. Unpublished Manuscript, 2002. URL http://www.haas.berkeley.edu/groups/finance/cat3.pdf. [26] S. Mullainathan. Coarse thinking and persuasion. Quarterly Journal of Economics, 123(2):577–619, 2008. [27] George L. Nemhauser, Laurence A. Wolsey, and Marshall L. Fisher. An analysis of approximations for maximizing submodular set functions - I. Mathematical Programming, 14(1):265–294, 1978. ¨ urk, M. Pirlot, and A. Tsoukias. Representing preferences using intervals. [28] M. Ozt¨ Artificial Intelligence, 175(7):1194–1222, 2011. [29] E. Rosch and B. Lloyd. Cognition and Categorization. Lawrence Erlbaum Associates, Mahwah, NJ, 1978. [30] E. G.-L. Strugeon. Using value ranges to reduce user effort in preference elicitation. Group Decision and Negotiation: A Process-Oriented View, 180:211–218, 2014. [31] J. von Neumann and O. Morgenstern. Theory of Games and Economic Behavior. Princeton University Press, Princeton, 1953. [32] R. Wilson and F. Keil. The MIT Encyclopedia of the Cognitive Sciences. The MIT Press, Cambridge, MA, 1999.

28 of 43

http://www.smart-society-project.eu


c SmartSociety Consortium 2013-2017

Deliverable D6.3

A

Omitted Proofs

Proof of Theorem 2.4. Towards contradiction, assume that there is at least one j ∈ {1, . . . , r} such that there is an aj 6= oj such that Uj (aj ) > Uj (oj ). Consider the global allocation B = (o1 , . . . , oj−1 , aj , oj+1 , . . . , or ), which we will compare to OP T . By Definition 2.2 SU (B) =

r X

X

Ui (bi ) = Uj (aj ) +

i=1

X

Ui (oi ) > Uj (oj ) +

Ui (oi ) = SU (OP T ) .

1≤i≤r i6=j

1≤i≤r i6=j

However, this contradicts the optimality of OP T by Definition 2.3. Proof of Theorem 2.5. Let A = (a1 , . . . , ar ) be the allocations of the algorithm in the various regions. Further, let Uj∗ be the optimum value for Uj in every region j ∈ {1, . . . , r}. P By Theorem 2.4 we have that rj=1 Uj∗ is the maximum value for SU which we denote with SU ∗ . By Definition 2.2 we have SU (A) =

r X j=1

Uj (aj ) ≥

r X

(1 − γ)Uj∗ = (1 − γ)

j=1

r X

Uj∗ = (1 − γ)SU ∗ .

j=1

Lemma A.1. Let α, β ∈ N∗ , with α ≥ β + 2. Then 1 1 1 1 + > + . α β α−1 β+1 Proof. Let α = β + 2 + x with x ∈ N. Then we need to show

1 β+2+x

+ β1 >

1 β+1+x

1 + β+1 ⇔

2β+2+x β(β+2+x)

2β+2+x > (β+1)(β+1+x) ⇔ β(β + 2 + x) < (β + 1)(β + 1 + x) ⇔ 0 < 1 + x, which is true for all x ∈ N.

Proof of Theorem 2.6. The theorem indicates that the maximum is attained for allocation vectors that are permutations of the vector A = (a1 , . . . , ar , ar+1 , . . . , an ) such that

|ad | = q + 2 , if 1 ≤ d ≤ r, |ad | = q + 1 , if r + 1 ≤ d ≤ n.

Towards contradiction, noting that all of the above permutations yield the same welfare U , assume this is not the case. Then, there exists a vector B = (b1 , . . . , bn ), such that U (B) > U (A) and in fact let B be the vector where U attains its maximum value. Since P d∈D |bd | = ε + n and B is different from any permutation of A, then, there exist i, j ∈ D such that ||bi | − |bj || ≥ 2 regardless of the value of r. Without loss of generality assume that i < j and bi > bj . Now consider an allocation B 0 that is the same as B apart from positions i and j where one participant ζ is removed from the large set of leader i and assigned to the smaller set of leader j; i.e. B 0 = (b1 , . . . , bi−1 , bi \ c SmartSociety Consortium 2013-2017

29 of 43


c SmartSociety Consortium 2013-2017

Deliverable D6.3

{ζ}, bi+1 , . . . , bj−1 , bj ∪ {ζ}, bj+1 , . . . , bn ). Then it holds that U (B) =

X

u(B, d) =

d∈D

X

(κ − κ/|bd |) = κn − κ

d∈D

X 1 |bd |

d∈D

X 1   1 1  = κn − κ   |bi | + |bj | + |bd |  d∈D d6=i,j

 < κn − κ  

X 1  1 1  + + |bi | − 1 |bj | + 1 |bd | 

= κn − κ

(Lemma A.1)

d∈D d6=i,j

X X 1 X 0 | u(b0d , d) = U (B 0 ) . = κ − κ/|b d = |b0d | d∈D

d∈D

d∈D

However, this is a contradiction since we assumed that U (B) is maximum. Proof of Theorem 2.7. We prove the claim by examining each case separately. Case C ≤ ε. Let A be an allocation of C participants to teams; i.e. an allocation where all the leader requests have been assigned the maximum number of participants allowed by their capacities. Towards contradiction assume that there is an allocation B that assigns fewer than C participants to teams and results in a higher value for the welfare function. Let i ∈ {1, 2, . . . , n} be the minimum index in B such that the capacity of the respective leader request has not been reached. Such an i exists as fewer than C participants are assigned to teams according to B and no participant appears more than once. Now consider the allocation B 0 which is the same as B and extends, according to the ordering, the team at index i by introducing a participant that does not appear in any other team. Note that such a participant always exists as B has assigned fewer than C (different) participants to teams and we have at least C participants in our pool. Let δ be the leader for the request with index i. Then we can observe the following. U (B) =

X

u (B, d)

d∈D

= κ − κ/|bi | +

X

(κ − κ/|bd |)

d∈D d6=δ

< κ − κ/(|bi | + 1) +

X

(κ − κ/|bd |)

d∈D d6=δ

= κ − κ/|b0i | +

X

κ − κ/|b0d |

d∈D d6=δ

=

X

u B 0 , d = U (B 0 ) .

d∈D

30 of 43

http://www.smart-society-project.eu


c SmartSociety Consortium 2013-2017

Deliverable D6.3

In other words, any such allocation B can be extended to an allocation B 0 where more participants have been assigned to teams and with increased welfare for the region. In order to prove the second claim, that is, that any allocation of C out of the ε participants yields an optimal solution, let A0 be a different allocation from A where C participants have been assigned to teams. By (1) it follows directly that these two allocations yield the same welfare for the region. This is expected as the utility function does not depend on the individuals themselves but rather on the cardinalities of the teams formed.

Case C > ε. Consider the leader requests sorted in the order implied by the theorem. Let j ∈ {0, 1, 2, . . . , n − 1} be minimum such that Qj > ε. Such a j always exists as Qn−1 = C > ε. Also note that j can be zero. In other words, the indices j and j + 1 signify a turning point in the allocation. That is, every leader request with an index up to (and including) j has been assigned the maximum number of participants that are allowed by its capacity, whereas leader requests with index at least j + 1 may or may not have reached their capacities (and in particular at least one of these requests will not). For clarity, we want to prove optimality for allocation vectors of the form A = (a1 , . . . , aj , aj+1 , . . . , aj+r , aj+r+1 , . . . , an ) such that   |ad | = kd , if 1 ≤ d ≤ j |ad | = kj + q + 1 , if j + 1 ≤ d ≤ j + r .  |a | = k + q , if j + r + 1 ≤ d ≤ n j d Note that for simplifying the calculations that follow, we neglect the existence of the leaders when taking into account the cardinalities of the allocation sets. Such a simplification will make the calculations easier when we compare the cardinalities with the capacities of the respective leader requests at the specific indices. Towards contradiction assume that an allocation B that does not follow the above pattern achieves a higher value for the welfare of the region and in particular maximizes welfare. Our first observation is that any such allocation B should assign all ε participants to some team. Otherwise, any such allocation can be extended by introducing one unassigned participant to a team and increase the value for the welfare. Such an extension is always possible as C > ε. The first case that we consider is when such an allocation contains a set with cardinality strictly less than its allowed capacity among the first j entries; that is, |bi | < ki for some i ∈ {1, . . . , j}. Due to the ordering, note that |bi | < ki ≤ kj − 1. Further, either there is a request where at least kj + q + 2 > kj − 1 participants have been assigned (respecting the capacity), or we have at least r + 1 ≥ 1 entries where the sets of the allocation have cardinalities kj + q + 1 > kj − 1. Regardless, let ` ∈ {j + 1, . . . , n} be that first index that satisfies one of the above cases. The claim is that we can remove a participant from the allocated set at index ` and introduce that participant to the allocated set at index i c SmartSociety Consortium 2013-2017

31 of 43


c SmartSociety Consortium 2013-2017

Deliverable D6.3

while increasing the welfare U . We have X

U (B) = (κ − κ/|bi |) + (κ − κ/|b` |) +

(κ − κ/|bd |)

d∈D d6=i,`

< (κ − κ/(|bi | + 1)) + (κ − κ/(|b` | − 1)) +

X

(κ − κ/|bd |)

d∈D d6=i,`

= U (B 0 ) , where the inequality was obtained by Lemma A.1. This is a contradiction to the maximality induced by the allocation B. Thus, B has to provide sets that fill in all the available positions allowed by the capacities for the indices d ∈ {1, 2, . . . , j} so that U is maximized. The second case that we consider is when for the allocation B all the requests with indices d ∈ {1, . . . , j} have reached their capacities and moreover there are two indices i, ` ∈ {j + 1, . . . , n} such that ||bi | − |b` || ≥ 2 contrary to what the theorem indicates for indices in {j + 1, . . . , n}. However, such an allocation can be improved by transferring one participant from the set with bigger cardinality to the set with smaller cardinality and still increase the welfare U . The proof is the same as in Theorem 2.6. Therefore, we reach a contradiction once more. It follows that an optimal allocation has to have the structure imposed by the theorem. For the second part of the claim, that is, that any allocation of the participants that respects the structure on the cardinalaties of the allocated sets yields an optimal solution, let A0 be a different allocation from A where the participants have been assigned to teams. Again, by (1) it follows directly that these two allocations yield the same welfare U for the region. As mentioned in the previous case, this is expected as the utility function does not depend on the individuals themselves but rather on the cardinalities of the teams that are formed. The theorem follows. Lemma A.2. Let α, β ∈ N∗ , with α < β. Then 1 1 1 1 + < + . α+1 β α β+1 Proof. We need to show β1 − which is true since β > α.

1 β+1

<

1 α

1 α+1

1 β(β+1)

<

1 α(α+1)

⇔ β(β + 1) > α(α + 1) ,

∗ Lemma A.3. Pn Let X = hx1 , . . . , xn i be a sequence, such that xi ∈ N with i ∈ {1, . . . , n}. Let RX = i=1 1/xi be the sum of the reciprocals of the elements in the sequence. Consider the sequences Yj = hx1 , . . . , xj−1 , xj +1, xj+1 , . . . , xn i for j ∈ {1, . . . , n}. That is, there is a P (j) j ∈ {1, . . . , n} where yj = xj + 1 and for all i 6= j it holds yi = xi . Let RYj = ni=1 1/yi , (j)

where yi is the i-th element in sequence Yj . Further, let M = {k | xk = min1≤i≤n xi }. Then, for any m ∈ M and any j ∈ {1, . . . , n} \ M , it holds RYm < RYj . 32 of 43

http://www.smart-society-project.eu


c SmartSociety Consortium 2013-2017

Deliverable D6.3

Proof. Note that M is the index set where the minimum values of X are attained. Without loss of generality assume that there is a unique m where the minimum value in the sequence X is attained. Let m 6= j ∈ {1, . . . , n}; i.e. xm < xj . Then we have R Ym

=

n X 1 (m)

i=1

= <

=

yi

1 1 + xm + 1 xj

1 1 + xm xj + 1

n X 1 (j)

i=1

yi

n X 1 xi

+

i=1 i6=m,j n X

+

i=1 i6=m,j

1 xi

= RYj ,

where the inequality was obtained by Lemma A.2. Proof of Lemma 2.8. Let D = DC ∪ DN , where DC is the set of leaders whose requests have reached their capacity, and DN is the set of leaders whose requests have not reached their capacity. Further, let |DN | = n, and let A = (a1 , . . . , an ) be the partial solution for the requests of the leaders in DN ; i.e. ai indicates the participants (participants and leaders) that have been assigned to the solution for leader i in that set. P function that is being P maximized at every step is U = d∈D u(d) = P The utility P u(d); the algorithm tries to maximize the u(d). Let Q = u(d) + d∈DC d∈DN d∈D C P sum d∈DN u(d). We have X

u(d) =

d∈DN

X

(κ − κ/|S(d)|)

d∈DN

=

X

κ−

d∈DN

= κ·n−κ

X

κ/|S(d)|

d∈DN

X

1/|ad | .

(15)

d∈DN

The algorithmPis going to increment one of the ad ’s during the greedy step. By Lemma A.3 the quantity d∈D 1/|a Pd | in (15) is minimized if the smallest available set is expanded, and thus the quantity d∈DN u(d) is maximized on that step. Proof of Theorem 2.9. Consider an arbitrary ordering of the leader requests. Due to Lemma 2.8 at every step of the execution the algorithm is going to expand a set among the ones with minimum cardinality. That is, at every step of the execution, every partial solution that the algorithm considers has values ||ai | − |aj || ≤ 1 for any i, j ∈ {1, . . . , n}. By Theorem 2.6 it follows that at the end of the execution this is an optimal solution. Proof of Theorem 2.10. Due to Lemma 2.8 at every step of the execution the algorithm is going to expand a set among the ones with minimum cardinality where the capacity has c SmartSociety Consortium 2013-2017

33 of 43


c SmartSociety Consortium 2013-2017

Deliverable D6.3

not been reached so far. Thus the greedy approach will fill in the allocations in a per-level manner just like in Theorem 2.9. P For the first case, note that if ε ≥ C = d∈{1,...,n} kd , where kd is the capacity for the leader request d according to the ordering, the algorithm is going to fill in all the leader requests up to their capacities, as Lemma 2.8 implies that expanding a partial allocation by one more participant always yields a higher welfare. Thus the structure Theorem 2.7 is satisfied and as a consequence the greedy allocation mechanism yields an optimal solution. P We now turn our attention to the more interesting case where ε < C = d∈{1,...,n} kd , where again kd is the capacity for the leader request d and moreover we consider the labeling of the leader requests {1, . . . , n} to follow an ordering that satisfies Theorem 2.7; i.e. the leader requests are given in increasing order of capacities. Note that sorting the leader requests according to their capacities is not a step of Algorithm 1. However we do so as we want to show that the greedy algorithmP creates an allocation that respects the structure imposed by Theorem 2.7. Let Qj = 1≤d≤j kd + kj+1 · (n − j) for j ∈ {0, 1, . . . , n − 1} where we have also defined the artificial k0 = 0, and j ? ∈ {0, P 1, . . . , n − 1} be the minimum j such that Qj > ε holds for the first time. Also, let ε0 = ε − 1≤d≤j kd − kj ? · (n − j ? ), q = bε0 /(n − j ? )c, and r = ε0 − q · (n − j ? ) in accordance to Theorem 2.7. Due to the minimality of j ? we have X X Tj ? = kd + kj ? (n − j ? ) ≤ ε < kd + kj ? +1 (n − j ? ) = Qj ? . (16) 1≤d≤j ?

1≤d≤j ?

We now split the execution of the greedy algorithm up to (and including) step Tj ? and above that threshold (up to and including step ε). Due to Lemma 2.8, the greedy allocation assigns participants to leader requests in a per level manner. Thus, due to (16), for every leader request d ∈ {1, . . . , n} the algorithm is going to assign min{kd , kj ? } participants to each specific request d after Tj ? steps. Once step Tj ? has been executed the algorithm has to assign participants to leader requests with indices j ∈ {j ? + 1, j ? + 2, . . . , n} as all the leader requests with indices in {1, . . . , j ? } have reached their capacities. However, the quantity Qj > ε holds for the first time when j = j ? . This implies that the algorithm can not generate another (kj ? +1 − kj ? ) rows with participants assigned to the leader requests where the capacity has not been reached yet; i.e. those with indices in {j ? + 1, j ? + 2, . . . , n}. However, due to Lemma 2.8 the algorithm will keep on expanding the allocations of the leader requests with indices in {j ? + 1, . . . , n} such that at every step of the execution ||ai | − |a` || ≤ 1 for all i, ` ∈ {j ? + 1, . . . , n}. It follows that at the end of the execution the conditions of the structure Theorem 2.7 hold as ε0 , q, and r have been defined in such a way so that one can count the steps needed between Tj ? + 1 and ε. Thus, the greedy allocation will generate an optimal allocation in this case as well. This will be done in at most ε steps and time complexity dominated by O (nε) with an implementation of findmax that exploits Lemma 2.8. Proof of Theorem 2.11. Optimality of Algorithm 2 is immediate as it exploits the structure Theorem 2.7 and computes the critical index j ? that separates requests that will definitely fill their capacities from requests that may or may not fill their capacities. Regarding the complexity, lines 1-7 of Algorithm 2 are dominated by line 3 where sorting needs to be performed and it takes time O (n lg n). Line 8 of the shuffle function takes O (ε) 34 of 43

http://www.smart-society-project.eu


c SmartSociety Consortium 2013-2017

Deliverable D6.3

time. Then lines 9-14 also take O (ε) aggregate time. Thus, the overall complexity of the algorithm is O (n lg n + ε). Proof of Theorem 2.12. As before, let |D| = n, |E| = ε. Let the leader requests be sorted in increasing order of capacities kd with d ∈ {1, . . . , n}, where in case of ties we sort the requests according to the order in which the leaders have registered in the system. P ? We examine the case where C = 1≤d≤n kd > ε. Let j be the minimum j ∈ {0, 1, . . . , n − 1} as in (16) such that X X kd + kj ? +1 (n − j ? ) = Qj ? . kd + kj ? (n − j ? ) ≤ ε < 1≤d≤j ?

1≤d≤j ?

P Similarly to Theorem 2.7, let ε0 = ε − 1≤d≤j kd − kj ? · (n − j ? ), q = bε0 /(n − j ? )c, and r = ε0 − q · (n − j ? ). For the average utility u among all participants it holds that ?

ε·u =

j X

kd · κ −

d=1

κ kd + 1

+ r · (kj ? + q + 1) · κ −

kj ?

κ +q+2

+

κ (n − j ? − r) · (kj ? + q) · κ − kj ? + q + 1  ?  j X = κ· kd + r · (kj ? + q + 1) + (n − j ? − r) · (kj ? + q) − d=1

 κ·

?

j X d=1

k +q+1 k +q  kd +r· + (n − j ? − r) · kd + 1 kj ? + q + 2 kj ? + q + 1 j?

j?

Our goal is to show that, in expectation, any participant has utility P ? j ? − r) · (k ? + q) − ? u = κε · k + r · (k + q + 1) + (n − j j j d Pd=1 kj ? +q+1 j? kd κ ? − r) · kj ? +q · + r · + (n − j d=1 kd +1 ε k ? +q+2 k ? +q+1 . j

(17)

j

Algorithm 2 guarantees that we are not biased for or against any participant, by considering a random permutation of all the participants that is drawn from the uniform distribution of all the ε! participant permutations. Let z = hz1 , z2 , . . . , zε i denote such a random permutation and let p be a random participant. Then Pr (zi = p) =

(ε − 1)! 1 = , ε! ε

i.e. the probability that p appears at position i ∈ {1, 2, . . . , ε} in the permutation z is 1/ε. Such a random permutation is generated by calling the function shuffle. Thus, now that the order of the leader requests has been fixed, and the computation of j ? , q, and r has been performed, Algorithm 2 is going to treat z as a queue. As leader requests are sorted in increasing order of capacities, Algorithm 2 assigns participants to the leader requests by drawing them from the head of the queue, and filling each request with as many participants implied by the structure Theorem 2.7. Hence, such a solution c SmartSociety Consortium 2013-2017

35 of 43


c SmartSociety Consortium 2013-2017

Deliverable D6.3

could have been generated with a greedy allocation mechanism as in Theorem 2.10, but it has the additional benefit that the expected utility of each participant is the same among all participants and regardless of the order in which the participant requests arrive in the system. Such an allocation mechanism is an important step toward a long-term fairness guarantee when participants use the system repeatedly. Algorithm 2 provides the details. In accordance with our description above, z is treated as a queue of participants, where each participant has probability 1/ε being at position i for i ∈ {1, 2, . . . , ε}. Thus the function extract in Algorithm 2 extracts the required amount of participants (participant requests) from the top of the queue z and assigns them to the leader request (team) which is under inspection. We can now easily see that for any participant, Algorithm 2 provides expected utility that is equal to the one given in (17). To see this, note that the expected utility up for participant p is the weighted sum of the utilities of the teams where p may arise in the allocation weighted by the probability of assignment of each such team. Since p may arise in z in any index i ∈ {1, 2, . . . , ε} after the application of the shuffle function, we have: ?

up =

j X kd d=1

(1)

ε

·

(1) ud

+

? +r jX

d=j ? +1

kj ? + q + 1 (2) · ud + ε

(2)

n X d=j ? +r+1

kj ? + q (3) · ud , ε

(3)

where ud = κ − κ/(kd + 1), ud = κ − κ/(kj ? + q + 2), and ud = κ − κ/(kj ? + q + 1). In other words, extracting κ/ε as a common factor we have P? P ? +r 1 ? up = κε · jd=1 kd · 1 − kd1+1 + κε · jd=j (k + q + 1) · 1 − ? +1 j kj ? +q+2 + P n 1 κ d=j ? +r+1 (kj ? + q) · 1 − k ? +q+1 . ε j

We now separate pluses from minuses and we get P ? j ? ? ? up = κε · d=1 kd + r · (kj + q + 1) + (n − j − r) · (kj + q) − P ? kj ? +q+1 kj ? +q j kd κ ? d=1 kd +1 + r · k ? +q+2 + (n − j − r) · k ? +q+1 , ε · j

j

which is the same as in (17). It follows that Algorithm 2 guarantees fair expectation on the utility of every participant regardless of the order in which the participants arrive at the system.

36 of 43

http://www.smart-society-project.eu


c SmartSociety Consortium 2013-2017

Deliverable D6.3

B

Submodular Set Functions and Approximations

Submodular functions have a close relationship to the utility functions that we want to impose per region in our search space. The reason is the notion of diminishing returns; that is, as the solution set increases, the gain that we achieve is decreasing, which conforms with our intuition, that as more people share a task, respecting the capacity constraints, then the overall gain is smaller through such allocations. More formally we can define the following; see for example [10, 23]. Definition B.1 (Submodularity). A set function f : 2X → R is submodular if, for all A, B ⊆ X f (A ∩ B) + f (A ∪ B) ≤ f (A) + f (B) The following equivalent definition exhibits the diminishing marginal returns property. Definition B.2 (Submodularity and Diminishing Marginal Returns). A set function f : 2X → R is submodular if, for all A, B ⊆ X with A ⊆ B, and for each j ∈ X, f (A ∪ {j}) − f (A) ≥ f (B ∪ {j}) − f (B) An important class of submodular set functions are those which are monotone. That is, augmenting a solution set can not cause the function to decrease. Definition B.3 (Monotonicity). A function f : 2X → R is monotone if for every A ⊆ B ⊆ X, f (A) ≤ f (B). The simplest example is where one wants to maximize a submodular function respecting some cardinality constraints. However, even this simple problem is NP-hard, for many classes of submodular functions; for example [13]. Further, the budgeted maximum coverage problem is NP-hard [18]. Therefore, one relies in practice on finding approximations of the optimal values. Nemhauser, Wolsey, and Fisher in their seminal paper [27] gave the first results on approximating submodular set functions. The following theorem gives an example of the flavour of the approximation results in the field. Theorem B.4 (Nemhauser, Wolsey, Fischer; [27]). Let k be an integer. Fix a nonnegative monotone submodular function f : 2X → R+ and let {Si }i≥0 be the greedily selected sets defined by Si = Si−1 ∪ {argmaxv (f (Si−1 ∪ {v}) − f (Si−1 ))}. Then, f (Sk ) ≥ (1 − 1/e) max f (S) . S:|S|≤k

Theorems with the flavour of Theorem B.4 can prove to be useful for our future analysis. The idea is that if we can define monotone submodular utility functions per region, and moreover be able to apply Theorem B.4 (or a similar one), then the theorem guarantees that we can find an (1 − γ) approximation of the true optimum. Such a result, in combination with the decomposition Theorem 2.5 would imply that we can obtain an (1 − γ) approximation of the social optimum. Further, algorithmically, this implies that one may run in parallel the allocation mechanisms for the different regions, thereby speeding up the whole process of computation of the social optimum. c SmartSociety Consortium 2013-2017

37 of 43


c SmartSociety Consortium 2013-2017

C

Deliverable D6.3

Proof of the Existence of Coarse Utility Functions

This appendix deals with proving the existence of a coarse utility function uc : S → R, over situations s ∈ S, representing the same preferences as a given utility function u : O → R over outcomes o ∈ O. We begin by giving some relevant definitions. Weak preferences can be represented compactly by a numerical function. An ordinal value function u : O → R represents, or agrees, with the ordering if and only if ∀o1 , o2 ∈ O, we have u(o1 ) ≥ u(o2 ) ⇔ o1 o2 .

(18)

Ordinal value functions are unique up to strictly increasing transformations. They contain only preference ranking information, and any linear combination of scale values is without meaning. In order to make such comparisons, a necessity for preferences under uncertainty, the expected utility representation theorem [31] is needed. Before giving this, we need to define the concept of a lottery. A simple lottery, where outcome oj ∈ O is realized with probability pj , is denoted: l = hp1 , o1 ; p2 , o2 ; ...; pn , on i.

(19)

The von Neumann and Morgenstern [31] expected utility representation theorem states: Theorem C.1 (Expected utility representation theorem). If and only if the weak preference relation on simple lotteries is complete, transitive, and satisfies the continuity and independence axioms, then there is an expected or linear utility function u : L → R which represents . Preference relations over lotteries can be extended to outcomes by noting lo = h1, xi ≡ o and u(o) = u(lo ). Due to the linearity of u, it can be shown through induction that: 1

2

n

u(l) = u(hp1 , o ; p2 , o ; ...; pn , o i) =

n X

pj u(oj ).

(20)

j=1

Equation 20 allows for representing preferences over lotteries with a utility function over a finite set of outcomes. We next try to constructively prove that, if a ϕ coarse user’s preferences over outcomes can be represented by a utility function u, there exists a coarse utility function uc that can represent preferences over the space of situations. To start off, we denote lotteries over situations as ls = hps1 , s1 ; ps2 , s2 ; ...; psz , sz i, where situation sj is realised with probability psj . Proposition C.1 (Equivalence of simple lotteries over outcomes and situations). Assume a set of outcomes O and situations S, and a many-to-one mapping ϕ : O → S. Every lottery over outcomes l = hp1 , o1 ; ...; pn , on i with oi ∈ O, ∀i = {1, ..., n} defines a lottery over P situations ls = hps1 , s1 ; ...; psz , sz i with sj ∈ S, ∀j = {1, ..., z}, such that psj = oi ∈O j pi , s

where Osj ⊆ O : ∀o ∈ Osj , ϕ(o) = sj . We write ϕ : L → Ls , where L, Ls are the sets of simple lotteries over outcomes and situations, respectively. 38 of 43

http://www.smart-society-project.eu


c SmartSociety Consortium 2013-2017

Deliverable D6.3

Corollary C.2. Given Prop. C.1, and since Osj are disjoint sets with union O, we have n X

pi =

i=1

z X

psj

(21)

j=1

We will now use the above to prove that there indeed exists a coarse utility function uc , that represents the same preference ordering as u: Proposition C.3 (Utility functions representing coarse preferences). Assume a coarse DM, ϕ : O → S, with a utility function u : L → R representing , and with sets of simple lotteries over outcomes and situations L, Ls , respectively. There exists a utility function uc : Ls → R representing , such that u(l) = uc ϕ(l) . P Proof. Define a function uc : S → R with uc ϕ(o) = u(o), and denote uc (ls ) = zj=1 psj uc (sj ), where ls = hps1 , s1 ; ...; psz , sz i with sj ∈ S, ∀j = {1, ..., z}. Also assume the lottery n i with oi ∈ O, ∀i = {1, ..., n} with l = ϕ(l). We know from the l = hp1 , o1 ; ...; pn , oP s Eq. 20 that u(l) = ni=1 pi u(oi ), but from Cor. C.2 and since we defined us (ϕ(o)) = u(o), we have: n X i=1

i

pi u(o ) =

z X X

j

pi uc (s ) =

j=1 oi ∈Osj

z X

psj uc (sj ) ⇔ u(l) = uc (ls ).

(22)

j=1

From the expected utility definition, given lotteries l and l0 we have l l0 ⇔ u(l) ≥ u(l0 ), but because u(l) = uc (ls ), and denoting ls = ϕ(l) and ls0 = ϕ(l0 ), we finally get: u(l) ≥ u(l0 ) ⇔ l l0 ⇔ ls ls0 ⇔ uc (ls ) ≥ uc (ls0 ).

c SmartSociety Consortium 2013-2017

(23)

39 of 43


c SmartSociety Consortium 2013-2017

D

Deliverable D6.3

Computational Gains through Coarseness: Analysis

This section examines the procedure of optimising utility functions over outcomes and situations, when the respective domains are discreet and finite. We approach this analysis from the perspective of the number of look-ups needed in order to determine an optimal allocation.

D.1

Non-decomposed utility functions over finite outcome domains

As a trivial example, we first consider non-decomposed utility functions ui : O → R, for some user i ∈ I, where O is simply a finite set of outcomes O = {o1 , o2 , ..., on }, and the utility function for any user is defined by a look-up table where all utility values for each outcome are enumerated. With no access to distributions, or more constrained bounds, over utility values, determining an optimal allocation will require a look-up for each outcome in O, and the application of some ranking procedure such as, e.g., bubble-sort. Coarseness, in this case, can be represented by a table with rows defining preferential equivalence classes and columns defining inclusion (binary) or, alternatively, a list of included outcomes. Fig. 4 illustrates these two alternative representations. s1 s2 .. . sm

o1 0 0 .. . 1

o2 1 0 .. . 0

o3 0 0 .. . 1

... ... ... .. . ...

on 0 1 .. . 0

s1 s2 .. .

{o2 , ...} {..., on } .. .

sm {o1 , o3 , ...} (b) List representation.

(a) Tabular representation.

Figure 4: An example of representations of preferential equivalence classes over outcomes, as defined by the corresponding situations. Deciding on an optimal outcome, for the case of one user, is equivalent to looking up one outcome for each equivalence class. Assuming the user’s preferences are described by ϕi : O → Si , and uc,i : Si → R, we need |Si | look-ups and one maximisation step. All other things being equal, optimising over the space of situations will obviously be preferable when |Si | < |O|.

D.2

Additively decomposed utility functions

Next, we assume that outcomes can be described by vectors of m variables o = [x1 , x2 , ..., xm ], where each attribute domain Xj , ∀j ∈ {1, ..., m} is a finite set. Further, Pm we assume that the utility function of each user i ∈ I can be written as ui (o) = j=1 ui,j (xj ), i.e. through an Additive Independent (AI) Decomposition [20] where the total utility is the sum of individual utilities accrued for individual properties of the outcome. We will write ui,j : Xj → R for the subutility function that maps each xj to a real value. 40 of 43

http://www.smart-society-project.eu


c SmartSociety Consortium 2013-2017

Deliverable D6.3

These utility functions can be represented with m look up tables of size |Xj |, ∀j = {1, ..., m} and for any user i ∈ I. The analysis now depends on whether O is equal to ×m j=1 Xj , or not. If this is the case, we can decide independently on an assignment xj , ∀j = {1, ..., m} because ui is a sum of independent sub-utilities with no constraints over the individual space of assignments for each property. Choosing an assignment for one variable does not constraint our choice over the rest. We will therefore need to perform |Xj | look-ups, for each variable j, in a manner similar to Sec. D.1. This leaves us with a P |X total of m j | look-ups and m maximisation steps. j=1 In the general case, where O ⊆ ×m j=1 Xj , we can no longer independently optimise over each variable assignment, since not all combinations of assignments will belong to O. The simplest approach to finding argmaxo∈O ui (o) , under these circumstances, is to estimate ui (o) ∀o ∈ O for any i ∈ I, similarly to D.1, but with each utility value look-up replaced with m look-ups and the summation of their values. This translates to Qm |O| · m ≤ j=1 |Xj | · m look-ups in total, and one maximisation over the entire set of all enumerated possible solutions. Generalising this model in order to allow subutilities to be over more than one P defined i ui,l (xi,l ), where xi,l are outcome property, we can define utility functions ui (o) = kl=1 i Xi,l = {x1 , ..., xm }. assignments to a set of variables Xi,l ⊆ {x1 , ..., xm }, such that ∪kl=1 This type of decomposition implies that utility functions exhibit Generalized Additive Independence (GAI) [4]. In this case, variable sets that jointly affect overall utility are not necessarily disjoint. Therefore, unlike the AI case, we can not generally optimise independently over sets of 1 or more variables, even if O = ×m j=1 Xj holds. Consequently, Q ∀ users i ∈ I, we will have to evaluate ui (o) ∀o ∈ O. This leads to |O| · ki ≤ m j=1 |Xj | · ki value look-ups, and one maximisation step over the resulting value sums.

D.3

Partial situations

The theory on coarse preferences considers a many-to-one mapping from a space of outcomes to a space of situations. Though there are no constraints, other than the user’s preferences, it would be useful for us to make use of any structure present in the respective outcome space utility function. In particular, we are interested in maintaining the decomposition of outcomes into assignments to a set of variables, even when working in the space of situations. Failing to do so would mean that we would have to map each individual outcome separately to a situation, thereby relinquishing any benefits resulting from the original decomposition. In order to achieve this goal, we will examine mapping assignments to subsets of variables Xt ⊆ {x1 , ..., xm }, to partial situations. Intuitively, this reflects the fact that the user is able to independently evaluate assignments to these subsets, which is also the assumption behind the original outcome space decomposition, as we saw in Sec D.2. For this purpose, let us assume that situations can be represented by a vector of partial situations, such that the mapping ϕ can be analysed to a set of functions ϕt , with t = {1, ..., h}. ϕt are many-to-one mappings from a space Xt of potential assignments to a set of variables Xt ⊆ {x1 , ..., xm }, to a space of partial situations St : ϕt : Xt → St , c SmartSociety Consortium 2013-2017

(24) 41 of 43


c SmartSociety Consortium 2013-2017

Deliverable D6.3

with corresponding coarse subutility functions uc,t : St → R,

(25)

such that uc (o) =

h X

uc,t (Xt ).

(26)

t=1

We term Xt , ∀t ∈ {1, ..., h} Partial Situation Variable Sets (PSVS) and require that their union fully covers (though is not necessarily a partition of) the set of variables {x1 , ..., xm }: ∪ht=1 Xt = {x1 , ..., xm }.

(27)

The variable subsets over which original subutility functions are defined do not need to be the same over which coarse subutility functions are defined. However, the equivalence of u and uc forces some constraints. Essentially, a user can not have an outcome space utility function that is decomposed in such a way, that utilities cannot be computed for partial situations. All variable subsets over which u’s subutility functions are defined, must be equal to the union of one or more PSVS. These need not neccessarily be disjoint. Formally: Proposition D.1. If given a preference ordering , there exists any preferentially independent variable set A, such that @τ ⊆ {1, ..., h} : A = ∪t∈τ Xt , then the situation decomposition ϕt , with t = {1, ..., h}, is not compatible with that ordering.

D.4

Coarseness with additively decomposed utility functions

This section makes use of the construct of partial situations, in order to explore the potential for computational reduction resulting from applying coarse preferences on AI and GAI decomposed utility functions. We begin by examining the AI case. It is clear, from Prop. D.1, that the only type of coarseness we need to consider for the AI case, is that of one PSVS for each variable. Though we could, in addition to these, also assume more complex PSVS from combinations of variables, these can not be used to define the domain of any subutility function. Something which results in them being redundant. Coarseness, in the AI case, is therefore representable by the following mappings ϕi,j : Xj → Sj , ∀j ∈ {1, ..., m},

(28)

with si,j = ϕi,j (xj ). Further, the same user’s coarse utility function can be written as uc,i (o) =

m X

uc,i,j (si,j ),

(29)

j=1

42 of 43

http://www.smart-society-project.eu


c SmartSociety Consortium 2013-2017

Deliverable D6.3

with uc,i,j : Xj → R, ∀j ∈ {1, ..., m}.

(30)

We will refer to a user whose preferences can be described in this way, as AI-coarse. Deciding on an optimal allocation for this user will entail looking up the subutilities of assignments to m variables, for each available situation, with an upper bound of m Y

|Si,j | look-ups.

(31)

j=1

Examining the GAI case, we once again can deduce from Prop. D.1 that no supersets of the subutility function domains need to be examined for constructing the coarse representation. However, nothing prevents us from considering non-empty subsets of these, even though this is indication that the original outcome space subutilities could have been defined over these subsets instead. Leaving this as an open concern, we can define a user’s coarse preferences as ϕi,l,z : Xi,l,z → Si,l,z , ∀l ∈ {1, ..., ki } and ∀z ∈ {1, ..., yi,l },

(32)

with si,l,z = ϕi,l,z (xi,l ). Further, the coarse utility function can be written as uc,i (o) =

yi,l ki X X

uc,i,l,z (si,l,z ),

(33)

l=1 z=1

and uc,i,l,z : Xi,l,z → R.

(34)

What he have done here, is to allow an arbitrary partitioning of user i’s original set of yi,l Xi,l,z . Any such partitioning would variables over which subutilities are defined Xi,l = ∪z=1 be compatible with the original outcome space GAI-decomposed utility function. We will refer to a user whose preferences can be described in this way, as GAI-coarse. Deciding on an P optimal allocation for this user will entail looking up the of Qkisubutilities Qyi,l ki assignments to z=1 |Si,l,z | l=1 yi,l sets of variables, for each of, at maximum, l=1 situations, with an upper bound of ki X l=1

yi,l ·

yi,l ki Y Y

|Si,l,z |

(35)

l=1 z=1

look-ups.

c SmartSociety Consortium 2013-2017

43 of 43


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.