次に、本発明の実施の形態について図面を参照して説明する。
[第1の実施の形態]
まず、図1および図2を参照して、本発明の第1の実施の形態にかかるスケジューリング装置10について説明する。図1は、第1の実施の形態にかかるスケジューリング装置の構成を示すブロック図である。図2は、図1のパターン評価部の構成例である。
このスケジューリング装置10は、全体としてサーバー装置などの情報処理装置からなり、無線ネットワークシステムに設けられている、制御の対象とするN(Nは2以上の整数)個の各送信ポイント(TP:基地局)に対して、送信先となるユーザ端末(UE:ユーザ無線端末)や送信停止などの動作内容(送信状態)を指定することにより、無線ネットワークが有する無線リソースの割り当てに用いる最適リソース割り当てパターンを選択する機能を有している。
図1に示すように、スケジューリング装置10には、主な機能部として、パターン生成部11、パターン評価部12、および最適解保持部13が設けられている。
パターン生成部11は、リソース割り当てパターンとして、TPごとに送信先となるUEあるいは送信停止からなる送信状態を指定したパターンを順次生成する機能と、新たなリソース割り当てパターンを生成する際、直前に生成したリソース割り当てパターンと比較して、いずれか1つのTPにおける送信状態だけが差分となるリソース割り当てパターンを順次作成する機能とを有している。
パターン評価部12は、パターン生成部11で生成されたリソース割り当てパターンの評価値を順次計算する機能を有している。
最適解保持部13は、パターン生成部11で生成されたリソース割り当てパターンのうち、パターン評価部12で得られた評価値が最も良好なリソース割り当てパターンを、実際の無線リソース割り当てに用いる最適リソース割り当てパターンとして選択する機能を備えている。
本実施の形態は、このような構成において、パターン評価部12に、評価対象として割り当てられたUEのUE別評価パラメタに基づいて、当該UEに関するUE別評価値をそれぞれ計算する複数のUE別パターン評価部24を設け、UE割当部23が、TPとの間で無線通信を行う全UEのうち、計算対象であるリソース割り当てパターンにおいて少なくともいずれか1つのTPの送信先として指定されているUEをUE別パターン評価部24のいずれかに割り当て、UE別評価値合計部25が、UE別パターン評価部24で得られたUE別評価値を合計することにより、計算対象であるリソース割り当てパターンに関する評価値を計算するようにしたものである。
また、より具体的には、パターン生成部11が、リソース割り当てパターンを生成するごとに、直前に生成したリソース割り当てパターンのうち送信先を変更した送信ポイントを示す差分TP番号と、新たな送信先となったユーザ端末を示す差分UE番号とを出力し、UE割当部23が、パターン生成部11から出力された差分TP番号および差分UE番号に基づいて、当該差分TP番号の送信ポイントに関する変更前後の送信先に基づいて、これら送信先であるユーザ端末のUE別パターン評価部24に対する割当および解除を行うようにしたものである。
さらに、パターン評価部12は、外部から入力された各ユーザ端末のユーザ端末別評価パラメタを記憶するユーザ端末別評価パラメタテーブル22を備え、UE別パターン評価部24が、UE割当部23によるユーザ端末の割り当てに応じて、当該ユーザ端末に関するUE別評価値の計算に用いるUE別評価パラメタをUE別評価パラメタテーブルから取得して保持するようにしたものである。
通常、評価値の計算対象となるリソース割り当てパターンに含まれる計算対象UEは、全TP数以下であるため、必要となるUE別パターン評価部24も全TP数以下となる。したがって、全UE数分のUE別パターン評価部24を設ける場合と比較して、UE別パターン評価部24の数を大幅に削減でき、回路規模を大幅に削減できるとともに、UE別評価パラメタを記憶するためのメモリ規模を削減できる。これにより、結果として、スケジューリング装置10の低コスト化・小型化を実現することが可能となる。
次に、図1および図2を参照して、第1の実施の形態にかかるスケジューリング装置10の各構成について詳細に説明する。
[パターン生成部]
パターン生成部11は、外部から入力されたリソース割り当てパターン範囲設定(パターン範囲情報)に基づき、スケジューリング装置10が制御の対象とする各送信ポイントTP#i(i=1…Ntp;Ntpはシステム内のTP数)について、その送信状態、すなわち、送信先のユーザ機器UEの番号(1…Nue;Nueはスケジューリング装置10が扱うことが可能なUE数の最大値)あるいはTPの送信停止に対応する値0を表す、リソース割り当てパターンT[i](i=1…Ntp)を生成する。リソース割り当てパターン範囲設定は、リソース割り当てパターンを生成するときの制約であり、各TP#iについて送信停止の選択可否や送信先となり得るUE、つまりTP毎の選択肢の設定である。
リソース割り当てパターン範囲設定の例は、TP毎に送信先として選択可能なUEの番号あるいは送信停止に対応する値0のリストという形式であり、各TP#i(i=1…Ntp)の設定として、Ns個の選択肢[i,k](k=1…Ns;Nsは各TPに設定可能な選択肢の最大個数)と、これらのうち有効な選択肢の個数s[i](s[i]≦Ns)という構成をとる。
パターン生成部11は、複数個のリソース割り当てパターンを時間の経過に伴って次々と生成するが、これら生成において、直前に生成したリソース割り当てパターンと、1個のTPについて選択を変更する。なお、リソース割り当てパターン範囲設定内の全てのリソース割り当てパターンを生成した時点で、パターン生成部11は生成を終了する。
このように、本実施の形態にかかるスケジューリング装置10のパターン生成部11は、各TP#i(i=1…Ntp)からシステム内の全UEを送信対象としてリソース割り当てパターンを生成するのではなく、外部から入力されたリソース割り当てパターン範囲設定内のリソース割り当てパターンを生成することによって、最適解とならないか可能性が低いパターンを予め除外しておくことが可能であり、リソース割り当てパターンの生成および評価値の算出の回数の削減によって、高速化できる。なお、高速化の程度はリソース割り当てパターン範囲設定に応じて変わる。例えば、各TPの選択肢を1/2に制限した場合は、2のTP数乗倍に高速化できる。
パターン生成部11は、リソース割り当てパターンを生成する毎に、これらパターンと、パターン生成の直前に生成したリソース割り当てパターンとを、比較したときに、送信先が異なる(直前のパターンから送信先のUEが変わった)TPの番号である差分TP番号(1…Ntp)と、当該TPの送信先となったUEの番号である差分UE番号(0…Nue、値0は送信停止を表す)を、差分情報として、パターン評価部12に向けて出力する。なお、パターン生成部11が差分TP番号と差分UE番号をパターン評価部12に向けて出力するのではなく、生成したリソース割り当てパターンT[i](i=1…Ntp)をパターン評価部12に向けて出力し、パターン評価部12が、直前に入力したリソース割り当てパターンと今回入力したパターンとを比較することによって、パターン評価部12内で差分TP番号と差分UE番号を生成する構成も可能である。
また、パターン生成部11は、リソース割り当てパターンを生成する毎に、パターン評価部12に対して出力した差分TP番号と差分UE番号(差分情報)を、最適解保持部13にも出力する。これは、リソース割り当てパターンに対する評価値をパターン評価部12が最適解保持部13に向けて出力し、最適解保持部13がこの評価値を最良と判断した場合に、最適解保持部13が対応する差分TP番号と差分UE番号を用いてリソース割り当てパターンを再生し、これを最適解として保持するためである。なお、パターン生成部11が差分TP番号と差分UE番号を最適解保持部13に向けて出力するのではなく、生成したリソース割り当てパターンT[i](i=1…Ntp)を最適解保持部13に向けて出力する構成も可能である。
[パターン生成処理]
ここで、図3を参照して、パターン生成部11でのパターン生成処理について説明する。図3は、第1の実施の形態にかかるパターン生成処理を示すフローチャートである。
パターン生成部11は、リソース割り当てパターン範囲設定として、各TP#i(i=1…Ntp)の選択肢の個数を保持するs[i](s[i]≦Ns)と、各TP#iでの選択可能な送信状態のリストである選択肢[i,k](k=1…s[i])とを使用する。また、パターン生成部11内において、各TP#iが現時点でどの選択肢を選択しているかを番号として表す選択肢番号[i](1…s[i])を使用する。
さらに、各TP#i(i=1…Ntp)の選択を更新するときに選択肢番号[i]をインクリメント(+)するかデクリメント(−)するかを示す値として更新量[i](選択更新時に選択肢番号[i]に加算する値)を使用する。TP#iの選択更新において選択肢番号[i]をインクリメントする場合は更新量[i]は1であり、デクリメントする場合は更新量[i]は−1である。なお、更新量[i]の代わりに更新方向[i]を用いてもよい。これにより、更新方向[i]が1の場合は選択肢番号[i]をインクリメントし、更新方向[i]が0の場合は選択肢番号[i]をデクリメントすると定義することで、各TP#iに対して1bit長の更新方向[i]を用いて表現することが可能である。
さらに、前回生成したリソース割り当てパターンと次に生成するリソース割り当てパターンとの違いがあるTPの番号、つまり、差分TP番号を決めるために、TP番号を1からTP数であるNtpまで順に試行するための変数Itpを使用する。すなわち、Itpを差分TP番号の候補として使用する。ただし、パターン生成部11を回路として実装する場合は、TPの番号が1からNtpまでの試行を同時に行うことが可能であり、この場合は、変数Itpを使用せず、図3に示したフローチャートの手順に従って動作しなくともよく、等価な動作が可能であれば良い。
以下、図3に示したフローチャートについて詳細に説明する。
まず、パターン生成部11は、その動作を開始した後、全TPについて各TPの選択肢のうち先頭を選択することにより、パターン生成部11の初期化を行う(ステップ100)。ここでは、各TP[i]に対応する選択肢番号[i]の値として1をセットする処理と、更新量[i]の値として1をセットする処理を行う。これにより初期パターンが生成される。
次に、パターン生成部11は、このようにして生成した初期パターンを差分情報によりパターン評価部12に出力するため、各TPについて、当該TPの番号を差分TP番号とし、当該TPの最初の選択肢を差分UE番号として、パターン評価部12に出力する(ステップ101)。すなわち、TP番号iを1〜Ntpの順番で変えたときの各TP番号iについて、差分TP番号としてiを、差分UE番号として選択肢[i,1]を、パターン評価部12に出力する。これにより、パターン生成部11は、パターン評価部12に、最初に生成するリソース割り当てパターンを渡したことになる。
この後、パターン生成部11は、次のパターンを生成するため、Itpに1をセットすることにより、Itpの初期化を行う(ステップ102)。Itpは、差分TP番号の候補であり、Itpが差分TP番号であるかの判定を行う(ステップ103)。
具体的には、選択肢番号[Itp]に更新量[Itp]を加算した値が、1以上かつs[Itp](選択肢の個数)以下である場合、つまり、更新した選択肢番号が正常な範囲内にある場合、TP#Itpについて選択肢を変更できると判定する。
なお、更新量ではなく更新方向の違いを表現する変数を用いる場合は、変数の値がインクリメントを表すならば選択肢番号[Itp]<s[Itp]を判定し、この変数の値がデクリメントを表すならば選択肢番号[Itp]>1を判定する。
ここで、現在のItpは差分TP番号ではない場合(ステップ103:NO)、パターン生成部11は、Itpの更新(インクリメント)を行うことで差分TP番号の新たな候補を得るが、その前に、現在のTP#Itpについて最初の選択肢を選択している状態に戻しておく(ステップ104)。ただし、先頭の選択肢に戻す(選択肢番号[Itp]に1をセットする)のではなく、更新方向のみを逆にすることによって、現選択が最初の選択肢とする。つまり、更新量[Itp]を1から−1に、−1から1に変更する処理となる。これにより、リソース割り当てパターンに2箇所以上の差分が生じることを防ぐことができるので、リソース割り当てパターン1個の生成につき、差分TP番号を1個のみとすることができる。
この後、パターン生成部11は、全パターンの生成を終えたか(動作終了)を判定するため、Itpが最後のTP番号か、つまり、Itp==Ntpであるかの判定を行う(ステップ105)。ここで、Itpが最後のTP番号である場合(ステップ105:YES)、パターン生成部11は、一連のパターン生成処理を終了する。
また、Itpが最後のTP番号でない場合(ステップ105:NO)、パターン生成部11は、Itpをインクリメントする(Itpに1を加算する)ことによって、Itpの更新を行った後(ステップ106)、新たなItpが差分TP番号であるかを判定するため、ステップ103に戻る。
一方、ステップ103において、現在のItpが差分TP番号である場合(ステップ103:YES)、パターン生成部11は、TP#Itpの現選択を次の選択肢に変更することにより、選択肢の更新を行う(ステップ107)。このステップは、選択肢番号[Itp]に更新量[Itp]を加算する処理となる。
なお、更新量ではなく更新方向の違いを表現する変数を用いる場合は、変数の値がインクリメントを表すならば選択肢番号[Itp]に1を加算する処理であり、変数の値がデクリメントを表すならば選択肢番号[Itp]から1を減算する処理である。
これにより、パターン生成部11は、次のパターンのための更新を完了し、更新に対応した差分TP番号や差分UE番号等を出力するため、Itpを差分TP番号とし、更新後の選択肢を差分UE番号として出力する(ステップ108)。具体的は、差分TP番号=Itp、差分UE番号=選択肢[Itp,選択肢番号[Itp]]とし、これらをパターン評価部12に向けて出力する。この後、次のリソース割り当てパターンを生成すべくステップ102に戻る。
このように、パターン生成部11は、次の選択肢を選択可能なTPのうち、最も番号が小さいTP#Itpを見つけ、このItpを差分TP番号とし、TP#Itpの次の選択肢を差分UE番号とする。また、Itpよりも小さい番号のTPについては、その更新量の符号を反転させる(更新方向を逆転させる)。これにより、過去に生成したリソース割り当てパターンとは少なくとも1個のTPについて選択肢が異なるリソース割り当てパターンを生成することができる。さらに、生成されたリソース割り当てパターンは前回生成されたパターンと、1個のTP(差分TP番号が指すTP)についてのみ、その選択肢が異なることが保証され、リソース割り当てパターン1個の生成につき、各1個の差分TP番号と差分UE番号として出力することができる。
図4は、第1の実施の形態にかかるリソース割り当てパターンの生成例であり、図4(a)は、リソース割り当てパターン範囲設定の例、図4(b)は生成したリソース割り当てパターンの例、図4(c)は各リソース割り当てパターンの差分情報例である。
図4に示すように、リソース割り当てパターン1個の生成につき、各1個の差分TP番号と差分UE番号となっている。
[パターン評価部]
パターン評価部12は、各リソース割り当てパターンに対する評価値を計算し、得られた評価値を最適解保持部13に向けて出力する。この評価値は、リソース割り当てパターンを採用したスケジューリングの良さを表す指標であり、例えば、各UEのスループットを全UEについて合計した値を評価値とする方法や、UE別に過去の平均レートに対するスループットの比率を求め、この値を全UEについて合計した値を評価値とすることで、ユーザ間の公平性を考慮した方法(参考文献2を参照)などがある。
この評価値の計算では、各UEのスループットを見積もる必要があり、まず、各UEの受信SINR(Signal-to-Interference plus Noise power Ratio:干渉電力および雑音電力の和に対する信号電力の比率)を見積もり、さらに、受信SINRに応じたスループットを求める(例えば受信SINRとスループットを対応付けるテーブルを引く)。受信SINRの計算では、UE毎の干渉電力や信号電力の値を必要とするので、これらの値を、各TPが送信した信号をUEが受信するときの受信電力を測定しておき、この測定値とリソース割り当てパターンから見積もる。なお、測定値として、UEが測定した受信電力値ではなく、UEが上りチャネルを通じて基地局に通知したCQI(Channel Quality Indicator)を受信電力値に換算した値や、UEが送信した上り信号を各TPが受信したときの受信電力値から推定した値を、使用することも可能である。
このように、パターン評価部12は、UE毎にUE別評価値(スループットや平均レートに対するスループットの比率など)の計算を行い、各UE別評価値を合計するなどの方法によって評価値を計算する。また、UE別評価値の計算には、UE別評価パラメタ(各UEの平均レートや、各UEが受信可能な各TPの番号や、TPの信号を受信するときの受信電力の値など)が必要であり、基地局など外部より入力される。
図2に示したように、パターン評価部12には、主な回路部として、送信状態生成部21、UE別評価パラメタテーブル22、UE割当部23、UE別パターン評価部[i](i=1…Nc)24、およびUE別評価値合計部25が設けられている。
[送信状態生成部]
送信状態生成部21は、パターン生成部11から差分TP番号(直前のリソース割り当てパターンと比較したとき送信先のUEが変更されたTPの番号)と差分UE番号(差分TP番号が示すTPの送信先となったUEの番号、ただし当該TPが送信停止の場合はUE番号として使用されていない値0)を入力する毎、つまり、パターン生成部11がリソース割り当てパターンを生成する毎に、各TPの送信の有無を表す送信フラグ[i](i=1…Ntp、値が1の場合はTP#iが送信中であることを表すビット)を生成し、各UE別評価パラメタ評価部[c](c=1…Nc)に向けて出力する。
このため、送信状態生成部21は、各TPの送信フラグ[i](i=1…Ntp)を保持し、入力した差分TP番号が示すTPの送信フラグ[差分TP番号]の値を、差分UE番号に基づいて更新する。具体的には、差分UE番号が送信停止を表す値0の場合は、送信フラグ[差分TP番号]に送信中ではないことを表す値0をセットし、送信停止以外の場合(差分UE番号が有効なUEの番号を表す場合)には、送信フラグ[差分TP番号]に送信中であることを表す値1をセットする。
なお、差分TP番号以外の各TPの送信フラグ[i](i=1…Ntp、i≠差分TP番号)の値は変更しないで、これまでの値を保持する。ただし、初期状態での送信フラグの各値を0(送信停止)とし、パターン生成部11がリソース割り当てパターンを生成するときの初期状態と一致させておく。
なお、差分TP番号と差分UE番号に基づいて各TPの送信フラグ[i](i=1…Ntp)を生成するのではなく、パターン生成部11からリソース割り当てパターンT[i](i=1…Ntp、TP#iの送信先であるUEの番号または送信停止を表す値0)を入力し、T[i]が送信停止を表す値であるか否かに基づいて生成することも可能である。また、パターン評価部12内に送信状態生成部21を持つ構成ではなく、パターン生成部11内に送信状態生成部21を持つ構成も可能であり、この構成では、パターン生成部11がパターン評価部12に向けて各TPの送信フラグ[i](i=1…Ntp)を出力する。
[UE別評価パラメタテーブル]
UE別評価パラメタテーブル22は、各UE#j(j=1…Nue;Nueはスケジューリング装置10が扱うことが可能なUE数の最大値)のUE別評価パラメタ[j](UE別評価値を計算するために必要となる数値の組)を記憶する。記憶する値は外部よりのアクセスにより設定・更新が可能である。パターン評価部12が有効なUEの番号である差分UE番号Jを入力したとき、UE別評価パラメタテーブル22は、記憶している差分UE番号Jが指すUE#JのUE別評価パラメタ[J]を、各UE別パターン評価部24に向けて出力する。
各UE別パターン評価部24は、UE割当部23によって割り当てられたUEに対応するUE別評価パラメタを保持するが、保持内容を更新する必要があるUE別パターン評価部24は、UE#Jが割り当てられたUE別パターン評価部[C](割当UE番号[C]==J)のみであり、UE別評価パラメタテーブル22が出力したUE別評価パラメタ[J]を、UE別パターン評価部[C]が入力して保持内容を更新するとともに、他のUE別パターン評価部[c](c=1…Nc, c≠C)は、これまでの保持内容を維持する。
これは、パターン生成部11が生成したリソース割り当てパターンに含まれるUEのなかで、その直前に生成されたリソース割り当てパターンには含まれていない可能性のあるUEはUE#Jのみであり、UE#Jが割り当てられたUE別パターン評価部[C](割当UE番号[C]==J)は、UE別評価パラメタ[J]の保持が必要となる可能性がある一方で、UE#J以外のUEを割り当てられたUE別パターン評価部[c](c=1…Nc, c≠C)はUE別評価パラメタの更新は不要であること、による。
UE別評価パラメタテーブル22の回路実装において、SRAM(スタティックランダムアクセスメモリ)を用いることが可能である。SRAMのワード数をNue(スケジューリング装置10が扱うことが可能なUE数の最大値)とし、各ワードに各UEのUE別評価パラメタを格納し、入力した差分UE番号JからUE#JのUE別評価パラメタ[J]を格納したワードのアドレス(例えばアドレス=差分UE番号J−1)に変換して、SRAMのリードアクセスを行うことで、SRAMのリードデータがUE別評価パラメタ[J]となる。
UE別評価パラメタテーブル22は、TP別評価パラメタ保持部23に向けて、同時に複数のUEのUE別評価パラメタを出力する必要がないため、つまり、パターン生成部11がリソース割り当てパターンを生成する毎に1個のUEのUE別評価パラメタを出力すればよいので、SRAMのように、同時に読み出すことができるワード数が限定される(別アドレスに格納されたワードを同時に読み出すことができない)が1ビットあたりの面積が小さいメモリセルにより構成された、小面積で大容量のメモリを用いることが可能となる。
すなわち、本実施の形態にかかるスケジューリング装置10は、UE別評価値の計算に必要な各TPからの受信電力など(UE別評価パラメタ)を記憶する必要があるが、UE別評価値の計算を行う回路毎に分散して記憶するのではなく、テーブル(UE別評価パラメタテーブル22)化して記憶するため、記憶に用いるメモリの回路面積を削減できる。
したがって、本実施の形態にかかるスケジューリング装置10は、各UEのUE別評価パラメタをテーブルとして備えることにより、SRAMのようにアクセス機構が複雑だが1ビットあたりの面積が小さい回路を効果的に使用できる。本実施の形態の適用により、UE別評価パラメタを記憶するためのメモリの面積が小さくなり、スケジューリング装置10を低コスト化できる。
[UE割当部]
UE割当部23は、パターン生成部11から差分TP番号(直前のリソース割り当てパターンと比較したとき送信先のUEが変更されたTPの番号)と差分UE番号(差分TP番号が示すTPの送信先となったUEの番号、ただしTPが送信停止の場合はUE番号として使用されていない値0)を入力する毎、つまり、パターン生成部11がリソース割り当てパターンを生成する毎に、各UE別パターン評価部[c](c=1…Nc)に割り当てるUE番号である、UE割当部23が保持する割当UE番号[c]を更新して、UE別パターン評価部[c]に向けて出力する。
なお、上記処理のために、パターン生成部11が生成したリソース割り当てパターンを、差分TP番号と差分UE番号に基づいて再生する必要があり、UE割当部23の内部に、再生リソース割り当てパターンR[i]として保持・更新する。また、UEを割り当てていない無効UE別パターン評価部24に向けて値0の割当UE番号を出力し、UEを割り当てた有効UE別パターン評価部24に向けてUEの番号を割当UE番号として出力する。
[UE番号割当処理]
ここで、UE割当部23におけるUE番号割当処理について説明する。図5は、第1の実施の形態にかかるUE番号割当処理を示すフローチャートである。図6は、図5の詳細を示すフローチャートであり、図5の各処理に対応するステップ番号が付与されている。
UE割当部23は、動作開始の後、UE割当部23が保持する再生リソース割り当てパターンと割当UE番号を初期化する(ステップ110)。初期化の後、UE割当部23は、差分TP番号と差分UE番号を入力する毎、つまり、パターン生成部11がリソース割り当てパターンを生成する毎に、これら差分TP番号と差分UE番号に基づいて、保持している再生リソース割り当てパターンと割当UE番号を更新することになる。
次に、UE割当部23は、差分TP番号と差分UE番号を入力し(ステップ111)、この差分TP番号が指すTPの送信先であるUEが、他のTPの送信先となっているかを判定する(ステップ112,112A,112B)。この判定は、入力した差分TP番号と差分UE番号に基づいた再生リソース割り当てパターンの更新を行う前に、再生リソース割り当てパターンに基づいて行う。
差分TP番号が指すTPの送信先であるUEは、差分UE番号が指すUEに変更されるので、変更前のUEが、差分TP番号が指すTP以外のTPの送信先となっていない場合は、変更によって、変更前のUEはリソース割り当てパターンから消える。
つまり、UEに対するUE別評価値の計算は不要となるので、UEが割り当てられたUE別パターン評価部24については、その割り当てを解除し、無効UE別パターン評価部24としてよいことになる。
なお、差分TP番号が指すTPが送信停止であった場合(TPの送信先のUE番号が0の場合)は、TPの送信先のUEは存在していないので割り当ての解除は不要であるため、他のTPの送信先となっていると判定して、割り当ての解除を行わない(ステップ112A)。
UE割当部23は、差分TP番号が指すTPの送信先であるUEが、他のTPの送信先となっていない場合に、入力した差分TP番号と差分UE番号に基づいた割当UE番号の更新を行う前に、割当UE番号に基づいてUEが割り当てられたUE別パターン評価部24を見つけ出し、その割り当てを解除することによって、これを無効UE別パターン評価部24とする(ステップ113,113A,113B)。なお、UEが割り当てられたUE別パターン評価部24が見つからなかった場合は、差分TP番号の送信先であったUEを割り当てていたUE別パターン評価部24がなかったということであり、本装置が正常に動作している限り発生しない。
次に、UE割当部23は、入力した差分TP番号と差分UE番号に基づいて、再生リソース割り当てパターンの更新を行った後(ステップ114)、この差分UE番号が指すUEをUE別パターン評価部24に割り当て済みであるかを判定する(ステップ115)。
すなわち、UE割当部23が入力した差分TP番号と差分UE番号に基づいて割当UE番号の更新を行う前に、割当UE番号のなかから差分UE番号に一致する割当UE番号を探し、見つかった場合に、UE別パターン評価部24に割り当て済みと判定する(ステップ115B)。
ここで、差分UE番号に一致する割当UE番号が見つからなかった場合は、差分UE番号が指すUEの評価値を計算するUE別パターン評価部24は存在していないので、UEを無効UE別パターン評価部24の1つに割り当てて、評価値の計算を行う必要がある。
なお、差分UE番号の値が0の場合、すなわち、差分TP番号が指すTPが送信停止になる場合は、UE別パターン評価部24へのUE割り当ては不要であるため、差分UE番号が指すUEをUE別パターン評価部24に割り当て済みと判定して、UE別パターン評価部24へのUEの割り当てを行わない(ステップ115A)。
また、UE割当部23が、差分UE番号が指すUEがUE別パターン評価部24に割り当て済みでなかった場合、UEを無効UE別パターン評価部24の1つに割り当てる(ステップ116,116A,116B)。すなわち、UE割当部23が入力した差分TP番号と差分UE番号に基づいて割当UE番号の更新を行う前に、割当UE番号の値が0となっているUE別パターン評価部24を見つけ、このUE別パターン評価部24への割当UE番号として、差分UE番号を指定する。これにより、差分TP番号と差分UE番号に基づいた割当UE番号の更新が完了する。
次に、UE割当部23は、各UE別パターン評価部24に向けて、UE別パターン評価部24に対応する割当UE番号を出力する(ステップ117)。その後、パターン生成部11が次のリソース割り当てパターンを生成する場合は、次の差分TP番号と差分UE番号を入力する手順へと戻って上記の動作を継続する(ステップ118:NO)。また、最後のリソース割り当てパターンの場合は、動作を終了する(ステップ118:YES)。なお、リソース割り当てパターンの生成を終了するか否かについては、パターン生成部11から入力される(図2では対応する信号の記載を省いている)。
このように、UE割当部23は、各UE別パターン評価部24を、UEを割り当てていない無効UE別パターン評価部24(値0の割当UE番号を入力するUE別パターン評価部24)と、UEを割り当てた有効UE別パターン評価部24(UEの番号を割当UE番号として入力するUE別パターン評価部24)とに分けて管理する。
また、パターン生成部11が生成した差分UE番号が指すUEを、UE別パターン評価部24に割り当てていない場合は、無効UE別パターン評価部24のうちの1個にUEを割り当てることにより、このUE別パターン評価部24を有効UE別パターン評価部24に変更する。また、有効UE別パターン評価部24のうち、割り当てたUEがリソース割り当てパターンから消えたものについては、無効UE別パターン評価部24へと変更し、新たなUEの割り当てに備える。
なお、UE割当部23が入力した差分TP番号と差分UE番号に基づいてリソース割り当てパターンを再生するのではなく、パターン生成部11が保持するリソース割り当てパターンをUE割当部23に入力し、これを再生リソース割り当てパターンの代わりとして使用する構成も可能である。ただし、この場合には、入力した差分TP番号と差分UE番号が反映されたリソース割り当てパターンを、再生リソース割り当てパターンの代わりとして使用するのではなく、反映前の、つまり、1個前に生成されたリソース割り当てパターンを使用する必要がある点に留意する。
[UE別パターン評価部]
各UE別パターン評価部[c](c=1…Nc)は、UE割当部23がUE別パターン評価部[c]に割り当てたUE#j(j=割当UE番号[c])の、UE別評価パラメタ[j]を保持し、UE別評価パラメタと、送信状態生成部21から入力される各送信フラグ[i] (i=1…Ntp)と、パターン生成部11がリソース割り当てパターンを生成する毎にパターン生成部11から入力される差分TP番号Iおよび差分UE番号Jに基づいて、UE#jのUE別評価値を計算する。なお、UE割当部23が有効なUEを割り当てていない(割当UE番号[c]=0の)UE別パターン評価部24については、そのUE別評価値を0としてUE別評価値の計算を行わない。
各UE別パターン評価部[c]は、パターン生成部11が生成したリソース割り当てパターン毎にUE別評価値を計算するため、パターンにおけるUE#j(j=割当UE番号[c])に送信するTPの番号を取得する。取得のため、UE別パターン評価部[c]は、UE#jが割り当てられた時点以後に入力された、差分UE番号Jが割当UE番号[c](=j)に一致した場合に、差分UE番号Jの入力と同時に入力された差分TP番号Iを、UE#jに送信するTPの番号として保持する。また、入力された差分TP番号Iが、保持中のUE#jに送信するTPの番号に一致し、かつ、差分TP番号Iと同時に入力された差分UE番号Jが割当UE番号[c](=j)に一致しない場合に、差分TP番号Iを、保持中のUE#jに送信するTPの番号から削除する。なお、の保持中のTP番号の削除によって保持するTP番号数が0となった場合、すなわち、UE別パターン評価部[c]に割り当てたUE#jに送信するTPの個数が0となった場合は、UE割当部23はUE別パターン評価部[c]に対してUE#j(j=割当UE番号[c])の割り当てを解除する。
次に、UE#jが割り当てられたUE別パターン評価部[c]は、パターン生成部11が生成したリソース割り当てパターン毎に、上記取得したUE#jに送信する各TPの番号と、保持中のUE別評価パラメタ[j]に基づいて、UE#jに送信する各TPからの受信電力値の合計である信号電力値を計算する。すなわち、UE別評価パラメタ[j]は、UE#jへの有意な送信が可能なTPの番号のリストと、TPからの送信をUE#jが受信するときの受信電力値を含み、信号電力値を、UE#jへの有意な送信が可能なTPのリストに含まれ、かつ、UE#jに送信するTPに含まれる、各TPからの受信電力値を合計することによって、取得する。
さらに、UE#jが割り当てられたUE別パターン評価部[c]は、パターン生成部11が生成したリソース割り当てパターン毎に、上記取得したUE#jに送信する各TPの番号と、送信状態生成部21から入力される各送信フラグ[i](i=1…Ntp)と、保持中のUE別評価パラメタ[j]に基づいて、UE#j以外に送信する各TPからの受信電力値の合計である干渉電力値を計算する。すなわち、信号電力値を、UE#jへの有意な送信が可能なTPのリストに含まれ、かつ、UE#jに送信するTPに含まれず、かつ、そのTPの送信フラグが送信中であることを示す、各TPからの受信電力値を合計することによって、取得する。
次に、UE#jが割り当てられたUE別パターン評価部[c]は、上記信号電力値と、上記干渉電力値に所定の(予め外部より設定しておいた)雑音電力値の加算である干渉雑音電力値と、の比率をSINRとして計算する。さらに、SINRからスループットを見積もり、さらに、スループットからUE別評価値を求める(例えば過去の平均レートに対するスループットの比率をUE別評価値とする)。UE別評価値をUE別評価値合計部25に向けて出力する。UE#j宛に送信する複数個のTPからの受信電力値の合計を信号電力値としてSINRを計算することが可能であり、1個のUEに対して複数のTPからの同時送信を行うことでスループットを改善するJoint Transmissionを取り入れたスケジューリングを可能としている。
上記のように、本実施の形態にかかるスケジューリング装置10は、全てのUEに対してUE別評価値の計算を行う回路を設けるのではなく、複数個のUE別評価値の計算を行う回路としてUE別パターン評価部24を備えておき、これらを、1個以上のTPについて送信先となっているUE(有効UE)に対してのみに割り当てる。有効UEの個数はTPの個数以下となるので、必要となるUE別評価値の計算を行う回路の個数は、最大TPの個数と同数である。通常は、無線ネットワークシステム内のTPよりも、無線ネットワークシステム内のUEが多い。これは、一般的に1個のTPが同時に複数個のUEと接続できる(例えば各UEに異なる周波数帯を割り当てる周波数多重や、各UEへの送信時間を変える時間多重ができる)ためである。したがって、全UE数分の回路を設ける構成と比較して、本実施の形態の適用によれば最大TP数分の回路で済むため、UE別評価値の計算を行う回路の個数を削減でき、スケジューリング装置10を低コスト化できる。
また、本実施の形態にかかるスケジューリング装置10は、パターン生成部11において、生成されたリソース割り当てパターンは前回生成されたパターンから、1個のTPについてその送信先である1個のUEについてのみ、変更されることが保証される、リソース割り当てパターンの生成を行うので、リソース割り当てパターンを1個生成する毎に、最大1個のUEについて、UE別評価パラメタテーブル22からそのUE別評価パラメタを取得すればよい(送信停止に変更される場合は、そのリソース割り当てパターンに関してUE別評価パラメタテーブル22からのUE別評価パラメタ取得は不要である)。この特性は、異なるワードの同時読み出しができないという制限があるSRAMを用いてUE別評価パラメタテーブル22を実現したときに、制限による悪影響(例えば1個のリソース割り当てパターンに対してUE別評価パラメタテーブル22から複数回のUE別評価パラメタ取得を行うことで取得に要する時間が長くなり単位時間あたりに評価できるリソース割り当てパターンの個数が低下する)を回避する。
また、本実施の形態にかかるスケジューリング装置10は、パターン生成部11が複数個のTPから1個のUEに宛てて送信するJoint Transmissionを行うリソース割り当てパターンを生成する場合に、パターンに対するUE別評価値の計算が可能であるため、Joint Transmissionによって評価値を改善できる場合に、Joint Transmissionの適用有無や、適用時のTPの組み合わせ方などJoint Transmissionを適用する場合の選択肢のなかから、最適にJoint Transmissionを取り入れたリソース割り当てパターンを得ることができる。
本実施の形態とは異なるパターン評価部12として、TP毎に、そのTPが送信するUEの評価値の計算を行う回路としてUE別パターン評価部24を固定的に割り当てておき、これらの回路を用いてUE別評価値の計算を行う構成が可能である。この構成を採用したパターン評価部12であっても、必要となるUE別評価値の計算を行う回路の個数はTPの個数と同数であるので、UE別評価値の計算を行う回路の個数を削減できスケジューリング装置を低コスト化できる。
また、本実施の形態にかかるパターン生成部11を組み合わせることによって、SRAMを用いてUE別評価パラメタテーブル22を実現したときに、異なるワードの同時読み出しができないSRAMの制限による悪影響を回避することができる。しかし、TP毎にそのTPが送信するUEの評価値の計算を行う回路を固定的に割り当てる構成では、複数のTPが1個のUEに送信するリソース割当パターン、すなわち、Joint Transmissionを適用した割り当てに対しては、正しく評価値を計算することができないため、最適にJoint Transmissionを取り入れたリソース割り当てパターンを得ることができない。
すなわち、TP毎にUE別評価値を計算して合計するので、Joint Transmission対象の各TPの合計をSINRの段階で行うべきところを、UE別評価値(スループット相当)の段階で行い、通常はSINRとスループットは比例しないので、計算結果に誤差が生じる。さらに、同じUEに送信する別のTP間では干渉は生じないが、TP毎に独立したSINRの計算を行う場合は、他方のTPの受信電力を干渉電力として扱うため、Joint Transmissionの効果を小さく見積もることになって、計算結果に誤差が生じる。
このように、本実施の形態にかかるスケジューリング装置10によれば、TP毎にUEの評価値の計算を行う回路を固定的に割り当てる構成と比較して、正しくJoint Transmissionの評価値を計算できる、という効果がある。
[UE別評価値合計部]
UE別評価値合計部25は、各UE別パターン評価部[c] (c=1…Nc)が出力したUE別評価値[c]を合計し、これを評価値として最適解保持部13に出力する。UE割当部23が有効なUEを割り当てていないUE別パターン評価部24は値0のUE別評価値を出力するため、UE別評価値合計部25が出力する評価値には影響しない。
なお、パターン評価部12が、差分TP番号と差分UE番号を入力してから評価値を出力するまで、次の差分TP番号と差分UE番号の入力を保留する構成では、差分TP番号と差分UE番号の遅延が、単位時間あたりに評価できるリソース割り当てパターンの個数を制約するので、パターン評価部12内をパイプライン化して、差分TP番号と差分UE番号を入力してからその評価値を出力するまでの時間内に、以降の差分TP番号と差分UE番号の入力を継続できる構成とする。
[最適解保持部]
最適解保持部13は、パターン生成部11が生成した複数個のリソース割り当てパターンのうち、リソース割り当てパターンに基づいてパターン評価部12が算出した評価値が最良となったときのリソース割り当てパターンを最適リソース割り当てパターンとして、外部に出力する。最適解保持部13は、パターン生成部11がリソース割り当てパターンの生成を開始してから、最良の評価値を得たときのリソース割り当てパターンおよびパターンに基づいてパターン評価部12が算出した評価値を、最適解として保持する。
つまり、リソース割り当てパターンを生成する毎に、リソース割り当てパターンに基づいてパターン評価部12が算出した評価値と、最適解保持部13が保持している評価値を比較し、前者の方が良いと判断される場合は、前者のリソース割り当てパターンを最適リソース割り当てパターンとして採用し、後者の方が良いと判断される場合は最適リソース割り当てパターンの更新を行わない。
スケジューリング装置10は、リソース割り当てパターン範囲設定内の全リソース割り当てパターンに対して処理を終えた時点、または、スケジューリング周期時間を経過した時点で、最適解保持部13が保持する最適リソース割り当てパターンを出力する。なお、パターンと併せて、最適解保持部13が保持する評価値を出力することも可能である。
最適解保持部13は、パターン生成部11からリソース割り当てパターンではなく、差分TP番号(直前のリソース割り当てパターンと比較したとき送信先のUEが変更されたTPの番号)と差分UE番号(差分TP番号が示すTPの送信先となったUEの番号、ただしTPが送信停止の場合はUE番号として使用されていない値0)を入力するため、最適解保持部13は、全TPについてTP#i(i=1…Ntp)の送信先であるUE番号を再生リソース割り当てパターンR[i]として保持しておき、入力した差分TP番号Iと差分UE番号Jに基づいて再生リソース割り当てパターンR[I]を差分UE番号Jの値に変更し、差分TP番号Iを除くTP番号i(i=1…Ntp,i≠I)に対応する再生リソース割り当てパターンR[i]については保持を継続することにより、パターン生成部11が生成したリソース割り当てパターンと同じパターンを最適解保持部13内で再生する。なお、パターン生成部11が差分TP番号と差分UE番号を最適解保持部13に向けて出力するのではなく、生成したリソース割り当てパターンT[i](i=1…Ntp)を最適解保持部13に向けて出力する構成も可能である。
また、パターン評価部12がパターン生成部11から差分TP番号と差分UE番号を入力してから、評価値を出力するまでに遅延があるため、パターン評価部12が算出した評価値が最良であると最適解保持部13が判断可能な時点で、最適解保持部13が評価値に対応するリソース割り当てパターンを取得する必要がある。特に、パターン評価部12をパイプライン化する構成では、遅延時間内にパターン評価部12が処理できるリソース割り当てパターンの個数分だけ前にパターン生成部11が生成していたリソース割り当てパターンを取得する必要がある。
このため、最適解保持部13は、パターン生成部11から入力した差分TP番号と差分UE番号の組を、FIFO(First-In First-Out)バッファに蓄積し、パターン評価部12が差分TP番号と差分UE番号を入力してからその評価値を出力までの時間に相当する遅延を、の差分TP番号と差分UE番号に与え、FIFOバッファから取り出した差分TP番号と差分UE番号を用いて再生リソース割り当てパターンを生成する。
これにより、再生リソース割り当てパターンをFIFOバッファに蓄積しておく構成と比較して、FIFOバッファのメモリ量を削減できる。例えば、再生リソース割り当てパターンの1個の保持には、1個のUE番号を表現するために必要なビット数w_ueにTP数を乗じた数、つまりNtp×w_ueの個数のビットを記憶するメモリが必要であるのに対して、差分TP番号と差分UE番号の1組の保持には、1個のTP番号を表現するために必要なビット数w_tpと1個のUE番号を表現するために必要なビット数w_ueの和の個数のビットを記憶するメモリが必要となる。一般的にNtp<Nue(TP数よりUE数が多い)が成り立つため、各番号を表現するために必要なビット数についてもw_tp≦w_ueとなるので、差分TP番号と差分UE番号を保持する構成が、より少ないメモリ量で済む。
[パターン評価部の他の構成例]
なお、上述したパターン評価部12の構成とは異なる構成も可能である。図7は、第1の実施の形態にかかるパターン評価部の他の構成を示すブロック図である。
図2に示したパターン評価部12との構成上の違いは、各UE別パターン評価部[c](c=1…Nc)から、割当解除[c]がUE割当部23に向けて出力される点である。
上述したように、各UE別パターン評価部[c]は、パターン生成部11が生成したリソース割り当てパターン毎にUE別評価値を計算するため、パターンにおけるUE#j(j=割当UE番号[c])に送信するTPの番号を保持する。このため、各UE別パターン評価部[c]は、の保持中のTP番号の個数が0となったことを検知することが可能であり、検知を割当解除[c]によってUE割当部23に通知する(割当解除[c]の値が1のとき割当UE番号[c]に対応するUEに向けて送信するTPが無いことを表す)。
UE別パターン評価部[c]に割り当てたUE#jに送信するTPの個数が0となる条件は、UE割当部23はUE別パターン評価部[c]に対するUE#j(j=割当UE番号[c])の割り当てを解除する条件と等価である。
図8は、図7にかかるUE番号割当処理を示すフローチャートである。図2のパターン評価部12のUE割当部23の動作は、図5〜6のステップ111〜113に示したように、再生リソース割り当てパターンに基づいての割り当て解除の判定を行うのではなく、各割当解除[c]に基づいて判定する(ステップ121〜123)。
[第2の実施の形態]
次に、図9を参照して、本発明の第2の実施の形態にかかるスケジューリング装置10について説明する。図9は、第2の実施の形態にかかるスケジューリング装置の構成を示すブロック図である。
図9に示すように、本実施の形態にかかるスケジューリング装置10は、図1のパターン生成部11、パターン評価部12、および最適解保持部13に加えて、パターン遅延部14、制御部15、およびパターン改良情報バッファ部16が設けられている。
本実施の形態では、パターン生成部11が、生成したリソース割り当てパターンを最良リソース割り当てパターンとして保持した後、制御部15と協働して、次の第1〜第4の処理を実行することにより当該最良リソース割り当てパターンを改良し、得られた最良リソース割り当てパターンを当該リソース割り当てパターンとして選択する場合について説明する。
第1〜第4の処理は、次の通りである。
第1の処理:制御部15が、外部から指定された探索TPリストから順に選択したTPを、探索対象としてパターン生成部11に指定する。
第2の処理:パターン生成部11が、最良リソース割り当てパターンのうち、制御部15から探索対象として指定されたTPの送信状態を順に変更することにより、改良リソース割り当てパターンを順次生成する。
第3の処理:制御部15が、改良リソース割り当てパターンのうち、パターン評価部12で計算された評価値が最良である改良リソース割り当てパターンを選択し、当該改良リソース割り当てパターンに含まれる、探索対象としたTPの送信状態を改良送信状態としてパターン生成部11に指定する。
第4の処理:パターン生成部11が、制御部15から指定された改良送信状態を最良リソース割り当てパターンに反映する。
次に、図9を参照して、第2の実施の形態にかかるスケジューリング装置10の各構成について詳細に説明する。
[パターン生成部]
パターン生成部11は、スケジューリング装置10が制御の対象とする各送信ポイントTP#i(i=1…Ntp;Ntpはシステム内のTP数)の送信状態T[i]であるリソース割り当てパターン{T[1],T[2],…,T[Ntp]}を生成する。なお、送信状態T[i]は、TP#iの送信先となるユーザ機器UEの番号(1…Nue;Nueはスケジューリング装置10が扱うことが可能なUE数の最大値)、もしくは、送信停止を表す値0、である。例えば、{T[1]=0,T[2]=10}のリソース割り当てパターンは、TP#1が送信停止でTP#2はUE#10への送信を表す。
[パターン生成処理]
パターン生成部は、時間の経過に伴って、リソース割り当てパターンを次々と生成する。図10は、第2の実施の形態にかかるパターン生成改良処理を示すフローチャートである。以下に、図10を参照して、パターン生成部11によるリソース割り当てパターン{T[i]; i=1…Ntp}の生成方法を説明する。
まず、パターン生成部11は、各TP#i(i=1…Ntp)に対する現時点での最良の送信状態B[i]を、最良リソース割り当てパターンとして保持する(ステップ200)。初期状態での最良リソース割り当てパターン{B[i];i=1…Ntp}の各値は0(送信停止)である。
次に、パターン生成部11は、制御部15から探索TPの番号である探索対象TP番号Xを取得し(ステップ201)、探索TP#Xを除く各TPの送信状態T[i](i=1…Ntp,i≠X)を、最良リソース割り当てパターンに合致したリソース割り当てパターンを生成する(ステップ202)。
これにより、T[i]=B[i](i=1…Ntp,i≠X)となる。また、探索対象TP#Xの送信状態T[X]については、外部から入力されたリソース割り当てパターン範囲(TP別の送信状態の選択肢)が示す探索対象TP#Xの選択肢の中から、順番に選ばれた1個の送信状態を採用する。
リソース割り当てパターン範囲は、TP毎に送信先として選択可能なUEの番号(値0は送信停止)のリストという形式であり、各TP#i(i=1…Ntp)の設定として、Ns個の選択肢S[i,k](k=1…Ns;Nsは各TPに設定可能な選択肢の最大個数)と、のうち有効な選択肢の個数s[i](1≦s[i]≦Ns)という構成をとる。つまり、探索TP#Xの送信状態T[X]=S[X,k](kは1以上s[X]以下の整数)となる。なお、探索対象TP番号の入力に合わせて、その次の探索対象TP番号の準備を制御部15に促すため、値1(次の探索対象TP番号の要求ありを表す値)の探索対象TP要求信号を、制御部15に向けて出力する。
このように、パターン生成部11は、探索対象TP番号Xの入力以後、探索対象TP#Xを除くTPの送信状態T[i](i=1…Ntp,i≠X)として、最良リソース割り当てパターンの各送信状態B[i]を採用し、探索対象TP#Xの送信状態T[X]として、リソース割り当てパターン範囲の選択肢S[X,k](kは1以上s[X]以下の整数)を採用する。選択肢S[X,k]のkの値を、1…s[X]の順番で変えることによって、探索対象TP#Xに対してs[X]個のリソース割り当てパターンを生成する。これにより、送信状態を変更する探索対象TPを1個に限定したリソース割り当てパターンの生成を行い、探索対象TPの最良の送信状態を探索するTP別探索を行う。
パターン生成部11は、探索対象TP#Xに対するTP別探索において、リソース割り当てパターンを生成する毎に、差分TP番号と差分UE番号をパターン評価部12およびパターン遅延部14に向けて出力する(ステップ202)。ここで、差分TP番号は、探索対象TP番号Xである。また、差分UE番号は、リソース割り当てパターンに含まれる、探索対象TP#Xの送信状態T[X]、つまり、選択肢S[X,k](kは1以上s[X]以下の整数)であり、TP#Xの送信先となるユーザ機器UEの番号(値0は送信停止)を表す。
さらに、パターン生成部11は、探索対象TP#Xに対するTP別探索において、TP別探索の期間を表す信号として、TP別探索期間信号を、上記パターン遅延部14に向けて出力する。すなわち、s[X]個のリソース割り当てパターンを順に生成し各パターンに対応する差分TP番号と差分UE番号をパターン評価部12に向けて出力する間は、出力されるTP別探索期間信号が値1(TP別探索中であることを表す値)となる。TP別探索期間信号は、s[X]個のリソース割り当てパターンを順に生成し各パターンに対応する差分TP番号と差分UE番号を出力した後、値0(TP別探索中でないことを表す値)となる。
[パターン評価部]
パターン評価部12は、第1の実施の形態で説明した構成におけるパターン評価部12と同じであるが、評価値を最適解保持部13に向けて出力するのに加えて、制御部15に対しても出力する点が異なる。
[パターン遅延部]
パターン遅延部14は、パターン生成部11からD出力された差分TP番号、差分UE番号、TP別探索期間信号を入力し、これらを遅延させて、最適解保持部13および制御部15に向けて出力する。遅延量は、パターン評価部12が差分TP番号と差分UE番号を入力してから、入力に基づいて計算した評価値を出力するまでの遅延であり、制御部15は、評価値と同時に、差分TP番号と差分UE番号とTP別探索期間信号を入力することになる。
[制御部]
制御部15は、探索対象TP#XのTP別探索に関して、TP別探索期間信号の値が1(TP別探索中)の期間に、パターン評価部12から入力された複数の評価値(s[X]個の評価値)のうち、値が最大の評価値を検出し、検出した評価値とともにパターン生成部11から入力された差分TP番号と差分UE番号を、それぞれ改良対象TP番号および改良送信状態として取得する。さらに、パターン評価部12からTP別探索期間信号の値が1から0に変化した時点(TP別探索を終えた時点)で、改良対象TP番号と改良送信状態の組を、パターン改良情報バッファ部16に向けて出力する。
なお、パターン生成部11が保持する最良リソース割り当てパターン{B[i]; i=1…Ntp}を参照し、B[改良対象TP番号]が既に改良送信状態に一致しているか否かを判定し、一致の場合は、改良対象TP番号と改良送信状態の組を、パターン改良情報バッファ部16に向けて出力しないことも可能である。また、改良対象TP番号と改良送信状態の組の出力に合わせて、改良送信状態の有効有無を表す改良指示信号(値1のとき改良送信状態の有効を表す信号)を、パターン改良情報バッファ部16に向けて出力する。
[パターン改良情報バッファ部]
パターン改良情報バッファ部16は、上記改良対象TP番号と改良送信状態の組を制御部15から入力したとき、つまり、改良指示信号が値1のとき(改良送信状態が有効のとき)、これらを1組としてFIFOバッファに蓄積する。また、パターン改良情報バッファ部16は、1組以上の改良対象TP番号と改良送信状態の組を蓄積している期間は、値1(蓄積ありを表す値)のバッファ蓄積信号をパターン生成部11に向けて出力する。
次に(あるTPに対するTP別探索を終えた後)、パターン生成部11は、パターン評価部12の内部で保持する評価値を計算するための内部状態(各送信フラグ、各UE別パターン評価部24への割当UE番号、各UE別パターン評価部24が保持するUE別評価パラメタやUE別パターン評価部24に割り当てられたUEに送信するTPの番号)を上記探索対象TP#Xに対するTP別探索の前の状態(最良リソース割り当てパターン{B[i]; i=1…Ntp}に対して評価値を計算したときの状態)に戻すため、差分TP番号=X(探索対象TPの番号)と差分UE番号=B[X](探索対象TPの最良の送信状態)を、パターン評価部12およびパターン遅延部14に向けて出力する(ステップ203)。これにより、パターン評価部12の内部状態は、探索対象TPに対する探索最後の状態から、上記最良リソース割り当てパターンに対して評価値を計算した直後の状態に戻る。
本実施の形態では、今回のTP別探索によって探索対象TPの送信状態を改良する前に別の探索対象TPについてTP別探索を行うが、この探索を、今回のTP別探索最後の状態ではなく、今回のTP別探索直前の最良パターンに戻した状態から行うために、上記のような復帰処理を行う。なお、パターン遅延部14に向けて出力されるTP別探索期間信号は値0(TP別探索を行っていない状態であることを表す値)である。
最適解保持部13は、パターン評価部12から評価値を入力する。また、これと同時に、パターン遅延部14から評価値に対応する差分TP番号と差分UE番号を入力し、実施例1の最適解保持部13と同じく、リソース割り当てパターンを再生する。パターン生成部11がリソース割り当てパターンの生成の開始以後、最大の評価値を得たときのリソース割り当てパターンを、最適リソース割り当てパターンとして保持するとともに、パターンに基づいてパターン評価部12が算出した評価値を、最適評価値として保持する。
つまり、リソース割り当てパターンを生成する毎に、リソース割り当てパターンに基づいてパターン評価部12が算出した評価値と、最適解保持部13が保持している最適評価値を比較し、前者の方が良いと判断される場合は、前者のリソース割り当てパターンを最適リソース割り当てパターンとして採用し、後者の方が良いと判断される場合は最適リソース割り当てパターンの更新を行わない。パターン生成部11がリソース割り当てパターンを生成を停止した時点で、最適解保持部13は、保持する最適リソース割り当てパターンを出力する。なお、パターンと併せて、最適解保持部13が保持する最適評価値を出力することも可能である。
次に(あるTPに対するTP別探索を終えてその送信状態を最良の送信状態へと戻した後)、パターン生成部11は、パターン改良情報バッファ部16にパターン改良情報(改良対象TP番号と改良送信状態の組)の蓄積があるか否かを判定する(ステップ204)。
ここで、蓄積がある場合は(バッファ蓄積信号=1の場合は)(ステップ204:YES)、蓄積がある限り、パターン改良情報(改良対象TP番号と改良送信状態の組)を取り出して(バッファ読出信号=1をパターン改良情報バッファ部16に出力し)(ステップ205)、保持している最良リソース割り当てパターン{B[i]; i=1…Ntp}に含まれる改良対象TP番号が示す改良対象TPの送信状態を、改良送信状態に合致するよう更新する(ステップ206)。
つまり、B[改良対象TP番号]=改良送信状態に更新することで、最良リソース割り当てパターンの改良を行う。処理と併せて、パターン生成部11は、パターン評価部12の内部状態についても改良を施すため、改良対象TP番号を差分TP番号とし、改良送信状態を差分UE番号として、パターン評価部12に向けて出力する。このとき、パターン評価部12に向けて出力されるTP別探索期間信号は値0(TP別探索を行っていない状態であることを表す値)とする。
なお、パターン改良情報バッファ部16に改良対象TP番号と改良送信状態の蓄積がない場合(バッファ蓄積信号の値が0の場合)は(ステップ204:NO)、上記処理を行わず、次の処理(制御部15から次の探索TPの番号である探索対象TP番号Yの入力と探索対象TP#Yに対するTP別探索)を行う。これにより、パターン評価部12の内部状態は、改良後の最良リソース割り当てパターンに対して評価値を計算した直後の状態となる。なお、パターン遅延部14に向けて出力されるTP別探索期間信号は値0(TP別探索を行っていない状態であることを表す値)である。
次に、パターン生成部11は、制御部15から次の探索TPの番号である探索対象TP番号Yを入力し、再び、探索対象TP#Yに対するTP別探索の処理に戻る(ステップ207:NO)。また、探索対象TP番号の入力に合わせて、その次の探索対象TP番号の準備を制御部15に促すため、値1(次の探索対象TP番号の要求ありを表す値)の探索対象TP要求信号を、制御部15に向けて出力する。
このように、パターン生成部11は、制御部15から探索対象TP番号を入力し、TP別探索と最良リソース割り当てパターンの改良を繰り返し、予め定めた探索時間に達した時点で、処理を停止する(ステップ207:YES)。なお、リソース割り当てパターン数や、制御部15から取得した探索TP番号の個数(反復回数)に基づいて、処理を停止してもよい。また、最適解保持部13が保持する最適評価値を監視し、予め定められた時間(あるいは予め定められたリソース割り当てパターン数や繰り返し回数)の間、変化がない(あるいは増加量が予め定められた値以下)と判断した場合、つまり、最適評価値が収束した場合に、処理を停止してもよい。
なお、制御部15は、パターン生成部11に向けて出力する探索対象TP番号を、出力順に配列した制御リストC[l](l=1…L;Lは制御リストに含まれる探索対象TP番号の個数)として保持し、パターン生成部11に向けて、リストの順番に、保持した探索対象TP番号を1個ずつ出力する。制御リストに含まれる全探索対象TP番号を出力した場合は、制御リストの先頭に戻って、先頭の全探索対象TP番号を再び出力する。つまり、探索対象TP番号は、C[1],C[2],…,C[L],C[1],C[2],….となる。
この制御リストC[l](l=1…L)は、外部より設定される。制御リストの設定方法として、複数の探索対象TP番号の順番に基づいて、TP別探索と最良リソース割り当てパターン改良を繰り返す処理を試行し、統計的に早く大きい最適評価値に収束するという基準で最適な、探索対象TP番号の順番を見つけ、これを制御リストに設定する方法がある。これにより、無線ネットワークシステムの特性(例えば各TPの配置や障害物の位置、UEの統計的な位置など)に応じて、より良い結果を得る(早く大きい最適評価値に収束する)ことが可能となる。したがって、大規模な無線ネットワークに対して、最適なリソース割り当てパターンを短時間で見つけ出すことができる効果がある。
また、制御部15が複数の制御リストを備えておき、1つの制御リストに含まれる探索対象TP番号を順番に出力し終えた後は、(疑似)乱数を発生させてランダムに別の制御リストを選択し、リストについて探索対象TP番号を順番に出力する手順が可能である。これにより、固定的な探索対象TPの順番の繰り返しを行うよりも、局所最適解に陥る可能性を低減できる。
[実施の形態の拡張]
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解しうる様々な変更をすることができる。また、各実施形態については、矛盾しない範囲で任意に組み合わせて実施することができる。