(57)【特許請求の範囲】
【請求項１】
コンピュータに、
アクセスポイントを介して接続される複数の端末のうちの第１の端末からのコンテンツの配信要求を受け付けたことに応じて、前記アクセスポイントを介してコンテンツを配信中の端末数が閾値以上であるか否かを判断し、
前記端末数が前記閾値以上の場合、前記コンテンツの配信状況を記憶する記憶部を参照して、前記配信要求を受け付けたコンテンツの配信が完了した端末の中から、前記複数の端末それぞれの位置情報を記憶する記憶部を参照して、前記第１の端末の無線接続先となる第２の端末を決定し、
決定した前記第２の端末から前記第１の端末への前記配信要求を受け付けたコンテンツの配信を指示する、
処理を実行させることを特徴とする配信制御プログラム。
【請求項２】
前記位置情報は、前記複数の端末それぞれに対応する座席の位置を示しており、
前記決定する処理は、
前記配信要求を受け付けたコンテンツの配信が完了した端末のうち、前記第１の端末に対応する座席に隣接する他の座席に対応する端末を、前記第２の端末に決定する、ことを特徴とする請求項１に記載の配信制御プログラム。
【請求項３】
前記決定する処理は、
前記配信要求を受け付けたコンテンツの配信が完了し、かつ、無線接続中ではない端末のうち、前記第１の端末に対応する座席に隣接する他の座席に対応する端末を、前記第２の端末に決定する、ことを特徴とする請求項２に記載の配信制御プログラム。
【請求項４】
前記記憶部は、前記複数の端末それぞれに対応する座席の空席状況を記憶しており、
前記決定する処理は、
前記他の座席が空席の場合には、前記他の座席に隣接する別の座席に対応する端末を、前記第２の端末に決定することを特徴とする請求項２または３に記載の配信制御プログラム。
【請求項５】
前記決定する処理は、
前記配信要求を受け付けたコンテンツの配信が完了し、かつ、無線接続中ではない端末のうち、当該端末と前記第１の端末との間に無線接続中の他端末が存在しない端末を、前記第２の端末に決定する、処理を実行させることを特徴とする請求項１〜４のいずれか一つに記載の配信制御プログラム。
【請求項６】
前記コンピュータに、
前記端末数が前記閾値未満の場合には、前記アクセスポイントを介して、前記第１の端末に対して前記コンテンツを配信する、処理を実行させることを特徴とする請求項１〜５のいずれか一つに記載の配信制御プログラム。
【請求項７】
アクセスポイントを介して接続される複数の端末のうちの第１の端末からのコンテンツの配信要求を受け付けたことに応じて、前記アクセスポイントを介してコンテンツを配信中の端末数が閾値以上であるか否かを判断し、
前記端末数が前記閾値以上の場合、前記コンテンツの配信状況を記憶する記憶部を参照して、前記配信要求を受け付けたコンテンツの配信が完了した端末の中から、前記複数の端末それぞれの位置情報を記憶する記憶部を参照して、前記第１の端末の無線接続先となる第２の端末を決定し、
決定した前記第２の端末から前記第１の端末への前記配信要求を受け付けたコンテンツの配信を指示する、
制御部を有することを特徴とする情報処理装置。
【請求項８】
コンピュータが、
アクセスポイントを介して接続される複数の端末のうちの第１の端末からのコンテンツの配信要求を受け付けたことに応じて、前記アクセスポイントを介してコンテンツを配信中の端末数が閾値以上であるか否かを判断し、
前記端末数が前記閾値以上の場合、前記コンテンツの配信状況を記憶する記憶部を参照して、前記配信要求を受け付けたコンテンツの配信が完了した端末の中から、前記複数の端末それぞれの位置情報を記憶する記憶部を参照して、前記第１の端末の無線接続先となる第２の端末を決定し、
決定した前記第２の端末から前記第１の端末への前記配信要求を受け付けたコンテンツの配信を指示する、
処理を実行することを特徴とする配信制御方法。
【請求項９】
コンピュータに、
授業単位に特定される複数の端末のうちの第１の端末からのコンテンツの配信要求を受け付けたことに応じて、前記複数の端末が接続するアクセスポイントを介してコンテンツを配信中の端末数が閾値以上であるか否かを判断し、
前記端末数が前記閾値以上の場合、コンテンツの配信状況を記憶する記憶部を参照して、前記配信要求を受け付けたコンテンツの配信が完了した端末を特定し、特定した端末の中から、前記複数の端末それぞれの位置情報を記憶する記憶部を参照して、前記第１の端末の無線接続先となる第２の端末を決定し、
決定した前記第２の端末から前記第１の端末への前記配信要求を受け付けたコンテンツの配信を指示する、
処理を実行させることを特徴とする配信制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、配信制御プログラム、情報処理装置、および配信制御方法に関する。
【背景技術】
【０００２】
近年、小中学校の教育現場では、タブレット型ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）を生徒に配布して、授業でタブレット型ＰＣを活用することが行われ始めている。例えば、これまで教室前の大型ディスプレイに映していた電子学習教材を、生徒それぞれのタブレットＰＣにダウンロードさせて手元で見られるようになってきている。また、これまで紙媒体を配布して実施していたテスト問題を、生徒それぞれのタブレットＰＣにダウンロードさせて解答できるようになってきている。
【０００３】
先行技術としては、例えば、配信サーバが、コンテンツの配信を受け、かつ、次段で他の端末装置と接続する端末装置に対して、自装置で保有しているコンテンツの他の端末装置への配信を指示するものがある。また、クライアント端末からの講義のコンテンツの取得要求を受け付けると、当該取得要求を受け付けた時刻と、ユーザの講義の出席状況とに基づき、クライアント端末に対するコンテンツの配信を制御する技術がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−１６９０６号公報
【特許文献２】特開２０１４−１１５９３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来技術では、複数の端末へのコンテンツの配信にかかる時間が増大してしまう場合がある。例えば、教室内の生徒それぞれのタブレットＰＣへの電子学習教材やテスト問題などの配信にかかる時間が増大すると、授業開始や帰宅時間の遅れを招いてしまう。
【０００６】
一つの側面では、本発明は、複数の端末にコンテンツを効率的に配信することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一態様によれば、複数の端末のうちの第１の端末からのコンテンツの配信要求を受け付けたことに応じて、前記複数の端末が無線接続可能なアクセスポイントを介して前記コンテンツを配信中の端末数が閾値以上であるか否かを判断し、前記端末数が前記閾値以上の場合、前記複数の端末それぞれの位置情報と前記コンテンツの配信状況とを記憶する記憶部を参照して、前記コンテンツの配信が完了した端末の中から、前記第１の端末の無線接続先となる第２の端末を決定し、決定した前記第２の端末から前記第１の端末への前記コンテンツの配信を指示する配信制御プログラム、情報処理装置、および配信制御方法が提案される。
【０００８】
また、本発明の一態様によれば、授業単位に特定される複数の端末のうちの第１の端末からのコンテンツの配信要求を受け付けたことに応じて、前記複数の端末が接続するアクセスポイントを介してコンテンツを配信中の端末数が閾値以上であるか否かを判断し、前記端末数が前記閾値以上の場合、コンテンツの配信状況を記憶する記憶部を参照して、前記配信要求を受け付けたコンテンツの配信が完了した端末を特定し、特定した端末の中から、前記複数の端末それぞれの位置情報を記憶する記憶部を参照して、前記第１の端末の無線接続先となる第２の端末を決定し、決定した前記第２の端末から前記第１の端末への前記配信要求を受け付けたコンテンツの配信を指示する配信制御プログラムが提案される。
【発明の効果】
【０００９】
本発明の一側面によれば、複数の端末にコンテンツを効率的に配信することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施の形態にかかる配信制御方法の一実施例を示す説明図である。
【図２】図２は、情報配信システム２００のシステム構成例を示す説明図である。
【図３】図３は、情報処理装置１００のハードウェア構成例を示すブロック図である。
【図４】図４は、端末Ｔｉのハードウェア構成例を示すブロック図である。
【図５】図５は、生徒ＤＢ２２０の記憶内容の一例を示す説明図である。
【図６】図６は、コンテンツＤＢ２３０の記憶内容の一例を示す説明図である。
【図７】図７は、ダウンロード状況ＤＢ２４０の記憶内容の一例を示す説明図である。
【図８】図８は、無線ＬＡＮ環境ＤＢ２５０の記憶内容の一例を示す説明図である。
【図９】図９は、情報処理装置１００の機能的構成例を示すブロック図である。
【図１０】図１０は、コンテンツＣの第１のダウンロード例を示す説明図（その１）である。
【図１１】図１１は、コンテンツＣの第１のダウンロード例を示す説明図（その２）である。
【図１２】図１２は、コンテンツＣの第１のダウンロード例を示す説明図（その３）である。
【図１３】図１３は、ダウンロード状況ＤＢ２４０の更新例を示す説明図（その１）である。
【図１４】図１４は、ダウンロード状況ＤＢ２４０の更新例を示す説明図（その２）である。
【図１５】図１５は、コンテンツＣの第２のダウンロード例を示す説明図（その１）である。
【図１６】図１６は、コンテンツＣの第２のダウンロード例を示す説明図（その２）である。
【図１７】図１７は、コンテンツＣの第２のダウンロード例を示す説明図（その３）である。
【図１８】図１８は、情報処理装置１００の配信制御処理手順の一例を示すフローチャートである。
【図１９】図１９は、第１の接続先決定処理の具体的処理手順の一例を示すフローチャートである。
【図２０】図２０は、第２の接続先決定処理の具体的処理手順の一例を示すフローチャートである。
【図２１】図２１は、端末Ｔｉのダウンロード処理手順の一例を示すフローチャートである。
【図２２】図２２は、端末Ｔｉの配信処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下に図面を参照して、本発明にかかる配信制御プログラム、情報処理装置、および配信制御方法の実施の形態を詳細に説明する。
【００１２】
（実施の形態）
図１は、実施の形態にかかる配信制御方法の一実施例を示す説明図である。図１において、情報処理装置１００は、コンテンツの配信を制御するコンピュータである。コンテンツは、例えば、文書、音声、写真、動画、図、ソフトウェアなどを含むデジタルデータである。
【００１３】
ここで、学校の教育現場では、タブレット型ＰＣを生徒に配布し、授業や自宅学習にタブレット型ＰＣを活用することが行われている。学校の教室において、タブレット型ＰＣを用いた授業を行う場合、教師や生徒は、教室内に設置されるアクセスポイントを用いてインターネット通信を行う。
【００１４】
例えば、教師から出された課題について生徒が自身のタブレット型ＰＣから解答を送信したり、授業の教材や宿題のデータを生徒が自身のタブレット型ＰＣにダウンロードしたりすることがある。ところが、授業の教材や宿題などの電子学習教材のダウンロードは、教師の指示より行われることが多い。このため、生徒たちが一斉にサーバへアクセスして一時的に通信が混雑してしまうことがある。
【００１５】
また、電子学習教材は、動画を含む教材や長期休暇に向けた宿題などの大容量データである場合がある。このような場合、１クラス４０人前後の生徒が一斉にアクセスポイントを使用して電子学習教材をダウンロードしようとすると、ダウンロードにかかる時間が増大するだけでなく、ダウンロードの失敗が発生して、授業開始や帰宅時間の遅れを招いてしまう。
【００１６】
また、ここでは学校の教育現場を例に挙げて説明したが、何らかの目的で集まった多くの人が一斉にコンテンツのダウンロードを開始するような状況であれば、同様の問題が発生しうる。例えば、集会、会議、講演会において参加者が大容量の資料を一斉にダウンロードする場合も同様の問題が発生しうる。
【００１７】
そこで、本実施の形態では、複数の端末に対してコンテンツを配信する際に、アクセスポイント経由でコンテンツを配信するだけでなく、端末間のアドホック接続を利用してコンテンツを効率的に配信する配信制御方法について説明する。以下、情報処理装置１００の処理例について説明する。
【００１８】
図１の例では、教室内に設置されたアクセスポイントＡＰを介して、授業の教材や宿題などのコンテンツを情報処理装置１００から各端末１０１〜１０９にダウンロードする場合を想定する。アクセスポイントＡＰは、端末１０１〜１０９が無線接続可能なアクセスポイントである。端末１０１〜１０９は、例えば、授業単位に特定される。また、各端末１０１〜１０９は、例えば、生徒が使用するタブレット型ＰＣである。また、図１中、各端末１０１〜１０９の位置は、各端末１０１〜１０９を使用する生徒の座席の位置に対応している。
【００１９】
（１）情報処理装置１００は、端末１０１〜１０９のうちの第１の端末からのコンテンツの配信要求を受け付ける。図１の例では、情報処理装置１００は、アクセスポイントＡＰを介して、端末１０１からのコンテンツの配信要求を受け付けた場合を想定する。
【００２０】
（２）情報処理装置１００は、第１の端末からのコンテンツの配信要求を受け付けたことに応じて、アクセスポイントＡＰを介してコンテンツを配信中の端末数Ｎが閾値Ｎmax以上であるか否かを判断する。ここで、閾値Ｎmaxは、任意に設定可能であり、例えば、アクセスポイントＡＰを介して最大速度でコンテンツをダウンロード可能な同時接続数の上限が設定される。
【００２１】
図１の例では、端末１０４〜１０６がアクセスポイントＡＰを介してコンテンツをダウンロード中である場合を想定する。また、閾値Ｎmaxが「３」に設定されている場合を想定する。この場合、情報処理装置１００は、アクセスポイントＡＰを介してコンテンツを配信中の端末数Ｎ「３」が閾値Ｎmax以上であると判断する。
【００２２】
（３）情報処理装置１００は、端末数Ｎが閾値Ｎmax以上の場合、記憶部１１０を参照して、コンテンツの配信が完了した端末の中から、第１の端末の無線接続先となる第２の端末を決定する。ここで、記憶部１１０は、端末１０１〜１０９それぞれの位置情報とコンテンツの配信状況とを記憶する。位置情報は、例えば、端末１０１〜１０９それぞれに対応する座席の位置を示す。
【００２３】
具体的には、例えば、情報処理装置１００は、記憶部１１０を参照して、コンテンツの配信が完了した端末のうち、第１の端末に対応する座席に隣接する他の座席に対応する端末を、第２の端末に決定することにしてもよい。すなわち、情報処理装置１００は、第１の端末から距離的に近い端末を、第２の端末に決定することにしてもよい。
【００２４】
図１の例では、端末１０１〜１０９のうち、端末１０２，１０７，１０９へのコンテンツの配信が完了している場合を想定する。この場合、情報処理装置１００は、例えば、コンテンツの配信が完了した端末１０２，１０７，１０９のうち、第１の端末１０１に対応する座席に隣接する他の座席に対応する端末１０２を、第２の端末に決定する。
【００２５】
（４）情報処理装置１００は、決定した第２の端末から第１の端末へのコンテンツの配信を指示する。図１の例では、情報処理装置１００は、例えば、第１および第２の端末１０１，１０２の双方に対して、第２の端末１０２から第１の端末１０１へのコンテンツの配信指示を送信する。この結果、第１の端末１０１と第２の端末１０２とがアドホック接続されて、第２の端末１０２から第１の端末１０１へコンテンツが配信される。
【００２６】
このように、情報処理装置１００によれば、アクセスポイントＡＰを介してコンテンツを配信中の端末数Ｎが閾値Ｎmaxに達したときは、端末間のアドホック接続を利用して、コンテンツの配信が完了した第２の端末から第１の端末へコンテンツを配信させることができる。これにより、端末１０１〜１０９に対してコンテンツを効率的に配信することができる。
【００２７】
図１の例では、情報処理装置１００の代わりに、コンテンツの配信が完了した第２の端末１０２から第１の端末１０１へコンテンツを配信させることができる。これにより、アクセスポイント経由での通信が混雑して、端末１０１〜１０９へのコンテンツの配信にかかる時間が増大するのを防ぐことができる。このため、例えば、動画を含む教材や長期休暇に向けた宿題などの大容量の電子学習教材を生徒に配信する場合に、全端末１０１〜１０９へのダウンロードを短時間で行うことが可能となり、授業開始や帰宅時間の遅れを回避することができる。
【００２８】
（情報配信システム２００のシステム構成例）
つぎに、実施の形態にかかる情報配信システム２００について説明する。
【００２９】
図２は、情報配信システム２００のシステム構成例を示す説明図である。図２において、情報配信システム２００は、情報処理装置１００と、アクセスポイントＡＰ１〜ＡＰｍ（ｍ：１以上の自然数）と、端末Ｔ１〜Ｔｎ（ｎ：２以上の自然数）と、を含む。情報配信システム２００において、情報処理装置１００およびアクセスポイントＡＰ１〜ＡＰｍは、有線または無線のネットワーク２１０を介して接続される。ネットワーク２１０は、例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどである。
【００３０】
ここで、情報処理装置１００は、生徒ＤＢ（Ｄａｔａｂａｓｅ）２２０、コンテンツＤＢ２３０、ダウンロード状況ＤＢ２４０および無線ＬＡＮ環境ＤＢ２５０を有し、端末Ｔ１〜Ｔｎへのコンテンツの配信を制御する。情報処理装置１００は、例えば、サーバである。なお、各種ＤＢ２２０，２３０，２４０，２５０の記憶内容については、図５〜図８を用いて後述する。
【００３１】
アクセスポイントＡＰ１〜ＡＰｍは、端末Ｔ１〜Ｔｎと無線接続可能な無線ＬＡＮのアクセスポイントである。例えば、アクセスポイントＡＰ１〜ＡＰｍは、学校の教室内に設置され、教室内に存在する端末Ｔ１〜Ｔｎと無線接続可能である。
【００３２】
端末Ｔ１〜Ｔｎは、生徒が授業や自宅学習に使用するコンピュータであり、例えば、タブレット型ＰＣ、ノートＰＣ、スマートフォンなどである。また、各端末Ｔ１〜Ｔｎは、各アクセスポイントＡＰ１〜ＡＰｍあるいは他の端末との間で無線ＬＡＮによる近距離無線通信が可能である。図１に示した端末１０１〜１０９は、例えば、端末Ｔ１〜Ｔｎに対応する。
【００３３】
以下の説明では、端末Ｔ１〜Ｔｎのうちの任意の端末を「端末Ｔｉ」と表記する場合がある（ｉ＝１，２，…，ｎ）。また、端末Ｔ１〜Ｔｎのうちの端末Ｔｉとは異なる他の端末を「他の端末Ｔｊ」と表記する場合がある（ｊ≠ｉ、ｊ＝１，２，…，ｎ）。また、アクセスポイントＡＰ１〜ＡＰｍのうちの任意のアクセスポイントを「アクセスポイントＡＰｋ」と表記する場合がある（ｋ＝１，２，…，ｍ）。
【００３４】
（情報処理装置１００のハードウェア構成例）
図３は、情報処理装置１００のハードウェア構成例を示すブロック図である。図３において、情報処理装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３０１と、メモリ３０２と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）３０３と、ディスクドライブ３０４と、ディスク３０５と、を有する。また、各構成部は、バス３００によってそれぞれ接続される。
【００３５】
ここで、ＣＰＵ３０１は、情報処理装置１００の全体の制御を司る。メモリ３０２は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）およびフラッシュＲＯＭなどを有する。具体的には、例えば、フラッシュＲＯＭやＲＯＭが各種プログラムを記憶し、ＲＡＭがＣＰＵ３０１のワークエリアとして使用される。メモリ３０２に記憶されるプログラムは、ＣＰＵ３０１にロードされることで、コーディングされている処理をＣＰＵ３０１に実行させる。
【００３６】
Ｉ／Ｆ３０３は、通信回線を通じてネットワーク２１０に接続され、ネットワーク２１０を介して外部のコンピュータ（例えば、図２に示したアクセスポイントＡＰ１〜ＡＰｍ、端末Ｔ１〜Ｔｎ）に接続される。そして、Ｉ／Ｆ３０３は、ネットワーク２１０と装置内部とのインターフェースを司り、外部のコンピュータからのデータの入出力を制御する。Ｉ／Ｆ３０３には、例えば、モデムやＬＡＮアダプタなどを採用することができる。
【００３７】
ディスクドライブ３０４は、ＣＰＵ３０１の制御に従ってディスク３０５に対するデータのリード／ライトを制御する。ディスク３０５は、ディスクドライブ３０４の制御で書き込まれたデータを記憶する。ディスク３０５としては、例えば、磁気ディスク、光ディスクなどが挙げられる。
【００３８】
なお、情報処理装置１００は、上述した構成部のほかに、例えば、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、キーボード、マウス、ディスプレイ等を有することにしてもよい。また、情報処理装置１００は、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリ等の補助記憶装置を接続可能であってもよい。また、アクセスポイントＡＰ１〜ＡＰｍについても情報処理装置１００と同様のハードウェア構成により実現することができる。
【００３９】
（端末Ｔｉのハードウェア構成例）
図４は、端末Ｔｉのハードウェア構成例を示すブロック図である。図４において、端末Ｔｉは、ＣＰＵ４０１と、メモリ４０２と、Ｉ／Ｆ４０３と、ディスプレイ４０４と、入力装置４０５と、を有する。また、各構成部はバス４００によってそれぞれ接続される。
【００４０】
ここで、ＣＰＵ４０１は、端末Ｔｉの全体の制御を司る。メモリ４０２は、例えば、ＲＯＭ、ＲＡＭおよびフラッシュＲＯＭなどを有する。具体的には、例えば、フラッシュＲＯＭやＲＯＭが各種プログラムを記憶し、ＲＡＭがＣＰＵ４０１のワークエリアとして使用される。メモリ４０２に記憶されるプログラムは、ＣＰＵ４０１にロードされることで、コーディングされている処理をＣＰＵ４０１に実行させる。
【００４１】
Ｉ／Ｆ４０３は、無線通信回路とアンテナを有し、アクセスポイントＡＰｋを介してネットワーク２１０に接続され、ネットワーク２１０を介して他のコンピュータ（例えば、情報処理装置１００）に接続される。そして、Ｉ／Ｆ４０３は、ネットワーク２１０と自装置内部とのインターフェースを司り、他のコンピュータからのデータの入出力を制御する。
【００４２】
ディスプレイ４０４は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。ディスプレイ４０４は、例えば、液晶ディスプレイや有機ＥＬ（Ｅｌｅｃｔｒｏｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイなどを採用することができる。
【００４３】
入力装置４０５は、文字、数字、各種指示などの入力のためのキーを有し、データの入力を行う。入力装置４０５は、キーボードやマウスなどであってもよく、また、タッチパネル式の入力パッドやテンキーなどであってもよい。
【００４４】
なお、端末Ｔｉは、上述した構成部のほかに、例えば、ディスクドライブ、ディスク、ＳＳＤ等を有することにしてもよい。また、端末Ｔｉは、ＵＳＢメモリ等の補助記憶装置を接続可能であってもよい。
【００４５】
（各種ＤＢ２２０，２３０，２４０，２５０の記憶内容）
つぎに、図５〜図８を用いて、情報処理装置１００が有する各種ＤＢ２２０，２３０，２４０，２５０の記憶内容について説明する。各種ＤＢ２２０，２３０，２４０，２５０の記憶内容は、例えば、図３に示したメモリ３０２、ディスク３０５等の記憶装置により実現される。
【００４６】
図５は、生徒ＤＢ２２０の記憶内容の一例を示す説明図である。図５において、生徒ＤＢ２２０は、生徒ＩＤ、氏名、座席位置、端末ＩＤおよび出欠状況のフィールドを有し、各フィールドに情報を設定することで、生徒情報（例えば、生徒情報５００−１〜５００−３）をレコードとして記憶する。
【００４７】
ここで、生徒ＩＤ（ｉｄｅｎｔｉｆｉｃａｔｉｏｎ）は、生徒を一意に識別する識別子である。氏名は、生徒の氏名である。座席位置は、生徒の座席の位置を示す。ここでは、座席位置は、ｘ軸とｙ軸とからなる平面直交座標系における１点（教室内の１点）を特定する座標である。端末ＩＤは、生徒が使用する端末Ｔｉを一意に識別する識別子である。出欠状況は、生徒の出欠状況である。出欠状況には、出席または欠席が設定される。
【００４８】
例えば、生徒情報５００−１は、生徒Ｓ１の氏名「山田一郎」、座席位置「７，１」、端末ＩＤ「Ｔ１」および出欠状況「出席」を示す。
【００４９】
図６は、コンテンツＤＢ２３０の記憶内容の一例を示す説明図である。図６において、コンテンツＤＢ２３０は、コンテンツＩＤ、コンテンツ名、教科名、単元名およびサイズのフィールドを有し、各フィールドに情報を設定することで、コンテンツ情報（例えば、コンテンツ情報６００−１〜６００−４）をレコードとして記憶する。
【００５０】
ここで、コンテンツＩＤは、配信対象となるコンテンツ（以下、「コンテンツＣ」と称する）を一意に識別する識別子である。コンテンツ名は、コンテンツＣの名称である。教科名は、コンテンツＣを用いる教科の名称である。単元名は、コンテンツＣに関連する単元の名称である。サイズは、コンテンツＣのデータサイズである。
【００５１】
例えば、コンテンツ情報６００−１は、コンテンツＣ１のコンテンツ名「面積の求め方を工夫しよう」、教科名「算数」、単元名「単元３（図形）」およびサイズ「３．５ＭＢ」を示す。なお、図示は省略するが、コンテンツＤＢ２３０には、コンテンツＩＤと対応付けて、コンテンツ本体が記憶されている。
【００５２】
図７は、ダウンロード状況ＤＢ２４０の記憶内容の一例を示す説明図である。図７において、ダウンロード状況ＤＢ２４０は、端末ＩＤ、コンテンツＩＤ、ダウンロード状況および接続先ＩＤのフィールドを有し、各フィールドに情報を設定することで、ダウンロード状況情報（例えば、ダウンロード状況情報７００−１〜７００−３）をレコードとして記憶する。
【００５３】
ここで、端末ＩＤは、端末Ｔｉを一意に識別する識別子である。コンテンツＩＤは、コンテンツＣを一意に識別する識別子である。ダウンロード状況は、端末ＴｉにおけるコンテンツＣのダウンロード状況を示す。ここでは、ダウンロード状況は、初期状態では「空」であり、コンテンツＣのダウンロードが完了すると「完了」が設定される。
【００５４】
接続先ＩＤは、端末Ｔｉと無線接続中のアクセスポイントＡＰｋまたは他の端末Ｔｊを一意に識別する識別子である。例えば、ダウンロード状況情報７００−１は、端末Ｔ１がアクセスポイントＡＰ１を介してコンテンツＣ２をダウンロード中であることを示す。
【００５５】
図８は、無線ＬＡＮ環境ＤＢ２５０の記憶内容の一例を示す説明図である。図８において、無線ＬＡＮ環境ＤＢ２５０は、アクセスポイントＩＤ、同時接続数上限および接続中端末数のフィールドを有し、各フィールドに情報を設定することで、無線ＬＡＮ環境情報８００−１，８００−２をレコードとして記憶する。
【００５６】
ここで、アクセスポイントＩＤは、アクセスポイントＡＰｋを一意に識別する識別子である。同時接続数上限は、アクセスポイントＡＰｋを介して最大速度（最大の通信速度）でコンテンツＣをダウンロード可能な端末Ｔｉの同時接続数の上限である。接続中端末数は、アクセスポイントＡＰｋを介してコンテンツＣをダウンロード中の端末数である。
【００５７】
例えば、無線ＬＡＮ環境情報８００−１は、アクセスポイントＡＰ１の同時接続数上限「４」および接続中端末数「４」を示す。
【００５８】
（情報処理装置１００の機能的構成例）
図９は、情報処理装置１００の機能的構成例を示すブロック図である。図９において、情報処理装置１００は、受付部９０１と、判断部９０２と、決定部９０３と、指示部９０４と、配信部９０５と、を含む構成である。受付部９０１〜配信部９０５は制御部となる機能であり、具体的には、例えば、図３に示したメモリ３０２、ディスク３０５などの記憶装置に記憶されたプログラムをＣＰＵ３０１に実行させることにより、または、Ｉ／Ｆ３０３により、その機能を実現する。各機能部の処理結果は、例えば、メモリ３０２、ディスク３０５などの記憶装置に記憶される。
【００５９】
受付部９０１は、端末Ｔ１〜Ｔｎのうちのいずれかの端末Ｔｉ（以下、「第１の端末Ｔｉ」と称する）からのコンテンツＣの配信要求を受け付ける。ここで、コンテンツＣは、配信対象となるコンテンツであり、例えば、教師により指定される授業の教材や宿題などの電子学習教材である。また、コンテンツＣの配信要求は、第１の端末ＴｉへのコンテンツＣのダウンロードを要求するものである。
【００６０】
具体的には、例えば、受付部９０１は、アクセスポイントＡＰｋを介して、第１の端末ＴｉからコンテンツＣの配信要求を受信することにより、コンテンツＣの配信要求を受け付ける。コンテンツＣの配信要求には、例えば、第１の端末Ｔｉの端末ＩＤ、コンテンツＣのコンテンツＩＤ、および、当該配信要求を中継したアクセスポイントＡＰｋのアクセスポイントＩＤが含まれる。
【００６１】
判断部９０２は、アクセスポイントＡＰｋを介してコンテンツＣを配信中の端末数Ｎが閾値Ｎmax以上であるか否かを判断する。閾値Ｎmaxは、例えば、アクセスポイントＡＰｋを介して最大速度（最大の通信速度）でコンテンツＣをダウンロード可能な同時接続数の上限に相当する。
【００６２】
具体的には、例えば、まず、判断部９０２は、図８に示した無線ＬＡＮ環境ＤＢ２５０を参照して、コンテンツＣの配信要求に含まれるアクセスポイントＩＤに対応する同時接続数上限および接続中端末数を特定する。同時接続数上限は閾値Ｎmaxに相当し、接続中端末数は端末数Ｎに相当する。
【００６３】
そして、判断部９０２は、特定した接続中端末数が同時接続数上限以上であるか否かを判断する。アクセスポイントＡＰｋの接続中端末数が同時接続数上限となることは、アクセスポイントＡＰｋへの接続数がこれ以上増えると、通信が混雑して最大速度でのコンテンツＣのダウンロードが行えないことを意味する。
【００６４】
以下の説明では、アクセスポイントＡＰｋの同時接続数上限を「同時接続数上限Ｎmax」と表記し、接続中端末数を「接続中端末数Ｎ」と表記する場合がある。
【００６５】
決定部９０３は、接続中端末数Ｎが同時接続数上限Ｎmax以上の場合、端末Ｔ１〜Ｔｎそれぞれの位置情報とコンテンツＣの配信状況とに基づいて、第１の端末Ｔｉの無線接続先となる他の端末Ｔｊ（以下、「第２の端末Ｔｊ」と称する）を決定する。具体的には、例えば、決定部９０３は、コンテンツＣの配信が完了した端末Ｔのうち、第１の端末Ｔｉに対応する座席に隣接する他の座席に対応する端末Ｔを、第２の端末Ｔｊに決定することにしてもよい。
【００６６】
より詳細に説明すると、例えば、決定部９０３は、図５に示した生徒ＤＢ２２０を参照して、第１の端末Ｔｉに対応する座席の座席位置を特定する。また、決定部９０３は、生徒ＤＢ２２０を参照して、特定した座席位置に基づいて、第１の端末Ｔｉに対応する座席に隣接する他の座席に対応する端末Ｔを特定する。隣接する他の座席は、例えば、第１の端末Ｔｉに対応する座席の前後の座席、左右の座席、左右斜め前の座席、および左右斜め後ろの座席を含む。
【００６７】
つぎに、決定部９０３は、例えば、特定した隣接する他の座席に対応する端末Ｔのうち、コンテンツＣの配信が完了し、かつ、無線接続中ではない端末Ｔを抽出する。ここで、無線接続中とは、端末間あるいは端末／アクセスポイント間で無線接続中であることに対応する。
【００６８】
すなわち、決定部９０３は、例えば、図７に示したダウンロード状況ＤＢ２４０を参照して、隣接する他の座席に対応する端末Ｔのうち、ダウンロード状況が「完了」であり、かつ、接続先ＩＤが未設定の端末Ｔを抽出する。そして、決定部９０３は、抽出した端末Ｔを、第２の端末Ｔｊに決定することにしてもよい。
【００６９】
これにより、第１の端末Ｔｉから距離的に近い端末Ｔを第２の端末Ｔｊに決定することができる。なお、抽出された端末Ｔが複数存在する場合には、決定部９０３は、例えば、予め決められた選択ルールに従って、抽出した複数の端末Ｔのいずれかの端末Ｔを選択して、選択した端末Ｔを第２の端末Ｔｊに決定することにしてもよい。
【００７０】
また、決定部９０３は、第１の端末Ｔｉに対応する座席に隣接する他の座席が空席の場合には、他の座席に隣接する別の座席に対応する端末Ｔを、第２の端末Ｔｊに決定することにしてもよい。具体的には、例えば、決定部９０３は、生徒ＤＢ２２０を参照して、隣接する他の座席に対応する出欠状況が「欠席」であれば、他の座席が空席であると判断する。
【００７１】
他の座席に隣接する別の座席は、例えば、他の座席の前後の座席、左右の座席、左右斜め前の座席、および左右斜め後ろの座席を含むことにしてもよい（ただし、第１の端末Ｔｉに対応する座席は除く。）。また、他の座席に隣接する別の座席は、例えば、第１の端末Ｔｉに対応する座席から見て、隣接する他の座席の一つ先の座席のみ含むことにしてもよい。例えば、隣接する他の座席が第１の端末Ｔｉの右隣の座席であった場合、他の座席に隣接する別の座席は、第１の端末Ｔｉから２つ右の座席となる。
【００７２】
これにより、欠席している生徒の端末Ｔが無線接続先となる不具合を防ぐことができる。なお、第１の端末Ｔｉに対応する座席に隣接する他の座席に対応する端末Ｔを、第２の端末Ｔｊに決定する決定例については、図１０〜図１２を用いて後述する。
【００７３】
また、決定部９０３は、コンテンツＣの配信が完了し、かつ、無線接続中ではない端末Ｔのうち、当該端末Ｔと第１の端末Ｔｉとの間に無線接続中の他端末が存在しない端末Ｔを、第２の端末Ｔｊに決定することにしてもよい。
【００７４】
具体的には、例えば、決定部９０３は、ダウンロード状況ＤＢ２４０を参照して、コンテンツＣの配信が完了し、かつ、無線接続中ではない端末Ｔを特定する。つぎに、決定部９０３は、生徒ＤＢ２２０を参照して、特定した端末Ｔと第１の端末Ｔｉとの間に他端末が存在するか否かを判断する。ここで、他端末が存在しない場合、決定部９０３は、特定した端末Ｔを、第２の端末Ｔｊに決定する。
【００７５】
一方、他端末が存在する場合、決定部９０３は、ダウンロード状況ＤＢ２４０を参照して、他端末が無線接続中であるか否かを判断する。ここで、他端末が無線接続中ではない場合、決定部９０３は、特定した端末Ｔを、第２の端末Ｔｊに決定する。一方、他端末が無線接続中の場合には、決定部９０３は、特定した端末Ｔを、第２の端末Ｔｊに決定しない。
【００７６】
これにより、第１の端末Ｔｉとの間で無線通信を行っても、他の端末間の無線通信と干渉しないような端末Ｔを、第２の端末Ｔｊに決定することができる。なお、第１の端末Ｔｉとの間に無線接続中の他端末が存在しない端末Ｔを、第２の端末Ｔｊに決定する決定例については、図１５〜図１７を用いて後述する。
【００７７】
また、決定部９０３は、コンテンツＣの配信が完了し、かつ、無線接続中ではない端末Ｔのうち、当該端末Ｔと第１の端末Ｔｉとを結ぶ線分が、無線接続中の端末間あるいは端末／アクセスポイント間を結ぶ線分と交差または接触しない端末Ｔを、第２の端末Ｔｊに決定することにしてもよい。
【００７８】
具体的には、例えば、決定部９０３は、ダウンロード状況ＤＢ２４０を参照して、コンテンツＣの配信が完了し、かつ、無線接続中ではない端末Ｔを特定する。つぎに、決定部９０３は、生徒ＤＢ２２０を参照して、特定した端末Ｔに対応する座席位置と第１の端末Ｔｉに対応する座席位置とを結ぶ線分Ｌ１を算出する。
【００７９】
また、決定部９０３は、ダウンロード状況ＤＢ２４０を参照して、無線接続中の端末間の座席位置を結ぶ線分Ｌ２、あるいは、無線接続中の端末／アクセスポイント間の座席位置と設置位置とを結ぶ線分Ｌ２を算出する。なお、各アクセスポイントＡＰ１〜ＡＰｍの設置位置を示す情報は、例えば、メモリ３０２、ディスク３０５などの記憶装置に記憶されている。また、無線接続中の端末あるいは端末／アクセスポイントのペアが複数存在する場合には、決定部９０３は、例えば、無線接続中のペアごとに線分Ｌ２を算出する。
【００８０】
そして、決定部９０３は、算出した線分Ｌ１が、算出した線分Ｌ２と交差または接触するか否かを判断する。ここで、線分Ｌ１が線分Ｌ２と交差も接触もしない場合、決定部９０３は、特定した端末Ｔを、第２の端末Ｔｊに決定する。一方、線分Ｌ１が線分Ｌ２と交差または接触する場合、決定部９０３は、特定した端末Ｔを、第２の端末Ｔｊに決定しない。
【００８１】
これにより、第１の端末Ｔｉとの間で無線通信を行っても、他の端末間の無線通信と干渉しないような端末Ｔを、第２の端末Ｔｊに決定することができる。
【００８２】
指示部９０４は、決定された第２の端末Ｔｊから第１の端末ＴｉへのコンテンツＣの配信を指示する。具体的には、例えば、指示部９０４は、第１および第２の端末Ｔｉ，Ｔｊの双方に対して、第２の端末Ｔｊから第１の端末ＴｉへのコンテンツＣの配信指示を送信する。ここで、コンテンツＣの配信指示は、第２の端末Ｔｊから第１の端末ＴｉへのコンテンツＣのダウンロードを指示するものである。
【００８３】
コンテンツＣの配信指示には、例えば、コンテンツＣのコンテンツＩＤ、ダウンロード先（配信先）である第１の端末Ｔｉの端末ＩＤ、およびダウンロード元（配信元）である第２の端末Ｔｊの端末ＩＤが含まれる。この結果、第１の端末Ｔｉと第２の端末Ｔｊとがアドホック接続されて、第２の端末Ｔｊから第１の端末ＴｉへのコンテンツＣのダウンロード（配信）が開始される。
【００８４】
また、指示部９０４は、第１および第２の端末Ｔｉ，Ｔｊに対してコンテンツＣの配信指示を送信すると、例えば、ダウンロード状況ＤＢ２４０内の第１の端末Ｔｉに対応する接続先ＩＤに、第２の端末Ｔｊの端末ＩＤを設定する。また、指示部９０４は、ダウンロード状況ＤＢ２４０内の第２の端末Ｔｊに対応する接続先ＩＤに、第１の端末Ｔｉの端末ＩＤを設定する。また、指示部９０４は、第１の端末Ｔｉからのダウンロード完了通知を受け付けると、ダウンロード状況ＤＢ２４０内の第１の端末Ｔｉに対応するコンテンツＣのダウンロード状況に「完了」を設定するとともに、接続先ＩＤをリセットする。なお、ダウンロード完了通知は、コンテンツＣのダウンロードが完了したことを示す情報である。
【００８５】
配信部９０５は、接続中端末数Ｎが同時接続数上限Ｎmax未満の場合、アクセスポイントＡＰを介して、第１の端末Ｔｉに対してコンテンツＣを配信する。具体的には、例えば、配信部９０５は、第１の端末Ｔｉに対して、アクセスポイント経由のコンテンツＣのダウンロード指示を送信する。ここで、コンテンツＣのダウンロード指示は、アクセスポイントＡＰｋを介してコンテンツＣをダウンロードするよう指示するものである。コンテンツＣのダウンロード指示には、例えば、コンテンツＣの配信要求に含まれるアクセスポイントＩＤが含まれる。
【００８６】
このあと、配信部９０５は、例えば、第１の端末Ｔｉからのダウンロード要求を受け付けると、図６に示したコンテンツＤＢ２３０からコンテンツＣを取得し、取得したコンテンツＣを第１の端末Ｔｉに配信する。この結果、アクセスポイントＡＰｋを介して、情報処理装置１００から第１の端末ＴｉへのコンテンツＣのダウンロードが開始される。
【００８７】
また、配信部９０５は、第１の端末ＴｉへコンテンツＣを配信する場合、無線ＬＡＮ環境ＤＢ２５０内のアクセスポイントＡＰｋに対応する接続中端末数Ｎをインクリメントする。また、配信部９０５は、ダウンロード状況ＤＢ２４０内の第１の端末Ｔｉに対応する接続先ＩＤに、アクセスポイントＡＰｋのアクセスポイントＩＤを設定する。また、配信部９０５は、第１の端末Ｔｉからのダウンロード完了通知を受け付けると、ダウンロード状況ＤＢ２４０内の第１の端末Ｔｉに対応するコンテンツＣのダウンロード状況に「完了」を設定するとともに、接続先ＩＤをリセットする。
【００８８】
なお、本実施の形態では、情報処理装置１００がコンテンツＣを配信することにしたが、これに限らない。例えば、情報処理装置１００とは別に設けられる配信サーバが、第１の端末Ｔｉに対してコンテンツＣを配信することにしてもよい。この場合、配信部９０５は、例えば、アクセスポイントＡＰｋを介して、配信サーバからコンテンツＣをダウンロードするよう指示するダウンロード指示を第１の端末Ｔｉに送信する。
【００８９】
（コンテンツＣのダウンロード例）
つぎに、コンテンツＣのダウンロード例について説明する。ここでは、端末Ｔ１〜Ｔｎの台数を「４２台（ｎ＝４２）」とし、アクセスポイントＡＰ１〜ＡＰｍの台数を「２台（ｍ＝２）」とする。また、アクセスポイントＡＰ１，ＡＰ２の同時接続数上限Ｎmaxをそれぞれ「Ｎmax＝４」とする。また、配信対象となるコンテンツＣを「コンテンツＣ２」とする。
【００９０】
・第１のダウンロード例
まず、図１０〜図１２を用いて、コンテンツＣの第１のダウンロード例について説明する。第１のダウンロード例は、第１の端末Ｔｉに対応する座席に隣接する他の座席に対応する端末Ｔを、第２の端末Ｔｊに決定する場合のダウンロード例である。
【００９１】
図１０〜図１２は、コンテンツＣの第１のダウンロード例を示す説明図である。図１０〜図１２において、座席表１０００は、各端末Ｔ１〜Ｔ４２を使用する生徒の座席位置を示している。以下、第１〜第３フェーズに分けて、各端末Ｔ１〜Ｔ４２のコンテンツＣのダウンロード状況について説明する。
【００９２】
図１０に示す第１フェーズにおいて、情報処理装置１００が、アクセスポイントＡＰ１を介して、端末Ｔ１，Ｔ１４，Ｔ１５，Ｔ２６からのコンテンツＣ２の配信要求を順次受け付けた場合を想定する。この場合、各配信要求を受け付けた時点では、アクセスポイントＡＰ１の接続中端末数Ｎは同時接続数上限Ｎmax未満となる。
【００９３】
このため、情報処理装置１００は、アクセスポイントＡＰ１を介して、各端末Ｔ１，Ｔ１４，Ｔ１５，Ｔ２６に対してコンテンツＣ２を配信する。この結果、各端末Ｔ１，Ｔ１４，Ｔ１５，Ｔ２６において、アクセスポイントＡＰ１を介したコンテンツＣ２のダウンロードが開始される。
【００９４】
また、情報処理装置１００が、アクセスポイントＡＰ２を介して、端末Ｔ５，Ｔ６，Ｔ３４，Ｔ４０からのコンテンツＣ２の配信要求を順次受け付けた場合を想定する。この場合、各配信要求を受け付けた時点では、アクセスポイントＡＰ２の接続中端末数Ｎは同時接続数上限Ｎmax未満となる。
【００９５】
このため、情報処理装置１００は、アクセスポイントＡＰ２を介して、各端末Ｔ５，Ｔ６，Ｔ３４，Ｔ４０に対してコンテンツＣ２を配信する。この結果、各端末Ｔ５，Ｔ６，Ｔ３４，Ｔ４０において、アクセスポイントＡＰ２を介したコンテンツＣ２のダウンロードが開始される。
【００９６】
この場合、図１３に示すようにダウンロード状況ＤＢ２４０の記憶内容が更新される。
【００９７】
図１３および図１４は、ダウンロード状況ＤＢ２４０の更新例を示す説明図である。図１３において、第１フェーズでは、ダウンロード状況ＤＢ２４０内の各端末Ｔ１，Ｔ１４，Ｔ１５，Ｔ２６，Ｔ５，Ｔ６，Ｔ３４，Ｔ４０に対応する接続先ＩＤに、無線接続中のアクセスポイントＡＰ１，ＡＰ２のアクセスポイントＩＤが設定される。
【００９８】
そして、各アクセスポイントＡＰ１，ＡＰ２の接続中端末数Ｎは、「Ｎ＝４」となり、同時接続数上限Ｎmax以上となる。また、この時点では、コンテンツＣ２のダウンロードが完了している端末Ｔは存在しない。このため、情報処理装置１００が、端末Ｔ３１からのコンテンツＣ２の配信要求を受け付けたとしても、端末Ｔ３１は待ちとなる。
【００９９】
このあと、各端末Ｔ１，Ｔ１４，Ｔ１５，Ｔ２６，Ｔ５，Ｔ６，Ｔ３４，Ｔ４０におけるコンテンツＣ２のダウンロードが完了すると、図１１に示す第２フェーズに移行する。また、ダウンロード状況ＤＢ２４０内の各端末Ｔ１，Ｔ１４，Ｔ１５，Ｔ２６，Ｔ５，Ｔ６，Ｔ３４，Ｔ４０に対応するコンテンツＣ２のダウンロード状況に「完了」が設定される。
【０１００】
なお、以下の説明では、アクセスポイントＡＰ１に着目して、コンテンツＣ２のダウンロード例について説明する。
【０１０１】
図１１に示す第２フェーズにおいて、まず、情報処理装置１００が、アクセスポイントＡＰ１を介して、端末Ｔ２０，Ｔ２７，Ｔ３１，Ｔ３８からのコンテンツＣ２の配信要求を順次受け付けた場合を想定する。この場合、各配信要求を受け付けた時点では、アクセスポイントＡＰ１の接続中端末数Ｎは同時接続数上限Ｎmax未満となる。
【０１０２】
このため、情報処理装置１００は、アクセスポイントＡＰ１を介して、各端末Ｔ２０，Ｔ２７，Ｔ３１，Ｔ３８に対してコンテンツＣ２を配信する。この結果、各端末Ｔ２０，Ｔ２７，Ｔ３１，Ｔ３８において、アクセスポイントＡＰ１を介したコンテンツＣ２のダウンロードが開始される。
【０１０３】
このあと、情報処理装置１００が、アクセスポイントＡＰ１を介して、端末Ｔ８，Ｔ１３，Ｔ１９，Ｔ３９からのコンテンツＣ２の配信要求を順次受け付けた場合を想定する。この場合、各配信要求を受け付けた時点では、アクセスポイントＡＰ１の接続中端末数Ｎは同時接続数上限Ｎmax以上である。
【０１０４】
このため、端末Ｔ８，Ｔ１３，Ｔ１９，Ｔ３９に対しては、アクセスポイントＡＰ１を介したコンテンツＣ２の配信は行われない。一方で、この時点では、コンテンツＣ２のダウンロードが完了した端末Ｔ（端末Ｔ１，Ｔ１４，Ｔ１５，Ｔ２６，Ｔ５，Ｔ６，Ｔ３４，Ｔ４０）が存在する。
【０１０５】
このため、情報処理装置１００は、コンテンツＣのダウンロードが完了した端末Ｔの中から、各端末Ｔ８，Ｔ１３，Ｔ１９，Ｔ３９の無線接続先の端末Ｔを決定する。一例として、端末Ｔ８を例に挙げると、情報処理装置１００は、コンテンツＣ２の配信が完了し、かつ、無線接続中ではない端末Ｔのうち、端末Ｔ８に対応する座席に隣接する他の座席に対応する端末Ｔ、例えば、端末Ｔ１を無線接続先の端末Ｔに決定する。
【０１０６】
この場合、情報処理装置１００は、端末Ｔ１，Ｔ８に対して、端末Ｔ１から端末Ｔ８へのコンテンツＣ２の配信指示を送信する。この結果、端末Ｔ１と端末Ｔ８とがアドホック接続されて、端末Ｔ１から端末Ｔ８へのコンテンツＣ２のダウンロードが開始される。この場合、図１３の第２フェーズに示すように、ダウンロード状況ＤＢ２４０の記憶内容が更新される。
【０１０７】
具体的には、例えば、第２フェーズでは、ダウンロード状況ＤＢ２４０内の端末Ｔ１に対応する接続先ＩＤに、アドホック無線接続中の端末Ｔ８の端末ＩＤが設定される。また、ダウンロード状況ＤＢ２４０内の端末Ｔ８に対応する接続先ＩＤに、アドホック無線接続中の端末Ｔ１の端末ＩＤが設定される。
【０１０８】
このあと、端末Ｔ８におけるコンテンツＣ２のダウンロードが完了すると、図１２に示す第３フェーズに移行する。また、ダウンロード状況ＤＢ２４０内の端末Ｔ８に対応するコンテンツＣ２のダウンロード状況に「完了」が設定される。
【０１０９】
図１２に示す第３フェーズにおいて、まず、情報処理装置１００が、アクセスポイントＡＰ１を介して、端末Ｔ２１，Ｔ２５，Ｔ２８，Ｔ３２からのコンテンツＣ２の配信要求を順次受け付けた場合を想定する。この場合、各配信要求を受け付けた時点では、アクセスポイントＡＰ１の接続中端末数Ｎは同時接続数上限Ｎmax未満となる。
【０１１０】
このため、情報処理装置１００は、アクセスポイントＡＰ１を介して、各端末Ｔ２１，Ｔ２５，Ｔ２８，Ｔ３２に対してコンテンツＣ２を配信する。この結果、各端末Ｔ２１，Ｔ２５，Ｔ２８，Ｔ３２において、アクセスポイントＡＰ１を介したコンテンツＣ２のダウンロードが開始される。
【０１１１】
このあと、情報処理装置１００が、アクセスポイントＡＰ１を介して、端末Ｔ２，Ｔ７，Ｔ９，Ｔ３３，Ｔ３７からのコンテンツＣ２の配信要求を順次受け付けた場合を想定する。この場合、各配信要求を受け付けた時点では、アクセスポイントＡＰ１の接続中端末数Ｎは同時接続数上限Ｎmax以上である。
【０１１２】
このため、端末Ｔ２，Ｔ７，Ｔ９，Ｔ３３，Ｔ３７に対しては、アクセスポイントＡＰ１を介したコンテンツＣ２の配信は行われない。一方で、この時点では、コンテンツＣ２のダウンロードが完了した端末Ｔが存在する。このため、情報処理装置１００は、コンテンツＣのダウンロードが完了した端末Ｔの中から、各端末Ｔ２，Ｔ７，Ｔ９，Ｔ３３，Ｔ３７の無線接続先の端末Ｔを決定する。
【０１１３】
一例として、端末Ｔ２を例に挙げると、情報処理装置１００は、例えば、コンテンツＣ２の配信が完了し、かつ、無線接続中ではない端末Ｔのうち、端末Ｔ２に対応する座席に隣接する他の座席に対応する端末Ｔを、無線接続先の端末Ｔに決定する。ここで、端末Ｔ２に対応する座席に隣接する他の座席を、右隣の座席とする。この場合、端末Ｔ２に対応する座席に隣接する他の座席は「空席（欠席）」である。したがって、情報処理装置１００は、例えば、端末Ｔ２に対応する座席に隣接する他の座席に隣接する別の座席に対応する端末Ｔ４を、無線接続先の端末Ｔに決定する。
【０１１４】
そして、情報処理装置１００は、端末Ｔ２，Ｔ４に対して、端末Ｔ４から端末Ｔ２へのコンテンツＣ２の配信指示を送信する。この結果、端末Ｔ２と端末Ｔ４とがアドホック接続されて、端末Ｔ４から端末Ｔ２へのコンテンツＣ２のダウンロードが開始される。この場合、図１４の第３フェーズに示すように、ダウンロード状況ＤＢ２４０の記憶内容が更新される。
【０１１５】
具体的には、例えば、第３フェーズでは、ダウンロード状況ＤＢ２４０内の端末Ｔ２に対応する接続先ＩＤに、アドホック無線接続中の端末Ｔ４の端末ＩＤが設定される。また、ダウンロード状況ＤＢ２４０内の端末Ｔ４に対応する接続先ＩＤに、アドホック無線接続中の端末Ｔ２の端末ＩＤが設定される。
【０１１６】
例えば、端末／アクセスポイント間の無線ＬＡＮの実速度を１００Ｍｂｐｓとし、５台以上の端末Ｔが、同時にアクセスポイント経由でコンテンツＣをダウンロードすると実速度は落ちるものとする。また、各端末Ｔｉが１００ＭＢのコンテンツＣをダウンロードするものとする。
【０１１７】
この場合、図１０に示した第１フェーズでは、端末Ｔ１〜Ｔ４２のうちの８台の端末Ｔがアクセスポイント経由でコンテンツＣをダウンロードする。このため、８台の端末ＴがコンテンツＣをダウンロードするのにかかる時間は「８ｓｅｃ（＝８００Ｍｂｉｔ／１００）」となる。
【０１１８】
図１１に示した第２フェーズでは、８台の端末Ｔがアクセスポイント経由でコンテンツＣをダウンロードし、８台の端末Ｔがアドホック接続で他端末からコンテンツＣをダウンロードする。この場合、１６台の端末ＴがコンテンツＣをダウンロードするのにかかる時間は「８ｓｅｃ（＝８００Ｍｂｉｔ／１００）」となる。ただし、端末間の無線ＬＡＮの実速度を１００Ｍｂｐｓとする。
【０１１９】
図１２に示した第３フェーズでは、８台の端末Ｔがアクセスポイント経由でコンテンツＣをダウンロードし、１０台の端末Ｔがアドホック接続で他端末からコンテンツＣをダウンロードする。この場合、１８台の端末ＴがコンテンツＣをダウンロードするのにかかる時間は「８ｓｅｃ（＝８００Ｍｂｉｔ／１００）」となる。
【０１２０】
このため、全端末Ｔ１〜Ｔ４２のコンテンツＣのダウンロードにかかる時間は「２４ｓｅｃ（＝８ｓｅｃ×３）」となる。これに対して、環境全体で無線ＬＡＮは実速度平均８００Ｍｂｐｓの帯域とすると、全端末Ｔ１〜Ｔ４２がアクセスポイント経由で同時にコンテンツＣをダウンロードするのにかかる時間は「４２ｓｅｃ（＝１００ＭＢ×４２／８００Ｍｂｐｓ）」となる。この場合、本配信制御手法によれば、全端末Ｔ１〜Ｔ４２のコンテンツＣのダウンロードにかかる時間を３４ｓｅｃ短縮できていることになる。
【０１２１】
・第２のダウンロード例
つぎに、図１５〜図１７を用いて、コンテンツＣの第２のダウンロード例について説明する。第２のダウンロード例は、第１の端末Ｔｉとの間に無線接続中の他端末が存在しない端末Ｔを、第２の端末Ｔｊに決定する場合のダウンロード例である。
【０１２２】
図１５〜図１７は、コンテンツＣの第２のダウンロード例を示す説明図である。図１５〜図１７において、座席表１５００は、各端末Ｔ１〜Ｔ４２を使用する生徒の座席位置を示している。以下、第１〜第３フェーズに分けて、各端末Ｔ１〜Ｔ４２のコンテンツＣ２のダウンロード状況について説明する。ただし、ここでは、アクセスポイントＡＰ１に着目して、コンテンツＣ２のダウンロード例について説明する。
【０１２３】
図１５に示す第１フェーズにおいて、情報処理装置１００が、アクセスポイントＡＰ１を介して、端末Ｔ１，Ｔ１４，Ｔ１５，Ｔ２６からのコンテンツＣ２の配信要求を順次受け付けた場合を想定する。この場合、各配信要求を受け付けた時点では、アクセスポイントＡＰ１の接続中端末数Ｎは同時接続数上限Ｎmax未満となる。
【０１２４】
このため、情報処理装置１００は、アクセスポイントＡＰ１を介して、各端末Ｔ１，Ｔ１４，Ｔ１５，Ｔ２６に対してコンテンツＣ２を配信する。この結果、各端末Ｔ１，Ｔ１４，Ｔ１５，Ｔ２６において、アクセスポイントＡＰ１を介したコンテンツＣ２のダウンロードが開始される。
【０１２５】
この場合、例えば、図１３の第１フェーズに示したように、ダウンロード状況ＤＢ２４０の記憶内容が更新される。そして、各アクセスポイントＡＰ１，ＡＰ２の接続中端末数Ｎは、「Ｎ＝４」となり、同時接続数上限Ｎmax以上となる。また、この時点では、コンテンツＣ２のダウンロードが完了している端末Ｔは存在しない。このため、情報処理装置１００が、端末Ｔ３１からのコンテンツＣ２の配信要求を受け付けたとしても、端末Ｔ３１は待ちとなる。
【０１２６】
このあと、各端末Ｔ１，Ｔ１４，Ｔ１５，Ｔ２６におけるコンテンツＣ２のダウンロードが完了すると、図１６に示す第２フェーズに移行する。また、ダウンロード状況ＤＢ２４０内の各端末Ｔ１，Ｔ１４，Ｔ１５，Ｔ２６に対応するコンテンツＣ２のダウンロード状況に「完了」が設定される。
【０１２７】
図１６に示す第２フェーズにおいて、まず、情報処理装置１００が、アクセスポイントＡＰ１を介して、端末Ｔ２０，Ｔ２７，Ｔ３１，Ｔ３８からのコンテンツＣ２の配信要求を順次受け付けた場合を想定する。この場合、各配信要求を受け付けた時点では、アクセスポイントＡＰ１の接続中端末数Ｎは同時接続数上限Ｎmax未満となる。
【０１２８】
このため、情報処理装置１００は、アクセスポイントＡＰ１を介して、各端末Ｔ２０，Ｔ２７，Ｔ３１，Ｔ３８に対してコンテンツＣ２を配信する。この結果、各端末Ｔ２０，Ｔ２７，Ｔ３１，Ｔ３８において、アクセスポイントＡＰ１を介したコンテンツＣ２のダウンロードが開始される。
【０１２９】
このあと、情報処理装置１００が、アクセスポイントＡＰ１を介して、端末Ｔ８，Ｔ１３，Ｔ１９，Ｔ３９からのコンテンツＣ２の配信要求を順次受け付けた場合を想定する。この場合、各配信要求を受け付けた時点では、アクセスポイントＡＰ１の接続中端末数Ｎは同時接続数上限Ｎmax以上である。
【０１３０】
このため、端末Ｔ８，Ｔ１３，Ｔ１９，Ｔ３９に対しては、アクセスポイントＡＰ１を介したコンテンツＣ２の配信は行われない。一方で、この時点では、コンテンツＣ２のダウンロードが完了した端末Ｔ（例えば、端末Ｔ１，Ｔ１４，Ｔ１５，Ｔ２６）が存在する。
【０１３１】
このため、情報処理装置１００は、コンテンツＣのダウンロードが完了した端末Ｔの中から、各端末Ｔ８，Ｔ１３，Ｔ１９，Ｔ３９の無線接続先の端末Ｔを決定する。一例として、端末Ｔ８を例に挙げると、情報処理装置１００は、コンテンツＣ２の配信が完了し、かつ、無線接続中ではない端末Ｔのうち、端末Ｔ８との間に無線接続中の他端末が存在しない端末Ｔ、例えば、端末Ｔ１を無線接続先の端末Ｔに決定する。
【０１３２】
この場合、情報処理装置１００は、端末Ｔ１，Ｔ８に対して、端末Ｔ１から端末Ｔ８へのコンテンツＣ２の配信指示を送信する。この結果、端末Ｔ１と端末Ｔ８とがアドホック接続されて、端末Ｔ１から端末Ｔ８へのコンテンツＣ２のダウンロードが開始される。この場合、図１３の第２フェーズに示したように、ダウンロード状況ＤＢ２４０の記憶内容が更新される。
【０１３３】
このあと、端末Ｔ８におけるコンテンツＣ２のダウンロードが完了すると、図１７に示す第３フェーズに移行する。また、ダウンロード状況ＤＢ２４０内の端末Ｔ８に対応するコンテンツＣ２のダウンロード状況に「完了」が設定される。
【０１３４】
図１７に示す第３フェーズにおいて、まず、情報処理装置１００が、アクセスポイントＡＰ１を介して、端末Ｔ２１，Ｔ２５，Ｔ２８，Ｔ３２からのコンテンツＣ２の配信要求を順次受け付けた場合を想定する。この場合、各配信要求を受け付けた時点では、アクセスポイントＡＰ１の接続中端末数Ｎは同時接続数上限Ｎmax未満となる。
【０１３５】
このため、情報処理装置１００は、アクセスポイントＡＰ１を介して、各端末Ｔ２１，Ｔ２５，Ｔ２８，Ｔ３２に対してコンテンツＣ２を配信する。この結果、各端末Ｔ２１，Ｔ２５，Ｔ２８，Ｔ３２において、アクセスポイントＡＰ１を介したコンテンツＣ２のダウンロードが開始される。
【０１３６】
このあと、情報処理装置１００が、アクセスポイントＡＰ１を介して、端末Ｔ２，Ｔ７，Ｔ９，Ｔ３３，Ｔ３７からのコンテンツＣ２の配信要求を順次受け付けた場合を想定する。この場合、各配信要求を受け付けた時点では、アクセスポイントＡＰ１の接続中端末数Ｎは同時接続数上限Ｎmax以上である。
【０１３７】
このため、端末Ｔ２，Ｔ７，Ｔ９，Ｔ３３，Ｔ３７に対しては、アクセスポイントＡＰ１を介したコンテンツＣ２の配信は行われない。一方で、この時点では、コンテンツＣ２のダウンロードが完了した端末Ｔが存在する。このため、情報処理装置１００は、コンテンツＣのダウンロードが完了した端末Ｔの中から、各端末Ｔ２，Ｔ７，Ｔ９，Ｔ３３，Ｔ３７の無線接続先の端末Ｔを決定する。
【０１３８】
一例として、端末Ｔ２を例に挙げると、情報処理装置１００は、例えば、コンテンツＣ２の配信が完了し、かつ、無線接続中ではない端末Ｔのうち、端末Ｔ２との間に無線接続中の他端末が存在しない端末Ｔ、例えば、端末Ｔ４を無線接続先の端末Ｔに決定する。
【０１３９】
そして、情報処理装置１００は、端末Ｔ２，Ｔ４に対して、端末Ｔ４から端末Ｔ２へのコンテンツＣ２の配信指示を送信する。この結果、端末Ｔ２と端末Ｔ４とがアドホック接続されて、端末Ｔ４から端末Ｔ２へのコンテンツＣ２のダウンロードが開始される。この場合、図１４の第３フェーズに示したように、ダウンロード状況ＤＢ２４０の記憶内容が更新される。
【０１４０】
（情報処理装置１００の配信制御処理手順）
つぎに、図１８〜図２０を用いて、情報処理装置１００の配信制御処理手順について説明する。
【０１４１】
図１８は、情報処理装置１００の配信制御処理手順の一例を示すフローチャートである。図１８のフローチャートにおいて、まず、情報処理装置１００は、端末Ｔ１〜Ｔｎのうちの第１の端末ＴｉからコンテンツＣの配信要求を受信したか否かを判断する（ステップＳ１８０１）。ここで、情報処理装置１００は、コンテンツＣの配信要求を受信するのを待つ（ステップＳ１８０１：Ｎｏ）。
【０１４２】
そして、情報処理装置１００は、コンテンツＣの配信要求を受信した場合（ステップＳ１８０１：Ｙｅｓ）、無線ＬＡＮ環境ＤＢ２５０を参照して、アクセスポイントＡＰｋの同時接続数上限Ｎmaxおよび接続中端末数Ｎを特定する（ステップＳ１８０２）。なお、アクセスポイントＡＰｋは、コンテンツＣの配信要求に含まれるアクセスポイントＩＤから特定される。
【０１４３】
つぎに、情報処理装置１００は、特定した接続中端末数Ｎが同時接続数上限Ｎmax以上であるか否かを判断する（ステップＳ１８０３）。ここで、接続中端末数Ｎが同時接続数上限Ｎmax未満の場合（ステップＳ１８０３：Ｎｏ）、情報処理装置１００は、アクセスポイントＡＰｋの接続中端末数Ｎをインクリメントする（ステップＳ１８０４）。
【０１４４】
つぎに、情報処理装置１００は、第１の端末Ｔｉに対して、アクセスポイント経由のコンテンツＣのダウンロード指示を送信する（ステップＳ１８０５）。そして、情報処理装置１００は、ダウンロード状況ＤＢ２４０内の第１の端末Ｔｉに対応する接続先ＩＤに、アクセスポイントＡＰｋのアクセスポイントＩＤを設定する（ステップＳ１８０６）。
【０１４５】
つぎに、情報処理装置１００は、第１の端末Ｔｉからのダウンロード要求を受け付けると、コンテンツＤＢ２３０からコンテンツＣを取得して、取得したコンテンツＣの第１の端末Ｔｉへの配信を開始する（ステップＳ１８０７）。
【０１４６】
つぎに、情報処理装置１００は、第１の端末Ｔｉからダウンロード完了通知を受信したか否かを判断する（ステップＳ１８０８）。ここで、情報処理装置１００は、第１の端末Ｔｉからダウンロード完了通知を受信するのを待つ（ステップＳ１８０８：Ｎｏ）。
【０１４７】
そして、情報処理装置１００は、ダウンロード完了通知を受信した場合（ステップＳ１８０８：Ｙｅｓ）、アクセスポイントＡＰｋの接続中端末数Ｎをデクリメントする（ステップＳ１８０９）。つぎに、情報処理装置１００は、ダウンロード状況ＤＢ２４０内の第１の端末Ｔｉに対応するコンテンツＣのダウンロード状況に「完了」を設定する（ステップＳ１８１０）。
【０１４８】
そして、情報処理装置１００は、ダウンロード状況ＤＢ２４０内の第１の端末Ｔｉに対応する接続先ＩＤをリセットして（ステップＳ１８１１）、本フローチャートによる一連の処理を終了する。
【０１４９】
また、ステップＳ１８０３において、接続中端末数Ｎが同時接続数上限Ｎmax以上の場合（ステップＳ１８０３：Ｙｅｓ）、情報処理装置１００は、第１の端末Ｔｉの無線接続先となる第２の端末Ｔｊを決定する接続先決定処理を実行する（ステップＳ１８１２）。接続先決定処理の具体的な処理手順については、図１９および図２０を用いて後述する。
【０１５０】
つぎに、情報処理装置１００は、第１および第２の端末Ｔｉ，Ｔｊに対して、アドホック接続による第２の端末Ｔｊから第１の端末ＴｉへのコンテンツＣの配信指示を送信する（ステップＳ１８１３）。そして、情報処理装置１００は、ダウンロード状況ＤＢ２４０内の第１の端末Ｔｉに対応する接続先ＩＤに第２の端末Ｔｊの端末ＩＤを設定するとともに、第２の端末Ｔｊに対応する接続先ＩＤに第１の端末Ｔｉの端末ＩＤを設定する（ステップＳ１８１４）。
【０１５１】
つぎに、情報処理装置１００は、第１の端末Ｔｉからダウンロード完了通知を受信したか否かを判断する（ステップＳ１８１５）。ここで、情報処理装置１００は、第１の端末Ｔｉからダウンロード完了通知を受信するのを待つ（ステップＳ１８１５：Ｎｏ）。
【０１５２】
そして、情報処理装置１００は、ダウンロード完了通知を受信した場合（ステップＳ１８１５：Ｙｅｓ）、ダウンロード状況ＤＢ２４０内の第１の端末Ｔｉに対応するコンテンツＣのダウンロード状況に「完了」を設定する（ステップＳ１８１６）。
【０１５３】
つぎに、情報処理装置１００は、ダウンロード状況ＤＢ２４０内の第１および第２の端末Ｔｉ，Ｔｊに対応する接続先ＩＤをリセットして（ステップＳ１８１７）、本フローチャートによる一連の処理を終了する。
【０１５４】
これにより、アクセスポイントＡＰｋの接続中端末数Ｎが同時接続数上限Ｎmaxに達したときは、端末間のアドホック接続を利用して、コンテンツＣの配信が完了した第２の端末Ｔｊから第１の端末ＴｉへコンテンツＣをダウンロードさせることができる。
【０１５５】
＜接続先決定処理の具体的処理手順＞
つぎに、図１８に示したステップＳ１８１２の接続先決定処理の具体的な処理手順について説明する。ここでは、接続先決定処理として、第１および第２の接続先決定処理を説明する。また、第１および第２の接続先決定処理のいずれを実行するかは任意に設定可能である。
【０１５６】
図１９は、第１の接続先決定処理の具体的処理手順の一例を示すフローチャートである。図１９のフローチャートにおいて、まず、情報処理装置１００は、生徒ＤＢ２２０を参照して、第１の端末Ｔｉに対応する座席の座席位置を特定する（ステップＳ１９０１）。
【０１５７】
つぎに、情報処理装置１００は、生徒ＤＢ２２０を参照して、第１の端末Ｔｉに対応する座席に隣接する他の座席に対応する端末Ｔを選択する（ステップＳ１９０２）。そして、情報処理装置１００は、生徒ＤＢ２２０を参照して、選択した端末Ｔに対応する出欠状況が「欠席」であるか否かを判断する（ステップＳ１９０３）。
【０１５８】
ここで、出欠状況が「出席」の場合（ステップＳ１９０３：Ｎｏ）、情報処理装置１００は、ステップＳ１９０２において選択した端末Ｔを接続先候補として（ステップＳ１９０４）、ステップＳ１９０７に移行する。
【０１５９】
一方、出欠状況が「欠席」の場合には（ステップＳ１９０３：Ｙｅｓ）、情報処理装置１００は、生徒ＤＢ２２０を参照して、第１の端末Ｔｉに対応する座席から見て、隣接する他の座席の一つ先の座席に対応する端末Ｔを選択する（ステップＳ１９０５）。
【０１６０】
そして、情報処理装置１００は、生徒ＤＢ２２０を参照して、選択した端末Ｔに対応する出欠状況が「欠席」であるか否かを判断する（ステップＳ１９０６）。ここで、出欠状況が「出席」の場合（ステップＳ１９０６：Ｎｏ）、情報処理装置１００は、ステップＳ１９０４に移行して、ステップＳ１９０５において選択した端末Ｔを接続先候補とする。
【０１６１】
一方、出欠状況が「欠席」の場合には（ステップＳ１９０６：Ｙｅｓ）、情報処理装置１００は、第１の端末Ｔｉに対応する座席に隣接する他の座席に対応する未選択の端末Ｔがあるか否かを判断する（ステップＳ１９０７）。ここで、未選択の端末Ｔがある場合（ステップＳ１９０７：Ｙｅｓ）、情報処理装置１００は、ステップＳ１９０２に戻る。
【０１６２】
一方、未選択の端末Ｔがない場合（ステップＳ１９０７：Ｎｏ）、情報処理装置１００は、接続先候補の中から、コンテンツＣの配信が完了し、かつ、無線接続中ではないいずれかの端末Ｔを抽出する（ステップＳ１９０８）。そして、情報処理装置１００は、端末Ｔが抽出されたか否かを判断する（ステップＳ１９０９）。
【０１６３】
ここで、端末Ｔが抽出されていない場合（ステップＳ１９０９：Ｎｏ）、情報処理装置１００は、図１８に示したステップＳ１８０２に戻る。一方、端末Ｔが抽出された場合（ステップＳ１９０９：Ｙｅｓ）、情報処理装置１００は、抽出した端末Ｔを、第１の端末Ｔｉの無線接続先となる第２の端末Ｔｊに決定して（ステップＳ１９１０）、接続先決定処理を呼び出したステップに戻る。
【０１６４】
これにより、距離的に近い端末間でコンテンツＣの配信を行わせることができる。なお、ステップＳ１９０５において、隣接する他の座席の一つ先の座席が存在しない場合には、情報処理装置１００は、ステップＳ１９０７に移行する。
【０１６５】
図２０は、第２の接続先決定処理の具体的処理手順の一例を示すフローチャートである。図２０のフローチャートにおいて、まず、情報処理装置１００は、ダウンロード状況ＤＢ２４０を参照して、コンテンツＣの配信が完了し、かつ、無線接続中ではないいずれかの端末Ｔを選択する（ステップＳ２００１）。
【０１６６】
つぎに、情報処理装置１００は、生徒ＤＢ２２０を参照して、選択した端末Ｔと第１の端末Ｔｉとの間に他端末が存在するか否かを判断する（ステップＳ２００２）。ここで、他端末が存在しない場合には（ステップＳ２００２：Ｎｏ）、情報処理装置１００は、選択した端末Ｔを第１接続先候補として（ステップＳ２００３）、ステップＳ２００６に移行する。
【０１６７】
一方、他端末が存在する場合（ステップＳ２００２：Ｙｅｓ）、情報処理装置１００は、ダウンロード状況ＤＢ２４０を参照して、他端末が無線接続中であるか否かを判断する（ステップＳ２００４）。ここで、他端末が無線接続中の場合（ステップＳ２００４：Ｙｅｓ）、情報処理装置１００は、ステップＳ２００６に移行する。
【０１６８】
一方、他端末が無線接続中ではない場合（ステップＳ２００４：Ｎｏ）、情報処理装置１００は、選択した端末Ｔを第２接続候補とする（ステップＳ２００５）。そして、情報処理装置１００は、コンテンツＣの配信が完了し、かつ、無線接続中ではない端末Ｔのうち選択されていない未選択の端末Ｔがあるか否かを判断する（ステップＳ２００６）。
【０１６９】
ここで、未選択の端末Ｔがある場合（ステップＳ２００６：Ｙｅｓ）、情報処理装置１００は、ステップＳ２００１に戻る。一方、未選択の端末Ｔがない場合（ステップＳ２００６：Ｎｏ）、情報処理装置１００は、第１接続先候補があるか否かを判断する（ステップＳ２００７）。
【０１７０】
ここで、第１接続先候補がある場合（ステップＳ２００７：Ｙｅｓ）、情報処理装置１００は、第１接続先候補のいずれかの端末Ｔを、第１の端末Ｔｉの無線接続先となる第２の端末Ｔｊに決定して（ステップＳ２００８）、接続先決定処理を呼び出したステップに戻る。
【０１７１】
一方、第１接続先候補がない場合（ステップＳ２００７：Ｎｏ）、情報処理装置１００は、第２接続先候補があるか否かを判断する（ステップＳ２００９）。ここで、第２接続先候補がない場合（ステップＳ２００９：Ｎｏ）、情報処理装置１００は、図１８に示したステップＳ１８０２に戻る。
【０１７２】
一方、第２接続先候補がある場合（ステップＳ２００９：Ｙｅｓ）、情報処理装置１００は、第２接続先候補のいずれかの端末Ｔを、第１の端末Ｔｉの無線接続先となる第２の端末Ｔｊに決定して（ステップＳ２０１０）、接続先決定処理を呼び出したステップに戻る。
【０１７３】
これにより、無線接続中の端末同士ができるだけ干渉し合わないようなアドホック接続を実現することができる。また、第２接続先候補よりも第１接続先候補を優先することで、できるだけ距離的に近い端末間でコンテンツＣの配信を行わせることができる。なお、第１接続先候補が複数存在する場合は、例えば、第１の接続先候補からランダムに選択される端末Ｔが、第２の端末Ｔｊに決定される。
【０１７４】
（端末Ｔｉのダウンロード処理手順）
つぎに、端末Ｔｉのダウンロード処理手順について説明する。
【０１７５】
図２１は、端末Ｔｉのダウンロード処理手順の一例を示すフローチャートである。図２１のフローチャートにおいて、まず、端末Ｔｉは、アクセスポイントＡＰｋを介して、コンテンツＣの配信要求を情報処理装置１００に送信する（ステップＳ２１０１）。
【０１７６】
つぎに、端末Ｔｉは、アクセスポイント経由のコンテンツＣのダウンロード指示を情報処理装置１００から受信したか否かを判断する（ステップＳ２１０２）。ここで、ダウンロード指示を受信した場合（ステップＳ２１０２：Ｙｅｓ）、端末Ｔｉは、情報処理装置１００にダウンロード要求を送信して、アクセスポイント経由でのコンテンツＣのダウンロードを開始する（ステップＳ２１０３）。
【０１７７】
そして、コンテンツＣのダウンロードが完了したか否かを判断する（ステップＳ２１０４）。ここで、端末Ｔｉは、コンテンツＣのダウンロードが完了するのを待つ（ステップＳ２１０４：Ｎｏ）。そして、コンテンツＣのダウンロードが完了した場合（ステップＳ２１０４：Ｙｅｓ）、端末Ｔｉは、情報処理装置１００にダウンロード完了通知を送信して（ステップＳ２１０５）、本フローチャートによる一連の処理を終了する。
【０１７８】
また、ステップＳ２１０２において、ダウンロード指示を受信していない場合（ステップＳ２１０２：Ｎｏ）、端末Ｔｉは、第２の端末Ｔｊから自端末へのコンテンツＣの配信指示を情報処理装置１００から受信したか否かを判断する（ステップＳ２１０６）。
【０１７９】
ここで、第２の端末Ｔｊから自端末へのコンテンツＣの配信指示を受信していない場合（ステップＳ２１０６：Ｎｏ）、端末Ｔｉは、ステップＳ２１０２に戻る。一方、コンテンツＣの配信指示を受信した場合（ステップＳ２１０６：Ｙｅｓ）、端末Ｔｉは、第２の端末Ｔｊとアドホック接続する（ステップＳ２１０７）。
【０１８０】
そして、端末Ｔｉは、第２の端末ＴｊからのコンテンツＣのダウンロードを開始して（ステップＳ２１０８）、ステップＳ２１０４に移行する。これにより、情報処理装置１００からの指示に従って、アクセスポイント経由、または、第２の端末Ｔｊとのアドホック接続によりコンテンツＣをダウンロードすることができる。
【０１８１】
（端末Ｔｉの配信処理手順）
つぎに、端末Ｔｉの配信処理手順について説明する。
【０１８２】
図２２は、端末Ｔｉの配信処理手順の一例を示すフローチャートである。図２２のフローチャートにおいて、まず、端末Ｔｉは、自端末から他端末ＴｊへのコンテンツＣの配信指示を情報処理装置１００から受信したか否かを判断する（ステップＳ２２０１）。ここで、端末Ｔｉは、コンテンツＣの配信指示を受信するのを待つ（ステップＳ２２０１：Ｎｏ）。
【０１８３】
そして、コンテンツＣの配信指示を受信した場合（ステップＳ２２０１：Ｙｅｓ）、端末Ｔｉは、他端末Ｔｊとアドホック接続する（ステップＳ２２０２）。つぎに、端末Ｔｉは、配信対象となるコンテンツＣをメモリ４０２（例えば、図４参照）から読み出す（ステップＳ２２０３）。
【０１８４】
そして、端末Ｔｉは、読み出したコンテンツＣを他端末Ｔｊに配信して（ステップＳ２２０４）、本フローチャートによる一連の処理を終了する。これにより、情報処理装置１００の代わりに、ダウンロード済みのコンテンツＣを他端末Ｔｊに対して配信することができる。
【０１８５】
以上説明したように、実施の形態にかかる情報処理装置１００によれば、第１の端末ＴｉからのコンテンツＣの配信要求を受け付けたことに応じて、接続中端末数Ｎが同時接続数上限Ｎmax以上であるか否かを判断することができる。また、情報処理装置１００によれば、接続中端末数Ｎが同時接続数上限Ｎmax以上の場合、生徒ＤＢ２２０およびダウンロード状況ＤＢ２４０を参照して、第１の端末Ｔｉの無線接続先となる第２の端末Ｔｊを決定することができる。そして、情報処理装置１００によれば、決定した第２の端末Ｔｊから第１の端末ＴｉへのコンテンツＣの配信を指示することができる。
【０１８６】
これにより、アクセスポイントＡＰｋの接続中端末数Ｎが同時接続数上限Ｎmaxに達したときは、端末間のアドホック接続を利用して、コンテンツＣの配信が完了した第２の端末Ｔｊから第１の端末ＴｉへコンテンツＣを配信させることができる。したがって、端末Ｔ１〜Ｔｎに対してコンテンツＣを効率的に配信することができる。例えば、動画を含む教材や長期休暇に向けた宿題などの大容量の電子学習教材を生徒に配信する場合に、全端末Ｔ１〜Ｔｎへのダウンロードを短時間で行うことが可能となり、授業開始や帰宅時間の遅れを回避することができる。
【０１８７】
また、情報処理装置１００によれば、コンテンツＣの配信が完了した端末Ｔのうち、第１の端末Ｔｉに対応する座席に隣接する他の座席に対応する端末Ｔを、第２の端末Ｔｊに決定することができる。これにより、距離的に近い端末間でアドホック接続させることができ、教室といった狭い空間内で無線接続中の端末同士ができるだけ干渉し合わないようなアドホック接続を実現することができる。
【０１８８】
また、情報処理装置１００によれば、コンテンツＣの配信が完了し、かつ、無線接続中ではない端末Ｔのうち、第１の端末Ｔｉに対応する座席に隣接する他の座席に対応する端末Ｔを、第２の端末Ｔｊに決定することができる。これにより、コンテンツＣを配信中ではない第２の端末Ｔｊから第１の端末ＴｉへコンテンツＣをダウンロードさせることが可能となり、ダウンロード時間の増大を防ぐことができる。
【０１８９】
また、情報処理装置１００によれば、第１の端末Ｔｉに対応する座席に隣接する他の座席が空席の場合には、他の座席に隣接する別の座席に対応する端末Ｔを、第２の端末Ｔｊに決定することができる。これにより、欠席している生徒の端末Ｔが無線接続先に選ばれる不具合を防ぐことができる。また、欠席で隣の生徒がいない場合であっても、距離的にできるだけ近い端末間でアドホック接続させることができる。
【０１９０】
また、情報処理装置１００によれば、コンテンツＣの配信が完了し、かつ、無線接続中ではない端末Ｔのうち、当該端末Ｔと第１の端末Ｔｉとの間に無線接続中の他端末が存在しない端末Ｔを、第２の端末Ｔｊに決定することができる。これにより、無線接続中の端末同士ができるだけ干渉し合わないようなアドホック接続を実現することができる。
【０１９１】
また、情報処理装置１００によれば、コンテンツＣの配信が完了し、かつ、無線接続中ではない端末Ｔのうち、当該端末Ｔと第１の端末Ｔｉとを結ぶ線分が、無線接続中の端末間あるいは端末／アクセスポイント間を結ぶ線分と交差または接触しない端末Ｔを、第２の端末Ｔｊに決定することができる。これにより、無線接続中の端末同士ができるだけ干渉し合わないようなアドホック接続を実現することができる。
【０１９２】
また、情報処理装置１００によれば、接続中端末数Ｎが同時接続数上限Ｎmax未満の場合、アクセスポイントＡＰを介して、第１の端末Ｔｉに対してコンテンツＣを配信することができる。これにより、アクセスポイントＡＰｋの接続中端末数Ｎが同時接続数上限Ｎmaxに達していないときは、アクセスポイント経由でコンテンツＣをダウンロードさせることができる。
【０１９３】
なお、本実施の形態で説明した配信制御方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本配信制御プログラムは、ハードディスク、フレキシブルディスク、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）−ＲＯＭ、ＭＯ（Ｍａｇｎｅｔｏ−Ｏｐｔｉｃａｌ  ｄｉｓｋ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、ＵＳＢ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本配信制御プログラムは、インターネット等のネットワークを介して配布してもよい。
【０１９４】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１９５】
（付記１）コンピュータに、
アクセスポイントを介して接続される複数の端末のうちの第１の端末からのコンテンツの配信要求を受け付けたことに応じて、前記アクセスポイントを介してコンテンツを配信中の端末数が閾値以上であるか否かを判断し、
前記端末数が前記閾値以上の場合、前記コンテンツの配信状況を記憶する記憶部を参照して、前記配信要求を受け付けたコンテンツの配信が完了した端末の中から、前記複数の端末それぞれの位置情報を記憶する記憶部を参照して、前記第１の端末の無線接続先となる第２の端末を決定し、
決定した前記第２の端末から前記第１の端末への前記配信要求を受け付けたコンテンツの配信を指示する、
処理を実行させることを特徴とする配信制御プログラム。
【０１９６】
（付記２）前記位置情報は、前記複数の端末それぞれに対応する座席の位置を示しており、
前記決定する処理は、
前記配信要求を受け付けたコンテンツの配信が完了した端末のうち、前記第１の端末に対応する座席に隣接する他の座席に対応する端末を、前記第２の端末に決定する、ことを特徴とする付記１に記載の配信制御プログラム。
【０１９７】
（付記３）前記決定する処理は、
前記配信要求を受け付けたコンテンツの配信が完了し、かつ、無線接続中ではない端末のうち、前記第１の端末に対応する座席に隣接する他の座席に対応する端末を、前記第２の端末に決定する、ことを特徴とする付記２に記載の配信制御プログラム。
【０１９８】
（付記４）前記記憶部は、前記複数の端末それぞれに対応する座席の空席状況を記憶しており、
前記決定する処理は、
前記他の座席が空席の場合には、前記他の座席に隣接する別の座席に対応する端末を、前記第２の端末に決定することを特徴とする付記２または３に記載の配信制御プログラム。
【０１９９】
（付記５）前記決定する処理は、
前記配信要求を受け付けたコンテンツの配信が完了し、かつ、無線接続中ではない端末のうち、当該端末と前記第１の端末との間に無線接続中の他端末が存在しない端末を、前記第２の端末に決定する、処理を実行させることを特徴とする付記１〜４のいずれか一つに記載の配信制御プログラム。
【０２００】
（付記６）前記決定する処理は、
前記配信要求を受け付けたコンテンツの配信が完了し、かつ、無線接続中ではない端末のうち、当該端末と前記第１の端末とを結ぶ線分が、無線接続中の端末間あるいは端末／アクセスポイント間を結ぶ線分と交差または接触しない端末を、前記第２の端末に決定する、処理を実行させることを特徴とする付記１〜５のいずれか一つに記載の配信制御プログラム。
【０２０１】
（付記７）前記コンピュータに、
前記端末数が前記閾値未満の場合には、前記アクセスポイントを介して、前記第１の端末に対して前記コンテンツを配信する、処理を実行させることを特徴とする付記１〜６のいずれか一つに記載の配信制御プログラム。
【０２０２】
（付記８）アクセスポイントを介して接続される複数の端末のうちの第１の端末からのコンテンツの配信要求を受け付けたことに応じて、前記アクセスポイントを介してコンテンツを配信中の端末数が閾値以上であるか否かを判断し、
前記端末数が前記閾値以上の場合、前記コンテンツの配信状況を記憶する記憶部を参照して、前記配信要求を受け付けたコンテンツの配信が完了した端末の中から、前記複数の端末それぞれの位置情報を記憶する記憶部を参照して、前記第１の端末の無線接続先となる第２の端末を決定し、
決定した前記第２の端末から前記第１の端末への前記配信要求を受け付けたコンテンツの配信を指示する、
制御部を有することを特徴とする情報処理装置。
【０２０３】
（付記９）コンピュータが、
アクセスポイントを介して接続される複数の端末のうちの第１の端末からのコンテンツの配信要求を受け付けたことに応じて、前記アクセスポイントを介してコンテンツを配信中の端末数が閾値以上であるか否かを判断し、
前記端末数が前記閾値以上の場合、前記コンテンツの配信状況を記憶する記憶部を参照して、前記配信要求を受け付けたコンテンツの配信が完了した端末の中から、前記複数の端末それぞれの位置情報を記憶する記憶部を参照して、前記第１の端末の無線接続先となる第２の端末を決定し、
決定した前記第２の端末から前記第１の端末への前記配信要求を受け付けたコンテンツの配信を指示する、
処理を実行することを特徴とする配信制御方法。
【０２０４】
（付記１０）コンピュータに、
授業単位に特定される複数の端末のうちの第１の端末からのコンテンツの配信要求を受け付けたことに応じて、前記複数の端末が接続するアクセスポイントを介してコンテンツを配信中の端末数が閾値以上であるか否かを判断し、
前記端末数が前記閾値以上の場合、コンテンツの配信状況を記憶する記憶部を参照して、前記配信要求を受け付けたコンテンツの配信が完了した端末を特定し、特定した端末の中から、前記複数の端末それぞれの位置情報を記憶する記憶部を参照して、前記第１の端末の無線接続先となる第２の端末を決定し、
決定した前記第２の端末から前記第１の端末への前記配信要求を受け付けたコンテンツの配信を指示する、
処理を実行させることを特徴とする配信制御プログラム。
【符号の説明】
【０２０５】
１００  情報処理装置
１１０  記憶部
１０１〜１０９，Ｔ１〜Ｔｎ，Ｔｉ，Ｔｊ  端末
２００  情報配信システム
２２０  生徒ＤＢ
２３０  コンテンツＤＢ
２４０  ダウンロード状況ＤＢ
２５０  無線ＬＡＮ環境ＤＢ
９０１  受付部
９０２  判断部
９０３  決定部
９０４  指示部
９０５  配信部
ＡＰ，ＡＰ１〜ＡＰｍ，ＡＰｋ  アクセスポイント
【図１】
0006627619.tif 000002
【図２】
0006627619.tif 000003
【図３】
0006627619.tif 000004
【図４】
0006627619.tif 000005
【図５】
0006627619.tif 000006
【図６】
0006627619.tif 000007
【図７】
0006627619.tif 000008
【図８】
0006627619.tif 000009
【図９】
0006627619.tif 000010
【図１０】
0006627619.tif 000011
【図１１】
0006627619.tif 000012
【図１２】
0006627619.tif 000013
【図１３】
0006627619.tif 000014
【図１４】
0006627619.tif 000015
【図１５】
0006627619.tif 000016
【図１６】
0006627619.tif 000017
【図１７】
0006627619.tif 000018
【図１８】
0006627619.tif 000019
【図１９】
0006627619.tif 000020
【図２０】
0006627619.tif 000021
【図２１】
0006627619.tif 000022
【図２２】
0006627619.tif 000023