(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-01-07
(45)【発行日】2022-01-24
(54)【発明の名称】パケットスケジューラ
(51)【国際特許分類】
H04W 16/28 20090101AFI20220114BHJP
H04W 72/04 20090101ALI20220114BHJP
【FI】
H04W16/28 130
H04W72/04 131
【外国語出願】
(21)【出願番号】P 2020188616
(22)【出願日】2020-11-12
【審査請求日】2021-01-06
(32)【優先日】2019-11-13
(33)【優先権主張国・地域又は機関】FI
(73)【特許権者】
【識別番号】513311642
【氏名又は名称】ノキア ソリューションズ アンド ネットワークス オサケユキチュア
(74)【代理人】
【識別番号】100094569
【氏名又は名称】田中 伸一郎
(74)【代理人】
【識別番号】100103610
【氏名又は名称】▲吉▼田 和彦
(74)【代理人】
【識別番号】100109070
【氏名又は名称】須田 洋之
(74)【代理人】
【識別番号】100067013
【氏名又は名称】大塚 文昭
(74)【代理人】
【識別番号】100086771
【氏名又は名称】西島 孝喜
(74)【代理人】
【識別番号】100109335
【氏名又は名称】上杉 浩
(74)【代理人】
【識別番号】100120525
【氏名又は名称】近藤 直樹
(74)【代理人】
【識別番号】100139712
【氏名又は名称】那須 威夫
(74)【代理人】
【識別番号】100176418
【氏名又は名称】工藤 嘉晃
(72)【発明者】
【氏名】プラサナ クム
(72)【発明者】
【氏名】ジョセフ タリアス
(72)【発明者】
【氏名】ヴァイバヴ シン
【審査官】倉本 敦史
(56)【参考文献】
【文献】特表2012-524481(JP,A)
【文献】欧州特許出願公開第2112771(EP,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04W 4/00-99/00
(57)【特許請求の範囲】
【請求項1】
第1の動作モードにおいて、パケットスケジューラのスロット内でデータを送信する資格がある1又は2以上のユーザ装置の多入力多出力動作を実行して多入力多出力動作出力を生成するステップ
(94、110)と、
第2の動作モードにおいて、前記1又は2以上のユーザ装置の推定される多入力多出力動作出力をルックアップテーブルから取得するステップ
(94、111)と、
前記第1の動作モードで動作すべきであるか、それとも前記第2の動作モードで動作すべきであるかを判定するステップ(
94、108)と、
通信ノードの負荷レベルが閾値を上回るか、それとも下回るかを判定するステップと、
を実行する手段を備えた装置であって、該装置は、前記負荷レベルが前記閾値を下回る時には前記第1のモードで動作するように決定され、前記負荷レベルが前記閾値を上回る時には前記第2のモードで動作するように決定される、
ことを特徴とする装置。
【請求項2】
前記第1の動作モードでは、前記多入力多出力動作が、チャネル指標データを前記動作への入力として使用して実行される、
請求項
1に記載の装置。
【請求項3】
前記チャネル指標データは、チャネル品質インジケータを含む、
請求項
2に記載の装置。
【請求項4】
前記手段は、前記ルックアップテーブルに多入力多出力アルゴリズムの出力を投入するステップを実行するようにさらに構成され、前記多入力多出力アルゴリズムは、統計モデルから推定されるチャネル指標を受け取る、
請求項1から
3のいずれか1項に記載の装置。
【請求項5】
前記ルックアップテーブルは、オフラインで投入される、
請求項
4に記載の装置。
【請求項6】
前記手段は、前記統計モデルを取得するステップを実行するようにさらに構成される、
請求項
4又は5に記載の装置。
【請求項7】
前記統計モデルは、機械学習型モデルである、
請求項
4から6のいずれか1項に記載の装置。
【請求項8】
前記手段は、前記統計モデルの更新において使用されるチャネル指標データを提供するステップを実行するようにさらに構成される、
請求項
4から7のいずれか1項に記載の装置。
【請求項9】
前記多入力多出力動作は、マルチユーザMIMO動作又はマッシブMIMO動作である、
請求項1から
8のいずれか1項に記載の装置。
【請求項10】
前記手段は、前記スロット内で送信用データを送信する資格がある前記1又は2以上のユーザ装置を決定するステップを実行するようにさらに構成される、
請求項1から
9のいずれか1項に記載の装置。
【請求項11】
前記手段は、
少なくとも1つのプロセッサと、
コンピュータプログラムコードを含む少なくとも1つのメモリと、
を備え、前記少なくとも1つのメモリ及び前記コンピュータプログラムは、前記少なくとも1つのプロセッサと協働して前記装置の前記実行を引き起こすように構成される、
請求項1から
10のいずれか1項に記載の装置。
【請求項12】
第1の動作モードにおいて、パケットスケジューラのスロット内でデータを送信する資格がある1又は2以上のユーザ装置の多入力多出力動作を実行して多入力多出力動作出力を生成するステップと、
第2の動作モードにおいて、前記1又は2以上のユーザ装置の推定される多入力多出力動作出力をルックアップテーブルから取得するステップと、
前記第1の動作モードで動作すべきであるか、それとも前記第2の動作モードで動作すべきであるかを判定するステップと、
通信ノードの負荷レベルが閾値を上回るか、それとも下回るかを判定するステップと、
を含み、前記方法は、前記負荷レベルが前記閾値を下回る時には前記第1のモードで動作し、前記負荷レベルが前記閾値を上回る時には前記第2のモードで動作する、
ことを特徴とする方法。
【請求項13】
前記負荷レベルを決定するステップをさらに含む、
請求項12に記載の方法。
【請求項14】
第1の動作モードにおいて、パケットスケジューラのスロット内でデータを送信する資格がある1又は2以上のユーザ装置の多入力多出力動作を実行して多入力多出力動作出力を生成するステップ
(94、110)と、
第2の動作モードにおいて、前記1又は2以上のユーザ装置の推定される多入力多出力動作出力をルックアップテーブルから取得するステップ
(94、111)と、
前記第1の動作モードで動作すべきであるか、それとも前記第2の動作モードで動作すべきであるかを判定するステップ
(94、108)と、
通信ノードの負荷レベルが閾値を上回るか、それとも下回るかを判定するステップと、
を少なくとも装置に実行させる命令を含み、前記装置は、前記負荷レベルが前記閾値を下回る時には前記第1のモードで動作するように決定され、前記負荷レベルが前記閾値を上回る時には前記第2のモードで動作するように決定される、
ことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書はパケットスケジューリングに関する。
【背景技術】
【0002】
モバイル通信システムにおけるパケットスケジューリングは、タイムクリティカルな(スピード重視の)プロセスとなり得る。所望の期間内に必要な処理を実行することは困難な場合がある。この分野では発展が成されてきたが、依然としてこの分野のさらなる発展が必要とされている。
【発明の概要】
【課題を解決するための手段】
【0003】
本明細書の第1の態様では、第1の動作モードにおいて、パケットスケジューラのスロット内でデータを送信する資格がある1又は2以上のユーザ装置の多入力多出力(MIMO)動作を実行して多入力多出力動作出力を生成するステップと、第2の動作モードにおいて、前記1又は2以上のユーザ装置の推定される多入力多出力動作出力をルックアップテーブル(例えば、ML予測型ルックアップテーブル(ML predicted lookup table))から取得するステップと、第1の動作モードで動作すべきであるか、それとも第2の動作モードで動作すべきであるかを判定するステップと、を実行する手段を備えた装置(例えば、パケットスケジューラモジュール)について説明する。この装置は、基地局、gNBなどの通信ノードに設けることができる。MIMO動作は、例えばマルチユーザMIMO動作又はマッシブMIMO動作とすることができる。
【0004】
いくつかの実施形態例では、手段が、通信ノードの負荷レベルが閾値を上回るか、それとも下回るかを判定するステップを実行するようにさらに構成され、装置は、負荷レベルが前記閾値を下回る時には第1のモードで動作するように決定され、負荷レベルが前記閾値を上回る時には第2のモードで動作するように決定される。装置は、通信ノードの負荷レベルを取得(例えば、決定、受信、又は別様に取得)するステップをさらに含むことができる。
【0005】
第1の動作モードでは、チャネル指標データを前記動作への入力として使用して多入力多出力動作(MIMO)を実行することができる。チャネル指標データは、例えばチャネル品質インジケータ、又は他の何らかのチャネル品質の(単複の)インジケータを含むことができる。
【0006】
手段は、前記ルックアップテーブルに多入力多出力(MIMO)アルゴリズムの出力を投入するステップを実行するようにさらに構成することができ、MIMOアルゴリズムは、統計モデルから推定されるチャネル指標を受け取る。ルックアップテーブルには、関連するチャネルの統計モデルに基づいて投入を行うことができる。ルックアップテーブルには、オフラインで(例えば、関連するスロットウィンドウ内でテーブルを更新する必要がないようにプロセスの非重要部分で)投入を行うことができる。
【0007】
いくつかの実施形態例は、例えば統計モデルをダウンロードすることによって(例えば、oRANコントローラのパケットスケジューラスピードアップ(PSS)モジュールから)前記統計モデルを取得するステップをさらに含む。統計モデルは、機械学習型モデルとすることができる。
【0008】
いくつかの実施形態は、前記統計モデルの更新において使用されるチャネル指標データを提供するステップをさらに含む。
【0009】
いくつかの実施形態例は、前記スロット内で送信用データを送信する資格がある1又は2以上のユーザ装置を決定するステップをさらに含む。
【0010】
前記手段は、少なくとも1つのプロセッサと、コンピュータプログラムコードを含む少なくとも1つのメモリとを含むことができ、少なくとも1つのメモリ及びコンピュータプログラムは、少なくとも1つのプロセッサと協働して装置の動作を引き起こすように構成される。
【0011】
本明細書の第2の態様では、通信システムのネットワークノードからチャネル指標データ(例えば、チャネル品質指示(CQI)又は他の何らかのチャネル状態データ)を受け取るステップと、将来的なチャネル指標データを予測する統計モデル(例えば、機械学習型モデル)を構築するステップと、モデルをネットワークノードに提供するステップと、を実行する手段を備えた装置を提供する。将来的なチャネル指標データの予測は、時刻、休暇期間、既存の測定パラメータなどの因子に基づくことができる。モデルは、ネットワークノードに固有のものとすることができる(例えば、他のネットワークノードについては別個のモデルを生成することができる)。
【0012】
統計モデルは、ネットワークノードに定期的に(例えば、1日に1回)提供することができる。或いは、統計モデルは、例えば必要時などの非定期的に提供することもできる。
【0013】
前記手段は、少なくとも1つのプロセッサと、コンピュータプログラムコードを含む少なくとも1つのメモリとを含むことができ、少なくとも1つのメモリ及びコンピュータプログラムは、少なくとも1つのプロセッサと協働して装置の動作を引き起こすように構成される。
【0014】
本明細書の第3の態様では、第1の動作モードにおいて、パケットスケジューラのスロット内でデータを送信する資格がある1又は2以上のユーザ装置の多入力多出力動作を実行して多入力多出力動作出力を生成するステップと、第2の動作モードにおいて、1又は2以上のユーザ装置の推定される多入力多出力動作出力をルックアップテーブル(例えば、ML推測型ルックアップテーブル)から取得するステップと、第1の動作モードで動作すべきであるか、それとも第2の動作モードで動作すべきであるかを判定するステップと、を含む方法について説明する。
【0015】
この方法は、通信ノードの負荷レベルが閾値を上回るか、それとも下回るかを判定するステップを含むことができ、負荷レベルが前記閾値を下回る時には第1のモードで動作し、負荷レベルが前記閾値を上回る時には第2のモードで動作する。この方法は、前記負荷レベルを決定するステップを含むことができる。
【0016】
第1の動作モードでは、チャネル指標データ(例えば、チャネル品質インジケータ)を前記動作への入力として使用して多入力多出力動作を実行することができる。
【0017】
方法は、前記ルックアップテーブルに多入力多出力アルゴリズムの出力を投入するステップをさらに含むことができ、多入力多出力アルゴリズムは、(機械学習型モデルなどの)統計モデルから推定されるチャネル指標を受け取る。ルックアップテーブルには、オフラインで投入を行うことができる。方法は、(例えば、前記モデルをダウンロードすることによって)前記統計モデルを取得するステップをさらに含むことができる。方法は、前記統計モデルの更新において使用されるチャネル指標データを提供するステップをさらに含むことができる。
【0018】
方法は、前記スロット内で送信用データを送信する資格がある1又は2以上のユーザ装置を決定するステップを含むことができる。
【0019】
本明細書の第4の態様では、通信システムのネットワークノードからチャネル指標データ(例えば、チャネル品質指示)を受け取るステップと、将来的なチャネル指標データを予測する統計モデル(例えば、機械学習型モデル)を構築するステップと、モデルをネットワークノードに提供するステップと、を含む方法について説明する。予測は、時刻、休暇期間、既存の測定パラメータなどの因子に基づくことができる。モデルは、前記ネットワークノードに固有のものとすることができる(例えば、他のネットワークノードについては別個のモデルを生成することができる)。モデルは、ネットワークノードに定期的に提供することも、或いは(例えば、何らかの事象に基づいて)ネットワークノードに非定期的に提供することもできる。
【0020】
本明細書の第5の態様では、第3又は第4の態様を参照しながら説明したようないずれかの方法を実行するように構成された装置について説明する。
【0021】
本明細書の第6の態様では、コンピュータ装置によって実行された時に、第3又は第4の態様を参照しながら説明したようないずれかの方法をコンピュータ装置に実行させるコンピュータ可読命令について説明する。
【0022】
本明細書の第7の態様では、第1の動作モードにおいて、パケットスケジューラのスロット内でデータを送信する資格がある1又は2以上のユーザ装置の多入力多出力動作を実行して多入力多出力動作出力を生成するステップと、第2の動作モードにおいて、前記1又は2以上のユーザ装置の推定される多入力多出力動作出力をルックアップテーブルから取得するステップと、第1の動作モードで動作すべきであるか、それとも第2の動作モードで動作すべきであるかを判定するステップと、を少なくとも装置に実行させる命令を含むコンピュータプログラムについて説明する。
【0023】
本明細書の第8の態様では、通信システムのネットワークノードからチャネル指標データを受け取るステップと、将来的なチャネル指標データを予測する統計モデルを構築するステップと、モデルをネットワークノードに提供するステップと、を少なくとも装置に実行させる命令を含むコンピュータプログラムについて説明する。
【0024】
本明細書の第9の態様では、第1の動作モードにおいて、パケットスケジューラのスロット内でデータを送信する資格がある1又は2以上のユーザ装置の多入力多出力動作を実行して多入力多出力動作出力を生成するステップと、第2の動作モードにおいて、前記1又は2以上のユーザ装置の推定される多入力多出力動作出力をルックアップテーブルから取得するステップと、第1の動作モードで動作すべきであるか、それとも第2の動作モードで動作すべきであるかを判定するステップと、を少なくとも実行するためのコンピュータプログラム命令を記憶した(非一時的コンピュータ可読媒体などの)コンピュータ可読媒体について説明する。
【0025】
本明細書の第10の態様では、通信システムのネットワークノードからチャネル指標データを受け取るステップと、将来的なチャネル指標データを予測する統計モデルを構築するステップと、モデルをネットワークノードに提供するステップと、を少なくとも実行するためのコンピュータプログラム命令を記憶した(非一時的コンピュータ可読媒体などの)コンピュータ可読媒体について説明する。
【0026】
本明細書の第11の態様では、少なくとも1つのプロセッサと、コンピュータプログラムコードを含む少なくとも1つのメモリとを備え、コンピュータプログラムコードが、少なくとも1つのプロセッサによって実行された時に、第1の動作モードにおいて、パケットスケジューラのスロット内でデータを送信する資格がある1又は2以上のユーザ装置の多入力多出力動作を実行して多入力多出力動作出力を生成するステップと、第2の動作モードにおいて、前記1又は2以上のユーザ装置の推定される多入力多出力動作出力をルックアップテーブルから取得するステップと、第1の動作モードで動作すべきであるか、それとも第2の動作モードで動作すべきであるかを判定するステップと、を装置に実行させる装置について説明する。
【0027】
本明細書の第12の態様では、少なくとも1つのプロセッサと、コンピュータプログラムコードを含む少なくとも1つのメモリとを備え、コンピュータプログラムコードが、少なくとも1つのプロセッサによって実行された時に、通信システムのネットワークノードからチャネル指標データを受け取るステップと、将来的なチャネル指標データを予測する統計モデルを構築するステップと、モデルをネットワークノードに提供するステップと、を装置に実行させる装置について説明する。
【0028】
本明細書の第13の態様では、第1の動作モードにおいて、パケットスケジューラのスロット内でデータを送信する資格がある1又は2以上のユーザ装置の多入力多出力(MIMO)動作を実行して多入力多出力動作出力を生成する第1のモジュール(パケットスケジューラモジュール)と、第2の動作モードにおいて、前記1又は2以上のユーザ装置の推定される多入力多出力動作出力をルックアップテーブル(例えば、ML予測型ルックアップテーブル)から取得する第2のモジュール(MIMO推定器)と、第1の動作モードで動作すべきであるか、それとも第2の動作モードで動作すべきであるかを判定する(第2のモジュールが実装できる)第3のモジュールと、を備えた装置(パケットスケジューラモジュール)について説明する。この装置は、基地局、gNBなどの通信ノードに設けることができる。MIMO動作は、例えばマルチユーザMIMO動作又はマッシブMIMO動作とすることができる。
【0029】
本明細書の第14の態様では、通信システムのネットワークノードからチャネル指標データ(例えば、チャネル品質指示(CQI)又は他の何らかのチャネル状態データ)を受け取る入力部と、将来的なチャネル指標データを予測する統計モデル(例えば、機械学習型モデル)を構築するプロセッサと、モデルをネットワークノードに提供する出力部と、を備えた装置(例えば、モデルビルダモジュール)について説明する。将来的なチャネル指標データの予測は、時刻、休暇期間、既存の測定パラメータなどの因子に基づくことができる。モデルは、ネットワークノードに固有のものとすることができる(例えば、他のネットワークノードについては別個のモデルを生成することができる)。
【0030】
以下、概略図面を参照しながら非限定的な例として実施形態例を説明する。
【図面の簡単な説明】
【0031】
【
図1】ある実施形態例による複数の通信スロットを示すブロック図である。
【
図2】いくつかの実施形態例によるシステムのブロック図である。
【
図3】いくつかの実施形態例によるシステムのブロック図である。
【
図4】ある実施形態例によるアルゴリズムを示すフローチャートである。
【
図5】ある実施形態例によるシステムのブロック図である。
【
図6】ある実施形態例によるアルゴリズムを示すフローチャートである。
【
図7】ある実施形態例によるシステムのブロック図である。
【
図8】いくつかの実施形態例によるアルゴリズムを示すフローチャートである。
【
図9】いくつかの実施形態例によるアルゴリズムを示すフローチャートである。
【
図10】いくつかの実施形態例によるアルゴリズムを示すフローチャートである。
【
図11】ある実施形態例によるニューラルネットワークを示す図である。
【
図12】ある実施形態例によるシステムのコンポーネントのブロック図である。
【
図13A】コンピュータによって実行された時に実施形態例による動作を実行するコンピュータ可読コードを記憶した取り外し可能な不揮発性記憶装置としての有形媒体を示す図である。
【
図13B】コンピュータによって実行された時に実施形態例による動作を実行するコンピュータ可読コードを記憶したコンパクトディスク(CD)としての有形媒体を示す図である。
【発明を実施するための形態】
【0032】
本発明の様々な実施形態例に求められる保護範囲については独立請求項に記載する。独立請求項の範囲に該当しない実施形態例及び特徴が本明細書に記載されていれば、これらは本発明の様々な実施形態例を理解するのに役立つ例であると解釈されたい。
【0033】
説明及び図面では、全体を通じて同様の要素を同様の参照符号によって示す。
【0034】
図1は、ある実施形態例による複数の通信スロット(具体的には、スロットN-1、N、N+1及びN+2)を一般に参照符号10によって示すブロック図である。
【0035】
例えば、各スロットは、(例えば、5G新無線(NR)標準に従う)MACパケットスケジューラなどのパケットスケジューラの出力とすることができる。スロット10のタイミングは、スロット10内で送信するデータを生成するパケットスケジューラ(例えば、MACパケットスケジューラ)が送信用データをスケジュールするための厳密な時間ウィンドウを有することができるように予め定めておくことができる。
【0036】
スロット10内で通信されるデータを生成するために行われるデータ処理は、多くの形を取ることができる。いくつかの実施形態では、スロット継続時間内で必要な処理を完了することが困難な場合がある。この原因は、以下の一部又は全部をサポートする必要性にある。
・概ね100MHzの帯域幅
・マッシブMIMO、マルチユーザMIMO(MU-MIMO)などの多入力多出力(MIMO)アルゴリズム
・スロット継続時間が非常に短いmmW(例えば、125μs)
・超高信頼低遅延(Ultra-Reliable Low-Latency:URLIC)要件
・基地局当たり数百人ものユーザをサポートする必要性
・コスト削減の必要性
【0037】
図2は、ある実施形態例によるシステムを一般に参照符号20によって示すブロック図である。システム20は、上述したデータスロット10内で通信されるデータを生成できるパケットスケジューラの例である。
【0038】
システム20は、プレスケジューラ22、時間領域(TD)スケジューラ24、MIMOプロセッサ26、及び周波数領域(FD)プロセッサ28を含む。
【0039】
プレスケジューラ22は、第1の候補集合リスト(candidate set list)(CS-1)を準備する。CS-1リストは、送信すべきデータを有していて来たる送信時間間隔(TTI)内にスケジューリングを行う資格があるユーザ装置(UE)のリストである。従って、有資格UEの少なくとも一部は、上述したスロット10のうちの1つ又は2つ以上においてデータを送信することができる。
【0040】
時間領域(TD)スケジューラ24及びMIMOプロセッサ26は、CS-1リストを処理して、このリストの第2の候補リスト(CS-2)を形成するサブセットを生成する。時間領域(TD)スケジューラ24による処理は、UE優先度、緊急度、サービス品質指標及びスループットなどの因子を含むことができる。MIMOプロセッサ26による処理は、例えばビーム指標計算、重心ビーム(centroid beams)の発見、サブセルの形成、時間領域割り当ての実行などの機能を実行することを含む。MIMOプロセッサ26は、マルチユーザMIMO(MU-MIMO)アルゴリズム(及び「複合重心ビーム選択(complex centroid beam selection)を伴うボロノイ(Voronoi)アルゴリズム」を含むその多くの変形例)などの多くの異なるMIMOアルゴリズムのうちの1つを実装することができる。
【0041】
周波数領域(FD)プロセッサ28は、CS-2リスト内のUEに、送信スロット内でデータを通信できるように物理リソースブロックを割り当てる。
【0042】
上述したように、システム20などのパケットスケジューラは、スロット10のうちの1つなどの来たる送信時間間隔(TTI)内で送信するデータを時間内に処理することが困難な場合がある。例えば、MIMO処理に時間が掛かることにより、(ミリメートル波送信では125μ、センチメートル波送信では500μなどの)許容された期間又はスロット継続時間内にMIMOプロセッサ26が所望の処理を完了することが困難になる場合がある。
【0043】
多くの高度MIMOアルゴリズムが開発されてきた。これらのアルゴリズムの多くは優れたパフォーマンス(例えば、高スペクトル効率)を提供するが、計算集約的である(従って、データの処理に時間が掛かる)。これらのアルゴリズムの少なくとも一部のCPUサイクル要件は、関連するスロットのタイミングバジェットを超過することなくパケットスケジューラのタイムクリティカルな経路内でこれらのアルゴリズムを実行することを困難にする。
【0044】
図3は、ある実施形態例によるシステムを一般に参照符号30によって示すブロック図である。
【0045】
システム30は、パケットスケジューラスピードアップ(PSS)モジュール34を有する無線コントローラ32を含む。無線コントローラ32は、ポリシー/オーケストレーションエンジン(policy/orchestration engine)36と双方向通信するとともに、基地局(例えば、gNB/RAN)などの通信ノード38とも双方向通信する。
【0046】
PSSモジュール34は、ポリシー/オーケストレーションエンジン36から(ポリシーアプリケーションプログラムインターフェイス(API)を介して)パケットスケジューラスピードアップ(PSS)モジュール34を適用すべきセルの指示、及び(例えば、サービスレベル合意及び/又はRANの状態又は特性に基づいて)PSSモジュール34をいつ有効/無効にすべきであるかに関するオペレータが定めた(単複の)基準などのポリシーを受け取る。PSSモジュール34は、通信ノード38から(別のAPIを介して)一連のデータも受け取る。
【0047】
PSSモジュール34は、通信ノード38から受け取ったデータに基づいて、パケットスケジューリングにおいて使用できるモデル(例えば、「UEチャネル時系列」)を構築する。以下で詳細に説明するように、とりわけこのモデルは、MIMOアルゴリズムを実行するために使用できるUE毎の入力パラメータ(per UE input parameters)の推定を可能にする。これらの推定は、潜在的なMIMOアルゴリズム出力が(重要な時間経路外で)予め生成されることを可能にする。タイムクリティカルなパケットスケジューリング動作中に、計算集約的で時間の掛かるMIMO処理をその時点で実行する必要なく、適切なMIMOアルゴリズム出力をフェッチすることができる。
【0048】
以下、通信ノード38からPSSモジュール34に提供できるデータの例を示す(当然ながら、これらのデータは一例として示すものであり、これらのデータの一部に加えて、又はその代わりに他のデータを提供することもできる)。
・UEチャネル品質インジケータ
・パケットスケジューラによるCPUサイクル消費
・重要業績評価指標(KPI)(例えば、接続ユーザの数、アクティブユーザの数、ベアラの数、ダウンリンク又はアップリンクPRB利用率、PDCCH利用率、PUCCH利用率、複合利用可能容量(composite available capacity)、ノードにおける総配信又は受信データなど)
・PSSモジュール34によって生成されたモデルの性能指標
【0049】
図4は、ある実施形態例によるアルゴリズムを一般に参照符号40によって示すフローチャートである。
【0050】
アルゴリズム40は動作42から開始し、(例えば、PSSスケジューラ34において)通信システムのネットワークノード(例えば、通信ノード38)からチャネル指標データ(例えば、チャネル品質指示(CQI)又は他の何らかのチャネル状態データ)を受け取る。
【0051】
動作44において、(例えば、PSSモジュール34において)将来的なチャネル指標データ(例えば、UE毎のチャネル指標データ/チャネルパラメータ)を予測するために使用できる統計モデルを構築する。例えば、これらの予測は、時刻、休暇期間、既存の/現在の測定パラメータなどの因子に基づくことができる。動作44の実施段階で生成されるモデルは、特定のネットワークノードに固有のものとすることができる(例えば、他のネットワークノードについては異なるモデルを生成ことができる)。
【0052】
1つの実施形態例では、(動作42において)TTI又はスロットチャネル状態(例えば、各UEのCQI)毎に収集を行うことによって(動作44において)モデルが形成される。(一例として)以下のUE属性を使用することができる。
・シャドウフェージングの主要因であるCQIの平均変化率
・高速フェージングの主要因であるユーザのCQIのレベル交差率(Level crossing rate:LCR)
【0053】
動作46において、動作44において生成されたモデルをネットワークノード(例えば、通信ノード38)に提供する。モデルは、(例えば、ノード38が)E2標準インターフェイスを介してダウンロードすることができる。モデルは定期的にダウンロードすることができるが、これは全ての実施形態に必須ではない。例えば、モデルは、特定のトリガ(例えば、性能トリガ(performance triggers))時にダウンロードすることもできる。1つの実施形態例では、モデルが1日に1回(例えば、通常はトラフィック量が少ない夜間に)ダウンロードされる。さらに、モデルをダウンロードする時点は、例えば性能に基づいて時間経過と共に微調整できる変数とすることもできる。
【0054】
図5は、ある実施形態例によるシステムを一般に参照符号50によって示すブロック図である。システム50は、(上述したPSSモジュール34の一部を形成することができる)モデルビルダを含む。モデルビルダ54は、チャネル指標データ(例えば、チャネル品質指示(CQI)又は他の何らかのチャネル状態データ)を受け取り、(例えば、次のいくつかのタイムスロットの)将来的なチャネル指標データを予測する統計モデルを構築し、このモデルをネットワークノードに提供する。この統計モデルは、機械学習型モデルとすることができる。
【0055】
システム50は、モデルビルダ54による前記統計モデルの更新において使用されるチャネル指標データ(例えば、UE毎のチャネル品質インジケータ)を提供するモジュール52を含む。例えば、この指標データは、上述したモジュール34などのPSSモジュールに提供することができる。
【0056】
図6は、ある実施形態例によるアルゴリズムを一般に参照符号60によって示すフローチャートである。アルゴリズム60は、上述したノード38などの複数の通信ノード(例えば、基地局又はgNB)のうちの1つにおいて実行することができる。
【0057】
動作62において、統計モデルを受け取る。このモデルは、上述したPSSモジュール34又はモデルビルダ54が構築することができる。このモデルは、例えばE2標準インターフェイスを介してgNBにダウンロードすることができる。上述したように、動作62は、定期的に(例えば、1日に1回)又はトリガに応答して実行することができ、従ってアルゴリズム60が実行される度に実行しなくてもよい。(従って、アルゴリズム60ではこの動作を点線の形で示す。)
【0058】
動作64において、統計モデルを使用して関連するチャネルのチャネル指標を推測する。例えば、次のいくつかのタイムスロットについて、チャネル品質指示(CQI)又はチャネルの他の何らかの(単複の)インジケータなどのチャネル推定値を推定することができる。
【0059】
動作66において、推定されたチャネル指標をアルゴリズムへの入力として使用してMIMOアルゴリズムを実行する。動作66は、パケットスケジューラ(例えば、上述したパケットスケジューラ20)のタイムクリティカルな経路外に実装して、例えば異なるプロセッサコア上で実行することができる。
【0060】
動作68において、MIMOアルゴリズムの出力に基づいて(すなわち、動作66において生成された出力に基づいて)ルックアップテーブル(LUT)に投入を行う。動作68において投入されたルックアップテーブルは、関連するノードのMIMOスロット番号を(動作64において推定されたチャネル指標データに基づく)MIMOアルゴリズム出力に一致させる。従って、実際のMIMOアルゴリズムは、動作62において取得された統計モデルを使用して推定されたチャネル指標データに基づいて使用することができる。
【0061】
このように、ルックアップテーブルへの投入は、例えばプロセスの非重要部分などにおいてオフラインで行うことができる。従って、上述したスロットウィンドウのうちの1つの範囲内でルックアップテーブルを更新する必要はない。
【0062】
図7は、ある実施形態例によるシステムを一般に参照符号70によって示すブロック図である。
【0063】
システム70は、(上述したプレスケジューラ22と同様の)プレスケジューラ72、(上述した時間領域(TD)スケジューラ24と同様の)時間領域(TD)スケジューラ74、(上述したMIMOプロセッサ26と同様の)MIMOプロセッサ76、及び(上述した周波数領域(FD)プロセッサ28と同様の)周波数領域(FD)プロセッサ79を含む。システム70は、MIMO推定器77及びルックアップテーブル(LUT)78をさらに含む。
【0064】
図8は、ある実施形態例によるアルゴリズムを一般に参照符号80によって示すフローチャートである。アルゴリズム80は、システム70を使用して実装することができる。
【0065】
アルゴリズム80は動作82から開始して、プレスケジューラ72が、送信すべきデータを有していて来たる送信時間間隔(TTI)(例えば、スロット)内にスケジューリングを行う資格があるユーザ装置(UE)の第1の候補集合リスト(CS-1)を準備する。
【0066】
動作84において、時間領域(TD)スケジューラ74がCS-1リストを処理する。動作84の処理は、UE優先度、緊急度、サービス品質指標及びスループットなどの因子を含むことができる。
【0067】
動作86において、MIMO処理を実行してMIMOアルゴリズム出力値を生成する。動作86は、以下で詳細に説明するようなMIMOプロセッサ76又はMIMO推定器77が実行することができる。従って、動作84及び86は、CS-1リストを処理して、このリストの第2の候補リスト(CS-2)を形成するサブセットを生成する。動作88において、周波数領域(FD)プロセッサ79が、CS-2リスト内のUEに、送信スロットを使用してデータを通信できるように物理リソースブロックを割り当てる。この処理は、動作86において生成されたMIMOアルゴリズム出力値及びその他の側面又は検討事項に基づいてFDプロセッサ79によって実行される。
【0068】
上述したように、システム20などのパケットスケジューラは、来たる送信時間間隔(TTI)又はスロット内で送信するデータを時間内に処理することが困難な場合がある。例えば、MIMO処理に時間が掛かることにより、許容された期間(又はスロット継続時間)内にMIMOプロセッサ26が所望の処理を完了することが困難になる場合がある。
【0069】
図9は、ある実施形態例によるアルゴリズムを一般に参照符号90によって示すフローチャートである。アルゴリズム90は、上述したアルゴリズム80の動作86の実装例である。
【0070】
アルゴリズム90は動作92から開始して、動作モードを決定する。アルゴリズム90は、2つの動作モードを有する。第1の動作モードは、アルゴリズムが動作94に進む軽負荷シナリオ(lightly-loaded scenario)に対応することができる。第2の動作モードは、アルゴリズムが動作96に進む重負荷シナリオ(heavily-loaded scenario)に対応することができる。
【0071】
動作94(すなわち、第1の動作モード)では、(例えば、MIMOプロセッサ76が)多入力多出力動作を実行して、パケットスケジューラのスロット内でデータを送信する資格がある1又は2以上のユーザ装置の多入力多出力動作出力を生成する。動作96(すなわち、第2の動作モード)では、(例えば、MIMO推定器77が)パケットスケジューラのスロット内でデータを送信する資格がある1又は2以上のユーザ装置の推定される多入力多出力動作出力を取得する。推定されるMIMO動作出力は、ルックアップテーブル78から取得される。その後、動作94において生成されたMIMO動作、又は動作96において生成された推定されるMIMO動作出力のいずれかに基づいて、アルゴリズム80の動作88を実行することができる。
【0072】
従って、(軽負荷シナリオなどの)第1の動作モードでは、パケットスケジューラのタイムクリティカルな経路内でMIMOアルゴリズムを実行することができる。従って、第1のモードでの動作は、関連するスロットのタイミングバジェットを超過することなく(MIMO動作を含む)パケットスケジューラ処理のタイムクリティカルな部分を実行することが可能とみなされる場合にのみ実行することができる。
【0073】
図10は、ある実施形態例によるアルゴリズムを一般に参照符号100によって示すフローチャートである。アルゴリズム100は、例えばgNBなどの基地局のパケットスケジューラにおいて実行することができる。
【0074】
アルゴリズム100は動作102から開始して、モデル(例えば、上記で詳述した統計モデル)をダウンロードする。このモデルは、アルゴリズム100の実施段階毎にダウンロードしなくてもよく、従って
図10には動作102を点線フォーマットで示す。このモデルは、機械学習型モデルとすることができる。
【0075】
動作104において、事前スケジューリング動作を実行する。例えば、システム70のプレスケジューラ72を使用して、送信すべきデータを有していて来たる送信時間間隔(TTI)(例えば、スロット)内にスケジューリングを行う資格があるユーザ装置(UE)の第1の候補集合リスト(CS-1)を準備することができる。動作104は、例えば送信用データを特定のスロットで送信する資格がある1又は2以上のユーザ装置を決定することができる。
【0076】
動作106において、時間領域(TD)処理を実行する。TD処理は、CS-1リストに対して実行され、UE優先度、緊急度、サービス品質指標及びスループットなどの因子を含むことができる。
【0077】
動作108において、関連する通信セルが軽負荷であるかどうかに関する判定を行う。従って、動作108は、第1の動作モード(軽負荷)で動作すべきであるか、それとも第2の動作モード(重負荷)で動作すべきであるかを判定する。セルが軽負荷であるとみなされた場合、アルゴリズム100は動作110に進み、そうでなければアルゴリズム100は動作111に進む。
【0078】
動作108は、関連する通信ノードの負荷レベルが閾値を上回るか、それとも下回るかを判定することによって実行することができ、装置は、負荷レベルが前記閾値を下回る時には第1のモードで動作するように決定され、負荷レベルが前記閾値を上回る時には第2のモードで動作するように決定される。
【0079】
動作110(例えば、第1の動作モード)において、パケットスケジューラのスロット内でデータを送信する資格がある1又は2以上のユーザ装置のMIMO動作を実行して多入力多出力動作出力を生成する。MIMO動作は、チャネル指標データを前記動作への入力として使用して実行することができる。チャネル指標データは、チャネル品質インジケータ又は他の何らかのチャネル品質の(単複の)インジケータを含むことができる。このような品質インジケータは、(MIMOアルゴリズムがチャネル品質インジケータを使用してMIMOアルゴリズム出力を決定するように)多くのMIMOアルゴリズムへの主要入力である。動作110が完了すると、アルゴリズム100は動作112に進む。
【0080】
動作111(例えば、第2の動作モード)において、推定される多入力多出力動作出力を(LUT78などの)ルックアップテーブルから取得する。動作111が完了すると、アルゴリズム100は動作112に進む。
【0081】
動作112において、周波数領域(FD)処理を実行する。例えば、FDプロセッサ79を使用して、CS-2リスト(上述したようなTD処理及びMIMO処理の出力であるCS-1リストのサブセット)内のUEに、送信スロットを使用してデータを通信できるように物理リソースブロックを割り当てることができる。
【0082】
周波数領域処理が完了すると、(動作114において)関連する送信用パケットデータを送信する。同時に、アルゴリズムは動作104に戻って、次のスロットのスケジューラ処理を開始する。
【0083】
上述した(動作44において構築される統計モデルなどの)将来的なチャネル指標データを予測するモデルは、機械学習型モデルとすることができる。
図11に、ある実施形態例による、このような機械学習型モデルを実装するために使用できるニューラルネットワークを一般に参照符号200によって示す。ニューラルネットワーク200は、入力層201、隠れ層202(又は複数の隠れ層202)、及び出力層203を含む。入力層201では、(チャネル品質インジケータなどの)1又は2以上の入力が受け取られる。隠れ層202は、受け取った入力に基づいて処理を実行できる複数の隠れノードを含むことができる。出力層203では、1又は2以上の出力(例えば、推定されるMIMO出力)が決定される。当然ながら、モデル200は一例として示すものにすぎない。当業者には多くの変形例が容易に明らかになるであろう。
【0084】
完全を期すために、
図12は、上述した1又は2以上の実施形態例のコンポーネントのブロック図であり、以下では総称的に処理システム300と呼ぶ。処理システム300は、例えば以下の特許請求の範囲において言及する装置とすることができる。
【0085】
処理システム300は、プロセッサ302と、プロセッサに密に結合され、RAM314及びROM312で構成されたメモリ304と、任意に、ユーザ入力部310及びディスプレイ318とを有することができる。処理システム300は、例えば有線又は無線とすることができるモデムなどの、ネットワーク/装置に接続するための1又は2以上のネットワーク/装置インターフェイス308を含むことができる。インターフェイス308は、ネットワーク側装置ではないデバイス/装置などの他の装置との接続部として動作することもできる。従って、ネットワーク参加を伴わないデバイス/装置間の直接接続が可能である。
【0086】
プロセッサ302は、他のコンポーネントの動作を制御するために、これらのコンポーネントの各々に接続される。
【0087】
メモリ304は、ハードディスクドライブ(HDD)又はソリッドステートドライブ(SSD)などの不揮発性メモリを含むことができる。メモリ304のROM312は、数あるものの中でも特にオペレーティングシステム315を記憶するとともに、ソフトウェアアプリケーション316を記憶することもできる。メモリ304のRAM314は、プロセッサ302によって一時的データ記憶のために使用される。オペレーティングシステム315は、プロセッサによって実行された時に上述したアルゴリズム40、60、80、90及び100の態様を実行するコードを含むことができる。なお、小型デバイス/装置の場合、メモリは小規模使用(small size usage)に最も適することができ、すなわち必ずしもハードディスクドライブ(HDD)又はソリッドステートドライブ(SSD)が使用されるとは限らない。
【0088】
プロセッサ302は、あらゆる好適な形態を取ることができる。例えば、プロセッサ302は、マイクロコントローラ、複数のマイクロコントローラ、プロセッサ、又は複数のプロセッサとすることができる。
【0089】
処理システム300は、スタンドアロン型コンピュータ、サーバ、コンソール、又はこれらのネットワークとすることができる。処理システム300及び必要な構造部品は、全てIoTデバイス/装置などのデバイス/装置内に存在することができ、すなわち極小サイズに組み込むことができる。
【0090】
いくつかの実施形態例では、処理システム300を外部ソフトウェアアプリケーションに関連付けることもできる。これらの外部ソフトウェアアプリケーションは、遠隔サーバデバイス/装置に記憶されたアプリケーションとすることができ、部分的に又は排他的に遠隔サーバデバイス/装置上で動作することができる。これらのアプリケーションは、クラウドホスト型アプリケーションと呼ぶことができる。処理システム300は、遠隔サーバデバイス/装置に記憶されたソフトウェアアプリケーションを利用するために、これらのデバイス/装置と通信することができる。
【0091】
図13A及び
図13Bに、コンピュータによって実行された時に上述した実施形態例による方法を実行できるコンピュータ可読コードを記憶した、それぞれ取り外し可能記憶装置365及びコンパクトディスク(CD)368である有形媒体を示す。取り外し可能記憶装置365は、コンピュータ可読コードを記憶した内部メモリ366を有するUSBメモリスティックなどのメモリスティックとすることができる。コンピュータシステムは、コネクタ367を介して内部メモリ366にアクセスすることができる。CD368は、CD-ROM又はDVD又は同様のものとすることができる。他の形態の有形記憶媒体を使用することもできる。有形媒体は、データ/情報を記憶してこれらのデータ/情報をデバイス/装置/ネットワーク間で交換できるあらゆるデバイス/装置とすることができる。
【0092】
本発明の実施形態は、ソフトウェア、ハードウェア、アプリケーションロジック、又はソフトウェアとハードウェアとアプリケーションロジックとの組み合わせで実装することができる。これらのソフトウェア、アプリケーションロジック及び/又はハードウェアは、メモリ又はいずれかのコンピュータ媒体上に存在することができる。ある実施形態例では、これらのアプリケーションロジック、ソフトウェア又は命令セットが、様々な従来のコンピュータ可読媒体のいずれか1つに保持される。本文書の文脈における「メモリ」又は「コンピュータ可読媒体」とは、コンピュータなどの命令実行システム、装置又はデバイスによって、又はこれらに関連して使用される命令を含み、記憶し、通信し、伝搬し、又は伝送することができるあらゆる非一時的媒体又は手段とすることができる。
【0093】
関連する場合、「コンピュータ可読媒体」、「コンピュータプログラム製品」、「有形的に具体化されたコンピュータプログラム」など、或いは「プロセッサ」又は「処理回路」などへの言及は、シングル/マルチプロセッサアーキテクチャ及び直列/並列アーキテクチャなどの異なるアーキテクチャを有するコンピュータのみならず、フィールドプログラマブルゲートアレイFPGA、特定用途向け回路ASIC、シグナルプロセッシングデバイス/装置及びその他のデバイス/装置などの特殊回路も含むと理解されたい。コンピュータプログラム、命令、コードなどへの言及は、固定機能デバイス/装置、ゲートアレイ、プログラマブルロジックデバイス/装置などのプロセッサ又は構成された又は構成設定のための命令としてのハードウェアデバイス/装置のプログラム可能コンテンツなどのプログラマブルプロセッサファームウェア用のソフトウェアを表すものと理解されたい。
【0094】
本明細書で説明した異なる機能は、必要に応じて互いに異なる順序で及び/又は同時に実行することができる。さらに、上述した機能の1つ又は2つ以上は、必要に応じて任意とすることも、又は組み合わせることもできる。同様に、
図4、
図6、
図8、
図9及び
図10のフロー図及びメッセージシーケンスは一例にすぎず、これらの図に示した様々な動作は、省略、並べ替え及び/又組み合わせも可能であると理解されるであろう。
【0095】
上述した実施形態例は例示にすぎず、本発明の範囲を限定するものではないと理解されるであろう。当業者には、本明細書を読んだ時点で他の変形例及び修正例が明らかになるであろう。
【0096】
さらに、本出願の開示は、本明細書で明示的に又は非明示的に開示したあらゆる新規の特徴又は特徴のあらゆる新規の組み合わせ、或いはこれらのあらゆる一般化を含むものであると理解すべきであり、本出願又は本出願から派生するあらゆる出願の審査中に、あらゆるこのような特徴及び/又はこのような特徴の組み合わせを対象とするための新たな請求項を考案することもできる。
【0097】
独立請求項には本発明の様々な態様を記載しているが、本発明のその他の態様は、請求項に明記した組み合わせのみならず、説明した実施形態例及び/又は従属請求項からの機能と独立請求項の機能との組み合わせも含む。
【0098】
また、上記では様々な実施例について説明したが、これらの説明を限定的な意味でとらえるべきではない。むしろ、添付の特許請求の範囲に定める本発明の範囲から逸脱することなく、多くの変形及び修正を行うことができる。
【符号の説明】
【0099】
70 システム
72 プレスケジューラ
74 TDスケジューラ
76 MIMOプロセッサ
77 MIMO推定器
78 LUT
79 FDスケジューラ