JP7188609B2 - システム、方法及び制御装置 - Google Patents

システム、方法及び制御装置 Download PDF

Info

Publication number
JP7188609B2
JP7188609B2 JP2021550735A JP2021550735A JP7188609B2 JP 7188609 B2 JP7188609 B2 JP 7188609B2 JP 2021550735 A JP2021550735 A JP 2021550735A JP 2021550735 A JP2021550735 A JP 2021550735A JP 7188609 B2 JP7188609 B2 JP 7188609B2
Authority
JP
Japan
Prior art keywords
communication network
machine learning
state
learning
controller
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021550735A
Other languages
English (en)
Other versions
JPWO2021064770A5 (ja
JPWO2021064770A1 (ja
Inventor
亜南 沢辺
孝法 岩井
航生 小林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of JPWO2021064770A1 publication Critical patent/JPWO2021064770A1/ja
Publication of JPWO2021064770A5 publication Critical patent/JPWO2021064770A5/ja
Application granted granted Critical
Publication of JP7188609B2 publication Critical patent/JP7188609B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

本開示は、システム、方法及び制御装置に関する。
通信環境が変化するネットワークにおいて、通信環境に適した制御パラメータを自動で設定することは、非常に重要である。当該制御パラメータを自動で設定するための手法として、機械学習(machine learning)が期待されている。当該機械学習の一種として、強化学習(reinforcement learning)が知られている。
例えば、特許文献1には、無線通信ネットワークの制御パラメータを自動で設定するために強化学習を使用する技術が記載されている。
特開2013-026980号公報
例えば、シンプルな手法として、単一の機械学習ベースのコントローラ(machine learning based controller)を用いて、機械学習を行い、通信環境に適した制御パラメータを自動で設定することが考えられる。
しかし、適切な制御パラメータは通信環境によって異なるので、通信環境が変化するネットワーク(例えば、無線ネットワーク)において単一の機械学習ベースのコントローラを使用すると、最適な制御パラメータの発見、及び、制御パラメータの収束に、多大な時間がかかり得る。また、たとえ制御パラメータが収束したとしても、収束後の制御パラメータの精度は低くなり得る。
本開示の目的は、通信ネットワークにおいて通信環境に適した通信制御を行うことをより容易にするシステム、方法及び制御装置を提供することにある。
本開示の一態様に係るシステムは、通信ネットワークの状態に関する状態情報を取得する取得手段と、上記状態情報に基づいて、上記通信ネットワークにおける通信を制御するための複数の機械学習ベースのコントローラのうちの1つを選択する選択手段と、を含む。
本開示の一態様に係る方法は、通信ネットワークの状態に関する状態情報を取得することと、上記状態情報に基づいて、上記通信ネットワークにおける通信を制御するための複数の機械学習ベースのコントローラのうちの1つを選択することと、を含む。
本開示の一態様に係る制御装置は、通信ネットワークの状態に関する状態情報を取得する取得手段と、上記状態情報に基づいて、上記通信ネットワークにおける通信を制御するための複数の機械学習ベースのコントローラのうちの1つを選択する選択手段と、を備える。
本発明によれば、通信ネットワークにおいて通信環境に適した通信制御を行うことがより容易になる。なお、本発明により、当該効果の代わりに、又は当該効果とともに、他の効果が奏されてもよい。
強化学習の概略を説明するための図である。 Qテーブルの一例を説明するための図である。 第1の実施形態に係るシステムの概略的な構成の一例を示す図である。 第1の実施形態に係る制御装置の概略的な機能構成の例を示すブロック図である。 第1の実施形態に係る制御装置の概略的なハードウェア構成の例を示すブロック図である。 第1の実施形態に係る各機械学習ベースのコントローラの学習条件の例を説明するための図である。 第1の実施形態に係るニューラルネットワークの構成の例を説明するための図である。 第1の実施形態に係るコントローラ選択処理の概略的な流れの例を説明するためのフローチャートである。 第1の実施形態に係る通信ネットワークの状態の判定の手法の例を説明するための図である。 第1の実施形態に係る制御装置の動作の一例を説明するための図である。 第1の実施形態の第4の変形例に係る制御装置の動作の第1の例を説明するための図である。 第1の実施形態の第4の変形例に係る制御装置の動作の第2の例を説明するための図である。 第1の実施形態の第4の変形例に係る制御装置の動作の第3の例を説明するための図である。 第2の実施形態に係るシステムの概略的な構成の一例を示す図である。 第2の実施形態に係るコントローラ選択処理の概略的な流れの例を説明するためのフローチャートである。
以下、添付の図面を参照して本発明の実施形態を詳細に説明する。なお、本明細書及び図面において、同様に説明されることが可能な要素については、同一の符号を付することにより重複説明が省略され得る。
説明は、以下の順序で行われる。
1.関連技術
2.第1の実施形態
2.1.システムの構成
2.2.制御装置の構成
2.3.機械学習ベースのコントローラの特徴
2.4.機械学習ベースのコントローラの選択
2.5.変形例
3.第2の実施形態
<<1.関連技術>>
図1及び図2を参照して、本開示の実施形態に関連する技術として、機械学習の一種である強化学習を説明する。
図1は、強化学習の概略を説明するための図である。図1を参照すると、強化学習では、エージェント(agent)81は、環境(environment)83の状態(state)を観測し、観測した状態から行動(action)を選択する。エージェント81は、当該環境の下での当該行動の選択により、環境83から報酬(reward)を得る。このような一連の動作の繰り返しにより、エージェント81は、環境83の状態に応じてどのような行動が最も大きい報酬をもたらすかを学習することができる。即ち、エージェント81は、報酬を最大化するために、環境に応じて選択すべき行動を学習することができる。
強化学習の一例として、Q学習がある。Q学習では、例えば、環境83の各状態について各行動がどの程度の価値があるかを示すQテーブルが用いられる。エージェント81は、Qテーブルを用いて、環境83の状態に応じて行動を選択する。さらに、エージェント81は、当該行動の選択に応じて得られる報酬に基づいて、Qテーブルを更新する。
図2は、Qテーブルの一例を説明するための図である。図2を参照すると、環境83の状態として、状態A(State A)及び状態B(State B)があり、エージェント81の行動として、行動A(Action A)及び行動B(Action B)がある。Qテーブルは、各状態において各行動をとった場合の価値を示す。例えば、状態Aにおいて行動Aをとることの価値はqAAであり、状態Aにおいて行動Bをとることの価値はqABである。状態Bにおいて行動Aをとることの価値はqBAであり、状態Bにおいて行動Bをとることの価値はqBBである。例えば、エージェント81は、各状態において、価値が最も高い行動をとる。一例として、qAAがqABよりも高い場合に、エージェント81は、状態Aにおいて行動Aをとる。なお、Qテーブル内の価値(qAA、qAB、qBA及びqBB)は、行動の選択に応じて得られる報酬に基づいて更新される。
強化学習では、上述したように各状態において価値が最も高い行動をとることは、「利用(exploitation)」と呼ばれる。「利用」のみにより学習が行われると、各状態においてとられる行動は限定されるので、学習結果は、最適解ではなく局所最適解となり得る。そのため、強化学習では、「利用」と「探索(exploration)」とにより学習が行われる。「探索」は、各状態においてランダムに選択された行動をとることを意味する。例えば、Epsilon-Greedy法では、確率εで「探索」が選択され、確率1-εで「利用」が選択される。「探索」により、例えば、ある状態において、価値が不明である行動が選択され、その結果、当該ある状態における当該行動の価値を知ることができる。このような「探索」により、学習結果として最適解を得られる可能性が高くなる。
<<2.第1の実施形態>>
図3~図9を参照して、本開示の第1の実施形態を説明する。
<2.1.システムの構成>
図3は、第1の実施形態に係るシステム1の概略的な構成の一例を示す。図3を参照すると、システム1は、通信ネットワーク10及び制御装置100を含む。
(1)通信ネットワーク10
通信ネットワーク10は、データを転送する。例えば、通信ネットワーク10は、ネットワーク機器(例えば、プロキシサーバ、ゲートウェイ、ルータ及び/又はスイッチ等)と回線とを含み、当該ネットワーク機器の各々が、回線を介してデータを転送する。
通信ネットワーク10は、有線ネットワークであってもよく、又は、無線ネットワークであってもよい。あるいは、通信ネットワーク10は、有線ネットワーク及び無線ネットワークの両方を含んでもよい。無線ネットワークは、例えば、LTE(Long Term Evolution)又は5G(5th Generation)等の通信回線規格を用いた移動体通信ネットワークであってもよいし、無線LAN(Local Area Network)又はローカル5Gのような特定のエリアで用いるネットワークであってよい。有線ネットワークは、例えば、LAN、WAN(Wide Area Network)又はインターネット等であってもよい。
(2)制御装置100
制御装置100は、通信ネットワーク10のための制御を行う。
例えば、制御装置100は、通信ネットワーク10における通信を制御するための複数の機械学習ベースのコントローラを含む。当該複数の機械学習ベースのコントローラは、後に詳細に説明する。
例えば、制御装置100は、通信ネットワーク10内でデータを転送するネットワーク機器(例えば、プロキシサーバ、ゲートウェイ、ルータ及び/又はスイッチ等)である。
なお、制御装置100は、通信ネットワーク10内でデータを転送するネットワーク機器に限定されない。この点については、第1の実施形態の第4の変形例として後に詳細に説明する。
<2.2.制御装置の構成>
(1)機能構成
図4は、第1の実施形態に係る制御装置100の概略的な機能構成の例を示すブロック図である。図4を参照すると、制御装置100は、観測手段110、判定手段120、取得手段130、選択手段140、コントローラ設定手段150、複数の機械学習ベースのコントローラ160(機械学習ベースのコントローラ160A、160B及び160C等)(例えば、N個の機械学習ベースのコントローラ160)、パラメータ設定手段170及び通信処理手段180を備える。
観測手段110、判定手段120、取得手段130、選択手段140、コントローラ設定手段150、機械学習ベースのコントローラ160、パラメータ設定手段170及び通信処理手段180の各々の動作は、後に説明する。
なお、機械学習ベースのコントローラ160は、区別が必要である場合には、例えば図4に示されるように「機械学習ベースのコントローラ160A」、「機械学習ベースのコントローラ160B」又は「機械学習ベースのコントローラ160C」等と表現され得る。一方、機械学習ベースのコントローラ160は、区別が不要である場合には、単に「機械学習ベースのコントローラ160」と表現される。
(2)ハードウェア構成
図5は、第1の実施形態に係る制御装置100の概略的なハードウェア構成の例を示すブロック図である。図5を参照すると、制御装置100は、プロセッサ210、メインメモリ220、ストレージ230、通信インタフェース240及び入出力インタフェース250を備える。プロセッサ210、メインメモリ220、ストレージ230、通信インタフェース240及び入出力インタフェース250は、バス260を介して互いに接続されている。
プロセッサ210は、メインメモリ220から読み出されるプログラムを実行する。一例として、プロセッサ210は、CPU(Central Processing Unit)である。
メインメモリ220は、プログラム及び各種データを記憶する。一例として、メインメモリ220は、RAM(Random Access Memory)である。
ストレージ230は、プログラム及び各種データを記憶する。一例として、ストレージ230は、SSD(Solid State Drive)及び/又はHDD(Hard Disk Drive)を含む。
通信インタフェース240は、他の装置との通信のためのインタフェースである。一例として、通信インタフェース240は、ネットワークアダプタ又はネットワークインタフェースカードである。
入出力インタフェース250は、キーボード等の入力装置、及びディスプレイ等の出力装置との接続のためのインタフェースである。
観測手段110、判定手段120、取得手段130、選択手段140、コントローラ設定手段150、機械学習ベースのコントローラ160、パラメータ設定手段170及び通信処理手段180の各々は、プロセッサ210及びメインメモリ220により実装されてもよく、又は、プロセッサ210、メインメモリ220及び通信インタフェース240により実装されてもよい。
当然ながら、制御装置100のハードウェア構成はこの例に限定されない。制御装置100は、他のハードウェア構成により実装されてもよい。
あるいは、制御装置100は、仮想化されていてもよい。即ち、制御装置100は、仮想マシンとして実装されてもよい。この場合に、制御装置100(仮想マシン)は、プロセッサ及びメモリ等を含む物理マシン(ハードウェア)及びハイパーバイザ上で仮想マシンとして動作してもよい。当然ながら、制御装置100(仮想マシン)は、複数の物理マシンに分散され、動作してもよい。
制御装置100は、プログラム(命令)を記憶するメモリ(メインメモリ220)と、当該プログラム(命令)を実行可能な1つ以上のプロセッサ(プロセッサ210)とを含んでもよい。当該1つ以上のプロセッサは、上記プログラムを実行して、観測手段110、判定手段120、取得手段130、選択手段140、コントローラ設定手段150、機械学習ベースのコントローラ160、パラメータ設定手段170及び/又は通信処理手段180の動作を行ってもよい。上記プログラムは、観測手段110、判定手段120、取得手段130、選択手段140、コントローラ設定手段150、機械学習ベースのコントローラ160、パラメータ設定手段170及び/又は通信処理手段180の動作をプロセッサに実行させるためのプログラムであってもよい。
<2.3.機械学習ベースのコントローラの特徴>
上記複数の機械学習ベースのコントローラ160(例えば、N個の機械学習ベースのコントローラ160)の各々は、通信ネットワーク10における通信を制御するための機械学習ベースのコントローラである。
(1)機械学習ベースのコントローラ160の動作
例えば、上記複数の機械学習ベースのコントローラ160の各々は、強化学習ベースのコントローラである。この場合に、上記複数の機械学習ベースのコントローラ160の各々は、強化学習のエージェントとして動作し、例えば、入力される状態に基づいて行動を出力する。
例えば、通信ネットワーク10が、強化学習の「環境」であり、通信ネットワーク10の状態が、強化学習の「状態」(即ち、強化学習の入力)である。例えば、通信ネットワーク10の制御パラメータの変更(例えば、通信ネットワーク10の制御パラメータの増加若しくは減少、又は、通信ネットワーク10の制御パラメータの特定の値への変更)が、強化学習の「行動」(即ち、強化学習の出力)である。即ち、機械学習ベースのコントローラ160は、観測された通信ネットワーク10の状態から、通信ネットワーク10の制御パラメータの変更を選択する。また、機械学習ベースのコントローラ160は、通信ネットワーク10の制御パラメータの変更(強化学習の「行動」)の選択により、報酬を得る。なお、通信ネットワーク10の状態は、通信ネットワーク10における通信の状態とも言える。
上述したように、例えば、制御装置100は、通信ネットワーク10内でデータを転送するネットワーク機器(例えば、プロキシサーバ、ゲートウェイ、ルータ及び/又はスイッチ等)である。この場合に、例えば、機械学習ベースのコントローラ160は、制御装置100において観測される通信ネットワーク10の状態から、制御装置100の制御パラメータの変更を選択し、出力する。制御装置100(パラメータ設定手段170)は、選択された当該制御パラメータの当該変更に従って、変更された制御パラメータを制御装置100において設定する。その結果、制御装置100(通信処理手段180)は、当該変更された制御パラメータに従って、データ(例えば、パケット)を転送する。このように、機械学習ベースのコントローラ160は、例えば制御パラメータの変更を選択することにより、通信ネットワーク10における通信を制御する。
なお、制御装置100は、通信ネットワーク10内でデータを転送するネットワーク機器に限定されない。この点については、第1の実施形態の第4の変形例として後に詳細に説明する。
上述したような機械学習ベースのコントローラ160の動作によれば、例えば、制御パラメータを自動で設定することが可能になる。
(2)強化学習の「状態」と「行動」の例
上述したように、例えば、通信ネットワーク10の状態が、強化学習の「状態」(即ち、強化学習の入力)であり、通信ネットワーク10の制御パラメータの変更が、強化学習の「行動」(即ち、強化学習の出力)である。ここでは、強化学習の「状態」及び「行動」のさらに具体的な例を説明する。
-第1の例
第1の例として、機械学習ベースのコントローラ160は、通信ネットワーク10におけるTCP(Transmission Control Protocol)フローの制御のために使用される。この場合に、強化学習の「状態」及び「行動」は、例えば以下のようなものである。
[状態]アクティブフロー数、可用帯域、及び/又は、
IP(Internet Protocol)の過去のバッファサイズ
[行動]送信バッファサイズの増加又は減少
-第2の例
第2の例として、機械学習ベースのコントローラ160は、通信ネットワーク10における動画トラフィックの流量の制御のために使用される。この場合に、強化学習の「状態」及び「行動」は、例えば以下のようなものである。
[状態]動画のQoE(Quality of Experience)
(例えば、動画のビットレート、及び/又は、動画の解像度)
[行動]スループットの上限の増加又は減少
-第3の例
第3の例として、機械学習ベースのコントローラ160は、ロボット制御のために使用される。この場合に、強化学習の「状態」及び「行動」は、例えば以下のようなものである。
[状態]パケット到着間隔及び/又はパケットサイズの統計値
(例えば、最大値、最小値、平均値又は標準偏差など)
[行動]パケット送信間隔の増加又は減少
-その他
当然ながら、第1の実施形態に係る強化学習の「状態」及び「行動」は、上述した例に限定されない。
強化学習の「状態」は、上述したように例えば通信ネットワーク10の状態であるが、より具体的には、通信ネットワーク10のいずれかのプロトコルレイヤ(TCP、UDP(User Datagram Protocol)、IP又はMAC(Medium Access Control))での状態であってもよい。
強化学習の「行動」は、例えば通信ネットワーク10の制御パラメータの変更であるが、より具体的には、通信ネットワーク10のいずれかのプロトコルレイヤ(TCP、UDP、IP又はMAC)の制御パラメータの変更であってもよい。
なお、例えば、上記複数の機械学習ベースのコントローラ160は、同一形式の状態を強化学習の入力として有し、同一形式の行動を強化学習の出力として有する。ただし、第1の実施形態はこの例に限定されない。この点については第1の実施形態の第1の変形例として後に詳細に説明する。
(3)機械学習ベースのコントローラ160間の相違点
例えば、上記複数の機械学習ベースのコントローラ160の各々は、上記複数の機械学習ベースのコントローラ160に含まれる1つ以上の他の機械学習ベースのコントローラ160とは異なる学習条件を有する。即ち、上記複数の機械学習ベースのコントローラ160の中で、学習条件に相違がある。
より具体的には、例えば、上記複数の機械学習ベースのコントローラ160の各々は、上記複数の機械学習ベースのコントローラ160に含まれる他の全ての機械学習ベースのコントローラ160と異なる学習条件を有する。換言すると、上記複数の機械学習ベースのコントローラ160の各々は、固有の(unique)学習条件を有する。例えば、上記複数の機械学習ベースのコントローラ160の各々は、通信ネットワーク10の対象状態(例えば、対象の輻輳状態)に適した固有の(unique)学習条件を有する。換言すると、上記複数の機械学習ベースのコントローラ160に含まれる機械学習ベースのコントローラ160は、当該機械学習ベースのコントローラ160に対応する通信ネットワーク10の状態に応じた学習条件を有する。
このように学習条件が異なる機械学習ベースのコントローラ160により、例えば、通信ネットワーク10の様々な状態に適した学習及び制御を行うことが可能になる。
(4)学習条件
例えば、上記学習条件は、強化学習における探索の確率の下限、強化学習におけるパラメータの変更量、及び、強化学習におけるニューラルネットワークの構成のうちの、少なくとも1つを含む。
図6は、第1の実施形態に係る各機械学習ベースのコントローラ160の学習条件の例を説明するための図である。図6を参照すると、N個の機械学習ベースのコントローラ160の各々の学習条件が示されている。当該学習条件は、探索確率下限、パラメータ変更量及びニューラルネット構成を含む。
上記探索確率下限は、強化学習における探索の確率の下限である。上述したように、強化学習では、「利用」と「探索」とにより学習が行われ、例えば、Epsilon-Greedy法では、確率εで「探索」が選択され、確率1-εで「利用」が選択される。このような場合には、上記探索確率下限は、確率εの下限である。一例として、図6のレベル1の機械学習ベースのコントローラ160については、探索確率下限が0.2なので、確率εは0.2以上となる。
上記パラメータ変更量は、強化学習におけるパラメータの変更量である。上述したように、例えば、強化学習の行動は、通信ネットワーク10の制御パラメータの変更であり、上記パラメータ変更量は、強化学習の行動として当該制御パラメータを変更する量である。例えば、上記パラメータ変更量が大きければ、制御パラメータを最適値に大幅に近づけることができ、上記パラメータ変更量が小さければ、制御パラメータを最適値にきめ細かく近づけることができる。
上記ニューラルネット構成は、強化学習におけるニューラルネットワークの構成である。図7は、第1の実施形態に係るニューラルネットワークの構成の例を説明するための図である。図7を参照すると、ニューラルネットワークは、複数の層を含む。例えば、ニューラルネットワークにおける層の数を多くすることにより、入力(即ち、状態)と出力(即ち、行動)との複雑な関係をより適切に表すことができる。例えば、ニューラルネットワークにおける層の数を少なくする(層を浅くする)ことにより、より少ない計算を通じて、入力(即ち、状態)と出力(即ち、行動)との関係を表すことができる。
(5)機械学習ベースのコントローラ160の数
例えば、制御装置100(コントローラ設定手段150)は、通信ネットワーク10における通信を制御するための機械学習ベースのコントローラ160の数(例えばN)を決定する。
-決定の手法
例えば、制御装置100(コントローラ設定手段150)は、通信ネットワーク10の観測の結果(例えば、通信ネットワーク10における輻輳レベルのレンジ)に基づいて、機械学習ベースのコントローラ160の数(例えばN)を決定する。
あるいは、制御装置100(コントローラ設定手段150)は、通信ネットワーク10において制御装置100を使用するために人間により設定された情報(例えば、機械学習ベースのコントローラ160の数を示す情報)に基づいて、機械学習ベースのコントローラ160の数(例えばN)を決定してもよい。
なお、機械学習ベースのコントローラ160の数の決定の手法は、これらの例に限定されない。
-決定のタイミング
例えば、制御装置100(コントローラ設定手段150)は、機械学習ベースのコントローラ160の使用の開始前に、機械学習ベースのコントローラ160の数(例えばN)を予め決定する。
さらに、又は、あるいは、制御装置100(コントローラ設定手段150)は、機械学習ベースのコントローラ160の使用の開始後に、機械学習ベースのコントローラ160の数(例えばN)を決定してもよい。一例として、通信ネットワーク10の構成が変更された場合等に、制御装置100(コントローラ設定手段150)は、機械学習ベースのコントローラ160の数(例えばN)を決定してもよい。別の例として、機械学習ベースのコントローラ160における学習が適切に収束しない場合に、制御装置100(コントローラ設定手段150)は、機械学習ベースのコントローラ160の数(例えばN)を決定してもよい。
-決定後の処理
例えば、多数の機械学習ベースのコントローラ160が予め用意されている。この場合に、例えば、制御装置100(コントローラ設定手段150)は、機械学習ベースのコントローラ160の数(N)の決定後に、上記多数の機械学習ベースのコントローラ160のうちのN個の機械学習ベースのコントローラ160を起動(activate)する。
あるいは、制御装置100(コントローラ設定手段150)は、機械学習ベースのコントローラ160の数(N)の決定後に、N個の機械学習ベースのコントローラ160を生成してもよい。
例えば上述したように、機械学習ベースのコントローラ160の数が決定される。これにより、例えば、通信ネットワーク10に適した数の機械学習ベースのコントローラ160を選択的に使用することが可能になる。その結果、例えば、通信ネットワーク10の通信がより適切に制御され得る。
(6)実装
一例として、上記複数の機械学習ベースのコントローラ160(例えば、N個の機械学習ベースのコントローラ160)は、それぞれ別々のソフトウェアとして実装される。
別の例として、上記複数の機械学習ベースのコントローラ160は、それぞれ共通のソフトウェアと別々のライブラリとにより実装されてもよい。
さらに別の例として、上記複数の機械学習ベースのコントローラ160は、それぞれ別々のハードウェアとして実装されてもよい。
<2.4.機械学習ベースのコントローラの選択>
制御装置100(選択手段140)は、通信ネットワーク10における通信を制御するための複数の機械学習ベースのコントローラ160のうちの1つを選択する。即ち、制御装置100(選択手段140)は、上記複数の機械学習ベースのコントローラ160の中から、通信ネットワーク10における通信の制御に使用する1つの機械学習ベースのコントローラ160を選択する。
図8は、第1の実施形態に係るコントローラ選択処理の概略的な流れの例を説明するためのフローチャートである。以下、図8を参照して、機械学習ベースのコントローラ160の選択のための動作を説明する。
(1)観測(S310)
例えば、制御装置100(観測手段110)は、通信ネットワーク10を観測する(S310)。
より具体的には、例えば、制御装置100(観測手段110)は、通信ネットワーク10におけるスループット、及び/又は、通信ネットワーク10におけるパケットロス率を観測する。例えば、制御装置100は、通信ネットワーク10内でデータを転送するネットワーク機器であり、観測される上記スループットは、制御装置100におけるスループットであり、観測される上記パケットロス率は、制御装置100におけるパケットロス率である。
例えば、制御装置100(観測手段110)は、通信ネットワーク10についての観測情報を生成する。当該観測情報は、通信ネットワーク10の観察の結果を示す。より具体的には、例えば、上記観測情報は、通信ネットワーク10におけるスループット、及び/又は、通信ネットワーク10におけるパケットロス率を示す。
(2)判定(S320)
例えば、制御装置100(判定手段120)は、通信ネットワーク10の状態を判定する(S320)。
-通信ネットワーク10の状態
例えば、判定される上記状態は、通信ネットワーク10の輻輳状態である。即ち、制御装置100(判定手段120)は、通信ネットワーク10の輻輳状態を判定する。
より具体的には、例えば、判定される上記輻輳状態は、通信ネットワーク10の輻輳レベルである。即ち、制御装置100(判定手段120)は、通信ネットワーク10の輻輳レベルを判定する。一例として、輻輳レベルとして、1からNのレベルが予め定義され、制御装置100(判定手段120)は、通信ネットワーク10の輻輳レベルが1からNのどのレベルであるかを判定する。
なお、ここで判定される上記状態(通信ネットワーク10の状態)は、あくまで機械学習ベースのコントローラ160の選択のために判定される状態であり、機械学習ベースのコントローラ160の強化学習の入力である「状態」を意味しない、ということに留意すべきである。
-判定手法
例えば、制御装置100(判定手段120)は、上記観測情報に基づいて、通信ネットワーク10の状態を判定する。
上述したように、例えば、上記観測情報は、通信ネットワーク10におけるスループット、及び/又は、通信ネットワーク10におけるパケットロス率を示す。この場合に、制御装置100(判定手段120)は、通信ネットワーク10におけるスループット、及び/又は、通信ネットワーク10におけるパケットロス率に基づいて、通信ネットワーク10の状態(例えば、輻輳レベル)を判定する。
図9は、第1の実施形態に係る通信ネットワーク10の状態の判定の手法の例を説明するための図である。スループットに基づいて輻輳レベルが判定される場合には、スループットが100Mbpsよりも大きければ、輻輳レベルはレベル1であると判定され、スループットが50Mbpsよりも大きく100Mbps以下であれば、輻輳レベルはレベル2であると判定される。一方、パケットロス率に基づいて輻輳レベルが判定される場合には、パケットロス率が0.001よりも小さければ、輻輳レベルはレベル1であると判定され、パケットロス率が0.001以上であり0.01よりも小さければ、輻輳レベルはレベル2であると判定される。
図9の例において、スループット及びパケットロス率の両方に基づいて輻輳レベルが判定されてもよい。この場合に、一例として、スループットのみに基づいて判定されるレベルと、パケットロス率のみに基づいて判定されるレベルとのうち、より高いレベルが、輻輳レベルとして判定されてもよい。
図9の例では、より高いレベルが、より激しい輻輳を意味している。
なお、通信ネットワーク10の状態を判定する手法はこの例に限定されない。判定手法の他の例は、第1の実施形態の第2の変形例として後に詳細に説明する。
-状態情報
例えば、制御装置100(判定手段120)は、通信ネットワーク10の上記状態(即ち、判定された状態)に関する状態情報を生成する。
例えば、上記状態情報は、通信ネットワーク10の上記状態(即ち、判定された状態)を示す。より具体的には、例えば、上記状態情報は、通信ネットワーク10の上記輻輳レベル(即ち、判定された輻輳レベル)を示す。
なお、上記状態情報はこの例に限定されない。この点については、第1の実施形態の第3の変形例として後に詳細に説明する。
(3)選択(S330)
制御装置100(取得手段130)は、上記状態情報を取得する。制御装置100(選択手段140)は、上記状態情報に基づいて、上記複数の機械学習ベースのコントローラ160のうちの1つを選択する(S330)。即ち、制御装置100(選択手段140)は、上記状態情報に基づいて、上記複数の機械学習ベースのコントローラ160の中から、通信ネットワーク10における通信の制御に使用する1つの機械学習ベースのコントローラ160を選択する。換言すると、制御装置100(選択手段140)は、上記状態情報に基づいて、通信ネットワーク10における通信の制御に使用する機械学習ベースのコントローラ160を切り替える。このような選択により、上記複数の機械学習ベースのコントローラは、通信ネットワーク10における通信の制御のために選択的に使用される。
例えば、上記複数の機械学習ベースのコントローラ160は、それぞれ、通信ネットワーク10の異なる状態(例えば、異なる輻輳レベル)に対応する。この場合に、制御装置100(選択手段140)は、上記状態情報により示される通信ネットワーク10の上記状態(上記輻輳レベル)に対応する機械学習ベースのコントローラ160を選択する。
具体的には、例えば、図6に示されるように、上記複数の機械学習ベースのコントローラ160は、1からNの輻輳レベルにそれぞれ対応するN個の機械学習ベースのコントローラ160である。この場合に、制御装置100(選択手段140)は、上記状態情報により示される上記輻輳レベルに対応する機械学習ベースのコントローラ160を選択する。図6に示されるように、より高い輻輳レベルに対応する機械学習ベースのコントローラ160は、より高い探索確率下限を有し、より多くの層を伴うニューラルネットワーク構成を有する。
以上のように、通信ネットワークの状態(例えば輻輳レベル)ごとに、機械学習ベースのコントローラ160が用意され、選択的に使用される。そのため、各機械学習ベースのコントローラ160は、ターゲットとする状態(例えば輻輳レベル)でのみ使用され、ターゲットとする状態(例えば輻輳レベル)に専用の学習及び制御を行うことができる。よって、通信ネットワークの状態(例えば輻輳レベル)が変化する場合でも、各機械学習ベースのコントローラ160では、多大な時間を要することなく、最適な制御パラメータが発見され、制御パラメータが収束し得る。また、収束後の制御パラメータの精度は高くなり得る。このように、通信ネットワーク10において通信ネットワークの状態(即ち、通信環境)に適した制御を行うことがより容易になる。
なお、選択された機械学習ベースのコントローラ160は、通信ネットワーク10における通信の制御に使用される。具体的には、例えば、選択された機械学習ベースのコントローラ160は、上述したように、例えば、入力される通信ネットワーク10の状態に基づいて制御パラメータの変更を選択し、変更された制御パラメータを制御装置100において設定する。
<2.5.変形例>
第1の実施形態の第1~第5の変形例を説明する。なお、第1~第5の変形例のうちの2つ以上の変形例が組み合せられてもよい。
(1)第1の変形例
上述したように、例えば、上記複数の機械学習ベースのコントローラ160は、同一形式の状態を強化学習の入力として有し、同一形式の行動を強化学習の出力として有する。即ち、上記複数の機械学習ベースのコントローラ160の中で、強化学習の状態及び行動の形式に相違はない。しかし、第1の実施形態はこの例に限定されない。
-入力される状態の相違
第1の実施形態の第1の変形例では、上記複数の機械学習ベースのコントローラ160の各々は、上記複数の機械学習ベースのコントローラ160に含まれる1つ以上の他の機械学習ベースのコントローラ160とは異なる形式の状態を強化学習の入力として有してもよい。即ち、上記複数の機械学習ベースのコントローラ160の中で、強化学習の状態の形式に相違があってもよい。
一例として、上記異なる形式の状態は、異なる量の状態であってもよい。即ち、上記複数の機械学習ベースのコントローラ160の中で、強化学習の状態の量に相違があってもよい。具体的には、例えば、機械学習ベースのコントローラ160Aは、直近の1回の観測により得られた状態(即ち、1つの状態)を強化学習の入力として有してもよく、機械学習ベースのコントローラ160Bは、直近の2回の観測により得られた状態(即ち、同一の種類の2つの状態)を強化学習の入力として有してもよい。
-出力される行動の相違
第1の実施形態の第1の変形例では、上記複数の機械学習ベースのコントローラ160の各々は、上記複数の機械学習ベースのコントローラ160に含まれる1つ以上の他の機械学習ベースのコントローラ160とは異なる形式の行動を強化学習の出力として有してもよい。即ち、上記複数の機械学習ベースのコントローラ160の中で、強化学習の行動の形式に相違があってもよい。
一例として、上記異なる形式の行動は、通信ネットワーク10の異なる制御パラメータの変更であってもよい。即ち、上記複数の機械学習ベースのコントローラ160の中で、行動として変更する制御パラメータに相違があってもよい。具体的には、例えば、機械学習ベースのコントローラ160Aは、送信バッファサイズの変更を強化学習の行動として有してもよく、機械学習ベースのコントローラ160Bは、送信バッファサイズ及びスループットの変更を強化学習の行動として有してもよい。
-機械学習ベースのコントローラ160間の相違点
第1の実施形態の第1の変形例では、上記複数の機械学習ベースのコントローラ160の各々は、学習条件、強化学習の状態の形式、及び、強化学習の行動の形式のいずれかの点で、他の全ての機械学習ベースのコントローラ160の各々と異なっていてもよい。即ち、上記複数の機械学習ベースのコントローラ160の各々は、学習条件、強化学習の状態の形式、及び、強化学習の行動の形式の組合せの観点から、上記複数の機械学習ベースのコントローラ160の中で固有(unique)であってもよい。
(2)第2の変形例
上述したように、機械学習ベースのコントローラ160の選択のために、制御装置100(判定手段120)は、例えば、通信ネットワーク10についての観測情報に基づいて、通信ネットワーク10の状態を判定する。しかし、第1の実施形態に係る判定はこの例に限定されない。
第1の実施形態の第2の変形例では、制御装置100(判定手段120)は、時間帯ごとの通信ネットワーク10の状態を示す情報(以下、「時間帯状態情報」と呼ぶ)に基づいて、通信ネットワーク10の状態を判定してもよい。
一例として、上記時間帯状態情報は、12時から13時の時間帯(通信ネットワーク10が混在する時間帯)の輻輳レベルとして、レベルN(最も激しい輻輳を意味するレベル)を示す。ここでは明示しないが、当然ながら、上記時間帯状態情報は、他の時間帯の輻輳レベルも示す。
例えば、上記時間帯状態情報は、予め定められ、制御装置100に記憶される。上記時間帯状態情報は、手動で予め定められてもよく、統計情報に基づいて自動で予め定められてもよい。
このような判定により、通信ネットワーク10の観測なしで、通信ネットワーク10の状態を判定することが可能になる。
(3)第3の変形例
上述したように、機械学習ベースのコントローラ160の選択のために、通信ネットワーク10の状態に関する状態情報が用いられ、例えば、当該状態情報は、通信ネットワーク10の状態を示す。しかし、第1の実施形態に係る状態情報はこの例に限定されない。
第1の実施形態の第3の変形例では、上記状態情報は、通信ネットワーク10の状態そのものを示さなくてもよい。例えば、上記状態情報は、通信ネットワーク10の状態そのものを示さないが、通信ネットワーク10の状態に対応する情報であってもよい。
一例として、上記状態情報は、通信ネットワーク10の輻輳レベルそのものを示さないが、通信ネットワーク10の輻輳レベルに対応するインデックスであってもよい。
(4)第4の変形例
上述したように、例えば、制御装置100は、通信ネットワーク10内でデータを転送するネットワーク機器(例えば、プロキシサーバ、ゲートウェイ、ルータ及び/又はスイッチ等)である(図10を参照)。また、上述したように、例えば、制御装置100(パラメータ設定手段170)は、機械学習ベースのコントローラ160が制御パラメータの変更を選択した場合に、変更された制御パラメータを制御装置100において設定する(図10を参照)。しかし、第1の実施形態に係る制御装置100はこの例に限定されない。
-第1の例
第1の実施形態の第4の変形例では、第1の例として、図11に示されるように、制御装置100は、通信ネットワーク10内でデータを転送するネットワーク機器そのものではなく、通信ネットワーク10内でデータを転送するネットワーク機器30を制御する装置(例えば、ネットワークコントローラ)であってもよい。
制御装置100(観測手段110)は、通信ネットワーク10を自ら観測せず、ネットワーク機器30が、通信ネットワーク10を観測してもよい。制御装置100(観測手段110)は、通信ネットワーク10についての観測情報をネットワーク機器30から取得してもよい。
図11に示されるように、制御装置100(パラメータ設定手段170)は、機械学習ベースのコントローラ160が制御パラメータの変更を選択した場合に、変更された制御パラメータをネットワーク機器30に設定させてもよい。一例として、制御装置100(パラメータ設定手段170)は、制御パラメータの変更を示すパラメータ情報(例えば、制御パラメータの変更を指示するコマンド)をネットワーク機器30へ送信し、ネットワーク機器30は、当該パラメータ情報に基づいて、変更された制御パラメータを設定してもよい。その結果、ネットワーク機器30は、当該変更された制御パラメータに従って、データ(例えば、パケット)を転送してもよい。
-第2の例
第2の例として、図12に示されるように、ネットワークコントローラ50が、通信ネットワーク10内でデータを転送するネットワーク機器40を制御し、制御装置100は、ネットワークコントローラ50を制御又は支援(assist)する装置であってもよい。
制御装置100(観測手段110)は、通信ネットワーク10を自ら観測せず、ネットワーク機器40が、通信ネットワーク10を観測してもよい。制御装置100(観測手段110)は、通信ネットワーク10についての観測情報をネットワーク機器40又はネットワークコントローラ50から取得してもよい。
図12に示されるように、制御装置100(パラメータ設定手段170)は、機械学習ベースのコントローラ160が制御パラメータの変更を選択した場合に、制御パラメータの変更を示す第1のパラメータ情報(例えば、制御パラメータの変更を指示するコマンド、又は、制御パラメータの変更を教える支援情報)をネットワークコントローラ50へ送信してもよい。さらに、ネットワークコントローラ50は、当該第1のパラメータ情報に基づいて、制御パラメータの変更を示す第2のパラメータ情報(例えば、制御パラメータの変更を指示するコマンド)をネットワーク機器40へ送信し、ネットワーク機器40は、当該第2のパラメータ情報に基づいて、変更された制御パラメータを設定してもよい。その結果、ネットワーク機器40は、当該変更された制御パラメータに従って、データ(例えば、パケット)を転送してもよい。
-第3の例
第3の例として、図13に示されるように、ネットワークコントローラ70が、通信ネットワーク10内でデータを転送するネットワーク機器60を制御し、制御装置100は、ネットワークコントローラ70を制御する装置であってもよい。
制御装置100(観測手段110)は、通信ネットワーク10を自ら観測せず、ネットワーク機器60が、通信ネットワーク10を観測してもよい。制御装置100(観測手段110)は、通信ネットワーク10についての観測情報をネットワーク機器60又はネットワークコントローラ70から取得してもよい。
図13に示されるように、制御装置100(パラメータ設定手段170)は、機械学習ベースのコントローラ160が制御パラメータの変更を選択した場合に、変更された制御パラメータをネットワークコントローラ70に設定させてもよい。一例として、制御装置100(パラメータ設定手段170)は、制御パラメータの変更を示すパラメータ情報(例えば、制御パラメータの変更を指示するコマンド)をネットワークコントローラ70へ送信し、ネットワークコントローラ70は、当該パラメータ情報に基づいて、変更された制御パラメータを設定してもよい。その結果、ネットワークコントローラ70は、当該変更された制御パラメータに従って、ネットワーク機器60を制御してもよく、ネットワーク機器60は、ネットワークコントローラ70による制御に従って、データ(例えば、パケット)を転送してもよい。
(5)第5の変形例
上述したように、例えば、制御装置100は、観測手段110、判定手段120、取得手段130、選択手段140、コントローラ設定手段150、複数の機械学習ベースのコントローラ160、パラメータ設定手段170及び通信処理手段180を備える。しかし、第1の実施形態に係る制御装置100はこの例に限定されない。
第1の実施形態の第5の変形例では、例えば、観測手段110は、制御装置100に含まれず、他の装置に含まれてもよい。この場合に、制御装置100は、通信ネットワーク10についての観測情報を当該他の装置から受信してもよい。さらに、例えば、判定手段120も、制御装置100に含まれず、上記他の装置に含まれてもよい。この場合に、制御装置100は、通信ネットワーク10の状態に関する状態情報を上記他の装置から受信してもよい。例えば、第4の変形例のような場合に、観測手段110(及び判定手段120)が、制御装置100に含まれず、他の装置(例えば、ネットワーク機器又はネットワークコントローラ)に含まれてもよい。
第1の実施形態の第5の変形例では、例えば、コントローラ設定手段150は、制御装置100に含まれず、他の装置に含まれてもよい。この場合に、機械学習ベースのコントローラ160の数(例えばN)は、当該他の装置により決定されてもよい。
第1の実施形態の第5の変形例では、例えば、上記複数の機械学習ベースのコントローラ160は、制御装置100に含まれず、他の装置に含まれてもよい。この場合に、制御装置100は、選択した機械学習ベースのコントローラ160を当該他の装置に通知してもよい。パラメータ設定手段170も、制御装置100に含まれず、上記他の装置に含まれてもよい。なお、機械学習ベースのコントローラ160が制御装置100に含まれない場合には、第4の変形例における説明において、「制御装置100」は、「機械学習ベースのコントローラ160を含む装置」に置き換えられてもよい。
第1の実施形態の第5の変形例では、例えば、パラメータ設定手段170は、複数の機械学習ベースのコントローラ160の各々に含まれていてもよい。即ち、複数の機械学習ベースのコントローラ160の各々は、上述したパラメータ設定手段170の動作を行ってもよい。
第1の実施形態の第5の変形例では、例えば、データ(例えば、パケット)を転送する通信処理手段180は、制御装置100に含まれず、他の装置に含まれてもよい。例えば、第4の変形例のような場合に、通信処理手段180が、制御装置100に含まれず、ネットワーク機器に含まれてもよい。
<<3.第2の実施形態>>
続いて、図14及び図15を参照して、本開示の第2の実施形態を説明する。上述した第1の実施形態は、具体的な実施形態であるが、第2の実施形態は、より一般化された実施形態である。
図14は、第2の実施形態に係るシステム2の概略的な構成の一例を示す。図14を参照すると、システム2は、取得手段400及び選択手段500を含む。
図15は、第2の実施形態に係るコントローラ選択処理の概略的な流れの例を説明するためのフローチャートである。
取得手段400は、通信ネットワークの状態に関する状態情報を取得する(S610)。
選択手段500は、上記状態情報に基づいて、上記通信ネットワークにおける通信を制御するための複数の機械学習ベースのコントローラのうちの1つを選択する(S620)。
上記通信ネットワーク、上記通信ネットワークの上記状態、上記状態情報、及び、上記複数の機械学習ベースのコントローラについての説明は、例えば、第1の実施形態におけるこれらについての説明と同じである。また、機械学習ベースのコントローラの選択についての説明も、例えば、第1の実施形態における説明と同じである。よって、ここでは重複する説明を省略する。なお、当然ながら、第2の実施形態は、第1の実施形態の例に限定されない。
以上のように、機械学習ベースのコントローラが選択される。これにより、通信ネットワークにおいて通信環境に適した通信制御を行うことがより容易になる。
以上、本開示の実施形態を説明したが、本開示はこれらの実施形態に限定されるものではない。これらの実施形態は例示にすぎないということ、及び、本開示のスコープ及び精神から逸脱することなく様々な変形が可能であるということは、当業者に理解されるであろう。
例えば、本明細書に記載されている処理におけるステップは、必ずしもフローチャートに記載された順序に沿って時系列に実行されなくてよい。例えば、処理におけるステップは、フローチャートとして記載した順序と異なる順序で実行されても、並列的に実行されてもよい。また、処理におけるステップの一部が削除されてもよく、さらなるステップが処理に追加されてもよい。
また、本明細書において説明したシステム又は制御装置の構成要素の処理を含む方法が提供されてもよく、上記構成要素の処理をプロセッサに実行させるためのプログラムが提供されてもよい。また、当該プログラムを記録したコンピュータに読み取り可能な非一時的記録媒体(Non-transitory computer readable recording medium)が提供されてもよい。当然ながら、このような方法、プログラム、及びコンピュータに読み取り可能な非一時的記録媒体も本開示に含まれる。
上記実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
(付記1)
通信ネットワークの状態に関する状態情報を取得する取得手段と、
前記状態情報に基づいて、前記通信ネットワークにおける通信を制御するための複数の機械学習ベースのコントローラのうちの1つを選択する選択手段と、
を含むシステム。
(付記2)
前記状態情報は、前記通信ネットワークの前記状態を示す、付記1に記載のシステム。
(付記3)
前記通信ネットワークの前記状態は、前記通信ネットワークの輻輳状態である、付記1又は2に記載のシステム。
(付記4)
前記通信ネットワークの前記輻輳状態は、前記通信ネットワークの輻輳レベルである、付記3に記載のシステム。
(付記5)
前記通信ネットワークの前記状態を判定する判定手段をさらに含む、付記1~4のいずれか1項に記載のシステム。
(付記6)
前記判定手段は、前記通信ネットワークについての観測情報に基づいて、前記通信ネットワークの前記状態を判定する、付記5に記載のシステム。
(付記7)
前記観測情報は、前記通信ネットワークにおけるスループット、又は、前記通信ネットワークにおけるパケットロス率を示す、付記6に記載のシステム。
(付記8)
前記判定手段は、時間帯ごとの前記通信ネットワークの状態を示す情報に基づいて、前記通信ネットワークの前記状態を判定する、付記5に記載のシステム。
(付記9)
前記複数の機械学習ベースのコントローラに含まれる機械学習ベースのコントローラは、当該機械学習ベースのコントローラに対応する前記通信ネットワークの状態に応じた学習条件を有する、付記1~8のいずれか1項に記載のシステム。
(付記10)
前記複数の機械学習ベースのコントローラの各々は、前記複数の機械学習ベースのコントローラに含まれる1つ以上の他の機械学習ベースのコントローラとは異なる学習条件を有する、付記1~9のいずれか1項に記載のシステム。
(付記11)
前記複数の機械学習ベースのコントローラの各々は、強化学習ベースのコントローラであり、
前記学習条件は、強化学習における探索の確率の下限、強化学習におけるパラメータの変更量、及び、強化学習におけるニューラルネットワークの構成のうちの、少なくとも1つを含む、
付記9又は10に記載のシステム。
(付記12)
前記複数の機械学習ベースのコントローラの各々は、入力される状態に基づいて行動を出力する強化学習ベースのコントローラであり、
前記複数の機械学習ベースのコントローラの各々は、前記複数の機械学習ベースのコントローラに含まれる1つ以上の他の機械学習ベースのコントローラとは異なる形式の状態を強化学習の入力として有する、
付記1~11のいずれか1項に記載のシステム。
(付記13)
前記複数の機械学習ベースのコントローラの各々は、入力される状態に基づいて行動を出力する強化学習ベースのコントローラであり、
前記複数の機械学習ベースのコントローラの各々は、前記複数の機械学習ベースのコントローラに含まれる1つ以上の他の機械学習ベースのコントローラとは異なる形式の行動を強化学習の出力として有する、
付記1~12のいずれか1項に記載のシステム。
(付記14)
前記1つ以上の他の機械学習ベースのコントローラは、前記複数の機械学習ベースのコントローラに含まれる他の全ての機械学習ベースのコントローラである、付記10~13のいずれか1項に記載のシステム。
(付記15)
前記複数の機械学習ベースのコントローラに含まれる機械学習ベースのコントローラの数を決定するコントローラ設定手段をさらに含む、付記1~14のいずれか1項に記載のシステム。
(付記16)
通信ネットワークの状態に関する状態情報を取得することと、
前記状態情報に基づいて、前記通信ネットワークにおける通信を制御するための複数の機械学習ベースのコントローラのうちの1つを選択することと、
を含む方法。
(付記17)
前記状態情報は、前記通信ネットワークの前記状態を示す、付記16に記載の方法。
(付記18)
前記通信ネットワークの前記状態は、前記通信ネットワークの輻輳状態である、付記16又は17に記載の方法。
(付記19)
前記通信ネットワークの前記輻輳状態は、前記通信ネットワークの輻輳レベルである、付記18に記載の方法。
(付記20)
前記通信ネットワークの前記状態を判定することをさらに含む、付記16~19のいずれか1項に記載の方法。
(付記21)
前記通信ネットワークについての観測情報に基づいて前記通信ネットワークの前記状態を判定することをさらに含む、付記16~20のいずれか1項に記載の方法。
(付記22)
前記観測情報は、前記通信ネットワークにおけるスループット、又は、前記通信ネットワークにおけるパケットロス率を示す、付記21に記載の方法。
(付記23)
時間帯ごとの前記通信ネットワークの状態を示す情報に基づいて前記通信ネットワークの前記状態を判定することをさらに含む、付記16~20のいずれか1項に記載の方法。
(付記24)
前記複数の機械学習ベースのコントローラに含まれる機械学習ベースのコントローラは、当該機械学習ベースのコントローラに対応する前記通信ネットワークの状態に応じた学習条件を有する、付記16~23のいずれか1項に記載の方法。
(付記25)
前記複数の機械学習ベースのコントローラの各々は、前記複数の機械学習ベースのコントローラに含まれる1つ以上の他の機械学習ベースのコントローラとは異なる学習条件を有する、付記16~24のいずれか1項に記載の方法。
(付記26)
前記複数の機械学習ベースのコントローラの各々は、強化学習ベースのコントローラであり、
前記学習条件は、強化学習における探索の確率の下限、強化学習におけるパラメータの変更量、及び、強化学習におけるニューラルネットワークの構成のうちの、少なくとも1つを含む、
付記24又は25に記載の方法。
(付記27)
前記複数の機械学習ベースのコントローラの各々は、入力される状態に基づいて行動を出力する強化学習ベースのコントローラであり、
前記複数の機械学習ベースのコントローラの各々は、前記複数の機械学習ベースのコントローラに含まれる1つ以上の他の機械学習ベースのコントローラとは異なる形式の状態を強化学習の入力として有する、
付記16~26のいずれか1項に記載の方法。
(付記28)
前記複数の機械学習ベースのコントローラの各々は、入力される状態に基づいて行動を出力する強化学習ベースのコントローラであり、
前記複数の機械学習ベースのコントローラの各々は、前記複数の機械学習ベースのコントローラに含まれる1つ以上の他の機械学習ベースのコントローラとは異なる形式の行動を強化学習の出力として有する、
付記16~27のいずれか1項に記載の方法。
(付記29)
前記1つ以上の他の機械学習ベースのコントローラは、前記複数の機械学習ベースのコントローラに含まれる他の全ての機械学習ベースのコントローラである、付記25~28のいずれか1項に記載の方法。
(付記30)
前記複数の機械学習ベースのコントローラに含まれる機械学習ベースのコントローラの数を決定することをさらに含む、付記16~29のいずれか1項に記載の方法。
(付記31)
通信ネットワークの状態に関する状態情報を取得する取得手段と、
前記状態情報に基づいて、前記通信ネットワークにおける通信を制御するための複数の機械学習ベースのコントローラのうちの1つを選択する選択手段と、
を備える制御装置。
(付記32)
前記状態情報は、前記通信ネットワークの前記状態を示す、付記31に記載の制御装置。
(付記33)
前記通信ネットワークの前記状態は、前記通信ネットワークの輻輳状態である、付記31又は32に記載の制御装置。
(付記34)
前記通信ネットワークの前記輻輳状態は、前記通信ネットワークの輻輳レベルである、付記33に記載の制御装置。
(付記35)
前記通信ネットワークの前記状態を判定する判定手段をさらに備える、付記31~34のいずれか1項に記載の制御装置。
(付記36)
前記判定手段は、前記通信ネットワークについての観測情報に基づいて、前記通信ネットワークの前記状態を判定する、付記35に記載の制御装置。
(付記37)
前記観測情報は、前記通信ネットワークにおけるスループット、又は、前記通信ネットワークにおけるパケットロス率を示す、付記36に記載の制御装置。
(付記38)
前記判定手段は、時間帯ごとの前記通信ネットワークの状態を示す情報に基づいて、前記通信ネットワークの前記状態を判定する、付記35に記載の制御装置。
(付記39)
前記複数の機械学習ベースのコントローラに含まれる機械学習ベースのコントローラは、当該機械学習ベースのコントローラに対応する前記通信ネットワークの状態に応じた学習条件を有する、付記31~38のいずれか1項に記載の制御装置。
(付記40)
前記複数の機械学習ベースのコントローラの各々は、前記複数の機械学習ベースのコントローラに含まれる1つ以上の他の機械学習ベースのコントローラとは異なる学習条件を有する、付記31~39のいずれか1項に記載の制御装置。
(付記41)
前記複数の機械学習ベースのコントローラの各々は、強化学習ベースのコントローラであり、
前記学習条件は、強化学習における探索の確率の下限、強化学習におけるパラメータの変更量、及び、強化学習におけるニューラルネットワークの構成のうちの、少なくとも1つを含む、
付記39又は40に記載の制御装置。
(付記42)
前記複数の機械学習ベースのコントローラの各々は、入力される状態に基づいて行動を出力する強化学習ベースのコントローラであり、
前記複数の機械学習ベースのコントローラの各々は、前記複数の機械学習ベースのコントローラに含まれる1つ以上の他の機械学習ベースのコントローラとは異なる形式の状態を強化学習の入力として有する、
付記31~41のいずれか1項に記載の制御装置。
(付記43)
前記複数の機械学習ベースのコントローラの各々は、入力される状態に基づいて行動を出力する強化学習ベースのコントローラであり、
前記複数の機械学習ベースのコントローラの各々は、前記複数の機械学習ベースのコントローラに含まれる1つ以上の他の機械学習ベースのコントローラとは異なる形式の行動を強化学習の出力として有する、
付記31~42のいずれか1項に記載の制御装置。
(付記44)
前記1つ以上の他の機械学習ベースのコントローラは、前記複数の機械学習ベースのコントローラに含まれる他の全ての機械学習ベースのコントローラである、付記40~43のいずれか1項に記載の制御装置。
(付記45)
前記複数の機械学習ベースのコントローラに含まれる機械学習ベースのコントローラの数を決定するコントローラ設定手段をさらに備える、付記31~44のいずれか1項に記載の制御装置。
(付記46)
通信ネットワークの状態に関する状態情報を取得することと、
前記状態情報に基づいて、前記通信ネットワークにおける通信を制御するための複数の機械学習ベースのコントローラのうちの1つを選択することと、
をプロセッサに実行させるプログラム。
(付記47)
通信ネットワークの状態に関する状態情報を取得することと、
前記状態情報に基づいて、前記通信ネットワークにおける通信を制御するための複数の機械学習ベースのコントローラのうちの1つを選択することと、
をプロセッサに実行させるプログラムを記録したコンピュータに読み取り可能な非一時的記録媒体。
1、2 システム
10 通信ネットワーク
100 制御装置
120 判定手段
130、400 取得手段
140、500 選択手段
150 コントローラ設定手段150
160 機械学習ベースのコントローラ


Claims (10)

  1. 通信ネットワークの状態に関する状態情報を取得する取得手段と、
    前記状態情報に基づいて、前記通信ネットワークにおける通信を制御するための複数の機械学習ベースのコントローラのうちの1つを選択する選択手段と、
    を含むシステム。
  2. 前記通信ネットワークの前記状態は、前記通信ネットワークの輻輳状態である、請求項1に記載のシステム。
  3. 前記通信ネットワークの前記状態を判定する判定手段をさらに含む、請求項1又は2に記載のシステム。
  4. 前記複数の機械学習ベースのコントローラに含まれる機械学習ベースのコントローラは、当該機械学習ベースのコントローラに対応する前記通信ネットワークの状態に応じた学習条件を有する、請求項1~3のいずれか1項に記載のシステム。
  5. 前記複数の機械学習ベースのコントローラの各々は、強化学習ベースのコントローラであり、
    前記学習条件は、強化学習における探索の確率の下限、強化学習におけるパラメータの変更量、及び、強化学習におけるニューラルネットワークの構成のうちの、少なくとも1つを含む、
    請求項4に記載のシステム。
  6. 通信ネットワークの状態に関する状態情報を取得することと、
    前記状態情報に基づいて、前記通信ネットワークにおける通信を制御するための複数の機械学習ベースのコントローラのうちの1つを選択することと、
    を含む方法。
  7. 前記通信ネットワークの前記状態は、前記通信ネットワークの輻輳状態である、請求項6に記載の方法。
  8. 前記通信ネットワークの前記状態を判定することをさらに含む、請求項6又は7に記載の方法。
  9. 前記複数の機械学習ベースのコントローラに含まれる機械学習ベースのコントローラは、当該機械学習ベースのコントローラに対応する前記通信ネットワークの状態に応じた学習条件を有する、請求項6~8のいずれか1項に記載の方法。
  10. 通信ネットワークの状態に関する状態情報を取得する取得手段と、
    前記状態情報に基づいて、前記通信ネットワークにおける通信を制御するための複数の機械学習ベースのコントローラのうちの1つを選択する選択手段と、
    を備える制御装置。
JP2021550735A 2019-09-30 2019-09-30 システム、方法及び制御装置 Active JP7188609B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/038458 WO2021064770A1 (ja) 2019-09-30 2019-09-30 システム、方法及び制御装置

Publications (3)

Publication Number Publication Date
JPWO2021064770A1 JPWO2021064770A1 (ja) 2021-04-08
JPWO2021064770A5 JPWO2021064770A5 (ja) 2022-06-03
JP7188609B2 true JP7188609B2 (ja) 2022-12-13

Family

ID=75337019

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021550735A Active JP7188609B2 (ja) 2019-09-30 2019-09-30 システム、方法及び制御装置

Country Status (3)

Country Link
US (1) US20220329494A1 (ja)
JP (1) JP7188609B2 (ja)
WO (1) WO2021064770A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112910789A (zh) * 2019-12-03 2021-06-04 华为技术有限公司 拥塞控制方法以及相关设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010539760A (ja) 2007-09-14 2010-12-16 エヌイーシー ヨーロッパ リミテッド ネットワークパフォーマンスを最適化する方法およびシステム
JP2018142199A (ja) 2017-02-28 2018-09-13 株式会社日立製作所 学習システムおよび学習方法
JP2019526107A (ja) 2016-06-21 2019-09-12 エスアールアイ インターナショナルSRI International 信用されるモデルを使用する機械学習のためのシステムおよび方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5772345B2 (ja) * 2011-07-25 2015-09-02 富士通株式会社 パラメータ設定装置、コンピュータプログラム及びパラメータ設定方法
JP6640797B2 (ja) * 2017-07-31 2020-02-05 ファナック株式会社 無線中継器選択装置及び機械学習装置
US11360757B1 (en) * 2019-06-21 2022-06-14 Amazon Technologies, Inc. Request distribution and oversight for robotic devices

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010539760A (ja) 2007-09-14 2010-12-16 エヌイーシー ヨーロッパ リミテッド ネットワークパフォーマンスを最適化する方法およびシステム
JP2019526107A (ja) 2016-06-21 2019-09-12 エスアールアイ インターナショナルSRI International 信用されるモデルを使用する機械学習のためのシステムおよび方法
JP2018142199A (ja) 2017-02-28 2018-09-13 株式会社日立製作所 学習システムおよび学習方法

Also Published As

Publication number Publication date
WO2021064770A1 (ja) 2021-04-08
JPWO2021064770A1 (ja) 2021-04-08
US20220329494A1 (en) 2022-10-13

Similar Documents

Publication Publication Date Title
US10666547B2 (en) Efficient machine learning for network optimization
US10505818B1 (en) Methods for analyzing and load balancing based on server health and devices thereof
Ganjam et al. C3:{internet-scale} control plane for video quality optimization
US10374956B1 (en) Managing a hierarchical network
JP6571090B2 (ja) 協働するネットワークコントローラに基づくマルチドメイン送信元ルート選択転送
CN113475089B (zh) 用于面向用户的内容流的方法和系统
JP7118860B2 (ja) VoIPでメディア送信のための最適ネットワーク経路を選択するための方法とシステム、非一時的なコンピュータで読み取り可能な記録媒体
US10425326B2 (en) Rerouting tunnel traffic in communication networks
KR20120066116A (ko) 웹 서비스 정보 처리 방법과 이를 이용한 웹 서비스 조합 방법 및 장치
EP2949149B1 (en) Observation assisted bandwidth management
JP6904369B2 (ja) 制御装置、制御方法、及びプログラム
KR20120039014A (ko) 가상 네트워크의 효율적이고 자동화된 관리 방법 및 시스템
US20230145097A1 (en) Autonomous traffic (self-driving) network with traffic classes and passive and active learning
CN114616810A (zh) 网络路径重定向
EP3585013B1 (en) Data transmission method and apparatus
JP7188609B2 (ja) システム、方法及び制御装置
US20180287931A1 (en) Provisioning a Network Node for Attribute Sharing
CN111211984B (zh) 优化cdn网络的方法、装置及电子设备
JP7347525B2 (ja) システム、方法及び制御装置
WO2010109767A1 (ja) データ同期システム、データ同期方法、及び同期管理サーバ
JP7231049B2 (ja) システム、方法及び制御装置
CN111901237A (zh) 源路由选路方法及系统、相关设备及计算机可读存储介质
US10805384B1 (en) Systems and methods for load balancing server infrastructure
JPWO2011048740A1 (ja) データ伝送システム、送信速度制御方法、受信端末、送信端末
Cao Using reinforcement learning for agent-based network fault diagnosis system

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220323

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220323

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221101

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221114

R151 Written notification of patent or utility model registration

Ref document number: 7188609

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151