(57)【要約】【課題】応募者の中にカップリングを要求する応募者が含まれている場合に割り当てが不適切となる事象を抑制する。【解決手段】実施形態のマッチングプログラムは、それぞれに優先順位が付された複数の応募者と複数の応募対象とのマッチング処理、設定する処理、繰り返す処理をコンピュータに実行させる。設定する処理は、複数の応募者のうち、カップリング要求を有するカップリング要求応募者それぞれに対し、応募者をまとめてマッチングを行う第１タイプ、または、別々のマッチングを行う第２タイプのいずれかのカップリング対応タイプを設定する。繰り返す処理は、複数の応募者と複数の応募対象との優先順位、および、カップリング対応タイプを利用したマッチングを、第１タイプでのマッチングが成立しない場合には第１タイプから第２タイプへ変更し、第１タイプでのマッチングが成立しないカップリング要求応募者が存在しなくなるまで繰り返す。【選択図】図１
2018133056.tif 000002
【特許請求の範囲】
【請求項１】
それぞれに優先順位が付された複数の応募者と複数の応募対象とのマッチング処理をコンピュータに実行させるマッチングプログラムであって、
前記複数の応募者のうち、特定の他の応募者と組になった形でのマッチングを要望するカップリング要求を有するカップリング要求応募者それぞれに対し、前記カップリング要求で対応づけられた他の応募者とまとめてマッチングを行う第１タイプ、または、前記カップリング要求で対応づけられた他の応募者とは別々のマッチングを行う第２タイプのいずれかのカップリング対応タイプを設定し、
前記複数の応募者と前記複数の応募対象との前記優先順位、および、前記カップリング対応タイプを利用したマッチングを、前記第１タイプによるカップリング要求応募者それぞれのマッチングが成立しない場合に当該カップリング要求応募者それぞれの前記カップリング対応タイプを前記第１タイプから前記第２タイプへ変更し、前記第１タイプによるカップリング要求応募者それぞれのマッチングが成立しない前記カップリング要求応募者が存在しなくなるまで繰り返す、
処理をコンピュータに実行させることを特徴とするマッチングプログラム。
【請求項２】
前記カップリング要求に関連づけられた複数のカップリング要求応募者は、互いにきょうだい関係を有する応募者である、
ことを特徴とする請求項１に記載のマッチングプログラム。
【請求項３】
前記マッチングは、優先順位が付された複数の子どもと、複数の保育所とのマッチングである、
ことを特徴とする請求項１または２に記載のマッチングプログラム。
【請求項４】
前記設定する処理は、前記カップリング要求に関連づけられた複数のカップリング要求応募者のすべてに前記第１タイプを設定し、
前記繰り返す処理は、すべてに前記第１タイプが設定された状態から、前記第１タイプによるカップリング要求応募者それぞれのマッチングが成立しない前記カップリング要求応募者が存在しなくなるまでマッチングを繰り返す、
ことを特徴とする請求項１乃至３のいずれか一項に記載のマッチングプログラム。
【請求項５】
前記繰り返す処理は、前記第１タイプによるカップリング要求応募者それぞれの優先順位を低い方の順位に合わせて前記カップリング対応タイプを利用したマッチングを行う、
ことを特徴とする請求項１乃至４のいずれか一項に記載のマッチングプログラム。
【請求項６】
それぞれに優先順位が付された複数の応募者と複数の応募対象とのマッチング処理をコンピュータが実行するマッチング方法であって、
前記複数の応募者のうち、特定の他の応募者と組になった形でのマッチングを要望するカップリング要求を有するカップリング要求応募者それぞれに対し、前記カップリング要求で対応づけられた他の応募者とまとめてマッチングを行う第１タイプ、または、前記カップリング要求で対応づけられた他の応募者とは別々のマッチングを行う第２タイプのいずれかのカップリング対応タイプを設定し、
前記複数の応募者と前記複数の応募対象との前記優先順位、および、前記カップリング対応タイプを利用したマッチングを、前記第１タイプによるカップリング要求応募者それぞれのマッチングが成立しない場合に当該カップリング要求応募者それぞれの前記カップリング対応タイプを前記第１タイプから前記第２タイプへ変更し、前記第１タイプによるカップリング要求応募者それぞれのマッチングが成立しない前記カップリング要求応募者が存在しなくなるまで繰り返す、
処理をコンピュータが実行することを特徴とするマッチング方法。
【請求項７】
それぞれに優先順位が付された複数の応募者と複数の応募対象とのマッチング処理を実行するマッチング装置であって、
前記複数の応募者のうち、特定の他の応募者と組になった形でのマッチングを要望するカップリング要求を有するカップリング要求応募者それぞれに対し、前記カップリング要求で対応づけられた他の応募者とまとめてマッチングを行う第１タイプ、または、前記カップリング要求で対応づけられた他の応募者とは別々のマッチングを行う第２タイプのいずれかのカップリング対応タイプを設定する設定部と、
前記複数の応募者と前記複数の応募対象との前記優先順位、および、前記カップリング対応タイプを利用したマッチングを、前記第１タイプによるカップリング要求応募者それぞれのマッチングが成立しない場合に当該カップリング要求応募者それぞれの前記カップリング対応タイプを前記第１タイプから前記第２タイプへ変更し、前記第１タイプによるカップリング要求応募者それぞれのマッチングが成立しない前記カップリング要求応募者が存在しなくなるまで繰り返すマッチング処理部と、
を有することを特徴とするマッチング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、マッチングプログラム、マッチング方法およびマッチング装置に関する。
【背景技術】
【０００２】
従来、保育機関での子どもの保育を希望する保護者に、要望する条件に合った１または複数の保育機関をネットワークを利用して仲介するシステムがある。また、多くの応募者（例えば保育を希望する保護者の子ども）を応募対象（例えば保育機関）へ割り当てるマッチング処理では、Ｓｅｒｉａｌ  Ｄｉｃｔａｔｏｒｓｈｉｐメカニズム（以下、ＳＤメカニズム）が知られている。
【０００３】
ＳＤメカニズムでは、応募者に優先順位を付け、優先順位の高い応募者から順に、その時点で残っている応募対象の中で応募者が希望するものを割り当てていく。このＳＤメカニズムでは、優先順位の逆転が起こらないことが保証される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−２５９７２８号公報
【非特許文献】
【０００５】
【非特許文献１】Svensson,  Lars-Gunnar.  "Strategy-proof  allocation  of  indivisible  goods."  Social  Choice  and  Welfare  16.4  (1999):  557-567.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記の従来技術では、応募者の中にカップリングを要求する応募者が含まれている場合に適切に応募対象への割り当てを行うことが困難であるという問題がある。
【０００７】
例えば、複数の保育所への応募においては、保護者がきょうだい（兄弟、兄妹、姉弟、姉妹）のカップリングを要求する場合がある。このような、きょうだいのカップリング要求のある応募者については、個別の優先順位との関係をどのように扱えば良いかは明確ではなく、一括して適切にマッチングを行う仕組みが存在していなかった。このため、マッチングにおいて次の問題１〜３のいずれかが生じる場合がある。
【０００８】
問題１：自分が入りたい保育所に、自分よりも優先順位が低い人が入っている（一人っ子／きょうだい関係なく）。
問題２：きょうだいとして、自分よりも双方が優先順位が低い人（きょうだいでなくても良い）が、自分の希望する保育所に入っている。
問題３：希望順位の低い保育所であっても、きょうだいが同じ保育所に入るほうが、個別の優先順位に従って別々の保育所に入るよりも良いのに、きょうだいが別々の保育所に入っている。
【０００９】
図９〜図１１は、第１〜３のケースを説明する説明図である。図９〜図１１の例では、同じ応募対象情報２０１および応募者情報２０２をもとに、応募者２０２ａの応募対象２０１ａへのマッチングを行っている。
【００１０】
なお、応募対象情報２０１は、応募対象２０１ａ（図示例では保育所）における受け入れ人数などを予め設定した応募対象２０１ａについての情報である。図示例では、Ｓ１〜Ｓ３の各保育所で２人の受け入れが設定されている。
【００１１】
応募者情報２０２は、保護者の申請ごとに、応募者２０２ａ（図示例では子ども）について予め設定した情報である。具体的には、応募者情報２０２は、申請を示す申請ＩＤにおいて、応募する子どもを識別する子どもＩＤごとに、優先順位を決定するための点数と、希望する応募対象２０１ａの順位を示す希望順とが設定されている。例えば、応募者２０２ａには、応募者情報２０２における点数の高い順に優先順位が付与される。なお、同じ申請ＩＤに複数の子どもＩＤが含まれる場合は、例えばきょうだい関係を有する子ども同士であり、子ども同士でのカップリング要求があるものとする。
【００１２】
図９に示すように、第１のケースＣ１では、きょうだい関係（カップリング要求）を無視し、応募対象情報２０１および応募者情報２０２をもとに、ＳＤメカニズムによって応募者２０２ａを応募対象２０１ａに割り当てていく。具体的には、優先順位の高い応募者２０２ａから順に（図示例ではＩ１、Ｊ１、Ｋ１、Ｋ２、Ｌ１、Ｉ２の順）、応募者２０２ａが希望する応募対象２０１ａを割り当てていく（Ｓ２０１〜Ｓ２０６）。
【００１３】
このように、カップリング要求を無視してＳＤメカニズムで割り当てを行う第１のケースＣ１では、問題３が生じている。具体的には、希望順位の低い保育所（例えばＳ２）であっても、Ｋ１、Ｋ２のきょうだいが同じ保育所に入れず、別々の保育所に入ることとなる。
【００１４】
図１０に示すように、第２のケースＣ２では、きょうだい関係（カップリング要求）でまとめた形で割り当てを行う（Ｓ２１１〜Ｓ２１４）。なお、第２のケースＣ２では、きょうだい関係でまとめた場合、カップリングした子ども同士の点数を高い方の点数に合わせるものとする。
【００１５】
図１１に示すように、第３のケースＣ３についても、きょうだい関係（カップリング要求）でまとめた形で割り当てを行う（Ｓ２２１〜Ｓ２２４）。なお、第３のケースＣ３では、きょうだい関係でまとめた場合、カップリングした子ども同士の点数を低い方の点数に合わせるものとする。
【００１６】
このように、カップリング要求に沿ってまとめた形で割り当てを行う第２のケースＣ２および第３のケースＣ３では、個別の優先順位づけに歪みが生じてしまうため、問題１が生じている。具体的には、第２のケースＣ２では、Ｌ１よりも優先順位の低いＩ２の応募者２０２ａが希望の応募対象２０１ａ（図示例ではＳ１）に割り当てられており、優先順位の逆転が生じている。また、第３のケースＣ３では、Ｉ１よりも優先順位の低いＫ１、Ｋ２の応募者２０２ａが希望の応募対象２０１ａ（図示例ではＳ１）に割り当てられており、優先順位の逆転が生じている。
【００１７】
このように、きょうだい関係（カップリング要求）を無視し、ＳＤメカニズムで割り当てる場合は、問題３が頻発する。また、きょうだいをまとめた形（カップリング要求どおりに）で割り当てる場合は、問題１が頻発する。
【００１８】
１つの側面では、応募者の中にカップリングを要求する応募者が含まれている場合に割り当てが不適切となる事象を抑制することができるマッチングプログラム、マッチング方法およびマッチング装置を提供することを目的とする。
【課題を解決するための手段】
【００１９】
第１の案では、マッチングプログラムは、それぞれに優先順位が付された複数の応募者と複数の応募対象とのマッチング処理をコンピュータに実行させ、設定する処理と、繰り返す処理とをコンピュータに実行させる。設定する処理は、複数の応募者のうち、特定の他の応募者と組になった形でのマッチングを要望するカップリング要求を有するカップリング要求応募者それぞれに対し、カップリング要求で対応づけられた他の応募者とまとめてマッチングを行う第１タイプ、または、カップリング要求で対応づけられた他の応募者とは別々のマッチングを行う第２タイプのいずれかのカップリング対応タイプを設定する。繰り返す処理は、複数の応募者と複数の応募対象との優先順位、および、カップリング対応タイプを利用したマッチングを、第１タイプによるカップリング要求応募者それぞれのマッチングが成立しない場合にカップリング要求応募者それぞれのカップリング対応タイプを第１タイプから第２タイプへ変更し、第１タイプによるカップリング要求応募者それぞれのマッチングが成立しないカップリング要求応募者が存在しなくなるまで繰り返す。
【発明の効果】
【００２０】
本発明の１実施態様によれば、応募者の中にカップリングを要求する応募者が含まれている場合に割り当てが不適切となる事象を抑制することができる。
【図面の簡単な説明】
【００２１】
【図１】図１は、実施形態にかかるマッチング装置の機能構成例を示すブロック図である。
【図２】図２は、応募対象情報と、応募者情報とを説明する説明図である。
【図３】図３は、実施形態にかかるマッチング装置の動作例を示すフローチャートである。
【図４】図４は、マッチング処理の一例を示すフローチャートである。
【図５】図５は、応募者の応募対象へのマッチングを説明する説明図である。
【図６】図６は、応募者の応募対象へのマッチングを説明する説明図である。
【図７】図７は、実施形態にかかるマッチング装置の動作の変形例を示すフローチャートである。
【図８】図８は、実施形態にかかるマッチング装置のハードウエア構成例を説明する説明図である。
【図９】図９は、第１のケースを説明する説明図である。
【図１０】図１０は、第２のケースを説明する説明図である。
【図１１】図１１は、第３のケースを説明する説明図である。
【発明を実施するための形態】
【００２２】
以下、図面を参照して、実施形態にかかるマッチングプログラム、マッチング方法およびマッチング装置を説明する。実施形態において同一の機能を有する構成には同一の符号を付し、重複する説明は省略する。なお、以下の実施形態で説明するマッチングプログラム、マッチング方法およびマッチング装置は、一例を示すに過ぎず、実施形態を限定するものではない。また、以下の各実施形態は、矛盾しない範囲内で適宜組みあわせてもよい。
【００２３】
図１は、実施形態にかかるマッチング装置の機能構成例を示すブロック図である。図１に示すマッチング装置１は、例えばＰＣ（パーソナルコンピュータ）等の情報処理装置である。マッチング装置１は、入力された情報に基づいて、それぞれに優先順位が付された複数の応募者と複数の応募対象とのマッチング処理を行い、求めたマッチング結果を出力する。このマッチング結果をもとに、ユーザは、応募対象への応募者の割り当てを行う。
【００２４】
なお、本実施形態では応募対象を保育所とし、応募者を保育所での保育を希望する保護者の子どもとしているが、応募対象および応募者については実施形態の例に限定しない。例えば、応募者を宿泊客、応募対象を客室として旅館における宿泊客の部屋割りに適用しても良い。
【００２５】
図１に示すように、マッチング装置１は、記憶部１０、入力部２０、マッチングタイプ設定部３０、マッチング処理部４０および出力部５０を有する。
【００２６】
記憶部１０は、入力部２０より入力された応募対象情報１１および応募者情報１２等の入力情報や、マッチング処理部４０により算出された演算データ１３をＲＡＭ（Random  Access  Memory）、ＨＤＤ（Hard  Disk  Drive）等の記憶装置に格納する。
【００２７】
応募対象情報１１は、入力部２０により入力されて予め設定された、応募対象についての情報である。応募者情報１２は、入力部２０により入力されて予め設定された、応募者についての情報である。
【００２８】
図２は、応募対象情報１１と、応募者情報１２とを説明する説明図である。図２に示すように、応募対象情報１１には、保育所ＩＤで識別される応募対象ごとの受け入れ人数などが設定されている。応募者情報１２には、子どもＩＤで識別される応募者ごとに、優先順位を決定するための点数と、希望する応募対象１１ａの順位を示す希望順とが設定されている。応募者ごとの点数は、例えば、家庭環境などを考慮して算出したものが設定される。これにより、各応募者には、応募者情報１２における点数の高い順に優先順位が付与される。
【００２９】
なお、応募者情報１２において、同じ申請ＩＤに複数の子どもＩＤが含まれる場合は、例えばきょうだい（兄弟、兄妹、姉弟、姉妹）関係を有する子ども同士であり、子ども同士でのカップリング要求があるものとする。カップリング要求とは、組みになった形で応募対象への割り当て（マッチング）を要求するものである。
【００３０】
例えば、Ｉ１およびＩ２と、Ｋ１およびＫ２とは、互いにきょうだい関係があり、お互いのカップリングを要求する応募者（カップリング要求応募者）であるものとする。Ｉ１およびＩ２と、Ｋ１およびＫ２とは、組みになった形での応募対象への割り当て（マッチング）が申請者である保護者により希望されている。
【００３１】
図１に戻り、入力部２０は、例えばマウスやキーボードなどの入力装置より、応募対象情報１１および応募者情報１２等のマッチング処理にかかる入力情報を受け付ける。入力部２０は、受け付けた応募対象情報１１および応募者情報１２を記憶部１０に格納する。
【００３２】
マッチングタイプ設定部３０は、応募者情報１２に含まれる複数の応募者について、カップリング要求応募者を含む場合、カップリング要求に関連づけられた複数のカップリング要求応募者それぞれに対し、第１タイプ（Ａ）または第２タイプ（Ｂ）のいずれかのカップリング対応タイプを設定する。言い換えると、マッチングタイプ設定部３０は、組になった形での割り当てが希望されている応募者それぞれに対し、第１タイプ（Ａ）または第２タイプ（Ｂ）のいずれかのカップリング対応タイプを設定する。すなわち、マッチングタイプ設定部３０は、設定部の一例である。
【００３３】
第１タイプ（Ａ）は、カップリング要求で対応づけられた他の応募者とまとめて応募対象とのマッチングを行うカップリング対応タイプである。すなわち、第１タイプ（Ａ）では、組になった形での割り当てが希望されている応募者それぞれを同一の優先順位としてまとめた形でマッチングする。
【００３４】
第２タイプ（Ｂ）は、カップリング要求で対応づけられた他の応募者とは別々に応募対象とのマッチングを行うカップリング対応タイプである。すなわち、第２タイプ（Ｂ）では、組になった形での割り当てが希望されている応募者それぞれを予め付与された優先順位で個別にマッチングする。
【００３５】
具体的には、マッチングタイプ設定部３０は、応募者情報１２よりカップリング要求のあるカップリング要求応募者の組み合わせを抽出する。図２の例では、Ｉ１およびＩ２と、Ｋ１およびＫ２との組み合わせを抽出する。次いで、マッチングタイプ設定部３０は、Ｉ１およびＩ２と、Ｋ１およびＫ２とに第１タイプ（Ａ）または第２タイプ（Ｂ）のいずれかのカップリング対応タイプを設定する。
【００３６】
一例として、マッチングタイプ設定部３０は、マッチング処理部４０によるマッチング処理に先立って、カップリング要求のあるカップリング要求応募者に対し、第１タイプ（Ａ）または第２タイプ（Ｂ）の初期のタイプ分類を行う。この初期のタイプ分類では、例えば、カップリング要求のあるカップリング要求応募者の組み合わせすべてに、第１タイプ（Ａ）を設定する。
【００３７】
マッチング処理部４０は、それぞれに優先順位（点数）が付された複数の応募者と複数の応募対象とのマッチング処理を行う。具体的には、マッチング処理部４０は、ＳＤメカニズムを用いて、優先順位の高い応募者から順に、その時点で残っている応募対象の中で応募者が希望するものを割り当てていく。この時、マッチング処理部４０は、マッチングタイプ設定部３０により第１タイプ（Ａ）または第２タイプ（Ｂ）のカップリング対応タイプが設定されたカップリング要求応募者の組み合わせについては、設定されたカップリング対応タイプに応じた割り当てを行う。
【００３８】
例えば、第１タイプ（Ａ）のカップリング対応タイプが設定されたカップリング要求応募者の組み合わせでは、それぞれを同一の優先順位としてまとめた形でマッチングする。また、第２タイプ（Ｂ）ののカップリング対応タイプが設定されたカップリング要求応募者の組み合わせでは、それぞれを予め付与された優先順位で個別にマッチングする。
【００３９】
そして、マッチング処理部４０は、第１タイプ（Ａ）によるカップリング要求応募者それぞれのマッチングが成立しない場合には、第１タイプ（Ａ）で成立しないカップリング要求応募者それぞれのカップリング対応タイプを第１タイプ（Ａ）から第２タイプ（Ｂ）へ変更する。なお、第１タイプ（Ａ）によるカップリング要求応募者それぞれのマッチングが成立しない場合とは、応募対象情報１１における受け入れ人数が合わないなどの条件のミスマッチにより、まとめた形でのマッチングが叶わないことである。
【００４０】
第１タイプ（Ａ）で成立しないカップリング要求応募者それぞれのカップリング対応タイプを第１タイプ（Ａ）から第２タイプ（Ｂ）へ変更した後に、マッチング処理部４０は、再び優先順位の高い応募者から順にマッチング処理を行う。上記のマッチング処理を、マッチング処理部４０は、第１タイプ（Ａ）によるカップリング要求応募者それぞれのマッチングが成立しないカップリング要求応募者が存在しなくなるまで繰り返す。そして、マッチング処理部４０は、マッチング処理により得られた、複数の応募対象への複数の応募者の割り当て結果を演算データ１３として記憶部１０に格納する。
【００４１】
このように、マッチング処理部４０は、きょうだいをまとめた形（第１タイプ（Ａ））を可能な限り残しながら、優先順位の逆転の生じることの無いマッチング（組み合わせ）を求める。言い換えると、マッチング処理部４０では、問題１、２の発生を許容しない条件のもと、問題３の発生を可能な限り抑えるマッチングを行う。したがって、マッチング装置１では、応募者の中にカップリング要求応募者が含まれている場合に割り当てが不適切となる事象を抑制することができる。これにより、割り当てが不適切となることで生じる応募者側の不満を最大限に抑えるとともに、カップリング要求応募者が別々となる数を最小限に抑えることができる。
【００４２】
出力部５０は、記憶部１０に格納された演算データ１３をもとに、マッチング処理部４０によるマッチング結果、すなわち、複数の応募対象への複数の応募者の割り当て結果を表示装置への表示、印刷装置への印字、ファイル出力などにより出力する。
【００４３】
図３は、実施形態にかかるマッチング装置１の動作例を示すフローチャートである。なお、応募対象情報１１および応募者情報１２については予め記憶部１０に格納済みであるものとする。図３に示すように、処理が開始されると、マッチングタイプ設定部３０は、応募者情報１２を参照してカップリング要求のあるカップリング要求応募者（きょうだい）の組み合わせを抽出し、すべてのきょうだいを第１タイプ（Ａ）に設定する初期のタイプ分類を行う（Ｓ１０）。
【００４４】
Ｓ１０のように初期のタイプ分類ですべてのきょうだいを第１タイプ（Ａ）と設定しておくことで、可能な限り多くのきょうだいをまとめた形としてマッチングできるように、マッチング処理をスタートすることができる。
【００４５】
次いで、マッチング処理部４０は、マッチングタイプ設定部３０により与えられた初期のタイプ分類からのマッチング処理を開始する（Ｓ２０）。
【００４６】
図４は、マッチング処理の一例を示すフローチャートである。図４に示すように、マッチング処理が開始されると、マッチング処理部４０は、第１タイプ（Ａ）の処理順序はきょうだい内の最低の優先順位とする（Ｓ２１）。すなわち、マッチング処理部４０は、第１タイプ（Ａ）のきょうだいの組み合わせについては、きょうだい内で最も低く設定された優先順位に合わせる。これにより、優先順位の逆転が頻発する事象を抑制できる。
【００４７】
次いで、マッチング処理部４０は、きょうだいについてはカップリング対応タイプを利用しつつ、設定された優先順位に従って、複数の応募者と複数の応募対象とのマッチングを、優先順位の高い応募者から順に行う（Ｓ２２）。
【００４８】
次いで、マッチング処理部４０は、マッチングにおいて、第１タイプ（Ａ）で保育所に割り当てられなかったきょうだい、すなわちまとめた形でのマッチングが叶わないきょうだいが存在するか否かを判定する（Ｓ２３）。第１タイプ（Ａ）で保育所に割り当てられなかったきょうだいが存在しない場合（Ｓ２３：ＮＯ）、マッチング処理部４０は、マッチング処理を終了する。
【００４９】
第１タイプ（Ａ）で保育所に割り当てられなかったきょうだいが存在する場合（Ｓ２３：ＹＥＳ）、マッチング処理部４０は、第１タイプ（Ａ）で保育所に割り当てられなかったきょうだいのカップリング対応タイプを第２タイプ（Ｂ）に変更する（Ｓ２４）。次いで、マッチング処理部４０は、Ｓ２１へ処理を戻し、マッチング処理を繰り返す。
【００５０】
図５、図６は、応募者の応募対象へのマッチングを説明する説明図である。図５に示すように、初期のタイプ分類（Ｓ１０）では、すべてのきょうだいの組み合わせ（Ｉ１およびＩ２、Ｋ１およびＫ２）に第１タイプ（Ａ）が設定される。そして、第１タイプ（Ａ）のきょうだいの組み合わせについては、きょうだい内の最低の優先順位とされる。例えば、点数が「９０」のＩ１と点数が「４０」のＩ２の組み合わせでは、互いの点数が「４０」とされる。
【００５１】
次いで、マッチング処理部４０は、きょうだいについてはカップリング対応タイプを利用しつつ、優先順位の高い応募者１２ａから順に応募対象１１ａへの割り当てを行う１順目のマッチングを行う（Ｓ１０１〜Ｓ１０３）。具体的には、点数の最も高いＪ１から順に、設定された希望順を満たすように応募対象１１ａへの割り当てを行う。Ｓ１０３に次いで、Ｉ１とＩ２のきょうだいの組み合わせをまとめた形で応募対象１１ａへ割り当てる際には、応募対象１１ａ側の受け入れ人数が合わず、割り当てに失敗する。
【００５２】
この場合、マッチング処理部４０は、図６に示すように、第１タイプ（Ａ）で保育所に割り当てられなかったＩ１とＩ２のきょうだいのカップリング対応タイプを第２タイプ（Ｂ）に変更し、２順目のマッチングを繰り返す（Ｓ１１１〜Ｓ１１５）。これにより、Ｉ１とＩ２のきょうだいについては、個々に設定された優先順位に従って個別にマッチングが行われることとなる。２順目のマッチングでは、第１タイプ（Ａ）によるマッチングが成立しないきょうだいが存在しなくなる。
【００５３】
よって、Ｓ１１１〜Ｓ１１５によるマッチングが、複数の応募対象１１ａへの複数の応募者１２ａの割り当て結果として得られることとなる。この割り当て結果では、Ｉ１とＩ２とは、同じ応募対象１１ａ（保育所）に割り当てられていない。しかしながら、Ｉ１とＩ２の申請者（Ｉ）からすると、「どの保育所もＩ２より優先順位の高い応募者１２ａで埋まっているのだから仕方ない（問題はない）」ものとされる。
【００５４】
図７は、実施形態にかかるマッチング装置１の動作の変形例を示すフローチャートである。図７に示すように、変形例では、異なる初期の分類タイプの設定（Ｓ１０ａ）でマッチング処理を幾つか試行し、問題発生（例えば第２タイプへの変更により、きょうだいが別々となるケース）が少ないマッチング結果を選択するものである。
【００５５】
具体的には、処理が開始されると、マッチングタイプ設定部３０は、カップリング要求応募者（きょうだい）の組み合わせについて、処理の度に、新しい初期のタイプ分類を設定する（Ｓ１０ａ）。
【００５６】
なお、初期のタイプ分類については、例えば次のいずれかであってよい。
（１）すべてのきょうだいを第１タイプ（Ａ）に設定
（２）優先順位（優先順位の平均または個別のいずれであってもよい）が所定の閾値より高いきょうだいを第１タイプ（Ａ）に設定
（３）前回のマッチング処理の結果が次の（３−１）〜（３−２）のきょうだいを第１タイプ（Ａ）に設定
（３−１）同じ保育所への割り当てに成功したきょうだい
（３−２）問題３が発生したきょうだい
（４）演算データ１３に格納された過去のマッチング結果が次の（４−１）〜（４−２）のきょうだいを第１タイプ（Ａ）に設定
（４−１）同じ保育所への割り当てに成功したことがある（成功回数の多い）きょうだい
（４−２）問題３が発生したことがある（発生回数の多い）きょうだい
（５）第１タイプ（Ａ）または第２タイプ（Ｂ）をランダムに設定
【００５７】
次いで、マッチング処理部４０は、マッチングタイプ設定部３０により与えられた初期のタイプ分類からのマッチング処理を行う（Ｓ２０）。ついで、マッチング処理部４０は、例えば第２タイプへの変更により、きょうだいが別々となるケースなどの問題発生の件数と、Ｓ１０ａ〜Ｓ２０の処理の試行数とを評価する。ついで、マッチング処理部４０は、評価結果をもとに、問題発生の件数が所定値以下であり、十分に問題発生が少ない状態または所定数以上の十分な回数で試行したか否かを判定する（Ｓ３０）。
【００５８】
十分に問題発生が少ない状態ではないまたは十分な回数で試行していない場合（Ｓ３０：ＮＯ）、マッチング処理部４０は、Ｓ１０ａに処理を戻す。十分に問題発生が少ない状態または十分な回数で試行した場合（Ｓ３０：ＹＥＳ）、マッチング処理部４０は、演算データ１３として格納された、試行回数分えられたマッチング結果の中から、問題発生が最も少ないマッチング結果を選択する（Ｓ４０）。これにより、マッチング装置１は、異なる初期の分類タイプの中から、きょうだいが別々となるなどの問題発生が少なくなるマッチング結果を求めることができる。
【００５９】
以上のように、マッチング装置１は、それぞれに優先順位が付された複数の応募者１２ａと複数の応募対象１１ａとのマッチング処理を実行する装置であり、マッチングタイプ設定部３０と、マッチング処理部４０とを有する。マッチングタイプ設定部３０は、複数の応募者１２ａのうち、互いに組になった形でのマッチングを要望するカップリング要求応募者それぞれに対し、まとめてマッチングを行う第１タイプ、または、個別にマッチングを行う第２タイプのいずれかのカップリング対応タイプを設定する。マッチング処理部４０は、複数の応募者１２ａと複数の応募対象１１ａとの優先順位、および、カップリング対応タイプを利用したマッチングを行う。また、マッチング処理部４０は、第１タイプによるカップリング要求応募者それぞれのマッチングが成立しない場合、そのカップリング要求応募者それぞれのカップリング対応タイプを第１タイプから第２タイプへ変更する。そして、マッチング処理部４０は、第１タイプによるカップリング要求応募者それぞれのマッチングが成立しないカップリング要求応募者が存在しなくなるまでマッチングを繰り返す。
【００６０】
このように、マッチング装置１では、きょうだいをまとめた形の第１タイプを可能な限り残しながら、優先順位の逆転の生じることの無いマッチング（組み合わせ）を求める。これにより、マッチング装置１では、応募者１２ａの中にカップリングを要求する応募者１２ａが含まれている場合に割り当てが不適切となる事象を抑制することができる。
【００６１】
ここで、第１のケースＣ１（きょうだい関係を無視）、第２のケースＣ２（きょうだいを高い点でまとめる）、第３のケースＣ３（きょうだいを低い点でまとめる）および本実施形態のマッチング装置１における、次の設定条件での実験結果を表に示す。
［設定条件］
・保育所の数：２００施設
・各保育所の募集人数：２０人
・子どもの数：７，０００人
・きょうだい：１，４００組
・点数と希望順はランダムとし、１，０００通りのパターンで実験
【００６２】
【表１】
2018133056.tif 000003
【００６３】
実験結果の表に示すように、本実施形態では、第１のケースＣ１、第２のケースＣ２および第３のケースＣ３と比較して、問題１、２を発生させることなく、問題３の発生を可能な限り抑えるマッチング結果をえることができる。
【００６４】
なお、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【００６５】
マッチング装置１で行われる各種処理機能は、ＣＰＵ（またはＭＰＵ、ＭＣＵ（Micro  Controller  Unit）等のマイクロ・コンピュータ）上で、その全部または任意の一部を実行するようにしてもよい。また、各種処理機能は、ＣＰＵ（またはＭＰＵ、ＭＣＵ等のマイクロ・コンピュータ）で解析実行されるプログラム上、またはワイヤードロジックによるハードウエア上で、その全部または任意の一部を実行するようにしてもよいことは言うまでもない。また、マッチング装置１で行われる各種処理機能は、クラウドコンピューティングにより、複数のコンピュータが協働して実行してもよい。
【００６６】
ところで、上記の実施形態で説明した各種の処理は、予め用意されたプログラムをコンピュータで実行することで実現できる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータ（ハードウエア）の一例を説明する。図８は、実施形態にかかるマッチング装置１のハードウエア構成例を説明する説明図である。
【００６７】
図８に示すように、マッチング装置１は、各種演算処理を実行するＣＰＵ１０１と、データ入力を受け付ける入力装置１０２と、モニタ１０３と、スピーカ１０４とを有する。また、マッチング装置１は、記憶媒体からプログラム等を読み取る媒体読取装置１０５と、各種装置と接続するためのインタフェース装置１０６と、有線または無線により外部機器と通信接続するための通信装置１０７とを有する。また、マッチング装置１は、各種情報を一時記憶するＲＡＭ１０８と、ハードディスク装置１０９とを有する。また、マッチング装置１内の各部（１０１〜１０９）は、バス１１０に接続される。
【００６８】
ハードディスク装置１０９には、上記の実施形態で説明した各種の処理を実行するためのプログラム１１１が記憶される。また、ハードディスク装置１０９には、プログラム１１１が参照する各種データ１１２が記憶される。入力装置１０２は、例えば、マッチング装置１の操作者から操作情報の入力を受け付ける。モニタ１０３は、例えば、操作者が操作する各種画面を表示する。インタフェース装置１０６は、例えば印刷装置等が接続される。通信装置１０７は、ＬＡＮ（Local  Area  Network）等の通信ネットワークと接続され、通信ネットワークを介した外部機器との間で各種情報をやりとりする。
【００６９】
ＣＰＵ１０１は、ハードディスク装置１０９に記憶されたプログラム１１１を読み出して、ＲＡＭ１０８に展開して実行することで、各種の処理を行う。なお、プログラム１１１は、ハードディスク装置１０９に記憶されていなくてもよい。例えば、マッチング装置１が読み取り可能な記憶媒体に記憶されたプログラム１１１を、マッチング装置１が読み出して実行するようにしてもよい。マッチング装置１が読み取り可能な記憶媒体は、例えば、ＣＤ−ＲＯＭやＤＶＤディスク、ＵＳＢ（Universal  Serial  Bus）メモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ、ハードディスクドライブ等が対応する。また、公衆回線、インターネット、ＬＡＮ等に接続された装置にこのプログラムを記憶させておき、マッチング装置１がこれらからプログラムを読み出して実行するようにしてもよい。
【００７０】
以上の実施形態に関し、さらに以下の付記を開示する。
【００７１】
（付記１）それぞれに優先順位が付された複数の応募者と複数の応募対象とのマッチング処理をコンピュータに実行させるマッチングプログラムであって、
前記複数の応募者のうち、特定の他の応募者と組になった形でのマッチングを要望するカップリング要求を有するカップリング要求応募者それぞれに対し、前記カップリング要求で対応づけられた他の応募者とまとめてマッチングを行う第１タイプ、または、前記カップリング要求で対応づけられた他の応募者とは別々のマッチングを行う第２タイプのいずれかのカップリング対応タイプを設定し、
前記複数の応募者と前記複数の応募対象との前記優先順位、および、前記カップリング対応タイプを利用したマッチングを、前記第１タイプによるカップリング要求応募者それぞれのマッチングが成立しない場合に当該カップリング要求応募者それぞれの前記カップリング対応タイプを前記第１タイプから前記第２タイプへ変更し、前記第１タイプによるカップリング要求応募者それぞれのマッチングが成立しない前記カップリング要求応募者が存在しなくなるまで繰り返す、
処理をコンピュータに実行させることを特徴とするマッチングプログラム。
【００７２】
（付記２）前記カップリング要求に関連づけられた複数のカップリング要求応募者は、互いにきょうだい関係を有する応募者である、
ことを特徴とする付記１に記載のマッチングプログラム。
【００７３】
（付記３）前記マッチングは、優先順位が付された複数の子どもと、複数の保育所とのマッチングである、
ことを特徴とする付記１または２に記載のマッチングプログラム。
【００７４】
（付記４）前記設定する処理は、前記カップリング要求に関連づけられた複数のカップリング要求応募者のすべてに前記第１タイプを設定し、
前記繰り返す処理は、すべてに前記第１タイプが設定された状態から、前記第１タイプによるカップリング要求応募者それぞれのマッチングが成立しない前記カップリング要求応募者が存在しなくなるまでマッチングを繰り返す、
ことを特徴とする付記１乃至３のいずれか一に記載のマッチングプログラム。
【００７５】
（付記５）前記繰り返す処理は、前記第１タイプによるカップリング要求応募者それぞれの優先順位を低い方の順位に合わせて前記カップリング対応タイプを利用したマッチングを行う、
ことを特徴とする付記１乃至４のいずれか一に記載のマッチングプログラム。
【００７６】
（付記６）それぞれに優先順位が付された複数の応募者と複数の応募対象とのマッチング処理をコンピュータが実行するマッチング方法であって、
前記複数の応募者のうち、特定の他の応募者と組になった形でのマッチングを要望するカップリング要求を有するカップリング要求応募者それぞれに対し、前記カップリング要求で対応づけられた他の応募者とまとめてマッチングを行う第１タイプ、または、前記カップリング要求で対応づけられた他の応募者とは別々のマッチングを行う第２タイプのいずれかのカップリング対応タイプを設定し、
前記複数の応募者と前記複数の応募対象との前記優先順位、および、前記カップリング対応タイプを利用したマッチングを、前記第１タイプによるカップリング要求応募者それぞれのマッチングが成立しない場合に当該カップリング要求応募者それぞれの前記カップリング対応タイプを前記第１タイプから前記第２タイプへ変更し、前記第１タイプによるカップリング要求応募者それぞれのマッチングが成立しない前記カップリング要求応募者が存在しなくなるまで繰り返す、
処理をコンピュータが実行することを特徴とするマッチング方法。
【００７７】
（付記７）前記カップリング要求に関連づけられた複数のカップリング要求応募者は、互いにきょうだい関係を有する応募者である、
ことを特徴とする付記６に記載のマッチング方法。
【００７８】
（付記８）前記マッチングは、優先順位が付された複数の子どもと、複数の保育所とのマッチングである、
ことを特徴とする付記６または７に記載のマッチング方法。
【００７９】
（付記９）前記設定する処理は、前記カップリング要求に関連づけられた複数のカップリング要求応募者のすべてに前記第１タイプを設定し、
前記繰り返す処理は、すべてに前記第１タイプが設定された状態から、前記第１タイプによるカップリング要求応募者それぞれのマッチングが成立しない前記カップリング要求応募者が存在しなくなるまでマッチングを繰り返す、
ことを特徴とする付記６乃至８のいずれか一に記載のマッチング方法。
【００８０】
（付記１０）前記繰り返す処理は、前記第１タイプによるカップリング要求応募者それぞれの優先順位を低い方の順位に合わせて前記カップリング対応タイプを利用したマッチングを行う、
ことを特徴とする付記６乃至９のいずれか一に記載のマッチング方法。
【００８１】
（付記１１）それぞれに優先順位が付された複数の応募者と複数の応募対象とのマッチング処理を実行するマッチング装置であって、
前記複数の応募者のうち、特定の他の応募者と組になった形でのマッチングを要望するカップリング要求を有するカップリング要求応募者それぞれに対し、前記カップリング要求で対応づけられた他の応募者とまとめてマッチングを行う第１タイプ、または、前記カップリング要求で対応づけられた他の応募者とは別々のマッチングを行う第２タイプのいずれかのカップリング対応タイプを設定する設定部と、
前記複数の応募者と前記複数の応募対象との前記優先順位、および、前記カップリング対応タイプを利用したマッチングを、前記第１タイプによるカップリング要求応募者それぞれのマッチングが成立しない場合に当該カップリング要求応募者それぞれの前記カップリング対応タイプを前記第１タイプから前記第２タイプへ変更し、前記第１タイプによるカップリング要求応募者それぞれのマッチングが成立しない前記カップリング要求応募者が存在しなくなるまで繰り返すマッチング処理部と、
を有することを特徴とするマッチング装置。
【００８２】
（付記１２）前記カップリング要求に関連づけられた複数のカップリング要求応募者は、互いにきょうだい関係を有する応募者である、
ことを特徴とする付記１１に記載のマッチング装置。
【００８３】
（付記１３）前記マッチングは、優先順位が付された複数の子どもと、複数の保育所とのマッチングである、
ことを特徴とする付記１１または１２に記載のマッチング装置。
【００８４】
（付記１４）前記設定部は、前記カップリング要求に関連づけられた複数のカップリング要求応募者のすべてに前記第１タイプを設定し、
前記マッチング処理部は、すべてに前記第１タイプが設定された状態から、前記第１タイプによるカップリング要求応募者それぞれのマッチングが成立しない前記カップリング要求応募者が存在しなくなるまでマッチングを繰り返す、
ことを特徴とする付記１１乃至１３のいずれか一に記載のマッチング装置。
【００８５】
（付記１５）前記マッチング処理部は、前記第１タイプによるカップリング要求応募者それぞれの優先順位を低い方の順位に合わせて前記カップリング対応タイプを利用したマッチングを行う、
ことを特徴とする付記１１乃至１４のいずれか一に記載のマッチング装置。
【符号の説明】
【００８６】
１…マッチング装置
１０…記憶部
１１、２０１…応募対象情報
１１ａ、２０１ａ…応募対象
１２、２０２…応募者情報
１２ａ、２０２ａ…応募者
１３…演算データ
２０…入力部
３０…マッチングタイプ設定部
４０…マッチング処理部
５０…出力部
１０１…ＣＰＵ
１０２…入力装置
１０３…モニタ
１０４…スピーカ
１０５…媒体読取装置
１０６…インタフェース装置
１０７…通信装置
１０８…ＲＡＭ
１０９…ハードディスク装置
１１０…バス
１１１…プログラム
１１２…各種データ
Ｃ１〜Ｃ３…第１〜第３のケース
【図１】
2018133056.tif 000004
【図２】
2018133056.tif 000005
【図３】
2018133056.tif 000006
【図４】
2018133056.tif 000007
【図５】
2018133056.tif 000008
【図６】
2018133056.tif 000009
【図７】
2018133056.tif 000010
【図８】
2018133056.tif 000011
【図９】
2018133056.tif 000012
【図１０】
2018133056.tif 000013
【図１１】
2018133056.tif 000014