JP7680972B2 - Fairness judgment device, fairness judgment method, and fairness judgment program - Google Patents
Fairness judgment device, fairness judgment method, and fairness judgment program Download PDFInfo
- Publication number
- JP7680972B2 JP7680972B2 JP2022011198A JP2022011198A JP7680972B2 JP 7680972 B2 JP7680972 B2 JP 7680972B2 JP 2022011198 A JP2022011198 A JP 2022011198A JP 2022011198 A JP2022011198 A JP 2022011198A JP 7680972 B2 JP7680972 B2 JP 7680972B2
- Authority
- JP
- Japan
- Prior art keywords
- popularity
- ranking
- preference
- sets
- fairness
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
特許法第30条第2項適用 (1)令和4年1月12日にオンライン配布が開始された2022年暗号と情報セキュリティシンポジウム論文集にて公開 (2)令和4年1月19日、2022年暗号と情報セキュリティシンポジウムにてオンライン発表Article 30,
本発明は、マッチングの公平性を判定するための装置、方法及びプログラムに関する。 The present invention relates to an apparatus, method, and program for determining the fairness of matching.
二部グラフにおけるマッチングの最適化問題は、労働者を仕事に割り当てる問題の数学モデルなどとして古くから研究されている。全体として満足度を最適化するマッチングは、重み付き最小完全二部グラフの最小フロー問題に帰着される。非特許文献1の安定結婚問題は、このマッチングに安定性という概念を採用した問題であり、安定なマッチングをO(n2)の計算量で見つけるアルゴリズムが提案されている。
The optimization problem of matching in a bipartite graph has been studied for a long time as a mathematical model for the problem of allocating workers to jobs. Matching that optimizes overall satisfaction is reduced to a minimum flow problem in a weighted minimal complete bipartite graph. The stable marriage problem in Non-Patent
安定結婚問題については、これまでに様々な拡張問題が考えられており、拡張問題の一分野として、公平性の議論がある。非特許文献1のアルゴリズムによって見つかる安定なマッチングは、男性又は女性の一方に最適なマッチングであり、また、全体としてのコストの最適化などは考慮されていなかった。
そこで、最小コスト安定マッチング、最小後悔安定マッチング(非特許文献2)、男女平等安定マッチング(非特許文献3)など、安定結婚問題を拡張した最適化問題が研究されてきた。これらの問題は、全体最適化の意味合いでの公平性を目指している。
Various extension problems have been considered for the stable marriage problem, and one area of extension problems is the discussion of fairness. The stable matching found by the algorithm in
Therefore, optimization problems that extend the stable marriage problem, such as minimum-cost stable matching, minimum-regret stable matching (Non-Patent Document 2), and gender-equality stable matching (Non-Patent Document 3), have been studied. These problems aim for fairness in the sense of global optimization.
ところが、このような全体最適化によって公平性を満足させるマッチング結果は、例えば、能力や評価の高い参加者にとっては、相対的に不利益をもたらすものである可能性があった。非特許文献4では、必ずしも安定とは限らない男女マッチングなどの問題において、能力主義的な公平性が定義され、また、どれくらい能力主義的公平であるかを定量的に評価できる指標が提案されている。
However, such a matching result that satisfies fairness through global optimization may, for example, cause a relative disadvantage to participants with high abilities or high evaluations. Non-Patent
非特許文献4では、能力主義的な公平性の定義が提案されたが、能力主義的公平性を満たすマッチングであるかどうかを判定する効率の良い手法については言及されていなかった。このため、公平なマッチングを探索する際に、マッチング候補が得られる度に発生する公平性の判定に掛かる処理負荷が課題となっていた。
Non-patent
本発明は、マッチングにおける能力主義的な公平性を効率よく判定できる公平性判定装置、公平性判定方法及び公平性判定プログラムを提供することを目的とする。 The present invention aims to provide a fairness determination device, a fairness determination method, and a fairness determination program that can efficiently determine meritocratic fairness in matching.
本発明に係る公平性判定装置は、互いに素な二つの集合それぞれの各要素における他方の集合の選好順序、及び当該二つの集合の間でマッチングされたペアの情報から、前記二つの集合それぞれの各要素におけるペアの選好順位を取得する選好順位取得部と、前記二つの集合それぞれの各要素に対する選好順位を総合し、各要素の人気度を算出する人気度算出部と、前記二つの集合それぞれについて、各要素を前記人気度の昇順にソートし、当該人気度が同値の場合に同じ人気順位を付与する人気順位算出部と、前記二つの集合それぞれについて、前記人気順位毎に前記選好順位の最小値及び最大値を格納した判定テーブルを生成する判定テーブル生成部と、前記判定テーブルにおいて、前記人気順位がi番目までの前記選好順位の最大値が、前記人気順位がi+k+1番目の前記選好順位の最小値+lより大きいiが存在しない場合に条件を満たし、存在する場合に条件を満たさないと判定するテーブル別判定部と、前記二つの集合の双方について前記条件を満たすと判定された場合に能力主義的公平であると判定し、いずれかで前記条件を満たさないと判定された場合に能力主義的公平でないと判定する公平性判定部と、を備える。 The fairness determination device according to the present invention includes a preference ranking acquisition unit that acquires preference rankings of pairs in each element of two mutually prime sets from the preference ranking of the other set in each element of each of the two sets and information on pairs matched between the two sets, a popularity calculation unit that combines the preference rankings for each element of the two sets to calculate the popularity of each element, a popularity ranking calculation unit that sorts each element of each of the two sets in ascending order of the popularity and assigns the same popularity ranking to elements with the same popularity ranking, and a popularity ranking calculation unit that calculates the popularity ranking of the elements of each of the two sets in ascending order of the popularity and assigns the same popularity ranking to elements with the same popularity ranking to elements with the same popularity ranking. The system includes a judgment table generating unit that generates a judgment table that stores the minimum and maximum values of the preference rankings, a table-specific judgment unit that judges that a condition is met if there is no i in the judgment table where the maximum value of the preference rankings up to the i-th popularity ranking is greater than the minimum value + l of the preference ranking for the i+k+1th popularity ranking, and that the condition is not met if there is such a value, and a fairness judgment unit that judges that meritocratic fairness is met if it is judged that the condition is met for both of the two sets, and that it is not meritocratic fairness if it is judged that the condition is not met for either of them.
前記人気順位算出部は、各要素を前記人気度の昇順、及び前記ペアの選好順位の昇順にソートしてもよい。 The popularity ranking calculation unit may sort each element in ascending order of the popularity and in ascending order of the preference ranking of the pair.
前記判定テーブル生成部は、前記二つの集合それぞれについて、最大の人気順位における前記選好順位の最大値の格納を省略してもよい。 The judgment table generation unit may omit storing the maximum value of the preference ranking at the maximum popularity ranking for each of the two sets.
前記判定テーブル生成部は、前記二つの集合それぞれについて、最小の人気順位における前記選好順位の最小値の格納を省略してもよい。 The judgment table generation unit may omit storing the minimum value of the preference ranking for the minimum popularity ranking for each of the two sets.
本発明に係る公平性判定方法は、互いに素な二つの集合それぞれの各要素における他方の集合の選好順序、及び当該二つの集合の間でマッチングされたペアの情報から、前記二つの集合それぞれの各要素におけるペアの選好順位を取得する選好順位取得ステップと、前記二つの集合それぞれの各要素に対する選好順位を総合し、各要素の人気度を算出する人気度算出ステップと、前記二つの集合それぞれについて、各要素を前記人気度の昇順にソートし、当該人気度が同値の場合に同じ人気順位を付与する人気順位算出ステップと、前記二つの集合それぞれについて、前記人気順位毎に前記選好順位の最小値及び最大値を格納した判定テーブルを生成する判定テーブル生成ステップと、前記判定テーブルにおいて、前記人気順位がi番目までの前記選好順位の最大値が、前記人気順位がi+k+1番目の前記選好順位の最小値+lより大きいiが存在しない場合に条件を満たし、存在する場合に条件を満たさないと判定するテーブル別判定ステップと、前記二つの集合の双方について前記条件を満たすと判定された場合に能力主義的公平であると判定し、いずれかで前記条件を満たさないと判定された場合に能力主義的公平でないと判定する公平性判定ステップと、をコンピュータが実行する。 The fairness determination method according to the present invention includes a preference ranking acquisition step for acquiring preference rankings of pairs in each element of two mutually prime sets from the preference ranking of the other set in each element of the two sets and information on pairs matched between the two sets; a popularity calculation step for combining the preference rankings for each element of the two sets to calculate the popularity of each element; a popularity ranking calculation step for sorting each element of the two sets in ascending order of the popularity and assigning the same popularity ranking to elements with the same popularity ranking; and a preference ranking calculation step for calculating the preference rankings for each popularity ranking of the two sets. The computer executes a judgment table generation step of generating a judgment table storing minimum and maximum values of the preference rankings, a table-specific judgment step of judging that a condition is satisfied if there is no i in the judgment table where the maximum value of the preference rankings up to the i-th popularity ranking is greater than the minimum value + l of the preference rankings for the i+k+1th popularity ranking, and that the condition is not satisfied if there is such a case, and a fairness judgment step of judging that meritocratic fairness is present if it is judged that the condition is satisfied for both of the two sets, and that meritocratic fairness is not present if it is judged that the condition is not satisfied for either of the sets.
本発明に係る公平性判定プログラムは、前記公平性判定装置としてコンピュータを機能させるためのものである。 The fairness judgment program according to the present invention is for causing a computer to function as the fairness judgment device.
本発明によれば、マッチングにおける能力主義的な公平性を効率よく判定できる。 The present invention makes it possible to efficiently determine meritocratic fairness in matching.
以下、本発明の実施形態の一例について説明する。
本実施形態の公平性判定方法は、二部グラフにおいて得られたマッチングを入力として、このマッチングが能力主義的公平性を満たすか否かを短時間で判定するものである。ここでは、男女のマッチングを例に説明するが、本実施形態は、ジョブマッチングなどの類似のユースケースにも適用可能である。
An example of an embodiment of the present invention will now be described.
The fairness determination method of this embodiment uses a matching obtained in a bipartite graph as an input and quickly determines whether the matching satisfies meritocratic fairness. Here, male-female matching is used as an example, but this embodiment can also be applied to similar use cases such as job matching.
マッチングのインスタンスIは、2つの互いに素な要素数nの集合MとWからなる。ここで、Mは男性集合、Wは女性集合である。各要素は、それぞれ他方の集合の要素に対し、選好順序(preference order)と呼ばれる狭義全順序を持つ。
マッチングXは、MとWのペアである。すなわち、X⊆M×Wである。ここでは簡単のため、必ず1対1のペアをn組作る場合のみ考える。
A matching instance I consists of two relatively prime sets M and W of n elements, where M is the set of men and W is the set of women, and each element has a strict total order, called the preference order, with respect to the elements of the other set.
A matching X is a pair of M and W. That is, X ⊆ M × W. For simplicity, we will consider only the case where n one-to-one pairs are made.
マッチングXにおいて、男性mと女性wとがペアである、すなわち(m,w)∈Xのとき、X(m)=w,X(w)=mと表す。また、mの選好順序におけるwの順位をPm(w)と表し、これをmにおけるwの選好順位(preference rank)と呼ぶ。同様に、wにおけるmの選好順位をPw(m)と表す。 In a matching X, a man m and a woman w are a pair, i.e., (m, w) ∈ X, then X(m) = w, X(w) = m. Also, the rank of w in the preference order of m is denoted as Pm (w), which is called the preference rank of w in m. Similarly, the preference rank of m in w is denoted as Pw (m).
本実施形態における個人主義的公平とは、能力又は評価がより高い者はより希望通りになるという考え方である。男女のマッチングにおいては、異性から選好順序上でより上位の(小さい)選好順位に指定される傾向にある人物を、評価の高い人物とみなす。 Individualistic fairness in this embodiment refers to the idea that those with higher abilities or evaluations are more likely to get what they want. In matching between men and women, individuals who tend to be designated as having a higher (lower) preference rank by the opposite sex in the order of preferences are considered to be highly evaluated individuals.
ここでは、全ての異性からの選好順序上の選好順位の総和により人物の定量的な評価を行うことで、同性他者との比較を行う。あるマッチングにおける任意の人物aについて、その人物aよりも評価の低い同性他者bとペアになっている相手の選好順序上の選好順位が、その人物aとペアとなっている相手の選好順序上の選好順位よりも常に下位である(大きい)か等しいとき、このマッチングは個人主義的公平であるとする。 Here, a person is quantitatively evaluated based on the sum of preference rankings from all opposite-sex individuals, and compared with others of the same sex. For any person a in a given match, if the preference ranking of the other person paired with same-sex individual b, who is rated lower than person a, is always lower (higher) or equal to the preference ranking of the other person paired with person a, then the match is considered to be individualistically fair.
m∈M及びw∈Wについて、G(m)=Σn
i=1Pwi(m)及びG(w)=Σn
i=1Pmi(w)を、それぞれm及びwの人気度(popularity)とする。
また、R(m)を、男性集合Mを人気度G(m)の昇順にソートした場合のmの順位とし、これをmの人気順位(popular rank)と呼ぶ。同様に、R(w)を、女性集合Wを人気度G(w)の昇順にソートした場合のwの人気順位とする。
なお、あるメンバm又はwについて、人気度G及び人気順位Rが小さいほど、より異性から人気のあるメンバとみなす。
ここで、ある集合H及びある自然数p∈Nについて、人気順位がpよりも小さい(評価が高い)Hの部分集合をH<pとすると、個人主義的公平性は、次のように定義できる。
For m∈M and w∈W, let G(m) = Σni =1Pwi ( m) and G(w) = Σni =1Pmi ( w) be the popularity of m and w, respectively.
Let R(m) be the rank of m when the set of men M is sorted in ascending order of popularity G(m), and call this the popular rank of m. Similarly, let R(w) be the popularity rank of w when the set of women W is sorted in ascending order of popularity G(w).
It should be noted that for a certain member m or w, the smaller the popularity G and popularity ranking R, the more popular the member is with the opposite sex.
Here, for a certain set H and a certain natural number p∈N, if a subset of H whose popularity ranking is smaller than p (having a high rating) is defined as H <p , then individualistic fairness can be defined as follows.
定義1: 任意のm∈M及びw∈Wについて、
(1)任意のm′∈M<R(m)について、
Pm′(X(m′))≦Pm(X(m))
かつ、
(2)任意のw′∈W<R(w)について、
Pw′(X(w′))≦Pw(X(w))
を満たすとき、マッチングXは、厳密な能力主義的公平である。
Definition 1: For any m ∈ M and w ∈ W,
(1) For any m′∈M < R(m) ,
P m' (X(m'))≦P m (X(m))
and,
(2) For any w′∈W < R(w) ,
P w' (X(w'))≦P w (X(w))
A matching X is strictly meritocratically fair if
ただし、定義1の条件を満たす厳密な能力主義的公平なマッチングは、任意の選好順序において、必ずしも存在するとは限らない。また、厳密な能力主義的な公平性を満たすものの、全体最適性を大きく損なうマッチングしか存在しない場合もある。
そこで、次のように緩和した条件に基づく能力主義的公平性の定義を示す。
・自分より人気順位が下位k番目以内の同性他者が自分よりも選好順位が小さい異性とマッチングするのを許容する。
・ある同性の2名について、それぞれがマッチングした相手の選好順位の差がl以内であれば差がないとみなし許容する。
However, a strictly meritocratically fair matching that satisfies the conditions of
Therefore, we present a definition of meritocratic fairness based on the following relaxed conditions.
- Allow same-sex people who are within the kth lowest popularity ranking to be matched with people of the opposite sex who have a lower preference ranking than you.
- For two people of the same sex, if the difference in preference rankings of their matched partners is within l, it is considered to be no difference and is accepted.
定義2: 任意のm∈M及びw∈Wについて、
(1)任意のm′∈M<R(m)-kについて、
Pm′(X(m′))≦Pm(X(m))+l
かつ、
(2)任意のw′∈W<R(w)-kについて、
Pw′(X(w′))≦Pw(X(w))+l
を満たすとき、このマッチングXは、(k,l)-能力主義的公平である。
Definition 2: For any m ∈ M and w ∈ W,
(1) For any m′∈M < R(m)−k ,
P m' (X(m'))≦P m (X(m))+l
and,
(2) For any w′∈W < R(w)−k ,
P w' (X(w'))≦P w (X(w))+l
If x = 1, then the matching X is (k, l)-meritocratically fair.
次に、緩和した能力主義的公平性を判定するための装置の機能構成と、処理アルゴリズムを示す。
なお、厳密な能力主義的公平性についても、緩和した(k,l)-能力主義的公平性のk=0,l=0となる特殊ケースであるから、本アルゴリズムを用いて判定できる。
Next, the functional configuration of the device for determining relaxed meritocratic fairness and the processing algorithm are shown.
In addition, strict meritocratic fairness can also be determined using this algorithm, since it is a special case of relaxed (k, l)-meritocratic fairness where k=0, l=0.
ここで、男性集合をM={m1,m2,…,mn}とし、女性集合をW={w1,w2,…,wn}とする。M,Wを配列として考え、これらの配列の要素aは、属性としてa.pref_rank,a.popularity,a.pop_rankを持つ構造体とする。
a.pref_rankは、aのペアのaにおける選好順位、すなわちPa(X(a))である。また、a.popularity及びa.pop_rankは、それぞれaの人気度及び人気順位である。
Here, the set of men is M = { m1 , m2 , ..., mn }, and the set of women is W = { w1 , w2 , ..., wn }. M and W are considered as arrays, and element a of these arrays is a structure having attributes a.pref_rank, a.popularity, and a.pop_rank.
a.pref_rank is the preference rank of a's pair on a, i.e., P a (X(a)), and a.popularity and a.pop_rank are the popularity and popularity rank of a, respectively.
図1は、本実施形態における公平性判定装置1の機能構成を示す図である。
公平性判定装置1は、サーバ装置又はパーソナルコンピュータなどの情報処理装置(コンピュータ)であり、制御部10及び記憶部20の他、各種データの入出力デバイス及び通信デバイスなどを備える。
FIG. 1 is a diagram showing the functional configuration of a
The
制御部10は、公平性判定装置1の全体を制御する部分であり、記憶部20に記憶された各種プログラムを適宜読み出して実行することにより、本実施形態における各機能を実現する。制御部10は、CPUであってよい。
The
記憶部20は、ハードウェア群を公平性判定装置1として機能させるための公平性判定プログラムを含む各種プログラム、及び各種データなどの記憶領域であり、ROM、RAM、フラッシュメモリ又はハードディスクドライブ(HDD)などであってよい。
The
制御部10は、選好順位取得部11と、人気度算出部12と、人気順位算出部13と、判定テーブル生成部14と、テーブル別判定部15と、公平性判定部16とを備える。
The
選好順位取得部11は、互いに素な二つの集合M及びWそれぞれの各要素における他方の集合の選好順序、及びこれら二つの集合の間でマッチングされたペアの情報から、二つの集合それぞれの各要素におけるペアの選好順位を取得する。
The preference ranking
図2は、本実施形態における選好順位取得部11がペアの選好順位を求めるアルゴリズムPreferenceRankを示す図である。
入力は、マッチングのインスタンスI、及びマッチングXである(ステップ1)。なお、Iは、長さnの選好順位のリストが要素である、長さn(=|M|=|W|)の二つの配列である。
FIG. 2 is a diagram showing an algorithm PreferenceRank used by the preference ranking obtaining
The inputs are an instance of a matching, I, and a matching, X (step 1), where I is two arrays of length n (=|M|=|W|) whose elements are lists of preference orders of length n.
選好順位取得部11は、要素数n回のループ(ステップ2)により、配列Mにおけるi番目の要素M[i]の属性pref_rankに対して、ペアの相手であるX(M[i])の選好順位PM[i](X(M[i]))を格納する(ステップ3)。
同様に、選好順位取得部11は、配列Wにおけるi番目の要素W[i]の属性pref_rankに対して、ペアの相手であるX(W[i])の選好順位PW[i](X(W[i]))を格納する(ステップ4)。
The preference ranking
Similarly, the preference ranking
選好順位取得部11は、各要素におけるペアの選好順位が属性pref_rankに格納された配列M及びWを出力する(ステップ6)。
The preference ranking
人気度算出部12は、二つの集合M及びWそれぞれの各要素に対する選好順位を総合し、各要素の人気度を算出する。
The
図3は、本実施形態における人気度算出部12が各要素の人気度を求めるアルゴリズムPopularityを示す図である。
入力は、マッチングのインスタンスI、及び二つの配列M,Wである(ステップ1)。
FIG. 3 is a diagram showing the Popularity algorithm used by the
The inputs are a matching instance I and two arrays M and W (Step 1).
人気度算出部12は、要素数n回の二重ループ(ステップ2,3)により、配列Mにおけるi番目の要素M[i]の属性popularityに対して、配列Wの各要素におけるM[i]の選好順位を全要素について加算する(ステップ4)。
同様に、人気度算出部12は、配列Wにおけるi番目の要素W[i]の属性popularityに対して、配列Mの各要素におけるW[i]の選好順位を全要素について加算する(ステップ5)。
The
Similarly, the
人気度算出部12は、各要素の人気度が属性popularityに格納された配列M及びWを出力する(ステップ8)。
The
人気順位算出部13は、二つの集合それぞれについて、各要素を人気度の昇順にソートして人気順位を付与する。このとき、人気順位算出部13は、人気度が同値の要素に対しては、同じ人気順位を付与する。
また、人気順位算出部13は、各要素を人気度の昇順、及びペアの選好順位の昇順にソートすることにより、後段の処理を効率化してもよい。
The popularity ranking
Furthermore, the popularity ranking
図4は、本実施形態における人気順位算出部13が各要素の人気順位を求めるアルゴリズムPopularRankを示す図である。
入力は、選好順位及び人気度が各要素の属性として付与された配列であり、M及びWが順に入力される。
FIG. 4 is a diagram showing an algorithm PopularRank used by the popularity ranking
The input is an array in which the preference order and popularity are assigned as attributes of each element, and M and W are input in that order.
まず、人気順位算出部13は、関数Sort(A)により、入力された配列Aを人気度及び選好順位の昇順にソートした配列A’を得る(ステップ2)。
なお、Sort(A)は、配列Aの入力に対して、属性popularityの値で昇順にソートし、同値の場合には属性pref_rankでさらに昇順にソートした配列A’を出力する関数である。
First, the popularity ranking
Note that Sort(A) is a function that sorts the input array A in ascending order by the value of the attribute popularity, and in the case of a tie, outputs an array A' that has been further sorted in ascending order by the attribute pref_rank.
次に、人気順位算出部13は、変数pre_score及びnext_rankを、それぞれ0に初期化した後(ステップ3,4)、要素数n回のループ処理を行う(ステップ5)。
Next, the popularity ranking
ループの中で、人気順位算出部13は、配列A’のi番目の要素の人気度(score=A’[i].popularity)がpre_scoreと異なる(大きい)場合に、next_rankをiに更新し(ステップ8)、pre_scoreをscoreに更新する(ステップ9)。そして、人気順位算出部13は、人気順位(A’[i].pop_rank)に、next_rankを格納する(ステップ11)。
すなわち、iが増加しても人気度が同値であった場合(ステップ7でFALSE)は、next_rankは更新されず、同じ人気順位が付与される。一方、人気度が増加した場合(ステップ7でTRUE)は、加算された人気順位(=i)が付与される。
In the loop, if the popularity of the i-th element of array A'(score=A'[i].popularity) is different (greater) than pre_score, the popularity ranking
That is, if i increases but the popularity remains the same (FALSE in step 7), next_rank is not updated and the same popularity ranking is assigned. On the other hand, if the popularity increases (TRUE in step 7), the increased popularity ranking (=i) is assigned.
人気順位算出部13は、各要素の人気順位が属性pop_rankに格納された配列A’を出力する(ステップ13)。
The popularity ranking
判定テーブル生成部14は、二つの集合それぞれについて、人気順位毎に選好順位の最小値及び最大値を格納した判定テーブルを生成する。
The judgment
図5は、本実施形態における判定テーブル生成部14が判定テーブルを生成するアルゴリズムMakeTableを示す図である。
入力は、各要素の属性に選好順位、人気度、人気順位が付与された配列であり、人気順位算出部13によりソートされた配列M’及びW’が順に入力される。
FIG. 5 is a diagram showing an algorithm MakeTable for generating a judgment table by the judgment
The input is an array in which the attribute of each element is assigned a preference order, popularity, and popularity order, and the arrays M' and W' sorted by the popularity
まず、判定テーブル生成部14は、要素数n回のループ処理(ステップ2)により、判定テーブルに格納される最小値(Table[i].min)及び最大値(Table[i].max)を0に初期化する(ステップ3,4)。
続いて、変数pre_pop_rank,pre_pref_rank,pre_indexを、それぞれ0,0,1に初期化する(ステップ6~8)。
First, the judgment
Next, the variables pre_pop_rank, pre_pref_rank, and pre_index are initialized to 0, 0, and 1, respectively (
次に、判定テーブル生成部14は、要素数n回のループ処理(ステップ9)の中で、入力された配列Aのi番目の要素の人気順位(A[i].pop_rank)がpre_pop_rankより変化した(大きくなった)場合に(ステップ10)、判定テーブルにおけるTable[i].min(i番目の人気順位における選好順位の最小値)にA[i].pref_rankを、Table[pre_index].max(一つ前の人気順位における選好順位の最大値)にpre_pref_rankを、それぞれ格納する(ステップ11,12)。
また、判定テーブル生成部14は、判定テーブルのi番目の要素(min)を更新したので、pre_indexをiに更新する(ステップ13)。
Next, in the loop process of n number of elements (step 9), if the popularity ranking (A[i].pop_rank) of the i-th element of the input array A has changed (become larger) than pre_pop_rank (step 10), the judgment
Furthermore, since the judgment
一方、配列Aのi番目の要素の人気順位(A[i].pop_rank)がpre_pop_rankと変わらない場合(ステップ10)、判定テーブル生成部14は、判定テーブルへの値の格納を保留し、pre_pop_rankをA[i].pop_rankに、pre_pref_rankをA[i].pref_rankに、それぞれ更新する(ステップ15,16)。
On the other hand, if the popularity ranking (A[i].pop_rank) of the i-th element of array A is unchanged from pre_pop_rank (step 10), the judgment
判定テーブル生成部14は、インデックスが人気順位であり、属性として各人気順位における選好順位の範囲(最小の選好順位min及び最大の選好順位max)を持つ判定テーブルTableを出力する(ステップ18)。
The judgment
なお、最大の人気順位における選好順位の最大値A[n].max、及び最小の人気順位における選好順位の最小値A[1].minは、後段の処理で参照されないため、判定テーブル生成部14は、これらの値の格納を省略してもよい。
Note that the maximum value A[n].max of the preference ranking in the maximum popularity ranking and the minimum value A[1].min of the preference ranking in the minimum popularity ranking are not referenced in subsequent processing, so the judgment
テーブル別判定部15は、生成された判定テーブルにおいて、人気順位がi番目までの選好順位の最大値が、人気順位がi+k+1番目の選好順位の最小値+lより大きいiが存在しない場合に能力主義的公平性の条件を満たし、存在する場合に条件を満たさないと判定する。
The table-
図6は、本実施形態におけるテーブル別判定部15が判定テーブル毎の能力主義的公平性を判定するアルゴリズムJudgeを示す図である。
入力は、判定テーブルTableと、公平性を緩和した条件に関する定数k及びlである。
FIG. 6 is a diagram showing an algorithm Judge that the table-by-
The inputs are the decision table Table and constants k and l relating to the relaxed fairness condition.
まず、テーブル別判定部15は、変数prefer_maxを0に初期化する(ステップ2)。
First, the table-
次に、テーブル別判定部15は、インデックスiを1からn-k-1まで変化させるループ処理(ステップ3)の中で、prefer_maxとTable[i].maxとを比較する(ステップ4)。テーブル別判定部15は、Table[i].maxの方が大きい場合に、prefer_maxを更新する(ステップ5)。これにより、prefer_maxには、i番目までの人気順位における選好順位の最大値が格納される。
Next, the table-
また、テーブル別判定部15は、ループ処理(ステップ3)の中で、prefer_maxと、i+k+1番目の人気順位における選好順位の最小値(Table[i+k+1])とを比較する。そして、Table[i+k+1]が0でなく、かつ、prefer_maxとの差がlより大きい場合、能力主義的公平性の条件を満たさないと判定される(ステップ7~9)。一方、全てのiでTable[i+k+1]が0か、又はprefer_maxとの差がl以下の場合、能力主義的公平性の条件を満たすと判定される(ステップ11)。
In addition, in the loop process (step 3), the table-
公平性判定部16は、二つの集合M及びWの双方から生成された判定テーブルについて、テーブル別判定部15により条件を満たすと判定された場合に能力主義的公平であると判定し、いずれかで条件を満たさないと判定された場合に能力主義的公平でないと判定する。
The
図7は、本実施形態における公平性判定部16が緩和した(k,l)-能力主義的公平性を判定するアルゴリズムFairJudgeを示す図である。
入力は、マッチングのインスタンスI、マッチングX、及び緩和した条件に関する定数k及びlである。
FIG. 7 is a diagram showing the FairJudge algorithm used by the
The inputs are an instance of a matching I, a matching X, and constants k and l for the relaxed conditions.
まず、公平性判定部16は、選好順位取得部11(アルゴリズムPreferenceRank)を用いて、配列M及びWに選好順位を格納する(ステップ2)。
続いて、公平性判定部16は、人気度算出部12(アルゴリズムPopularity)を用いて、さらに人気度を格納した配列M’及びW’を得る(ステップ3)。
さらに、公平性判定部16は、人気順位算出部13(アルゴリズムPopularRank)を用いて、人気順位を格納した配列M”及びW”を得る(ステップ4,5)。
First, the
Next, the
Furthermore, the
次に、公平性判定部16は、判定テーブル生成部14(アルゴリズムMakeTable)を用いて、配列M”及びW”のそれぞれから、判定テーブルTable_M及びTable_Wを得る(ステップ6,7)。
続いて、公平性判定部16は、テーブル別判定部15(アルゴリズムJudge)を用いて、判定テーブルTable_M及びTable_Wのそれぞれについて、公平性の条件を満たすか否かを得る(ステップ8,9)。
そして、公平性判定部16は、判定テーブルのいずれも公平性の条件を満たす場合に(ステップ10)、全体として能力主義的公平性を満たすと判定し(ステップ11)、少なくともいずれかで条件を満たさない場合に、能力主義的公平性を満たさないと判定する(ステップ13)。
Next, the
Next, the
Then, if all of the judgment tables satisfy the fairness conditions (step 10), the
本実施形態によれば、公平性判定装置1は、二つの集合それぞれについて、人気順位毎に選好順位の最小値及び最大値を格納した判定テーブルを生成し、この判定テーブルにおいて、人気順位がi番目までの選好順位の最大値が、人気順位がi+k+1番目の選好順位の最小値+lより大きいiが存在しない場合に条件を満たし、存在する場合に条件を満たさないと判定する。これにより、公平性判定装置1は、二つの集合の双方について条件を満たすと判定された場合に能力主義的公平であると判定し、いずれかで条件を満たさないと判定された場合に能力主義的公平でないと判定する。
これにより、公平性判定装置1は、判定テーブルを利用したアルゴリズムJudgeにおいて、1回のみのループ処理により、能力主義的公平性を判定できる。したがって、公平性の定義に単純に従った判定方法では集合の要素毎に他の要素との比較をするために、二重ループを伴うO(n2)の計算量が見込まれるのに比べて、本実施形態ではO(n)の計算量に抑えられる。この結果、能力主義的公平性を満たしたマッチングの探索に掛かる処理負荷が大きく低減される。
According to this embodiment, the
As a result, the
また、公平性判定装置1は、集合の各要素を人気度の昇順、及びペアの選好順位の昇順にソートしておくことにより、アルゴリズムMakeTable、及びアルゴリズムJudgeが効率化されるので、さらに処理負荷を低減できる。
In addition, the
さらに、公平性判定装置1は、判定テーブルのうち、アルゴリズムJudgeで使用しないデータの格納を省略して効率化することができる。具体的には、二つの集合それぞれについて、最大の人気順位における選好順位の最大値、及び最小の人気順位における選好順位の最小値、あるいはそのいずれかの格納を省略してもよい。
Furthermore, the
なお、これにより、例えばインターネット上で能力主義的公平なマッチングサービスを効率的に提供できることから、国連が主導する持続可能な開発目標(SDGs)の目標9「レジリエントなインフラを整備し、持続可能な産業化を推進するとともに、イノベーションの拡大を図る」に貢献することが可能となる。
As a result, for example, it will be possible to efficiently provide a meritocratic and fair matching service over the Internet, which will contribute to
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、前述した実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載されたものに限定されるものではない。 Although the embodiments of the present invention have been described above, the present invention is not limited to the above-described embodiments. Furthermore, the effects described in the above-described embodiments are merely a list of the most favorable effects resulting from the present invention, and the effects of the present invention are not limited to those described in the embodiments.
公平性判定装置1による公平性判定方法は、ソフトウェアにより実現される。ソフトウェアによって実現される場合には、このソフトウェアを構成するプログラムが、情報処理装置(コンピュータ)にインストールされる。また、これらのプログラムは、CD-ROMのようなリムーバブルメディアに記録されてユーザに配布されてもよいし、ネットワークを介してユーザのコンピュータにダウンロードされることにより配布されてもよい。さらに、これらのプログラムは、ダウンロードされることなくネットワークを介したWebサービスとしてユーザのコンピュータに提供されてもよい。
The fairness determination method by the
1 公平性判定装置
10 制御部
11 選好順位取得部
12 人気度算出部
13 人気順位算出部
14 判定テーブル生成部
15 テーブル別判定部
16 公平性判定部
20 記憶部
REFERENCE SIGNS
Claims (6)
前記二つの集合それぞれの各要素に対する選好順位を総合し、各要素の人気度を算出する人気度算出部と、
前記二つの集合それぞれについて、各要素を前記人気度の昇順にソートし、当該人気度が同値の場合に同じ人気順位を付与する人気順位算出部と、
前記二つの集合それぞれについて、前記人気順位毎に前記選好順位の最小値及び最大値を格納した判定テーブルを生成する判定テーブル生成部と、
前記判定テーブルにおいて、前記人気順位がi番目までの前記選好順位の最大値が、前記人気順位がi+k+1番目の前記選好順位の最小値+lより大きいiが存在しない場合に条件を満たし、存在する場合に条件を満たさないと判定するテーブル別判定部と、
前記二つの集合の双方について前記条件を満たすと判定された場合に能力主義的公平であると判定し、いずれかで前記条件を満たさないと判定された場合に能力主義的公平でないと判定する公平性判定部と、を備える公平性判定装置。 a preference ranking acquisition unit that acquires preference rankings of pairs in each element of each of two disjoint sets from a preference ranking of the other set in each element of each of the two sets and information on pairs matched between the two sets;
a popularity calculation unit that combines the preference rankings for each element of the two sets and calculates the popularity of each element;
a popularity ranking calculation unit that sorts each element of each of the two sets in ascending order of the popularity and assigns the same popularity ranking to elements having the same popularity ranking;
a judgment table generating unit that generates a judgment table storing the minimum and maximum values of the preference ranking for each of the popularity rankings for each of the two sets;
a table-based determination unit that determines that a condition is satisfied when there is no i in the determination table in which the maximum value of the preference ranking up to the i-th popularity ranking is greater than a minimum value+l of the preference ranking of the (i+k+1)th popularity ranking, and that the condition is not satisfied when there is such a i;
a fairness determination unit that determines that the system is meritocratic fair if it is determined that the condition is satisfied for both of the two sets, and that the system is not meritocratic fair if it is determined that the condition is not satisfied for either of the sets.
前記二つの集合それぞれの各要素に対する選好順位を総合し、各要素の人気度を算出する人気度算出ステップと、
前記二つの集合それぞれについて、各要素を前記人気度の昇順にソートし、当該人気度が同値の場合に同じ人気順位を付与する人気順位算出ステップと、
前記二つの集合それぞれについて、前記人気順位毎に前記選好順位の最小値及び最大値を格納した判定テーブルを生成する判定テーブル生成ステップと、
前記判定テーブルにおいて、前記人気順位がi番目までの前記選好順位の最大値が、前記人気順位がi+k+1番目の前記選好順位の最小値+lより大きいiが存在しない場合に条件を満たし、存在する場合に条件を満たさないと判定するテーブル別判定ステップと、
前記二つの集合の双方について前記条件を満たすと判定された場合に能力主義的公平であると判定し、いずれかで前記条件を満たさないと判定された場合に能力主義的公平でないと判定する公平性判定ステップと、をコンピュータが実行する公平性判定方法。 a preference ranking acquisition step of acquiring preference rankings of pairs in each element of each of two disjoint sets from the preference ranking of the other set in each element of each of the two sets and information of pairs matched between the two sets;
a popularity calculation step of calculating the popularity of each element by combining the preference rankings of each element in each of the two sets;
a popularity ranking calculation step of sorting each element of each of the two sets in ascending order of the popularity and assigning the same popularity ranking to elements having the same popularity value;
a judgment table generating step of generating a judgment table in which the minimum and maximum values of the preference rankings are stored for each of the popularity rankings for each of the two sets;
a table-by-table judging step for judging that a condition is satisfied when there is no i in the judgment table in which the maximum value of the preference ranking up to the i-th popularity ranking is greater than the minimum value+l of the preference ranking of the (i+k+1)th popularity ranking, and that the condition is not satisfied when there is such a i;
a fairness determination step of determining that the system is meritocratic fair if it is determined that the condition is satisfied for both of the two sets, and determining that the system is not meritocratic fair if it is determined that the condition is not satisfied for either of the two sets.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2022011198A JP7680972B2 (en) | 2022-01-27 | 2022-01-27 | Fairness judgment device, fairness judgment method, and fairness judgment program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2022011198A JP7680972B2 (en) | 2022-01-27 | 2022-01-27 | Fairness judgment device, fairness judgment method, and fairness judgment program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2023109601A JP2023109601A (en) | 2023-08-08 |
| JP7680972B2 true JP7680972B2 (en) | 2025-05-21 |
Family
ID=87522495
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2022011198A Active JP7680972B2 (en) | 2022-01-27 | 2022-01-27 | Fairness judgment device, fairness judgment method, and fairness judgment program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP7680972B2 (en) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2004171239A (en) | 2002-11-19 | 2004-06-17 | White Lily:Kk | Matching system |
| KR100892927B1 (en) | 2008-07-02 | 2009-04-09 | 주식회사 좋은만남 선우 | One-to-one batch matching system and method for members to arrange meeting |
| JP2016018312A (en) | 2014-07-07 | 2016-02-01 | 株式会社アイティーダイン | Encounter support system |
| JP2016173780A (en) | 2015-03-18 | 2016-09-29 | 富士通株式会社 | Data classification program, data classification method, and data classification apparatus |
| JP2019067155A (en) | 2017-09-29 | 2019-04-25 | 富士通株式会社 | Matching program, matching method, and matching device |
-
2022
- 2022-01-27 JP JP2022011198A patent/JP7680972B2/en active Active
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2004171239A (en) | 2002-11-19 | 2004-06-17 | White Lily:Kk | Matching system |
| KR100892927B1 (en) | 2008-07-02 | 2009-04-09 | 주식회사 좋은만남 선우 | One-to-one batch matching system and method for members to arrange meeting |
| JP2016018312A (en) | 2014-07-07 | 2016-02-01 | 株式会社アイティーダイン | Encounter support system |
| JP2016173780A (en) | 2015-03-18 | 2016-09-29 | 富士通株式会社 | Data classification program, data classification method, and data classification apparatus |
| JP2019067155A (en) | 2017-09-29 | 2019-04-25 | 富士通株式会社 | Matching program, matching method, and matching device |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2023109601A (en) | 2023-08-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20230096586A1 (en) | Region division method and apparatus, electronic device, and computer-readable storage medium | |
| Xu et al. | Graphcar: Content-aware multimedia recommendation with graph autoencoder | |
| Goldsmith et al. | The AI conference paper assignment problem | |
| CN106372101B (en) | A kind of video recommendation method and device | |
| Pagare et al. | Study of collaborative filtering recommendation algorithm-scalability issue | |
| CN112148974A (en) | User pension service recommendation method, computer equipment and storage medium | |
| CN117495485A (en) | Product recommendation method, device and readable storage medium | |
| Amanatidis et al. | Coverage, matching, and beyond: new results on budgeted mechanism design | |
| US20200342331A1 (en) | Classification tree generation method, classification tree generation device, and classification tree generation program | |
| JP7680972B2 (en) | Fairness judgment device, fairness judgment method, and fairness judgment program | |
| Su et al. | Cartesianmoe: Boosting knowledge sharing among experts via cartesian product routing in mixture-of-experts | |
| CN110457592A (en) | A social network recommendation method based on graph entropy | |
| CN110691000A (en) | Web service combination method based on fusion of FAHP and planning graph | |
| Ruangwises et al. | Unpopularity factor in the marriage and roommates problems | |
| JP7561109B2 (en) | EVALUATION APPARATUS, EVALUATION METHOD, AND EVALUATION PROGRAM | |
| Raju et al. | A cluster medoid approach for cloud task scheduling | |
| JP7539649B2 (en) | USER SELECTION DEVICE, USER SELECTION METHOD, AND PROGRAM | |
| Zhang et al. | Balancing diversity and accuracy of the recommendation system based on multi-objective optimization | |
| Anshelevich et al. | Friend of my friend: Network formation with two-hop benefit | |
| Liang | FAER: Fairness-aware event-participant recommendation in event-based social networks | |
| Yalçın et al. | An empirical evaluation of aggregation techniques used in group recommender systems | |
| Ghosal et al. | Rank-maximal matchings–structure and algorithms | |
| Ludwig et al. | Selection algorithm for grid services based on a quality of service metric | |
| CN111742269B (en) | Computer-implemented method and node implementing said method | |
| CN120952287B (en) | A method and system for exhibition hall path planning based on WeChat Mini Program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A80 | Written request to apply exceptions to lack of novelty of invention |
Free format text: JAPANESE INTERMEDIATE CODE: A80 Effective date: 20220131 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240209 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20250107 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20250217 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20250415 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20250509 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7680972 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |