(57)【要約】【課題】移動端末同士が近距離通信可能な領域内に存在しない場合であっても、情報処理装置と移動端末との間の通信量を低減することを可能とする。【解決手段】受信部（１１）は、所定領域内での通信が可能な第１通信及び第２通信を含む異なる複数の通信を各々が実行可能な複数の移動端末の各々から、データ送信要求、及びデータ送信要求を行った移動端末の位置情報を、第１通信によって受信する。制御部（１２）は、データ送信要求により要求された要求データを所持し、データ送信要求を送信した要求移動端末との間で第２通信が可能な領域内に存在することが予測される移動端末を選択移動端末として選択する制御を行う。送信部（１３）は、選択された選択移動端末から要求移動端末に第２通信によって要求データを送信するように指示する送信指示を、第１通信によって選択移動端末に直接または中継して送信する。【選択図】図６
2017139750.tif 000002
【特許請求の範囲】
【請求項１】
所定領域内での通信が可能な第１通信、及び、第２通信を含む異なる複数の通信を各々が実行可能な複数の移動端末の各々から、データ送信要求、及びデータ送信要求を行った移動端末の位置情報を、前記第１通信及び前記第２通信の何れかによって受信し、
受信した前記データ送信要求、受信した前記位置情報を蓄積した位置管理情報、及び前記移動端末が所持するデータを示す情報を登録したデータ管理情報に基づいて、前記データ送信要求により要求された要求データ、及び、前記要求データに変換可能な変換可能データ、の少なくとも一方を所持し、前記データ送信要求を送信した要求移動端末との間で前記第２通信が可能な領域内に存在することが予測される移動端末を選択移動端末として選択し、
選択された前記選択移動端末から前記要求移動端末に前記第２通信によって前記要求データ及び前記変換可能データの一方を送信するように指示する送信指示を、前記第１通信及び前記第２通信の何れかによって前記選択移動端末に直接または中継して送信する、
通信制御方法。
【請求項２】
前記第２通信は、前記第１通信と比較して通信コストが低い、
請求項１に記載の通信制御方法。
【請求項３】
前記第２通信は、前記第１通信と比較して通信領域が狭い、
請求項１または請求項２に記載の通信制御方法。
【請求項４】
複数の選択移動端末を選択し、
前記複数の選択移動端末の各々から前記要求移動端末に送信するデータを分割した分割データの各々を送信する指示を前記送信指示に加えて送信する、
請求項１〜３の何れか１項に記載の通信制御方法。
【請求項５】
前記複数の選択移動端末の各々が送信する前記分割データのデータ量の合計が送信するデータのデータ量よりも少ない場合、前記要求移動端末に前記第１通信によって送信するデータの残部分を送信する、
請求項４に記載の通信制御方法。
【請求項６】
所定時間内に、前記要求移動端末への送信が完了しないことが予測される場合、送信するデータの内送信が完了していない部分を、前記要求移動端末に前記第１通信によって送信する、
請求項１〜請求項４の何れか１項に記載の通信制御方法。
【請求項７】
前記要求移動端末との間で前記第２通信が可能な領域内に前記要求データ及び前記変換可能データの少なくとも一方を所持する移動端末が存在しないことが予測される場合、前記要求移動端末に前記要求データ及び前記変換可能データの少なくとも一方を所持する移動端末との間で前記第２通信が可能な領域内に移動するように指示する移動指示を送信する、
請求項１〜請求項５の何れか１項に記載の通信制御方法。
【請求項８】
前記移動指示に了承することを示す応答を、前記要求移動端末から受信した場合、了承することを示す応答を行った要求移動端末の位置管理情報を更新する、
請求項７に記載の通信制御方法。
【請求項９】
通信を中継する移動端末または通信リソースを共有する移動端末の数が少ない無線通信が可能な移動端末を選択移動端末として優先的に選択する、
請求項１〜請求項８の何れか１項に記載の通信制御方法。
【請求項１０】
前記選択移動端末が前記変換可能データを所持し、かつ、前記要求データを所持しない移動端末である場合、前記変換可能データを送信し、前記要求移動端末が受信した前記変換可能データを前記要求データに変換する第１送信、または、前記変換可能データを前記要求データに変換して送信する第２送信、である前記第２通信による送信を行う、
請求項１〜請求項９の何れか１項に記載の通信制御方法。
【請求項１１】
前記第１送信及び前記第２送信の内、前記第２通信による送信が完了するまでの予測時間が短い方の送信を行う、
請求項１０に記載の通信制御方法。
【請求項１２】
前記要求移動端末との間で前記第２通信が可能な領域内に、
前記変換可能データを所持しかつ前記要求データを所持しない第１選択移動端末候補、前記変換可能データ及び前記要求データの両方を所持する第２選択移動端末候補、前記要求データを所持しかつ前記変換可能データを所持しない第３選択移動端末候補の何れかを含む複数の選択移動端末候補が存在する場合、
前記変換可能データを送信し、前記要求移動端末が受信した前記変換可能データを前記要求データに変換する第１送信、前記変換可能データを前記要求データに変換して送信する第２送信、変換することなく前記要求データを送信する第３送信である前記第２通信による送信の内、前記第２通信による送信が完了するまでの予測時間が最も短い送信を行う選択移動端末候補を前記選択移動端末として選択し、前記予測時間が最も短い送信を行う、
請求項１〜請求項９の何れか１項に記載の通信制御方法。
【請求項１３】
前記第２通信による送信が完了するまでの予測時間が所定の許容時間を越えることが予測される場合、前記第１通信で前記要求データの送信を行う、
請求項１〜請求項１２の何れか１項に記載の通信制御方法。
【請求項１４】
前記第２通信による送信が完了するまでの予測時間は、前記変換可能データを送信する場合、前記送信指示が送信されてから前記要求データへの変換が完了するまでの時間であり、前記要求データを送信する場合、前記送信指示が送信されてから前記変換可能データから変換された前記要求データまたは変換されない前記要求データの送信が完了するまでの時間である、
請求項１〜請求項１３の何れか１項に記載の通信制御方法。
【請求項１５】
所定領域内での通信が可能な第１通信、及び、第２通信を含む異なる複数の通信を各々が実行可能な複数の移動端末の各々から、データ送信要求、及びデータ送信要求を行った移動端末の位置情報を、前記第１通信及び前記第２通信の何れかによって受信し、
受信した前記データ送信要求、受信した前記位置情報を蓄積した位置管理情報、及び前記移動端末が所持するデータを示す情報を登録したデータ管理情報に基づいて、前記データ送信要求により要求された要求データ、及び、前記要求データに変換可能な変換可能データ、の少なくとも一方を所持し、前記データ送信要求を送信した要求移動端末との間で前記第２通信が可能な領域内に存在することが予測される移動端末を選択移動端末として選択し、
選択された前記選択移動端末から前記要求移動端末に前記第２通信によって前記要求データ及び前記変換可能データの一方を送信するように指示する送信指示を、前記第１通信及び前記第２通信の何れかによって前記選択移動端末に直接または中継して送信する、
通信制御処理をプロセッサに実行させるためのプログラム。
【請求項１６】
所定領域内での通信が可能な第１通信、及び、第２通信を含む異なる複数の通信を各々が実行可能な複数の移動端末の各々から、データ送信要求、及びデータ送信要求を行った移動端末の位置情報を、前記第１通信及び前記第２通信の何れかによって受信する受信部と、
前記受信部で受信したデータ送信要求、受信した前記位置情報を蓄積した位置管理情報、及び前記移動端末が所持するデータを示す情報を登録したデータ管理情報に基づいて、前記データ送信要求により要求された要求データ、及び、前記要求データに変換可能な変換可能データを所持し、前記データ送信要求を送信した要求移動端末との間で前記第２通信が可能な領域内に存在することが予測される移動端末を選択移動端末として選択する制御を行う制御部と、
選択された前記選択移動端末から前記要求移動端末に前記第２通信によって前記要求データ及び前記変換可能データの一方を送信するように指示する送信指示を、前記第１通信及び前記第２通信の何れかによって前記選択移動端末に直接または中継して送信する送信部と、
を含む情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信制御方法、プログラム及び情報処理装置に関する。
【背景技術】
【０００２】
近距離通信の一種であるアドホックネットワークを形成する複数の無線端末の通信品質及び通信効率を向上させる調整端末が存在する。複数の無線端末の何れかが端末情報、協力受信希望信号及び希望受信信号情報を調整端末に送信し、調整端末は、協力受信希望信号及び希望受信信号情報をアドホックネットワーク内の他の無線端末に送信する。調整端末は、他の無線端末の各々の受信分担分を示す分担信号を他の無線端末の各々に送信する。分担信号を受信した無線端末の各々は、基地局から個別に分担分の情報を受信し、情報を希望した無線端末に受信した情報を送信する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０-２２００５０号公報
【特許文献２】特開２００４-１８００１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記調整端末を用いた場合、基地局は情報を希望した無線端末に情報を送信する代わりに、分担信号を受信した無線端末に情報を送信するため、基地局と無線端末との間の通信量は全体として低減されない。
【０００５】
また、衛星ラジオ放送のコンテンツデータを送信する放送センタの負荷を低減し、短時間でコンテンツデータを取得するシステムが存在する。車両に搭載されるデータ取得装置は、人工衛星を介して放送センタからコンテンツデータを取得する。一方、データ取得装置は、放送センタからではなく、近距離通信の一種である車車間通信で他の車両のデータ取得装置からコンテンツデータを取得することもできる。データ取得装置は、車車間通信を行うことが可能な領域内に存在する車両を検索し、検索した車両が希望するコンテンツデータを所有する場合、当該コンテンツデータを検索した車両のデータ取得装置から取得する。
【０００６】
しかしながら、上記コンテンツデータを取得するシステムでは、コンテンツデータを所有する協力車両がコンテンツデータの受信を希望する要求車両との間で車車間通信が可能な領域内に存在しない場合、要求車両は協力車両を発見することができない。即ち、協力移動端末が要求移動端末との間で近距離通信が可能な領域に存在しない場合、要求移動端末は協力移動端末から要求データを取得することができない。
【０００７】
本発明は、１つの側面として、移動端末同士が近距離通信可能な領域内に存在しない場合であっても、情報処理装置と移動端末との間の通信量を低減することを可能とすることを目的とする。
【課題を解決するための手段】
【０００８】
一つの態様では、複数の移動端末の各々から、データ送信要求、及びデータ送信要求を行った移動端末の位置情報を、第１通信及び第２通信の何れかによって受信する。複数の移動端末の各々は、所定領域内での通信が可能な第１通信、及び、第２通信を含む異なる複数の通信を各々が実行可能である。データ送信要求により要求された要求データ、及び、要求データに変換可能な変換可能データ、の少なくとも一方を所持し、データ送信要求を送信した要求移動端末との間で第２通信が可能な領域内に存在することが予測される移動端末を選択移動端末として選択する。受信したデータ送信要求、受信した位置情報を蓄積した位置管理情報、及び移動端末が所持するデータを示す情報を登録したデータ管理情報に基づいて、選択移動端末は選択される。選択された選択移動端末から要求移動端末に第２通信によって要求データ、及び前記変換可能データの一方を送信するように指示する送信指示を、第１通信及び第２通信の何れかによって選択移動端末に直接または中継して送信する。
【発明の効果】
【０００９】
本発明は、１つの側面として、移動端末同士が近距離通信可能な領域内に存在しない場合であっても、情報処理装置と移動端末との間の通信量を低減することを可能とする。
【図面の簡単な説明】
【００１０】
【図１Ａ】第１〜第５実施形態に係るサーバの要部機能の一例を示すブロック図である。
【図１Ｂ】第１〜第５実施形態に係る移動端末の要部機能の一例を示すブロック図である。
【図２Ａ】第１〜第５実施形態に係るサーバのハードウェアの構成の一例を示すブロック図である。
【図２Ｂ】第１〜第５実施形態に係る移動端末のハードウェアの構成の一例を示すブロック図である。
【図３Ａ】第１〜第５実施形態に係る位置管理テーブルの一例を示す概念図である。
【図３Ｂ】第１〜第５実施形態に係るデータ管理テーブルの一例を示す概念図である。
【図４】第１実施形態に係る通信制御処理の概要を説明する概念図である。
【図５】第１実施形態に係る通信制御処理の流れの一例を示すフローチャートである。
【図６】通信速度、時間及び通信量の関係を説明する概念図である。
【図７】第２実施形態に係る通信制御処理の概要を説明する概念図である。
【図８】第２実施形態に係る通信制御処理の流れの一例を示すフローチャートである。
【図９】第３実施形態に係る通信制御処理の概要を説明する概念図である。
【図１０】第３実施形態に係る通信制御処理の流れの一例を示すフローチャートである。
【図１１】通信速度、時間及び通信量の関係を説明する概念図である。
【図１２】通信速度、時間及び通信量の関係を説明する概念図である。
【図１３】第４実施形態に係る通信制御処理の概要を説明する概念図である。
【図１４】第４実施形態に係る通信制御処理の流れの一例を示すフローチャートである。
【図１５】通信完了期待時間及び通信完了予測時間の関係を説明する概念図である。
【図１６】第５実施形態に係る通信制御処理の概要を説明する概念図である。
【図１７】第５実施形態に係る通信制御処理の流れの一例を示すフローチャートである。
【図１８Ａ】第６実施形態に係るテーブルの一例を示す概念図である。
【図１８Ｂ】第６実施形態に係るテーブルの一例を示す概念図である。
【図１８Ｃ】第６実施形態に係るテーブルの一例を示す概念図である。
【図１８Ｄ】第６実施形態に係るテーブルの一例を示す概念図である。
【図１９】第６実施形態に係る通信制御処理の概要を説明する概念図である。
【図２０Ａ】第６実施形態に係る通信制御処理の流れの一例を示すフローチャートである。
【図２０Ｂ】第６実施形態に係る通信制御処理の流れの一例を示すフローチャートである。
【図２１Ａ】通信速度、時間及び通信量の関係を説明する概念図である。
【図２１Ｂ】通信速度、時間及び通信量の関係を説明する概念図である。
【図２１Ｃ】通信速度、時間及び通信量の関係を説明する概念図である。
【発明を実施するための形態】
【００１１】
［第１実施形態］
以下、図面を参照して実施形態の一例である第１実施形態を詳細に説明する。
【００１２】
図１Ａに例示する情報処理装置の一例であるサーバ１０は、受信部１１、制御部１２及び送信部１３を含む。受信部１１は、複数の移動端末の各々から、データ送信要求、及びデータ送信要求を行った移動端末の位置情報を、第１通信及び第２通信の何れかによって受信する。複数の移動端末の各々は、所定領域内での通信が可能な第１通信、及び、第２通信を含む異なる複数の通信を各々が実行可能である。制御部１２は、データ送信要求により要求された要求データを所持し、データ送信要求を送信した要求移動端末との間で第２通信が可能な領域内に存在することが予測される移動端末を選択移動端末として選択する制御を行う。選択は、受信部１１で受信したデータ送信要求、受信した位置情報を蓄積した位置管理情報、及び移動端末が所持するデータを示す情報を登録したデータ管理情報に基づいて、制御される。送信部１３は、選択された選択移動端末から要求移動端末に第２通信によって要求データを送信するように指示する送信指示を、第１通信及び第２通信の何れかによって選択移動端末に直接または中継して送信する。
【００１３】
第１通信の一例は携帯電話通信であり、第２通信の一例は、アドホック通信である。アドホック通信は、例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＩｒＤＡ（Infrared Data Association）、及びＷｉＦｉなどの近距離無線通信である。サーバ１０は、例えば、ワークステーション、デスクトップコンピュータ、又は、ノートブックコンピュータなどであってよいが、本実施形態はこれらに限定されない。
【００１４】
図１Ｂに例示する移動端末２０Ａは、受信部２１Ａ、制御部２２Ａ、送信部２３Ａを含む。受信部２１Ａ及び送信部２３Ａは、携帯電話通信及びアドホック通信で、制御部２２Ａがデータを送受信する場合の通信を実行する。
【００１５】
移動端末２０Ａと、後述する移動端末２０Ｂ〜移動端末２０Ｆとの構成は同様であるため、移動端末２０Ｂ〜移動端末２０Ｆの構成の説明は省略する。なお、移動端末２０Ｂ〜２０Ｆの各構成要素の参照符号には、Ａに代えて、Ｂ〜Ｆを付す。後述する図２Ｂについても同様である。以下、どの移動端末であるか区別しなくてよい場合、移動端末２０Ａ〜移動端末２０Ｆを移動端末２０ともいう。この場合、各構成要素の参照符号にＡ〜Ｆは付さない。また、以下において、移動端末２０Ａ〜移動端末２０Ｆを例に説明する。しかしながら、本実施形態において、移動端末２０の個数は限定されない。移動端末２０は、例えば、携帯電話、スマートフォン、又は、タブレットコンピュータなどであってよいが、本実施形態及において、移動端末２０は、これらに限定されない。
【００１６】
サーバ１０は、図２Ａに例示するように、プロセッサの一例であるＣＰＵ（Central Processing Unit）３１、一次記憶部３２、二次記憶部３３、通信部３９及び外部インターフェイス４１を含む。ＣＰＵ３１、一次記憶部３２、二次記憶部３３、通信部３９及び外部インターフェイス４１は、バス４９を介して相互に接続されている。
【００１７】
一次記憶部３２は、例えば、ＲＡＭ（Random Access Memory）などの揮発性のメモリである。二次記憶部３３は、例えば、ＨＤＤ（Hard Disk Drive）、又はＳＳＤ（Solid State Drive）などの不揮発性のメモリである。
【００１８】
二次記憶部３３は、通信制御プログラムを格納したプログラム格納領域３４、位置管理情報を格納した位置管理情報格納領域３５、データ管理情報を格納したデータ管理情報格納領域３６、データ３８Ａ〜データ３８Ｚを格納したデータ格納領域３７を含む。以下、どのデータであるか区別しなくてよい場合、データ３８Ａ〜データ３８Ｚをデータ３８とも呼ぶ。なお、本実施形態において、データ３８の個数は限定されない。
【００１９】
図３Ａは、位置管理情報の一例である位置管理テーブル３５Ａを例示する。位置管理テーブル３５Ａは、移動端末２０の位置の緯度及び経度を時刻と対応付けて記録したテーブルである。例えば、移動端末２０Ａの午後１時（１３：００）の位置は、緯度３５．５８３、経度１３９．６４０である。この例では、移動端末２０の各々の一分毎の位置情報が位置管理テーブル３５Ａに登録されている。
【００２０】
図３Ｂは、データ管理情報の一例であるデータ管理テーブル３６Ａを例示する。データ管理テーブル３６Ａは、データ３８の各々を所持している移動端末２０を登録したテーブルである。例えば、データ３８Ａは移動端末２０Ｂに所持されており、データ３８Ｂは移動端末２０Ｃ及び移動端末２０Ｄに所持されている。データ３８は、移動端末２０の各々に送信を要求されることにより、サーバ１０から移動端末２０の各々に送信されることにより移動端末２０の各々が所持してもよい。また、データ３８は、他の移動端末２０にサーバ１０から送信され、他の移動端末２０から移動端末２０の各々にさらに送信されることにより移動端末２０の各々が所持してもよい。
【００２１】
なお、位置管理情報格納領域３５、データ管理情報格納領域３６及びデータ格納領域３７は、サーバ１０ではなく、外部装置に含まれていてもよい。この場合、ＣＰＵ３１は、位置管理情報、データ管理情報及びデータ３８を、例えば、通信部３９を介して、取得することができる。
【００２２】
ＣＰＵ３１は、二次記憶部３３のプログラム格納領域３４から通信制御プログラムを読み出して一次記憶部３２に展開する。ＣＰＵ３１は、通信制御プログラムを実行することで、図１Ａの制御部１２として動作する。なお、通信制御プログラムは、外部サーバに記憶され、ネットワークを介して、一次記憶部３２に展開されてもよい。また、通信制御プログラムは、ＤＶＤ（Digital Versatile Disc）などの非一時的記録媒体に記憶され、記録媒体読込装置を介して読み込まれ、一次記憶部３２に展開されてもよい。
【００２３】
図１Ａの受信部１１及び送信部１３の一例である通信部３９は、携帯電話通信による長距離（広範囲）通信を行う。外部インターフェイス４１には、外部装置が接続され、外部インターフェイス４１は、外部装置とＣＰＵ３１との間の各種情報の送受信を司る。
【００２４】
移動端末２０Ａは、一例として、図２Ｂに示すように、ＣＰＵ５１Ａ、一次記憶部５２Ａ、二次記憶部５３Ａ、遠距離通信部５８Ａ、近距離通信部６１Ａ、ＧＰＳ（Global Positioning System）６２Ａ及び外部インターフェイス６３Ａを含む。ＣＰＵ５１Ａ、一次記憶部５２Ａ、二次記憶部５３Ａ、遠距離通信部５８Ａ、近距離通信部６１Ａ、ＧＰＳ６２Ａ及び、外部インターフェイス６３Ａは、バス６９Ａを介して相互に接続されている。
【００２５】
一次記憶部５２Ａは、例えば、ＲＡＭなどの揮発性のメモリである。二次記憶部５３Ａは、例えば、ＨＤＤ、又はＳＳＤなどの不揮発性のメモリである。二次記憶部５３Ａは、通信制御プログラムを格納したプログラム格納領域５４Ａ、データを格納するデータ格納領域５５Ａを含む。
【００２６】
ＣＰＵ５１Ａは、二次記憶部５３Ａのプログラム格納領域５４Ａから通信制御プログラムを読み出して一次記憶部５２Ａに展開する。ＣＰＵ５１Ａは、通信制御プログラムを実行することで、図１Ｂの制御部２２Ａとして動作する。なお、通信制御プログラムは、外部サーバに記憶され、ネットワークを介して、一次記憶部５２Ａに展開されてもよい。また、通信制御プログラムは、ＤＶＤなどの非一時的記録媒体に記憶され、記録媒体読込装置を介して読み込まれ、一次記憶部５２Ａに展開されてもよい。
【００２７】
遠距離通信部５８Ａは、携帯電話通信による遠距離（広範囲）通信を行い、近距離通信部６１Ａは、アドホック通信などの近距離通信による通信を行う。遠距離通信部５８Ａ及び近距離通信部６１Ａは、図１Ｂの受信部２１Ａ及び送信部２３Ａの一例である。ＧＰＳ６２Ａは移動端末２０Ａの位置を示す位置情報を取得する。外部インターフェイス６３Ａには、外部装置が接続され、外部インターフェイス６３Ａは、外部装置とＣＰＵ５１Ａとの間の各種情報の送受信を司る。
【００２８】
次に、通信制御システムの一例であるサーバ１０、移動端末２０Ａ、及び移動端末２０Ｂの作用の概略について説明する。本実施形態では、図４に例示するように、要求移動端末の一例である移動端末２０Ａ（以下、第１移動端末２０Ａともいう。）は、サーバ１０が所持するデータ３８Ａ〜データ３８Ｚの何れかであるデータ５０Ｂの送信を要求する。データ５０Ｂは要求データの一例である。ここで、第１移動端末２０Ａの周囲には、移動端末２０が多数存在している。多数の移動端末２０が、サーバ１０にデータ５０Ｂを送信するよう、同時に、または短い期間内に要求した場合、ネットワークの負荷が増大する。したがって、サーバ１０ではなく、既にデータ５０Ｂを所持している移動端末２０から第１移動端末２０Ａにデータ５０Ｂを送信させる。
【００２９】
本実施形態では、第１移動端末２０Ａは、実線（１）で示すように、データ５０Ｂの送信を要求するデータ送信要求の一例であるリクエスト情報５０Ａを携帯電話通信でサーバ１０に送信する。リクエスト情報５０Ａを受信したサーバ１０は、一点鎖線（２）で示すように、位置管理テーブル３５Ａ及びデータ管理テーブル３６Ａに基づいて、選択移動端末の一例である移動端末２０Ｂ（以下、第２移動端末２０Ｂともいう）を選択する。
【００３０】
実線（３）で示すように、サーバ１０は、第２移動端末２０Ｂから第１移動端末２０Ａにデータ５０Ｂを送信させるように指示するレスポンス情報５０Ｃを、第１移動端末２０Ａに送信する。レスポンス情報５０Ｃは送信指示の一例である。破線（４）で示すように、第２移動端末２０Ｂが、第１移動端末２０Ａとの間でアドホック通信が可能な領域に移動すると、実線（５）で示すように、第２移動端末２０Ｂは第１移動端末２０Ａにデータ５０Ｂをアドホック通信で送信する。
【００３１】
詳細には、図５に例示するように、第１移動端末２０ＡのＣＰＵ５１Ａは、ステップ１１０で、携帯電話通信によって、リクエスト情報５０Ａ及び第１移動端末２０Ａの位置情報を、サーバ１０に送信する。サーバ１０のＣＰＵ３１は、ステップ１２０で、リクエスト情報５０Ａ及び位置情報を受信したか否か判定する。判定が肯定されるまで、ＣＰＵ３１はステップ１２０の処理を繰り返す。
【００３２】
なお、リクエスト情報５０Ａ及びデータ５０Ｂなどの情報の送受信は、送信側が受信側に受信リクエストを行うことにより開始されてもよいし、受信側が送信側に送信リクエストを行うことにより開始されてもよい。以下の説明における情報の送受信についても同様である。例えば、データ５０Ｂの送信を送信側である第２移動端末２０Ｂが受信側である第１移動端末２０Ａに受信リクエストを行うことにより開始する場合には、サーバ１０は、レスポンス情報５０Ｃを第２移動端末２０Ｂに送信する。即ち、サーバ１０は、レスポンス情報５０Ｃを、実線（３）で示したように第１移動端末２０Ａに送信する代わりに、第２移動端末２０Ｂに送信する。
【００３３】
ステップ１２０の判定が肯定された場合、即ち、リクエスト情報５０Ａ及び位置情報を受信したと判定された場合、ＣＰＵ３１は、ステップ１３０で、第１移動端末２０Ａの位置情報を位置管理テーブル３５Ａに蓄積する。次に、ＣＰＵ３１は、リクエスト情報５０Ａでリクエストされたデータ５０Ｂを所持し、かつ、第１移動端末２０Ａとの間でアドホック通信が可能な領域内に存在することが予測される移動端末２０を選択する。データ５０Ｂを所持する移動端末２０は、例えば、図３Ｂのデータ管理テーブル３６Ａから識別することができる。
【００３４】
移動端末２０の位置は、例えば、図３Ａの位置管理テーブル３５Ａから予測することができる。移動端末２０の位置は、移動端末２０のＧＰＳ６２を利用するナビゲーションシステムに設定されている、位置管理情報の一例である移動先情報又は経路情報から予測してもよい。また、移動端末２０の移動先は、移動端末２０の二次記憶部５３に記憶されている位置管理情報の一例であるスケジュール情報から予測してもよい。また、移動端末２０の移動先は、位置管理情報の一例である移動端末２０の過去の移動履歴から予測されてもよい（例えば、毎週水曜日の午後２時には本社を出発し、午後３時には支社に到着する、など）。
【００３５】
なお、移動端末２０の位置情報は、上記したように、ステップ１１０で、サーバ１０にリクエスト情報５０Ａと共に送信され、ステップ１３０で、位置管理テーブルに蓄積される。したがって、リクエストされたデータ５０Ｂを既に所持する、即ち、データ５０Ｂの送信をサーバ１０に要求したことがある移動端末２０の位置情報、及び対応するデータは、既にサーバ１０に送信されている。サーバ１０に送信された位置情報は、位置管理テーブル３５Ａに登録され、対応するデータは、データ管理テーブル３６Ａに登録されている。
【００３６】
サーバ１０のＣＰＵ３１は、ステップ１４０で、携帯電話通信によって、第２移動端末２０Ｂから第１移動端末２０Ａにデータ５０Ｂを送信させるように指示するレスポンス情報５０Ｃを第１移動端末２０Ａに送信し、通信制御処理を終了する。
【００３７】
第１移動端末２０ＡのＣＰＵ５１Ａは、ステップ１５０で、レスポンス情報５０Ｃを受信したか否か判定する。ＣＰＵ５１Ａは、判定が肯定されるまでステップ１５０の判定を繰り返す。ステップ１５０の判定が肯定されると、ＣＰＵ５１Ａは、ステップ１６０で、第２移動端末２０Ｂからのデータ受信が可能か否か判定する。ステップ１６０の判定が肯定されるまで、ＣＰＵ５１Ａはステップ１６０の判定を繰り返す。
【００３８】
ＣＰＵ５１Ａが、ステップ１６０で、第２移動端末２０Ｂからデータ受信が可能であると判定すると、ＣＰＵ５１Ａは、ステップ１７０で、第２移動端末２０Ｂにデータ５０Ｂの送信を要求するデータ送信要求を送信する。なお、第２移動端末２０Ｂが第１移動端末２０Ａとの間でアドホック通信が可能な領域内に移動したと判定された場合に、第１移動端末２０Ａは第２移動端末２０Ｂからデータ受信が可能であると判定する。
【００３９】
アドホック通信で、第１移動端末２０Ａが第２移動端末２０Ｂからデータ５０Ｂを受信できるか否かは、以下のように判定されてもよい。即ち、第１移動端末２０ＡのＣＰＵ５１Ａが少量のテストデータを、アドホック通信で、第２移動端末２０Ｂに送信し、第２移動端末２０Ｂからのテストデータ受信通知を受信したか否かを判定する。
【００４０】
第２移動端末２０ＢのＣＰＵ５１Ｂは、ステップ１８０で、データ送信要求を受信したか否か判定する。ＣＰＵ５１Ｂは、判定が肯定されるまで、ステップ１８０の判定を繰り返す。
【００４１】
ステップ１８０の判定が肯定された場合、即ち、第１移動端末２０Ａからデータ送信要求を受信したことを判定すると、ステップ１９０で、第２移動端末２０ＢのＣＰＵ５１Ｂは、データ５０Ｂを第１移動端末２０Ａにアドホック通信で送信する。第２移動端末２０ＢのＣＰＵ５１Ｂは、データ５０Ｂを送信すると、通信制御処理を終了する。
【００４２】
ステップ２１０で、第１移動端末２０ＡのＣＰＵ５１Ａは、データ５０Ｂを受信したか否か判定する。ＣＰＵ５１Ａは、判定が肯定されるまで、ステップ２１０の判定を繰り返す。判定が肯定された場合、第１移動端末２０ＡのＣＰＵ５１Ａは、通信制御処理を終了する。
【００４３】
なお、ステップ１３０で、第２移動端末の候補として複数の移動端末２０が発見された場合、データ５０Ｂを第１移動端末２０Ａに送信するまでの時間Ｔが最短である移動端末２０を第２移動端末２０Ｂとして選択することができる。時間Ｔは、例えば、Ｔ１＋Ｔ２で求められる。時間Ｔ１は、第２移動端末の候補が現在位置から第１移動端末２０Ａとアドホック通信で通信可能な領域内に移動する時間である。また、時間Ｔ２は、アドホック通信で通信可能な領域内で、アドホック通信によって第２移動端末候補が第１移動端末２０Ａにデータ５０Ｂを送信する時間である。
【００４４】
時間Ｔ１は、例えば、現在時刻及び位置管理テーブル３５Ａから、第２移動端末の候補が第１移動端末２０Ａとアドホック通信で通信可能な領域内に到達する時刻を取得することにより求めることができる。
【００４５】
また、時間Ｔは以下のように取得されてもよい。時刻ｔにおける第２移動端末の候補（ｔｅｒ２）と第１移動端末２０Ａ（ｔｅｒ１）との間のアドホック通信での通信速度（通信帯域）が、図６の曲線３０１で例示される関数ｂｒ（ｔｅｒ１，ｔｅｒ２，ｔ）で表される例について説明する。第２移動端末の候補から第１移動端末２０Ａにデータ量Ｄａｃのデータ５０Ｂを送信する時間Ｔは、以下の式（１）を展開し、Ｔについて解くことにより取得する。
【数１】
2017139750.tif 000003
【００４６】
関数ｂｒ（ｔｅｒ１，ｔｅｒ２，ｔ）は、第１移動端末２０Ａ及び第２移動端末の候補の間の帯域特性、即ち、距離と通信帯域との関係から取得される。第１移動端末２０Ａ及び第２移動端末の候補の間の距離は、時刻ｔにおける各々の位置を位置管理テーブル３５Ａから取得し、位置の差を求めることにより算出される。図６において、縦軸は通信速度［bps］（通信帯域ともいう。）であり、横軸は時間［s］である。網掛け領域３０２の面積はデータ５０Ｂのデータ量を表す。
【００４７】
なお、第１移動端末２０Ａは、ステップ１１０でサーバ１０にリクエスト情報５０Ａを送信した後移動してもよい。この場合であっても、第１移動端末２０Ａの移動がステップ１１０でサーバ１０に送信した第１移動端末２０Ａの位置情報に含まれている場合、サーバ１０は当該位置情報に基づいて、ステップ１３０で適切な第２移動端末２０Ｂを選択する。
【００４８】
また、第１移動端末２０Ａの移動がステップ１１０でサーバ１０に送信した位置情報と異なる場合、第１移動端末２０Ａは、更新した位置情報をサーバ１０に送信する。これにより、サーバ１０は、ステップ１３０で適切な第２移動端末２０Ｂを選択することができる。なお、移動端末２０の位置情報は、例えば、移動端末２０がサーバ１０に所定時間毎に位置情報を送信することにより更新されてもよい。移動端末２０が位置管理テーブル３５Ａに登録されている位置情報とは異なる移動を行う場合に対処するためである。
【００４９】
なお、ステップ１４０で、サーバ１０が、レスポンス情報５０Ｃを第１移動端末２０Ａに送信し、第１移動端末２０Ａが第２移動端末２０Ｂに送信指示を中継する例について説明したが、本実施形態はこれに限定されない。サーバ１０は、第２移動端末２０Ｂにレスポンス情報５０Ｃを直接送信するようにしてもよい。この場合、第２移動端末２０Ｂが第１移動端末２０Ａにアドホック通信で通信可能な領域内に移動したか否か判定し、判定が肯定された場合に、第１移動端末２０Ａにデータ５０Ｂを送信する。
【００５０】
なお、本実施形態では、第２通信がアドホック通信である例について説明した。しかしながら、本実施形態はこれに限定されない。例えば、第２通信はマルチホップ通信であってもよい。マルチホップ通信では、アドホックモードでの通信をバケツリレー方式でつないで、複数の移動端末を介して通信を行う。したがって、マルチホップ通信の通信対象移動端末の数はアドホック通信の通信対象移動端末の数より多く、携帯電話通信の通信対象移動端末の数より少ない。
【００５１】
通信対象移動端末の数とは、例えば、通信リソースを共有する、または通信を中継する、など、通信によって影響を受ける移動端末の数である。通信システムにおける通信コストを通信対象移動端末の数に基づいて決定する場合、マルチホップ通信の通信コストはアドホック通信の通信コストよりも高く、携帯電話通信の通信コストよりも低い。したがって、第１移動端末２０Ａとの間でアドホック通信可能な領域に存在すると予測される移動端末を、マルチホップ通信可能な領域に存在すると予測される移動端末よりも優先して、第２移動端末２０として選択する。
【００５２】
また、本実施形態では、第１通信が携帯電話通信である場合について説明した。しかしながら、本実施形態はこれに限定されない。例えば、第１通信は衛星通信であってもよい。
【００５３】
なお、位置管理情報及びデータ管理情報は、例えば、サーバ１０にデータ送信を要求した移動端末２０の各々に送信され、移動端末２０の二次記憶部５３に記憶されてもよい。この場合、移動端末２０の各々は、サーバ１０に代わって、サーバ１０の機能として上記した機能を実行してもよい。
【００５４】
即ち、移動端末２０の制御部２２は、要求データを所持し、自機との間で第２通信が可能な領域内に存在することが予測される移動端末を選択移動端末として選択する。選択は、データ送信要求を行った移動端末の位置情報を蓄積した位置管理情報、及び移動端末が所持するデータを示す情報を複数登録したデータ管理情報に基づいて行う。選択移動端末は、所定領域内での通信が可能な第１通信、及び所定領域より狭い領域での通信が可能な第２通信を含む異なる複数の無線通信を各々が実行可能な複数の移動端末から選択する。移動端末２０の受信部２１は、サーバ１０から位置管理情報及びデータ管理情報を第１通信で受信し、選択移動端末から要求データを第２通信で受信する。
【００５５】
本実施形態では、受信部１１は、異なる複数の通信を各々が実行可能な複数の移動端末の各々から、データ送信要求、及びデータ送信要求を行った移動端末の位置情報を、第１通信及び第２通信の何れかによって受信する。異なる複数の通信は、所定領域内での通信が可能な第１通信、及び、第２通信を含む。制御部１２は、データ送信要求により要求された要求データを所持し、データ送信要求を送信した要求移動端末との間で第２通信が可能な領域内に存在することが予測される移動端末を選択移動端末として選択する制御を行う。選択は、受信部１１で受信したデータ送信要求、受信した位置情報を蓄積した位置管理情報、及び移動端末が所持するデータを示す情報を登録したデータ管理情報に基づいて、制御される。送信部１３は、選択された選択移動端末から要求移動端末に第２通信によって要求データを送信するように指示する送信指示を、第１通信及び第２通信の何れかによって選択移動端末に直接または中継して送信する。
【００５６】
上記により、本実施形態では、移動端末同士が近距離通信が可能な領域内に存在しない場合でも、第１通信によって受信した複数の移動端末の各々の位置情報を含む位置管理情報及びデータ管理情報に基づいて選択移動端末を選択する。したがって、情報処理装置と要求移動端末との間の通信量を低減することが可能となる。
【００５７】
また、本実施形態では、第２通信は、第１通信と比較して通信コストが低い。また、第２通信は、第１通信と比較して通信領域が狭い。本実施形態では、通信コストが低い、即ち、通信対象移動端末の数が第１通信より少ない第２通信で、選択移動端末が、情報処理装置に代わって、要求移動端末に要求データを送信する。したがって、システム全体の通信コストを低減することが可能となる。
【００５８】
［第２実施形態］
次に、実施形態の一例である第２実施形態を説明する。第１実施形態と同様の構成及び作用については説明を省略する。
【００５９】
本実施形態では、図７の実線（１）で示すように、リクエスト情報５０Ａを受信したサーバ１０が、位置管理テーブル３５Ａ及びデータ管理テーブル３６Ａに基づいて、第２移動端末２０Ｂを選択できない場合、サーバ１０は、実線（２）で示すように、データ５０Ｂを第１移動端末２０Ａに携帯電話通信で送信する。
【００６０】
サーバ１０が第２移動端末２０Ｂを選択することができない場合とは、例えば、データ５０Ｂを所持し、かつ、第１移動端末２０Ａと近距離通信が可能な領域内に存在することが予測される第２移動端末２０Ｂを発見することができない場合である。また、サーバ１０が第２移動端末２０Ｂを選択することができない場合とは、発見した第２移動端末２０Ｂが通信完了期待時間Ｔｓ内に第１移動端末２０Ａにデータ５０Ｂの送信を完了することができないと予測される場合である。通信完了期待時間Ｔｓとは、例えば、第１移動端末２０Ａのユーザがデータ５０Ｂの通信完了を期待する時間である。
【００６１】
詳細には、図８に例示するように、サーバ１０のＣＰＵ３１は、ステップ１２０でリクエスト情報５０Ａを受信したことを判定すると、ステップ１３２で、第２移動端末２０Ｂを発見したか否か判定する。第２移動端末２０Ｂは、データ５０Ｂを所持し、第１移動端末２０Ａとの間で近距離通信が可能な領域内に存在することが予測される移動端末である。ステップ１３２の判定が肯定された場合、ＣＰＵ３１は、ステップ１３３で、発見された第２移動端末２０Ｂが通信完了期待時間Ｔｓ内にデータ５０Ｂを第１移動端末２０Ａに送信可能か否かを判定する。
【００６２】
通信完了期待時間Ｔｓは、ステップ１１０で、リクエスト情報５０Ａをサーバ１０に送信する際に、第１移動端末２０ＡのＣＰＵ５１Ａがリクエスト情報５０Ａと共に送信してもよいし、予め設定されていてもよい。データ５０Ｂの送信完了までの時間Ｔ（＝Ｔ１＋Ｔ２）については上記したため説明を省略する。
【００６３】
ステップ１３２またはステップ１３３の判定が否定された場合、サーバ１０のＣＰＵ３１は、ステップ１２４で、携帯電話通信でデータ５０Ｂを第１移動端末２０Ａに送信する。
【００６４】
一方、第１移動端末２０ＡのＣＰＵ５１Ａは、ステップ１５０で、レスポンス情報５０Ｃを受信したか否か判定する。ステップ１５０の判定が否定された場合、即ち、レスポンス情報５０Ｃを受信しない場合、ステップ２０９で、ステップ１２４で、サーバ１０のＣＰＵ３１が送信したデータ５０Ｂを受信したか否か判定する。ステップ２０９の判定が肯定された場合、即ち、データ５０Ｂを受信した場合、第１移動端末２０ＡのＣＰＵ５１Ａは、通信制御処理を終了する。ステップ２０９の判定が否定された場合、即ち、データ５０Ｂを受信しない場合、ＣＰＵ５１Ａは、ステップ１５０に戻る。
【００６５】
本実施形態では、受信部１１は、異なる複数の通信を各々が実行可能な複数の移動端末の各々から、データ送信要求、及びデータ送信要求を行った移動端末の位置情報を、第１通信及び第２通信の何れかによって受信する。異なる複数の通信は、所定領域内での通信が可能な第１通信、及び、第２通信を含む。制御部１２は、データ送信要求により要求された要求データを所持し、データ送信要求を送信した要求移動端末との間で第２通信が可能な領域内に存在することが予測される移動端末を選択移動端末として選択する制御を行う。選択は、受信部１１で受信したデータ送信要求、受信した位置情報を蓄積した位置管理情報、及び移動端末が所持するデータを示す情報を登録したデータ管理情報に基づいて、制御される。送信部１３は、選択された選択移動端末から要求移動端末に第２通信によって要求データを送信するように指示する送信指示を、第１通信及び第２通信の何れかによって選択移動端末に直接または中継して送信する。
【００６６】
上記により、本実施形態では、移動端末同士が近距離通信が可能な領域内に存在しない場合でも、第１通信によって受信した複数の移動端末の各々の位置情報を含む位置管理情報及びデータ管理情報に基づいて選択移動端末を選択する。したがって、情報処理装置と要求移動端末との間の通信量を低減することが可能となる。
【００６７】
また、本実施形態では、第２通信は、第１通信と比較して通信コストが低い。また、第２通信は、第１通信と比較して通信領域が狭い。本実施形態では、通信コストが低い、即ち、通信対象移動端末の数が第１通信より少ない第２通信で、選択移動端末が、情報処理装置に代わって、要求移動端末に要求データを送信する。したがって、システム全体の通信コストを低減することが可能となる。
【００６８】
また、本実施形態では、情報処理装置が選択移動端末を選択することができない場合には、情報処理装置が要求移動端末に要求データを第１通信で送信するため、要求データが要求移動端末に送信されない虞を低減することができる。
【００６９】
［第３実施形態］
次に、実施形態の一例である第３実施形態を説明する。第１実施形態及び第２実施形態と同様の構成及び作用については説明を省略する。
【００７０】
本実施形態では、リクエスト情報５０Ａを受信したサーバ１０が選択した第２移動端末が単独では通信完了期待時間Ｔｓ内に第１移動端末２０Ａへのデータ送信を完了することができない例について説明する。図９に例示するように、サーバ１０は一点鎖線（２）及び（２）’で示すように第２移動端末２０Ｂ、…、２０Ｅ、即ち、複数の第２移動端末を選択する。実線（３）で示すように、サーバ１０は、第２移動端末２０Ｂ、…、２０Ｅから第１移動端末２０Ａに、データ５０Ｂを分割した分割データであるデータ５０ＢＡ、…、５０ＢＥを送信させるように指示するレスポンス情報５０Ｃを、第１移動端末２０Ａに送信する。第２移動端末２０Ｂ、…、２０Ｅの各々は、破線（４）及び破線（４）’に示すように、第１移動端末２０Ａとの間で、近距離通信が可能な領域に移動する。移動後、第２移動端末２０Ｂ、…、２０Ｅの各々は、実線（５）及び実線（５）’に示すように、データ５０ＢＡ、…、５０ＢＥの各々を第１移動端末２０Ａに送信する。
【００７１】
詳細には、図１０に例示するように、サーバ１０のＣＰＵ３１は、ステップ１２０で、第１移動端末２０Ａからリクエスト情報５０Ａを受信したことを判定すると、ステップ１３５で、第２移動端末２０Ｂを選択する。ＣＰＵ３１は、ステップ１３６で、第２移動端末２０Ｂが通信完了期待時間Ｔｓ内にデータ５０Ｂの第１移動端末２０Ａへの送信を完了できるか否か判定する。ステップ１３６の判定が否定された場合、ＣＰＵ３１はステップ１３５に戻り、さらに他の第２移動端末２０を選択する。
【００７２】
ステップ１３６の判定が肯定された場合、ＣＰＵ３１は、ステップ１４１で、レスポンス情報５０Ｃを第１移動端末２０Ａに送信し、通信制御処理を終了する。ステップ１３５で、第２移動端末２０Ｂ、…、２０Ｅが選択された場合、レスポンス情報５０Ｃは、第２移動端末２０Ｂ、…、２０Ｅの各々からデータ５０Ｂを分割した分割データ５０ＢＡ、…、５０ＢＥの各々を送信させるように指示する送信指示を含む。レスポンス情報５０Ｃは、また、第２移動端末２０Ｂ、…、２０Ｅの順で、第２移動端末２０Ｂ、…、２０Ｅの各々が第１移動端末２０Ａと近距離通信が可能な領域内に移動することを示す情報も含む。
【００７３】
第１移動端末２０ＡのＣＰＵ５１Ａは、ステップ１５１でレスポンス情報５０Ｃを受信したか否か判定する。ステップ１５１の判定が肯定されるまで、ＣＰＵ５１Ａは、ステップ１５１の判定を繰り返す。ステップ１５１の判定が肯定されると、ＣＰＵ５１Ａは、ステップ１６１で第２移動端末２０Ｂからデータ受信が可能であるか否か判定する。ステップ１６１の判定が肯定された場合、ステップ１７１で、ＣＰＵ５１Ａは、第２移動端末２０Ｂにデータ送信要求を送信する。データ送信要求は、分割データであるデータ５０ＢＡを送信するよう要求する情報も含む。
【００７４】
第２移動端末２０ＢのＣＰＵ５１Ｂは、ステップ１８１で、データ送信要求を受信したか否か判定する。ステップ１８１の判定が肯定されるまで、ステップ１８１の判定は繰り返される。ステップ１８１の判定が肯定されると、ＣＰＵ５１Ｂは、ステップ１９１で、第１移動端末２０Ａにデータ５０ＢＡを送信し、通信制御処理を終了する。
【００７５】
第１移動端末２０ＡのＣＰＵ５１Ａは、ステップ１７２で、分割したデータ５０ＢＡを受信したか否か判定する。ステップ１７２の判定が肯定されるまで、ステップ１７２の判定は繰り返される。ステップ１７２の判定が肯定されると、ＣＰＵ５１Ａは、ステップ２１１でデータ送信要求の送信が完了したか否か判定する。
【００７６】
ステップ２１１の判定が否定されると、ＣＰＵ５１Ａは、ステップ１６１に戻る。ステップ２１１の判定が肯定されると、即ち、第２移動端末２０Ｂ、…、２０Ｅにデータ送信要求の送信を行ったことが判定されると、ＣＰＵ５１Ａは通信制御処理を終了する。なお、ステップ１８２及びステップ１９２については、ステップ１８１及び１９１と同様であるため、説明を省略する。
【００７７】
なお、複数の第２移動端末を選択する場合、通信コストが低い移動端末２０を優先的に第２移動端末として選択してもよい。即ち、通信対象移動端末の数が少ない移動端末２０を優先的に選択することができる。例えば、アドホック通信による１対１での直接通信可能な移動端末２０とマルチホップ通信でのみ通信可能な移動端末２０とが第２移動端末の候補として発見された場合、アドホック通信で通信可能な移動端末２０を第２移動端末として優先的に選択する。これにより、通信コストを節約することができる。また、通信コストを節約するため、選択される第２移動端末の数は少ないほうがよい。即ち、２つの第２移動端末の組み合わせまたは３つの第２移動端末の組み合わせでデータ５０Ｂを、同一の通信手段で、通信完了期待時間Ｔｓ内に送信可能である場合、２つの第２移動端末の組み合わせを選択する。
【００７８】
なお、第２移動端末が２つ選択され、一方の第２移動端末と通信を行う間、他方の第２移動端末と通信を行うことができない排他的な通信が行われる場合には、通信速度が高い方の第２移動端末がデータを送信するようにしてもよい。例えば、第２移動端末２０Ｂ及び第２移動端末２０Ｃが排他的な通信を行う例について説明する。
【００７９】
図１１に例示するように、曲線３１２が第２移動端末２０Ｂの通信速度を表し、曲線３１３が第２移動通信端末２０Ｃの通信速度を表す。時刻Ｔｘまでは第２移動端末２０Ｂの通信速度の方が高いため、第２移動端末２０Ｂが第１移動端末２０Ａにデータを送信し、時刻Ｔｘを過ぎた後は第２移動端末２０Ｃの通信速度の方が高いため、第２移動端末２０Ｃから第１移動端末２０Ａにデータを送信する。なお、第２移動端末２０Ｂ及び第２移動端末２０Ｃが非排他的な通信を行う場合、図１１の時刻Ｔｘ１〜時刻Ｔｘ２の間、第２移動端末２０Ｂ及び第２移動端末２０Ｃの双方から第１移動端末２０Ａにデータが送信される。
【００８０】
また、ステップ１３５で、選択可能な全ての第２移動端末を選択してもデータ５０Ｂを通信完了期待時間Ｔｓ内に送信できないと判定される場合には、複数の第２移動端末に加え、サーバ１０からもデータ５０Ｂを分割した分割データを送信するようにしてもよい。図１２は、例えば、曲線３０４で通信速度が表される第２移動端末２０Ｂ及び破線３０５で通信速度が表される第２移動端末２０Ｃが選択され、他の第２移動端末の候補が発見されなかった例について示す。通信完了期待時間Ｔｓまでに、第２移動端末２０Ｂ及び２０Ｃだけではデータ５０Ｂの送信を完了できないと予測される場合に、直線３０６で通信速度が表されるサーバ１０が斜線領域３０７で示されるデータ量のデータを第１移動端末２０Ａに送信する。即ち、第２移動端末２０Ｂによって送信されるデータ５０ＢＡ及び第２移動端末２０Ｃによって送信されるデータ５０ＢＢをデータ５０Ｂから差し引いた残部分がサーバ１０によって第１移動端末２０Ａに送信される。
【００８１】
なお、本実施形態は、第１実施形態、第２実施形態または第１実施形態及び第２実施形態の組み合わせに適用されてもよい。
【００８２】
本実施形態では、受信部１１は、異なる複数の通信を各々が実行可能な複数の移動端末の各々から、データ送信要求、及びデータ送信要求を行った移動端末の位置情報を、第１通信及び第２通信の何れかによって受信する。異なる複数の通信は、所定領域内での通信が可能な第１通信、及び、第２通信を含む。制御部１２は、データ送信要求により要求された要求データを所持し、データ送信要求を送信した要求移動端末との間で第２通信が可能な領域内に存在することが予測される移動端末を選択移動端末として選択する制御を行う。選択は、受信部１１で受信したデータ送信要求、受信した位置情報を蓄積した位置管理情報、及び移動端末が所持するデータを示す情報を登録したデータ管理情報に基づいて、制御される。送信部１３は、選択された選択移動端末から要求移動端末に第２通信によって要求データを送信するように指示する送信指示を、第１通信及び第２通信の何れかによって選択移動端末に直接または中継して送信する。
【００８３】
上記により、本実施形態では、移動端末同士が近距離通信が可能な領域内に存在しない場合でも、第１通信によって受信した複数の移動端末の各々の位置情報を含む位置管理情報及びデータ管理情報に基づいて選択移動端末を選択する。したがって、情報処理装置と要求移動端末との間の通信量を低減することが可能となる。
【００８４】
また、本実施形態では、第２通信は、第１通信と比較して通信コストが低い。また、第２通信は、第１通信と比較して通信領域が狭い。本実施形態では、通信コストが低い、即ち、通信対象移動端末の数が第１通信より少ない第２通信で、選択移動端末が、情報処理装置に代わって、要求移動端末に要求データを送信する。したがって、システム全体の通信コストを低減することが可能となる。
【００８５】
本実施形態では、制御部１２は複数の選択移動端末を選択し、送信部１３は、複数の選択移動端末の各々から要求移動端末に要求データを分割した分割データの各々を送信する指示を送信指示に加えて送信する。また、送信部１３は、複数の選択移動端末の各々が送信する分割データのデータ量の合計が要求データのデータ量よりも少ない場合、要求移動端末に第１通信によって要求データの残部分を送信する。これにより、本実施形態では、要求データの送信を所定の時間内に完了しない虞を低減することができる。
【００８６】
［第４実施形態］
次に、実施形態の一例である第４実施形態を説明する。第１〜第３実施形態と同様の構成及び作用については説明を省略する。
【００８７】
本実施形態では、図１３に例示するように、実線（５）で示すように、第２移動端末２０Ｂから第１移動端末２０Ａにデータ５０Ｂを送信するよう要求した後、通信完了予測時間Ｔｄが経過するまでに、データ５０Ｂの受信を完了していない例について説明する。第１移動端末２０Ａは、サーバ１０に、実線（６）で示すように、サーバ１０から第１移動端末２０Ａにデータ５０Ｂを送信するよう要求するリクエスト情報５０Ａを送信する。リクエスト情報５０Ａを受信したサーバ１０は、実線（７）で示すように、データ５０Ｂを第１移動端末に、携帯電話通信で送信する。
【００８８】
詳細には、図１４に例示するように、第１移動端末２０ＡのＣＰＵ５１Ａは、ステップ１７０で、第２移動端末２０Ｂにデータ送信要求を送信し、ステップ１８３で、データ５０Ｂの受信が完了したか否か判定する。ステップ１８３の判定が肯定されると、ＣＰＵ５１Ａは通信制御処理を終了する。
【００８９】
ステップ１８３の判定が否定された場合、ＣＰＵ５１Ａは、ステップ１８４で、ステップ１１０でリクエスト情報５０Ａを送信した後、補足送信判定時間Ｔｅが経過したか否か判定する。補足送信判定時間Ｔｅは、通信完了予測時間Ｔｄから後述するステップ１８５で、リクエスト情報５０Ａを送信する時間Ｔｆを差し引いた時間である。したがって、補足送信予測時間Ｔｅは、式（２）で示す計算によって取得することができる。
Ｔｅ＝Ｔｄ−Ｔｆ  …（２）
【００９０】
通信完了予測時間Ｔｄは、図１５に例示するように、ステップ１１０で、リクエスト情報５０Ａと共に送信された通信完了期待時間Ｔｓから、データ５０Ｂをサーバ１０が単独で第１移動端末２０Ａに送信するために必要な時間Ｔｓ１を差し引いた時間である。時間Ｔｓ１は、データ５０Ｂのデータ量Ｄｂをサーバ１０から第１移動端末２０Ａへの通信速度Ｖｓ１で除算することにより取得することができる。したがって、通信完了予測時間Ｔｄは、例えば、式（３）で示す計算によって取得することができる。
Ｔｄ＝Ｔｓ−Ｔｓ１＝Ｔｓ−（Ｄｂ／Ｖｓ１）  …（３）
【００９１】
ステップ１８４の判定が否定された場合、ＣＰＵ５１Ａは、ステップ１８３に戻る。一方、ステップ１８４の判定が肯定された場合、ＣＰＵ５１Ａは、ステップ１８５で、サーバ１０に、データ５０Ｂの内、第１移動端末２０Ａが受信を完了していない部分（以下、未受信データともいう。）を送信するように要求するリクエスト情報５０Ａを送信する。
【００９２】
サーバ１０のＣＰＵ３１は、ステップ２２０で、リクエスト情報５０Ａを受信したか否か判定し、判定が肯定された場合、ステップ２３０で、要求された未受信データを第１移動端末２０Ａに送信して通信制御処理を終了する。一方、ステップ２２０の判定が否定された場合、ＣＰＵ３１は、ステップ２４０で、ステップ１２０で、リクエスト情報５０Ａを受信してから通信完了予測時間Ｔｄが経過したか否か判定し、判定が否定された場合、ステップ２２０に戻る。ステップ２４０の判定が肯定された場合、ＣＰＵ３１は、通信制御処理を終了する。なお、ステップ２３０で、サーバ１０が第１移動端末２０Ａに未受信データを送信する場合、サーバ１０または第１移動端末２０Ａは第２移動端末２０Ｂにデータ送信を中止するように指示する。
【００９３】
次に、ステップ１３０で選択された第２移動端末２０Ｂが第１移動端末２０Ａと近距離通信が可能な領域内に移動しなかった例について説明する。第１移動端末２０ＡのＣＰＵ５１Ａは、ステップ１６０で、第２移動端末２０Ｂからデータ受信可能であるか否か判定する。ＣＰＵ５１Ａは、ステップ１６０の判定が否定された場合、ステップ１６２で、ステップ１１０でリクエスト情報５０Ａを送信してから補足送信判定時間Ｔｅが経過したか否か判定する。判定が否定された場合、ＣＰＵ５１Ａはステップ１６０に戻る。
【００９４】
一方、ステップ１６２の判定が肯定された場合、即ち、補足送信判定時間Ｔｅを経過するまで、第２移動端末２０Ｂが第１移動端末２０Ａと近距離通信が可能な領域内に移動しなかった場合、ＣＰＵ５１Ａはステップ１８５に進む。上記したように、ＣＰＵ５１Ａは、ステップ１８５で、サーバ１０に、未受信データを送信するように要求するリクエスト情報を送信する。即ち、第２移動端末２０Ｂが第１移動端末２０Ａと近距離通信が可能な領域内に移動しなかった場合でも、サーバ１０が未受信データ（この場合は、データ５０Ｂ）を携帯電話通信で第１移動端末２０Ａに送信する。
【００９５】
なお、上記では、通信完了予測時間Ｔｄは、図１５に例示するように、ステップ１１０のリクエスト情報５０Ａと共に送信される通信完了期待時間Ｔｓから、データ５０Ｂをサーバ１０が第１移動端末２０Ａに送信するために必要な時間を差し引いた時間とした。しかしながら、本実施形態はこれに限定されない。例えば、Ｔｄ＝Ｔｓであってもよいし、Ｔｄ＝Ｔｓ−Ｔｓ１／Ｃであってもよい。Ｃは、例えば、１を越える値であってよい。
【００９６】
なお、本実施形態は、第１〜第３実施形態の何れか、または第１〜第３実施形態の何れかの組み合わせに適用されてもよい。
【００９７】
本実施形態では、受信部１１は、異なる複数の通信を各々が実行可能な複数の移動端末の各々から、データ送信要求、及びデータ送信要求を行った移動端末の位置情報を、第１通信及び第２通信の何れかによって受信する。異なる複数の通信は、所定領域内での通信が可能な第１通信、及び、第２通信を含む。制御部１２は、データ送信要求により要求された要求データを所持し、データ送信要求を送信した要求移動端末との間で第２通信が可能な領域内に存在することが予測される移動端末を選択移動端末として選択する制御を行う。選択は、受信部１１で受信したデータ送信要求、受信した位置情報を蓄積した位置管理情報、及び移動端末が所持するデータを示す情報を登録したデータ管理情報に基づいて、制御される。送信部１３は、選択された選択移動端末から要求移動端末に第２通信によって要求データを送信するように指示する送信指示を、第１通信及び第２通信の何れかによって選択移動端末に直接または中継して送信する。
【００９８】
上記により、本実施形態では、移動端末同士が近距離通信が可能な領域内に存在しない場合でも、第１通信によって受信した複数の移動端末の各々の位置情報を含む位置管理情報及びデータ管理情報に基づいて選択移動端末を選択する。したがって、情報処理装置と要求移動端末との間の通信量を低減することが可能となる。
【００９９】
また、本実施形態では、第２通信は、第１通信と比較して通信コストが低い。また、第２通信は、第１通信と比較して通信領域が狭い。本実施形態では、通信コストが低い、即ち、通信対象移動端末の数が第１通信より少ない第２通信で、選択移動端末が、情報処理装置に代わって、要求移動端末に要求データを送信する。したがって、システム全体の通信コストを低減することが可能となる。
【０１００】
本実施形態では、所定時間内に、要求移動端末への要求データの送信が完了しないことが予測される場合、送信部１１は、要求データの内送信が完了していない部分を、要求移動端末に第１通信によって送信する。
【０１０１】
これにより、選択移動端末が要求移動端末に要求データを送信しない場合、もしくは、予測よりも低い通信速度で要求データを送信する場合であっても、所定時間内に、要求移動端末が要求データの受信を完了できない虞を低減することができる。選択移動端末が要求移動端末に要求データを送信しない場合、もしくは、予測よりも低い通信速度で要求データを送信する場合とは、例えば、選択移動端末が位置管理情報に基づく予測と異なる移動を行う場合に生じ得る。
【０１０２】
［第５実施形態］
次に、実施形態の一例である第５実施形態を説明する。第１〜第４実施形態と同様の構成及び作用については説明を省略する。
【０１０３】
第５実施形態では、サーバ１０が、データ５０Ｂを所持し、第１移動端末２０Ａと近距離通信が可能な領域内に存在すると予測される第２移動端末を発見できない例について説明する。データ５０Ｂを所持し、第１移動端末２０Ａと近距離通信が可能な領域内に存在すると予測される第２移動端末を発見できない場合、サーバ１０は、データ５０Ｂを所持する移動端末２０を選択する。図１６の一点鎖線（５）で示すように、サーバ１０は、発見された移動端末２０の内、第１移動端末２０Ａと近距離通信が可能な領域内に存在するとは予測されないが、第１移動端末２０Ａの近くに存在すると予測される移動端末２０Ｆを選択する。移動端末２０Ｆは、第２移動端末の候補である。サーバ１０は、実線（３）で示すように、移動端末２０Ｆと近距離通信が可能な領域内に第１移動端末２０Ａが移動するよう指示する移動指示５０Ｄを第１移動端末２０Ａに送信する。
【０１０４】
第１移動端末２０Ａは、実線（４）で示すように、サーバ１０の移動指示５０Ｄに了承するか否かを示すリクエスト情報５０Ａをサーバ１０に送信する。リクエスト情報５０Ａがサーバ１０の移動指示に了承することを示す場合、実線（６）で示すように、サーバ１０は、移動端末２０Ｆから第１移動端末２０Ａにデータ５０Ｂを送信させるよう指示するレスポンス情報５０Ｃを第１移動端末２０Ａに送信する。この場合、破線（７）で示すように、第１移動端末２０Ａは、移動端末２０Ｆとの間で近距離通信が可能な領域内に移動し、実線（８）で示すように、移動端末２０Ｆは第１移動端末２０Ａにデータ５０Ｂを送信する。一方、リクエスト情報５０Ａがサーバ１０の移動指示５０Ｄに了承しないことを示す場合、実線（６）’で示すように、サーバ１０は、データ５０Ｂを第１移動端末２０Ａに携帯電話通信で送信する。
【０１０５】
詳細には、図１７で例示するように、サーバ１０のＣＰＵ３１は、ステップ１２０で、リクエスト情報５０Ａを受信したことを判定する。次に、サーバ１０のＣＰＵ３１は、ステップ１３０Ａで、データ５０Ｂを所持し、第１移動端末２０Ａと近距離通信が可能な領域内に存在することが予測される第２移動端末２０を発見できたか否か判定する。ステップ１３０Ａの判定が肯定された場合、ＣＰＵ３１は、ステップ１３０Ｆに進む。ステップ１３０Ａの判定が否定された場合、ＣＰＵ３１は、ステップ１３０Ｂで、データ５０Ｂを所持し、第１移動端末２０Ａの近くに存在することが予測される第２移動端末の候補である移動端末２０Ｆを選択する。ＣＰＵ３１は、ステップ１３０Ｃで、移動端末２０Ｆと近距離通信が可能な領域内に第１移動端末２０Ａが移動するように、第１移動端末２０Ａに移動指示５０Ｄを送信する。
【０１０６】
第１移動端末２０ＡのＣＰＵ５１Ａは、ステップ１５０で、レスポンス情報５０Ｃを受信したか否か判定し、レスポンス情報５０Ｃを受信しない場合、ステップ１５２で、サーバ１０から移動指示５０Ｄを受信したか否か判定する。判定が否定された場合、ＣＰＵ５１Ａは、ステップ１５０に戻る。一方、判定が肯定された場合、ＣＰＵ５１Ａは、ステップ１５３で、サーバ１０の移動指示５０Ｄに了承するか否かを示す移動指示回答を含むリクエスト情報５０Ａをサーバ１０に送信する。移動指示回答は、例えば、第１移動端末２０ＡのＣＰＵ５１Ａが第１移動端末２０Ａのディスプレイにサーバ１０からの移動指示の詳細を表示し、ユーザに移動指示を了承するか否かを選択するよう促し、ユーザによって行われる選択で決定されてもよい。
【０１０７】
サーバ１０のＣＰＵ３１は、ステップ１３０Ｄで、リクエスト情報５０Ａ、即ち、移動指示回答を受信したか否か判定する。判定が肯定されるまで、ＣＰＵ３１は、ステップ１３０Ｄの判定を繰り返す。判定が肯定された場合、ＣＰＵ３１は、ステップ１３０Ｅで、移動指示回答が移動指示を了承しているか否か判定する。ステップ１３０Ｅの判定が肯定された場合、ＣＰＵ３１は、ステップ１３０Ｆで、移動端末２０Ｆから第１移動端末２０Ａにデータ５０Ｂを送信させるよう指示するレスポンス情報５０Ｃを送信する。また、ＣＰＵ３１は、図３の位置管理テーブル３５Ａにおける第１移動端末２０Ａの位置情報を更新する。第１移動端末２０Ａの移動の予定が変更されたためである。次に、ＣＰＵ３１は、通信制御処理を終了する。一方、ステップ１３０Ｅの判定が否定された場合、ＣＰＵ３１は、ステップ１３０Ｇで、データ５０Ｂを第１移動端末２０Ａに携帯電話通信で送信し、通信制御処理を終了する。
【０１０８】
第１移動端末２０ＡのＣＰＵ５１Ａは、ステップ１５４で、サーバ１０の移動指示５０Ｄに了承したか否か判定し、判定が肯定された場合、ステップ１５５で、レスポンス情報５０Ｃを受信したか否か判定する。判定が肯定されるまで、ＣＰＵ５１Ａは、ステップ１５５の判定を繰り返す。ステップ１５５の判定が肯定されると、ＣＰＵ５１Ａは、ステップ１６０に戻る。一方、ステップ１５４の判定が否定されると、ＣＰＵ５１Ａは、ステップ２１０に進む。
【０１０９】
なお、本実施形態は、第１〜第４実施形態の何れか、または、第１〜第４実施形態の何れかの組み合わせに適用されてもよい。
【０１１０】
本実施形態では、受信部１１は、異なる複数の通信を各々が実行可能な複数の移動端末の各々から、データ送信要求、及びデータ送信要求を行った移動端末の位置情報を、第１通信及び第２通信の何れかによって受信する。異なる複数の通信は、所定領域内での通信が可能な第１通信、及び、第２通信を含む。制御部１２は、データ送信要求により要求された要求データを所持し、データ送信要求を送信した要求移動端末との間で第２通信が可能な領域内に存在することが予測される移動端末を選択移動端末として選択する制御を行う。選択は、受信部１１で受信したデータ送信要求、受信した位置情報を蓄積した位置管理情報、及び移動端末が所持するデータを示す情報を登録したデータ管理情報に基づいて、制御される。送信部１３は、選択された選択移動端末から要求移動端末に第２通信によって要求データを送信するように指示する送信指示を、第１通信及び第２通信の何れかによって選択移動端末に直接または中継して送信する。
【０１１１】
上記により、本実施形態では、移動端末同士が近距離通信が可能な領域内に存在しない場合でも、第１通信によって受信した複数の移動端末の各々の位置情報を含む位置管理情報及びデータ管理情報に基づいて選択移動端末を選択する。したがって、情報処理装置と要求移動端末との間の通信量を低減することが可能となる。
【０１１２】
また、本実施形態では、第２通信は、第１通信と比較して通信コストが低い。また、第２通信は、第１通信と比較して通信領域が狭い。本実施形態では、通信コストが低い、即ち、通信対象移動端末の数が第１通信より少ない第２通信で、選択移動端末が、情報処理装置に代わって、要求移動端末に要求データを送信する。したがって、システム全体の通信コストを低減することが可能となる。
【０１１３】
本実施形態では、送信部１３は、要求移動端末との間で第２通信が可能な領域内に要求データを所持する移動端末が存在しないことが予測される場合、要求移動端末に所定の領域内に移動するように指示する移動指示を送信する。所定の領域とは、要求データを所持する移動端末との間で第２通信が可能な領域である。また、本実施形態では、制御部１２は、移動指示に了承することを示す応答を、受信部１１によって要求移動端末から受信した場合、了承することを示す応答を行った要求移動端末の位置管理情報を更新する。
【０１１４】
これにより、要求移動端末との間で近距離通信が可能な領域内に要求データを有する移動端末が存在することが予測されない場合であっても、要求移動端末が要求データを取得できない虞を低減することが可能となる。
【０１１５】
［第６実施形態］
次に、実施形態の一例である第６実施形態について説明する。第１〜第５実施形態と同様の構成及び作用については説明を省略する。
【０１１６】
第６実施形態では、変換可能データの一例であるデータ５０Ｅを所持し、第１移動端末２０Ａと近距離通信が可能な領域内に存在すると予測される移動端末２０から、変換可能データ５０Ｅを第１移動端末２０Ａに送信させる。データ５０Ｅは、要求データの一例であるデータ５０Ｂに変換可能なデータであり、第１移動端末２０Ａは、要求移動端末の一例である。
【０１１７】
図１８Ａは、データ変換管理テーブル３７Ａを例示する。データ変換管理テーブル３７Ａは、データ５０Ｅに対応する入力データ、データ５０Ｂに対応する出力データのデータ名、及び入力データを出力データに変換する処理の処理ＩＤを対応付けて記録したテーブルである。データ変換管理テーブル３７Ａは、さらに、処理オプション及び処理時間を含んでいてもよい。処理オプションは、例えば、処理が解像度変換であれば、入力データの解像度及び出力データの解像度であってよく、例えば、処理がフォーマット変換であれば、入力データのフォーマット及び出力データのフォーマットであってよい。また、処理時間は、所定の環境による基準処理時間を表す。
【０１１８】
詳細には、例えば、入力データのデータ名が「V01-FHD.mp4」、出力データのデータ名が「V01-UXGA.mp4」、処理オプションが「in=1920x1080、out=1600x1200」、処理ＩＤが「Ｐ１」である場合、処理時間は６０秒である。処理オプション「in=1920x1080、out=1600x1200」は、入力データの解像度が１９２０画素×１０８０画素、出力データの解像度が１６００画素×１２００画素であることを表す。処理ＩＤについては後述する。
【０１１９】
図１８Ｂは、データ対応テーブル３８Ａを例示する。データ対応テーブル３８Ａは、図３Ｂのデータ管理テーブル３６Ａにも含まれるデータＩＤ、データ名、及び、データのハッシュ値を対応付けて記録したテーブルである。データ名は、図１８Ａのデータ変換管理テーブル３７Ａに含まれる入力データまたは出力データに対応するデータのデータ名である。ハッシュ値とは、データのコンテンツを一定長に要約した値であり、データの完全性を検査するために使用することができる値である。
【０１２０】
詳細には、例えば、データＩＤが「３８Ａ」、データ名が「V01-FHD.mp4」である場合、ハッシュ値が「c4ca4238a0b923820dcc509a6f75849b」である。ハッシュ値は、対応するデータＩＤまたはデータ名で示されるデータのコンテンツに基づいて、所定の算出方法で予め算出される。データ要求を行う際に、データＩＤではなく、データ名を使用する場合、図１８Ｂにおいて、データＩＤを省略してもよい。この場合、図３Ｂのデータ管理テーブル３６Ａを、データＩＤに代えて、データ名と端末ＩＤとを対応付けて記録するように、変更する。
【０１２１】
図１８Ｃは、変換処理テーブル３９Ａを例示する。変換処理テーブル３９Ａは、図１８Ａのデータ変換管理テーブル３７Ａにも含まれる処理ＩＤ、処理名、処理実行に使用するプログラム名である処理実行プログラム、処理の説明である説明を対応付けて記録したテーブルである。
【０１２２】
詳細には、例えば、処理ＩＤが「Ｐ１」、処理名が「解像度変換」、処理実行プログラムが「convert.exe」である場合、説明は「解像度を変換する」である。処理名及び説明は、ユーザが情報を理解するための支援であり省略してもよい。
【０１２３】
データ変換管理テーブル３７Ａ、データ対応テーブル３８Ａ及び変換処理テーブル３９Ａは、例えば、サーバ１０の二次記憶部３３に記憶されている。
【０１２４】
次に、通信制御システムの一例であるサーバ１０、移動端末２０Ａ、及び移動端末２０Ｂの作用の概略について説明する。本実施形態では、図１９に例示するように、要求移動端末の一例である移動端末２０Ａ（以下、第１移動端末２０Ａともいう。）は、データ５０Ｂの送信を要求する。
【０１２５】
本実施形態では、第１移動端末２０Ａは、実線（１）で示すように、データ５０Ｂの送信を要求するデータ送信要求の一例であるリクエスト情報５０Ａを携帯電話通信でサーバ１０に送信する。リクエスト情報５０Ａを受信したサーバ１０は、一点鎖線（２）で示すように、位置管理テーブル３５Ａ、データ管理テーブル３６Ａ、データ対応テーブル３８Ａ、及びデータ変換管理テーブル３７Ａに基づいて、移動端末２０Ｂを選択する。移動端末２０Ｂ（以下、第２移動端末２０Ｂともいう）は、選択移動端末の一例である。第２移動端末２０Ｂは、データ５０Ｂに変換可能なデータ５０Ｅを所持し、第１移動端末２０Ａと近距離通信が可能な領域内に存在すると予測される移動端末２０である。
【０１２６】
実線（３）で示すように、サーバ１０は、第２移動端末２０Ｂから第１移動端末２０Ａにデータ５０Ｅを送信させるように指示するレスポンス情報５０Ｃを、第１移動端末２０Ａに送信する。レスポンス情報５０Ｃは送信指示の一例である。破線（４）で示すように、第２移動端末２０Ｂが、第１移動端末２０Ａとの間でアドホック通信が可能な領域に移動すると、実線（５）で示すように、第２移動端末２０Ｂは第１移動端末２０Ａにデータ５０Ｅをアドホック通信で送信する。第１移動端末２０Ａは、受信したデータ５０Ｅを、送信を要求したデータ５０Ｂに変換する。変換処理に使用するプログラムは、変換処理テーブル３９Ａに基づいて決定される。
【０１２７】
詳細には、図２０Ａに例示するように、第１移動端末２０ＡのＣＰＵ５１Ａは、ステップ３１０で、携帯電話通信によって、リクエスト情報５０Ａ及び第１移動端末２０Ａの位置情報を、サーバ１０に送信する。サーバ１０のＣＰＵ３１は、ステップ３２０で、リクエスト情報５０Ａ及び位置情報を受信したか否か判定する。判定が肯定されるまで、ＣＰＵ３１は、ステップ３２０の処理を繰り返す。
【０１２８】
ステップ３２０の判定が肯定された場合、即ち、リクエスト情報５０Ａ及び第１移動端末２０Ａの位置情報を受信したと判定された場合、ＣＰＵ３１は、ステップ３３０で、第１移動端末２０Ａの位置情報を位置管理テーブル３５Ａに蓄積する。次に、ＣＰＵ３１は、リクエスト情報５０Ａでリクエストされたデータ５０Ｂに変換可能なデータ５０Ｅを所持し、かつ、第１移動端末２０Ａとの間でアドホック通信が可能な領域内に存在することが予測される移動端末２０を選択する。
【０１２９】
データ５０Ｅを所持する移動端末２０を選択するために、例えば、図１８Ｂのデータ対応テーブル３８Ａから、まず、データ５０ＢのデータＩＤに基づいて、データ５０Ｂのデータ名を取得する。次に、図１８Ａのデータ変換管理テーブル３７Ａの出力データのデータ名に基づいて、対応する入力データのデータ名を取得し、データ対応テーブル３８Ａのデータ名に基づいて、データＩＤを取得する。次に、図３Ｂのデータ管理テーブル３６ＡのデータＩＤに基づいて、端末ＩＤを取得し、端末ＩＤに対応する移動端末２０に、データＩＤに対応するデータのハッシュ値を送信するよう要求する。ハッシュ値を受信すると、データ対応テーブル３８Ａで、データＩＤに基づいてハッシュ値を取得し、取得したハッシュ値と受信したハッシュ値とを比較し、データ５０Ｅの完全性を確認することで、データ５０Ｅを所持する移動端末２０を選択することができる。
【０１３０】
なお、移動端末２０が所持するデータのハッシュ値は、例えば、一定時間毎にサーバ１０に送信され、データＩＤまたはデータ名と共に、サーバ１０の第２記憶部３３に蓄積されていてもよい。この場合、データ５０Ｅを所持する移動端末２０を選択するために、移動端末２０Ｅにデータのハッシュ値を送信するよう要求しなくてもよい。また、サーバ１０は、移動端末２０のデータのハッシュ値が変更された時点で、図３Ｂのデータ管理テーブル３６Ａを変更し、当該データのデータＩＤに対応する端末ＩＤからハッシュ値が変更されたデータを所持する移動端末２０の端末ＩＤを削除してもよい。データのハッシュ値が変更されたということは、データのコンテンツが変更されたということであり、移動端末２０は実質的に当該データを所持しない状態となるためである。
【０１３１】
サーバ１０のＣＰＵ３１は、ステップ３４０で、携帯電話通信によって、第２移動端末２０Ｂから第１移動端末２０Ａにデータ５０Ｅを送信させるように指示するレスポンス情報５０Ｃを第１移動端末２０Ａに送信し、通信制御処理を終了する。レスポンス情報５０Ｃは、第１移動端末２０Ａがデータ５０Ｅをデータ５０Ｂに変換するように指示する指示情報、及び、データ５０Ｅをデータ５０Ｂに変換する処理実行プログラムのプログラム名を含む。
【０１３２】
処理実行プログラムのプログラム名を取得するために、まず、図１８Ａのデータ変換管理テーブル３７Ａの入力データ及び出力データに基づいて、処理ＩＤ（及び、存在する場合、処理オプション）を取得する。次に、図１８Ｃの変換処理テーブル３９Ａの処理ＩＤに基づいて、処理実行プログラムのプログラム名を取得する。処理オプションが存在する場合、レスポンス情報５０Ｃは、処理オプションを含む。
【０１３３】
第１移動端末２０ＡのＣＰＵ５１Ａは、ステップ３５０で、レスポンス情報５０Ｃを受信したか否か判定する。ＣＰＵ５１Ａは、判定が肯定されるまでステップ３５０の判定を繰り返す。ステップ３５０の判定が肯定されると、ＣＰＵ５１Ａは、ステップ３６０で、第２移動端末２０Ｂからのデータ受信が可能か否か判定する。ステップ３６０の判定が肯定されるまで、ＣＰＵ５１Ａはステップ３６０の判定を繰り返す。
【０１３４】
ＣＰＵ５１Ａが、ステップ３６０で、第２移動端末２０Ｂからデータ受信が可能であると判定すると、ＣＰＵ５１Ａは、ステップ３７０で、第２移動端末２０Ｂにデータ５０Ｅの送信を要求するデータ送信要求を送信する。なお、第２移動端末２０Ｂが第１移動端末２０Ａとの間でアドホック通信が可能な領域内に移動したと判定された場合に、第１移動端末２０Ａは第２移動端末２０Ｂからデータ受信が可能であると判定する。
【０１３５】
第２移動端末２０ＢのＣＰＵ５１Ｂは、ステップ３８０で、データ送信要求を受信したか否か判定する。ＣＰＵ５１Ｂは、判定が肯定されるまで、ステップ３８０の判定を繰り返す。
【０１３６】
ステップ３８０の判定が肯定された場合、即ち、第１移動端末２０Ａからデータ送信要求を受信したことを判定すると、ステップ３９０で、第２移動端末２０ＢのＣＰＵ５１Ｂは、データ５０Ｅを第１移動端末２０Ａにアドホック通信で送信する。第２移動端末２０ＢのＣＰＵ５１Ｂは、データ５０Ｅを送信すると、通信制御処理を終了する。
【０１３７】
ステップ４１０で、第１移動端末２０ＡのＣＰＵ５１Ａは、データ５０Ｅを受信したか否か判定する。ＣＰＵ５１Ａは、判定が肯定されるまで、ステップ４１０の判定を繰り返す。判定が肯定された場合、第１移動端末２０ＡのＣＰＵ５１Ａは、ステップ４５０で、レスポンス情報５０Ｃに含まれたプログラム名の処理実行プログラム（及び、存在する場合、処理オプション）を使用して、データ５０Ｅをデータ５０Ｂに変換する。その後、第１移動端末２０ＡのＣＰＵ５１Ａは、通信制御処理を終了する。
【０１３８】
なお、データ５０Ｅからデータ５０Ｂへの変換を、第１移動端末２０Ａが行う例について上記したが、本実施形態はこれに限定されない。図２０Ｂに例示するように、第２移動端末２０Ｂが、ステップ３８０でデータ送信要求を受信した後、ステップ４６０で、データ５０Ｅからデータ５０Ｂへの変換を行うようにしてもよい。第２移動端末２０ＢのＣＰＵ５１Ｂは、ステップ３９０で、データ５０Ｂを送信し、第１移動端末２０ＡのＣＰＵ５１Ａは、ステップ４１０でデータ５０Ｂを受信すると、通信制御処理を終了する。なお、この場合、ステップ３７０で、第１移動端末２０Ａから第２移動端末２０Ｂに送信されるデータ送信要求は、処理実行プログラムのプログラム名（及び、存在する場合、処理オプション）を含む。
【０１３９】
なお、リクエスト情報５０Ａ及びデータ５０Ｂなどの情報の送受信は、送信側が受信側に受信リクエストを行うことにより開始されてもよいし、受信側が送信側に送信リクエストを行うことにより開始されてもよい。以下の説明における情報の送受信についても同様である。例えば、データ５０Ｂの送信を送信側である第２移動端末２０Ｂが受信側である第１移動端末２０Ａに受信リクエストを行うことにより開始する場合には、サーバ１０はレスポンス情報５０Ｃを第２移動端末２０Ｂに送信する。即ち、サーバ１０は、レスポンス情報５０Ｃを、実線（３）で示したように第１移動端末２０Ａに送信する代わりに、第２移動端末２０Ｂに送信する。この場合、第２移動端末２０Ｂは、レスポンス情報５０Ｃを受信すると、ステップ４６０のデータ５０Ｅからデータ５０Ｂへの変換を開始する。
【０１４０】
データ５０Ｅからデータ５０Ｂへの変換を第１移動端末２０Ａで行うか、第２移動端末２０Ｂで行うかは、どちらの端末で変換を行うと、データの変換及び送信がより早く完了するか、に基づいて決定することができる。データ５０Ｅからデータ５０Ｂへの変換を第２移動端末２０Ｂで行う場合、データの変換及び送信が完了する時間Ｔｇ１は、式（４）に例示するように、時間Ｔｅ１または時間Ｔ１の内、長い方の時間と、時間Ｔ２とを加算することで、取得することができる。時間Ｔｇ１は、第２送信が完了するまでの予測時間の一例である。
Ｔｇ１＝ｍａｘ（Ｔｅ１，Ｔ１）＋Ｔ２    …（４）
【０１４１】
時間Ｔｅ１は、データの変換に要する時間であり、時間Ｔ１は、第２移動端末２０Ｂが現在位置から第１移動端末２０Ａとアドホック通信で通信可能な領域内に移動する時間である。時間Ｔ２は、アドホック通信で通信可能な領域内で、アドホック通信によって第２移動端末２０Ｂが第１移動端末２０Ａにデータ５０Ｂを送信する時間である。時間Ｔ１及び時間Ｔ２については、上記したため、説明を省略する。
【０１４２】
時間Ｔｅ１としては、例えば、図１８Ａのデータ変換管理テーブル３７Ａに含まれる処理時間を使用することができる。移動端末２０のＣＰＵ性能、メモリ容量などによって処理時間にばらつきが生じる場合、処理時間のばらつきを吸収するための所定の係数を処理時間に乗算することで、時間Ｔｅ１を決定してもよい。また、図１８Ａにおいて、移動端末２０のタイプ毎の処理時間を記憶しておき、移動端末２０のタイプ名などに基づいて、適切な処理時間を選択するようにしてもよい。
【０１４３】
図２１Ａは、Ｔｅ１＞Ｔ１である場合の、時間Ｔｇ１（＝Ｔｅ１＋Ｔ２）を例示する。Ｔｅ１＞Ｔ１である場合、第２移動端末２０Ｂは、第１移動端末２０Ａとアドホック通信可能な領域に移動した後に、データの変換を完了し、データ５０Ｂの送信を開始する。
【０１４４】
図２１Ｂは、Ｔ１＞Ｔｅ１である場合の、時間Ｔｇ１（＝Ｔ１＋Ｔ２）を例示する。Ｔ１＞Ｔｅ１である場合、第２移動端末２０Ｂは、第１移動端末２０Ａとアドホック通信可能な領域に移動する前に、データの変換を完了し、第１移動端末２０Ａとアドホック通信可能な領域に移動した後に、データ５０Ｂの送信を開始する。
【０１４５】
データ５０Ｅからデータ５０Ｂへの変換を第１移動端末２０Ａで行う場合、データの変換及び送信が完了する時刻Ｔｇ２は、式（５）に例示するように、データ送信の完了に要する時間Ｔ１＋Ｔ２と、データ変換に要する時間Ｔｅ２と、を加算することで取得することができる。時間Ｔｇ２は、第１送信が完了するまでの予測時間の一例である。
Ｔｇ２＝（Ｔ１＋Ｔ２）＋Ｔｅ２    …（５）
時間Ｔｅ２は、時間Ｔｅ１と同様に取得することができる。
【０１４６】
図２１Ｃは、時間Ｔｇ２（＝Ｔ１＋Ｔ２＋Ｔｅ２）を例示する。第１移動端末２０Ａでデータ５０Ｅをデータ５０Ｂに変換する場合、データ５０Ｅの送信を完了した後、データ変換を開始する。サーバ１０は、データ５０Ｅからデータ５０Ｂへの変換を、第１移動端末２０Ａが行うか、第２移動端末２０Ｂが行うか、についての指示を、例えば、レスポンス情報５０Ｃに含めることができる。データ５０Ｅからデータ５０Ｂへの変換を第２移動端末２０Ｂが行う場合、サーバ１０は、レスポンス情報５０Ｃを第１移動端末２０Ａに代えて、第２移動端末２０Ｂに送信する。データ５０Ｅからデータ５０Ｂへの変換を第２移動端末２０Ｂが行う場合、サーバ１０は、第２移動端末２０Ｂに、データ変換の指示、データ変換に使用する処理実行プログラムのプログラム名（及び、存在する場合、処理オプション）を送信してもよい。
【０１４７】
なお、上記では、データ５０Ｅをデータ５０Ｂに変換する処理実行プログラムのプログラム名を、サーバ１０が、第１移動端末２０Ａまたは第２移動端末２０Ｂに送信する例について説明したが、本実施形態はこれに限定されない。例えば、第１移動端末２０Ａ及び第２移動端末２０Ｂが、データ変換管理テーブル３７Ａ、データ対応テーブル３８Ａ、変換処理テーブル３９Ａから、処理実行プログラムのプログラム名を取得してもよい。サーバ１０は、予め、データ変換管理テーブル３７Ａ、データ対応テーブル３８Ａ、変換処理テーブル３９Ａを、第１移動端末２０Ａ及び第２移動端末２０Ｂに送信することができる。なお、時間Ｔｇ１または時間Ｔｇ２が所定の許容時間を越える場合、サーバ１０は、携帯電話通信を使用して、データ５０Ｂを第１移動端末２０Ａに送信してもよい。
【０１４８】
次に、選択移動端末候補の一例である第２移動端末２０Ｂの候補が複数存在する場合について説明する。データ５０Ｂを所持し、第１移動端末２０Ａに送信可能な位置に存在することが予測される移動端末２０を候補Ａとし、データ５０Ｅを所持し、第１移動端末２０Ｂに送信可能な位置に存在することが予測される移動端末２０を候補Ｂとする。候補Ａまたは候補Ｂである、少なくとも２つの第２移動端末２０Ｂの候補が存在する場合、少なくとも２つの第２移動端末２０Ｂの候補の内、送信が完了するまでの予測時間である送信予測時間がより短い移動端末２０を第２移動端末２０Ｂとして選択する。
【０１４９】
候補Ａは、変換することなくデータ５０Ｂを送信する第３送信を行うため、候補Ａの予測時間はＴ１＋Ｔ２であり、候補Ｂの予測時間は、上記した通り、ｍｉｎ（Ｔｇ１，Ｔｇ２）である。なお、データ５０Ｂ及びデータ５０Ｅを所持し、第１移動端末２０Ａに送信可能な位置に存在することが予測される移動端末２０である候補Ｃも存在し得る。候補Ｃが存在する場合は、候補Ｃの予測時間は、ｍｉｎ（Ｔ１＋Ｔ２，Ｔｇ１，Ｔｇ２）である。候補Ｂまたは候補Ｃが第２移動端末２０Ｂとして選択された場合、候補Ｂまたは候補Ｃは、行い得る送信の内、予測時間が最も短い送信を行う。
【０１５０】
また、選択された第２移動端末２０Ｂの予測時間よりも、サーバ１０が携帯電話通信でデータ５０Ｂを送信する場合の送信完了までの予測時間の方が短い場合、サーバ１０が携帯電話通信でデータ５０Ｂを送信してもよい。また、選択された第２移動端末２０Ｂの予測時間が所定の許容時間を越える場合も、サーバ１０が携帯電話通信でデータ５０Ｂを送信してもよい。
【０１５１】
なお、データ５０Ｅをデータ５０Ｂに変換するように指示を受ける可能性がある第１移動端末２０Ａまたは第２移動端末２０Ｂがデータ変換に使用する処理実行プログラムを有していない場合もあり得る。この場合、サーバ１０は、データを変換する移動端末である第１移動端末２０Ａまたは第２移動端末２０Ｂに処理実行プログラムを送信する。上記したように、少なくとも２つの第２移動端末２０Ｂの候補が存在する場合、サーバ１０から処理実行プログラムを送信する時間を上記予測時間に加えて、予測時間がより短い移動端末２０を第２移動端末２０Ｂとして決定する。
【０１５２】
例えば、図３Ｂのデータ管理テーブル３６Ａは、どの移動端末がどの処理実行プログラムを有しているか、に関する情報を含んでいてもよい。サーバ１０は、データ５０Ｂ及びデータ５０Ｅのデータ名に基づいて、図１８Ａのデータ変換管理テーブル３７Ａから処理ＩＤを取得し、処理ＩＤに基づいて、図１８Ｃの変換処理テーブル３９Ａから処理実行プログラムのプログラム名を取得する。次に、サーバ１０は、プログラム名に基づいて、図１８Ｂのデータ対応テーブル３８ＡからデータＩＤを取得する。次に、サーバ１０は、データＩＤに基づいて、データ管理テーブル３６Ａから、データ５０Ｅをデータ５０Ｂに変換する処理実行プログラムを有している移動端末の端末ＩＤを取得する。
【０１５３】
なお、データ変換管理テーブル３７Ａ、データ対応テーブル３８Ａ、及び変換処理テーブル３９Ａにおいて、データ名を使用して、テーブル相互の関連付けを行う例について説明したが、本実施形態は、これに限定されない。データ名を使用せず、データＩＤだけを使用するようにしてもよい。
【０１５４】
例えば、データ変換管理テーブル３７Ａは、図１８Ｄのデータ変換管理テーブル３７Ｂに例示するように、入力データ及び出力データのデータ名に代えて、入力データ及び出力データのデータＩＤを含んでいてもよい。また、データ対応テーブル３８Ａはデータ名を含まなくてもよいし、変換処理テーブル３９Ａの処理実行プログラムのプログラム名は、処理実行プログラムのデータＩＤと置き替えられてもよい。
【０１５５】
なお、本実施形態では、変換可能データであるデータ５０Ｅの完全性を検査するために、データＩＤまたはデータ名と共にハッシュ値を使用する。ハッシュ値を使用することにより、意図的にまたは意図せずに改ざんされたデータを誤って識別しないようにするためである。しかしながら、本実施形態はこれに限定されず、ハッシュ値を使用せず、データＩＤまたはデータ名によって、移動端末２０がデータ５０Ｅを所持しているか否か検査してもよい。
【０１５６】
また、要求データであるデータ５０Ｂを識別するために、データＩＤのみを使用するのではなく、データＩＤに代えて、または、併せて、データ名及びハッシュ値の少なくとも何れかを使用して、要求データの完全性を検査してデータを識別するようにしてもよい。
【０１５７】
なお、位置管理テーブル３５Ａ、データ管理テーブル３６Ａ、データ変換管理テーブル３７Ａ、データ対応テーブル３８Ａ、及び変換処理テーブル３９Ａの少なくとも２つを組み合わせて１つのテーブルとしてもよい。また、各々を少なくとも２つのテーブルに分割してもよい。また、分割されたテーブルの少なくとも２つを組み合わせて１つのテーブルとしてもよい。
【０１５８】
なお、図５、図８、図１０、図１４、図１７、図２０Ａ及び図２０Ｂのフローチャートは例示であり、各ステップの順序は変更されてもよい。
【０１５９】
なお、本実施形態は、第１〜第５実施形態の何れか、または、第１〜第５実施形態の何れかの組み合わせに適用されてもよい。即ち、第１〜第５実施形態の要求データを変換可能データと置き替えて、第６実施形態と組み合わされてもよい。
【０１６０】
本実施形態では、受信部１１は、異なる複数の通信を各々が実行可能な複数の移動端末の各々から、データ送信要求、及びデータ送信要求を行った移動端末の位置情報を、第１通信及び第２通信の何れかによって受信する。異なる複数の通信は、所定領域内での通信が可能な第１通信、及び、第２通信を含む。制御部１２は、データ送信要求により要求された要求データ及び要求データに変換可能な変換可能データの少なくとも一方を所持し、データ送信要求を送信した要求移動端末との間で第２通信が可能な領域内に存在することが予測される移動端末を選択移動端末として選択する制御を行う。選択は、受信部１１で受信したデータ送信要求、受信した位置情報を蓄積した位置管理情報、及び移動端末が所持するデータを示す情報を登録したデータ管理情報に基づいて、制御される。送信部１３は、選択された選択移動端末から要求移動端末に第２通信によって要求データ及び変換可能データの一方を送信するように指示する送信指示を、第１通信及び第２通信の何れかによって選択移動端末に直接または中継して送信する。
【０１６１】
上記により、本実施形態では、移動端末同士が近距離通信が可能な領域内に存在しない場合でも、第１通信によって受信した複数の移動端末の各々の位置情報を含む位置管理情報及びデータ管理情報に基づいて選択移動端末を選択する。したがって、情報処理装置と要求移動端末との間の通信量を低減することが可能となる。
【０１６２】
また、たとえ、要求移動端末との間で近距離通信が可能な領域内に要求データを所持する移動端末が存在することが予測されない場合であっても、本実施形態では、当該領域内に変換可能データを所持する移動端末が存在することが予測されればよい。したがって、要求移動端末が要求データを取得できない虞をさらに低減することが可能となる。
【０１６３】
以上の実施形態に関し、更に以下の付記を開示する。
【０１６４】
（付記１）
所定領域内での通信が可能な第１通信、及び、第２通信を含む異なる複数の通信を各々が実行可能な複数の移動端末の各々から、データ送信要求、及びデータ送信要求を行った移動端末の位置情報を、前記第１通信及び前記第２通信の何れかによって受信し、
受信した前記データ送信要求、受信した前記位置情報を蓄積した位置管理情報、及び前記移動端末が所持するデータを示す情報を登録したデータ管理情報に基づいて、前記データ送信要求により要求された要求データ、及び、前記要求データに変換可能な変換可能データ、の少なくとも一方を所持し、前記データ送信要求を送信した要求移動端末との間で前記第２通信が可能な領域内に存在することが予測される移動端末を選択移動端末として選択し、
選択された前記選択移動端末から前記要求移動端末に前記第２通信によって前記要求データ及び前記変換可能データの一方を送信するように指示する送信指示を、前記第１通信及び前記第２通信の何れかによって前記選択移動端末に直接または中継して送信する、
通信制御方法。
（付記２）
前記第２通信は、前記第１通信と比較して通信コストが低い、
付記１の通信制御方法。
（付記３）
前記第２通信は、前記第１通信と比較して通信領域が狭い、
付記１または付記２の通信制御方法。
（付記４）
複数の選択移動端末を選択し、
前記複数の選択移動端末の各々から前記要求移動端末に送信するデータを分割した分割データの各々を送信する指示を前記送信指示に加えて送信する、
付記１〜付記３の何れかの通信制御方法。
（付記５）
前記複数の選択移動端末の各々が送信する前記分割データのデータ量の合計が送信するデータのデータ量よりも少ない場合、前記要求移動端末に前記第１通信によって送信するデータの残部分を送信する、
付記４の通信制御方法。
（付記６）
所定時間内に、前記要求移動端末への送信が完了しないことが予測される場合、送信するデータの内送信が完了していない部分を、前記要求移動端末に前記第１通信によって送信する、
付記１〜付記４の何れかの通信制御方法。
（付記７）
前記要求移動端末との間で前記第２通信が可能な領域内に前記要求データ及び前記変換可能データの少なくとも一方を所持する移動端末が存在しないことが予測される場合、前記要求移動端末に前記要求データ及び前記変換可能データの少なくとも一方を所持する移動端末との間で前記第２通信が可能な領域内に移動するように指示する移動指示を送信する、
付記１〜付記５の何れかの通信制御方法。
（付記８）
前記移動指示に了承することを示す応答を、前記要求移動端末から受信した場合、了承することを示す応答を行った要求移動端末の位置管理情報を更新する、
付記７の通信制御方法。
（付記９）
通信を中継する移動端末または通信リソースを共有する移動端末の数が少ない無線通信が可能な移動端末を選択移動端末として優先的に選択する、
付記１〜付記８の何れかの通信制御方法。
（付記１０）
前記選択移動端末が前記変換可能データを所持し、かつ、前記要求データを所持しない移動端末である場合、前記変換可能データを送信し、前記要求移動端末が受信した前記変換可能データを前記要求データに変換する第１送信、または、前記変換可能データを前記要求データに変換して送信する第２送信、である前記第２通信による送信を行う、
付記１〜付記９の何れかの通信制御方法。
（付記１１）
前記第１送信及び前記第２送信の内、前記第２通信による送信が完了するまでの予測時間が短い方の送信を行う、
付記１０の通信制御方法。
（付記１２）
前記要求移動端末との間で前記第２通信が可能な領域内に、
前記変換可能データを所持しかつ前記要求データを所持しない第１選択移動端末候補、前記変換可能データ及び前記要求データの両方を所持する第２選択移動端末候補、前記要求データを所持しかつ前記変換可能データを所持しない第３選択移動端末候補の何れかを含む複数の選択移動端末候補が存在する場合、
前記変換可能データを送信し、前記要求移動端末が受信した前記変換可能データを前記要求データに変換する第１送信、前記変換可能データを前記要求データに変換して送信する第２送信、変換することなく前記要求データを送信する第３送信である前記第２通信による送信の内、前記第２通信による送信が完了するまでの予測時間が最も短い送信を行う選択移動端末候補を前記選択移動端末として選択し、前記予測時間が最も短い送信を行う、
付記１〜付記９の何れかの通信制御方法。
（付記１３）
前記第２通信による送信が完了するまでの予測時間が所定の許容時間を越えることが予測される場合、前記第１通信で前記要求データの送信を行う、
付記１〜付記１２の何れかの通信制御方法。
（付記１４）
前記第２通信による送信が完了するまでの予測時間は、前記変換可能データを送信する場合、前記送信指示が送信されてから前記要求データへの変換が完了するまでの時間であり、前記要求データを送信する場合、前記送信指示が送信されてから前記変換可能データから変換された前記要求データまたは変換されない前記要求データの送信が完了するまでの時間である、
付記１〜付記１３の何れかの通信制御方法。
（付記１５）
所定領域内での通信が可能な第１通信、及び、第２通信を含む異なる複数の通信を各々が実行可能な複数の移動端末の各々から、データ送信要求、及びデータ送信要求を行った移動端末の位置情報を、前記第１通信及び前記第２通信の何れかによって受信し、
受信した前記データ送信要求、受信した前記位置情報を蓄積した位置管理情報、及び前記移動端末が所持するデータを示す情報を登録したデータ管理情報に基づいて、前記データ送信要求により要求された要求データ、及び、前記要求データに変換可能な変換可能データ、の少なくとも一方を所持し、前記データ送信要求を送信した要求移動端末との間で前記第２通信が可能な領域内に存在することが予測される移動端末を選択移動端末として選択し、
選択された前記選択移動端末から前記要求移動端末に前記第２通信によって前記要求データ及び前記変換可能データの一方を送信するように指示する送信指示を、前記第１通信及び前記第２通信の何れかによって前記選択移動端末に直接または中継して送信する、
通信制御処理をプロセッサに実行させるためのプログラム。
（付記１６）
所定領域内での通信が可能な第１通信、及び、第２通信を含む異なる複数の通信を各々が実行可能な複数の移動端末の各々から、データ送信要求、及びデータ送信要求を行った移動端末の位置情報を、前記第１通信及び前記第２通信の何れかによって受信する受信部と、
前記受信部で受信した前記データ送信要求、受信した前記位置情報を蓄積した位置管理情報、及び前記移動端末が所持するデータを示す情報を登録したデータ管理情報に基づいて、前記データ送信要求により要求された要求データ、及び、前記要求データに変換可能な変換可能データ、の少なくとも一方を所持し、前記データ送信要求を送信した要求移動端末との間で前記第２通信が可能な領域内に存在することが予測される移動端末を選択移動端末として選択する制御を行う制御部と、
選択された前記選択移動端末から前記要求移動端末に前記第２通信によって前記要求データ及び前記変換可能データの一方を送信するように指示する送信指示を、前記第１通信及び前記第２通信の何れかによって前記選択移動端末に直接または中継して送信する送信部と、
を含む情報処理装置。
【符号の説明】
【０１６５】
１０  サーバ
１１  受信部
１２  制御部
１３  送信部
２０  移動端末
２１  受信部
２２  制御部
２３  送信部
３１  ＣＰＵ
３２  一次記憶部
３３  二次記憶部
３９  通信部
５１  ＣＰＵ
５２  一次記憶部
５３  二次記憶部
５８  遠距離通信部
６１  近距離通信部
【図１Ａ】
2017139750.tif 000004
【図１Ｂ】
2017139750.tif 000005
【図２Ａ】
2017139750.tif 000006
【図２Ｂ】
2017139750.tif 000007
【図３Ａ】
2017139750.tif 000008
【図３Ｂ】
2017139750.tif 000009
【図４】
2017139750.tif 000010
【図５】
2017139750.tif 000011
【図６】
2017139750.tif 000012
【図７】
2017139750.tif 000013
【図８】
2017139750.tif 000014
【図９】
2017139750.tif 000015
【図１０】
2017139750.tif 000016
【図１１】
2017139750.tif 000017
【図１２】
2017139750.tif 000018
【図１３】
2017139750.tif 000019
【図１４】
2017139750.tif 000020
【図１５】
2017139750.tif 000021
【図１６】
2017139750.tif 000022
【図１７】
2017139750.tif 000023
【図１８Ａ】
2017139750.tif 000024
【図１８Ｂ】
2017139750.tif 000025
【図１８Ｃ】
2017139750.tif 000026
【図１８Ｄ】
2017139750.tif 000027
【図１９】
2017139750.tif 000028
【図２０Ａ】
2017139750.tif 000029
【図２０Ｂ】
2017139750.tif 000030
【図２１Ａ】
2017139750.tif 000031
【図２１Ｂ】
2017139750.tif 000032
【図２１Ｃ】
2017139750.tif 000033