(57)【特許請求の範囲】
【請求項１】
仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて、カテゴリに関する情報とカテゴリ以外の属性項目に関する情報とを含む属性情報を記憶する属性情報記憶手段と、
ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定手段と、
前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が前記判定領域内に含まれていると判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化するグループ化手段と、
前記カテゴリに関するカテゴリ条件と、比較対象として用いる前記カテゴリ以外の属性項目と、を対応づけてなる比較対象項目データを記憶する手段と、
前記第１のオブジェクト及び前記第２のオブジェクトの各々に関連づけられたカテゴリが満足する前記カテゴリ条件に対応づけられた属性項目について、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、を比較する比較手段と、
を含み、
前記グループ化手段は、前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が含まれていると前記判定領域内に判定された場合に、前記比較手段の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化する、
ことを特徴とする情報処理システム。
【請求項２】
仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて属性情報を記憶する属性情報記憶手段と、
ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定手段と、
前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が前記判定領域内に含まれていると判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化するグループ化手段と、
前記仮想二次元平面又は前記仮想三次元空間におけるオブジェクトの配置状況に基づいて、前記判定領域の広さを制御する判定領域制御手段と、
を含むことを特徴とする情報処理システム。
【請求項３】
請求項２に記載の情報処理システムにおいて、
前記判定領域制御手段は、前記仮想二次元平面又は前記仮想三次元空間に配置されるオブジェクトの数に基づいて、前記判定領域の広さを制御する手段を含むことを特徴とする情報処理システム。
【請求項４】
請求項２又は３に記載の情報処理システムにおいて、
前記判定領域制御手段は、前記オブジェクトの密集の程度に基づいて、前記判定領域の広さを制御する手段を含むことを特徴とする情報処理システム。
【請求項５】
仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて属性情報を記憶する属性情報記憶手段と、
ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定手段と、
前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が前記判定領域内に含まれていると判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化する第１のグループ化手段と、
オブジェクトグループがすでに存在している状態において、該オブジェクトグループに対応する属性情報に基づいて、該オブジェクトグループに属するオブジェクトと、前記第１のオブジェクト、又は、前記第１のグループ化手段によって生成された、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化してなるオブジェクトグループに属するオブジェクトと、をグループ化する第２のグループ化手段と、
を含むことを特徴とする情報処理システム。
【請求項６】
請求項５に記載の情報処理システムにおいて、
前記第２のグループ化手段は、前記第２のオブジェクトがすでに第２のオブジェクトグループに属している状態において、前記グループ化手段によって前記第１のオブジェクトと前記第２のオブジェクトとをグループ化してなる第１のオブジェクトグループが生成された場合、前記第１のオブジェクトグループに対応する属性情報と、前記第２のオブジェクトグループに対応する属性情報と、の比較結果に基づいて、前記第１のオブジェクトグループに属するオブジェクトと、前記第２のオブジェクトグループに属するオブジェクトと、をグループ化する手段を含むことを特徴とする情報処理システム。
【請求項７】
請求項５又は６に記載の情報処理システムにおいて、
前記第２のグループ化手段は、前記第２のオブジェクトがすでにオブジェクトグループに属している状態において、前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が前記判定領域内に含まれていると判定された場合、前記第１のオブジェクトに関連づけられた属性情報と、前記オブジェクトグループに対応する属性情報と、の比較結果に基づいて、前記第１のオブジェクトと、前記オブジェクトグループに属するオブジェクトと、をグループ化する手段を含むことを特徴とする情報処理システム。
【請求項８】
請求項５乃至７のいずれかに記載された情報処理システムにおいて、
オブジェクトグループがすでに存在している状態において、前記第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又前記第１のオブジェクトの位置が更新された場合、前記第１のオブジェクトと、前記オブジェクトグループと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記オブジェクトグループとの他方が含まれるか否かを判定する手段を含み、
前記第２のグループ化手段は、前記第１のオブジェクトと前記オブジェクトグループとの前記他方が前記判定領域内に含まれると判定された場合、前記第１のオブジェクトに関連づけられた属性情報と、前記オブジェクトグループに対応する属性情報と、の比較結果に基づいて、前記第１のオブジェクトと、前記オブジェクトグループに属するオブジェクトと、をグループ化する手段を含む、
ことを特徴とする情報処理システム。
【請求項９】
仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて属性情報を記憶する属性情報記憶手段と、
ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定手段と、
前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が前記判定領域内に含まれていると判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化するグループ化手段と、
前記仮想二次元平面又は前記仮想三次元空間に配置されたオブジェクトの配置状態が変化した場合に、該オブジェクトが属するオブジェクトグループから該オブジェクトを取り除く取り除き手段と、
を含むことを特徴とする情報処理システム。
【請求項１０】
請求項９に記載の情報処理システムにおいて、
前記取り除き手段は、前記ユーザの操作に基づいて、前記仮想二次元平面又は前記仮想三次元空間からオブジェクトが取り除かれた場合、該オブジェクトが属するオブジェクトグループから該オブジェクトを取り除く手段を含むことを特徴とする情報処理システム。
【請求項１１】
請求項９又は１０に記載の情報処理システムにおいて、
前記取り除き手段は、
前記ユーザの操作に基づいて、前記仮想二次元平面又は前記仮想三次元空間に配置されるオブジェクトの位置が変更された場合、該オブジェクトと、該オブジェクトが属するオブジェクトグループと、の一方の位置に基づく判定領域内に、該オブジェクトと該オブジェクトグループとの他方が含まれるか否かを判定する手段と、
前記オブジェクトと前記オブジェクトグループとの前記他方が前記判定領域内に含まれないと判定された場合、該オブジェクトを該オブジェクトグループから取り除く手段と、を含む、
ことを特徴とする情報処理システム。
【請求項１２】
仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて属性情報を記憶する属性情報記憶手段と、
ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定手段と、
前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が前記判定領域内に含まれていると判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化するグループ化手段と、
前記仮想二次元平面又は前記仮想三次元空間の少なくとも一部を表す画面を表示手段に表示させる手段と、
前記グループ化手段によって生成されたオブジェクトグループの位置に対応する前記画面内の位置に、該オブジェクトグループに対応する広告を表示させる手段と、
を含むことを特徴とする情報処理システム。
【請求項１３】
請求項１２に記載の情報処理システムにおいて、
複数の表示手段の各々に、各表示手段ごとに設定される、前記仮想二次元平面又は前記仮想三次元空間の表示対象領域を表す画面を表示させる手段と、
前記複数の表示手段にそれぞれ対応する複数の表示対象領域の重なり領域内に、前記グループ化手段によって生成されたオブジェクトグループが含まれる場合、該オブジェクトグループに対応する広告オブジェクトを前記重なり領域内に配置する手段と、
を含むことを特徴とする情報処理システム。
【請求項１４】
仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて、カテゴリに関する情報とカテゴリ以外の属性項目に関する情報とを含む属性情報を記憶する属性情報記憶手段の記憶内容の少なくとも一部を参照するステップと、
ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定ステップと、
前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が前記判定領域内に含まれていると判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化するグループ化ステップと、
前記カテゴリに関するカテゴリ条件と、比較対象として用いる前記カテゴリ以外の属性項目と、を対応づけてなる比較対象項目データを記憶する手段の記憶内容の少なくとも一部を参照するステップと、
前記第１のオブジェクト及び前記第２のオブジェクトの各々に関連づけられたカテゴリが満足する前記カテゴリ条件に対応づけられた属性項目について、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、を比較する比較ステップと、
を含み、
前記グループ化ステップでは、前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が含まれていると前記判定領域内に判定された場合に、前記比較ステップにおける比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとがグループ化される、
ことを特徴とする情報処理システムの制御方法。
【請求項１５】
仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて属性情報を記憶する属性情報記憶手段の記憶内容の少なくとも一部を参照するステップと、
ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定ステップと、
前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が前記判定領域内に含まれていると判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化するグループ化ステップと、
前記仮想二次元平面又は前記仮想三次元空間におけるオブジェクトの配置状況に基づいて、前記判定領域の広さを制御する判定領域制御ステップと、
を含むことを特徴とする情報処理システムの制御方法。
【請求項１６】
仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて属性情報を記憶する属性情報記憶手段の記憶内容の少なくとも一部を参照するステップと、
ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定ステップと、
前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が前記判定領域内に含まれていると判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化する第１のグループ化ステップと、
オブジェクトグループがすでに存在している状態において、該オブジェクトグループに対応する属性情報に基づいて、該オブジェクトグループに属するオブジェクトと、前記第１のオブジェクト、又は、前記第１のグループ化ステップによって生成された、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化してなるオブジェクトグループに属するオブジェクトと、をグループ化する第２のグループ化ステップと、
を含むことを特徴とする情報処理システムの制御方法。
【請求項１７】
仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて属性情報を記憶する属性情報記憶手段の記憶内容の少なくとも一部を参照するステップと、
ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定ステップと、
前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が前記判定領域内に含まれていると判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化するグループ化ステップと、
前記仮想二次元平面又は前記仮想三次元空間に配置されたオブジェクトの配置状態が変化した場合に、該オブジェクトが属するオブジェクトグループから該オブジェクトを取り除く取り除きステップと、
を含むことを特徴とする情報処理システムの制御方法。
【請求項１８】
仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて属性情報を記憶する属性情報記憶手段の記憶内容の少なくとも一部を参照するステップと、
ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定ステップと、
前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が前記判定領域内に含まれていると判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化するグループ化ステップと、
前記仮想二次元平面又は前記仮想三次元空間の少なくとも一部を表す画面を表示手段に表示させるステップと、
前記グループ化ステップによって生成されたオブジェクトグループの位置に対応する前記画面内の位置に、該オブジェクトグループに対応する広告を表示させるステップと、
を含むことを特徴とする情報処理システムの制御方法。
【請求項１９】
仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて、カテゴリに関する情報とカテゴリ以外の属性項目に関する情報とを含む属性情報を記憶する属性情報記憶手段の記憶内容の少なくとも一部を参照する手段、
ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定手段、
前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が前記判定領域内に含まれていると判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化するグループ化手段、
前記カテゴリに関するカテゴリ条件と、比較対象として用いる前記カテゴリ以外の属性項目と、を対応づけてなる比較対象項目データを記憶する手段の記憶内容の少なくとも一部を参照する手段、及び、
前記第１のオブジェクト及び前記第２のオブジェクトの各々に関連づけられたカテゴリが満足する前記カテゴリ条件に対応づけられた属性項目について、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、を比較する比較手段、
としてコンピュータを機能させ、
前記グループ化手段は、前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が含まれていると前記判定領域内に判定された場合に、前記比較手段の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化する、
ことを特徴とするプログラム。
【請求項２０】
仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて属性情報を記憶する属性情報記憶手段の記憶内容の少なくとも一部を参照する手段、
ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定手段、
前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が含まれていると前記判定領域内に判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化するグループ化手段、及び、
前記仮想二次元平面又は前記仮想三次元空間におけるオブジェクトの配置状況に基づいて、前記判定領域の広さを制御する判定領域制御手段、
としてコンピュータを機能させるためのプログラム。
【請求項２１】
仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて属性情報を記憶する属性情報記憶手段の記憶内容の少なくとも一部を参照する手段、
ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定手段、
前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が含まれていると前記判定領域内に判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化する第１のグループ化手段、及び、
オブジェクトグループがすでに存在している状態において、該オブジェクトグループに対応する属性情報に基づいて、該オブジェクトグループに属するオブジェクトと、前記第１のオブジェクト、又は、前記第１のグループ化手段によって生成された、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化してなるオブジェクトグループに属するオブジェクトと、をグループ化する第２のグループ化手段、
としてコンピュータを機能させるためのプログラム。
【請求項２２】
仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて属性情報を記憶する属性情報記憶手段の記憶内容の少なくとも一部を参照する手段、
ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定手段、
前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が含まれていると前記判定領域内に判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化するグループ化手段、及び、
前記仮想二次元平面又は前記仮想三次元空間に配置されたオブジェクトの配置状態が変化した場合に、該オブジェクトが属するオブジェクトグループから該オブジェクトを取り除く取り除き手段、
としてコンピュータを機能させるためのプログラム。
【請求項２３】
仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて属性情報を記憶する属性情報記憶手段の記憶内容の少なくとも一部を参照する手段、
ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定手段、
前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が含まれていると前記判定領域内に判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化するグループ化手段、
前記仮想二次元平面又は前記仮想三次元空間の少なくとも一部を表す画面を表示手段に表示させる手段、及び、
前記グループ化手段によって生成されたオブジェクトグループの位置に対応する前記画面内の位置に、該オブジェクトグループに対応する広告を表示させる手段、
としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理システム、情報処理システムの制御方法、プログラム、及び情報記憶媒体に関する。
【背景技術】
【０００２】
オブジェクトをグループ化する手法として様々な手法が提案されている。例えば、振り分け条件が関連づけられたグループ（フォルダ又はカテゴリ等）を予め定義しておき、オブジェクトを、当該オブジェクトが満足する振り分け条件に関連づけられたグループに振り分ける手法が知られている（例えば特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−９１５４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記のような手法では、振り分け条件が関連づけられたグループ（フォルダ又はカテゴリ等）を予め定義しておく必要があった。【０００５】
本発明は上記課題に鑑みてなされたものであって、その目的は、振り分け条件が関連づけられたグループを予め定義する必要なく、オブジェクトをグループ化することが可能な情報処理システム、情報処理システムの制御方法、プログラム、及び情報記憶媒体を提供することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明に係る情報処理システムは、仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて属性情報を記憶する属性情報記憶手段と、ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定手段と、前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が前記判定領域内に含まれていると判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化するグループ化手段と、を含むことを特徴とする。【０００７】
また、本発明に係る情報処理システムの制御方法は、仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて属性情報を記憶する属性情報記憶手段の記憶内容の少なくとも一部を参照するステップと、ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定ステップと、前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が前記判定領域内に含まれていると判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化するグループ化ステップと、を含むことを特徴とする。【０００８】
また、本発明に係るプログラムは、仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて属性情報を記憶する属性情報記憶手段の記憶内容の少なくとも一部を参照する手段、ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定手段、及び、前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が前記判定領域内に含まれていると判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化するグループ化手段、としてコンピュータを機能させるためのプログラムである。【０００９】
また、本発明に係る情報記憶媒体は、仮想二次元平面又は仮想三次元空間に配置される複数のオブジェクトに関連づけて属性情報を記憶する属性情報記憶手段の記憶内容の少なくとも一部を参照する手段、ユーザの操作に基づいて、第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又は前記ユーザの操作に基づいて、第１のオブジェクトの位置が更新された場合に、前記第１のオブジェクトと、前記第１オブジェクトとは異なる第２のオブジェクトと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記第２のオブジェクトとの他方が含まれているか否かを判定する判定手段、及び、前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が前記判定領域内に含まれていると判定された場合に、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化するグループ化手段、としてコンピュータを機能させるためのプログラムを記録したコンピュータ読み取り可能な情報記憶媒体である。【００１０】
また、本発明の一態様では、前記属性情報は、カテゴリに関する情報と、カテゴリ以外の属性項目に関する情報と、を含み、前記情報処理システムは、前記カテゴリに関するカテゴリ条件と、比較対象として用いる前記カテゴリ以外の属性項目と、を対応づけてなる比較対象項目データを記憶する手段と、前記第１のオブジェクト及び前記第２のオブジェクトの各々に関連づけられたカテゴリが満足する前記カテゴリ条件に対応づけられた属性項目について、前記第１のオブジェクトに関連づけられた属性情報と、前記第２のオブジェクトに関連づけられた属性情報と、を比較する比較手段と、を含み、前記グループ化手段は、前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が含まれていると前記判定領域内に判定された場合に、前記比較手段の比較結果に基づいて、前記第１のオブジェクトと前記第２のオブジェクトとをグループ化するようにしてもよい。【００１１】
また、本発明の一態様では、前記仮想二次元平面又は前記仮想三次元空間に配置されるオブジェクトの数に基づいて、前記判定領域の広さを制御する手段を含むようにしてもよい。【００１２】
また、本発明の一態様では、前記オブジェクトの密集の程度に基づいて、前記判定領域の広さを制御する手段を含むようにしてもよい。【００１３】
また、本発明の一態様では、前記第２のオブジェクトがすでに第２のオブジェクトグループに属している状態において、前記グループ化手段によって前記第１のオブジェクトと前記第２のオブジェクトとをグループ化してなる第１のオブジェクトグループが生成された場合、前記第１のオブジェクトグループに対応する属性情報と、前記第２のオブジェクトグループに対応する属性情報と、の比較結果に基づいて、前記第１のオブジェクトグループに属するオブジェクトと、前記第２のオブジェクトグループに属するオブジェクトと、をグループ化する手段を含むようにしてもよい。【００１４】
また、本発明の一態様では、前記第２のオブジェクトがすでにオブジェクトグループに属している状態において、前記第１のオブジェクトと前記第２のオブジェクトとの前記他方が前記判定領域内に含まれていると判定された場合、前記第１のオブジェクトに関連づけられた属性情報と、前記オブジェクトグループに対応する属性情報と、の比較結果に基づいて、前記第１のオブジェクトと、前記オブジェクトグループに属するオブジェクトと、をグループ化する手段を含むようにしてもよい。【００１５】
また、本発明の一態様では、オブジェクトグループがすでに存在している状態において、前記第１のオブジェクトが前記仮想二次元平面又は前記仮想三次元空間に新たに配置された場合、又前記第１のオブジェクトの位置が更新された場合、前記第１のオブジェクトと、前記オブジェクトグループと、の一方の位置に基づく判定領域内に、前記第１のオブジェクトと前記オブジェクトグループとの他方が含まれるか否かを判定する手段と、前記第１のオブジェクトと前記オブジェクトグループとの前記他方が前記判定領域内に含まれると判定された場合、前記第１のオブジェクトに関連づけられた属性情報と、前記オブジェクトグループに対応する属性情報と、の比較結果に基づいて、前記第１のオブジェクトと、前記オブジェクトグループに属するオブジェクトと、をグループ化する手段と、を含むようにしてもよい。【００１６】
また、本発明の一態様では、前記ユーザの操作に基づいて、前記仮想二次元平面又は前記仮想三次元空間からオブジェクトが取り除かれた場合、該オブジェクトが属するオブジェクトグループから該オブジェクトを取り除く手段を含むようにしてもよい。【００１７】
また、本発明の一態様では、前記ユーザの操作に基づいて、前記仮想二次元平面又は前記仮想三次元空間に配置されるオブジェクトの位置が変更された場合、該オブジェクトと、該オブジェクトが属するオブジェクトグループと、の一方の位置に基づく判定領域内に、該オブジェクトと該オブジェクトグループとの他方が含まれるか否かを判定する手段と、前記オブジェクトと前記オブジェクトグループとの前記他方が前記判定領域内に含まれないと判定された場合、該オブジェクトを該オブジェクトグループから取り除く手段と、を含むようにしてもよい。【００１８】
また、本発明の一態様では、前記仮想二次元平面又は前記仮想三次元空間の少なくとも一部を表す画面を表示手段に表示させる手段と、前記グループ化手段によって生成されたオブジェクトグループの位置に対応する前記画面内の位置に、該オブジェクトグループに対応する広告を表示させる手段と、を含むようにしてもよい。【００１９】
また、本発明の一態様では、複数の表示手段の各々に、各表示手段ごとに設定される、前記仮想二次元平面又は前記仮想三次元空間の表示対象領域を表す画面を表示させる手段と、前記複数の表示手段にそれぞれ対応する複数の表示対象領域の重なり領域内に、前記グループ化手段によって生成されたオブジェクトグループが含まれる場合、該オブジェクトグループに対応する広告オブジェクトを前記重なり領域内に配置する手段と、を含むようにしてもよい。
【発明の効果】
【００２０】
本発明によれば、振り分け条件が関連づけられたグループを予め定義する必要なく、オブジェクトをグループ化することが可能になる。
【図面の簡単な説明】
【００２１】
【図１】本発明の実施形態に係る情報処理システムの全体構成の一例を示す図である。
【図２】仮想二次元平面の一例を示す図である。
【図３】画面の一例を示す図である。
【図４】オブジェクトテーブルの一例を示す図である。
【図５】オブジェクトグループテーブルの一例を示す図である。
【図６】ユーザが行う操作の一例を示す図である。
【図７】グループ化処理について説明するための図である。
【図８】オブジェクトグループテーブルの変化について説明するための図である。
【図９】ユーザが行う操作の一例を示す図である。
【図１０】グループ化処理について説明するための図である。
【図１１】オブジェクトグループテーブルの変化について説明するための図である。
【図１２】オブジェクトグループテーブルの変化について説明するための図である。
【図１３】ユーザが行う操作の一例を示す図である。
【図１４】グループ解除処理及びグループ化処理について説明するための図である。
【図１５】オブジェクトグループテーブルの変化について説明するための図である。
【図１６】ユーザが行う操作の一例を示す図である。
【図１７】オブジェクトグループテーブルの変化について説明するための図である。
【図１８】本発明の実施形態に係る情報処理システムの機能ブロック図である。
【図１９】表示対象領域テーブルの一例を示す図である。
【図２０】情報処理システムで実行される処理の一例を示すフロー図である。
【図２１】情報処理システムで実行される処理の一例を示すフロー図である。
【図２２】情報処理システムで実行される処理の一例を示すフロー図である。
【図２３】情報処理システムで実行される処理の一例を示すフロー図である。
【図２４】オブジェクトグループを広告に利用する場合について説明するための図である。
【図２５】広告の位置の設定方法について説明するための図である。
【図２６】オブジェクトグループテーブルの変化について説明するための図である。
【図２７】情報処理システムで実行される処理の他の一例を示すフロー図である。
【図２８】情報処理システムで実行される処理の他の一例を示すフロー図である。
【図２９】対応関係情報の一例を示す図である。
【図３０】比較対象項目テーブルの一例を示す図である。
【発明を実施するための形態】
【００２２】
以下、本発明の実施形態の例について図面に基づき詳細に説明する。
【００２３】
図１は、本発明の実施形態に係る情報処理システム１の全体構成の一例を示す。図１に示すように、本実施形態に係る情報処理システム１は、サーバ１０と、データベース１６と、複数のユーザ端末２０と、を含む。サーバ１０と複数のユーザ端末２０とは、例えばインターネット等を含んで構成される通信ネットワーク２に接続されており、サーバ１０とユーザ端末２０との間で相互にデータ通信が可能である。
【００２４】
サーバ１０は制御部１１、主記憶部１２、補助記憶部１３、通信部１４、及び光ディスクドライブ部１５を含む。制御部１１は例えば１又は複数のＣＰＵを含み、補助記憶部１３に記憶されたオペレーションシステム又はプログラムに従って情報処理を実行する。主記憶部１２は例えばＲＡＭであり、補助記憶部１３は例えばハードディスク又はソリッドステートドライブである。通信部１４は通信ネットワーク２を介してデータ通信を行うためのものである。光ディスクドライブ部１５は、光ディスク（情報記憶媒体）に記録されたプログラムやデータを読み出すためのものである。
【００２５】
例えば、プログラムやデータは光ディスク（情報記憶媒体）を介して補助記憶部１３に供給される。すなわち、光ディスクに記憶されたプログラムやデータが光ディスクドライブ部１５によって読み出され、補助記憶部１３に記憶される。なお、サーバ１０は、光ディスク以外の情報記憶媒体（例えばメモリカード）に記憶されたプログラム又はデータを読み出すための構成要素を含むようにしてもよい。そして、光ディスク以外の情報記憶媒体（例えばメモリカード）を介してプログラムやデータが補助記憶部１３に供給されるようにしてもよい。また、プログラム及びデータは通信ネットワーク２を介して補助記憶部１３に供給されるようにしてもよい。
【００２６】
サーバ１０はデータベース１６にアクセスできるようになっている。なお、データベース１６はサーバ１０内に構築されるようにしてもよいし、サーバ１０とは別のサーバ内に構築されるようにしてもよい。
【００２７】
ユーザ端末２０はユーザによって使用される情報処理装置である。ユーザ端末２０は制御部２１、主記憶部２２、補助記憶部２３、通信部２４、表示部２５、音声出力部２６、及び操作部２７を含む。制御部２１、主記憶部２２、補助記憶部２３、及び通信部２４はサーバ１０の制御部１１、主記憶部１２、補助記憶部１３、及び通信部１４と同様である。
【００２８】
例えば、プログラム及びデータは通信ネットワーク２を介して補助記憶部２３に供給される。なお、ユーザ端末２０は光ディスクドライブ部を備えるようにしてもよい。そして、プログラムやデータが光ディスク（情報記憶媒体）を介して補助記憶部２３に供給されるようにしてもよい。また、ユーザ端末２０は、光ディスク以外の情報記憶媒体（例えばメモリカード）に記憶されたプログラム又はデータを読み出すための構成要素を含むようにしてもよい。そして、光ディスク以外の情報記憶媒体（例えばメモリカード）を介してプログラムやデータが補助記憶部２３に供給されるようにしてもよい。
【００２９】
表示部２５は例えば液晶ディスプレイ又は有機ＥＬディスプレイ等であり、各種画面を表示する。音声出力部２６は例えばスピーカ又はヘッドホン端子等であり、各種音声を出力する。
【００３０】
操作部２７はユーザが操作を行うためのものである。例えば、表示部２５に表示される画面内の位置をユーザが指示するためのポインティングデバイスが操作部２７として備えられる。例えば、表示部２５の上に重ねて設けられるタッチパネルがユーザ端末２０に備えられる。なお、タッチパネルの代わりに、例えばマウス又はスティック等がユーザ端末２０に備えられるようにしてもよい。
【００３１】
情報処理システム１では、ユーザ同士がコミュニケーションをとることができるようになっている。ユーザ同士のコミュニケーションは、例えばユーザ端末２０の間でテキストデータ又は音声データが直接的に又はサーバ１０を介して授受されることによって実現される。
【００３２】
特に、情報処理システム１では、ユーザが他のユーザとコミュニケーションをとりながら各種情報をグループ化できるようになっている。以下、このグループ化機能について説明する。なお以下では、商品情報をグループ化する場合を例としてグループ化機能について説明する。
【００３３】
情報処理システム１では、複数のユーザに共通な仮想的な二次元平面が構築される。図２は仮想二次元平面の一例を示す。図２に示す仮想二次元平面３０には複数のオブジェクト３２Ａ〜３２Ｈが配置されている。なお以下では、オブジェクト３２Ａ〜３２Ｈのことを総称して「オブジェクト３２」と記載する場合がある。
【００３４】
例えば、仮想二次元平面３０は机を模した仮想的な平面である。また、オブジェクト３２は商品情報に対応するオブジェクトであり、例えば商品画像である。
【００３５】
情報処理システム１では、仮想二次元平面３０の一部領域が表示対象領域３４として設定され、表示対象領域３４の様子を表す画面がユーザ端末２０の表示部２５に表示される。図３はユーザ端末２０の表示部２５に表示される画面の一例を示す。なお、表示対象領域３４はユーザ端末２０ごとに設定され、表示対象領域３４はユーザの操作に従って移動する。
【００３６】
商品情報をグループ化するためにユーザが行う操作を説明する前に、データベース１６に記憶されるデータについて説明しておく。図４及び図５はデータベース１６に記憶されるデータの一例を示す。
【００３７】
図４はオブジェクトテーブルの一例を示す。オブジェクトテーブルはオブジェクト３２に関するデータである。図４に示すオブジェクトテーブルは「オブジェクトＩＤ」、「画像」、「位置情報」、及び「属性情報」フィールドを含む。
【００３８】
「オブジェクトＩＤ」フィールドには、オブジェクト３２を一意に識別する情報（オブジェクトＩＤ）が記憶される。ここで説明している例ではオブジェクト３２が商品情報に対応しているため、オブジェクトＩＤは、商品情報を一意に識別する情報としての役割も果たしている。なお、オブジェクトＩＤが「Ａ」であるオブジェクト３２は、図２におけるオブジェクト３２Ａに対応している。同様に、オブジェクトＩＤが「Ｂ」〜「Ｈ」であるオブジェクト３２は、それぞれ、図２におけるオブジェクト３２Ｂ〜３２Ｈに対応している。
【００３９】
「画像」フィールドには、オブジェクト３２に相当する商品画像を示す情報が記憶される。「位置情報」フィールドには、オブジェクト３２の位置に関する位置情報が記憶される。オブジェクト３２の位置情報はオブジェクト３２の代表点（例えば中心点又は左上頂点等）をＸ−Ｙ座標系によって示す情報である。なお、Ｘ−Ｙ座標系は、図２に示すように、仮想二次元平面３０の左上頂点を原点Ｏとし、右方向をＸ軸正方向とし、下方向をＹ軸正方向とする座標系である。
【００４０】
「属性情報」フィールドには、オブジェクト３２に関連づけられる属性情報が記憶される。「属性情報」フィールドには複数の属性項目の属性値が記憶される。ここで説明している例ではオブジェクト３２が商品情報に対応しているため、商品の属性情報が「属性情報」フィールドに記憶される。例えば、下記に示すような属性項目の属性値が「属性情報」フィールドに記憶される。
・カテゴリ及びサブカテゴリ
・色
・基本価格（定価）及び現在価格
・発売開始時期
【００４１】
図５はオブジェクトグループテーブルの一例を示す。オブジェクトグループテーブルはオブジェクトグループに関するデータである。図５に示すオブジェクトグループテーブルは「オブジェクトグループＩＤ」、「メンバ」、及び「位置情報」フィールドを含む。
【００４２】
「オブジェクトグループＩＤ」フィールドには、オブジェクトグループを一意に識別する識別情報（オブジェクトグループＩＤ）が記憶される。なお以下では、オブジェクトグループＩＤが「ｉ」であるオブジェクトグループのことをオブジェクトグループ「ｉ」と記載する。「メンバ」フィールドには、オブジェクトグループに属するオブジェクト３２のオブジェクトＩＤが記憶される。
【００４３】
「位置情報」フィールドには、オブジェクトグループの代表点の位置を示す情報が記憶される。オブジェクトグループの代表点は、オブジェクトグループに属するオブジェクト３２の位置に基づいて設定される。例えば、二つのオブジェクト３２がオブジェクトグループに属する場合には、それら二つのオブジェクト３２の代表点（例えば中心点又は左上頂点）の中点がオブジェクトグループの代表点として設定される。また例えば、三つ以上のオブジェクト３２がオブジェクトグループに属する場合には、それらのオブジェクト３２の代表点の重心がオブジェクトグループの代表点として設定される。なお、一つのオブジェクト３２のみがオブジェクトグループに属する場合、そのオブジェクト３２の代表点がオブジェクトグループの代表点として設定される。
【００４４】
なお、図５はオブジェクトグループテーブルの初期状態を示している。図５に示すオブジェクトグループテーブルには、オブジェクト３２Ａ〜３２Ｈの各々がそれぞれ一つのオブジェクトグループとして予め登録されている。なお、これらのオブジェクトグループをオブジェクトグループテーブルに予め登録しておくことは必須ではない。
【００４５】
次に、商品情報をグループ化するためにユーザが行う操作について説明する。図６は、オブジェクト３２Ａ，３２Ｃをグループ化させたい場合にユーザが行う操作について説明するための図である。オブジェクト３２Ａ，３２Ｃをグループ化させたい場合、図６に示すように、ユーザはオブジェクト３２Ａをオブジェクト３２Ｃの付近まで移動させる。例えば、ユーザはタッチパネルに指を接触させることによってオブジェクト３２Ａを指し示し、その状態で指をタッチパネル上でスライドさせることによって、オブジェクト３２Ａを移動させる。
【００４６】
図７は、図６に示すようにオブジェクト３２Ａが移動された場合に実行される処理について説明するための図である。図６に示すようにオブジェクト３２Ａが移動された場合、オブジェクト３２Ａの位置に基づいて設定される判定領域４０Ａ内に他のオブジェクト３２が存在するか否かが判定される。言い換えれば、オブジェクト３２Ａの判定領域４０Ａ内に配置されている他のオブジェクト３２が検出される。なお、判定領域４０Ａは、オブジェクト３２Ａの代表点４２Ａ（例えば中心点）からの距離が基準距離以下であるような領域である。
【００４７】
図７に示す例の場合、オブジェクト３２Ｃがオブジェクト３２Ａの判定領域４０Ａに含まれている。この場合、オブジェクト３２Ａの属性情報と、オブジェクト３２Ｃの属性情報と、が比較される。例えば、オブジェクト３２Ａ，３２Ｃの属性情報の間で複数の属性項目の各々について属性値が比較される。
【００４８】
そして、オブジェクト３２Ａ，３２Ｃをグループ化することが可能であるか否かが上記の比較結果に基づいて判定される。オブジェクト３２Ａ，３２Ｃの属性情報の類似度が基準類似度以上である場合に、オブジェクト３２Ａ，３２Ｃをグループ化することが可能であると判定される。例えば、属性値が同一又は類似する属性項目の個数が基準個数以上である場合に、オブジェクト３２Ａ，３２Ｃをグループ化することが可能であると判定される。あるいは、比較対象の属性項目の総数に対する、属性値が同一又は類似する属性項目の個数の割合が基準割合以上である場合に、オブジェクト３２Ａ，３２Ｃをグループ化することが可能であると判定されるようにしてもよい。
【００４９】
オブジェクト３２Ａ，３２Ｃをグループ化することが可能であると判定された場合、オブジェクト３２Ａ，３２Ｃがグループ化される。図８はこの場合のオブジェクトグループテーブルの一例を示している。図８に示すオブジェクトグループテーブルでは、オブジェクト３２Ａ，３２Ｃのみをメンバとするオブジェクトグループがオブジェクトグループ「９」として追加されている。
【００５０】
なお、以上では、オブジェクト３２Ａの位置が変更された場合について説明したが、例えば、オブジェクト３２Ａが仮想二次元平面３０に配置されていない状態でオブジェクト３２Ａが仮想二次元平面３０内に新たに配置された場合にも同様の処理が実行される。
【００５１】
図９は、オブジェクト３２Ｂ，３２Ｃをグループ化させたい場合にユーザが行う操作について説明するための図である。オブジェクト３２Ｂ，３２Ｃをグループ化させたい場合、図９に示すように、ユーザはオブジェクト３２Ｂをオブジェクト３２Ｃの付近まで移動させる。
【００５２】
図１０は、図９に示すようにオブジェクト３２Ｂが移動された場合に実行される処理について説明するための図である。図９に示すようにオブジェクト３２Ｂが移動された場合、オブジェクト３２Ｂの位置に基づいて設定される判定領域４０Ｂ内に他のオブジェクト３２が存在するか否かが判定される。なお、判定領域４０Ｂは、オブジェクト３２Ｂの代表点４２Ｂからの距離が基準距離以下であるような領域である。
【００５３】
図１０に示す例の場合、オブジェクト３２Ｃがオブジェクト３２Ｂの判定領域４０Ｂに含まれている。この場合、オブジェクト３２Ｂ，３２Ｃの属性情報が比較される。そして、オブジェクト３２Ｂ，３２Ｃをグループ化することが可能であるか否かが上記の比較結果に基づいて判定される。
【００５４】
オブジェクト３２Ｂ，３２Ｃをグループ化することが可能であると判定された場合、オブジェクト３２Ｂ，３２Ｃがグループ化される。図１１はこの場合のオブジェクトグループテーブルの一例を示している。図１１に示すオブジェクトグループテーブルでは、オブジェクト３２Ｂ，３２Ｃのみをメンバとするオブジェクトグループがオブジェクトグループ「１０」として追加されている。
【００５５】
ところで、図９に示すようにオブジェクト３２Ｂが移動された時点において、オブジェクト３２Ｃはすでにオブジェクトグループ「９」に属している（図８参照）。このような場合、オブジェクトグループ「９」の属性情報と、新たに生成されたオブジェクトグループ「１０」の属性情報と、が比較される。そして、オブジェクトグループ「９」及び「１０」をグループ化することが可能であるか否かが上記の比較結果に基づいて判定される。
【００５６】
なお、オブジェクトグループ「９」の属性情報は、オブジェクトグループ「９」に属するオブジェクト３２Ａ，３２Ｃの属性情報に基づいて設定される。例えば、オブジェクト３２Ａ，３２Ｃの属性情報において属性値が同一又は類似する属性項目の属性値がオブジェクトグループ「９」の属性値として用いられる。オブジェクトグループ「１０」の属性情報も同様にして設定される。
【００５７】
オブジェクトグループ「９」の属性情報と、オブジェクトグループ「１０」の属性情報と、の類似度が基準類似度以上である場合に、オブジェクトグループ「９」及び「１０」をグループ化することが可能であると判定される。例えば、属性値が同一又は類似する属性項目の個数が基準個数以上である場合に、オブジェクトグループ「９」及び「１０」をグループ化することが可能であると判定される。
【００５８】
オブジェクトグループ「９」及び「１０」をグループ化することが可能であると判定された場合、オブジェクトグループ「９」及び「１０」がグループ化される。図１２はこの場合のオブジェクトグループテーブルの一例を示している。図１２に示すオブジェクトグループテーブルでは、オブジェクトグループ「９」に属するオブジェクト３２Ａ，３２Ｃと、オブジェクトグループ「１０」に属するオブジェクト３２Ｂ，３２Ｃと、をメンバとするオブジェクトグループがオブジェクトグループ「１１」として追加されている。
【００５９】
図１３は、図９に示す状態においてユーザがオブジェクト３２Ｃをオブジェクト３２Ｂの下方に移動させた場合を示している。言い換えれば、図１３は、オブジェクトグループ「９」に属するオブジェクト３２Ａ，３２Ｃのうちの一つであるオブジェクト３２Ｃを、他のオブジェクト３２Ａから離れるようにして移動させた場合を示している。
【００６０】
図１４は、図１３に示すようにオブジェクト３２Ｃが移動された場合に実行される処理について説明するための図である。なお、図１４において、符号「５０」は、オブジェクト３２Ｃが移動する前の時点におけるオブジェクト３２Ａ，３２Ｃの代表点４２Ａ，４２Ｃの中点を示している。また、符号「５２」は、オブジェクト３２Ｃが移動する前の時点におけるオブジェクト３２Ｂ，３２Ｃの代表点４２Ｂ，４２Ｃの中点を示している。また、符号「５４」は、オブジェクト３２Ｃが移動する前の時点におけるオブジェクト３２Ａ，３２Ｂ，３２Ｃの代表点４２Ａ，４２Ｂ，４２Ｃの重心を示している。
【００６１】
図１３に示すようにオブジェクト３２Ｃが移動された場合、オブジェクト３２Ｃのグループ化を解除するための処理が実行される。まず、オブジェクト３２Ｃが属するオブジェクトグループが取得される。図１３に示すようにオブジェクト３２Ｃが移動された時点において、オブジェクト３２Ｃはオブジェクトグループ「９」、「１０」及び「１１」に属している（図１２参照）。
【００６２】
このような場合、オブジェクトグループ「９」がオブジェクト３２Ｃの判定領域４０Ｃ内に含まれるか否かが判定される。図１４に示すように、オブジェクト３２Ｃの判定領域４０Ｃはオブジェクト３２Ｃの代表点４２Ｃからの距離が基準距離以下である領域である。
【００６３】
例えば、オブジェクトグループ「９」の代表点がオブジェクト３２Ｃの判定領域４０Ｃ内に含まれる場合に、オブジェクトグループ「９」がオブジェクト３２Ｃの判定領域４０Ｃ内に含まれると判定される。なお、オブジェクトグループ「９」は、オブジェクト３２Ａ，３２Ｃが属するオブジェクトグループであるため（図１２参照）、例えば、オブジェクト３２Ｃが移動する前の時点におけるオブジェクト３２Ａ，３２Ｃの代表点４２Ａ，４２Ｃの中点５０がオブジェクトグループ「９」の代表点として用いられる。
【００６４】
図１４に示す例の場合、中点５０はオブジェクト３２Ｃの判定領域４０Ｃに含まれていないため、オブジェクトグループ「９」はオブジェクト３２Ｃの判定領域４０Ｃ内に含まれていないと判定される。そして、この場合、オブジェクト３２Ｃがオブジェクトグループ「９」から除かれる。なお、この場合、オブジェクトグループ「９」のメンバはオブジェクト３２Ａのみとなり、オブジェクトグループ「９」はオブジェクトグループ「１」と同じになるため、図１５に示すように、オブジェクトグループ「９」は削除される。
【００６５】
また、オブジェクト３２Ｃはオブジェクトグループ「１０」にも属しているため、オブジェクトグループ「１０」がオブジェクト３２Ｃの判定領域４０Ｃ内に含まれるか否かが判定される。すなわち、オブジェクトグループ「１０」の代表点がオブジェクト３２Ｃの判定領域４０Ｃ内に含まれるか否かが判定される。なお、オブジェクトグループ「１０」は、オブジェクト３２Ｂ，３２Ｃが属するオブジェクトグループであるため（図１２参照）、例えば、オブジェクト３２Ｃが移動する前の時点におけるオブジェクト３２Ｂ，３２Ｃの代表点４２Ｂ，４２Ｃの中点５２がオブジェクトグループ「１０」の代表点として用いられる。
【００６６】
図１４に示す例の場合、中点５２はオブジェクト３２Ｃの判定領域４０Ｃに含まれているため、オブジェクトグループ「１０」はオブジェクト３２Ｃの判定領域４０Ｃ内に含まれると判定される。この場合、オブジェクト３２Ｃはオブジェクトグループ「１０」から除かれず、オブジェクトグループ「１０」のメンバとして残る（図１５参照）。
【００６７】
さらに、オブジェクト３２Ｃはオブジェクトグループ「１１」にも属しているため、オブジェクトグループ「１１」がオブジェクト３２Ｃの判定領域４０Ｃ内に含まれるか否かが判定される。すなわち、オブジェクトグループ「１１」の代表点がオブジェクト３２Ｃの判定領域４０Ｃ内に含まれるか否かが判定される。なお、オブジェクトグループ「１１」は、オブジェクト３２Ａ，３２Ｂ，３２Ｃが属するオブジェクトグループであるため（図１２参照）、例えば、オブジェクト３２Ｃが移動する前の時点におけるオブジェクト３２Ａ，３２Ｂ，３２Ｃの代表点４２Ａ，４２Ｂ，４２Ｃの重心５４がオブジェクトグループ「１１」の代表点として用いられる。
【００６８】
図１４に示す例の場合、重心５４はオブジェクト３２Ｃの判定領域４０Ｃに含まれていないため、オブジェクトグループ「１１」はオブジェクト３２Ｃの判定領域４０Ｃ内に含まれていないと判定される。その結果、オブジェクト３２Ｃはオブジェクトグループ「１１」から除かれる。この場合、図１５に示すように、オブジェクトグループ「１１」のメンバはオブジェクト３２Ａ，３２Ｂとなる。
【００６９】
また、図１３に示すようにオブジェクト３２Ｃが移動された場合には、オブジェクト３２Ｃを他のオブジェクト３２とグループ化するための処理も実行される。
【００７０】
すなわち、オブジェクト３２Ｃの判定領域４０Ｃ内に他のオブジェクト３２が存在するか否かが判定される。図１４に示す例の場合、オブジェクト３２Ｄがオブジェクト３２Ｃの判定領域４０Ｃ内に含まれている。この場合、オブジェクト３２Ｃ，３２Ｄの属性情報が比較される。そして、オブジェクト３２Ｃ，３２Ｄをグループ化することが可能であるか否かが上記の比較結果に基づいて判定される。
【００７１】
オブジェクト３２Ｃ，３２Ｄをグループ化することが可能であると判定された場合、オブジェクト３２Ｃ，３２Ｄがグループ化される。すなわち、図１５に示すように、オブジェクト３２Ｃ，３２Ｄのみをメンバとするオブジェクトグループがオブジェクトグループ「１２」として追加される。
【００７２】
なお、図１４に示す例の場合、オブジェクト３２Ｂもオブジェクト３２Ｃの判定領域４０Ｃ内に含まれているが、オブジェクト３２Ｂ，３２Ｃはすでにオブジェクトグループ「１０」としてグループ化されているため、無視される。
【００７３】
図１６は、図９に示す状態においてユーザがオブジェクト３２Ｃを削除した場合について示している。ユーザがオブジェクト３２Ｃを削除した場合、オブジェクト３２Ｃをオブジェクトグループから除くための処理が実行される。
【００７４】
すなわち、まず、オブジェクト３２Ｃが属するグループが取得される。ユーザがオブジェクト３２Ｃを削除した時点においてオブジェクト３２Ｃはオブジェクトグループ「９」、「１０」及び「１１」に属している（図１２参照）。
【００７５】
この場合、オブジェクト３２Ｃがオブジェクトグループ「９」から除かれる。なお、この場合、オブジェクトグループ「９」のメンバはオブジェクト３２Ａのみとなり、オブジェクトグループ「９」はオブジェクトグループ「１」と同じになるため、図１７に示すようにオブジェクトグループ「９」は削除される。
【００７６】
また、オブジェクト３２Ｃがオブジェクトグループ「１０」から除かれる。なお、この場合、オブジェクトグループ「１０」のメンバはオブジェクト３２Ｂのみとなり、オブジェクトグループ「１０」はオブジェクトグループ「２」と同じになるため、図１７に示すようにオブジェクトグループ「１０」も削除される。
【００７７】
さらに、オブジェクト３２Ｃがオブジェクトグループ「１１」から除かれる。この場合、図１７に示すように、オブジェクトグループ「１１」のメンバはオブジェクト３２Ａ，３２Ｂのみとなる。
【００７８】
以上のように、情報処理システム１では、ユーザが、画面に表示されるオブジェクト３２（商品情報）を他のオブジェクト３２の付近に移動させることによって、オブジェクト３２をグループ化できるようになっている。情報処理システム１では、振り分け条件が関連づけられたグループを予め定義しておかなくても、ユーザが比較的簡易にオブジェクト３２をグループ化できるようになっている。
【００７９】
以上に説明したグループ化機能を実現するための構成について説明する。図１８は、情報処理システム１において実現される機能を示す機能ブロック図である。図１８に示すように、情報処理システム１は記憶部６０、判定部６４、比較部６６、グループ化部６８、グループ解除部７０、及び表示制御部７２を含む。例えば、記憶部６０はデータベース１６又は／及び補助記憶部１３によって実現される。また例えば、記憶部６０以外の機能ブロックはサーバ１０において実現される。すなわち、サーバ１０の制御部１１がプログラムに従って処理を実行することによって、制御部１１がそれらの機能ブロックとして機能するようになる。
【００８０】
記憶部６０について説明する。記憶部６０は各種データを記憶する。例えば、記憶部６０は商品画像（オブジェクト３２）データを記憶する。
【００８１】
記憶部６０は属性情報記憶部６２を含む。属性情報記憶部６２は、仮想二次元平面３０に配置される複数のオブジェクト３２の各々に関連づけて属性情報を記憶する。すなわち、例えば図４に示したようなオブジェクトテーブルが属性情報記憶部６２に記憶される。
【００８２】
また記憶部６０は、後述のグループ化部６８によって生成されたオブジェクトグループに関する情報を記憶する。すなわち、例えば図５（及び図８，１１，１２，１５，１７）に示したようなオブジェクトグループテーブルが記憶部６０に記憶される。
【００８３】
さらに記憶部６０は、各ユーザ端末２０ごとに設定される表示対象領域３４に関する情報を記憶する。すなわち、例えば図１９に示すような表示対象領域テーブルが記憶部６０に記憶される。図１９に示す表示対象領域テーブルは、「ユーザＩＤ」及び「表示対象領域」フィールドを含んでいる。「ユーザＩＤ」フィールドには、ユーザ（ユーザ端末２０）を一意に識別する情報が記憶される。「表示対象領域」フィールドには、表示対象領域３４を特定する情報が記憶される。例えば、表示対象領域３４の代表点（例えば中心点又は左上頂点等）を示す情報が「表示対象領域」フィールドに記憶される。
【００８４】
判定部６４、比較部６６、及びグループ化部６８について説明する。
【００８５】
ユーザの操作に基づいて第１のオブジェクト３２が新たに仮想二次元平面３０に配置された場合、又はユーザの操作に基づいて第１のオブジェクト３２の位置が更新された場合、判定部６４は、第１のオブジェクト３２と、第１のオブジェクト３２とは異なる第２のオブジェクト３２と、の一方の位置に基づく判定領域内に、第１のオブジェクト３２と第２のオブジェクト３２との他方が位置しているか否かを判定する。
【００８６】
例えば図６に示すようにオブジェクト３２Ａが移動された場合、オブジェクト３２Ａが「第１のオブジェクト３２」に相当し、オブジェクト３２Ｃが「第２のオブジェクト３２」に相当する。
【００８７】
この場合、図７に示すように、判定部６４は、オブジェクト３２Ａの判定領域４０Ａ内にオブジェクト３２Ｃが含まれるか否かを判定する。先述したように、判定領域４０Ａは、オブジェクト３２Ａの代表点４２Ａから基準距離以内の領域である。すなわち、判定領域４０Ａは、オブジェクト３２Ａの代表点４２を中心とし、かつ、基準距離を半径とする円形領域である。なお、判定領域４０Ａは、オブジェクト３２Ａの付近に他のオブジェクト３２が位置しているか否かを判定するための領域であり、判定領域４０Ａの形状は円形以外であってもよい。
【００８８】
例えば、オブジェクト３２Ｃの代表点４２Ｃがオブジェクト３２Ａの判定領域４０Ａ内に含まれている場合に、判定部６４はオブジェクト３２Ｃがオブジェクト３２Ａの判定領域４０Ａ内に含まれていると判定する。なお、オブジェクト３２Ｃの少なくとも一部がオブジェクト３２Ａの判定領域４０Ａ内に含まれている場合に、判定部６４はオブジェクト３２Ｃがオブジェクト３２Ａの判定領域４０Ａ内に含まれていると判定するようにしてもよい。あるいは、オブジェクト３２Ｃの全体がオブジェクト３２Ａの判定領域４０Ａ内に含まれている場合に限って、判定部６４はオブジェクト３２Ｃがオブジェクト３２Ａの判定領域４０Ａ内に含まれていると判定するようにしてもよい。
【００８９】
ところで、図６に示すようにオブジェクト３２Ａが移動された場合、判定部６４は、オブジェクト３２Ａの判定領域４０Ａ内にオブジェクト３２Ｃが含まれているか否かを判定する代わりに、オブジェクト３２Ｃの位置に基づく判定領域内にオブジェクト３２Ａが含まれているか否かを判定するようにしてもよい。ここで、「オブジェクト３２Ｃの位置に基づく判定領域」とは、例えば、オブジェクト３２Ｃの代表点４２Ｃから基準距離以下の領域である。
【００９０】
比較部６６は、第１のオブジェクト３２に関連づけられた属性情報と、第２のオブジェクト３２に関連づけられた属性情報と、を比較する。例えば、比較部６６は、第１のオブジェクト３２の属性情報と第２のオブジェクト３２の属性情報との間で、複数の属性項目の各々の属性値を比較する。
【００９１】
第１のオブジェクト３２と第２のオブジェクト３２との一方の位置に基づく判定領域内に、第１のオブジェクト３２と第２のオブジェクト３２との他方が位置していると判定部６４によって判定された場合、グループ化部６８は、比較部６６の比較結果に基づいて、第１のオブジェクト３２と第２のオブジェクト３２とをグループ化する。具体的には、グループ化部６８は、第１のオブジェクト３２と第２のオブジェクト３２とをグループ化することが可能であるか否かを比較部６６の比較結果に基づいて判定する。
【００９２】
例えば、第１のオブジェクト３２及び第２のオブジェクト３２の属性情報の類似度が基準類似度以上である場合に、グループ化部６８は第１のオブジェクト３２と第２のオブジェクト３２とをグループ化することが可能であると判定する。より具体的には、属性値が同一又は類似する属性項目の個数が基準個数以上である場合に、グループ化部６８は第１のオブジェクト３２と第２のオブジェクト３２とをグループ化することが可能であると判定する。なお、「基準個数」は、例えば、比較対象の属性項目の総数に所定の係数（０より大きく、かつ、１未満の係数）を乗することによって得られる個数に設定される。
【００９３】
第１のオブジェクト３２と第２のオブジェクト３２とをグループ化することが可能であると判定された場合、グループ化部６８は、第１のオブジェクト３２と第２のオブジェクト３２とをグループ化する。すなわち、グループ化部６８は、第１のオブジェクト３２と第２のオブジェクト３２とが属するオブジェクトグループを生成する。
【００９４】
なお、第２のオブジェクト３２がすでにオブジェクトグループに属している場合、比較部６６及びグループ化部６８は下記に説明するような処理を実行する。
【００９５】
すなわち、比較部６６は、第１のオブジェクト３２の属性情報と、第２のオブジェクト３２が属するオブジェクトグループの属性情報と、を比較する。そして、この比較結果に基づいて、グループ化部６８は第１のオブジェクト３２と上記のオブジェクトグループとをグループ化する。
【００９６】
例えば図９に示すようにオブジェクト３２Ｂが移動された場合、オブジェクト３２Ｂが「第１のオブジェクト３２」に相当し、オブジェクト３２Ｃが「第２のオブジェクト」に相当する。またこの場合、オブジェクト３２Ｃはすでにオブジェクトグループ「９」に属している（図８参照）。
【００９７】
このような場合、比較部６６は、オブジェクト３２Ｂの属性情報と、オブジェクトグループ「９」の属性情報と、を比較する。ここで、比較部６６は、オブジェクトグループ「９」の属性情報を、オブジェクトグループ「９」に属するオブジェクト３２Ａ，３２Ｃの各々の属性情報に基づいて取得する。例えば、比較部６６は、オブジェクト３２Ａの属性情報とオブジェクト３２Ｃの属性情報とにおいて属性値が同一又は類似する属性項目の属性値を、オブジェクトグループ「９」の属性情報として用いる。なお、オブジェクト３２の属性情報とオブジェクトグループの属性情報との比較は、オブジェクト３２同士の属性情報を比較する場合と同様に実行される。
【００９８】
グループ化部６８は、オブジェクト３２Ｂとオブジェクトグループ「９」とをグループ化することが可能であるか否かを比較部６６の比較結果に基づいて判定する。なお、オブジェクト３２とオブジェクトグループとをグループ化することが可能であるか否かの判定も、オブジェクト３２同士をグループ化することが可能であるか否かの判定と同様に行われる。
【００９９】
オブジェクト３２Ｂとオブジェクトグループ「９」とをグループ化することが可能であると判定された場合、グループ化部６８はオブジェクト３２Ｂとオブジェクトグループ「９」とをグループ化する。すなわち、グループ化部６８は、オブジェクト３２Ｂと、オブジェクトグループ「９」に属するオブジェクト３２Ａ，３２Ｃと、が属するオブジェクトグループを生成する。
【０１００】
グループ解除部７０について説明する。例えば、オブジェクトグループに属するオブジェクト３２が仮想二次元平面３０から取り除かれた場合に、グループ解除部７０は当該オブジェクト３２を当該オブジェクトグループから取り除く。例えば図１６に示した例のようにオブジェクト３２Ｃが仮想二次元平面３０から取り除かれた場合、グループ解除部７０はオブジェクト３２Ｃが属するオブジェクトグループからオブジェクト３２Ｃを取り除く。
【０１０１】
また例えば、オブジェクトグループに属するオブジェクト３２の位置が変更された場合にも、グループ解除部７０は、オブジェクト３２をオブジェクトグループから取り除くための処理を実行する。すなわち、グループ解除部７０は、オブジェクト３２とオブジェクトグループとの一方の位置に基づく判定領域内に、オブジェクト３２とオブジェクトグループとの他方が含まれるか否かを判定する。そして、オブジェクト３２とオブジェクトグループとの一方の位置に基づく判定領域内に、オブジェクト３２とオブジェクトグループとの他方が含まれないと判定された場合、グループ解除部７０はオブジェクト３２をオブジェクトグループから取り除く。
【０１０２】
例えば図１３に示すようにオブジェクト３２Ｃが移動される前の時点において、オブジェクト３２Ｃはオブジェクトグループ「１０」に属している（図１２参照）。図１３に示すようにして、オブジェクトグループ「１０」に属するオブジェクト３２Ｃが移動された場合、グループ解除部７０は、オブジェクトグループ「１０」がオブジェクト３２Ｃの判定領域４０Ｃ内に含まれるか否かを判定する。例えば、グループ解除部７０は、オブジェクトグループ「１０」の代表点（重心５４）がオブジェクト３２Ｃの判定領域４０Ｃ内に含まれるか否かを判定する。オブジェクトグループ「１０」がオブジェクト３２Ｃの判定領域４０Ｃ内に含まれないと判定された場合、グループ解除部７０はオブジェクト３２Ｃをオブジェクトグループ「１０」から取り除く。
【０１０３】
表示制御部７２について説明する。表示制御部７２は、仮想二次元平面３０の少なくとも一部を表す画面をユーザ端末２０の表示部２５に表示させる。本実施形態の場合、表示制御部７２は、各ユーザ端末２０ごとに設定される、仮想二次元平面３０の表示対象領域３４を表す画面を各ユーザ端末２０の表示部２５に表示させる。
【０１０４】
例えば、表示制御部７２は、仮想二次元平面３０の表示対象領域３４を表す画面データを生成し、該画面データをユーザ端末２０に送信する。そして、該画面データに基づいて、ユーザ端末２０の制御部２１は画面を表示部２５に表示させる。このようにして、表示制御部７２は、仮想二次元平面３０の表示対象領域３４を表す画面をユーザ端末２０の表示部２５に表示させる。
【０１０５】
次に、情報処理システム１で実行される処理について説明する。図２０は、サーバ１０で繰り返し実行される処理の一例を示すフロー図である。サーバ１０の制御部１１がプログラムに従って図２０に示す処理を繰り返し実行することによって、制御部１１が、判定部６４、比較部６６、グループ化部６８、グループ解除部７０、及び表示制御部７２として機能するようになる。
【０１０６】
図２０に示すように、まず、制御部１１は、配置操作がユーザ端末２０において行われたか否かを判定する（Ｓ１０１）。なお、「配置操作」とは、新たなオブジェクト３２を仮想二次元平面３０に配置する操作である。
【０１０７】
新たなオブジェクト３２を仮想二次元平面３０に配置しようとする場合、ユーザは、新たなオブジェクト３２として配置する商品画像と、商品画像の配置位置と、商品の属性情報と、を指定することになる。そして、これらが指定された場合、商品画像と、商品画像の配置位置と、商品の属性情報と、の組み合わせが配置要求データとしてユーザ端末２０からサーバ１０に送信される。この配置要求データが受信された場合に、制御部１１は配置操作が行われたと判定する。
【０１０８】
配置操作が行われたと判定された場合、制御部１１は新たなオブジェクト３２を仮想二次元平面３０に配置する（Ｓ１０２）。すなわち、制御部１１は、新たなオブジェクト３２として指定された商品画像をデータベース１６に保存するとともに、新たなオブジェクト３２に関する情報をオブジェクトテーブルに追加登録する。
【０１０９】
その後、制御部１１は、新たに配置されたオブジェクト３２を処理対象オブジェクトとしてグループ化処理を実行する（Ｓ１０３）。図２１は、ステップＳ１０３で実行されるグループ化処理の一例を示すフロー図である。なお図２１では、説明の簡便のため、処理対象オブジェクトとして設定されたオブジェクト３２のことを「オブジェクトＸ」と記載している。例えば、ステップＳ１０３の場合、新たに配置されたオブジェクト３２が「オブジェクトＸ」に相当する。
【０１１０】
図２１に示すように、まず、制御部１１（判定部６４）は、オブジェクトＸの判定領域に他のオブジェクト３２が含まれているか否かを判定する（Ｓ２０１）。先述したように、オブジェクトＸの判定領域は、例えばオブジェクトＸの代表点から基準距離以内の領域である。他のオブジェクト３２の代表点がオブジェクトＸの判定領域に含まれる場合、制御部１１は他のオブジェクト３２がオブジェクトＸの判定領域に含まれていると判定する。他のオブジェクト３２がオブジェクトＸの判定領域に含まれていないと判定された場合、本処理は終了する。
【０１１１】
他のオブジェクト３２がオブジェクトＸの判定領域に含まれていると判定された場合、制御部１１は後述のステップＳ２０２の処理を実行する。複数のオブジェクト３２がオブジェクトＸの判定領域に含まれていると判定された場合には、それら複数のオブジェクト３２の各々ごとに、ステップＳ２０２以降の処理が実行される。なお以下では、説明の簡便のため、オブジェクトＸの判定領域に含まれていると判定された他のオブジェクト３２のことを「オブジェクトＹ」と記載する。
【０１１２】
他のオブジェクト３２（オブジェクトＹ）がオブジェクトＸの判定領域に含まれていると判定された場合、制御部１１（比較部６６）はオブジェクトＸ，Ｙの属性情報を比較する（Ｓ２０２）。すなわち、制御部１１は、オブジェクトＸの属性情報とオブジェクトＹの属性情報との間で、複数の属性項目の各々の属性値を比較する。
【０１１３】
その後、制御部１１（グループ化部６８）は、オブジェクトＸ，Ｙをグループ化することが可能であるか否かを判定する（Ｓ２０３）。例えば、制御部１１は、オブジェクトＸの属性情報とオブジェクトＹの属性情報との間で、属性値が同一又は類似している属性項目の個数を取得する。そして、制御部１１は上記の個数を基準個数以上であるか否かを判定する。上記の個数を基準個数以上である場合、制御部１１は、オブジェクトＸ，Ｙをグループ化することが可能であると判定する。オブジェクトＸ，Ｙをグループ化することが可能でないと判定された場合、本処理は終了する。
【０１１４】
オブジェクトＸ，Ｙをグループ化することが可能であると判定された場合、制御部１１（グループ化部６８）はオブジェクトＸ，Ｙをグループ化する（Ｓ２０４）。すなわち、制御部１１は、オブジェクトＸ，Ｙのみをメンバとするオブジェクトグループをオブジェクトグループテーブルに追加登録することによって、該オブジェクトグループを生成する。ただし、同じオブジェクトグループがすでに存在している場合、制御部１１はオブジェクトグループを生成しない。なお以下では、説明の簡便のため、ステップＳ２０４で生成されたオブジェクトグループのことを「オブジェクトグループＺ」と記載する。
【０１１５】
ステップＳ２０４の処理が実行された後、制御部１１はオブジェクトグループテーブルを参照し、オブジェクトＹが属するオブジェクトグループが存在しているか否かを判定する（Ｓ２０５）。オブジェクトＹが属するオブジェクトグループが存在していないと判定された場合、本処理は終了する。
【０１１６】
一方、オブジェクトＹが属するオブジェクトグループが存在していると判定された場合、制御部１１は後述のステップＳ２０６の処理を実行する。オブジェクトＹが属するオブジェクトグループが複数存在していると判定された場合には、それら複数のオブジェクトグループの各々ごとに、ステップＳ２０６以降の処理が実行される。なお以下では、説明の簡便のため、オブジェクトＹが属するオブジェクトグループのことを「オブジェクトグループＹ」と記載する。
【０１１７】
オブジェクトＹが属するオブジェクトグループ（オブジェクトグループＹ）が存在していると判定された場合、制御部１１はオブジェクトグループＹ，Ｚの属性情報を比較する（Ｓ２０６）。この場合、制御部１１は、オブジェクトグループＹに属する各オブジェクト３２の属性情報に基づいて、オブジェクトグループＹの属性情報を設定する。同様に、制御部１１は、オブジェクトグループＺに属する各オブジェクト３２の属性情報に基づいて、オブジェクトグループＺの属性情報を設定する。オブジェクトグループ同士の属性情報の比較はオブジェクト３２同士の属性情報の比較（ステップＳ２０２）と同様にして実行される。
【０１１８】
その後、制御部１１は、オブジェクトグループＹ，Ｚをグループ化することが可能であるか否かを判定する（Ｓ２０７）。オブジェクトグループ同士をグループ化することが可能であるか否かの判定もオブジェクト３２同士をグループ化することが可能であるか否かの判定（ステップＳ２０３）と同様にして実行される。オブジェクトグループＹ，Ｚをグループ化することが可能でないと判定された場合、本処理は終了する。
【０１１９】
オブジェクトグループＹ，Ｚをグループ化することが可能であると判定された場合、制御部１１はオブジェクトグループＹ，Ｚをグループ化する（Ｓ２０８）。すなわち、制御部１１は、オブジェクトグループＹに属する全オブジェクト３２と、オブジェクトグループＺに属する全オブジェクト３２とのみをメンバとするオブジェクトグループをオブジェクトグループテーブルに追加登録することによって、該オブジェクトグループを生成する。ただし、同じオブジェクトグループがすでに存在している場合、制御部１１はオブジェクトグループを生成しない。
【０１２０】
図２０に示すように、ステップＳ１０３の処理（すなわち図２１に示す処理）が完了した場合、制御部１１は、移動操作がユーザ端末２０において行われたか否かを判定する（Ｓ１０４）。なお、「移動操作」とはオブジェクト３２を移動する操作である。
【０１２１】
移動操作がユーザ端末２０において行われた場合、移動対象として指定されたオブジェクト３２のオブジェクトＩＤと、移動対象のオブジェクト３２の移動先位置と、の組み合わせが移動要求データとしてユーザ端末２０からサーバ１０に送信される。そして、移動要求データが受信された場合、制御部１１は移動操作が行われたと判定する。
【０１２２】
移動操作が行われたと判定された場合、制御部１１はオブジェクトテーブルにアクセスし、移動対象として指定されたオブジェクト３２の位置を更新する（Ｓ１０５）。その後、制御部１１は、移動対象として指定されたオブジェクト３２を処理対象オブジェクトとしてグループ解除処理を実行する（Ｓ１０６）。
【０１２３】
図２２は、ステップＳ１０６で実行されるグループ解除処理の一例を示すフロー図である。なお図２２では、説明の簡便のため、処理対象オブジェクトとして設定されたオブジェクト３２のことを「オブジェクトＸ」と記載している。例えば、ステップＳ１０６の場合、移動対象として指定されたオブジェクト３２が「オブジェクトＸ」に相当する。
【０１２４】
図２２に示すように、まず、制御部１１は変数ｉを１に初期化する（Ｓ３０１）。そして、制御部１１はオブジェクトグループテーブルにアクセスし、オブジェクトＸがオブジェクトグループ「ｉ」に属しているか否かを判定する（Ｓ３０２）。オブジェクトＸがオブジェクトグループ「ｉ」に属していないと判定された場合、制御部１１は後述のステップＳ３０６の処理を実行する。なお、例えばオブジェクトグループ「ｉ」がすでに削除されてしまっている場合等、オブジェクトグループ「ｉ」が存在していない場合には制御部１１はオブジェクトＸがオブジェクトグループ「ｉ」に属しないとみなす。
【０１２５】
オブジェクトＸがオブジェクトグループ「ｉ」に属していると判定された場合、制御部１１は、オブジェクトＸ以外のオブジェクト３２もオブジェクトグループ「ｉ」に属しているか否かを判定する（Ｓ３０３）。オブジェクトＸ以外のオブジェクト３２がオブジェクトグループ「ｉ」に属していないと判定された場合、すなわち、オブジェクトＸのみがオブジェクトグループ「ｉ」に属している場合、制御部１１は後述のステップＳ３０６の処理を実行する。
【０１２６】
オブジェクトＸ以外のオブジェクト３２がオブジェクトグループ「ｉ」に属していると判定された場合、制御部１１はオブジェクトグループ「ｉ」がオブジェクトＸの判定領域に含まれるか否かを判定する（Ｓ３０４）。先述したように、オブジェクトＸの判定領域は、オブジェクトＸの代表点から基準距離以内の領域である。
【０１２７】
例えば、オブジェクトグループ「ｉ」の代表点がオブジェクトＸの判定領域に含まれる場合に、制御部１１はオブジェクトグループ「ｉ」がオブジェクトＸの判定領域に含まれると判定する。なお、オブジェクトグループ「ｉ」の代表点は、例えば、オブジェクトグループ「ｉ」に属するオブジェクト３２の代表点の重心（又は中点）である。
【０１２８】
オブジェクトグループ「ｉ」がオブジェクトＸの判定領域に含まれると判定された場合、制御部１１は後述のステップＳ３０６の処理を実行する。一方、オブジェクトグループ「ｉ」がオブジェクトＸの判定領域に含まれないと判定された場合、制御部１１は、オブジェクトＸをオブジェクトグループ「ｉ」から取り除く（Ｓ３０５）。
【０１２９】
なお、オブジェクトＸをオブジェクトグループ「ｉ」から取り除いた場合、制御部１１はオブジェクトグループテーブルを参照し、オブジェクトＸが取り除かれた後のオブジェクトグループ「ｉ」と同じオブジェクトグループが存在しているか否かを確認する。そして、オブジェクトＸが取り除かれた後のオブジェクトグループ「ｉ」と同じオブジェクトグループが存在していれば、制御部１１はオブジェクトグループ「ｉ」をオブジェクトグループテーブルから削除する。
【０１３０】
ステップＳ３０５の処理が実行された後、制御部１１は、オブジェクトグループテーブルに登録されたオブジェクトグループのうちで、オブジェクトグループ「ｉ」が最後のオブジェクトグループであるか否かを判定する（Ｓ３０６）。オブジェクトグループ「ｉ」が最後のオブジェクトグループでないと判定された場合、制御部１１は変数ｉに１を加算し（Ｓ３０７）、ステップＳ３０２の処理を再実行する。一方、オブジェクトグループ「ｉ」が最後のオブジェクトグループであると判定された場合、本処理は終了する。
【０１３１】
図２０に示すように、ステップＳ１０６の処理（すなわち図２２に示す処理）が実行された後、制御部１１は、移動対象として指定されたオブジェクト３２を処理対象オブジェクトとしてグループ化処理を実行する（Ｓ１０７）。ステップＳ１０７で実行されるグループ化処理は、ステップＳ１０３で実行されるグループ化処理（図２１）と同様である。ただし、この場合、移動対象として指定されたオブジェクト３２が図２１における「オブジェクトＸ」に相当する。
【０１３２】
ステップＳ１０７の処理（すなわち図２１に示す処理）が実行された後、制御部１１は削除操作がユーザ端末２０において行われたか否かを判定する（Ｓ１０８）。なお、「削除操作」とは、オブジェクト３２を削除する操作である。
【０１３３】
削除操作がユーザ端末２０において行われた場合、削除対象として指定されたオブジェクト３２のオブジェクトＩＤが削除要求データとしてユーザ端末２０からサーバ１０に送信される。そして、削除要求データが受信された場合、制御部１１は削除操作が行われたと判定する。削除操作が行われていないと判定された場合、制御部１１は後述のステップＳ１１１の処理を実行する。
【０１３４】
削除操作が行われたと判定された場合、制御部１１は、削除対象として指定されたオブジェクト３２を処理対象オブジェクトとしてグループ解除処理を実行する（Ｓ１０９）。図２３は、ステップＳ１０９で実行されるグループ解除処理の一例を示すフロー図である。図２３では、説明の簡便のため、処理対象オブジェクトとして設定されたオブジェクト３２のことを「オブジェクトＸ」と記載している。例えば、ステップＳ１０９の場合、削除対象として指定されたオブジェクト３２が「オブジェクトＸ」に相当する。
【０１３５】
なお、図２３におけるステップＳ４０１〜Ｓ４０３は図２２におけるステップＳ３０１〜Ｓ３０３と同様である。また、図２３におけるステップＳ４０４〜Ｓ４０６は図２２におけるステップＳ３０５〜Ｓ３０７と同様である。このため、ここでは説明を省略する。
【０１３６】
図２０に示すように、ステップＳ１０９の処理（すなわち図２３に示す処理）が実行された後、制御部１１は、削除対象として指定されたオブジェクト３２を仮想二次元平面３０から取り除く（Ｓ１１０）。すなわち、制御部１１は、削除対象として指定されたオブジェクト３２をオブジェクトテーブルから削除する。
【０１３７】
その後、制御部１１（表示制御部７２）はユーザ端末２０ごとに画面データを生成し、該画面データをユーザ端末２０に送信する（Ｓ１１１）。以上で図２０に示す処理の説明を終了する。
【０１３８】
以上説明した情報処理システム１によれば、ユーザが、画面に表示されるオブジェクト３２を他のオブジェクト３２の付近に移動させることによって、オブジェクト３２をグループ化できるようになっている。情報処理システム１では、振り分け条件が関連づけられたグループを予め定義しておかなくても、オブジェクト３２をグループ化できるようになっている。
【０１３９】
なお、以上のようにして生成されたオブジェクトグループは例えば広告に利用することができる。図２４は、オブジェクトグループを広告に利用する場合について説明するための図である。図２４はユーザ端末２０の表示部２５に表示される画面の一例を示している。なお、図２４では、オブジェクト３２Ａ，３２Ｂ，３２Ｃがオブジェクトグループに属していることとする。
【０１４０】
図２４に示す画面には広告８０が表示されている。広告８０は、オブジェクト３２Ａ，３２Ｂ，３２Ｃが属するオブジェクトグループに関する広告であり、広告８０の表示位置は該オブジェクトグループの代表点に基づいて設定される。
【０１４１】
なお、図２４に示すような画面は、仮想二次元平面３０内の、オブジェクトグループの代表点に基づく位置に広告８０（広告オブジェクト）を配置することによって生成することができる。あるいは、仮想二次元平面３０の表示対象領域３４を表す画面内の、オブジェクトグループの代表点に対応する表示位置に広告８０（広告画像）を上書き描画することによっても、図２４に示すような画面を生成することができる。
【０１４２】
ところで、上述したように、情報処理システム１では、複数のユーザ端末２０の各々の表示部２５に、仮想二次元平面３０の表示対象領域３４を表す画面が表示されるようになっている。また、表示対象領域３４はユーザ端末２０（ユーザ）ごとに設定されるようになっている。そこで、広告８０の位置を各ユーザ端末２０に対応する表示対象領域３４に基づいて設定するようにしてもよい。
【０１４３】
図２５はこの広告８０の位置の設定方法について説明するための図である。なお、図２５において、表示対象領域３４Ａは第１のユーザ端末２０に対応する表示対象領域３４であり、表示対象領域３４Ｂは第２のユーザ端末２０に対応する表示対象領域３４である。図２５においても、オブジェクト３２Ａ，３２Ｂ，３２Ｃがオブジェクトグループに属していることとする。
【０１４４】
図２５に示す例では、オブジェクトグループに属するオブジェクト３２Ａ，３２Ｂ，３２Ｃが表示対象領域３４Ａ，３４Ｂの両方に含まれている。言い換えれば、オブジェクトグループに属するオブジェクト３２Ａ，３２Ｂ，３２Ｃが表示対象領域３４Ａ，３４Ｂの重なり領域８２内に含まれている。
【０１４５】
このような場合、オブジェクトグループに対応する広告８０（広告オブジェクト）を重なり領域８２内に配置する。このようにすれば、オブジェクトグループに対応する広告８０が第１のユーザ端末２０と第２のユーザ端末２０との両方の表示部２５に表示されるようになり、その結果、広告が効率的に行われるようになる。
【０１４６】
なお、本発明は以上に説明した実施形態に限定されるものではない。
【０１４７】
［１］例えば、図９に示すようにオブジェクト３２Ｂが移動された場合に実行される処理は以上に説明した例に限られない。以下、図９に示すようにオブジェクト３２Ｂが移動された場合に実行される処理の他の例として二つの例を図１０を参照しながら説明する。
【０１４８】
［１−１］まず第１の例について説明する。図９に示すようにオブジェクト３２Ｂが移動された場合、判定部６４は、他のオブジェクト３２がオブジェクト３２Ｂの判定領域４０Ｂ内に存在するか否かを判定する。図１０に示すように、オブジェクト３２Ｂの判定領域４０Ｂ内にはオブジェクト３２Ｃが含まれている。
【０１４９】
オブジェクト３２Ｃがオブジェクト３２Ｂの判定領域４０Ｂ内に含まれている場合、オブジェクト３２Ｃが属しているオブジェクトグループが存在しているか否かが判定される。この時点でオブジェクト３２Ｃはオブジェクトグループ「９」に属しているため（図８参照）、比較部６６は、オブジェクト３２Ｂの属性情報と、オブジェクトグループ「９」の属性情報と、を比較する。なお、オブジェクト３２とオブジェクトグループとの属性情報の比較は、オブジェクト３２同士の属性情報の比較（ステップＳ２０２）や、オブジェクトグループ同士の属性情報の比較（ステップＳ２０６）と同様にして実行される。
【０１５０】
そして、グループ化部６８は、オブジェクト３２Ｂとオブジェクトグループ「９」とをグループ化することが可能であるか否かを上記の比較結果に基づいて判定する。なお、オブジェクト３２とオブジェクトグループとをグループ化することが可能であるか否かの判定も、オブジェクト３２同士をグループ化することが可能であるか否かの判定（ステップＳ２０３）や、オブジェクトグループ同士をグループ化することが可能であるか否かの判定（ステップＳ２０７）と同様にして実行される。
【０１５１】
オブジェクト３２Ｂとオブジェクトグループ「９」とをグループ化することが可能であると判定された場合、グループ化部６８はオブジェクト３２Ｂとオブジェクトグループ「９」とをグループ化する。図２６はこの場合のオブジェクトグループテーブルの一例を示している。図２６に示すオブジェクトグループテーブルでは、オブジェクト３２Ｂと、オブジェクトグループ「９」に属するオブジェクト３２Ａ，３２Ｃと、をメンバとするオブジェクトグループがオブジェクトグループ「１０」として追加されている。
【０１５２】
以上に説明したような判定部６４、比較部６６、及びグループ化部６８の動作を実現するためには、図２１に示すグループ化処理の代わりに、図２７に示すグループ化処理を実行するようにすればよい。以下、図２７に示すグループ化処理について説明する。
【０１５３】
図２７に示すグループ化処理では、まず、制御部１１（判定部６４）は、他のオブジェクト３２がオブジェクトＸの判定領域に含まれているか否かを判定する（Ｓ５０１）。このステップＳ５０１の処理は図２１のステップＳ２０１と同様である。他のオブジェクト３２がオブジェクトＸの判定領域に含まれていないと判定された場合、本処理は終了する。
【０１５４】
他のオブジェクト３２がオブジェクトＸの判定領域に含まれていると判定された場合、制御部１１はステップＳ５０２の処理を実行する。複数のオブジェクト３２がオブジェクトＸの判定領域に含まれていると判定された場合、それら複数のオブジェクト３２の各々ごとに、ステップＳ５０２以降の処理が実行される。なお以下では、説明の簡便のため、オブジェクトＸの判定領域に含まれていると判定された他のオブジェクト３２のことを「オブジェクトＹ」と記載する。
【０１５５】
ステップＳ５０２において、制御部１１はオブジェクトグループテーブルを参照し、オブジェクトＹが属するオブジェクトグループが存在しているか否かを判定する。このステップＳ５０２の処理は図２１のステップＳ２０５と同様である。
【０１５６】
オブジェクトＹが属するオブジェクトグループが存在していると判定された場合、制御部１１はステップＳ５０３の処理を実行する。オブジェクトＹが属するオブジェクトグループが複数存在していると判定された場合、それら複数のオブジェクトグループの各々ごとに、ステップＳ５０３以降の処理が実行される。なお以下では、説明の簡便のため、オブジェクトＹが属するオブジェクトグループのことを「オブジェクトグループＹ」と記載する。
【０１５７】
ステップＳ５０３において、制御部１１は（比較部６６）は、オブジェクトＸの属性情報と、オブジェクトグループＹの属性情報と、を比較する。すなわち、制御部１１は、オブジェクトＸの属性情報とオブジェクトグループＹの属性情報との間で、複数の属性項目の各々の属性値を比較する。
【０１５８】
その後、制御部１１（グループ化部６８）は、オブジェクトＸとオブジェクトグループＹとをグループ化することが可能であるか否かを判定する（Ｓ５０４）。例えば、制御部１１は、オブジェクトＸの属性情報とオブジェクトグループＹの属性情報との間で、属性値が同一又は類似している属性項目の個数を取得する。そして、その個数が基準個数以上である場合、制御部１１はオブジェクトＸとオブジェクトグループＹとをグループ化することが可能であると判定する。
【０１５９】
オブジェクトＸとオブジェクトグループＹとをグループ化することが可能であると判定された場合、制御部１１はオブジェクトＸとオブジェクトグループＹとをグループ化する（Ｓ５０５）。すなわち、制御部１１は、オブジェクトグループＹに属する全オブジェクト３２とオブジェクトＸとをメンバとするオブジェクトグループをオブジェクトグループテーブルに追加登録することによって、該オブジェクトグループを生成する。ただし、同じオブジェクトグループがすでに存在している場合には制御部１１はオブジェクトテーブルを生成しない。
【０１６０】
一方、ステップＳ５０２において、オブジェクトＹが属するオブジェクトグループが存在していないと判定された場合、又は、ステップＳ５０４において、オブジェクトＸとオブジェクトグループＹとをグループ化することが可能でないと判定された場合、制御部１１はステップＳ５０６〜Ｓ５０８の処理を実行する。これらのステップＳ５０６〜Ｓ５０８の処理は図２１のステップＳ２０２〜Ｓ２０４の処理と同様である。このため、ここでは説明を省略する。
【０１６１】
なお、以上に説明した図２７に示す処理では、ステップＳ５０１及びＳ５０２の処理を実行する代わりに、オブジェクトグループがオブジェクトＸの判定領域内に含まれるか否かを判定するようにしてもよい。そして、オブジェクトグループがオブジェクトＸの判定領域内に含まれる場合、そのオブジェクトグループを「オブジェクトグループＹ」としてステップＳ５０３〜Ｓ５０５の処理が実行されるようにしてもよい。
【０１６２】
［１−２］次に第２の例について説明する。図９に示すようにオブジェクト３２Ｂが移動された場合、判定部６４は他のオブジェクト３２がオブジェクト３２Ｂの判定領域４０Ｂ内に存在するか否かを判定する。図１０に示すように、オブジェクト３２Ｂの判定領域４０Ｂ内にはオブジェクト３２Ｃが含まれている。
【０１６３】
オブジェクト３２Ｃがオブジェクト３２Ｂの判定領域４０Ｂ内に含まれる場合、比較部６６は、オブジェクト３２Ｂの属性情報と、オブジェクト３２Ｃの属性情報と、を比較する。そして、グループ化部６８は、オブジェクト３２Ｂ，３２Ｃをグループ化することが可能であるか否かを上記の比較結果に基づいて判定する。そして、オブジェクト３２Ｂ，３２Ｃをグループ化することが可能であると判定された場合、グループ化部６８は、オブジェクト３２Ｂ，３２Ｃをグループ化する。この場合のオブジェクトグループテーブルは図１１に示すようになる。
【０１６４】
なお、この場合、オブジェクト３２Ｃはすでにオブジェクトグループ「９」に属している。このため、さらに、比較部６６は、オブジェクト３２Ｂの属性情報と、オブジェクトグループ「９」の属性情報と、を比較する。そして、グループ化部６８は、オブジェクト３２Ｂとオブジェクトグループ「９」とをグループ化することが可能であるか否かを上記の比較結果に基づいて判定する。
【０１６５】
オブジェクト３２Ｂとオブジェクトグループ「９」とをグループ化することが可能であると判定された場合、グループ化部６８はオブジェクト３２Ｂとオブジェクトグループ「９」とをグループ化する。この場合のオブジェクトグループテーブルは図１２に示すようになる。
【０１６６】
以上に説明したような判定部６４、比較部６６、及びグループ化部６８の動作を実現するためには、図２１に示すグループ化処理の代わりに、図２８に示すグループ化処理を実行するようにすればよい。
【０１６７】
なお、図２８におけるステップＳ６０１〜Ｓ６０４の処理は図２１のステップＳ２０１〜Ｓ２０４の処理と同様である。また、図２８におけるステップＳ６０５〜Ｓ６０８の処理は図２７のステップＳ５０２〜Ｓ５０５の処理と同様である。このため、ここでは説明を省略する。
【０１６８】
［２］仮想二次元平面３０に配置されているオブジェクト３２の数に基づいて、上記の判定領域（判定領域４０Ａ，４０Ｂ，４０Ｃ）の広さを変えるようにしてもよい。例えば、仮想二次元平面３０に配置されているオブジェクト３２の数が多いほど、判定領域を狭くするようにしてもよい。言い換えれば、仮想二次元平面３０に配置されているオブジェクト３２の数が少ないほど、判定領域を広くするようにしてもよい。
【０１６９】
仮想二次元平面３０に配置されているオブジェクト３２の数に基づいて、判定領域の広さを変えるためには、オブジェクト３２の数と、判定領域の広さに関する情報と、の対応関係に関する対応関係情報が必要となる。
【０１７０】
図２９はこの対応関係情報の一例を示す。図２９に示す対応関係情報では、オブジェクト３２の数（ｎ）と、基準距離（ｒ）と、の対応関係が定められている。図２９において「Ｎ１」及び「Ｎ２」は所定の数を示しており、これらは「Ｎ１＜Ｎ２」の関係を有している。また、「Ｒ１」、「Ｒ２」、及び「Ｒ３」は所定の距離を示しており、これらは「Ｒ１＞Ｒ２＞Ｒ３」の関係を有している。図２９に示す対応関係情報は、オブジェクト３２の数（ｎ）が多いほど、基準距離（ｒ）が短くなるように設定されている。なお、対応関係情報は数式形式の情報であってもよい。
【０１７１】
ここで、図６に示すようにオブジェクト３２Ａが移動された場合を想定する。この場合、制御部１１は、上記の対応関係情報と、仮想二次元平面３０に配置されているオブジェクト３２の数と、に基づいて、基準距離（ｒ）を取得する。そして、制御部１１は、オブジェクト３２Ａからの距離が基準距離（ｒ）以内である領域をオブジェクト３２Ａの判定領域４０Ａとして設定する。
【０１７２】
仮想二次元平面３０に配置されているオブジェクト３２の数が多い場合、オブジェクト３２の判定領域に他のオブジェクト３２が含まれやすくなる。このような状態では、例えば、ユーザがあるオブジェクト３２（ここでは「オブジェクトＰ」と記載する）と他のオブジェクト３２（ここでは「オブジェクトＱ」と記載する）とをグループ化したいと考えていない場合であっても、ユーザがオブジェクトＰを移動させると、オブジェクトＰの判定領域にオブジェクトＱが含まれてしまい、その結果として、オブジェクトＰ，Ｑがグループ化されてしまうおそれがある。このような場合、ユーザが意図していないオブジェクト３２同士がグループ化されてしまうことになるため、ユーザがストレスを感じてしまうおそれがある。この点、以上のようにすれば、仮想二次元平面３０に配置されているオブジェクト３２の数に応じて、オブジェクト３２の判定領域の広さが制御されるため、上記のような不都合の発生を低減できるようになる。
【０１７３】
［３］例えば、オブジェクト３２の密集の程度に基づいて、上記の判定領域（判定領域４０Ａ，４０Ｂ，４０Ｃ）の広さを変えるようにしてもよい。具体的には、オブジェクト３２の判定領域の広さを、そのオブジェクト３２の付近における他のオブジェクト３２の密集の程度に基づいて変えるようにしてもよい。例えば、オブジェクト３２の密集の程度が高いほど、判定領域を狭くするようにしてもよい。言い換えれば、オブジェクト３２の密集の程度が低いほど、判定領域を広くするようにしてもよい。
【０１７４】
オブジェクト３２の付近におけるオブジェクト３２の密集の程度に基づいて、そのオブジェクト３２の判定領域の広さを変える場合、オブジェクト３２の密集の程度に関する情報と、判定領域の広さに関する情報と、の対応関係に関する情報が必要となる。この対応関係情報は例えば図２９に示した対応関係情報と同様の情報となる。ただし、この場合、「オブジェクト３２の数（ｎ）」は、オブジェクト３２の付近に位置しているオブジェクト３２の数を意味することになる。なお、この場合も対応関係情報は数式形式の情報であってもよい。
【０１７５】
ここで、図６に示すようにオブジェクト３２Ａが移動された場合を想定する。この場合、制御部１１は、オブジェクト３２Ａの付近に位置しているオブジェクト３２の数（ｎ）を取得する。「オブジェクト３２Ａの付近」とは、例えば、オブジェクト３２Ａの代表点４２Ａから所定距離以内の領域とすればよい。そして、制御部１１は上記の対応関係情報と上記の数（ｎ）とに基づいて、基準距離（ｒ）を取得し、オブジェクト３２Ａの代表点４２Ａから基準距離（ｒ）以内の領域をオブジェクト３２Ａの判定領域４０Ａとして設定する。
【０１７６】
なお、上記のような対応関係情報を用いることなく、上記の判定領域の広さを変えることも可能である。
【０１７７】
ここでも、図６に示すようにオブジェクト３２Ａが移動された場合を想定する。この場合、制御部１１は、オブジェクト３２Ａの判定領域４０Ａに含まれる他のオブジェクト３２の数を取得する。そして、オブジェクト３２Ａの判定領域４０Ａに含まれる他のオブジェクト３２の数が閾値以上である場合、制御部１１はオブジェクト３２Ａの判定領域４０Ａを狭くする。
【０１７８】
例えば、制御部１１は、現在の基準距離（Ｒ）に所定の係数ｋ（０＜ｋ＜１）を乗じることによって得られる距離（Ｒ＊ｋ）を新たな基準距離（Ｒ）として設定することによって、オブジェクト３２Ａの判定領域４０Ａを狭くする。このようにして、制御部１１は、オブジェクト３２Ａの判定領域４０Ａに含まれる他のオブジェクト３２の数が閾値未満になるまで、オブジェクト３２Ａの判定領域４０Ａを狭くしていくようにしてもよい。
【０１７９】
オブジェクト３２の付近に他のオブジェクト３２が密集している場合、そのオブジェクト３２の判定領域に他のオブジェクト３２が含まれやすくなる。このような状態では、例えば、ユーザがオブジェクト３２（ここでは「オブジェクトＰ」と記載する）と他のオブジェクト３２（ここでは「オブジェクトＱ」と記載する）とをグループ化したいと考えていない場合であっても、オブジェクトＰの判定領域にオブジェクトＱが含まれてしまい、その結果として、オブジェクトＰ，Ｑがグループ化されてしまうおそれがある。このような場合、ユーザが意図していないオブジェクト３２同士がグループ化されてしまうことになるため、ユーザがストレスを感じてしまうおそれがある。この点、以上のようにすれば、オブジェクト３２の密集の程度に応じて判定領域の広さが制御されるため、上記のような不都合の発生を低減できるようになる。
【０１８０】
なお、以上に説明した変形例［３］を、先に説明した変形例［２］と組み合わせるようにしてもよい。すなわち、例えばオブジェクト３２Ａの判定領域４０Ａの広さを設定する場合には、オブジェクト３２Ａの判定領域４０Ａの広さを、仮想二次元平面３０に配置されているオブジェクト３２の数と、オブジェクト３２Ａの付近におけるオブジェクト３２の密集の程度と、の両方に基づいて設定するようにしてもよい。
【０１８１】
より具体的には、仮想二次元平面３０に配置されたオブジェクト３２の数に関する情報と、オブジェクト３２の密集の程度に関する情報と、の組み合わせと、判定領域の広さに関する情報と、の対応関係に関する情報に基づいて、オブジェクト３２Ａの判定領域４０Ａの広さを設定するようにしてもよい。
【０１８２】
あるいは、仮想二次元平面３０に配置されているオブジェクト３２の数が多い場合には、仮想二次元平面３０に配置されているオブジェクト３２の数が少ない場合に比べて、オブジェクト３２Ａの判定領域４０Ａの広さが狭く設定されるようにした上で、オブジェクト３２Ａの付近におけるオブジェクト３２の個数が閾値以上であるならば、判定領域４２Ａの広さをさらに狭く設定するようにしてもよい。
【０１８３】
［４］オブジェクト３２同士の属性情報を比較する場合に比較の対象とする属性項目を、それらのオブジェクト３２に関連づけられたカテゴリに基づいて変えるようにしてもよい。
【０１８４】
オブジェクト３２同士の属性情報を比較する場合に比較の対象とする属性項目を、それらのオブジェクト３２に関連づけられたカテゴリに基づいて変えるためには、カテゴリに関するカテゴリ条件と、比較の対象とする属性項目に関する情報と、を対応づけてなる比較対象項目データが必要となる。図３０はこの比較対象項目データの一例を示す。
【０１８５】
第１のオブジェクト３２及び第２のオブジェクト３２の属性情報を比較する場合、まず、比較部６６は、第１のオブジェクト３２及び第２のオブジェクト３２に関連づけられたカテゴリが同一又は類似であるか否かを判定する。そして、第１のオブジェクト３２及び第２のオブジェクト３２に関連づけられたカテゴリが同一又は類似である場合、比較部６６は上記の比較対象項目データを参照し、第１のオブジェクト３２及び第２のオブジェクト３２のカテゴリが満足するカテゴリ条件に対応づけられた属性項目を取得する。そして、比較部６６は、その属性項目を比較対象として、第１のオブジェクト３２及び第２のオブジェクト３２の属性情報を比較する。
【０１８６】
このようにすれば、第１のオブジェクト３２及び第２のオブジェクト３２に関連づけられたカテゴリに応じて、比較対象の属性項目を変えることが可能になる。すなわち、第１のオブジェクト３２及び第２のオブジェクト３２に関連づけられたカテゴリに適した属性項目のみを比較対象として用いることができるようになる。
【０１８７】
［５］属性情報を比較する際に価格を比較する場合には、現在価格の差が閾値以下である場合に価格が類似していると判定するようにしてもよい。またこの場合、商品のカテゴリによって閾値を変えるようにしてもよい。例えば、高額商品が属するカテゴリの場合には閾値を比較的高い値に設定し、低額商品が属するカテゴリの場合には閾値を比較的低い値に設定するようにしてもよい。
【０１８８】
また例えば、基本価格（定価）から現在価格を引くことによって得られる額（割引額）、又は現在価格を基本価格（定価）によって除することによって得られる数値（割引率）を比較するようにしてもよい。そして、割引額又は割引率の差が閾値以下である場合に価格が類似していると判定するようにしてもよい。このような比較を行うことによって、例えば、割引額又は割引率が高い商品（すなわち、お得な商品）をグループ化できるようになる。
【０１８９】
［６］第１のオブジェクト３２が第２のオブジェクト３２に向かって移動する場合、第１のオブジェクト３２の属性情報と第２のオブジェクト３２の属性情報との類似度に基づいて、第１のオブジェクト３２の移動態様を変えるようにしてもよい。例えば、類似度が基準類似度よりも高い場合には、第１のオブジェクト３２が第２のオブジェクト３２に吸い寄せられるようにして、第１のオブジェクト３２を移動させるようにしてもよい。また例えば、類似度が基準類似度よりも低い場合には、第１のオブジェクト３２から第２のオブジェクト３２への方向とは逆方向への力を受けるようにして、第１のオブジェクト３２を移動させるようにしてもよい。
【０１９０】
［７］仮想二次元平面３０の全体がユーザ端末２０の表示部２５に表示されるようにしてもよい。
【０１９１】
［８］仮想二次元平面３０に代えて、仮想三次元空間にオブジェクト３２を配置するようにしてもよい。そして、仮想三次元空間に設定される視点から見た仮想三次元空間を表す画面がユーザ端末２０の表示部２５に表示されるようにしてもよい。なお、この場合、ユーザ端末２０（ユーザ）ごとに視点を設定するようにすればよい。また、この場合、視点の視野領域が表示対象領域に相当することになる。
【０１９２】
［９］以上では、商品画像がオブジェクト３２に相当する場合の例について説明したが、オブジェクト３２は商品画像以外に相当するようにしてもよい。例えば、料理画像がオブジェクト３２に相当するようにしてもよい。なお、この場合、例えば、料理の材料や料理にかかる時間等が「属性情報」に相当する。また例えば、ファイル又はフォルダを示すアイコン画像がオブジェクト３２に相当するようにしてもよい。なお、この場合、ファイル又はフォルダの名称、サイズ、作成日時や、更新日時等が「属性情報」に相当する。
【０１９３】
［１０］以上では、オブジェクトグループを広告に利用する例について説明したが、オブジェクトグループは広告以外に利用するようにしてもよい。
【０１９４】
［１１］複数のユーザ端末２０のうちのいずれかがサーバ１０の役割を担うようにしてもよい。すなわち、サーバ１０の制御部１１が実行することとして説明した処理を、サーバ１０としての役割を担うユーザ端末２０の制御部２１が実行するようにしてもよい。この場合、判定部６４、比較部６６、グループ化部６８、グループ解除部７０、及び表示制御部７２は、サーバ１０として役割を担うユーザ端末２０において実現されることになる。
【０１９５】
［１２］また、本発明は、一台のユーザ端末２０（情報処理装置）からなる情報処理システム１にも適用することも可能である。すなわち、ユーザが一人でオブジェクト３２をグループ化するような場合にも本発明を適用することが可能である。この場合、サーバ１０の制御部１１が実行することとして説明した処理は、ユーザ端末２０の制御部２１によって実行されることになる。そして、判定部６４、比較部６６、グループ化部６８、グループ解除部７０、及び表示制御部７２は、サーバ１０として役割を担うユーザ端末２０において実現されることになる。
【符号の説明】
【０１９６】
１  情報処理システム、２  通信ネットワーク、１０  サーバ、１１，２１  制御部、１２，２２  主記憶部、１３，２３  補助記憶部、１４，２４  通信部、１５  光ディスクドライブ部、２０  ユーザ端末、２５  表示部、２６  音声出力部、２７  操作部、３０  仮想二次元平面、３２Ａ，３２Ｂ，３２Ｃ，３２Ｄ，３２Ｅ，３２Ｆ，３２Ｇ，３２Ｈ  オブジェクト、３４，３４Ａ，３４Ｂ  表示対象領域、４０Ａ，４０Ｂ，４０Ｃ  判定領域、４２Ａ，４２Ｂ，４２Ｃ，４２Ｄ  代表点、５０，５２  中点、５４  重心、６０  記憶部、６２  属性情報記憶部、６４  判定部、６６  比較部、６８  グループ化部、７０  グループ解除部、７２  表示制御部、８０  広告、８２  重なり領域。
【図１】
0005610655.tif 000002
【図２】
0005610655.tif 000003
【図３】
0005610655.tif 000004
【図４】
0005610655.tif 000005
【図５】
0005610655.tif 000006
【図６】
0005610655.tif 000007
【図７】
0005610655.tif 000008
【図８】
0005610655.tif 000009
【図９】
0005610655.tif 000010
【図１０】
0005610655.tif 000011
【図１１】
0005610655.tif 000012
【図１２】
0005610655.tif 000013
【図１３】
0005610655.tif 000014
【図１４】
0005610655.tif 000015
【図１５】
0005610655.tif 000016
【図１６】
0005610655.tif 000017
【図１７】
0005610655.tif 000018
【図１８】
0005610655.tif 000019
【図１９】
0005610655.tif 000020
【図２０】
0005610655.tif 000021
【図２１】
0005610655.tif 000022
【図２２】
0005610655.tif 000023
【図２３】
0005610655.tif 000024
【図２４】
0005610655.tif 000025
【図２５】
0005610655.tif 000026
【図２６】
0005610655.tif 000027
【図２７】
0005610655.tif 000028
【図２８】
0005610655.tif 000029
【図２９】
0005610655.tif 000030
【図３０】
0005610655.tif 000031