(57)【要約】【課題】ＯＳＰＦ等の既存の経路制御技術を必要とせず、偶発的に発生する輻輳箇所をリアルタイムにて予測し回避できる経路制御方法及び経路設定装置を提供することを目的とする。【解決手段】本発明に係る経路制御方法及び本経路設定装置は、パス毎に学習器を用意し、トラフィック情報（パケットの到着率やキュー長等）とパケット転送中のパスの輻輳情報（輻輳している又は輻輳していない）を教師データとしてそのパスの学習器の関数形を調整するとともに、当該パスが輻輳した場合、学習器の中で輻輳していないという出力のパスへ切り換える。このように学習器が関数形を最適化していくので偶発的にパスに輻輳が発生してもすぐに代替パスへ切り換えることができる。
2019026684.tif 000002
【特許請求の範囲】
【請求項１】
通信ネットワークの各ルータに対してパスを設定し、前記パス毎に学習器を用意する前処理手順と、
全ての前記ルータのトラフィック情報、及び現在パケットを転送しているパスの輻輳情報を収集するとともに、前記前処理手順で設定したパス毎の過去の前記トラフィック情報と前記輻輳情報の蓄積に追加し、前記蓄積を教師データとしてパス毎に機械学習を行う訓練手順と、
与えられた前記トラフィック情報に対し、前記訓練手順で行った前記機械学習の結果に基づく輻輳予測のうち、輻輳しないと予測される１つのパスを前記ルータに設定する予測手順と、
を行う経路制御方法。
【請求項２】
前記前処理手順後、設定したパスの内、最短のパスを選択して前記訓練手順を開始し、所定時間、前記訓練手順と前記予測手順を繰り返すことを特徴とする請求項１に記載の経路制御方法。
【請求項３】
前記所定時間、予め設定された確率で前記予測手順で輻輳しないと予測される１つのパス以外のパスを前記ルータに設定することを特徴とする請求項２に記載の経路制御方法。
【請求項４】
通信ネットワークの各ルータに対して設定されたパス毎に用意される学習器と、
全ての前記ルータのトラフィック情報、及び現在パケットを転送しているパスの輻輳情報を収集するとともに、前記設定されたパス毎の過去の前記トラフィック情報と前記輻輳情報の蓄積に追加し、前記蓄積を教師データとしてそれぞれの前記学習器の訓練を行う訓練器と、
全ての前記学習器に前記トラフィック情報を与え、前記学習器が出力する輻輳予測のうち、輻輳しないと予測される１つのパスを前記ルータに設定するパス予測設定を行う予測器と、
を備える経路設定装置。
【請求項５】
前記訓練器は、前記設定されたパスの内、最短のパスを選択して前記学習器の訓練を開始し、
所定時間、前記訓練器と前記予測器が前記学習器の訓練と前記パス予測設定を繰り返すことを特徴とする請求項４に記載の経路設定装置。
【請求項６】
前記予測器は、前記所定時間、予め設定された確率で前記輻輳しないと予測される１つのパス以外のパスを前記ルータに設定することを特徴とする請求項５に記載の経路設定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、宛先に向けてパケットを転送するだけではなく、ＴＥ（Ｔｒａｆｆｉｃ  Ｅｎｇｉｎｅｅｒｉｎｇ）などの高度な目的を持つ通信ネットワークにおける経路制御方法及び経路設定装置に関する。
【背景技術】
【０００２】
従来技術（例えば非特許文献１−３を参照。）では、ＯＳＰＦ（Ｏｐｅｎ  Ｓｈｏｒｔｅｓｔ  Ｐａｔｈ  Ｆｉｒｓｔ）等の既存の経路制御方法を事前に学習し、その動作を模倣することを目的としていた。【０００３】
この従来技術では、パスの設定制御に機械学習を応用する。機械学習は、近年、注目されているディープニューラルネットワーク等の技術を示している。本明細書では、機械学習を次のように定義する。引数（あるいは入力）ｘｉと、戻り値（あるいは出力）ｙｉのペアがいくつか与えられているとする（ｉは任意の自然数）。このとき、ｙｉ＝ｆ（ｘｉ）となる関数ｆを構成する。ここで、ｆの実体を学習器と呼ぶ。学習器は、教師データと呼ばれる入出力ペアＸ＝（ｘ０，ｘ１，・・・）とＹ＝（ｙ０，ｙ１，・・・）を与えられると、それらを用いて関数ｆを自動的に学習する（訓練するとも言う）。学習後、学習器は、教師データに含まれないｘ’に対しても、もっともらしいｙ’＝ｆ（ｘ’）を予測できるようになる。【０００４】
従来技術は、既存の経路制御方法を用いてあらかじめ教師データを作成していた。既存の経路制御方法は、各ルータへの到着パケット数を与えられると、ルータ間で制御メッセージを交換しながら、各パケットのパスを決定する。従来技術は、トラフィック情報をｘｉ、宛先ごとのパスをｙｉとする教師データを用い、それらの対応を表す関数ｆを学習する。あらかじめ作成した教師データに近いトラフィックが発生すれば、既存の経路制御方法を模倣し、適切なパスを決定できた。しかし、教師データからかけ離れたトラフィックに対しては、不適切なパスを選択し、輻輳を引き起こすリスクがあった。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Ｎ．  Ｋａｔｏ，  Ｚ．  Ｍ．  Ｆａｄｌｕｌｌａｈ，  Ｂ．  Ｍａｏ，  Ｆ．  Ｔａｎｇ，  Ｏ．  Ａｋａｓｈｉ，  Ｔ．  Ｉｎｏｕｅ，ａｎｄＫ．  Ｍｉｚｕｔａｎｉ，  “Ｔｈｅ  Ｄｅｅｐ  Ｌｅａｒｎｉｎｇ  Ｖｉｓｉｏｎ  ｆｏｒ  Ｈｅｔｅｒｏｇｅｎｅｏｕｓ  Ｎｅｔ−ｗｏｒｋ  Ｔｒａｆｆｉｃ  Ｃｏｎｔｒｏｌ．Ｐｒｏｐｏｓａｌ，  Ｃｈａｌｌｅｎｇｅｓ，  ａｎｄ  Ｆｕｔｕｒｅ  Ｐｅｒｓｐｅｃ−ｔｉｖｅ”，  ｉｎ  ＩＥＥＥ  Ｗｉｒｅｌｅｓｓ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  （ＷＣＭ），  ａｖａｉｌａｂｌｅ  ｏｎｌｉｎｅ，ｄｏｉ：１０．１１０９／ＭＷＣ．２０１６．１６００３１７ＷＣ．
【非特許文献２】Ｚ．  Ｆａｄｌｕｌｌａｈ，  Ｆ．  Ｔａｎｇ，  Ｂ．  Ｍａｏ，  Ｎ．  Ｋａｔｏ，  Ｏ．  Ａｋａｓｈｉ，  Ｔ．  Ｉｎｏｕｅ，  ａｎｄＫ．  Ｍｉｚｕｔａｎｉ，  “Ｓｔａｔｅ−ｏｆ−ｔｈｅ−Ａｒｔ  Ｄｅｅｐ  Ｌｅａｒｎｉｎｇ．Ｅｖｏｌｖｉｎｇ  ＭａｃｈｉｎｅＩｎｔｅｌｌｉｇｅｎｃｅ  Ｔｏｗａｒｄ  Ｔｏｍｏｒｒｏｗｓ  Ｉｎｔｅｌｌｉｇｅｎｔ  Ｎｅｔｗｏｒｋ  Ｔｒａｆｆｉｃ  ＣｏｎｔｒｏｌＳｙｓｔｅｍｓ”，  ｉｎ  ＩＥＥＥ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｓｕｒｖｅｙｓ  ａｎｄ  Ｔｕｔｏｒｉａｌｓ  ，  ｖｏｌ．ＰＰ，ｎｏ．９９，  ｐｐ．１−１，  ｄｏｉ．１０．１１０９／ＣＯＭＳＴ．２０１７．２７０７１４０
【非特許文献３】Ｂ．  Ｍａｏ，  Ｚ．  Ｍ．  Ｆａｄｌｕｌｌａｈ，  Ｆ．  Ｔａｎｇ，  Ｎ．  Ｋａｔｏ，  Ｏ．  Ａｋａｓｈｉ，  Ｔ．  Ｉｎｏｕｅ，ａｎｄ  Ｋ．  Ｍｉｚｕｔａｎｉ，  “Ｒｏｕｔｉｎｇ  ｏｒ  Ｃｏｍｐｕｔｉｎｇ？  Ｔｈｅ  Ｐａｒａｄｉｇｍ  Ｓｈｉｆｔ  Ｔｏ−ｗａｒｄｓＩｎｔｅｌｌｉｇｅｎｔ  Ｃｏｍｐｕｔｅｒ  Ｎｅｔｗｏｒｋ  Ｐａｃｋｅｔ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｂａｓｅｄ  ｏｎＤｅｅｐ  Ｌｅａｒｎｉｎｇ”，  ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｃｏｍｐｕｔｅｒｓ，  ａｖａｉｌａｂｌｅ  ｏｎｌｉｎｅ，ｄｏｉ．１０．１１０９／ＴＣ．２０１７．２７０９７４２．７
【発明の概要】
【発明が解決しようとする課題】
【０００６】
そのため、偶発的に発生する輻輳箇所を回避するようなパスの設定が困難という課題があった。そこで、本発明は、上記課題を解決するために、ＯＳＰＦ等の既存の経路制御技術を必要とせず、偶発的に発生する輻輳箇所をリアルタイムにて予測し回避できる経路制御方法及び経路設定装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明に係る経路制御方法及び経路設定装置は、リアルタイムに機械学習を実行することとした。【０００８】
具体的には、本発明に係る経路制御方法は、
通信ネットワークの各ルータに対してパスを設定し、前記パス毎に学習器を用意する前処理手順と、
全ての前記ルータのトラフィック情報、及び現在パケットを転送しているパスの輻輳情報を収集するとともに、前記前処理手順で設定したパス毎の過去の前記トラフィック情報と前記輻輳情報の蓄積に追加し、前記蓄積を教師データとしてパス毎に機械学習を行う訓練手順と、
与えられた前記トラフィック情報に対し、前記訓練手順で行った前記機械学習の結果に基づく輻輳予測のうち、輻輳しないと予測される１つのパスを前記ルータに設定する予測手順と、
を行う。【０００９】
また、本発明に係る経路設定装置は、
通信ネットワークの各ルータに対して設定されたパス毎に用意される学習器と、
全ての前記ルータのトラフィック情報、及び現在パケットを転送しているパスの輻輳情報を収集するとともに、前記設定されたパス毎の過去の前記トラフィック情報と前記輻輳情報の蓄積に追加し、前記蓄積を教師データとしてそれぞれの前記学習器の訓練を行う訓練器と、
全ての前記学習器に前記トラフィック情報を与え、前記学習器が出力する輻輳予測のうち、輻輳しないと予測される１つのパスを前記ルータに設定するパス予測設定を行う予測器と、
を備える。【００１０】
本経路制御方法及び本経路設定装置は、パス毎に学習器を用意し、各ルータへの到着パケット数、各ルータの平均キュー長、各リンクでのパケット廃棄率その他のトラフィック情報をＸ、伝送遅延時間、伝送遅延の閾値判断その他のパスの輻輳情報をＹとする。従来技術ではＹを宛先ごとのパスとしていたことに対し、本発明ではＹをパスの輻輳情報としていることが異なる。本経路制御方法及び本経路設定装置は、リアルタイムにＸ、Ｙを収集しながら学習器を訓練するとともに、新たなトラフィック情報ｘ’に対してパスの輻輳状態ｙ’を予測する。そして、本経路制御方法及び本経路設定装置は、現在利用しているパスが輻輳している、あるいは輻輳すると予想されれば、輻輳が予測されていないパスに切り替える。【００１１】
このように、本経路制御方法及び本経路設定装置は、学習器が関数形を最適化していくので偶発的にパスに輻輳が発生してもすぐに代替パスへ切り換えることができる。従って、本発明は、ＯＳＰＦ等の既存の経路制御技術を必要とせず、偶発的に発生する輻輳箇所をリアルタイムにて予測し回避できる経路制御方法及び経路設定装置を提供することができる。【００１２】
本発明に係る経路制御方法は、前記前処理手順後、設定したパスの内、最短のパスを選択して前記訓練手順を開始し、所定時間、前記訓練手順と前記予測手順を繰り返すことを特徴とする。機械学習の初期段階では、学習器の関数形を形成するために、まず、最短パスにトラフィックを転送して教師データを収集する。そして、その結果に応じて様々なパスに切り換えてトラフィックを転送してさらに教師データを収集する。このように訓練手順と予測手順を繰り返すことで学習器の関数形を形成していく。【００１３】
本発明に係る経路制御方法は、前記所定時間、予め設定された確率で前記予測手順で輻輳しないと予測される１つのパス以外のパスを前記ルータに設定することを特徴とする。特定のパス群にトラフィックが集中するとネットワークの全体的な情報が収集できないので、適宜、予測手順で予測されるパス以外のパスにもトラフィックを転送するとよい。
【発明の効果】
【００１４】
本発明は、ＯＳＰＦ等の既存の経路制御技術を必要とせず、偶発的に発生する輻輳箇所をリアルタイムにて予測し回避できる経路制御方法及び経路設定装置を提供することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明に係る経路設定装置の学習器に入力する情報を説明する図である。
【図２】本発明に係る経路設定装置が行う経路制御を説明する図である。
【図３】本発明に係る経路制御方法を説明する図である。
【図４】本発明に係る経路設定装置を説明するブロック図である。
【図５】本発明に係る経路設定装置で使用するトラフィック情報を説明する図である。
【図６】本発明に係る経路設定装置での学習効果を説明する図である。
【発明を実施するための形態】
【００１６】
添付の図面を参照して本発明の実施形態を説明する。以下に説明する実施形態は本発明の実施例であり、本発明は、以下の実施形態に制限されるものではない。なお、本明細書及び図面において符号が同じ構成要素は、相互に同一のものを示すものとする。
【００１７】
［本発明の概要］
本実施形態の経路制御方法及び経路設定装置は、リアルタイムに機械学習を実行する。輻輳予測をパス毎に行うため、パスごとに学習器を用意する。また、始点と終点のペアごとに経路設定装置を用意し、始点と終点を同じくする学習器はその経路設定装置によって管理される。経路設定装置たちは、一カ所にまとめて設置してもよいし、始点ルータごとに設置してもよい。
【００１８】
ここで，ある特定のパスについて，学習器の訓練と予測を説明する．学習器への入力Xとして３次元ベクトル（Ｃ，Ｔ，Ｒ）にて表現するネットワーク（ＮＷ）の時系列データを利用する。  Ｃ（＝ｃ０，ｃ１，・・・，ｃＭ−１）は、ＮＷの状態ベクトルであり、ＭはＮＷの状態ベクトルの種別数を表す。状態ベクトルの要素として、ルータのキュー長、パケットの到着数、パケット廃棄率その他のトラフィック情報が該当する。
Ｔ（＝ｔ0，ｔ−１，・・・，ｔ1−Ｈ）は、ＮＷの状態を観測するHスロットの時刻からなるベクトルであり、ｔ0は、最新（現在）のＮＷの状態を示している。
Ｒ（＝ｒ０，ｒ１，・・・，ｒｉ，・・・，ｒＮ−１）は、ＮＷ内のルータの集合を表しており、Ｎ台のルータによって構成されているＮＷを表現している。
【００１９】
図１のｃ０は、パケット到着数を、各ルータ（ｒ０，ｒ１，・・・）について時刻ごと（ｔ０，ｔ−１，・・・）に行列形式で表現している。図１のｃＭ−１も同様に、キュー長を行列形式で表現している。すべての状態種について同じ行（時刻ｔｉ）を束ねたものをｘｉとし、すべての行を束ねたものをＸ＝（ｘ０，ｘ−１，・・・）とする。ｘ０は最新の引数であり、ｘ−１、ｘ−２、・・・は過去の引数である。
【００２０】
また、図１の「輻輳状態」は、各時刻ｔｉにおいて観測した当該特定のパスの輻輳状態ｙｉである。例えば、設定されているパスの遅延時間が、予め設定した閾値を超えるか否かによって輻輳しているか否かを訓練器が判定し、判定結果を２値で表現する。図１では、訓練器が輻輳と判断した場合を（１，０）とし、輻輳してないと判断した場合を（０，１）としている。それらをまとめたものをＹ＝（ｙ０，ｙ−１，・・・）とする。ｙ０は最新の戻り値であり、ｙ−１、ｙ−２、・・・は過去の戻り値である。なお、本例では判定結果を輻輳している、輻輳していないの２値としたが、その中間の値を用意して判定結果を３値以上としてもよい。
【００２１】
ここではある特定のパスの学習器について説明しているが、Ｘは全ルータについての情報になる点に注意されたい。つまり、あるパスの学習器は当該パス上にないルータのトラフィック情報も予測に利用する。一方、Ｙは、ここで説明している特定パスの輻輳状態であり、他パスの輻輳状態は含まない。
【００２２】
教師データ（ＸとＹ）が学習器に与えられると、学習器はＸとＹから関数形を作り出す。予測器は学習器が作り出した関数形を利用してパスの輻輳を予測する。図２を用いて最新の時刻ｔｓ＋１における予測について説明する。最新の時刻ｔｓ＋１のＮＷの状態ベクトルｘｓ＋１を各学習器に与えると、各学習器は、引数ｘｓ＋１に対して、関数形を利用して自身が担当するパスが輻輳しそうか否かを出力する（戻り値ｙｓ＋１）。予測器は、戻り値ｙｓ＋１の中から輻輳しないパスを選択してトラフィックを転送する。
【００２３】
［経路制御手法］
図４は、本実施形態の経路設定装置を説明するブロック図である。本経路設定装置は、
通信ネットワークＮＷの各ルータ（ｒ０、ｒ１、ｒ２）に対して設定されたパス毎に用意される学習器１２と、
全ての前記ルータのトラフィック情報、及び現在パケットを転送しているパスの輻輳情報を収集するとともに、前記設定されたパス毎の過去の前記トラフィック情報と前記輻輳情報の蓄積に追加し、前記蓄積を教師データとしてそれぞれの前記学習器の訓練を行う訓練器１３と、
全ての学習器１２に前記トラフィック情報を与え、学習器１２が出力する輻輳予測のうち、輻輳しないと予測される１つのパスを前記ルータに設定するパス予測設定を行う予測器１４と、
を備える。
なお、通信ネットワークＮＷの各ルータに対して設定されたパス毎に学習器１２を用意するともに、初期値として最短パスを設定する前処理器１１を備えてもよい。
【００２４】
本実施形態の経路設定装置は、リアルタイム学習によってネットワークの輻輳状態を早期に把握して回避する経路制御方法を実現する。当該経路制御方法は、
通信ネットワークＮＷの各ルータ（ｒ０、ｒ１、ｒ２）に対してパスを設定し、前記パス毎に学習器１２を用意する前処理手順と、
全ての前記ルータのトラフィック情報、及び現在パケットを転送しているパスの輻輳情報を収集するとともに、前記前処理手順で設定したパス毎の過去の前記トラフィック情報と前記輻輳情報の蓄積に追加し、前記蓄積を教師データとしてパス毎の学習器１２で機械学習を行う訓練手順と、
与えられた前記トラフィック情報に対し、前記訓練手順で行った前記機械学習の結果に基づく輻輳予測のうち、輻輳しないと予測される１つのパスを前記ルータに設定する予測手順と、
を行う。
【００２５】
図３は当該経路制御方法を説明するアルゴリズムである。１−６行目が前処理手順、８−１２行目が訓練手順、１３−１５行目が予測手順となる。なお、訓練手順と予測手順は、繰り返し実行される。
初期化手順では、トラフィックと輻輳状態の時系列データを初期化する（それぞれ１−３行目）。また、学習器も初期化する。このとき、学習器と輻輳状態は、パスごとに処理を行う。続いて、５行目で最短パスを選択し、そのパスに沿ってパケットが転送されるように、６行目で各ルータにパスを設定する。
訓練手順では、その時点でのトラフィック情報と輻輳状態を取得し（８−９行目）、過去の時系列データに追加する（１０−１１行目）。１２行目では、時系列データを用いて学習器を訓練し直す。
予測手順は、現在利用しているパスｐ＊が混雑しているときに実行される（１３行目）。１４行目では、最新のトラフィック情報を用いて輻輳しないパスを選択する。１５行目では、そのパスを各ルータに設定する。
【００２６】
以下、図４のネットワークを用いた具体例を説明する。ここでは、ルータｒ０からｒ２へのパスを担当する経路設定装置について説明するが、他のルータ間についても同様に処理を行う。
【００２７】
（１）前処理手順
前処理手順は、前処理器１１が行う手順である。
ｒ０−ｒ２間の二つのパスをｐ１、ｐ２とし、それぞれｐ１：ｒ０−＞ｒ２、ｐ２：ｒ０−＞ｒ１−＞ｒ２とする。ｒ０−ｒ２間のパスを担当する経路設定装置は、パス集合Ｐｒ０ｒ２＝｛ｐ１，ｐ２｝を作成する。本実施形態では、説明のため通信ネットワークのルータ数を３としているが、ルータ数を４以上でも同様である。ルータ数が多くなるとパス数が増加し、学習器の数も増加する。ここでは、前処理器１１は、ｒ０−ｒ２間にある二つのパスをともに集合Ｐｒ０ｒ２に含めたが、ルータ数が多い場合、パス長に上限を設けるなどの制限を課して一部のパスを除外してもよい（主要なパスのみ以下の手順を行う）。
トラフィックの時系列データをＸとし、空集合φで初期化する。
二つのパスそれぞれについて、学習器１２（Ｌｐ１、Ｌｐ２）を用意し、必要に応じて初期化処理を行っておく。具体的な処理は、機械学習の実装によって異なるため、省略する。
二つのパスそれぞれについて、輻輳状態の時系列データＹｐ１、Ｙｐ２を用意し、φで初期化する。
パス集合Ｐｒ０ｒ２から最短パスｐ１を選び、ｒ０からｒ２に向かうパケットのパスとする。具体的には、パス上のルータｒ０に次ホップとしてｒ２を設定することで、パケットがｐ１に従って転送されるようにする。
以下、１秒ごとに訓練・予測手順を繰り返す。
【００２８】
（２）訓練手順
訓練手順は、訓練器１３が行う手順である。
所定時間（例えば、最初の１秒）が経過し、訓練手順を開始する。全ルータｒ０、ｒ１、ｒ２から、トラフィック情報を取得する。ここではトラフィック情報として到着パケット数のみを考え、図５のような情報ｘ０を得られたとする。図５は、たとえばｒ０からｒ１へのパケットが３４個到着したことを意味する（図５の表を一列に並べたのが、図１のｃ０のｔ０の行である）。このトラフィック情報を、トラフィックの時系列データＸに追加する。トラフィック情報は、すべての経路設定装置が共通して利用する。
次に、ｒ０−ｒ２間の経路設定装置の訓練処理を説明する。
現在、ｒ０−ｒ２間のパスとしてｐ１を利用している。そこで、ｐ１を通過したパケットの輻輳状態を取得する。ここでは、通過時間が１ｍｓを超えていたかどうかを輻輳の基準とする。入り口ルータｒ０がパケットにタイムスタンプを書き込み、出口ルータｒ２が現在時刻との差を計算することで通過時間を計測する。この方法以外にも、ルータのキュー長から推測する方法なども利用できる。ここでは、ｐ１が輻輳していたとする。この輻輳状態を、ｐ１の時系列データＹｐ１に追加する。
ＸとＹｐ１を用いて、学習器１２（Ｌｐ１）を訓練する。具体的な処理は機械学習の実装によって異なるため、省略する。
【００２９】
（３）予測手順１
予測手順は、予測器１４が行う手順である。
利用していたパスｐ１が輻輳している場合、予測手順を実行する。まず、ｐ１以外のパスの学習器に対し、現在のトラフィック情報ｘ０を用いて輻輳状態を予測させる。ここでは、パスｐ２の学習器１２（Ｌｐ２）に予測を行わせる。学習器１２（Ｌｐ２）はまだ訓練を行っていない初期状態であるが、初期状態では「輻輳しない」という結果を返すものとする。
なお、運用の初期段階では、すべてのパスについて十分な訓練を行うために、輻輳と予測されたパスをあえて選ぶこともある。たとえば、あらかじめ設定した確率εで、輻輳状態にかかわらずランダムにパスを選択する（εグリーディー手法）。
予測器１４は、輻輳しないとされたｐ２を、ｒ０からｒ２に向かうパケットのパスとする。具体的には、ｒ０に次ホップとしてｒ１を設定し、ｒ１の次ホップとしてｒ２を設定する。
【００３０】
（４）予測手順２
上記のような訓練・予測をしばらく（たとえば６００秒ほど）繰り返し、二つの学習器１２（Ｌｐ１、Ｌｐ２）が何度も訓練されたとする。この時点で、ｒ０からｒ２に向かうパケットは、パスｐ１を利用していたとする。各学習器１２の訓練手順については上記と同じであるため省略し、以下で訓練が進んだ後の予測手順を説明する。
利用していたパスｐ１が輻輳していたため、予測器１４は予測手順２を実行する。まず、ｐ１以外のパスの学習器に対し、その時点でのトラフィック情報ｘ０を用いて輻輳状態を予測させる。ここでは、パスｐ２の学習器１２（Ｌｐ２）に予測を行わせる。その結果、学習器１２（Ｌｐ２）は輻輳しないと予測した。
予測器１４は、輻輳しないｐ２を、ｒ０からｒ２に向かうパケットのパスとする。具体的には、ｒ０に次ホップとしてｒ１を設定し、ｒ１の次ホップとしてｒ２を設定する。
【００３１】
（５）効果
パケットを転送するパス毎に予測手順を行うことで、各パスの学習器１２の関数形が正確となる。このため、既存のＯＳＰＦ等のルーティングプロトコルでは回避できない、突発的なトラフィックによる輻輳状態をオンライン学習にて検知及び予測することができるようになる。そして、輻輳を回避するパスを設定することで、ネットワーク遅延やパケットロス率を削減することができる。
【００３２】
図６に、９ルータのネットワークで行った数値実験の結果を示す。６００秒あたりで学習精度が十分に高まり、パケット損失率や遅延時間が大きく低下していることがわかる。なお、ネットワークの規模が大きくなる場合、深層学習技術を用いることで学習器の学習速度を向上させることができる。
【００３３】
本実施形態では、図４のように１台の経路設定装置が通信ネットワークＮＷを制御する形態を説明したが、本発明はこのような形態に限定されない。いずれかのルータが前処理部１１、学習器１２、訓練器１３、及び予測器１４を備え、ルータ間で情報交換し、通信ネットワークＮＷのパスを制御してもよい。また、それぞれのルータが前処理部１１、学習器１２、訓練器１３、及び予測器１４を備え、ルータ間で情報交換し、それぞれのルータが自律してネットワークＮＷのパスを制御してもよい。
【符号の説明】
【００３４】
１１：前処理器
１２：学習器
１３：訓練器
１４：予測器
ＮＷ：ネットワーク
【図１】
2019026684.tif 000003
【図２】
2019026684.tif 000004
【図３】
2019026684.tif 000005
【図４】
2019026684.tif 000006
【図５】
2019026684.tif 000007
【図６】
2019026684.tif 000008
【国際調査報告】
2019026684.tif 000009
2019026684.tif 000010