LPSScores {socialranking} | R Documentation |
Calculate the L^{p^*}
scores.
LPSScores(powerRelation, elements = powerRelation$elements)
LPSRanking(powerRelation)
lexcelPSScores(powerRelation, elements = powerRelation$elements)
lexcelPSRanking(powerRelation)
powerRelation |
A |
elements |
Vector of elements of which to calculate their scores.
By default, the scores of all elements in |
Let N
be a set of elements, \succsim \in \mathcal{T}(\mathcal{P})
a power relation,
and \Sigma_1 \succ \Sigma_2 \succ \dots \succ \Sigma_m
its corresponding quotient order.
For an element i \in N
, construct a matrix M^\succsim_i
with m
columns and |N|
rows.
Whereas each column q
represents an equivalence class, each row p
corresponds to the coalition size.
(M^\succsim_i)_{p,q} = |\lbrace S \in \Sigma_q: |S| = p \text{ and } i \in S\rbrace|
For i, j \in N
, the social ranking solution L^{p^*}
then ranks i
strictly above j
if one of the following conditions hold:
\lbrace i \rbrace \succ \lbrace j \rbrace
;
\lbrace i \rbrace, \lbrace j \rbrace \in \Sigma_k
and there exists a row p_0 \in \lbrace 2, \dots, |N|\rbrace
and column q_0 \in \lbrace 1, \dots, k-1\rbrace
such that:
(M^\succsim_i)_{p,q} = (M^\succsim_j)_{p,q}\quad \forall p < p_0, q < k,
(M^\succsim_i)_{p_0,q} = (M^\succsim_j)_{p_0,q}\quad \forall q < q_0,\text{ and}
(M^\succsim_i)_{p_0,q_0} > (M^\succsim_j)_{p_0,q_0}.
Score function returns a list of type LP*Scores
and length of powerRelation$elements
(unless parameter elements
is specified).
Each index contains a matrix with length(powerRelation$elements)
rows and a variable number of columns, depending on the equivalence class index containing the singleton coalition of that element (matrix can have 0 columns).
Ranking function returns corresponding SocialRanking
object.
Let \succsim: (123 \sim 12 \sim 2) \succ (13 \sim 23) \succ (1 \sim 3 \sim \{\})
.
From this, we get the following three matrices:
M^\succsim_1 = \begin{bmatrix}
0 & 0 & 1\\
1 & 1 & 0\\
1 & 0 & 0
\end{bmatrix}
M^\succsim_2 = \begin{bmatrix}
1 & 0 & 0\\
1 & 0 & 1\\
1 & 0 & 0
\end{bmatrix}
M^\succsim_3 = \begin{bmatrix}
0 & 0 & 1\\
0 & 2 & 0\\
1 & 0 & 0
\end{bmatrix}
(M^\succsim_2)_{2,3}
in this context refers to the value in the second row and third column of element 2, in this case 1
.
In the example, 2
will be immediately put above 1
and 3
because \lbrace 2 \rbrace \succ \lbrace 1 \rbrace
and \lbrace 2 \rbrace \succ \lbrace 3 \rbrace
.
Since \lbrace 1 \rbrace \sim \lbrace 3 \rbrace
, we next consider the coalitions of size 2. Here, it turns out that (M^\succsim_1)_{2,1} = 1 > 0 = (M^\succsim_3)_{2,1}
,
setting 3
to be the least preferred option (this is opposed to the L^p
relation, which has no strict preference of 1
over 3
).
As alluded to, L^{p^*}
is similar to L^p
, LPRanking()
, in that it first considers the singleton coalitions, then sequentially every coalition of size 2 and above that ranks better than the corresponding singleton.
It can be assumed, however, that L^{p^*}
is more granular, as it doesn't throw away any information about which equivalence class these bigger coalitions belong to.
The matrices as described above and in Béal S, Rémila E, Solal P (2022).
“Lexicographic solutions for coalitional rankings based on individual and collective performances.”
Journal of Mathematical Economics, 102, 102738. can be investigated with the L1Scores()
function.
LPSScores()
discards some redundant information, most notably all columns from each element's singleton class and the ones thereafter.
The first row is also removed, as all values there are guaranteed to be 0.
For the example above, this would actually result in the matrices
matrix(c(1,1, 1,0), nrow=2) matrix(numeric(), nrow=2) matrix(c(0,1, 2,0), nrow=2)
For better discoverability, lexcelPSScores()
and lexcelPSRanking()
serve as aliases for LPSScores()
and LPSRanking()
, respectively.
Béal S, Rémila E, Solal P (2022). “Lexicographic solutions for coalitional rankings based on individual and collective performances.” Journal of Mathematical Economics, 102, 102738.
Other ranking solution functions:
L1Scores()
,
L2Scores()
,
LPScores()
,
copelandScores()
,
cumulativeScores()
,
kramerSimpsonScores()
,
lexcelScores()
,
ordinalBanzhafScores()
pr <- as.PowerRelation("(123 ~ 12 ~ 2) > (13 ~ 23) > (1 ~ 3 ~ {})")
scores <- LPSScores(pr)
scores$`1`
# [,1] [,2]
# [1,] 1 1
# [2,] 1 0
scores$`2`
#
# [1,]
# [2,]
LPSRanking(pr)
# 2 > 1 > 3