(57)【要約】【課題】所定領域内での使用領域を配置する領域配置装置を提供する。【解決手段】所定領域をマス目に区切り、領域管理する。ユーザＩＤ入力画面を表示し（Ｓ１）、入力を受け付け（Ｓ２）、使用したいマスの形状（希望形状）、開始時刻の入力を受け付ける（Ｓ３）。開始時刻からの連続した３つの時間帯で、希望形状を配置可能な領域を候補マスとして抽出する（Ｓ４）。１つ目と２つ目の時間帯での候補マスの組合せ（第一候補組合せ）を作成し、２つ目と３つ目の時間帯での候補マスの組合せ（第二候補組合せ）を作成する（Ｓ５）。第一候補組合せと第二候補組合せとの組合せ（全体組合せ）のうち、時間帯の移行時の前後で同じマスを使用する組合せが最終候補とされ（Ｓ６）、その中から２つ目と３つ目で同じマスの数が多い全体組合せの示すマスが使用マスとされる（Ｓ７）。マス使用情報に設定され（Ｓ８）、結果が表示される（Ｓ９）。【選択図】図３１
2008310560.tif 000002
【特許請求の範囲】
【請求項１】
所定領域を区切る区切りを識別可能に表示する表示手段を接続した領域配置装置であって、
前記所定領域を区切った領域である区切り領域ごと、かつ、所定の時間の区切りである区切り時間帯ごとに前記区切り領域の使用の有無を示す使用情報を記憶する使用情報記憶手段と、
前記所定領域において使用したい領域の形状である希望形状を入力する希望形状入力手段と、
連続した前記区切り時間帯を選択して前記所定領域を使用したい時間帯である希望時間帯として入力する希望時間帯入力手段と、
前記希望時間帯入力手段により入力された前記希望時間帯中の前記区切り時間帯ごとに、前記使用情報記憶手段に記憶されている前記使用情報に基づいて、前記希望形状入力手段により入力された前記希望形状で使用可能な領域を前記所定領域から使用可能領域として抽出する使用可能領域抽出手段と、
前記希望時間帯入力手段により入力された前記希望時間帯中の前記区切り時間帯ごとに、前記使用可能領域抽出手段により抽出された前記使用可能領域の中から１つの領域を使用領域として選択する使用領域選択手段と、
前記使用情報記憶手段に記憶されている前記使用情報のうち、前記希望時間帯中の前記区切り時間帯の前記使用領域選択手段により選択された前記使用領域をなす前記区切り領域を使用中とする使用情報記憶制御手段と、
前記使用情報記憶手段に記憶されている前記使用情報において前記使用領域とされている領域を識別可能に前記表示手段に表示させる表示制御手段とを備えたことを特徴とする領域配置装置。
【請求項２】
前記使用領域選択手段は、前記希望時間帯をなす連続した２つの前記区切り時間帯それぞれにおいて、先の時間帯の前記使用領域と後の時間帯の前記使用領域とが重なる又は隣接するように前記希望時間帯の前記使用領域をそれぞれ選択することを特徴とする請求項１に記載の領域配置装置。
【請求項３】
前記所定領域を使用する目的を示す目的情報ごとに、当該目的において要する時間である所要時間及び当該所要時間を前記区切り時間で分割した分割時間ごとに使用する形状である目的使用形状を記憶した目的情報記憶手段を備え、
前記希望形状入力手段は、
前記目的情報を入力する目的情報入力手段を備え、
前記目的情報入力手段により入力された前記目的情報に対応して前記目的情報記憶手段に記憶されている前記目的使用形状を前記希望形状とし、
前記希望時間帯入力手段は、
前記所定領域の使用を開始する時刻を開始時刻として入力する開始時刻選択手段を備え、
前記開始時刻選択手段により入力された開始時刻から、前記目的情報入力手段により入力された前記目的情報に対応した前記所要時間が経過した時間帯を前記希望時間帯とすることを特徴とする請求項１又は２に記載の領域配置装置。
【請求項４】
前記表示手段は、前記所定領域を区切るために当該所定領域に設けられた発光体であり、
前記表示制御手段は、前記使用情報において前記使用領域とされている領域を識別可能に前記発光体を発光させることを特徴とする請求項１乃至３のいずれかに記載の領域配置装置。
【請求項５】
請求項１乃至４のいずれかに記載の領域配置装置と、
前記領域配置装置により所定の領域に区切られる前記所定の空間に設置された前記発光体とを備えたことを特徴とする領域配置システム。
【請求項６】
請求項１乃至４のいずれかに記載の領域配置装置の各種処理手段としてコンピュータを機能させることを特徴とする領域配置プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、領域配置装置、領域配置システム及び領域配置プログラムに関するものであり、詳細には、所定の空間を複数の者が使用する場合において、所定の空間内での使用領域を配置する領域配置装置、領域配置システム及び領域配置プログラムに関するものである。
【背景技術】
【０００２】
従来、所定の空間を複数の者が一時的に使用する状況がある。例えば、フィットネススクールやジムでは、所定の空間（スタジオ／ダンスやエアロビクス、ヨガなどを行う広い部屋）を複数の人物が使用している。この場合には、どれだけの領域を使用するのかは、部屋全体のバランス、部屋の中にいる人数、周囲の人の動きの大きさなどを観察し、感覚的に判断している。これは、大変に気を使うことであり、場合によっては周囲の人とのトラブル発生の種となることもある。また、部屋を使用する際には、常に同じ領域を使用するのではなく、その使用目的によっては、使用する領域の形状や広さが変わる場合もある。
【０００３】
また、従来、フィットネスクラブ等のレッスン予約において、レッスン予約ができなかった場合にアクセスログを残し、アフターフォローに利用する予約システムが提案されている（例えば、特許文献１参照）。
【特許文献１】特開２００２−３２９１１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載の発明の予約システムでは、レッスンの予約を管理しているのみであり、レッスン中の各人の使用領域という細かい部分まで管理できるものではない。レッスン中にスタジオのどの領域を使用するのかを管理するものではない。よって、ユーザは周囲の人とのバランスを考え場所取りをしなければならないという問題点があった。また、スタジオの利用に限らず、限られた領域を連続して利用する際に利用したい形状の領域を空き領域に自動的に配置することはできないという問題点があった。
【０００５】
本発明は、上述の問題点を解決するためになされたものであり、所定領域内での使用領域を配置する領域配置装置、領域配置システム及び領域配置プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するため、請求項１に係る発明の領域配置装置では、所定領域を区切る区切りを識別可能に表示する表示手段を接続した領域配置装置であって、前記所定領域を区切った領域である区切り領域ごと、かつ、所定の時間の区切りである区切り時間帯ごとに前記区切り領域の使用の有無を示す使用情報を記憶する使用情報記憶手段と、前記所定領域において使用したい領域の形状である希望形状を入力する希望形状入力手段と、連続した前記区切り時間帯を選択して前記所定領域を使用したい時間帯である希望時間帯として入力する希望時間帯入力手段と、前記希望時間帯入力手段により入力された前記希望時間帯中の前記区切り時間帯ごとに、前記使用情報記憶手段に記憶されている前記使用情報に基づいて、前記希望形状入力手段により入力された前記希望形状で使用可能な領域を前記所定領域から使用可能領域として抽出する使用可能領域抽出手段と、前記希望時間帯入力手段により入力された前記希望時間帯中の前記区切り時間帯ごとに、前記使用可能領域抽出手段により抽出された前記使用可能領域の中から１つの領域を使用領域として選択する使用領域選択手段と、前記使用情報記憶手段に記憶されている前記使用情報のうち、前記希望時間帯中の前記区切り時間帯の前記使用領域選択手段により選択された前記使用領域をなす前記区切り領域を使用中とする使用情報記憶制御手段と、前記使用情報記憶手段に記憶されている前記使用情報において前記使用領域とされている領域を識別可能に前記表示手段に表示させる表示制御手段とを備えている。
【０００７】
また、請求項２に係る発明の領域配置装置では、請求項１に記載の発明の構成に加えて、前記使用領域選択手段は、前記希望時間帯をなす連続した２つの前記区切り時間帯それぞれにおいて、先の時間帯の前記使用領域と後の時間帯の前記使用領域とが重なる又は隣接するように前記希望時間帯の前記使用領域をそれぞれ選択することを特徴とする。
【０００８】
また、請求項３に係る発明の領域配置装置では、請求項１又は２に記載発明の構成に加えて、前記所定領域を使用する目的を示す目的情報ごとに、当該目的において要する時間である所要時間及び当該所要時間を前記区切り時間で分割した分割時間ごとに使用する形状である目的使用形状を記憶した目的情報記憶手段を備え、前記希望形状入力手段は、前記目的情報を入力する目的情報入力手段を備え、前記目的情報入力手段により入力された前記目的情報に対応して前記目的情報記憶手段に記憶されている前記目的使用形状を前記希望形状とし、前記希望時間帯入力手段は、前記所定領域の使用を開始する時刻を開始時刻として入力する開始時刻選択手段を備え、前記開始時刻選択手段により入力された開始時刻から、前記目的情報入力手段により入力された前記目的情報に対応した前記所要時間が経過した時間帯を前記希望時間帯とすることを特徴とする。
【０００９】
また、請求項４に係る発明の領域配置装置では、請求項１乃至３のいずれかに記載の発明の構成に加えて、前記表示手段は、前記所定領域を区切るために当該所定領域に設けられた発光体であり、前記表示制御手段は、前記使用情報において前記使用領域とされている領域を識別可能に前記発光体を発光させることを特徴とする。
【００１０】
また、請求項５に係る発明の領域配置システムでは、請求項１乃至４のいずれかに記載の領域配置装置と、前記領域配置装置により所定の領域に区切られる前記所定の空間に設置された前記発光体とを備えている。
【００１１】
また、請求項６に係る発明の領域配置プログラムでは、請求項１乃至４のいずれかに記載の領域配置装置の各種処理手段としてコンピュータを機能させる。
【発明の効果】
【００１２】
上記課題を解決するため、請求項１に係る発明の領域配置装置では、ユーザの希望する連続した時間帯で、ユーザの希望する形状の領域の使用を、空いた領域から抽出し、それぞれの区切り時間帯ごとに使用領域を決定することができるので、ユーザの希望する時間帯に希望する形状の領域を確保することができる。よって、ユーザが領域を連続した時間帯で使用する場合に、例えば、連続した３つの時間帯で所定の領域を使用したい場合であっても、３回の入力をする必要がなく、１回にまとめて入力すればよいので、ユーザの手間が省ける。
【００１３】
また、請求項２に係る発明の領域配置装置では、請求項１に記載の発明の効果に加えて、希望時間帯をなす連続した２つの区切り時間帯それぞれにおいて、先の時間帯の使用領域と後の時間帯の使用領域とが重なる又は隣接するように希望時間帯の使用領域をそれぞれ選択することができるので、時間の経過により使用する領域の形状が変わったとしても、大きく場所を移動する必要がない。
【００１４】
また、請求項３に係る発明の領域配置装置では、請求項１又は２に記載の発明の効果に加えて、使用の目的と開始時刻を入力するだけで、開始時刻から連続した時間帯を目的に合わせた形状の領域を確保することができる。よって、入力が楽である。また、具体的な形状を入力する場合、目的に合っていない形状を誤って入力してしまう危険性があるが、目的情報を入力すれば、目的に合った領域を間違いなく使用することができる。
【００１５】
また、請求項４に係る発明の領域配置装置では、請求項１乃至３のいずれかに記載の発明の効果に加えて、その選択された使用領域を発光体の発光により識別可能とすることができる。よって、ユーザは所定領域を使用しながら、どの領域が自分が使用してよい領域であるかを知ることができ、領域を使用している他の人にも知らせることができる。例えば、スタジオ等の空間を複数の人が利用したり、公園等の広場を複数の人が利用したりする場合には、周囲の人にぶつかったりすると、トラブルが発生することもある。そこで、使用に際しては、周囲の人にぶつからないように気を使う必要がある。本発明の領域配置装置では、実際に使用する領域に発光体が設置されて使用領域を識別可能としているので、使用開始時だけでなく、使用中における周囲への気遣いを軽減することができる。また、トラブルの発生を防ぐことができる。
【００１６】
また、請求項５に係る発明の領域配置システムでは、したがって、請求項１乃至４のいずれかに記載の発明の効果と同様の効果を奏することができる。
【００１７】
また、請求項６に係る発明の領域配置プログラムをコンピュータに実行させることにより、請求項１乃至４のいずれかに記載の発明の効果と同様の効果を奏することができる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施の形態を図面を参照して説明する。図１は、本発明の領域配置装置に接続したレーザ３（図９参照）が設置された室の模式図である。図１に示す模式図は、フィットネスクラブ等で使用されているスタジオ１００の床１０１と隣り合った２面の壁１０２を示している。本実施の形態では、床１０１は６×６＝３６の領域に分けられている。そして、床１０１を成す床板の下層において、領域の境界に床１０１から天井に向けて発光されるレーザ３が列設されている。なお、床板はレーザ３の発するレーザ光を透過可能な素材で形成されている。これにより、所定の領域の境界に設けられているレーザ３を発光させることにより、室内には床１０１から天井に向けての光の壁が形成される。
【００１９】
本実施の形態では、このスタジオ１００を使用するユーザは、スタジオ１００の使用開始時刻、及び、使用したい領域の形状又は利用する運動プログラムをスタジオ利用受付装置１に入力する。そして、スタジオ利用受付装置１では、使用可能な領域をユーザに割り当て、割り当てた領域の境界線に設置されているレーザ３を発光させ、光の壁を形成する。これにより、ユーザはスタジオ１００を使用する際に自分がどれだけの領域を使用してよいのか明確に判り、周囲の人に対して領域を侵していないか、ぶつからないかということを気にする必要がなくなるので、集中してスタジオ１００を使用することができる。また、本実施の形態では、スタジオ１００の使用は３０分単位とされている。そして、３０分が第一枠（０〜１０分）、第二枠（１０分〜２０分）、第三枠（２０分〜３０分）の３つの時間帯に分割され管理されている。そして、開始時刻は営業時間中の毎時０分、１０分、２０分、３０分、４０分、５０分とされている。
【００２０】
図１に示すように、床１０１は６×６の３６の領域（マス）に分割されている。この領域（マス）を利用して、ユーザの使用する領域を割り当てる。なお、図１における左上−右下方向を床１０１の横方向とし、領域（マス）を座標で捉える際のＸ軸方向とする。そして、左下−右上方向を床１０１の縦方向とし、領域（マス）を座標で捉える際のＹ軸方向とする。また、運動プログラムを利用する場合には、その運動プログラムの内容に応じて時間帯ごとに使用する領域の形状が指定されている。
【００２１】
次に、図２乃至図６に示すスタジオ利用受付装置１で表示される画面を参照して、領域の割り当てについて説明する。図２は、選択方法入力画面２０２を示す模式図であり、図３は、運動プログラム選択画面２０３を示す模式図であり、図４は、形状選択画面２０４を示す模式図であり、図５は、開始時刻選択画面２０５を示す模式図であり、図６は、使用エリア表示画面２０６を示す模式図である。
【００２２】
スタジオ利用受付装置１のメインメニュー画面（図示外）において「スタジオ利用」メニューが選択されるとユーザＩＤ入力画面（図示外）が表示される。ここで、ユーザＩＤが入力されると、図３に示す選択方法入力画面２０２が表示される。本実施の形態では、スタジオ１００を使用する際に、運動プログラムを指定する方法と、使用エリア（希望形状）を指定する方法の２つの方法で利用の申し込みをすることができる。本実施の形態では、運動プログラムごとに使用するマスの形状が決められているので、運動プログラムが選択されることにより、ユーザが使用するマスの形状（希望形状）も決定されることとなる。
【００２３】
そこで、選択方法入力画面２０２には、運動プログラムボタン２０２１及び使用エリアボタン２０２２が設けられている。運動プログラムボタン２０２１を選択し、確定ボタン２０２３が選択されると、図３に示す運動プログラム選択画面２０３が表示される。図３に示すように、運動プログラム選択画面２０３には、運動プログラム名が列記されるリストボックス２０３１及び確定ボタン２０３２が設けられている。このリストボックス２０３１で運動プログラムが選択され、確定ボタン２０３２が選択されると、リストボックス２０３１で選択されている運動プログラムが「希望運動プログラム」とされる。
【００２４】
また、図２に示した選択方法入力画面２０２において使用エリアボタン２０２２が選択された場合には、図４に示す形状選択画面２０４が表示される。この形状選択画面２０４には、マスの形状を示す図ごと、時間帯ごとにラジオボタンが付された形状選択部２０４１及び確定ボタン２０４２が設けられている。「最初１０分」、「途中１０分」、「最後１０分」の３つの時間帯ごとに１つの形状を選択することができる。ラジオボタンにより使用するマスの形状が選択され、確定ボタン２０４２が選択されると、選択された形状が希望形状とされる。なお、ここでは希望形状をラジオボタンにより選択させているが、ユーザに縦方向のマス数及び横方向のマス数を入力させるようにしてもよい。
【００２５】
そして、運動プログラム選択画面２０３又は形状選択画面２０４により希望形状が指定された後には、図５に示す開始時刻選択画面２０５が表示される。この開始時刻選択画面２０５には、開始時刻が列記されるリストボックス２０５１及び確定ボタン２０５２が設けられている。このリストボックス２０５１で開始時刻が選択され、確定ボタン２０５２が選択されると、リストボックス２０５１で選択されている開始時刻が「開始時刻」とされる。
【００２６】
そして、現在のスタジオ１００の使用状況に対して希望運動プログラムや希望の形状が使用できる場合には、図６に示す使用エリア表示画面２０６が表示される。この使用エリア表示画面２０６には、スタジオ１００の床１０１のマスを模式的に表示したマス目２０６１が表示されており、マスを塗り潰すことによりユーザが使用してよいマスを示している。
【００２７】
次に、図７及び図８を参照して、スタジオ１００の床１０１のマスについて説明する。図７は、床１０１のマスに番号及び領域の名称（マス名）を示したものであり、図８は、図７に示したマスの境界線に付された識別番号を示す模式図である。図７及び図８では、紙面左右方向を横方向とし、紙面上下方向を縦方向としている。なお、図７及び図８において紙面右方向へ進む方向をＸ軸の増加方向とし、紙面上方向へ進む方向をＹ軸の増加方向とする。また、Ｘ軸の増加方向を右方向、Ｘ軸の減少方向を左方向、Ｙ軸の増加方向を奥方向、Ｙ軸の減少方向を手前方向と呼ぶこととする。
【００２８】
図７では、領域（マス）内の上段に番号、下段にマス名が記載されている。横方向及び縦方向で最も小さい値となるマスの番号が「１」、マス名が「０１０１」とされている。なお、マス名はマスを示すＸ座標及びＹ座標を２桁で並べた文字列とされている。つまり、マス名が「０３０４」であれば、Ｘ座標＝３，Ｙ座標＝４の位置にあることが判る。そして、番号「１」のマスから右方向へ向かって、番号「２」、マス名「０２０１」のマス，番号「３」、マス名「０３０１」のマス，番号「４」、マス名「０４０１」のマス，番号「５」、マス名「０５０１」のマス，番号「６」、マス名「０６０１」のマスというように続く。そして、一列奥側のマスについて、左から順に番号「７」、マス名「０１０２」のマス，番号「８」、マス名「０２０２」のマス，番号「９」、マス名「０３０２」のマス，番号「１０」、マス名「０４０２」のマス，番号「１１」、マス名「０５０２」のマス，番号「１２」、マス名「０６０２」のマスというように続く。以上のように、左から右へ、手前から奥へ順に番号が割り当てられ、Ｘ座標及びＹ座標を２桁で並べた文字列がマス名とされている。
【００２９】
また、図８に示すように、マス名「０１０１」，番号「１」のマスの手前側の境界線には「ｈ１＿１」、奥側の境界線には「ｈ１＿２」、左側の境界線には「ｐ１＿１」、右側の境界線には「ｐ２＿１」が振られている。そして、マス名「０２０１」，番号「２」のマスの手前側の境界線には「ｈ２＿１」、奥側の境界線には「ｈ２＿２」、左側の境界線は番号「１」の右側の境界線と同じ境界線なので「ｐ２＿１」、右側の境界線には「ｐ３＿１」が振られている。また、マス名「０１０２」，番号「７」のマスの手前側の境界線は番号「１」のマスの奥側の境界線と同じ境界線なので「ｈ１＿２」、奥側の境界線には「ｈ１＿３」、左側の境界線には「ｐ１＿２」、右側の境界線には「ｐ２＿２」が振られている。マスの左側の境界線には、「ｐ」，ｘ座標１桁，「＿」，Ｙ座標１桁を並べた文字列が振られ、マスの右側の境界線には、「ｐ」，ｘ座標１桁＋１，「＿」，Ｙ座標１桁を並べた文字列が振られている。そして、マスの手前側の境界線には、「ｈ」，ｘ座標１桁，「＿」，Ｙ座標１桁を並べた文字列が振られている。マスの奥側の境界線には、「ｈ」，ｘ座標１桁，「＿」，Ｙ座標１桁＋１を並べた文字列が振られている。
【００３０】
次に、図９を参照して、スタジオ利用受付装置１の電気的構成について説明する。図９は、スタジオ利用受付装置１の電気的構成を示すブロック図である。スタジオ利用受付装置１は所謂パーソナルコンピュータであり、図９に示すように、スタジオ利用受付装置１には、スタジオ利用受付装置１の制御を司るＣＰＵ１０が設けられている。そして、ＢＩＯＳ等を記憶したＲＯＭ１１、種々のデータを一時的に記憶するＲＡＭ１２、種々のデータを記憶するＨＤＤ１３、ユーザからの入力を受け付けるキーボード１４及びマウス１５、画像を表示するディスプレイ１６、レーザ制御装置２を接続する通信装置１７、時間を計測するＲＴＣ１８が少なくとも設けられている。
【００３１】
レーザ制御装置２には、床１０１の床板の下層に設置されたレーザ３が接続されている。このレーザ３は、マスの境界線ごとにグループ化されてレーザ制御装置２で管理されている。１つの境界線には１００個のレーザ３が設置されている。スタジオ利用受付装置１は、レーザ制御装置２に対してどの境界線を何％の出力で発光させるかを指示するコマンドを出力する。レーザ制御装置２はコマンドに応じて、レーザ３を発行させる。例えば、「ｈ１＿１」の境界線を１００％で出力するコマンドを受けた場合には、「ｈ１＿１」のグループに属している１００個の全てを発光させる。また１０％の場合には、例えば、１０，２０，３０，４０，５０，６０，７０，８０，９０，１００番目の１０個のレーザ３を発光させる。
【００３２】
なお、スタジオ利用受付装置１とレーザ制御装置２との接続は、ＵＳＢ接続等の直接接続であってもよいし、ＬＡＮを介した接続であってもよい。また、スタジオ利用受付装置１に直接レーザ３を接続して、スタジオ利用受付装置１にレーザ制御装置の機能を持たせてもよい。
【００３３】
次に、図１０乃至図１７を参照して、ＨＤＤ１３に設けられている記憶エリアについて説明する。図１０は、ＨＤＤ１３に設けられている記憶エリアを示す模式図であり、図１１は、ＨＤＤ１３に設けられている運動プログラム情報記憶エリア１３２の構成を示す模式図であり、図１２は、縮小テーブル記憶エリア１３３の構成を示す模式図ある。そして、図１３は、ＨＤＤ１３に設けられているマス使用情報記憶エリア１３６の構成を示す模式図であり、図１４は、ＨＤＤ１３に設けられている境界線使用情報記憶エリア１３７の構成を示す模式図である。そして、図１５は、スタジオ１００の利用状態の一例を示す模式図３０１であり、図１６は、図１５に示した状態の次の時間帯の状態の一例を示す模式図３０２であり、図１７は、図１６に示した状態の次の時間帯の状態の一例を示す模式図３０３である。
【００３４】
図１０に示すように、ＨＤＤ１３には、スタジオ利用受付プログラム記憶エリア１３１、運動プログラム情報記憶エリア１３２（図１１参照）、縮小テーブル記憶エリア１３３（図１２参照）、マス境界線情報記憶エリア１３４、ユーザ情報記憶エリア１３５、マス使用情報記憶エリア１３６（図１３参照）、境界線使用情報記憶エリア１３７が少なくとも設けられている。スタジオ利用受付プログラム記憶エリア１３１には、パーソナルコンピュータをスタジオ利用受付装置１として機能させるためのスタジオ利用プログラムが記憶されている。ＣＰＵ１０がこのスタジオ利用プログラムを実行することにより、パーソナルコンピュータがスタジオ利用受付装置１として機能する。
【００３５】
運動プログラム情報記憶エリア１３２には、運動プログラム名及び、その運動プログラムに関する情報が記憶されている。図１１に示すように、運動プログラム情報記憶エリア１３２には、運動プログラム名欄、形状欄が少なくとも設けられている。運動プログラム名欄には、運動プログラム名が記憶され、形状欄には、第一枠〜第三枠の三つの時間帯ごとに（Ｘ軸方向のマスの個数，Ｙ軸方向のマスの個数）が記憶されている。そして、マス境界線情報記憶エリア１３４には、マスの境界線を示す情報が記憶される。例えば、図８に示した例では、マス番号「１」に対応して、「ｈ１＿１」，「ｈ１＿２」，「ｐ１＿１」，「ｐ２＿１」が記憶されている。
【００３６】
そして、縮小テーブル記憶エリア１３３には、希望形状を縮小した形状が記憶されている。本実施の形態のスタジオ利用受付装置１では、希望形状を配置できない場合に、希望形状を縮小する。そこで、図１２に示すように、縮小テーブル記憶エリア１３３には、希望形状欄と縮小形状欄とが設けられており、希望形状に対してどのサイズに縮小するかの情報が対になって記憶されている。例えば、（２，１）又は（１，２）の希望形状であれば（１，１）の形状に縮小される。そして、ユーザ情報記憶エリア１３５には、ユーザＩＤに対応してユーザに関する情報が記憶されている。例えば、ユーザの氏名、性別、属するグループ、年齢などである。
【００３７】
そして、マス使用情報記憶エリア１３６には、床１０１を分割した各領域（マス）の使用状況が記憶される。図１３に示すように、マス使用情報記憶エリア１３６には、時間帯欄、マス番号欄、マス名欄、使用中フラグ欄、運動プログラム名欄、ユーザＩＤ欄が少なくとも設けられている。そして、時間帯ごとに番号「１」〜「３６」までのマスの情報が記憶される。時間帯欄は、１０分で区切られたスタジオ１００を使用できる時間帯を示す値（年月日、開始時刻〜終了時刻）が記憶されている。番号欄には、図７に示したマスの番号が記憶され、マス名欄には、図７に示したマス名が記憶されている。そして、使用中フラグは、そのマスが使用中であるか否かを示しており、「１」が使用中を示し、「０」が空きを示している。そして、運動プログラム名欄にはそのマスを使用している運動プログラム名が記憶され、ユーザＩＤ欄にはそのマスを使用しているユーザのＩＤ（ユーザＩＤ）が記憶される。そして、図１４に示すように、境界線使用情報記憶エリア１３７には、ユーザごとに使用中の領域の境界線（レーザ３を発光させている境界線）を示す識別番号、レーザ３の照射量が記憶される。
【００３８】
なお、図１３及び図１４のデータは、図１５乃至図１７に示す使用例でのものである。図１５乃至図１７に示す各マスに記されている値は、１段目がマスの番号、２段目がマス名、３段目がユーザＩＤである。なお、ユーザＩＤが「Ａ」であるユーザを「ユーザＡ」ということとする。図１５に示す模式図３０１は、２００７年５月２０日の１９：１０〜１９：２０の時間帯の状態を示している。ここでは、ユーザＡがマス番号「１９〜２２」の（４，１）のマスを使用し、ユーザＣがマス番号「５，６，１１，１２」の（２，２）のマスを使用し、ユーザＤがマス番号「２８〜３０，３４〜３６」の（３，２）のマスを使用している。そして、図１６に示す模式図３０２は、同日１９：２０〜１９：３０の時間帯の状態を示している。ここでは、新たにユーザＥがマス番号「２１〜２４」の（４，１）のマスを使用している。そして、ユーザＣ，Ｄは前の時間帯と同じマスを使用しているが、ユーザＡは「７，１３，１９」の（１，３）のマスの使用に移行している。そして、図１７に示す模式図３０３は、同日１９：３０〜１９：４０の時間帯の状態を示している。ここでは、新たにユーザＦが「３１〜３３」の（３，１）の３つのマスを使用している。そして、ユーザＣ，Ｅは前の時間帯と同じマスを使用しているが、ユーザＡ，Ｄの使用は前の時間帯で終了している。
【００３９】
次に、図１８乃至図２７を参照して、ＲＡＭ１２に設けられている記憶エリアについて説明する。図１８は、ＲＡＭ１２に設けられている記憶エリアを示す模式図であり、図１９は、希望形状記憶エリア１２４の構成を示す模式図であり、図２０は、ＲＡＭ１２に設けられている候補マス記憶エリア１２６の構成を示す模式図であり、図２１は、マス組合せ記憶エリア１２７の構成を示す模式図であり、図２２は、重複マス数記憶エリア１２９の構成を示す模式図であり、図２３は、第一選択組合せ記憶エリア１４１の構成を示す模式図であり、図２４は、第二選択組合せ記憶エリア１４２の構成を示す模式図である。そして、図２５は、第二枠候補基準マス記憶エリア１４３の構成を示す模式図であり、図２６は、最終全体組合せ記憶エリア１４４の構成を示す模式図であり、図２７は、ＲＡＭ１２に設けられている使用マス記憶エリア１４５を示す模式図である。なお、図１９乃至図２７では、図１５乃至図１７に示した時間帯に、ユーザＢが運動プログラム「エアロ２」を希望した際のデータ例を示している。
【００４０】
図１８に示すように、ＲＡＭ１２には、入力ユーザＩＤ記憶エリア１２１、選択方法記憶エリア１２２、希望運動プログラム名記憶エリア１２３、希望形状記憶エリア１２４、候補マス記憶エリア１２６（図２０参照）、マス組合せ記憶エリア１２７（図２１参照）、縮小フラグ記憶エリア１２８、重複マス数記憶エリア１２９（図２２参照）、第一選択組合せ記憶エリア１４１（図２３参照）、第二選択組合せ記憶エリア１４２（図２４参照）、第二枠候補基準マス記憶エリア１４３（図２５参照）、最終全体組合せ記憶エリア１４４（図２６参照）、使用マス記憶エリア１４５（図２７参照）、境界線記憶エリア１４６が少なくとも設けられている。
【００４１】
入力ユーザＩＤ記憶エリア１２１には、ユーザにより入力されたユーザＩＤが記憶される。選択方法記憶エリア１２２には、ユーザにより選択されたスタジオの使用方法を示す値が記憶される。そして、希望運動プログラム名記憶エリア１２３には、運動プログラムを利用すると選択された場合に、利用される運動プログラム名が記憶される。また、希望形状記憶エリア１２４には、希望の形状を指定すると選択された場合に、利用されるマスの形状が３つの時間帯ごとに記憶される。図１９に示すように、希望形状記憶エリア１２４は時間帯を示す時間番号を第一の次元として一次元配列で構成されており、ｘ欄、ｙ欄が構成要素として設けられている。第ｔ枠のｘ軸方向のマス数は、ｋｅｉｊｏ［ｔ］．ｘに記憶され、第ｔ枠のｙ軸方向のマス数はｋｅｉｊｏ［ｔ］．ｙに記憶される。図１９に示す例は、運動プログラム「エアロ２」が選択された場合の希望形状記憶エリア１２４である。
【００４２】
そして、候補マス記憶エリア１２６には、３つの時間帯ごとに使用マスの候補となっているマス群（以下、「候補マス」という）に関する情報が記憶される。図２０に示すように、候補マス記憶エリア１２６は、時間帯を示す時間番号ｔを第一の次元とし、候補マスを示す候補番号ｊを第二の次元とし、候補基準マスのマス番号欄、候補基準マスのマス名欄、要素マス欄を要素とした二次元配列として構成されている。なお、要素マス欄は第一次元配列となっている。以下、例えば、ｔ番目の時間帯の候補番号ｊのマス番号を示す場合には、ｔ［ｔ］．ｋｏｕｈｏ［ｊ］．マス番号と示す。また、ｋ番目の要素マス欄についてはｔ［ｔ］．ｋｏｕｈｏ［ｊ］．ｙｏｕｓｏ［ｋ］と示す。また、マス名欄には候補マスの一番左奥のマスのマス名が記憶される。なお、以下、マス群の一番左奥のマスを「基準マス」といい、候補マスの基準マスを「候補基準マス」という。図２０に示す例は、図１５乃至図１７に示した状態で、図１９に示した希望形状を配置しようとした場合の候補マス記憶エリア１２６である。
【００４３】
そして、マス組合せ記憶エリア１２７には、第一枠の候補マスと第二枠の候補マスとの組合せである「第一候補組合せ」、第二枠の候補マスと第三枠の候補マスとの組合せである「第二候補組合せ」に関する情報が、組合せごとに記憶されている。図２１に示すように、マス組合せ記憶エリア１２７は、第一次元配列で構成され、時間欄、自分欄、相手欄、重複欄、ｗｍａｘ欄が少なくとも設けられている。番号欄は第一次元配列の配列番号を示す値であり「１」から順に整数の値をとる。そして、時間欄には、第一枠と第二枠との組合せである場合には「１」が記憶され、第二枠と第三枠との組合せである場合には「２」が記憶される。そして、自分欄には、第一枠と第二枠との組合せである場合には第一枠での候補基準マスのマス番号が記憶され、第二枠と第三枠との組合せである場合には第二枠での候補基準マスのマス番号が記憶される。つまり、組合せのうち前の時間帯の候補基準マスのマス番号が記憶される。ここに記憶されている候補基準マスを「自分側候補基準マス」という。そして、相手欄には、組合せのうち後の時間帯の候補基準マスのマス番号が記憶される。ここに記憶されている候補基準マスを「相手側候補基準マス」という。そして、重複欄はさらに第一次元配列で構成されており、前の時間帯の基準マスと後の時間帯の基準マスとで重複するマス（「重複マス」という）のマス番号が記憶される。そして、ｗｍａｘ欄には重複したマスの数が記憶される。図２１に示す例は、図２０に示した候補マスでのマス組合せを示したマス組合せ記憶エリア１２７である。
【００４４】
そして、縮小フラグ記憶エリア１２８は、配列要素が３つの第一次元配列で構成されており、３つの時間帯の縮小フラグが記憶されている。なお、第一枠の縮小フラグを縮小フラグ［１］、第二枠の縮小フラグを縮小フラグ［２］、第三枠の縮小フラグを縮小フラグ［３］と表すこととする。そして、重複マス数記憶エリア１２９には、第一候補組合せ（第一枠の候補マスと第二枠の候補マスとの組合せ）における重複マスの個数が記憶される。図２２に示すように、重複マス数記憶エリア１２９は第一次元配列で構成されている。図２２に示す例は、図２１に示したマス組合せ記憶エリア１２７での重複マス数である。図２１に示すように、時間欄が第一候補組合せを示す「１」であり、重複マス数が記憶されたｗｍａｘ欄が０以上であるのは、番号「１」，「４」，「５」，「８」，「１１」の「３」と、番号「１４」の「２」がある。よって、図２２に示す例では、１番目に「３」、２番目に「２」が記憶されている。
【００４５】
そして、第一選択組合せ記憶エリア１４１には、第一候補組合せを示すマス組合せ記憶エリア１２７の配列番号が記憶される。そして、第二選択組合せ記憶エリア１４２には、第二候補組合せを示すマス組合せ記憶エリア１２７の配列番号が記憶される。そして、第二枠候補基準マス記憶エリア１４３には、第一候補組合せで第二枠の候補基準マスとされているマスの番号が抽出されて記憶される。そして、最終全体組合せ記憶エリア１４４には、最終的に候補とされた第一枠の候補マスと第二枠の候補マスとの組合せである「第一組合せ」と、第二枠の候補マスと第三枠の候補マスとの組合せである「第二組合せ」との組合せである「最終全体組合せ」が記憶される。図２６に示すように、最終全体組合せ記憶エリア１４４には、第一組合せ番号欄、第二組合せ番号欄、ｓｍａｘ欄が設けられている。第一組合せ番号欄には、第一組合せを示すマス組合せ記憶エリア１２７の配列番号が第一組合せ番号として記憶され、第二組合せ番号欄には、第二組合せを示すマス組合せ記憶エリア１２７の配列番号が第二組合せ番号として記憶される。そして、ｓｍａｘ欄には第二組合せの重複マスの数が記憶される。
【００４６】
そして、使用マス記憶エリア１４５には、時間帯ごとに使用マスを構成する使用要素マスのマス番号が記憶される。図２７に示すように、使用マス記憶エリア１４５は、時間帯を示す時間番号ｔを第一の次元とし、使用番号を第二の次元とする二次元配列で構成されている。第一の次元は３つの時間帯なので３つであり、第二の次元は各時間帯の使用マスの形状により決定する。使用マスの形状が（Ｘ，Ｙ）であればＸ×Ｙ個の配列要素となる。そして、境界線記憶エリア１４６には、使用マスの周囲の境界線を示す情報が記憶される。
【００４７】
ここで、図２８乃至図３０に、図１５乃至図１７に示した状態において、ユーザＢが運動プログラム「エアロ２」を１９：１０を開始時刻として希望した場合の配置後の結果を示す。図２８は、ユーザＢにとっての第一枠である１９：１０〜１９：２０の時間帯を示す模式図３１１である。ユーザＢはマス番号「１〜４」の（４，１）の領域を使用マスとしている。図２９は、ユーザＢにとっての第二枠である１９：２０〜１９：３０の時間帯を示す模式図３１２である。ユーザＢはマス番号「２〜４，８〜１０」の（３，２）の領域を使用マスとしている。図３０は、ユーザＢにとっての第三枠である１９：３０〜１９：４０の時間帯を示す模式図３１３である。ユーザＢはマス番号「２，３，８，９」の（２，２）の領域を使用マスとしている。
【００４８】
次に、図３１乃至図４５を参照して、スタジオ利用受付装置１の動作について説明する。図３１は、メイン処理のフローチャートであり、図３２は、メイン処理の中で実施される入力処理のフローチャートであり、図３３は、メイン処理の中で実施される候補検索処理のフローチャートであり、図３４は、候補検索処理の中で実施される候補基準マス抽出処理のフローチャートであり、図３５は、メイン処理の中で実施される候補組合せ処理のフローチャートであり、図３６は、候補組合せ処理の中で実施される候補組合せ作成処理のフローチャートである。そして、図３７は、メイン処理の中で実施される最終候補検索処理のフローチャートであり、図３８は、最終候補検索処理の中で実施される第一選択組合せ抽出処理のフローチャートであり、図３９は、最終候補検索処理の中で実施される全体組合せ検索処理のフローチャートであり、図４０は、全体組合せ検索処理の中で実施される第二候補組合せ最大重複数抽出処理のフローチャートであり、図４１は、全体組合せ検索処理の中で実施される第二選択組合せ抽出処理のフローチャートであり、図４２は、全体組合せ検索処理の中で実施される全体組合せ抽出処理のフローチャートである。そして、図４３は、メイン処理の中で実施される使用マス決定処理のフローチャートであり、図４４は、メイン処理の中で実施されるマス使用情報設定処理のフローチャートである。そして、図４５は、レーザ出力処理のフローチャートである。
【００４９】
メイン処理は、スタジオ利用受付プログラムがＣＰＵ１０で実施され、メインメニュー画面（図示外）において「スタジオ利用」メニューが選択され、種々の記憶エリアの初期化が行われた後に開始される処理である。図３１に示すように、まず、ユーザＩＤ入力画面２０１（図２参照）が表示される（Ｓ１）。そして、ユーザＩＤ入力画面２０１への入力が受け付けられ、ユーザＩＤ入力欄２０１１に入力された値が入力ユーザＩＤ記憶エリア１２１に記憶される（Ｓ２）。そして、入力処理が行われる（Ｓ３、図３２参照）。入力処理では、希望形状及び開始時刻の入力受付が行われる。図３２に示すように、まず、選択方法入力画面２０２（図２参照）がディスプレイ１６に表示される（Ｓ２１）。そして、選択方法入力画面２０２への入力が受け付けられ、選択方法記憶エリア１２２に記憶される（Ｓ２２）。
【００５０】
ここで、選択方法入力画面２０２において「運動プログラム」が選択された場合には（Ｓ２３：ＹＥＳ）、運動プログラム選択画面２０３（図３参照）が表示される（Ｓ２４）。そして、運動プログラム選択画面２０３への入力が受け付けられ、希望運動プログラム名記憶エリア１２３に記憶される（Ｓ２５）。そして、運動プログラム情報記憶エリア１３２から選択運動プログラム名の運動プログラムのマスの形状が読み出され、希望形状記憶エリア１２４に記憶される（Ｓ２６）。例えば、ユーザＢが「エアロ２」を選択した場合には、運動プログラム情報記憶エリア１３２（図１１参照）、第一枠（４，１），第二枠（３，２），第三枠（２，２）が読み出され、図１９に示すように、時間番号１のｘ欄に４，ｙ欄に１、時間番号２のｘ欄に３，ｙ欄に２、時間番号３のｘ欄に２，ｙ欄に２が記憶される。そして、Ｓ２９へ進む。
【００５１】
一方、選択方法入力画面２０２において「運動プログラム」が選択されず「使用エリア」が選択された場合には（Ｓ２３：ＮＯ）、形状選択画面２０４（図４参照）が表示され（Ｓ２７）、形状選択画面２０４の入力が受け付けられて、選択された形状が希望形状記憶エリア１２４に記憶される（Ｓ２８）。そして、Ｓ２９へ進む。
【００５２】
次いで、縮小フラグ記憶エリア１２８の各時間帯の縮小フラグがＯＦＦとされる（Ｓ２９）。そして、開始時刻選択画面２０５（図５参照）が表示され（Ｓ３０）、開始時刻の入力が受け付けられ、開始時刻記憶エリア１２５に記憶される（Ｓ３１）。そして、メイン処理へ戻る。
【００５３】
メイン処理では、図３１に示すように、入力処理が終了すると、次いで、候補検索処理が行われる（Ｓ４、図３３，図３４参照）。ここでは、第一枠〜第三枠、それぞれの時間帯での候補マスが決定される。詳細については、図３３，図３４を参照して後述する。次いで、候補検索処理が終了すると（Ｓ４）、候補組合せ処理が行われる（Ｓ５、図３５、図３６参照）。ここでは、第一枠の候補マスと第二枠の候補マスとを組み合わせた「第一候補組合せ」、第二枠の候補マスと第三枠の候補マスとを組み合わせた「第二候補組合せ」が抽出され、それぞれの組合せでの重複マスが抽出される。詳細については、図３５，図３６を参照して後述する。次いで、候補組合せ処理が終了すると（Ｓ５）、最終候補検索処理が行われる（Ｓ６、図３７乃至図４２参照）。ここでは、第一候補組合せと第二候補組合せとの組合せの中から最終候補（最終全体組合せ）が検索される。詳細については、図３７乃至図４２を参照して後述する。
【００５４】
そして、最終候補検索処理が終了すると（Ｓ６）、使用マス決定処理（Ｓ７、図４３参照）が行われる。ここでは、最終候補検索処理で検索された最終全体組合せから１つの全体組合せが決定され、その全体組合せを構成する候補マスが使用マスに決定される。詳細については、図４３を参照して後述する。次いで、マス使用情報設定処理が行われる（Ｓ８、図４４参照）。ここでは、使用マス決定処理で決定された使用マスの情報がマス使用情報記憶エリア１３６に記憶され、レーザ３を点灯させる境界線が決定され、その時間帯にレーザ３を点灯させるための情報が境界線使用情報記憶エリア１３７に記憶される。詳細については、図４４を参照して後述する。そして、使用マス記憶エリア１４５に記憶されている情報に基づいて、使用エリア表示画面２０６が表示される（Ｓ９）。そして、メイン処理は終了する。
【００５５】
ここで、図３３，図３４を参照して、候補検索処理について説明する。ここでは、第一枠〜第三枠、それぞれの時間帯での候補マスが決定される。なお、この候補検索処理では、ｉｍａｘ［］，回転フラグ，変数ｔ，ｃ，ｉ，ｘ，ｙが用いられるが、これらの変数はＲＡＭ１２の所定の記憶エリア（図示外）に記憶される。
【００５６】
まず、変数ｔに初期値の「０」が記憶され、回転フラグがＯＦＦとされ、縮小フラグがＯＦＦとされる（Ｓ４１）。変数ｔは、３つの時間帯を指定するための変数であり、ｔ＝１は第一枠、ｔ＝２は第二枠、ｔ＝３は第３枠を示している。なお、一般的に表現する場合には第ｔ枠と示す。そして、回転フラグは、希望形状の候補マスが確保できなかった場合に、希望形状を回転させて希望形状の候補マスを検索させるために、希望形状を回転させたか否かを示すフラグである。回転フラグがＯＮである場合には回転させたことを示して下り、ＯＦＦである場合には回転させていないことを示している。そして、縮小フラグは、希望形状の候補マスが確保できなかった場合に、希望形状を縮小させて希望形状の候補マスを検索させるために、希望形状を縮小させたか否かを示すフラグである。縮小フラグがＯＮである場合には縮小させたことを示して下り、ＯＦＦである場合には縮小させていないことを示している。
【００５７】
そして、変数ｔに「１」が加算され（Ｓ４２）、ｔの値が３より大きいか否かの判断が行われる（Ｓ４３）。ここでは、変数ｔが３より大きくなければ（Ｓ４３：ＮＯ）、Ｓ４４へ進む。そして、第ｔ枠の希望形状が変数ｘ，ｙに記憶される（Ｓ４４）。具体的には、希望形状記憶エリア１２４に記憶されている第ｔ枠の希望形状のｘ軸の値（ｋｅｉｊｏ［ｔ］．ｘ）が変数ｘに記憶され、第ｔ枠の希望形状のｙ軸の値（ｋｅｉｊｏ［ｔ］．ｙ）が変数ｙに記憶される。ｔ＝１であれば、図１９に示す例では、ｘに４，ｙに１が記憶される。そして、候補基準マス抽出処理が行われる（Ｓ４５、図３４）。この候補基準マス抽出処理では、第ｔ枠での候補基準マスが全てのマスの中から抽出される。
【００５８】
図３４に示すように、まず、変数ｃ，ｉに初期値の「０」が記憶される。変数ｃはマス番号を示す変数であり、変数ｉは抽出された候補基準マスを候補マス記憶エリア１２６に記憶する際の候補番号として第二の次元（ｔ［］．ｋｏｕｈｏ［］）の添字として使用される。次いで、変数ｃに「１」が加算される（Ｓ７２）。そして、変数ｃが３６（マスの数）よりも大きいか否かの判断が行われる（Ｓ７３）。変数ｃが３６より大きくなければ（Ｓ７３：ＮＯ）、Ｓ７４へ進む。
【００５９】
そして、マス使用情報記憶エリア１３６が参照されて、マス番号ｃのマスが使用中であるか否かの判断が行われる（Ｓ７４）。具体的には、ｔ＝１であれば開始時刻記憶エリア１２５に記憶されている開始時刻の示す時間帯のｃ番目のマスの使用中フラグが参照される。また、ｔ＝２であれば開始時刻の示す時間帯の次の時間帯のｃ番目のマスの使用中フラグが参照され、ｔ＝３であれば開始時刻の示す時間帯の２つ後の時間帯のｃ番目のマスの使用中フラグが参照される。そして、使用中フラグがＯＮであり使用中であれば（Ｓ７４：ＹＥＳ）、候補基準マスとすることはできないのでＳ７２へ戻り、変数ｃに１が加算され（Ｓ７２）、次のマスの処理が行われる。一方、使用中フラグがＯＦＦであり使用中でなければ（Ｓ７４：ＮＯ）、候補基準マスとされる可能性がある。
【００６０】
そこで、ｃ番目のマスを基準マスとした際に希望形状（ｘ，ｙ）を構成するマスの使用中フラグが参照される（Ｓ７５）。そして、参照されたマスの使用中フラグの全てがＯＦＦでなく、つまり、１つでもＯＮであれば、全てのマスが使用中でない状態ではないので（Ｓ７６：ＮＯ）、ｃ番目のマスを候補基準マスとすることはできない。よって、Ｓ７２へ戻り、変数ｃに１が加算され（Ｓ７２）、次のマスの処理が行われる。一方、参照されたマスの使用中フラグが全てＯＦＦであり、全てのマスが使用中でない状態であれば（Ｓ７６：ＹＥＳ）、ｃ番目のマスを候補基準マスとすることができるので、変数ｉに１が加算されて（Ｓ７７）、候補マス記憶エリア１２６にｃ番目のマスの情報が記憶される（Ｓ７８）。具体的には、ｔ［ｔ］．ｋｏｕｈｏ［ｉ］．マス名に、ｃ番目のマスのマス名が記憶され、ｔ［ｔ］．ｋｏｕｈｏ［ｉ］．マス番号に変数ｃが記憶され、ｔ［ｔ］．ｋｏｕｈｏ［ｉ］．ｙｏｕｓｏ［１〜ｘ×ｙ］にそれぞれ要素マスのマス番号が記憶される。
【００６１】
そして、Ｓ７２へ戻り、変数ｃに１が加算され（Ｓ７２）、次のマスの処理が行われる。このようにして、繰り返しＳ７２〜Ｓ７８の処理が行われ、変数ｃが３６よりも大きくなり（Ｓ７３：ＹＥＳ）、全てのマスについて候補基準マスとされるか否かの処理が行われたら、ｉｍａｘ［ｔ］に変数ｉが記憶される（Ｓ７９）。ｉｍａｘ［］は、３つの配列要素を持つ１次元配列であり、ｉｍａｘ［ｔ］に記憶される値は第ｔ枠の候補マス数を示している。そして、候補検索処理へ戻る。
【００６２】
図３３に示すように、候補検索処理では、候補基準マス抽出処理が終了すると（Ｓ４５）、変数ｉが０であるか否かの判断が行われる（Ｓ４６）。変数ｉが０でなければ（Ｓ４６：ＮＯ）、候補基準マスがあったということなので、Ｓ４２へ戻り、変数ｔに１が加算され（Ｓ４２）、次の時間帯の処理が行われる。
【００６３】
一方、変数ｉが０である場合には（Ｓ４６：ＹＥＳ）、候補基準マスがなかったということなので、形状を回転させたり、縮小させたりして候補基準マスを検索する。まず、縮小フラグ［ｔ］がＯＮであるか否かの判断が行われる（Ｓ５０）。最初の段階では、まだ希望形状を縮小させておらず、縮小フラグはＯＦＦである（Ｓ５０：ＮＯ）。次いで、回転フラグがＯＮであるか否かの判断が行われる（Ｓ５１）。最初の段階では、まだ希望形状を回転させてもおらず、回転フラグはＯＦＦである（Ｓ５１：ＮＯ）。そこで、ｘ＝ｙであり希望形状が正方形である否かの判断が行われる（Ｓ５２）。ｘ≠ｙであれば（Ｓ５２：ＮＯ）、希望形状のｘ，ｙを入れ替え、（ｘ，ｙ）が（ｙ，ｘ）とされる（Ｓ５３）。そして、回転フラグがＯＮとされる（Ｓ５４）。そして、Ｓ４５へ戻り、回転後の形状で候補基準マス抽出処理が行われる（Ｓ４５）。希望形状を回転させて候補基準マスが抽出されれば（Ｓ４６：ＮＯ）、Ｓ４２へ戻り、変数ｔに１が加算され（Ｓ４２）、次の時間帯の処理が行われる。
【００６４】
希望形状を回転させても候補基準マスが抽出されなければ（Ｓ４６：ＹＥＳ）、再度Ｓ５０へ進む。ここでもまだ縮小フラグ［ｔ］はＯＦＦであるが（Ｓ５０：ＮＯ）、回転フラグはＯＮとされているので（Ｓ５１：ＹＥＳ）、Ｓ５６へ進み、希望形状を縮小させる処理が行われる。
【００６５】
Ｓ５６では、縮小テーブル記憶エリア１３３（図１２参照）が参照されて、希望形状の縮小形状があるか否かの判断が行われる（Ｓ５６）。縮小形状が登録されていれば（Ｓ５６：ＹＥＳ）、縮小フラグ［ｔ］がＯＮとされ（Ｓ５７）、縮小形状が（ｘ，ｙ）に記憶される（Ｓ５８）。そしてＳ４５へ戻り、縮小後の形状で候補基準マス抽出処理が行われる（Ｓ４５）。希望形状を縮小して候補基準マスが抽出されれば（Ｓ４６：ＮＯ）、Ｓ４２へ戻り、変数ｔに１が加算され（Ｓ４２）、次の時間帯の処理が行われる。
【００６６】
一方、希望形状を縮小しても候補基準マスが抽出されなければ（Ｓ４６：ＹＥＳ）、縮小フラグ［ｔ］がＯＮであるので（Ｓ５０：ＹＥＳ）Ｓ５９へ進み、スタジオ１００で使用可能なエリアがないことをユーザに報知する画面がディスプレイ１６に表示される（Ｓ５９）。そして、候補検索処理も、メイン処理も終了する。
【００６７】
なお、希望形状を回転させる際に、ｘ＝ｙであり希望形状が正方形であれば（Ｓ５２：ＹＥＳ）、希望形状を回転させても同じ形状となってしまうので、希望形状の回転は行わない。そこで、Ｓ５６へ進み、希望形状を縮小させる処理が行われる。
【００６８】
また、希望形状を縮小させる際に、縮小形状がない場合には（Ｓ５６：ＮＯ）、希望形状を縮小させることはできず、よって、スタジオ１００に使用エリアを確保することはできないので、スタジオ１００で使用可能なエリアがないことをユーザに報知する画面がディスプレイ１６に表示される（Ｓ５９）。そして、候補検索処理も、メイン処理も終了する。
【００６９】
以上のような処理が３回実施され、変数ｔが３よりも大きくなったら（Ｓ４３：ＹＥＳ）、３つの時間帯について候補基準マスが抽出されているので、候補検索処理は終了し、メイン処理へ戻る。以上のようにして、候補検索処理では、ユーザの希望する開始時刻から３つの時間帯ごとに、ユーザの希望形状で使用できる領域が候補マスとして抽出され、候補マス記憶エリア１２６に記憶される。
【００７０】
次に、図３５、図３６を参照して、候補組合せ処理について説明する。ここでは、第一候補組合せ、第二候補組合せが抽出され、それぞれの組合せでの重複マスが抽出される。なお、この候補組合せ処理では、ｉｍａｘ［］，変数ｍ，ｘｘ，ｙｙ，ｉｉ，ｋ，ｗ，ｋｋが用いられるが、これらの変数はＲＡＭ１２の所定の記憶エリア（図示外）に記憶される。
【００７１】
まず、変数ｔに初期値の０，変数ｍに初期値の１が記憶される（Ｓ１０１）。次いで、変数ｔに１が加算され（Ｓ１０２）、変数ｔが２より大きいか否かの判断が行われる（Ｓ１０３）。ここでは、まだｔ＝１であるので、２より大きくないと判断される（Ｓ１０３：ＮＯ）。次いで、（ｘ，ｙ）に第ｔ枠の希望形状、（ｘｘ，ｙｙ）に第ｔ＋１枠の希望形状が記憶される（Ｓ１０４）。具体的には、ｋｅｉｊｏ［ｔ］．ｘが変数ｘに記憶され、ｋｅｉｊｏ［ｔ］．ｙが変数ｙに記憶され、ｋｅｉｊｏ［ｔ＋１］．ｘが変数ｘｘに記憶され、ｋｅｉｊｏ［ｔ＋１］．ｙｙが変数ｙに記憶される。ｔ＝１であれば、図１９に示す例では、ｘに４，ｙに１が記憶され、ｘｘに３，ｙｙに２が記憶される。
【００７２】
そして、第ｔ枠の候補マスと第ｔ＋１枠の候補マスとの組合せが作成される（Ｓ１０５〜Ｓ１０８）。まず、変数ｉに初期値の０が記憶される（Ｓ１０５）。そして、変数ｉに１が加算され（Ｓ１０６）、ｉｍａｘ［ｔ］（第ｔ枠での候補マス数）よりも大きいか否かの判断が行われる（Ｓ１０７）。ｔ＝１，ｉ＝１であれば、図２０に示した例では、ｔ＝１の候補マス数は５であり、ｉ＜５なので、ｉｍａｘ［ｔ］よりも大きくないと判断される（Ｓ１０７：ＮＯ）。そこで、候補組合せ作成処理が行われる（Ｓ１０８、図３６参照）。
【００７３】
図３６に示すように、候補組合せ作成処理では、まず、変数ｉｉに初期値の０が記憶される（Ｓ１１１）。そして、変数ｉｉに１が加算され（Ｓ１１２）、ｉｍａｘ［ｔ＋１］よりも大きいか否かの判断が行われる（Ｓ１１３）。変数ｉｉはまだ１であるので、ｉｍａｘ［ｔ＋１］より大きいと判断されない（Ｓ１１３：ＮＯ）。そこで、マス組合せ記憶エリア１２７に第ｔ枠のｉ番目の候補マスと、第ｔ＋１枠のｉｉ番目の候補マスとが組合せとされ、候補基準マスのマス番号がそれぞれ自分欄、相手欄に記憶される（Ｓ１１４）。具体的には、ｋｕｍｉａｗａｓｅ［ｍ］．自分にｔ［ｔ］．ｋｏｕｈｏ［ｉ］．マス番号が記憶され、ｋｕｍｉａｗａｓｅ［ｍ］．相手にｔ［ｔ＋１］．ｋｏｕｈｏ［ｉｉ］．マス番号が記憶され、さらにｋｕｍｉａｗａｓｅ［ｍ］．時間に変数ｔが記憶される。ｍ＝１，ｔ＝１，ｉ＝１，ｉｉ＝１であれば、図２０に示す例では、ｔ［１］．ｋｏｕｈｏ［１］．マス番号＝１、ｔ［２］．ｋｏｕｈｏ［１］．マス番号＝２である。そこで、図２１に示すようにｋｕｍｉａｗａｓｅ［１］．自分＝１，ｋｕｍｉａｗａｓｅ［１］．相手＝２，ｋｕｍｉａｗａｓｅ［１］．時間＝１とされる。なお、前述したように、自分欄に記憶される、前の時間帯（ｔ）の候補マスが「自分側候補マス」といい、相手欄に記憶される、後の時間帯（ｔ＋１）の候補マスを「相手側候補マス」という。
【００７４】
Ｓ１１４にて候補マスの組合せが決定されたら、この候補マスの組合せでの重複マスが検索される（Ｓ１１５〜Ｓ１２３）。まず、自分側候補マスの要素マスをカウントするための変数ｋに初期値の０が記憶され、重複マスをカウントするための変数ｗにも初期値の０が記憶される（Ｓ１１５）。そして、変数ｋに１が加算され（Ｓ１１６）、第ｔ枠の要素マスのｘ軸方向の個数ｘと、第ｔ枠の要素マスのｙ軸方向の個数ｙの積よりも大きいか否かの判断が行われる（Ｓ１１７）。ここでは、ｋ＝１であり、変数ｘ，ｙの積よりも大きくないと判断される（Ｓ１１７：ＮＯ）。
【００７５】
次いで、相手側候補マスの要素マスを順にピックアップして、自分側候補マスのｋ番目の要素マスと同じであるか否かの判断を行うことにより、重複マスが検索される（Ｓ１１９〜Ｓ１２３）。まず、相手側候補マスの要素マスをカウントするための変数ｋｋに初期値０が記憶される（Ｓ１１８）。そして、変数ｋｋに１が加算され（Ｓ１１９）、第ｔ＋１枠の要素マスのｘ軸方向の個数ｘｘと、第ｔ枠の要素マスのｙ軸方向の個数ｙｙの積よりも大きいか否かの判断が行われる（Ｓ１２０）。ここでは、ｋｋ＝１であり、変数ｘｘ，ｙｙの積よりも大きくないと判断される（Ｓ１２０：ＮＯ）。そこで、第ｔ枠のｉ番目の候補マスのｋ番目の要素マスと、第ｔ＋１枠のｉｉ番目の候補マスのｋｋ番目の要素マスとが同じマスであるか否かの判断が行われる（Ｓ１２１）。具体的には、ｔ［ｔ］．ｋｏｕｈｏ［ｉ］．ｙｏｕｓｏ［ｋ］とｔ［ｔ＋１］．ｋｏｕｈｏ［ｉｉ］．ｙｏｕｓｏ［ｋｋ］とが等しいか否かの判断が行われる。ｔ＝１，ｉ＝１，ｉｉ＝１，ｋｋ＝１であるとすると、図２０に示す例では、ｔ［１］．ｋｏｕｈｏ［１］．ｙｏｕｓｏ［１］＝１，ｔ［２］．ｋｏｕｈｏ［１］．ｙｏｕｓｏ［１］＝２であるので、同じマスでないと判断される（Ｓ１２１：ＮＯ）。そして、Ｓ１１９へ戻り、変数ｋｋに１が加算されて（Ｓ１１９）、相手先候補マスの次の要素マスについての判断が行われる（Ｓ１２０，Ｓ１２１）。
【００７６】
図２０に示す例では、第１枠の１番目の候補マスの１番目の要素マスと同じマスは、第２枠の１番目の候補マスの要素マスには存在しないので、繰り返しＳ１１９，Ｓ１２０：ＮＯ、Ｓ１２１：ＮＯが実施される。そして、変数ｋｋが６よりも大きくなり（Ｓ１２０：ＹＥＳ）、Ｓ１１６へ戻る。ここで、変数ｋに１が加算され（Ｓ１１６）、第１枠の１番目の候補マスの２番目の要素マスと、第２枠の１番目の候補マスの要素マスとの重複がチェックされる。ここでは、ｋｋ＝１の際に、ｔ［１］．ｋｏｕｈｏ［１］．ｙｏｕｓｏ［２］＝２，ｔ［２］．ｋｏｕｈｏ［１］．ｙｏｕｓｏ［１］＝２であり、同じマスであると判断される（Ｓ１２１：ＹＥＳ）。この場合には、重複マスをカウントする変数ｗに１が加算され（Ｓ１２２）、マス組合せ記憶エリア１２７に重複マスを示すマス番号が記憶される（Ｓ１２３）。具体的には、マス組合せ記憶エリア１２７のｍ番目の重複マスのｗ番目（ｋｕｍｉａｗａｓｅ［ｍ］．ｃｈｏｆｕｋｕ［ｗ］）に、自分側候補マスのｉ番目の基準マスのｋ番目の要素マス（ｔ［ｔ］．ｋｏｕｈｏ［ｉ］．ｙｏｕｓｏ［ｋ］）に記憶されているマス番号が記憶される。そして、Ｓ１１６へ戻り、自分側候補マスの次の要素マスについての処理が開始される。
【００７７】
このようにして、第ｔ枠のｉ番目の候補マス（自分側候補マス）の全て要素マスに対して、それぞれ相手側候補マスの要素マスとの重複が確認され、重複マスはマス組合せ記憶エリア１２７の重複マス（ｃｈｏｆｕｋｕ［］）に記憶される。そこで、重複マスをカウントしていた変数ｗが、この組合せでの重複マスの個数として、マス組合せ記憶エリア１２７のｍ番目のｗｍａｘ欄に記憶される（Ｓ１２４）。そして、変数ｍに１が加算される（Ｓ１２５）。そして、Ｓ１１２へ戻る。
【００７８】
Ｓ１１２では、変数ｉｉに１が加算され（Ｓ１１２）、次の相手側候補マスが対象とされる。そして、Ｓ１１３〜Ｓ１２５の処理が実施され、第ｔ枠のｉ番目の候補マス（自分側候補マス）と、第ｔ＋１枠のｉｉ番目の候補マス（相手側候補マス）とが組み合わされ、重複マスが抽出される。このようなＳ１１２〜Ｓ１２５の処理が繰り返し実施され、第ｔ＋１枠の全ての候補マスが、第ｔ＋１枠のｉｉ番目の候補マスに組み合わされた後に、変数ｉｉに１が加算されると（Ｓ１１２）、変数ｉｉがｉｍａｘ［ｔ＋１］よりも大きくなる（Ｓ１１３：ＹＥＳ）。そこで、変数ｍに１が加算され（Ｓ１２６）、候補組合せ処理へ戻る。
【００７９】
候補組合せ処理では、図３５に示すように、候補組合せ作成処理が行われると（Ｓ１０８）、Ｓ１０６へ戻り、変数ｉに１が加算される（Ｓ１０６）。そして、変数ｉがｉｍａｘ［ｔ］よりも大きくなければ（Ｓ１０７：ＮＯ）、第ｔ枠の次の候補マスに対して、候補組合せ作成処理が行われ、第ｔ＋１枠の候補マスとの組合せが作成され、併せて重複マスが抽出される（Ｓ１０８、図３６）。
【００８０】
このようにして、繰り返しＳ１０６〜Ｓ１０８の処理が実施されて、第ｔ枠の全ての候補マスについて、第ｔ＋１枠の候補マスとの組合せが作成された後に変数ｉに１が加算されると（Ｓ１０６）、変数ｉはｉｍａｘ［ｔ］よりも大きくなり（Ｓ１０７：ＹＥＳ）、Ｓ１０２へ戻る。そして、変数ｔに１が加算され、ｔ＝２となる（Ｓ１０２）。変数ｔは２よりも大きくないので（Ｓ１０３：ＮＯ）、Ｓ１０４へ進む。そして、ｔ＝１の場合（第一枠と第二枠）と同様に第二枠と第三枠とで候補マスの組合せが作成される（Ｓ１０４〜Ｓ１０８）。そして、第二枠と第三枠とで候補マスの組合せが作成されたら、変数ｔに１が加算され３となる（Ｓ１０２）、変数ｔは２より大きいので（Ｓ１０３：ＹＥＳ）、候補組合せ処理は終了して、メイン処理へ戻る。
【００８１】
以上のようにして、第一枠と第二枠とにおいて候補マスの組合せ（第一候補組合せ）が作成された後に、第二枠と第三枠とで候補マスの組合せ（第二候補組合せ）が作成される。組合せの情報はマス組合せ記憶エリア１２７に記憶される。さらに、各組合せでの重複マスが抽出される。
【００８２】
次に、図３７乃至図４２を参照して、最終候補検索処理について説明する。ここでは、第一候補組合せと第二候補組合せとの組合せの中から最終的に適した候補が検索される。この最低候補検索処理では、変数ｗｗ，ｍｍ，ｃｗｗ，ｇ，ｇｍａｘ，ｃｈ，ｓ，ｗｍａｘ２，ｍｍ２，ｇｇ，ｇｇｍａｘ，ｔｕｎａｇａｒｉが用いられるが、これらの変数はＲＡＭ１２の所定の記憶エリア（図示外）に記憶される。
【００８３】
この最終候補検索処理では、まず、第一候補組合せにおいての重複マスのある組合せでの重複マス数が抽出され、重複マス数記憶エリア１２９に記憶される（Ｓ１３１〜Ｓ１３６）。ここでは、マス組合せ記憶エリア１２７の配列（ｋｕｍｉａｗａｓｅ［］）の添字となる変数ｍ、重複マス数記憶エリア１２９の配列（ｗｃｎｔ［］）の添字となる変数ｗｗに初期値の０が記憶される（Ｓ１３１）。そして、変数ｍ，ｗｗにそれぞれ１が加算される（Ｓ１３２）。そして、ｋｕｍｉａｗａｓｅ［ｍ］．時間＝１であれば（Ｓ１３３：ＹＥＳ）、ｍ番目の組合せに重複マスがあるか否かの判断が行われる（Ｓ１３４）。この判断がｋｕｍｉａｗａｓｅ［ｍ］．ｃｈｏｆｕｋｕ［１］に０でなく、マス番号が記憶されていれば、重複マスがあると判断される（Ｓ１３４：ＹＥＳ）。そして、ｍ番目の組合せの重複マス数（ｋｕｍｉａｗａｓｅｅ［ｍ］．ｗｍａｘ）がすでに重複マス数記憶エリア１２９（ｗｃｎｔ［］）に記憶されているか否かの判断が行われる（Ｓ１３５）。ｗｃｎｔ［］にｋｕｍｉａｗａｓｅｅ［ｍ］．ｗｍａｘと同じ値が記憶されていなければ（Ｓ１３５：ＮＯ）、ｗｃｎｔ［ｗｗ］にｋｕｍｉａｗａｓｅｅ［ｍ］．ｗｍａｘが記憶される（Ｓ１３６）。そして、Ｓ１３２へ戻る。
【００８４】
なお、ｋｕｍｉａｗａｓｅ［ｍ］．ｃｈｏｆｕｋｕ［１］が０であり、重複マスがなかったり（Ｓ１３４：ＮＯ）、すでにｋｕｍｉａｗａｓｅｅ［ｍ］．ｗｍａｘがｗｃｎｔ［］に記憶されていたりした場合には（Ｓ１３５：ＹＥＳ）、ｗｃｎｔ［］には記憶されず、そのままＳ１３２へ戻る。
【００８５】
このようにしてＳ１３２〜Ｓ１３６が繰り返し実施され、第一候補組合せにおいての重複マスのある組合せでの重複マス数が抽出され、重複マス数記憶エリア１２９に記憶される。図２１に示す例では、重複マスの数は、１，４，５，８，１１番目の「３」と１４番目の「２」があるので、図２２に示すように３と２が記憶される。そして、ｋｕｍｉａｗａｓｅ［ｍ］．時間が１でなければ（Ｓ１３３：ＮＯ）、Ｓ１４１へ進む。ｋｕｍｉａｗａｓｅ［］には、ｍ＝１から順に、時間が１の組合せ（第一候補組合せ）が記憶されており、時間が１の組合せの後に時間が２の組合せ（第二候補組合せ）が記憶されているので、ｋｕｍｉａｗａｓｅ［ｍ］．時間が１でなければ（Ｓ１３３：ＮＯ）、ｋｕｍｉａｗａｓｅ［ｍ］．時間が１の組合せについて処理が終了したことになる。そこで、ｗｃｎｔ［］が大きい順にソートされる（Ｓ１４１）。つまり、ｗｃｎｔ［１］には最も大きな重複マス数が記憶されることになる。
【００８６】
そして、最初の第二候補組合せの情報が記憶されている番号を示す変数ｍｍに変数ｍが記憶される（Ｓ１４２）。そして、変数ｗｗの値が０であり、第一候補組合せにおいて重複マスのある組合せが１つもなかった場合には（Ｓ１４３：ＹＥＳ）、スタジオ１００を使用するに当たって、第一枠と第二枠とで同じマスを使用した領域を確保できないのでスタジオ１００を使用できない旨を示す画面がディスプレイ１６に表示される（Ｓ１５０）。そして、最終候補検索処理は終了し、メイン処理も終了する。
【００８７】
そして、変数ｗｗが０でなく（Ｓ１４３：ＮＯ）、第一候補組合せにおいて第一枠と第二枠とで同じマスを使用した領域を確保できた場合には、第一候補組合せと第二候補組合せとの組合せである「全体組合せ」の候補が抽出される（Ｓ１４４〜Ｓ１４９）。そこで、まず、重複マス数記憶エリア１２９の配列（ｗｃｎｔ［］）の添字となる変数ｃｗｗに初期値の０が記憶される（Ｓ１４４）。そして、変数ｃｗｗに「１」が加算され（Ｓ１４５）、次に変数ｃｗｗが変数ｗｗよりも大きいか否かの判断が行われる（Ｓ１４６）。この時点で、変数ｗｗはｗｃｎｔ［］の配列数を示している。図２２に示した例では、ｗｗ＝２であり、変数ｗｃｃ＝１であるので、変数ｗｃｃが変数ｗｗよりも大きくないと判断される（Ｓ１４５：ＮＯ）。
【００８８】
そこで、まず、第一選択組合せ抽出処理により、重複マス数が最も大きい値である第一候補組合せが「第一選択組合せ」として抽出される（Ｓ１４７、図３８参照）、そして、全体組合せ検索処理により抽出された第一候補組合せに対して第二候補組合せが検索されて、最終的な候補となる全体組合せが抽出される（Ｓ１４８、図３９乃至図４２）。
【００８９】
図３８に示すように、第一選択組合せ抽出処理では、まず、マス組合せ記憶エリア１２７の配列（ｋｕｍｉａｗａｓｅ［］）の添字となる変数ｍに初期値の０が記憶され、重複マス数がｗｃｎｔ［ｃｗｗ］である第一候補組合せが記憶される第一選択組合せ記憶エリア１４１の配列（ｃｈｏｉｃｅ１［］）の添字となる変数ｇに初期値の０が記憶される（Ｓ１６０）。そして、変数ｇに１が加算され（Ｓ１６１）、変数ｍに１が加算される（Ｓ１６２）。そして、ここでは第一候補組合せについての処理を行っているので、ｋｕｍｉａｗａｓｅ［ｍ］．時間＝１であるか否かの判断が行われる（Ｓ１６３）。ｋｕｍｉａｗａｓｅ［ｍ］．時間＝１であれば（Ｓ１６３：ＹＥＳ）、ｍ番目の第一候補組合せの重複マス（ｋｕｍｉａｗａｓｅ［ｍ］．ｗｍａｘ）がｗｃｎｔ［ｃｗｗ］と等しいか否かの判断が行われる（Ｓ１６４）。そして、等しければ（Ｓ１６４：ＹＥＳ）、ｍ番目の第一候補組合せが「第一選択組合せ」とされ、ｋｕｍｉａｗａｓｅ［］の配列番号である変数ｍが第一選択組合せ記憶エリア１４１（ｃｈｏｉｃｅ１［ｇ］）に記憶される（Ｓ１６５）。そして、Ｓ１６１へ戻り、変数ｇに１が加算されて（Ｓ１６１）、ｃｈｏｉｃｅ１［ｇ］の配列を１つ進め、変数ｍに１が加算されて（Ｓ１６２）、次の第一候補組合せについての処理が行われる（Ｓ１６２〜Ｓ１６５）。なお、ｋｕｍｉａｗａｓｅ［ｍ］．ｗｍａｘがｗｃｎｔ［ｃｗｗ］と等しくない場合には（Ｓ１６４：ＮＯ）、ｍ番目の第一候補組合せは第一選択組合せとされないので、Ｓ１６２へ戻り、変数ｍに１が加算されて（Ｓ１６２）、次の第一候補組合せについての処理が行われる（Ｓ１６２〜Ｓ１６５）。
【００９０】
このようにして、Ｓ１６２〜Ｓ１６５の処理が繰り返し実施され、全ての第一候補組合せの処理が行われると、Ｓ１６３においてｋｕｍｉａｗａｓｅ［ｍ］．時間＝２となり、１でないと判断される（Ｓ１６３）。そこで、変数ｇｍａｘに変数ｇから１減算された値が記憶される（Ｓ１６６）。つまり、変数ｇｍａｘは、第一選択組合せの数であり、ｃｈｏｉｃｅ１［］において値の記憶された最大の配列番号である。そして、最終候補検索処理へ戻る。図２１に示す例では、番号１，４，５，８，１１の第一候補組合せが第一選択組合せとされ、図２３に示すように第一選択組合せ記憶エリア１４１に記憶される。そして、変数ｇｍａｘ＝５とされる。
【００９１】
図３７に示すように、最終候補検索処理では、第一選択組合せ抽出処理が終了すると（Ｓ１４７）。全体組合せ検索処理が行われる（Ｓ１４８、図３９参照）。全体組合せ検索処理では、まず、第一選択組合せにおける第二枠の候補マスが抽出される（Ｓ１７１〜Ｓ１７６）。そこで、第一選択組合せ記憶エリア１４１の配列（ｃｈｏｉｃｅ１［ｇ］）の添字となる変数ｇに初期値の０が記憶され、第二枠候補基準マス記憶エリア１４３の配列（ｃｈｅｃｋｅｄ［］）の添字となる変数ｃｈに初期値の０が記憶され、最終全体組合せ記憶エリア１４４の配列（ｓａｉｓｙｕｋｏｕｈｏ［］）の添字となる変数ｓに初期値の０が記憶される（Ｓ１７１）。
【００９２】
そして、変数ｇに１が加算され（Ｓ１７２）、変数ｇがｇｍａｘよりも大きいか否かの判断が行われる（Ｓ１７３）。ｇｍａｘは、図２３に示す例では５である。ここではｇ＝１であるのでｇｍａｘよりも大きくないと判断される（Ｓ１７３：ＮＯ）。そして、ｃｈｅｃｋｅｄ［］にｇ番目の第一選択組合せの相手側候補マス（第二枠の候補マス）の番号（ｋｕｍｉａｗａｓｅ［ｃｈｏｉｃｅ１［ｇ］］．相手）がすでに記憶されているか否かの判断が行われる（Ｓ１７４）。ｇ＝１の時点ではまだ１つもｃｈｅｃｋｅｄ［］に記憶されていない（Ｓ１７４：ＮＯ）。そして、変数ｃｈに１が加算される（Ｓ１７５）。そして、ｃｈｅｃｈｅｄ［ｃｈ］にｋｕｍｉａｗａｓｅ［ｃｈｏｉｃｅ１［ｇ］］．相手が記憶される（Ｓ１７６）。さらに、変数ｔｕｎａｇａｒｉにもｋｕｍｉａｗａｓｅ［ｃｈｏｉｃｅ１［ｇ］］．相手が記憶される（Ｓ１７７）。そして、第二候補組合せ最大重複数抽出処理が行われる（Ｓ１７８、図４０参照）。ここでは、変数ｔｕｎａｇａｒｉに記憶された第二枠の候補マスを自分側候補マスとする第二候補組合せのうちの最大の重複マス数が変数ｗｍａｘ２に記憶される。
【００９３】
図４０に示すように、第二候補組合せ最大重複数抽出処理では、まず、ｋｕｍｉａｗａｓｅ［］の添字となる変数ｍに初期値の変数ｍｍの値が記憶され、最大の重複マス数が記憶される変数ｗｍａｘ２に初期値の０が記憶される（Ｓ１９１）。そして、変数ｍに１が加算され（Ｓ１９２）、ｋｕｍｉａｗａｓｅ［ｍ］．時間が２であるか否かの判断が行われる（Ｓ１９３）。変数ｍには第二候補組合せが記憶されている最初の配列番号が記憶されているので、ｋｕｍｉａｗａｓｅ［ｍ］．時間が２であると判断される（Ｓ１９３：ＮＯ）。
【００９４】
そして、ｍ番目の第二候補組合せの自分側候補マス（ｋｕｍｉａｗａｓｅ［ｍ］．自分）が、ｇ番目の第一選択組合せの相手側候補マスと同じであるか否かの判断が行われる（Ｓ１９４）。同じ候補マスでなければ（Ｓ１９４：ＮＯ）、Ｓ１９２へ戻り、変数ｍに１が加算され、次の第二候補組合せの判断が行われる。
【００９５】
ｍ番目の第二候補組合せの自分側候補マスが、ｇ番目の第一選択組合せの相手側候補マスと同じであれば（Ｓ１９４：ＹＥＳ）、次に、ｍ番目の第二候補組合せに重複マスがあるか否かの判断が行われる（Ｓ１９５）。ｋｕｍｉａｗａｓｅ［ｍ］．ｃｈｏｆｕｋｕ［１］が０でなければ、重複マスがあり（Ｓ１９５：ＹＥＳ）、０であれば重複マスはない（Ｓ１９５：ＮＯ）。重複マスがなければ（Ｓ１９５：ＮＯ）、Ｓ１９２へ戻り、変数ｍに１が加算され、次の第二候補組合せの判断が行われる。
【００９６】
重複マスがあれば（Ｓ１９５：ＹＥＳ）、次に、ｍ番目の第二候補組合せの重複マス数（ｋｕｍｉａｗａｓｅ［ｍ］．ｗｍａｘ）が最大の重複マス数が記憶される変数ｗｍａｘ２よりも大きいか否かの判断が行われる（Ｓ１９６）。ｗｍａｘ２よりも大きければ（Ｓ１９６：ＹＥＳ）、変数ｗｍａｘ２にｋｕｍｉａｗａｓｅ［ｍ］．ｗｍａｘが記憶される（Ｓ１９７）。そして。Ｓ１９２へ戻り、変数ｍに１が加算され、次の第二候補組合せの判断が行われる。なお、ｗｍａｘ２よりも大きくなければ（Ｓ１９６：ＮＯ）、Ｓ１９２へ戻る。
【００９７】
以上のようにして、Ｓ１９２〜Ｓ１９７の処理が繰り返され、全ての第二候補組合せの処理が行われると、Ｓ１９３にてｋｕｍｉａｗａｓｅ［ｍ］．時間には２が記憶されていない（Ｓ１９３：ＹＥＳ）。この時点では、変数ｗｍａｘ２に最大の重複マス数が記憶されている。そして、変数ｍｍ２に変数ｍ−１が記憶される（Ｓ１９８）。変数ｍｍ２は、ｋｕｍｉａｗａｓｅ［ｍ］にデータが記憶されている最後の配列番号である。そして、全体組合せ検索処理へ戻る。図２１の例では、ｗｍａｘ２＝４となる。
【００９８】
図３９に示すように、全体組合せ検索処理では、第二候補組合せ最大重複数抽出処理が終了すると（Ｓ１７８）、最大重複数であるｗｍａｘ２が０であるか否かの判断が行われる（Ｓ１７９）。ｗｍａｘが０である場合には（Ｓ１７９：ＹＥＳ）、第二候補組合せに重複マスがなかったということなので、Ｓ１７２へ戻り、変数ｇに１が加算され（Ｓ１７２）、第一選択組合せ記憶エリア１４１の配列（ｃｈｏｉｃｅ１［ｇ］）に記憶されている次の第一選択組合せについての処理が行われる。また、ｗｍａｘが０でない場合には（Ｓ１７９：ＮＯ）、第二候補組合せに重複マスがあったことになるので、第二選択組合せ抽出処理が行われる（Ｓ１８０、図４１参照）。ここでは、第二候補組合せのうち、重複マス数が最大重複数ｗｍａｘ２であるものが「第二選択組合せ」として抽出される。
【００９９】
図４０に示すように、第二選択組合せ抽出処理では、まず、ｋｕｍｉａｗａｓｅ［］の添字となる変数ｍに初期値の変数ｍｍの値が記憶され、第二選択組合せ記憶エリアの配列（ｃｈｏｉｃｅ２［］）の添字となる変数ｇｇに初期値の０が記憶される（Ｓ２００）。そして、変数ｇｇに１が加算され（Ｓ２０１）、変数ｍに１が加算される（Ｓ２０２）。次いで、変数ｍがｋｕｍｉａｗａｓｅ［］の最大配列番号ｍｍ２よりも大きいか否かの判断が行われる（Ｓ２０３）。ｍｍ２よりも大きくなければ（Ｓ２０３：ＮＯ）、ｍ番目の第二候補組合せの重複マス数（ｋｕｍｉａｗａｓｅ［ｍ］．ｗｍａｘ）が最大重複数ｗｍａｘ２と等しいか否かの判断が行われる（Ｓ２０４）。最大重複数ｗｍａｘ２と等しければ（Ｓ２０４：ＹＥＳ）、ｍ番目の第二候補組合せは「第二選択組合せ」とされるので、第二選択組合せ記憶エリア１４２のｇｇ番目の配列（ｃｈｏｉｃｅ２［ｇｇ］）にｋｕｍｉａｗａｓｅ［］の配列番号であるｍが記憶される（Ｓ２０５）。そして、Ｓ２０１へ戻り、変数ｇｇに１が加算され（Ｓ２０１）、ｃｈｏｉｃｅ２［ｇｇ］の配列が１つ進められ、変数ｍに１が加算され（Ｓ２０２）、次の第二候補組合せについての処理が行われる。なお、ｋｕｍｉａｗａｓｅ［ｍ］．ｗｍａｘが最大重複数ｗｍａｘ２と等しくない場合には（Ｓ２０４：ＮＯ）、ｍ番目の第二候補組合せは第二選択組合せとされないので、そのまま、Ｓ２０２へ戻り、変数ｍに１が加算され（Ｓ２０２）、次の第二候補組合せについての処理が行われる（Ｓ２０３〜Ｓ２０５）。
【０１００】
そして、繰り返しＳ２０１〜Ｓ２０５の処理が行われ、全ての第二候補組合せの処理が行われ、変数ｍが最大配列番号ｍｍ２よりも大きくなったら（Ｓ２０３：ＹＥＳ）、変数ｇｇｍａｘに変数ｇｇから１減算した値が記憶され（Ｓ２０６）、全体組合せ検索処理へ戻る。ここで、変数ｇｇｍａｘには、第二選択組合せの数が記憶される。図２１に示す例では、番号１７，１８，３０，３１の第二候補組合せが第二選択組合せとされ、図２４に示すように第二選択組合せ記憶エリア１４２に記憶される。
【０１０１】
図３９に示すように、全体組合せ検索処理では、第二選択組合せ抽出処理が終了すると（Ｓ１８０）、全体組合せ抽出処理が行われる（Ｓ１８１、図４２参照）。この全体組合せ抽出処理では、第一候補組合せ（ｃｈｏｉｃｅ１［ｇ］）と、第二候補組合せ（ｃｈｏｉｃｅ２［］）とによる全体組合せのうち、第二枠から第三枠への候補基準マスの移動のない全体組合せが「最終全体組合せ（ｓａｉｓｙｕｋｏｕｈｏ［］）」として抽出される。まず、変数ｇｇに初期値の０が記憶される（Ｓ２１１）。そして、変数ｇｇに１が加算され（Ｓ２１２）、第二選択組合せの数であるｇｇｍａｘよりも大きいか否かの判断が行われる（Ｓ２１３）。ｇｇｍａｘよりも大きくなければ（Ｓ２１３：ＮＯ）、第二枠から第三枠への移行時に基準マスの移動がないか否かの判断が行われる（Ｓ２１４）。この判断は、変数ｔｕｎａｇａｒｉに記憶されている第一選択組合せの相手側候補マス（つまり第二枠の候補基準マス）と、第二選択組合せの相手側候補マス（つまり、第三枠の候補基準マス）とが等しいか否かの判断により行われる。等しければ移動はないと判断され（Ｓ２１４：ＹＥＳ）、等しくなければ移動しなければならないと判断される（Ｓ２１４：ＮＯ）。
【０１０２】
ここで、２つの値が等しく基準マスの移動がなければ（Ｓ２１４：ＹＥＳ）、このｃｈｏｉｃｅ２［ｇｇ］番目の第二選択組合せと、ｃｈｏｉｃｅ１［ｇ］番目の第一選択組合せとの全体組合せを最終全体組合せとする。具体的には、まず、変数ｓに１が加算され（Ｓ１７１）、最終全体組合せ記憶エリア１４４の配列（ｓａｉｓｙｕｋｏｕｈｏ［］）が１つ進められる（Ｓ１２５）。次いで、最終全体組合せ記憶エリア１４４のｓ番目の配列（ｓａｉｓｙｕｋｏｕｈｏ［ｓ］）に記憶される（Ｓ１２６）。ｓａｉｓｙｕｋｏｕｈｏ［ｓ］．第一組合せには、第一選択組合せを示すｋｕｍｉａｗａｓｅ［］の配列番号であるｃｈｏｉｃｅ１［ｇ］が記憶され、ｓａｉｓｙｕｋｏｕｈｏ［ｓ］．第二組合せには、第二選択組合せを示すｋｕｍｉａｗａｓｅ［］の配列番号であるｃｈｏｉｃｅ２［ｇｇ］が記憶され、ｓａｉｓｙｕｋｏｕｈｏ［ｓ］．ｓｍａｘには、第二選択組合せの重複マスの数であるｗｍａｘ２が記憶される。そして、全体組合せ検索処理へ戻る。
【０１０３】
また、Ｓ２１４において、２つの値が等しくなく、基準マスの移動があれば（Ｓ２１４：ＮＯ）、この全体組合せを最終全体組合せとしないので、Ｓ２１２へ戻り、変数ｇｇに１が加算されて（Ｓ２１２）、次の第二選択組合せでの処理が行われる（Ｓ２１２〜Ｓ２１４）。そして、繰り返しＳ２１２〜Ｓ２１４の処理が行われ、全ての第二選択組合せの処理を行い、変数ｇｇがｇｇｍａｘよりも大きくなったら（Ｓ２１３：ＹＥＳ）、第二枠から第三枠への基準マスの移動がない第二候補組合せがなかったことになる。この場合には、本実施の形態では、１番目の第二候補組合せ（ｃｈｏｉｃｅ２［１］）とｃｈｏｉｃｅ１［ｇ］番目の第一選択組合せとの全体組合せを最終全体組合せとする。そこで、変数ｇｇに１が記憶され（Ｓ２１７）、変数ｓに１が加算され（Ｓ２１５）、最終全体組合せ記憶エリア１４４の配列（ｓａｉｓｙｕｋｏｕｈｏ［］）が１つ進められ、最終全体組合せ記憶エリア１４４のｓ番目の配列（ｓａｉｓｙｕｋｏｕｈｏ［ｓ］）に記憶される（Ｓ２１６）。そして、全体組合せ検索処理へ戻る。
【０１０４】
図３９に示すように、全体組合せ抽出処理が終了すると（Ｓ１８１）、全体組合せ検索処理では、Ｓ１７２へ戻り、変数ｇに１が加算されて（Ｓ１７２）、第一選択組合せ記憶エリア１４１の配列（ｃｈｏｉｃｅ１［］）が１つ進められて次の第一候補組合せでの最終全体組合せを検索するための処理（Ｓ１７２〜Ｓ１８１）が行われる。
【０１０５】
このようなＳ１７２〜Ｓ１８１の処理が繰り返し実施され、全ての第一選択組合せについて、第二選択組合せとの全体組合せがチェックされて、最終全体組合せが抽出され、最終全体組合せ記憶エリア１４４に記憶される。そして、最終候補検索処理へ戻る。そして、最終候補検索処理では、図３７に示すように、最終全体組合せ検索処理が終了すると（Ｓ１４８）、変数ｓが０であるか否かの判断が行われる（Ｓ１４９）。
【０１０６】
変数ｓが０であれば（Ｓ１４９：ＹＥＳ）、ｃｗｗ番目の重複マス数の第一候補マスを要素とする第一選択組合せ（ｃｈｏｉｃｅ１［ｇ］）では、第二枠の候補マスが同じ第二選択組合せの中に重複マスがあるものがなく、最終全体組合せがなかったということである。そこで、変数ｃｗｗに１が加算されて（Ｓ１４５）、重複マス数記憶エリア１２９の配列（ｗｃｎｔ［］）の次の要素に記憶されている、次に大きい第一候補組合せの重複マス数で、最終全体組合せを検索する処理が行われる（Ｓ１４６〜Ｓ１４８）。そして、ここでも最終全体組合せがなかった場合には（Ｓ１４９：ＹＥＳ）、再度Ｓ１４５からの処理が行われる。そして、変数ｃｗｗがｗｃｎｔ［］の配列数である変数ｗｗよりも大きくなったら（Ｓ１４６：ＹＥＳ）、これ以上検討する第一候補マスがないということなので、スタジオ１００を使用するに当たって、第二枠と第三枠とで同じマスを使用した領域を確保できないのでスタジオ１００を使用できない旨を示す画面がディスプレイ１６に表示される（Ｓ１５０）。そして、最終候補検索処理は終了し、メイン処理も終了する。
【０１０７】
一方、変数ｓが０でなければ（Ｓ１４９：ＮＯ）、最終全体組合せが抽出されたということなので、メイン処理へ戻る。そして、図３１に示すように、メイン処理では、最終候補検索処理が終了すると（Ｓ７）、使用マス決定処理が行われる（Ｓ８、図４３参照）。この使用マス決定処理では、最終全体組合せの中で最も第二組合せの重複マス数（ｓａｉｓｙｕｋｏｕｈｏ［］．ｓｍａｘ）の最も大きい最終全体組合せが「使用組合せ」とされる。
【０１０８】
そこで、まず、最終全体組合せ記憶エリア１４４の配列（ｓａｉｓｙｕｋｏｕｈｏ［］）の添字となる変数ｓｓに初期値の０が記憶され、最も大きい重複マス数が記憶される変数ｓｃに初期値の０が記憶される（Ｓ２２１）。そして、変数ｓｓに１が加算される（Ｓ２２２）。そして、変数ｓがｓａｉｓｙｕｋｏｕｈｏ［］の配列数である変数ｓよりも大きいか否かの判断が行われる（Ｓ２２３）。変数ｓｓが配列数ｓよりも大きくなければ（Ｓ２２３：ＮＯ）、ｓｓ番目の全体組合せの重複マス数（ｓａｉｓｙｕｋｏｕｈｏ［ｓｓ］．ｓｍａｘ）が最大重複マス数ｓｃよりも大きいか否かの判断が行われる（Ｓ２２４）。ｓａｉｓｙｕｋｏｕｈｏ［ｓｓ］．ｓｍａｘが最大重複マス数ｓｃよりも大きければ（Ｓ２２４：ＹＥＳ）、ｓａｉｓｙｕｋｏｕｈｏ［ｓｓ］．ｓｍａｘが変数ｓｃに記憶される（Ｓ２２５）。そして、Ｓ２２２へ戻り、変数ｓｓに１が加算され、次の全体組合せの処理が行われる（Ｓ２２３〜Ｓ２２５）。一方、ｓａｉｓｙｕｋｏｕｈｏ［ｓｓ］．ｓｍａｘが最大重複マス数ｓｃよりも大きくなければ（Ｓ２２４：ＮＯ）、そのまま、Ｓ２２２へ戻る。
【０１０９】
そして、繰り返しＳ２２２〜Ｓ２２５の処理が行われて、全ての全体組合せについての処理が行われたら、変数ｓｓが配列数ｓよりも大きくなるので（Ｓ２２３：ＹＥＳ）、Ｓ２２６へ進む。この時点で、変数ｓｃには最大の重複マス数が記憶されている。
【０１１０】
次いで、重複マス数が最大重複マス数ｓｃである全体組合せが検索される（Ｓ２２６〜Ｓ２２９）。まず、変数ｓｓに初期値の０が記憶され（Ｓ２２６）、変数ｓｓに１が加算される（Ｓ２２７）。そして、変数ｓｓが配列数ｓよりも大きくなければ（Ｓ２２７：ＮＯ）、ｓａｉｓｙｕｋｏｕｈｏ［ｓｓ］．ｓｍａｘが最大重複マス数ｓｃと同じであるか否かの判断が行われる（Ｓ２２９）。同じ値でなければ（Ｓ２２９：ＮＯ）、この全体組合せの重複マス数は最大重複マス数でないので、Ｓ２２７へ戻り、次の全体組合せの処理が行われる（Ｓ２２７〜Ｓ２２９）。
【０１１１】
一方、同じ値であれば（Ｓ２２９：ＹＥＳ）、この全体組合せの重複マス数は最大重複マス数であるので、この全体組合せの候補基準マスが使用基準マスとして使用マス記憶エリア１４５に記憶される（Ｓ２３０）。具体的には、「ｓｉｙｏｕ［１］．ｓｙｏｕｓｏ［１］にｋｕｍｉａｗａｓｅ［ｓａｉｓｙｕｋｏｕｈｏ［ｓｓ］．第一組合せ］．自分」が記憶され、「ｓｉｙｏｕ［２］．ｓｙｏｕｓｏ［１］にｋｕｍｉａｗａｓｅ［ｓａｉｓｙｕｋｏｕｈｏ［ｓｓ］．第一組合せ］．相手」が記憶され、「ｓｉｙｏｕ［３］．ｓｙｏｕｓｏ［１］にｋｕｍｉａｗａｓｅ［ｓａｉｓｙｕｋｏｕｈｏ［ｓｓ］．第二組合せ］．相手」が記憶される。次いで、使用基準マス及び希望形状記憶エリア１２４に基づいて使用要素マス（ｓｉｙｏｕ［１］．ｓｙｏｕｓｏ［２〜ｋｅｉｊｏ［１］．ｘ×ｋｅｉｊｏ［１］．ｙ］，ｓｉｙｏｕ［２］．ｓｙｏｕｓｏ［２〜ｋｅｉｊｏ［２］．ｘ×ｋｅｉｊｏ［２］．ｙ］，ｓｉｙｏｕ．ｓｙｏｕｓｏ［２〜ｋｅｉｊｏ［３］．ｘ×ｋｅｉｊｏ［３］．ｙ］）が記憶される（Ｓ２３１）。そして、メイン処理へ戻る。
【０１１２】
図２６に示す例では、最大重複マス数ｓｃ＝４であり、変数ｓｓ＝１でｓａｉｓｙｕｋｏｕｈｏ［１］．ｓｍａｘ＝４なので、第一組合せはマス組合せ記憶エリア１２７の配列の１番目の組合せ、第二組合せは１７番目の組合せとなる。よって、マス組合せ記憶エリア１２７（図２１参照）を参照すると、使用基準マスは、第一枠が「１」、第二枠が「２」、第三枠が「２」とされる。そして、希望形状記憶エリア１２４（図１９参照）を参照すると、第一枠は（４，１）、第二枠は（３，２）、第三枠は（２，２）であるので、第一枠の使用マスは、マス番号「１，２，３，４」のマスとなり（図２８参照）、第二枠の使用マスは、マス番号「２，３，４，８，９，１０」となり（図２９参照）、第三枠の使用マスは、マス番号「２，３，８，９」となる（図３０参照）。
【０１１３】
そして、図３１に示すように、メイン処理では、使用マス決定処理が終了すると（Ｓ７）、レーザ制御装置２への出力を制御するためにマス使用情報設定処理が行われる（Ｓ８、図４４参照）。図４４に示すように、マス使用情報設定処理では、まず、変数ｔに初期値の０が記憶される（Ｓ２４１）。そして、変数ｔに１が加算され（Ｓ２４２）、変数ｔが３よりも大きいか否かの判断が行われる（Ｓ２４３）。変数ｔが３よりも大きくなければ（Ｓ２４３：ＮＯ）、第ｔ枠の使用マスが使用マス記憶エリア１４５から読み出される（Ｓ２４４）。そして、マス境界線情報記憶エリア１３４が参照されて使用マスの境界線が取得され、ＲＡＭ１２の境界線記憶エリア１４６に記憶される（Ｓ２４５）。そして、境界線記憶エリア１４６に記憶されている境界線のうち重なっている境界線、つまり使用エリア内に存在する境界線が削除される（Ｓ２４６）。そして、境界線記憶エリア１４６に記憶されている境界線、及び、入力ユーザＩＤ記憶エリア１２１に記憶されているユーザＩＤが、ＨＤＤ１３の境界線使用情報記憶エリア１３７の第ｔ枠に該当する時間帯に記憶される（Ｓ２４７）。具体的には、ｔ＝１であれば、開始時刻記憶エリア１２５に記憶されている時刻を開始時刻とする時間帯に境界線記憶エリア１４６に記憶されている境界線、及び入力ユーザＩＤが記憶される。ｔ＝２であれば、ｔ＝１で記憶された時間帯の次の時間帯に記憶され、ｔ＝３であれば、さらに次の時間帯に記憶される。
【０１１４】
そして、縮小フラグ［ｔ］がＯＮであるか否かの判断が行われる（Ｓ２４８）。縮小フラグ［ｔ］がＯＮであれば（Ｓ２４８：ＹＥＳ）、ユーザが希望した形状から変更された形状のマスを使用マスとしている。そこで本実施の形態では、照射量が１００％とされ境界線使用情報記憶エリア１３７の第ｔ枠の入力ユーザＩＤの照射量欄に記憶される。また、縮小フラグ［ｔ］がＯＮでなければ（Ｓ２４８：ＮＯ）、照射量は８０％とされ境界線使用情報記憶エリア１３７の第ｔ枠の入力ユーザＩＤの照射量欄に記憶される。そして、Ｓ２４２へ戻り、次の時間帯の処理が行われる（Ｓ２４２〜Ｓ２５０）。そして、３つの時間帯についての処理が行われたら、変数ｔが３よりも大きくなるので（Ｓ２４３：ＹＥＳ）、Ｓ２５１へ進み、使用マス記憶エリア１４５及び開始時刻記憶エリア１２５の情報に基づいて、開始時刻から３つの時間帯のマス使用情報記憶エリア１３６が更新される（Ｓ２５１）。具体的には、開始時刻記憶エリア１２５に記憶されている時刻を開始時刻とする時間帯において、使用マス記憶エリア１４５に記憶されているマス番号のマスにたいする使用中フラグ欄、運動プログラム名欄、ユーザＩＤ欄が更新される。使用中フラグはＯＮとされ、希望運動プログラム名記憶エリア１２３に運動プログラム名が記憶されていれば、運動プログラム欄にその運動プログラム名が記憶され、ユーザＩＤ欄には入力ユーザＩＤ記憶エリア１２１に記憶されているユーザＩＤが記憶される。そして、マス使用情報設定処理は終了し、メイン処理へ戻る。
【０１１５】
図３１に示すように、メイン処理では、マス使用情報設定処理が終了すると（Ｓ８）、表示処理が行われる（Ｓ９）。ここでは、使用マス記憶エリア１４５に記憶されている使用マスを塗り潰した模式図を表示させた使用エリア表示画面２０６がディスプレイ１６に表示される（図６）。そして、メイン処理は終了する。
【０１１６】
以上のようにして、ユーザがスタジオ１００の利用のための入力を行うと、３つの時間帯における使用マスが抽出され、使用エリア表示画面２０６がディスプレイ１６に表示される。また、使用マスが確保できなかった場合には、その旨を示す画面がディスプレイ１６に表示される。さらに、マス使用情報記憶エリア１３６には、各時間帯ごとにマスの使用状態が記憶されており、マスの使用を管理可能としている。
【０１１７】
さらに、スタジオ利用受付装置１では、レーザ出力処理（図４５参照）が行われている。図４５は、レーザ出力処理のフローチャートである。スタジオ利用受付装置１は、このレーザ出力処理において、時間帯の切り替わりごとに、マス使用情報記憶エリア１３６から次の時間帯のマスの使用状態を読み出し、レーザ制御装置２へレーザ３の発光のための情報を出力している。このレーザ出力処理は、スタジオ利用受付装置１が起動し、レーザ制御装置２と接続すると開始され、スタジオ利用受付装置１が起動している間実施されている。
【０１１８】
図４５に示すように、レーザ出力処理では、まず、現在時刻がＲＴＣ１８から取得される（Ｓ２６１）。そして、時間帯の切り替わり時刻であるか否かの判断が行われる（Ｓ２６２）。本実施の形態では０分，１０分，２０分，３０分，４０分，５０分であれば切り替わり時刻であると判断される（Ｓ２６２：ＹＥＳ）。切り替わり時刻でなければ（Ｓ２６２：ＮＯ）。Ｓ２６１へ戻り、切り替わり時刻になるまでＳ２６１，Ｓ２６２の処理が繰り返し行われる。切り替わり時刻であれば（Ｓ２６２：ＹＥＳ）、現在時刻を開始時刻とする時間帯で使用中の境界線名が、照射量とともに境界線使用情報記憶エリア１３７から読み出される（Ｓ２６３）。そして、読み出された境界線のレーザ３を指定の照射量で発光させ、読み出されていない境界線のレーザ３は消灯させる指示がレーザ制御装置２へ出力される（Ｓ２６４）。なお、二人のユーザが隣接したマスを使用している場合には、１つの境界線がそれぞれのユーザが使用している境界線として記憶されている。例えば、図１５に示す例では、番号２２のマスをユーザＡが使用しており、番号２８のマスをユーザＤが使用している。そこで、図１４に示すように、境界線「ｈ４＿５」はユーザＡにもユーザＤにも記憶される。そこで、このような場合には、先に使用の受付をしたユーザ（境界線使用情報記憶エリア１３７の配列の配列番号の小さい値の配列に記憶されている情報）の照射量が用いられるものとする。レーザ制御装置２へ指示が出力されたら（Ｓ２６４）、Ｓ２６１へ戻る。このようにして、スタジオ１００の使用時間の区切り（時間帯）ごとにレーザ３の出力を切り替え、スタジオ１００の現場にてユーザの使用領域を識別可能としている。なお、レーザ制御装置２では、指定されている境界線に属す１００個のレーザのうち、照射量に応じた数のレーザに対して発光の指示を行う。
【０１１９】
以上のようにして、メイン処理において、ユーザの望む形状や、ユーザの望む運動プログラムで使用する形状を、連続した時間帯においてスタジオ１００の空き領域から、大きな移動のない領域を自動的に抽出している。そして、ディスプレイ１６へ使用エリア表示画面２０６が表示されている。さらに、レーザ出力処理により、実際にスタジオ１００を使用する際に使用領域の境界線に設置されたレーザ３が床から天井に向けて発光される。
【０１２０】
したがって、ユーザはスタジオ１００の使用前に場所取りをしたり、どの位置を確保するかなどを悩んだりする必要がない。さらに、時間帯が移行する際にも前の時間帯で使用していた使用マスを含む領域が次の時間帯での使用マスとされているので、時間帯が切り替わっても、スタジオ１００内を大きく移動することがないので、使用しやすい。また、複数の領域が候補とされている場合には、時間帯が切り替わった際に前の時間帯と後の時間帯とで使用するマスにおいて、なるべく多くのマスが同じマスとなる（重複マスが多い）領域を選択しているので、ユーザのスタジオ１００内で移動がより少なくなる。
【０１２１】
そして、実際にスタジオ１００を使用する際には、使用領域の境界線に設置されたレーザ３が床から天井に向けて発光されるので、使用領域を底面とした空間が光の壁により区切られる。よって、ユーザは自分の領域がどこまでかをはっきりと知ることができ、また、周囲のユーザも知ることができるので、周囲のユーザとのトラブルを回避することができる。
【０１２２】
なお、上記実施の形態のスタジオ利用受付装置１が「領域配置装置」に該当し、スタジオ利用受付プログラムが「領域配置プログラム」に該当する。スタジオ１００の床に設置されたレーザ３が「表示手段」である「発光体」に該当する。そして、スタジオ１００の床１０１が「所定領域」に該当する。そして、運動プログラムが「所定領域を使用する目的」に該当し、運動プログラム名が「目的情報」に該当する。そして、運動プログラムでの３つの時間帯での使用形状が「目的使用形状」に該当する。そして、ＨＤＤ１３のマス使用情報記憶エリア１３６が「使用情報記憶手段」に該当し、ＨＤＤ１３の運動プログラム情報記憶エリア１３２の運動プログラム名欄及び形状欄が「目的情報記憶手段」に該当する。そして、ディスプレイ１６に表示された運動プログラム選択画面２０３（図３参照）、形状選択画面２０４（図４参照）が「希望形状入力手段」に相当し、ディスプレイ１６に表示された運動プログラム選択画面２０３が「目的情報入力手段」に相当する。そして、ディスプレイ１６に表示された開始時刻選択画面２０５（図５参照）が「開始時刻選択手段」及び「希望時間帯入力手段」に相当する。
【０１２３】
そして、図３１に示すメイン処理のＳ４にて、各時間帯の候補マスを抽出する候補検索処理（図３３，図３４参照）を行うＣＰＵ１０が「使用可能領域抽出手段」に該当する。そして、図３１に示すメイン処理にて、候補マスの中から使用マスを決定する候補組合せ処理（Ｓ５、図３５，図３６参照）、最終候補検索処理（Ｓ６、図３７乃至図４２参照）、使用マス決定処理（Ｓ７、図４３参照）を行うＣＰＵ１０が「使用領域選択手段」に該当する。そして、図４４に示すマス使用情報設定処理のＳ２５１においてマス使用情報記憶エリア１３６を更新する処理を行うＣＰＵ１０が「使用情報記憶制御手段」に該当し、図３１に示すメイン処理のＳ９において使用エリア表示画面２０６をディスプレイ１６に表示させる表示処理を行うＣＰＵ１０、及び、図４５に示すレーザ出力処理を行うＣＰＵ１０が「表示制御手段」に該当する。
【０１２４】
なお、本発明の領域配置装置、領域配置システム及び領域配置プログラムは、上記した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。上記実施の形態では、「所定領域」をスタジオ１００の床１０１とし、スタジオ１００をヨガやフィットネス等の運動を使用の目的とし、ユーザの使用領域を決定するために領域を配置している。しかしながら、「所定領域」は屋内施設の床に限らない。例えば、屋内の部屋である場合には、天井であってもよい。また、グラウンドや公園などの屋外の地面であってもよい。つまり、所定の空間を形成する際の一部の平面や曲面であってもよい。また、掲示板等の掲示物が貼られる領域であってもよい。すなわち、「所定領域」は所定の面又は曲面の領域であればよい。
【０１２５】
また、上記実施の形態では、ユーザの使用領域をレーザ３でスタジオ１００の空間を区切るようにして表示している。また、スタジオ利用受付装置１のディスプレイ１６にも図式化して表示している（使用エリア表示画面２０６（図６参照））。しかしながら、レーザ３による表示及びディスプレイ１６への画面表示の両方で表示しなくとも片方だけでもよい。また、上記実施の形態ではレーザ３を床１０１に設置し、レーザ光を床から天井に向けて発光し、レーザ光により光の壁を作り、空間を区切るようにしている。しかしながら、レーザ３を天井に設置し、天井から床に向けてレーザ光を発光するようにして空間を区切ってもよい。また、レーザ３により光の壁を作るのではなく、ＬＥＤ等の発光体を床に設置して、光の線を作るようにしてもよい。また、プロジェクタにより天井から床に境界線を投影してもよい。床前面にＬＥＤ等の発光体を設置し、境界線を示すのではなく面を光らせることにより領域を表示させてもよい。この場合には、ユーザにより色を異なるものとしたり、光量を異なるものとしたりすれば隣接するユーザとの区別がつく。
【０１２６】
なお、上記実施の形態では、縮小フラグがＯＮであり希望形状が変更された場合に照射量を１００％とし、希望形状が変更されていない場合に照射量を８０％という固定値としたが、固定値はこれらの値に限らない。また、ユーザにより照射量を入力させてもよい。また、他の要素を基準として照射量を決定するようにしてもよい。例えば、時間帯に応じて決定してもよい。第一枠を１００％、第二枠を８０％、第三枠を５０％というように照射量を変更すれば、時間帯の切り替わりも知ることができる。また、例えば、音楽を聴きながら使用できるようにし、曲調や曲をユーザに指定させたり、スタジオ利用受付装置１でランダムに曲を選択したりして、その曲調や曲に応じて決定させてもよい。また、照射量を「運動プログラム」に応じて決定してもよい。また、これらの種々の決定方法をユーザに選択させてもよい。また、ユーザの指定に基づいて決定するのではなく、スタジオ１００内の境界線の位置により固定の照射量としてもよい。また、照射量を発光するレーザ３の数により変化を持たせたが、レーザ３の光量により変化を持たせてもよい。
【０１２７】
また、上記実施の形態では、横方向及び縦方向に隣接したマス、つまり、マスの境界線を共有するマスを隣接マスとしたが、斜め方向に隣接したマス、つまりマスの頂点を同一の点で共有するマスも隣接マスとしてもよい。また、上記実施の形態ではマスを正方形としたが、マスの形状はこれに限らない。例えば長方形であってもよい。
【０１２８】
また、上記実施の形態では、時間帯を１０分ごととしたが、これは１０分に限らない。また、どのユーザも３つの時間帯を連続して使用するもとのしたが、使用する時間帯は連続した３つに限らない。運動プログラムごとに異なっていてもよいし、「使用エリア」を入力する場合には、使用したいだけの時間帯分の希望形状を入力させてもよい。
【０１２９】
また、上記実施の形態では、第一候補組合せから第一選択組合せを選択する際に、重複マス数の多い組合せを選択している。そして、第二候補組合せから第二選択組合せを選択する際には、第一選択組合せから繋がる（第二枠の候補基準マスが同じ）第二候補組合せのうち、第二枠と第三枠とで候補基準マスが同じである第二候補組合せを抽出し、それらから重複マス数の多い組合せを第二選択組合せとしている。そして、第一選択組合せと第二選択組合せとの組合せである最終全体組合せから、最も第二選択組合せの重複マス数の多い組合せを使用マスとしている。しかしながら、第一選択組合せの決定方法や、第二選択組合せの決定方法や、使用マスの決定方法はこれに限らない。第二選択組合せの決定においても候補基準マスの位置は考慮せず、重複マス数の多いものを選択してもよい。また、候補マスの位置関係だけでなく、周囲のマスを使用しているユーザの情報を考慮して選択してもよい。例えば、なるべく隣接したマスを他のユーザが使用していない組合せを選択したり、ユーザの情報を参照して、その使用目的や性別、年齢などに基づいて決定してもよい。また、ユーザにより選択の際の基準となる条件を指定させてもよい。
【０１３０】
なお、上記実施の形態では、希望形状が確保できない場合に、希望形状を回転させたり、縮小させたりして希望形状を変形し、確保を試みている。しかしながら、このような方法だけでなく、希望形状の面積が同様である（マス数が同じ）形状に希望形状を変形して確保を試みてもよい。例えば、（２，２）の希望形状であれば、（１，４）や（４，１）に変形する。また、上記実施の形態では、希望形状が確保できない場合に、無条件に希望形状を変形させている。しかし、ユーザが希望形状を指定する際に、「希望形状が確保希望形状を変形する」か否かをユーザに指定させてもよい。また、希望形状を変形させる際に、この部分だけは必ず確保したいという形状を指定させてもよい。例えば、ユーザは（３，２）と指定し、（２，２）の形状は最低限確保したいと指定する。
【０１３１】
また、上記実施の形態では、「目的情報」である運動プログラム名として「ヨガ１」，「ヨガ２」，「エアロ１」，「エアロ２」，「ホップホップ１」が例に挙げられているが、他の種類の運動の運動プログラムが設定されていてもよい。また、運動の種類を指定するのではなく、「２人ペア利用」，「３人で利用」というように複数人数で使用することを目的としてもよい。この場合、「２人ペア利用」であればスタジオ１００を２人で利用し、この運動プログラム（目的情報）に対する形状は２人が利用可能な広さが確保されている。また、「３人で利用」であれば、３人で利用可能な広さが確保されている。また、単に複数人で使用することを目的とするだけでなく、「２人でストレッチ」、「２人でヨガ」、「２人でエアロ」というように、運動の種類と人数とを組み合わせた目的情報としてもよい。
【図面の簡単な説明】
【０１３２】
【図１】フィットネスクラブ等で使用されているスタジオ１００の床１０１と隣り合った２面の壁１０２を示す模式図である。
【図２】選択方法入力画面２０２を示す模式図である。
【図３】運動プログラム選択画面２０３を示す模式図である。
【図４】形状選択画面２０４を示す模式図である。
【図５】開始時刻選択画面２０５を示す模式図である。
【図６】使用エリア表示画面２０６を示す模式図である。
【図７】床１０１のマスに番号及び領域の名称（マス名）を示したものである。
【図８】図７に示したマスの境界線に付された識別番号を示す模式図である。
【図９】スタジオ利用受付装置１の電気的構成を示すブロック図である。
【図１０】ＨＤＤ１３に設けられている記憶エリアを示す模式図である。
【図１１】ＨＤＤ１３に設けられている運動プログラム情報記憶エリア１３２の構成を示す模式図である。
【図１２】縮小テーブル記憶エリア１３３の構成を示す模式図である。
【図１３】ＨＤＤ１３に設けられているマス使用情報記憶エリア１３６の構成を示す模式図である。
【図１４】ＨＤＤ１３に設けられている境界線使用情報記憶エリア１３７の構成を示す模式図である。
【図１５】スタジオ１００の利用状態の一例を示す模式図３０１である。
【図１６】図１５に示した状態の次の時間帯の状態の一例を示す模式図３０２である。
【図１７】図１６に示した状態の次の時間帯の状態の一例を示す模式図３０３である。
【図１８】ＲＡＭ１２に設けられている記憶エリアを示す模式図である。
【図１９】希望形状記憶エリア１２４の構成を示す模式図である。
【図２０】ＲＡＭ１２に設けられている候補マス記憶エリア１２６の構成を示す模式図である。
【図２１】マス組合せ記憶エリア１２７の構成を示す模式図である。
【図２２】重複マス数記憶エリア１２９の構成を示す模式図である。
【図２３】第一選択組合せ記憶エリア１４１の構成を示す模式図である。
【図２４】第二選択組合せ記憶エリア１４２の構成を示す模式図である。
【図２５】第二枠候補基準マス記憶エリア１４３の構成を示す模式図である。
【図２６】最終全体組合せ記憶エリア１４４の構成を示す模式図である。
【図２７】ＲＡＭ１２に設けられている使用マス記憶エリア１４５を示す模式図である。
【図２８】ユーザＢにとっての第一枠である１９：１０〜１９：２０の時間帯を示す模式図３１１である。
【図２９】ユーザＢにとっての第二枠である１９：２０〜１９：３０の時間帯を示す模式図３１２である。
【図３０】ユーザＢにとっての第三枠である１９：３０〜１９：４０の時間帯を示す模式図３１３である。
【図３１】メイン処理のフローチャートである。
【図３２】メイン処理の中で実施される入力処理のフローチャートである。
【図３３】メイン処理の中で実施される候補検索処理のフローチャートである。
【図３４】候補検索処理の中で実施される候補基準マス抽出処理のフローチャートである。
【図３５】メイン処理の中で実施される候補組合せ処理のフローチャートである。
【図３６】候補組合せ処理の中で実施される候補組合せ作成処理のフローチャートである。
【図３７】メイン処理の中で実施される最終候補検索処理のフローチャートである。
【図３８】最終候補検索処理の中で実施される第一選択組合せ抽出処理のフローチャートである。
【図３９】最終候補検索処理の中で実施される全体組合せ検索処理のフローチャートである。
【図４０】全体組合せ検索処理の中で実施される第二候補組合せ最大重複数抽出処理のフローチャートである。
【図４１】全体組合せ検索処理の中で実施される第二選択組合せ抽出処理のフローチャートである。
【図４２】全体組合せ検索処理の中で実施される全体組合せ抽出処理のフローチャートである。
【図４３】メイン処理の中で実施される使用マス決定処理のフローチャートである。
【図４４】メイン処理の中で実施されるマス使用情報設定処理のフローチャートである。
【図４５】レーザ出力処理のフローチャートである。
【符号の説明】
【０１３３】
１  スタジオ利用受付装置
２  レーザ制御装置
３  レーザ
１０  ＣＰＵ
１３  ＨＤＤ
１４  キーボード
１５  マウス
１６  ディスプレイ
１００  スタジオ
１０１  床
１３１  スタジオ利用受付プログラム記憶エリア
１３２  運動プログラム情報記憶エリア
１３６  マス使用情報記憶エリア
２０２  選択方法入力画面
２０３  運動プログラム選択画面
２０４  形状選択画面
２０５  開始時刻選択画面
２０６  使用エリア表示画面
【図１】
2008310560.tif 000003
【図２】
2008310560.tif 000004
【図３】
2008310560.tif 000005
【図４】
2008310560.tif 000006
【図５】
2008310560.tif 000007
【図６】
2008310560.tif 000008
【図７】
2008310560.tif 000009
【図８】
2008310560.tif 000010
【図９】
2008310560.tif 000011
【図１０】
2008310560.tif 000012
【図１１】
2008310560.tif 000013
【図１２】
2008310560.tif 000014
【図１３】
2008310560.tif 000015
【図１４】
2008310560.tif 000016
【図１５】
2008310560.tif 000017
【図１６】
2008310560.tif 000018
【図１７】
2008310560.tif 000019
【図１８】
2008310560.tif 000020
【図１９】
2008310560.tif 000021
【図２０】
2008310560.tif 000022
【図２１】
2008310560.tif 000023
【図２２】
2008310560.tif 000024
【図２３】
2008310560.tif 000025
【図２４】
2008310560.tif 000026
【図２５】
2008310560.tif 000027
【図２６】
2008310560.tif 000028
【図２７】
2008310560.tif 000029
【図２８】
2008310560.tif 000030
【図２９】
2008310560.tif 000031
【図３０】
2008310560.tif 000032
【図３１】
2008310560.tif 000033
【図３２】
2008310560.tif 000034
【図３３】
2008310560.tif 000035
【図３４】
2008310560.tif 000036
【図３５】
2008310560.tif 000037
【図３６】
2008310560.tif 000038
【図３７】
2008310560.tif 000039
【図３８】
2008310560.tif 000040
【図３９】
2008310560.tif 000041
【図４０】
2008310560.tif 000042
【図４１】
2008310560.tif 000043
【図４２】
2008310560.tif 000044
【図４３】
2008310560.tif 000045
【図４４】
2008310560.tif 000046
【図４５】
2008310560.tif 000047