(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-12-26
(54)【発明の名称】ファンの回転速度制御方法、装置及びデバイス
(51)【国際特許分類】
F04D 27/00 20060101AFI20241219BHJP
G06F 1/20 20060101ALI20241219BHJP
H05K 7/20 20060101ALI20241219BHJP
【FI】
F04D27/00 P
G06F1/20 B
G06F1/20 D
H05K7/20 J
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024534220
(86)(22)【出願日】2022-09-06
(85)【翻訳文提出日】2024-06-06
(86)【国際出願番号】 CN2022117268
(87)【国際公開番号】W WO2024050685
(87)【国際公開日】2024-03-14
(81)【指定国・地域】
(71)【出願人】
【識別番号】524215454
【氏名又は名称】新華三人工智能科技有限公司
(74)【代理人】
【識別番号】110002468
【氏名又は名称】弁理士法人後藤特許事務所
(74)【代理人】
【識別番号】100230086
【氏名又は名称】譚 粟元
(72)【発明者】
【氏名】王 明輝
(72)【発明者】
【氏名】叶 挺
(72)【発明者】
【氏名】劉 全波
(72)【発明者】
【氏名】李 義
(72)【発明者】
【氏名】馬 国嵩
(72)【発明者】
【氏名】趙 素霞
(72)【発明者】
【氏名】張 洋
【テーマコード(参考)】
3H021
5E322
【Fターム(参考)】
3H021AA06
3H021AA08
3H021BA02
3H021BA06
3H021BA12
3H021BA16
3H021CA04
3H021DA22
3H021DA29
3H021EA02
5E322BB05
(57)【要約】
本発明は、ファンの回転速度制御方法、装置及びデバイスを提供し、該方法は、各ファンが現在採用している初期ファンデューティサイクルを決定するステップと、複数のファンの目標順序に基づいて、各ファンを候補ファンとして順次トラバースするステップと、候補ファンに対応する初期ファンデューティサイクルを複数回調整して、異なる複数の候補ファンデューティサイクルを得るステップと、各候補ファンデューティサイクルについて、候補ファンデューティサイクルでのネットワークデバイスの報酬データを取得し、報酬データに基づいて候補ファンデューティサイクルに対応する報酬パラメータ値を決定するステップと、複数の候補ファンデューティサイクルに対応する報酬パラメータ値から最適な報酬パラメータ値を選択し、最適な報酬パラメータ値に対応する候補ファンデューティサイクルを候補ファンに対応する目標ファンデューティサイクルとして決定するステップと、各ファンに対応する目標ファンデューティサイクルを得た後、各ファンに対応する目標ファンデューティサイクルに対応する回転速度に基づいて該ファンを制御するステップと、を含む。本発明の技術案により、各ファンの回転速度を効果的に制御し、ファンの消費電力及びノイズを低減する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
複数のファンを含むネットワークデバイスに適用されるファンの回転速度制御方法であって、前記ネットワークデバイスが調整すべき状態にある場合、
各ファンが現在採用している初期ファンデューティサイクルを決定するステップと、
前記複数のファンの目標順序に基づいて、各ファンを候補ファンとして順次トラバースするステップと、
前記候補ファンに対応する初期ファンデューティサイクルを複数回調整して、異なる複数の候補ファンデューティサイクルを得、各候補ファンデューティサイクルについて、前記候補ファンデューティサイクルでの前記ネットワークデバイスの報酬データを取得し、前記報酬データに基づいて前記候補ファンデューティサイクルに対応する報酬パラメータ値を決定し、前記複数の候補ファンデューティサイクルに対応する報酬パラメータ値から最適な報酬パラメータ値を選択し、前記最適な報酬パラメータ値に対応する候補ファンデューティサイクルを前記候補ファンに対応する目標ファンデューティサイクルとして決定するステップと、
各ファンに対応する目標ファンデューティサイクルを得た後、前記ネットワークデバイスが安定状態にある場合、各ファンに対応する目標ファンデューティサイクルに対応する回転速度に基づいて該ファンを制御するステップと、を含む、
ことを特徴とするファンの回転速度制御方法。
【請求項2】
各ファンに対応する目標ファンデューティサイクルを得た後、さらに、前記ネットワークデバイスが調整すべき状態にある場合、各ファンに対応する目標ファンデューティサイクルで該ファンに対応する初期ファンデューティサイクルを更新し、前記複数のファンの目標順序に基づいて、各ファンを候補ファンとして順次トラバースするステップの実行に戻るステップを含み、
目標条件を満たしているファンの総数が所定の閾値以上であれば、前記ネットワークデバイスが安定状態にあると決定し、そうでなければ、前記ネットワークデバイスが調整すべき状態にあると決定し、
各ファンについて、該ファンに対応する目標ファンデューティサイクルと該ファンに対応する初期ファンデューティサイクルとが同じであれば、該ファンは目標条件を満たしており、そうでなければ、該ファンは目標条件を満たしていない、
ことを特徴とする請求項1に記載の方法。
【請求項3】
前記報酬データに基づいて前記候補ファンデューティサイクルに対応する報酬パラメータ値を決定するステップは、
前記報酬データに基づいてシステム総電力及びファンデューティサイクル最大値を決定するステップであって、前記報酬データは各ファンに対応するファンデューティサイクルを含み、前記ファンデューティサイクル最大値は全てのファンデューティサイクルのうちの最大値であり、前記報酬データが電源電力を含む場合、前記電源電力に基づいてシステム総電力を決定し、前記報酬データが各ボードに対応する電力及び各ファンに対応する電力を含む場合、全てのボードに対応する電力及び全てのファンに対応する電力に基づいてシステム総電力を決定する、ステップと、
前記ファンデューティサイクル最大値に基づいて目標ノイズ値を決定するステップと、
前記システム総電力と、前記システム総電力に対応する第1の重み係数と、前記目標ノイズ値と、前記目標ノイズ値に対応する第2の重み係数とに基づいて、前記報酬パラメータ値を決定するステップと、を含む、
ことを特徴とする請求項1に記載の方法。
【請求項4】
前記第1の重み係数と前記第2の重み係数との和は固定値であり、
省エネルギーの重要性がノイズ低減の重要性より優れている場合、前記第1の重み係数は前記第2の重み係数より大きく、
ノイズ低減の重要性が省エネルギーの重要性より優れている場合、前記第1の重み係数は前記第2の重み係数より小さい、
ことを特徴とする請求項3に記載の方法。
【請求項5】
前記ネットワークデバイスが電源オンにされて起動した後、又は前記ネットワークデバイスが温度警報を発した後、
前記ネットワークデバイスの各ボードの温度値に基づいて、各ファンに対応する調整すべきファンデューティサイクルを決定するステップであって、各ファンに対応する調整すべきファンデューティサイクルに対応する回転速度に基づいてファンを制御すると、各ボードの温度値と目標温度値との差の絶対値を温度閾値より小さくすることができる、ステップと、
各ボードの温度値と目標温度値との差の絶対値が温度閾値より小さい場合、ネットワークデバイスが調整すべき状態にあると決定し、各ファンに対応する調整すべきファンデューティサイクルで該ファンに対応する初期ファンデューティサイクルを更新し、各ファンに対応する初期ファンデューティサイクルに対応する回転速度に基づいてファンを制御するステップと、を含む、
ことを特徴とする請求項1に記載の方法。
【請求項6】
前記ネットワークデバイスが安定状態にある場合、さらに、
前記ネットワークデバイスに対応する検出状態データを取得するステップと、
前記検出状態データを訓練済みの目標動作モデルに入力して、各ファンに対応する出力済みファンデューティサイクルを得るステップであって、異なるファンに対応する出力済みファンデューティサイクルは同じ又は異なる、ステップと、
各ファンに対応する出力済みファンデューティサイクルでの前記ネットワークデバイスの報酬データに基づいて、出力済みファンデューティサイクルに対応する第1の報酬パラメータ値を決定し、各ファンに対応する目標ファンデューティサイクルでの前記ネットワークデバイスの報酬データに基づいて、目標ファンデューティサイクルに対応する第2の報酬パラメータ値を決定するステップと、
第1の報酬パラメータ値が第2の報酬パラメータ値より優れている場合、前記ネットワークデバイスが調整すべき状態にあると決定し、各ファンに対応する出力済みファンデューティサイクルで該ファンに対応する初期ファンデューティサイクルを更新し、前記複数のファンの目標順序に基づいて、各ファンを候補ファンとして順次トラバースするステップの実行に戻るステップと、を含む、
ことを特徴とする請求項1に記載の方法。
【請求項7】
前記ネットワークデバイスに対応する検出状態データは、前記ネットワークデバイス内の各ボードに対応するセンサデータ、前記ネットワークデバイスに対応するシステムデータ、及び各ファンに対応する目標ファンデューティサイクルを含み、
各ボードに対応するセンサデータは、該ボード内のチップに対応する接合温度データ、該ボード内の各温度測定点に対応する最大温度、及び該ボードに対応する電力のうちの少なくとも1つを含み、前記システムデータは、環境温度、電源電力、及び各ファンに対応する電力のうちの少なくとも1つを含む、
ことを特徴とする請求項6に記載の方法。
【請求項8】
前記検出状態データを訓練済みの目標動作モデルに入力する前に、前記目標動作モデルの訓練プロセスは、
前記ネットワークデバイスが安定状態にある場合、前記ネットワークデバイスに対応するサンプル状態データを取得するステップと、
前記サンプル状態データを初期動作モデルに入力し、各ファンに対応するサンプルファンデューティサイクルを得、前記サンプル状態データ及び各ファンに対応するサンプルファンデューティサイクルを初期評価モデルに入力し、前記サンプル状態データに対応する状態動作値を得るステップと、
前記サンプル状態データに基づいて、前記状態動作値に対応する報酬パラメータ値を決定するステップと、
前記報酬パラメータ値及び前記状態動作値に基づいて前記初期動作モデル及び前記初期評価モデルを訓練し、訓練済みの目標動作モデル及び目標評価モデルを得るステップと、を含む、
ことを特徴とする請求項6に記載の方法。
【請求項9】
前記報酬パラメータ値及び前記状態動作値に基づいて前記初期動作モデル及び前記初期評価モデルを訓練し、訓練済みの目標動作モデル及び目標評価モデルを得るステップは、
前記状態動作値に基づいて初期動作モデルに対応する第1の誤差値を決定し、前記第1の誤差値に基づいて初期動作モデルのネットワークパラメータを調整し、調整後動作モデルを得、前記報酬パラメータ値及び前記状態動作値に基づいて初期評価モデルに対応する第2の誤差値を決定し、前記第2の誤差値に基づいて初期評価モデルのネットワークパラメータを調整し、調整後評価モデルを得るステップと、
調整後動作モデル及び調整後評価モデルが収束した場合、調整後動作モデルを前記目標動作モデルとして決定し、調整後評価モデルを前記目標評価モデルとして決定するステップと、
調整後動作モデル及び/又は調整後評価モデルが収束していない場合、調整後動作モデルを前記初期動作モデルとして決定し、調整後評価モデルを前記初期評価モデルとして決定し、前記サンプル状態データを初期動作モデルに入力するステップの実行に戻るステップと、を含む、
ことを特徴とする請求項8に記載の方法。
【請求項10】
複数のファンを含むネットワークデバイスに適用されるファンの回転速度制御装置であって、前記ネットワークデバイスが調整すべき状態にある場合、
各ファンが現在採用している初期ファンデューティサイクルを決定するための決定モジュールと、
前記複数のファンの目標順序に基づいて、各ファンを候補ファンとして順次トラバースし、前記候補ファンに対応する初期ファンデューティサイクルを複数回調整して、異なる複数の候補ファンデューティサイクルを得、各候補ファンデューティサイクルについて、前記候補ファンデューティサイクルでの前記ネットワークデバイスの報酬データを取得し、前記報酬データに基づいて前記候補ファンデューティサイクルに対応する報酬パラメータ値を決定し、前記複数の候補ファンデューティサイクルに対応する報酬パラメータ値から最適な報酬パラメータ値を選択し、前記最適な報酬パラメータ値に対応する候補ファンデューティサイクルを前記候補ファンに対応する目標ファンデューティサイクルとして決定するための処理モジュールと、
各ファンに対応する目標ファンデューティサイクルを得た後、前記ネットワークデバイスが安定状態にある場合、各ファンに対応する目標ファンデューティサイクルに対応する回転速度に基づいて該ファンを制御するための制御モジュールと、を含む、
ことを特徴とするファンの回転速度制御装置。
【請求項11】
前記処理モジュールが、各ファンに対応する目標ファンデューティサイクルを得た後、さらに、前記ネットワークデバイスが調整すべき状態にある場合、各ファンに対応する目標ファンデューティサイクルで該ファンに対応する初期ファンデューティサイクルを更新し、前記複数のファンの目標順序に基づいて、各ファンを候補ファンとして順次トラバースすることの実行に戻るために用いられ、
目標条件を満たしているファンの総数が所定の閾値以上であれば、前記ネットワークデバイスが安定状態にあり、そうでなければ、前記ネットワークデバイスが調整すべき状態にあり、
各ファンについて、該ファンに対応する目標ファンデューティサイクルと該ファンに対応する初期ファンデューティサイクルとが同じであれば、該ファンは目標条件を満たしており、そうでなければ、該ファンは目標条件を満たしていない、
ことを特徴とする請求項10に記載の装置。
【請求項12】
前記処理モジュールが、前記報酬データに基づいて前記候補ファンデューティサイクルに対応する報酬パラメータ値を決定する時、具体的に、
前記報酬データに基づいてシステム総電力及びファンデューティサイクル最大値を決定し、
前記ファンデューティサイクル最大値に基づいて目標ノイズ値を決定し、
前記システム総電力と、前記システム総電力に対応する第1の重み係数と、前記目標ノイズ値と、前記目標ノイズ値に対応する第2の重み係数とに基づいて、前記報酬パラメータ値を決定するために用いられ、
前記報酬データは各ファンに対応するファンデューティサイクルを含み、前記ファンデューティサイクル最大値は全てのファンデューティサイクルのうちの最大値であり、前記報酬データが電源電力を含む場合、前記電源電力に基づいてシステム総電力を決定し、前記報酬データが各ボードに対応する電力及び各ファンに対応する電力を含む場合、全てのボードに対応する電力及び全てのファンに対応する電力に基づいてシステム総電力を決定する、
ことを特徴とする請求項10に記載の装置。
【請求項13】
前記ネットワークデバイスが電源オンにされて起動した後、又は前記ネットワークデバイスが温度警報を発した後、前記決定モジュールは、さらに、前記ネットワークデバイスの各ボードの温度値に基づいて、各ファンに対応する調整すべきファンデューティサイクルを決定するために用いられ、各ファンに対応する調整すべきファンデューティサイクルに対応する回転速度に基づいてファンを制御すると、各ボードの温度値と目標温度値との差の絶対値を温度閾値より小さくすることができ、
前記決定モジュールは、さらに、各ボードの温度値と目標温度値との差の絶対値が温度閾値より小さい場合、前記ネットワークデバイスが調整すべき状態にあると決定し、各ファンに対応する調整すべきファンデューティサイクルで該ファンに対応する初期ファンデューティサイクルを更新するために用いられ、
前記制御モジュールは、さらに、各ファンに対応する初期ファンデューティサイクルに対応する回転速度に基づいてファンを制御するために用いられる、
ことを特徴とする請求項10に記載の装置。
【請求項14】
前記ネットワークデバイスが安定状態にある場合、前記処理モジュールは、さらに、
前記ネットワークデバイスに対応する検出状態データを取得し、
前記検出状態データを訓練済みの目標動作モデルに入力して、各ファンに対応する出力済みファンデューティサイクルを得、
各ファンに対応する出力済みファンデューティサイクルでの前記ネットワークデバイスの報酬データに基づいて、出力済みファンデューティサイクルに対応する第1の報酬パラメータ値を決定し、各ファンに対応する目標ファンデューティサイクルでの前記ネットワークデバイスの報酬データに基づいて、目標ファンデューティサイクルに対応する第2の報酬パラメータ値を決定し、
第1の報酬パラメータ値が第2の報酬パラメータ値より優れている場合、前記ネットワークデバイスが調整すべき状態にあると決定し、各ファンに対応する出力済みファンデューティサイクルで該ファンに対応する初期ファンデューティサイクルを更新し、前記複数のファンの目標順序に基づいて、各ファンを候補ファンとして順次トラバースすることの実行に戻るために用いられ、
異なるファンに対応する出力済みファンデューティサイクルは同じ又は異なる、
ことを特徴とする請求項10に記載の装置。
【請求項15】
訓練によって前記目標動作モデルを得るための訓練モジュールをさらに含み、
前記訓練モジュールが訓練によって前記目標動作モデルを得る時、具体的に、
前記ネットワークデバイスが安定状態にある場合、前記ネットワークデバイスに対応するサンプル状態データを取得し、
前記サンプル状態データを初期動作モデルに入力し、各ファンに対応するサンプルファンデューティサイクルを得、前記サンプル状態データ及び各ファンに対応するサンプルファンデューティサイクルを初期評価モデルに入力し、前記サンプル状態データに対応する状態動作値を得、
前記サンプル状態データに基づいて、前記状態動作値に対応する報酬パラメータ値を決定し、
前記報酬パラメータ値及び前記状態動作値に基づいて前記初期動作モデル及び前記初期評価モデルを訓練し、訓練済みの目標動作モデル及び目標評価モデルを得るために用いられる、
ことを特徴とする請求項14に記載の装置。
【請求項16】
前記訓練モジュールが、前記報酬パラメータ値及び前記状態動作値に基づいて前記初期動作モデル及び前記初期評価モデルを訓練し、訓練済みの目標動作モデル及び目標評価モデルを得る時、具体的に、
前記状態動作値に基づいて初期動作モデルに対応する第1の誤差値を決定し、前記第1の誤差値に基づいて初期動作モデルのネットワークパラメータを調整し、調整後動作モデルを得、前記報酬パラメータ値及び前記状態動作値に基づいて初期評価モデルに対応する第2の誤差値を決定し、前記第2の誤差値に基づいて前記初期評価モデルのネットワークパラメータを調整し、調整後評価モデルを得、
前記調整後動作モデル及び前記調整後評価モデルが収束した場合、調整後動作モデルを前記目標動作モデルとして決定し、調整後評価モデルを前記目標評価モデルとして決定し、
前記調整後動作モデル及び/又は前記調整後評価モデルが収束していない場合、調整後動作モデルを前記初期動作モデルとして決定し、調整後評価モデルを前記初期評価モデルとして決定し、前記サンプル状態データを初期動作モデルに入力するステップの実行に戻るために用いられる、
ことを特徴とする請求項15に記載の装置。
【請求項17】
プロセッサ及び機械可読記憶媒体を含むネットワークデバイスであって、前記機械可読記憶媒体には、前記プロセッサによって実行可能な機械実行可能命令が記憶され、前記プロセッサは、機械実行可能命令を実行して、請求項1~9のいずれか1項に記載の方法のステップを実施するために用いられる、
ことを特徴とするネットワークデバイス。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信技術分野に関し、特に、ファンの回転速度制御方法、装置及びデバイスに関する。
【背景技術】
【0002】
ネットワークデバイス(例えば、ルータ、スイッチなど)は、複数のボード(例えば、マスターコントロールボード、インターフェースボード、サービスボードなど)を含んでもよく、これらのボードの動作過程において、異なるボードの消費電力の差が大きく、例えば、ボードの消費電力がわずか100Wの場合もあるし、ボードの消費電力が600Wを超える場合もあり、複数のボードがいずれも大きい消費電力で動作する場合、ネットワークデバイスの温度が高くなり、ネットワークデバイスが故障しやすくなる。
【0003】
ネットワークデバイスを冷却するために、通常、ネットワークデバイスに複数のファンが配置され、ファンの回転速度が大きいほど、ネットワークデバイスの冷却効果が良くなり、ファンの回転速度が小さいほど、ネットワークデバイスの冷却効果が悪くなる。ファンの回転速度が大きいほど、ファンのノイズが大きくなり、且つファンの消費電力が大きくなり、エネルギーの浪費を招く。ファンの回転速度が小さいほど、ファンのノイズが小さくなり、且つファンの消費電力が小さくなり、エネルギーの浪費が抑えられる。
【0004】
以上から分かるように、ファンの回転速度が大きいほど、ネットワークデバイスの冷却効果が良くなるが、ファンのノイズが大きくなり、且つファンの消費電力が大きくなり、ファンの回転速度が小さいほど、ネットワークデバイスの冷却効果が悪くなるが、ファンのノイズが小さくなり、且つファンの消費電力が小さくなるため、ファンの回転速度を制御する必要があり、ネットワークデバイスの温度が高すぎることを回避した上で、ファンのノイズが小さく且つファンの消費電力が小さいことを保証し、省エネルギーとノイズ低減の目的を達成する。
【0005】
しかし、どのようにファンの回転速度を制御すれば、ファンの低ノイズと低消費電力を保証しつつ、ネットワークデバイスの温度が高すぎることを回避できるかについては、関連技術において効果的な実現方式がない。
【発明の概要】
【0006】
本発明は、複数のファンを含むネットワークデバイスに適用されるファンの回転速度制御方法であって、前記ネットワークデバイスが調整すべき状態にある場合、
各ファンが現在採用している初期ファンデューティサイクルを決定するステップと、
前記複数のファンの目標順序に基づいて、各ファンを候補ファンとして順次トラバースするステップと、
前記候補ファンに対応する初期ファンデューティサイクルを複数回調整して、異なる複数の候補ファンデューティサイクルを得、各候補ファンデューティサイクルについて、前記候補ファンデューティサイクルでの前記ネットワークデバイスの報酬データを取得し、前記報酬データに基づいて前記候補ファンデューティサイクルに対応する報酬パラメータ値を決定し、前記複数の候補ファンデューティサイクルに対応する報酬パラメータ値から最適な報酬パラメータ値を選択し、前記最適な報酬パラメータ値に対応する候補ファンデューティサイクルを前記候補ファンに対応する目標ファンデューティサイクルとして決定するステップと、
各ファンに対応する目標ファンデューティサイクルを得た後、前記ネットワークデバイスが安定状態にある場合、各ファンに対応する目標ファンデューティサイクルに対応する回転速度に基づいて該ファンを制御するステップと、を含む、ファンの回転速度制御方法を提供する。
【0007】
本発明は、複数のファンを含むネットワークデバイスに適用されるファンの回転速度制御装置であって、前記ネットワークデバイスが調整すべき状態にある場合、
各ファンが現在採用している初期ファンデューティサイクルを決定するための決定モジュールと、
前記複数のファンの目標順序に基づいて、各ファンを候補ファンとして順次トラバースし、前記候補ファンに対応する初期ファンデューティサイクルを複数回調整して、異なる複数の候補ファンデューティサイクルを得、各候補ファンデューティサイクルについて、前記候補ファンデューティサイクルでの前記ネットワークデバイスの報酬データを取得し、前記報酬データに基づいて前記候補ファンデューティサイクルに対応する報酬パラメータ値を決定し、前記複数の候補ファンデューティサイクルに対応する報酬パラメータ値から最適な報酬パラメータ値を選択し、前記最適な報酬パラメータ値に対応する候補ファンデューティサイクルを前記候補ファンに対応する目標ファンデューティサイクルとして決定するための処理モジュールと、
各ファンに対応する目標ファンデューティサイクルを得た後、前記ネットワークデバイスが安定状態にある場合、各ファンに対応する目標ファンデューティサイクルに対応する回転速度に基づいて該ファンを制御するための制御モジュールと、を含む、ファンの回転速度制御装置を提供する。
【0008】
本発明は、プロセッサ及び機械可読記憶媒体を含むネットワークデバイスであって、前記機械可読記憶媒体には、前記プロセッサによって実行可能な機械実行可能命令が記憶され、前記プロセッサは、機械実行可能命令を実行して、上記のファンの回転速度制御方法を実施するために用いられる、ネットワークデバイスを提供する。
【0009】
以上の技術案から分かるように、本発明の実施例では、ファンに対応する初期ファンデューティサイクルを複数回調整して、異なる複数の候補ファンデューティサイクルを得、複数の候補ファンデューティサイクルに対応する報酬パラメータ値から最適な報酬パラメータ値を選択し、最適な報酬パラメータ値に対応する候補ファンデューティサイクルをファンに対応する目標ファンデューティサイクルとして決定することにより、各ファンに対応する目標ファンデューティサイクルを得る。各ファンに対応する目標ファンデューティサイクルに基づいて該ファンの回転速度を決定することにより、各ファンの回転速度を効果的に制御し、ファンの消費電力及びノイズを低減し、ネットワークデバイスの温度が高すぎることを回避した上で、ファンのノイズが小さく且つファンの消費電力が小さいことを保証し、省エネルギーとノイズ低減の目的を達成し、ネットワークデバイスの省エネルギーとノイズ低減の要求を満たし、騒音公害を低減し、粉塵などの空気中の有害物質の吸い込みを低減し、ネットワークデバイスに対する腐食の低減に有利である。
【図面の簡単な説明】
【0010】
本発明の実施例又は従来技術における技術案をより明確に説明するために、以下、本発明の実施例又は従来技術の説明に使用する必要がある図面を簡単に説明し、明らかに、以下の説明における図面は本発明に記載されたいくつかの実施例に過ぎず、当業者にとって、本発明の実施例のこれらの図面に基づいて他の図面を得ることもできる。
【
図1】本発明の一実施形態に係るファンの回転速度制御方法のフローを示す概略図である。
【
図2】本発明の一実施形態に係るファンの回転速度制御を示す模式図である。
【
図3】本発明の一実施形態に係るDDPGアルゴリズムモデルを示す概略図である。
【
図4】本発明の一実施形態に係るファンの回転速度制御装置の構造を示す模式図である。
【
図5】本発明の一実施形態に係るネットワークデバイスのハードウェア構造を示す図である。
【発明を実施するための形態】
【0011】
本発明の実施例で使用される用語は、特定の実施例を説明するためのものに過ぎず、本発明を限定するものではない。本発明及び特許請求の範囲で使用される単数形の「1種」、「前記」及び「該」は、文脈が他の意味を明確に示さない限り、複数形を含むことも意図している。また、本発明で使用される用語「及び/又は」は、1つ又は複数の関連する列挙された項目の任意又は全ての可能な組み合わせを含むことを意味することを理解されたい。
【0012】
本発明の実施例では、様々な情報を説明するために第1、第2、第3などの用語を使用することがあるが、これらの情報はこれらの用語に限定されるものではないことを理解されたい。これらの用語は、同じタイプの情報を区別するためにのみ使用される。例えば、本発明の範囲を逸脱しない場合、第1の情報は第2の情報と呼ばれてもよく、同様に、第2の情報は第1の情報と呼ばれてもよい。文脈に応じて、使用される単語「…場合」は、「…と」、「…時」又は「決定に応答して」と解釈されてもよい。
【0013】
本発明の実施例は、ネットワークデバイス(例えば、ルータ、スイッチなど)に適用可能なファンの回転速度制御方法を提供し、該ネットワークデバイスは、複数のファンを含んでもよく、
図1は、該ファンの回転速度制御方法のフローを示す概略図であり、該ファンの回転速度制御方法は、以下のステップを含んでもよい。
【0014】
ステップ101において、ネットワークデバイスが調整すべき状態にある場合、各ファンが現在採用している初期ファンデューティサイクル(fan duty cycle)を決定する。例えば、現時点で、あるファンデューティサイクルに対応する回転速度でファンを制御している場合、該ファンデューティサイクルを該ファンが現在採用している初期ファンデューティサイクルとして決定してもよい。
【0015】
ステップ102において、複数のファンの目標順序に基づいて、各ファンを候補ファンとして順次トラバースする。
【0016】
ステップ103において、現在トラバースされている候補ファンに対応する初期ファンデューティサイクルを複数回調整して、異なる複数の候補ファンデューティサイクルを得、各候補ファンデューティサイクルについて、該候補ファンデューティサイクルでのネットワークデバイスの報酬データ(reward data)を取得し、該報酬データに基づいて該候補ファンデューティサイクルに対応する報酬パラメータ値を決定し、複数の候補ファンデューティサイクルに対応する報酬パラメータ値から最適な報酬パラメータ値を選択し、最適な報酬パラメータ値に対応する候補ファンデューティサイクルを該候補ファンに対応する目標ファンデューティサイクルとして決定する。
【0017】
例示的に、該報酬データに基づいて該候補ファンデューティサイクルに対応する報酬パラメータ値を決定するステップは、該報酬データに基づいてシステム総電力及びファンデューティサイクル最大値を決定するステップであって、該報酬データは各ファンに対応するファンデューティサイクルを含み、該ファンデューティサイクル最大値は全てのファンデューティサイクルのうちの最大値であり、該報酬データが電源電力を含む場合、電源電力に基づいてシステム総電力を決定し、該報酬データが各ボードに対応する電力及び各ファンに対応する電力を含む場合、全てのボードに対応する電力及び全てのファンに対応する電力に基づいてシステム総電力を決定する、ステップと、該ファンデューティサイクル最大値に基づいて目標ノイズ値を決定するステップと、システム総電力と、システム総電力に対応する第1の重み係数と、目標ノイズ値と、目標ノイズ値に対応する第2の重み係数とに基づいて、該報酬パラメータ値を決定するステップと、を含んでもよいが、これらに限定されない。
【0018】
例示的に、第1の重み係数と第2の重み係数との和は固定値(例えば1)であってもよく、省エネルギーの重要性がノイズ低減の重要性より優れている場合、第1の重み係数は第2の重み係数より大きくてもよく、ノイズ低減の重要性が省エネルギーの重要性より優れている場合、第1の重み係数は第2の重み係数より小さくてもよい。
【0019】
ステップ104において、各ファンに対応する目標ファンデューティサイクルを得た後、ネットワークデバイスが安定状態にある場合、各ファンに対応する目標ファンデューティサイクルに対応する回転速度に基づいて該ファンを制御する。
【0020】
1つの可能な実施形態では、各ファンに対応する目標ファンデューティサイクルを得た後、ネットワークデバイスが依然として調整すべき状態にある場合、各ファンに対応する目標ファンデューティサイクルで該ファンに対応する初期ファンデューティサイクルを更新し、複数のファンの目標順序に基づいて、各ファンを候補ファンとして順次トラバースするステップの実行に戻り、即ちステップ102の実行に戻ってもよい。ステップ102を再実行する場合、複数のファンの目標順序は変更されてもよく、複数のファンの目標順序は変更されなくてもよい。
【0021】
例示的に、目標条件を満たしているファンの総数が所定の閾値(経験に基づいて設定してもよく、例えば、全てのファンの数*a%、aは100、90などであってもよい)以上であれば、ネットワークデバイスが安定状態にあると決定してもよく、そうでなければ、目標条件を満たしているファンの総数が所定の閾値未満であれば、ネットワークデバイスが調整すべき状態にあると決定してもよい。ここで、各ファンについて、該ファンに対応する目標ファンデューティサイクルと該ファンに対応する初期ファンデューティサイクルとが同じであれば、該ファンが目標条件を満たしており(即ち、該ファンが局所的に最適な(locally-optimal)状態に調整されたことを示す)、そうでなければ、該ファンに対応する目標ファンデューティサイクルと該ファンに対応する初期ファンデューティサイクルとが同じでなければ、該ファンが目標条件を満たしていない。
【0022】
1つの可能な実施形態では、ネットワークデバイスが電源オンにされて起動した後、又はネットワークデバイスが温度警報を発した後、ネットワークデバイスの各ボードの温度値に基づいて、各ファンに対応する調整すべきファンデューティサイクルを決定してもよく、ここで、各ファンに対応する調整すべきファンデューティサイクルに対応する回転速度に基づいて該ファンを制御すると、各ボードの温度値と目標温度値との差の絶対値を温度閾値より小さくすることができる。各ボードの温度値と目標温度値との差の絶対値が温度閾値より小さい場合、ネットワークデバイスが調整すべき状態にあると決定し、各ファンに対応する調整すべきファンデューティサイクルで該ファンに対応する初期ファンデューティサイクルを更新し、各ファンに対応する初期ファンデューティサイクルに対応する回転速度に基づいてファンを制御してもよい。
【0023】
1つの可能な実施形態では、ネットワークデバイスが安定状態にある場合、ネットワークデバイスに対応する検出状態データを取得し、該検出状態データを訓練済みの目標動作モデルに入力して、各ファンに対応する出力済みファンデューティサイクルを得てもよく、ここで、異なるファンに対応する出力済みファンデューティサイクルは同じ又は異なる。各ファンに対応する出力済みファンデューティサイクルでのネットワークデバイスの報酬データに基づいて、出力済みファンデューティサイクルに対応する第1の報酬パラメータ値を決定し、各ファンに対応する目標ファンデューティサイクルでのネットワークデバイスの報酬データに基づいて、目標ファンデューティサイクルに対応する第2の報酬パラメータ値を決定する。第1の報酬パラメータ値が第2の報酬パラメータ値より優れている場合、ネットワークデバイスが調整すべき状態にあると決定し、各ファンに対応する出力済みファンデューティサイクルで該ファンに対応する初期ファンデューティサイクルを更新し、複数のファンの目標順序に基づいて、各ファンを候補ファンとして順次トラバースするステップの実行に戻り、即ちステップ102の実行に戻る。
【0024】
例示的に、ネットワークデバイスに対応する検出状態データは、ネットワークデバイス内の各ボードに対応するセンサデータ、ネットワークデバイスに対応するシステムデータ、及び各ファンに対応する目標ファンデューティサイクルを含んでもよいが、これらに限定されない。各ボードに対応するセンサデータは、該ボード内のチップに対応する接合温度(junction temperature)データ、該ボード内の各温度測定点に対応する最大温度、及び該ボードに対応する電力のうちの少なくとも1つを含み、システムデータは、環境温度、電源電力、及び各ファンに対応する電力のうちの少なくとも1つを含む。
【0025】
例示的に、検出状態データを目標動作モデルに入力する前に、目標動作モデルを訓練してもよく、目標動作モデルの訓練プロセスは、ネットワークデバイスが安定状態にある場合、ネットワークデバイスに対応するサンプル状態データを取得するステップと、サンプル状態データを初期動作モデルに入力し、各ファンに対応するサンプルファンデューティサイクルを得るステップと、サンプル状態データ及び各ファンに対応するサンプルファンデューティサイクルを初期評価モデルに入力し、サンプル状態データに対応する状態動作値を得るステップと、サンプル状態データに基づいて、状態動作値に対応する報酬パラメータ値を決定するステップと、報酬パラメータ値及び状態動作値に基づいて初期動作モデル及び初期評価モデルを訓練し、訓練済みの目標動作モデル及び目標評価モデルを得るステップと、を含んでもよい。
【0026】
例示的に、報酬パラメータ値及び状態動作値に基づいて初期動作モデル及び初期評価モデルを訓練し、訓練済みの目標動作モデル及び目標評価モデルを得るステップは、該状態動作値に基づいて初期動作モデルに対応する第1の誤差値を決定し、該第1の誤差値に基づいて初期動作モデルのネットワークパラメータを調整し、調整後動作モデルを得、該報酬パラメータ値及び該状態動作値に基づいて初期評価モデルに対応する第2の誤差値を決定し、該第2の誤差値に基づいて初期評価モデルのネットワークパラメータを調整し、調整後評価モデルを得るステップと、調整後動作モデル及び調整後評価モデルが収束した場合、調整後動作モデルを目標動作モデルとして決定し、調整後評価モデルを目標評価モデルとして決定するステップと、調整後動作モデル及び/又は調整後評価モデルが収束していない場合、調整後動作モデルを初期動作モデルとして決定し、調整後評価モデルを初期評価モデルとして決定し、サンプル状態データを初期動作モデルに入力するステップの実行に戻るステップと、を含んでもよいが、これらに限定されない。
【0027】
例示的に、該状態動作値に基づいて初期動作モデルに対応する第1の誤差値を決定するステップは、L(Θv)=-critic(s,a)という式に基づいて前記第1の誤差値を決定するステップを含んでもよいが、これに限定されない。該報酬パラメータ値及び該状態動作値に基づいて初期評価モデルに対応する第2の誤差値を決定するステップは、式L(Θu)=1/2(r’-critic(s,a))2という式に基づいて前記第2の誤差値を決定するステップを含んでもよいが、これに限定されない。上式において、L(Θv)は第1の誤差値を表し、L(Θu)は第2の誤差値を表し、sはサンプル状態データを表し、aはサンプルファンデューティサイクルを表し、critic(s,a)は状態動作値を表し、r’は報酬パラメータ値を表す。
【0028】
以上の技術案から分かるように、本発明の実施例では、ファンに対応する初期ファンデューティサイクルを複数回調整して、異なる複数の候補ファンデューティサイクルを得、複数の候補ファンデューティサイクルに対応する報酬パラメータ値から最適な報酬パラメータ値を選択し、最適な報酬パラメータ値に対応する候補ファンデューティサイクルをファンに対応する目標ファンデューティサイクルとして決定することにより、各ファンに対応する目標ファンデューティサイクルを得る。各ファンに対応する目標ファンデューティサイクルに基づいて該ファンの回転速度を決定することにより、各ファンの回転速度を効果的に制御し、ファンの消費電力及びノイズを低減し、ネットワークデバイスの温度が高すぎることを回避した上で、ファンのノイズが小さく且つファンの消費電力が小さいことを保証し、省エネルギーとノイズ低減の目的を達成し、ネットワークデバイスの省エネルギーとノイズ低減の要求を満たし、騒音公害を低減し、粉塵などの空気中の有害物質の吸い込みを低減し、ネットワークデバイスに対する腐食の低減に有利である。
【0029】
以下、具体的な適用シナリオと組み合わせて、本発明の実施例の技術案を説明する。
【0030】
ネットワークデバイス(例えば、ルータ、スイッチなど、スイッチはシャーシスイッチ(chassis switch)であってもよい)は、複数のボード(例えば、マスターコントロールボード、インターフェースボード、サービスボードなど)及び複数のファンを含んでもよく、これらのボードの動作過程において、ネットワークデバイスの温度が上昇し、ファンは、ネットワークデバイスの温度が高すぎることを回避するために、ネットワークデバイスを冷却し、ネットワークデバイスの故障を回避する。明らかに、ファンの回転速度が大きいほど、ネットワークデバイスの冷却効果が良くなり、ファンの回転速度が小さいほど、ネットワークデバイスの冷却効果が悪くなる。しかし、ファンの回転速度が大きいほど、ファンのノイズが大きくなり、且つファンの消費電力が大きくなり、エネルギーの浪費を招く。ファンの回転速度が小さいほど、ファンのノイズが小さくなり、且つファンの消費電力が小さくなり、エネルギーの浪費が抑えられる。
【0031】
以上から分かるように、ファンの回転速度が大きいほど、ネットワークデバイスの冷却効果が良くなるが、ファンのノイズが大きくなり、且つファンの消費電力が大きくなり、ファンの回転速度が小さいほど、ネットワークデバイスの冷却効果が悪くなるが、ファンのノイズが小さくなり、且つファンの消費電力が小さくなるため、ファンの回転速度を制御する必要があり、ネットワークデバイスの温度が高すぎることを回避した上で、ファンのノイズが小さく且つファンの消費電力が小さいことを保証し、省エネルギーとノイズ低減の目的を達成する。
【0032】
しかし、どのようにファンの回転速度を制御すれば、ファンの低ノイズと低消費電力を保証しつつ、ネットワークデバイスの温度が高すぎることを回避できるかについては、関連技術において効果的な実現方式がない。
【0033】
例えば、ファンの回転速度をできるだけ低下させることにより、ファンのノイズ及びファンの消費電力を低減することができるが、ファンの回転速度が低すぎると、ネットワークデバイスの温度が上昇し、ネットワークデバイス内部の高電力チップの場合、ネットワークデバイスの温度が上昇するにつれて、高電力チップの電力が温度とともに上昇し、即ち、ネットワークデバイス全体の消費電力がより大きくなり、即ち、ファンの回転速度が低下すると、全体の消費電力がより大きくなる。
【0034】
また、例えば、経験温度を設定し、ネットワークデバイスの温度が該経験温度より高い場合、ファンの回転速度を増加させ、ネットワークデバイスの温度が該経験温度より低い場合、ファンの回転速度を低下させることができる。しかしながら、経験温度を正確に設定することが困難であり、経験温度が適切でない場合、ファンの回転速度が繰り返し調整され、ネットワークデバイスの温度が上下変動する。例えば、ファンの回転速度が増加すると、ネットワークデバイスの温度が該経験温度より低くなるため、ファンの回転速度が低下し、ファンの回転速度が低下すると、ネットワークデバイスの温度が該経験温度より高くなり、ファンの回転速度が増加するため、ファンの回転速度の調整に変動が発生する。
【0035】
上記の知見について、ネットワークデバイスの省エネルギーとノイズ低減の要求を満たすために、本発明の実施例は、PID(Proportion Integral Differential、比例積分微分)アルゴリズム、Greedyアルゴリズム(貪欲なアルゴリズム)、及びDDPG(Deep Deterministic Policy Gradient、深層決定的方策勾配)アルゴリズムを組み合わせてファンの回転速度の制御を実現できるファンの回転速度制御方法を提供し、各ファンの回転速度を効果的に制御し、ファンの電力消費及びノイズを低減し、ネットワークデバイスの温度が高すぎることを回避することができる。
【0036】
図2に示すように、ネットワークデバイスが電源オンにされて起動した後、ネットワークデバイスが電源オン起動状態にあると決定し、ネットワークデバイスが電源オン起動状態にある場合、各ボードの温度値と目標温度値との差の絶対値が温度閾値より小さくなるまで、PIDアルゴリズムを用いてファンの回転速度の制御を実現し、ネットワークデバイスが調整すべき状態にあると決定する。ネットワークデバイスが調整すべき状態にある場合、各ファンの局所的な最適解(即ち、局所的に最適なファンデューティサイクルであり、ファンの目標ファンデューティサイクルと記す)を見つけるまで、Greedyアルゴリズムを用いてファンの回転速度の制御を実現し、各ファンの目標ファンデューティサイクルを用いてファンの回転速度の制御を実現し、ネットワークデバイスが安定状態にあると決定し、即ち、ネットワークデバイスが局所的に最適な安定状態に達したと決定する。
【0037】
Greedyアルゴリズムプロセスにおいて収集されたデータは、DDPGモデルを訓練するために用いられ得、ネットワークデバイスが安定状態にある場合、DDPGモデルを用いてGreedyアルゴリズムを再起動する必要があるか否かを決定してもよく、例えば、DDPGモデルに基づいて安定状態での環境及び電力が変化したと決定した場合、Greedyアルゴリズムは次の局所的な最適解を再び見つけるようにトリガされ、即ち、ネットワークデバイスが調整すべき状態にあると再決定し、各ファンの目標ファンデューティサイクルを見つけるまで、Greedyアルゴリズムを用いてファンの回転速度の制御を実現し、各ファンの目標ファンデューティサイクルを用いてファンの回転速度の制御を実現し、ネットワークデバイスが安定状態にあると決定する。
【0038】
上記技術的思想に基づいて、本発明の実施例の技術案は、以下のプロセスに関する。
【0039】
第1に、ネットワークデバイスが電源オンにされて起動した後、ネットワークデバイスの各ボードの温度値に基づいて、各ファンに対応する調整すべきファンデューティサイクルを決定し、各ファンに対応する調整すべきファンデューティサイクルに対応する回転速度に基づいて該ファンを制御する(例えば、ファン1に対応する調整すべきファンデューティサイクルに対応する回転速度に基づいてファン1を制御し、ファン2に対応する調整すべきファンデューティサイクルに対応する回転速度に基づいてファン2を制御するなど)。各ファンに対応する調整すべきファンデューティサイクルに対応する回転速度に基づいて該ファンを制御する場合、各ファンに対応する調整すべきファンデューティサイクルを連続的に調整することにより、各ボードの温度値と目標温度値との差の絶対値が温度閾値(経験に基づいて設定してもよい)より小さくすることができ、即ち、差の絶対値が温度閾値より大きい場合、ファンに対応する調整すべきファンデューティサイクルを増加させてボードの温度値を低下させ、差の絶対値が温度閾値より小さい場合、ファンに対応する調整すべきファンデューティサイクルを低下させてボードの温度値を増加させることができる。明らかに、各ファンに対応する調整すべきファンデューティサイクルを繰り返し調整することにより、最終的に各ボードの温度値と目標温度値との差の絶対値を温度閾値より小さくする。
【0040】
1つの可能な実施形態では、ネットワークデバイスの各ボードの温度値に基づいて、PIDアルゴリズムを用いて各ファンに対応する調整すべきファンデューティサイクルを決定し、PIDアルゴリズムに基づいて各ファンに対応する調整すべきファンデューティサイクルを連続的に調整することにより、各ボードの温度値と目標温度値との差の絶対値を温度閾値より小さくし、PIDアルゴリズムを用いて調整すべきファンデューティサイクルを決定するプロセスについて、本実施例では限定しない。
【0041】
以上をまとめると、本実施例では、ネットワークデバイスが電源オンにされて起動した後、温度及び消費電力などの変化が速いため、ネットワークデバイスの安全を確保するために、まずPIDアルゴリズムを用いて各ファンに対応する調整すべきファンデューティサイクルを連続的に調整し、各ボードの温度値が安定値に達するようにしてもよく、ボードの温度値が安定値に達することは、ボードの温度値と目標温度値との差の絶対値が温度閾値より小さく、即ち、ボードの温度値が目標温度値付近にあり、目標温度値付近でわずかに変動していることを意味する。
【0042】
例示的に、各ボードの温度値と目標温度値との差の絶対値が温度閾値より小さい場合、即ち、各ボードの温度値が安定値に達した場合、ネットワークデバイスが調整すべき状態にあると決定してもよい。ネットワークデバイスが調整すべき状態にある場合、PIDアルゴリズムではなく、Greedyアルゴリズムを用いてファンの回転速度の制御を実現してもよく、制御プロセスは後続の実施例を参照する。
【0043】
ネットワークデバイスが調整すべき状態にある場合、各ファンに対応する調整すべきファンデューティサイクルで該ファンに対応する初期ファンデューティサイクルを更新し、各ファンに対応する初期ファンデューティサイクルに対応する回転速度に基づいて該ファンを制御し、例えば、ファン1に対応する初期ファンデューティサイクルに対応する回転速度に基づいてファン1を制御し、ファン2に対応する初期ファンデューティサイクルに対応する回転速度に基づいてファン2を制御するなどである。
【0044】
1つの可能な実施形態では、ネットワークデバイスが起動した後、ネットワークデバイスに人工知能ファン回転速度調整アルゴリズムがイネーブルされていない場合、ファンの回転速度の制御を実現するために本実施例のアルゴリズムを採用しなくてもよく、ネットワークデバイスに人工知能ファン回転速度調整アルゴリズムがイネーブルされた後、PIDアルゴリズムを用いてファンの回転速度の制御を実現する。
【0045】
第2に、ネットワークデバイスが調整すべき状態にある場合、各ファンの目標ファンデューティサイクルを見つけるまで、Greedyアルゴリズムを用いてファンの回転速度の制御を実現し、各ファンの目標ファンデューティサイクルを用いてファンの回転速度の制御を実現する。例えば、以下のステップを用いて各ファンの目標ファンデューティサイクルを得てもよい。
【0046】
ステップS11において、各ファンが現在採用している初期ファンデューティサイクルを決定する。
【0047】
ステップS12において、複数のファンの目標順序に基づいて、各ファンを候補ファンとして順次トラバースする。
【0048】
例えば、複数のファンをランダムにソートし、ランダム順序を複数のファンの目標順序とし、目標順序がファン1、ファン2、ファン3であると仮定すると、まずファン1を候補ファンとしてトラバースし、次にファン2を候補ファンとしてトラバースし、次にファン3を候補ファンとしてトラバースする。
【0049】
ステップS13において、各候補ファンについて、該候補ファンに対応する初期ファンデューティサイクルを複数回調整して、異なる複数の候補ファンデューティサイクルを得、各候補ファンデューティサイクルについて、該候補ファンデューティサイクルでのネットワークデバイスの報酬データを取得し、該報酬データに基づいて該候補ファンデューティサイクルに対応する報酬パラメータ値を決定し、複数の候補ファンデューティサイクルに対応する報酬パラメータ値から最適な報酬パラメータ値を選択し、最適な報酬パラメータ値に対応する候補ファンデューティサイクルを該候補ファンに対応する目標ファンデューティサイクルとして決定する。
【0050】
例えば、ファン1が初期ファンデューティサイクル1に対応し、ファン2が初期ファンデューティサイクル2に対応し、ファン3が初期ファンデューティサイクル3に対応すると仮定すると、ファン1が候補ファンとしてトラバースされると、ファン1に対応する初期ファンデューティサイクル1を複数回調整して、候補ファンデューティサイクル1-1、候補ファンデューティサイクル1-2などを得る。候補ファンデューティサイクル1-1、初期ファンデューティサイクル2、初期ファンデューティサイクル3に基づいて報酬データを取得し、該報酬データに基づいて候補ファンデューティサイクル1-1に対応する報酬パラメータ値を決定する。候補ファンデューティサイクル1-2、初期ファンデューティサイクル2、初期ファンデューティサイクル3に基づいて報酬データを取得し、該報酬データに基づいて候補ファンデューティサイクル1-2に対応する報酬パラメータ値を決定するなどである。候補ファンデューティサイクル1-2に対応する報酬パラメータ値が最適な報酬パラメータ値であると仮定すると、候補ファンデューティサイクル1-2をファン1に対応する目標ファンデューティサイクルとし、目標ファンデューティサイクル1-2と記す。
【0051】
ファン2が候補ファンとしてトラバースされると、ファン2に対応する初期ファンデューティサイクル2を複数回調整して、候補ファンデューティサイクル2-1、候補ファンデューティサイクル2-2などを得る。目標ファンデューティサイクル1-2(ファン1の初期ファンデューティサイクル1が既に目標ファンデューティサイクル1-2に調整された)、候補ファンデューティサイクル2-1、初期ファンデューティサイクル3に基づいて報酬データを取得し、該報酬データに基づいて候補ファンデューティサイクル2-1に対応する報酬パラメータ値を決定する。このようにして、各候補ファンデューティサイクルに対応する報酬パラメータ値を得ることができる。候補ファンデューティサイクル2-1に対応する報酬パラメータ値が最適な報酬パラメータ値であると仮定すると、候補ファンデューティサイクル2-1をファン2に対応する目標ファンデューティサイクルとする。このようにして、各ファンに対応する目標ファンデューティサイクルを得ることができる。
【0052】
例示的に、候補ファンデューティサイクル1-1、初期ファンデューティサイクル2、初期ファンデューティサイクル3に基づいて報酬データを取得することは、候補ファンデューティサイクル1-1(初期ファンデューティサイクルとする)を用いてファン1の回転速度を制御し、初期ファンデューティサイクル2を用いてファン2の回転速度を制御し、初期ファンデューティサイクル3を用いてファン3の回転速度を制御した上で、ネットワークデバイスに対応する報酬データを取得することである。
【0053】
例示的に、初期ファンデューティサイクル1を複数回調整して、複数の候補ファンデューティサイクルを得ることは、1回目の調整時に、まず初期ファンデューティサイクル1を高く(又は低く)に調整してもよく、候補ファンデューティサイクル1-1を得、2回目の調整時に、初期ファンデューティサイクル1に対応する報酬パラメータ値が候補ファンデューティサイクル1-1に対応する報酬パラメータ値より優れている場合、高く調整すると報酬パラメータ値がより悪くなることを示すため、初期ファンデューティサイクル1を低く調整して候補ファンデューティサイクル1-2を得ることである。候補ファンデューティサイクル1-1に対応する報酬パラメータ値が初期ファンデューティサイクル1に対応する報酬パラメータ値より優れている場合、高く調整すると報酬パラメータ値がより良くなることを示すため、初期ファンデューティサイクル1を引き続き高く調整して、候補ファンデューティサイクル1-2を得る。このようにして、調整するたびに、報酬パラメータ値がより良くなる方向にファンデューティサイクルが調整され、最終的に局所的な最適解、即ち目標ファンデューティサイクルを得る。
【0054】
例示的に、ネットワークデバイスに対応する報酬データは、各ファンに対応するファンデューティサイクル(即ち、現在採用しているファンデューティサイクルであり、ファンに対応する初期ファンデューティサイクルが候補ファンデューティサイクルに調整された場合、候補ファンデューティサイクルを報酬データとし、ファンに対応する初期ファンデューティサイクルが目標ファンデューティサイクルに調整された場合、目標ファンデューティサイクルを報酬データとし、ファンに対応する初期ファンデューティサイクルが調整されていない場合、初期ファンデューティサイクルを報酬データとする)と、電源電力と、全てのボードに対応する電力及び全てのファンに対応する電力とを含んでもよいが、これらに限定されない。
【0055】
例示的に、該報酬データに基づいてシステム総電力及びファンデューティサイクル最大値を決定してもよい。ここで、該報酬データは各ファンに対応するファンデューティサイクルを含み、該ファンデューティサイクル最大値は全てのファンデューティサイクルのうちの最大値であってもよい。該報酬データが電源電力を含む場合、電源電力に基づいてシステム総電力を決定してもよく、該報酬データが各ボードに対応する電力及び各ファンに対応する電力を含む場合、全てのボードに対応する電力及び全てのファンに対応する電力に基づいてシステム総電力を決定してもよい。そして、該ファンデューティサイクル最大値に基づいて目標ノイズ値を決定し、システム総電力と、システム総電力に対応する第1の重み係数と、目標ノイズ値と、目標ノイズ値に対応する第2の重み係数とに基づいて、該報酬パラメータ値を決定する。
【0056】
例えば、報酬パラメータ値は、特に限定しないが、下式に基づいて決定されてもよい。
r=ω1×E+ω2×N(S)
【0057】
上式において、rは報酬パラメータ値を表し、ω1はシステム総電力Eに対応する第1の重み係数を表し、Eはシステム総電力を表し、電源電力に基づいてシステム総電力Eを決定してもよく、即ち、システム総電力Eは電源電力であり、全てのボードに対応する電力及び全てのファンに対応する電力に基づいてシステム総電力Eを決定してもよく、即ち、システム総電力Eは全てのボードに対応する電力と全てのファンに対応する電力との和である。
【0058】
上式において、ω2は目標ノイズ値N(S)に対応する第2の重み係数を表し、Sはファンデューティサイクル最大値、即ち全てのファンに対応するファンデューティサイクルのうちの最大値、即ち最大ファンデューティサイクルを表す。N(S)は目標ノイズ値を表し、Nは設定済みの関数を表し、この設定済みの関数Nについて限定せず、経験に基づいて設定してもよく、設定済みの関数Nはファンデューティサイクル最大値と目標ノイズ値との間の関数関係を表し、即ち、設定済みの関数Nの入力はファンデューティサイクル最大値であり、設定済みの関数Nの出力は目標ノイズ値であるため、ファンデューティサイクル最大値を該設定済みの関数Nに代入して、目標ノイズ値を得ることができる。
【0059】
上記の式から分かるように、システム総電力と、システム総電力に対応する第1の重み係数と、目標ノイズ値と、目標ノイズ値に対応する第2の重み係数とに基づいて、報酬パラメータ値を決定してもよい。
【0060】
1つの可能な実施形態では、省エネルギーとノイズ低減に対するユーザの要求に基づいて、システム総電力に対応する第1の重み係数ω1及び目標ノイズ値に対応する第2の重み係数ω2を調整してもよく、第1の重み係数ω1は省エネルギー性能の重みの大きさを表し、第2の重み係数ω2はノイズ低減性能の重みの大きさを表す。
【0061】
例示的に、第1の重み係数と第2の重み係数との和は固定値(例えば1、即ち、ω1+ω2=1)であってもよい。省エネルギーとノイズ低減に対するユーザの要求に基づいて、第1の重み係数ω1及び第2の重み係数ω2を調整し、例えば、省エネルギーの重要性がノイズ低減の重要性より優れている場合、第1の重み係数ω1は第2の重み係数ω2より大きくてもよく、ノイズ低減の重要性が省エネルギーの重要性より優れている場合、第1の重み係数ω1は第2の重み係数ω2より小さくてもよい。第1の重み係数ω1及び第2の重み係数ω2の値について、本実施例では限定せず、経験に基づいて第1の重み係数ω1及び第2の重み係数ω2を設定してもよい。
【0062】
以上をまとめると、候補ファンに対応する初期ファンデューティサイクルを調整して候補ファンデューティサイクルを得るたびに、該候補ファンデューティサイクルでの報酬データを収集し、該候補ファンデューティサイクルに対応する報酬パラメータ値を得るため、複数の候補ファンデューティサイクルに対応する報酬パラメータ値を得ることができる。複数の候補ファンデューティサイクルに対応する報酬パラメータ値から最適な報酬パラメータ値、例えば最小報酬パラメータ値を選択し、最適な報酬パラメータ値に対応する候補ファンデューティサイクルを目標ファンデューティサイクルとして、各ファンに対応する目標ファンデューティサイクルを得る。
【0063】
ステップS14において、各ファンに対応する目標ファンデューティサイクルを得た後、全てのファンのうち目標条件を満たしているファンの総数をカウントし、目標条件を満たしているファンはファンデューティサイクルが変化していないファンであり、即ち、目標ファンデューティサイクルは既に局所的に最適であり、このファンの目標ファンデューティサイクルを調整する必要がない。
【0064】
例えば、各ファンについて、該ファンに対応する目標ファンデューティサイクルと該ファンに対応する初期ファンデューティサイクルとが同じであれば、該ファンは目標条件を満たしており、該ファンに対応する目標ファンデューティサイクルと該ファンに対応する初期ファンデューティサイクルとが同じでなければ、該ファンは目標条件を満たしていない。各ファンについて上記処理を行った後、全てのファンのうち目標条件を満たしているファンの総数を得ることができる。
【0065】
ステップS15において、目標条件を満たしているファンの総数が所定の閾値(例えば、全てのファンの数*a%、aは100、90などであってもよい)以上であるか否かを判断し、以上であれば、ステップS16を実行し、以上でなければ、ステップS17を実行する。
ステップS16において、ネットワークデバイスが安定状態にあると決定し、即ち、各ファンに対応する目標ファンデューティサイクルを得、各ファンに対応する目標ファンデューティサイクルに対応する回転速度に基づいて該ファンを制御する。
【0066】
例示的に、目標条件を満たしているファンの総数が所定の閾値以上であることは、全て又はほとんどのファンに対応する目標ファンデューティサイクルと初期ファンデューティサイクルとが同じであることを示し、即ちファンデューティサイクルが変化していないため、これらのファンの目標ファンデューティサイクルは既に局所的な最適解であり、最適な報酬パラメータ値を見つけたため、ファンデューティサイクルを引き続き調整する必要がなく、ネットワークデバイスが安定状態に達したと考えられ、ファンデューティサイクルを調整しない。
【0067】
以上をまとめると、各ファンに対応する目標ファンデューティサイクルが得られ、このように、各ファンに対応する目標ファンデューティサイクルに対応する回転速度に基づいて該ファンを制御することができ、このプロセスについては説明を省略する。
【0068】
ステップS17において、ネットワークデバイスが調整すべき状態にある(即ち、状態が変化していない)と決定し、各ファンに対応する目標ファンデューティサイクルで該ファンに対応する初期ファンデューティサイクルを更新し、ステップS12の実行に戻る。
【0069】
例示的に、目標条件を満たしているファンの総数が所定の閾値より小さい場合、大多数のファンに対応する目標ファンデューティサイクルと初期ファンデューティサイクルとが同じではないことを示し、即ちファンデューティサイクルが変化したため、これらのファンの目標ファンデューティサイクルは局所的な最適解ではなく、最適な報酬パラメータ値はまだ見つかっておらず、ファンデューティサイクルを引き続き調整する必要がある。
【0070】
ファンデューティサイクルを引き続き調整する場合、各ファンに対応する目標ファンデューティサイクルで該ファンに対応する初期ファンデューティサイクルを更新してもよく、これらの初期ファンデューティサイクルに基づいて、ステップS12を再実行してもよい。ステップS12を再実行する際に、複数のファンの目標順序(即ち、ランダム順序)を再決定してもよく、複数のファンの目標順序は変更されてもよく、複数のファンの目標順序は変更されなくてもよい。
【0071】
以上をまとめると、ステップS12~ステップS17を繰り返し実行することにより、目標条件を満たしているファンの総数が所定の閾値以上になり、ネットワークデバイスが安定状態に達したと見なされるまで、各ファンに対応する初期ファンデューティサイクルに対して複数回の繰り返し調整を行ってもよく、そして、各ファンに対応する目標ファンデューティサイクルを出力する。
【0072】
第3に、ネットワークデバイスの動作中において、ネットワークデバイスの安全性を確保するために、ネットワークデバイスの各温度制御点に対して温度検出を行ってもよく、温度制御点の温度値が所定の温度閾値より大きい場合、ネットワークデバイスが高温の危険状態にあることを示し、即ち、ネットワークデバイスが温度警報を発する。ネットワークデバイスが温度警報を発した場合、ネットワークデバイスの各ボードの温度値に基づいて、PIDアルゴリズムを用いて各ファンに対応する調整すべきファンデューティサイクルを決定し、各ファンに対応する調整すべきファンデューティサイクルに対応する回転速度に基づいて該ファンを制御してもよく、これにより、各ボードの温度値と目標温度値との差の絶対値が温度閾値より小さくなり、ネットワークデバイスの安全性が確保され、具体的なプロセスは第1を参照することができ、ここでは説明を省略する。
【0073】
第4に、ネットワークデバイスが安定状態にある場合、ネットワークデバイスの動作環境を周期的に検出してもよい。ネットワークデバイスの動作環境が変化すると、ネットワークデバイスを安定状態から調整すべき状態に調整してもよく、ネットワークデバイスが調整すべき状態にある場合、各ファンの目標ファンデューティサイクルを見つけるまで、再びGreedyアルゴリズムを用いてファンの回転速度の制御を実現し、各ファンの目標ファンデューティサイクルを用いてファンの回転速度の制御を実現し、Greedyアルゴリズムの具体的なプロセスは第2を参照することができ、ここでは説明を省略する。
【0074】
ネットワークデバイスのボードの抜き差しがあった場合、ネットワークデバイスの動作環境が変化したと決定する。又は、ネットワークデバイスの環境温度が大きく変化した場合、ネットワークデバイスの動作環境が変化したと決定する。又は、ネットワークデバイスの転送フローが大幅に増加した場合、ネットワークデバイスの動作環境が変化したと決定する。又は、ネットワークデバイスの転送フローが大幅に減少した場合、ネットワークデバイスの動作環境が変化したと決定する。もちろん、上記はいくつかの例に過ぎず、これについて限定しない。
【0075】
ネットワークデバイスの動作環境の安定性が強く、動作環境が変化しにくいため、ネットワークデバイスが長い間安定状態を保つことができ、各ファンの目標ファンデューティサイクルを繰り返し調整することはない。
【0076】
例示的に、ステップS16を参照すると、ネットワークデバイスが安定状態にある場合、目標ファンデューティサイクルでのネットワークデバイスの報酬データ(即ち、報酬データは各ファンの目標ファンデューティサイクルを含む)を取得してもよく、該報酬データに基づいて目標ファンデューティサイクルに対応する報酬パラメータ値を決定し、報酬パラメータ値X1と記す。
【0077】
ネットワークデバイスが安定状態にある場合、ネットワークデバイスに対応する報酬データを周期的に取得し(報酬データのうちのファンデューティサイクルは変化していないが、電源電力、ボードに対応する電力、及びファンに対応する電力などは変化する可能性がある)、該報酬データに基づいて報酬パラメータ値X2を決定してもよい。
【0078】
報酬パラメータ値X2が報酬パラメータ値X1より優れており、且つ報酬パラメータ値X1と報酬パラメータ値X2との差が比較的大きい(例えば、ある閾値より大きい)場合、即ち報酬パラメータ値が大きく変化した場合、ネットワークデバイスを安定状態から調整すべき状態に調整してもよく、ネットワークデバイスが調整すべき状態にある場合、各ファンの目標ファンデューティサイクルを見つけるまで、再びGreedyアルゴリズムを用いてファンの回転速度の制御を実現する。
【0079】
報酬パラメータ値X1が報酬パラメータ値X2より優れている場合、又は報酬パラメータ値X2が報酬パラメータ値X1より優れているが、報酬パラメータ値X1と報酬パラメータ値X2との差が比較的小さい場合、ネットワークデバイスを安定状態に維持してもよく、各ファンの目標ファンデューティサイクルを調整する必要がない。
【0080】
第5に、ネットワークデバイスに対応するサンプル状態データを取得し、サンプル状態データに基づいて訓練して目標動作モデル及び目標評価モデルを得る。ここで、サンプル状態データは、ネットワークデバイスが調整すべき状態にある時のサンプル状態データ、及び/又はネットワークデバイスが安定状態にある時のサンプル状態データを含んでもよい。
【0081】
例えば、以下のステップを用いて訓練して目標動作モデル及び目標評価モデルを得てもよい。
【0082】
ステップS21において、ネットワークデバイスに対応するサンプル状態データを取得する。
【0083】
例示的、ネットワークデバイスに対応するサンプル状態データは、ネットワークデバイス内の各ボードに対応するセンサデータ、ネットワークデバイスに対応するシステムデータ、及び各ファンに対応するファンデューティサイクル(即ち、ファンの現在動作中のファンデューティサイクル)のうちの少なくとも1つを含んでもよいが、これらに限定されない。ここで、各ボードに対応するセンサデータは、該ボード内のチップに対応する接合温度データ、該ボード内の各温度測定点に対応する最大温度、及び該ボードに対応する電力のうちの少なくとも1つを含んでもよいが、これらに限定されず、該システムデータは、環境温度、電源電力、及び各ファンに対応する電力のうちの少なくとも1つを含んでもよいが、これらに限定されない。
【0084】
例えば、ネットワークデバイスが調整すべき状態又は安定状態にある場合、各収集周期でネットワークデバイスのサンプル状態データを取得してもよく、隣接する2つの収集周期の間の間隔は任意に設定してもよく、例えば間隔は3秒、5秒、8秒などであってもよく、これについて限定しない。
【0085】
各ボードについて、該ボード内は、MACチップ、CPU(Central Processing Unit、中央処理装置)チップ、FPGA(Field Programmable Gate Array、フィールドプログラマブルゲートアレイ)チップ、AI(Artificial Intelligent、人工知能)チップ、及び光モジュールチップのうちの少なくとも1つのチップを含む場合、これらのチップの接合温度データ(即ち実際の動作温度)を収集し、これらのチップの接合温度データをネットワークデバイスに対応するサンプル状態データとしてもよい。
【0086】
各ボードについて、該ボード内は少なくとも1つの温度測定点を含む場合、該ボード内の各温度測定点に対応する温度値を収集し、これらの温度値のうちの最大値を該ボード内の各温度測定点に対応する最大温度として選択し、該最大温度をネットワークデバイスに対応するサンプル状態データとしてもよい。
【0087】
各ボードについて、該ボードに対応する電力、即ち、該ボードの現在使用中の電力を収集し、該ボードに対応する電力をネットワークデバイスに対応するサンプル状態データとしてもよい。
【0088】
ネットワークデバイスについて、ネットワークデバイスの環境温度及び電源電力を収集し、ネットワークデバイスの環境温度及び電源電力をネットワークデバイスに対応するサンプル状態データとしてもよい。
【0089】
各ファンについて、該ファンに対応する電力、即ち、該ファンの現在使用中の電力を収集し、該ファンに対応する電力をネットワークデバイスに対応するサンプル状態データとしてもよい。
【0090】
各ファンについて、該ファンに対応するファンデューティサイクル、即ち、現在動作中のファンデューティサイクルを収集してもよく、該ファンが該ファンデューティサイクルに対応する回転速度で回転していることを示す。例示的に、ファンデューティサイクルは、ファンの回転速度を示すために用いられ、ファンデューティサイクルは、最小ファンデューティサイクルと最大ファンデューティサイクルとの間の整数値であってもよく、例えば、最小ファンデューティサイクルが20であり、最大ファンデューティサイクルが100であることを例とすると、ファンデューティサイクルは、20から100までの整数値、例えば、20、25、50、100などであってもよい。ファンの最大回転速度をk(即ち、ファンがサポートする最大回転速度)、ファンデューティサイクルをmと仮定すると、ファンの回転速度はm%*kであってもよく、該ファンの回転速度は最大回転速度kのm%であり、例えば、ファンデューティサイクルが20である場合、ファンの回転速度が最大回転速度kの20%であることを示す。
【0091】
ステップS22において、設定済みの初期動作モデル及び設定済みの初期評価モデルを取得する。
【0092】
本実施例では、初期動作モデルを予め設定してもよく、初期動作モデルの入力データは、ネットワークデバイスに対応するサンプル状態データであり、初期動作モデルの出力データは、全てのファンに対応するファンデューティサイクル(区別の便宜上、ファンデューティサイクルをサンプルファンデューティサイクルと称する)であり、即ち、ネットワークデバイスの全てのファンに対応するサンプルファンデューティサイクルを1つの全体として、初期動作モデルの出力データとする。
【0093】
例えば、初期動作モデルはディープラーニングモデルであってもよく、ニューラルネットワークモデルであってもよく、この初期動作モデルの構造について限定せず、初期動作モデルがネットワークデバイスに対応するサンプル状態データを全てのファンに対応するサンプルファンデューティサイクルに変換できる限り、任意に設定してもよい。
【0094】
本実施例では、初期評価モデルを予め設定してもよく、初期評価モデルの入力データは、ネットワークデバイスに対応するサンプル状態データ及び全てのファンに対応するサンプルファンデューティサイクル(即ち、初期動作モデルの出力データ)であり、初期評価モデルの出力データは状態動作値である。ここで、該状態動作値は状態(state)及び動作(action)の価値(value)を反映するために用いられ、ここでの状態はサンプル状態データであってもよく、ここでの動作は全てのファンに対応するサンプルファンデューティサイクルであってもよく、即ち、該状態動作値はサンプル状態データ及び全てのファンに対応するサンプルファンデューティサイクルの価値を反映するために用いられる。
【0095】
例えば、初期評価モデルはディープラーニングモデルであってもよく、ニューラルネットワークモデルであってもよく、この初期評価モデルの構造について限定せず、初期評価モデルがサンプル状態データ及び全てのファンに対応するサンプルファンデューティサイクルを状態動作値に変換できる限り、任意に設定してもよい。
【0096】
1つの可能な実施形態では、該初期動作モデル及び該初期評価モデルは、DDPG(Deep Deterministic Policy Gradient、深層決定的方策勾配)アルゴリズムに基づくネットワークモデルであってもよく、他のアルゴリズムに基づくネットワークモデルであってもよく、これについて限定せず、説明の便宜上、本実施例では、DDPGアルゴリズムに基づく初期動作モデル及び初期評価モデルを例とする。
【0097】
例えば、
図3は、DDPGアルゴリズムに基づく初期動作モデル及び初期評価モデルの例である。Actorネットワークは初期動作モデルであり、Critictネットワークは初期評価モデルである。Sは初期動作モデルの入力データであり、Sは初期評価モデルの入力データでもあり、本実施例では、Sはネットワークデバイスに対応するサンプル状態データを表す。Aは初期動作モデルの出力データであり、Aは初期評価モデルの入力データでもあり、本実施例では、Aは全てのファンに対応するサンプルファンデューティサイクル(即ち、ActorネットワークのAction)を表す。Qは初期評価モデルの出力データであり、本実施例では、Qは状態動作値を表す。
【0098】
DDPGアルゴリズムは、深層決定的方策勾配アルゴリズムであり、連続的な動作を制御するために提案されたものであり、DDPGアルゴリズムが対象とする動作の空間は離散的ではないため、離散的な動作の問題を解決する。ここで、DDPGアルゴリズムの決定的方策は確率的方策(stochastic policy)に対するものであり、動作セットには、連続値や高次元の離散値を含むものがあり、動作の空間の次元が大きく、DDPGアルゴリズムは決定的方策を用いてこの問題を簡略化する。DDPGアルゴリズムにおける決定的とは、連続的な動作が1つの具体的な値を出力することを意味する。動作が離散的である場合、長期的利益の最大化という目標に基づいて、各動作の発生確率の大きさが出力され、動作が連続的である場合、長期的利益の最大化を達成するためには、出力できるのは、1つの具体的な動作を表す1つの具体的な値のみであるため、決定的方策となる。
【0099】
DDPGアルゴリズムの上記原理に基づいて、本実施例では、DDPGアルゴリズムに基づいて初期動作モデル及び初期評価モデルを実現してもよく、DDPGアルゴリズムは、Actor-Critictアーキテクチャに基づき、Actor-Critictアーキテクチャを基に連続的な動作の空間を処理するため、Actorネットワークを初期動作モデルとし、Critictネットワークを初期評価モデルとしてもよい。本実施例における連続的な動作の空間とは、全てのファンに対応するサンプルファンデューティサイクルであり、各ファンに対応するサンプルファンデューティサイクルについて、該サンプルファンデューティサイクルは、最小ファンデューティサイクルと最大ファンデューティサイクルとの間の離散的な整数値ではなく、最小ファンデューティサイクルと最大ファンデューティサイクルとの間の連続的な整数値であってもよく、例えば、該サンプルファンデューティサイクルは、20、25、30、35、…100のような離散的な整数値ではなく、20、21、22、…100のような連続的な整数値であってもよい。
【0100】
ステップS23において、サンプル状態データを初期動作モデルに入力し、各ファンに対応するサンプルファンデューティサイクル(即ち、初期動作モデルのAction)を得、サンプル状態データ及び各ファンに対応するサンプルファンデューティサイクルを初期評価モデルに入力し、該サンプル状態データに対応する状態動作値を得る。
【0101】
例えば、ネットワークデバイスに対応するサンプル状態データSを初期動作モデルの入力データとし、初期動作モデルによってサンプル状態データSを処理し、各ファンに対応するサンプルファンデューティサイクルAを得、全てのファンに対応するサンプルファンデューティサイクルAが初期動作モデルのActionである。
【0102】
ネットワークデバイスに対応するサンプル状態データS及び各ファンに対応するサンプルファンデューティサイクルAを初期評価モデルの入力データとし、初期評価モデルによってサンプル状態データS及び各ファンに対応するサンプルファンデューティサイクルAに基づいて処理を行い、サンプル状態データSに対応する状態動作値Qを得、状態動作値Qは関数値Qと呼ばれてもよく、初期評価モデルの出力データである。
【0103】
ステップS24において、該サンプル状態データに基づいて、該状態動作値に対応する報酬パラメータ値を決定する。
【0104】
例示的に、該サンプル状態データに基づいてシステム総電力及びファンデューティサイクル最大値を決定してもよい。ここで、該サンプル状態データは、各ファンに対応するファンデューティサイクルを含んでもよく、該ファンデューティサイクル最大値は全てのファンデューティサイクルのうちの最大値であってもよい。該サンプル状態データが電源電力を含む場合、該電源電力に基づいてシステム総電力を決定してもよく、該サンプル状態データが各ボードに対応する電力及び各ファンに対応する電力を含む場合、全てのボードに対応する電力及び全てのファンに対応する電力に基づいてシステム総電力を決定してもよい。そして、該ファンデューティサイクル最大値に基づいて目標ノイズ値を決定してもよい。そして、システム総電力と、システム総電力に対応する第1の重み係数と、目標ノイズ値と、目標ノイズ値に対応する第2の重み係数とに基づいて、該状態動作値に対応する報酬パラメータ値を決定してもよい。システム総電力及びファンデューティサイクル最大値に基づいて報酬パラメータ値を決定するプロセスについては、ステップS13を参照することができ、ここでは繰り返さない。
【0105】
ステップS25において、該状態動作値に基づいて初期動作モデルに対応する第1の誤差値を決定し、該第1の誤差値に基づいて初期動作モデルのネットワークパラメータを調整し、調整後動作モデルを得、該報酬パラメータ値及び該状態動作値に基づいて初期評価モデルに対応する第2の誤差値を決定し、該第2の誤差値に基づいて初期評価モデルのネットワークパラメータを調整し、調整後評価モデルを得る。
【0106】
例示的に、初期動作モデルに対応する誤差関数(即ち損失関数)を設定してもよく、該誤差関数は経験に基づいて設定してもよく、この誤差関数について限定せず、例えば、該誤差関数の一例は、L(Θv)=-critic(s,a)であってもよく、もちろん、上式は誤差関数の一例に過ぎず、誤差関数が状態動作値と関連している限り、この誤差関数について限定しない。
【0107】
これに基づいて、L(Θv)=-critic(s,a)という式に基づいて第1の誤差値を決定してもよい。上式において、L(Θv)は第1の誤差値を表し、sはサンプル状態データを表し、aはサンプルファンデューティサイクルを表し、critic(s,a)は状態動作値を表す。以上をまとめると、サンプル状態データsを初期動作モデルに入力すると、各ファンに対応するサンプルファンデューティサイクルaを得ることができ、そして、サンプル状態データs及び各ファンに対応するサンプルファンデューティサイクルaを初期評価モデルに入力し、状態動作値critic(s,a)を得る。状態動作値critic(s,a)を得た後、状態動作値critic(s,a)を上式に代入して第1の誤差値L(Θv)を得ることができる。明らかに、状態動作値critic(s,a)が大きいほど第1の誤差値L(Θv)は小さくなり、状態動作値critic(s,a)が小さいほど第1の誤差値L(Θv)は大きくなる。
【0108】
第1の誤差値L(Θv)を得た後、第1の誤差値L(Θv)に基づいて初期動作モデルのネットワークパラメータを調整することができ、この調整プロセスについて限定せず、調整の目標は、第1の誤差値L(Θv)をどんどん小さくすることであり、即ち、第1の誤差値L(Θv)の極小値を見つけることであり、調整後動作モデルを得る。
【0109】
例示的に、初期評価モデルに対応する誤差関数(即ち損失関数)を設定してもよく、該誤差関数は経験に基づいて設定してもよく、この誤差関数について限定せず、例えば、該誤差関数の一例は、L(Θu)=1/2(r’-critic(s,a))2であってもよく、もちろん、上式は誤差関数の一例に過ぎず、誤差関数が報酬パラメータ値及び状態動作値と関連するものであればよい。
【0110】
これに基づいて、L(Θu)=1/2(r’-critic(s,a))2という式に基づいて第2の誤差値を決定する。L(Θu)は第2の誤差値を表し、sはサンプル状態データを表し、aはサンプルファンデューティサイクルを表し、critic(s,a)は状態動作値を表し、r’は報酬パラメータ値を表す。以上をまとめると、サンプル状態データsを初期動作モデルに入力すると、各ファンに対応するサンプルファンデューティサイクルaを得ることができ、そして、サンプル状態データs及び各ファンに対応するサンプルファンデューティサイクルaを初期評価モデルに入力し、状態動作値critic(s,a)を得る。状態動作値critic(s,a)を得た後、状態動作値critic(s,a)及び報酬パラメータ値r’を上式に代入して第2の誤差値L(Θu)を得ることができる。
【0111】
明らかに、状態動作値critic(s,a)が大きいほど第2の誤差値L(Θu)は小さくなり、状態動作値critic(s,a)が小さいほど第2の誤差値L(Θu)は大きくなる。報酬パラメータ値r’が大きいほど第2の誤差値L(Θu)は大きくなり、報酬パラメータ値r’が小さいほど第2の誤差値L(Θu)は小さくなる。
【0112】
第2の誤差値L(Θu)を得た後、第2の誤差値L(Θu)に基づいて初期評価モデルのネットワークパラメータを調整することができ、この調整プロセスについて限定せず、調整の目標は、第2の誤差値L(Θu)をどんどん小さくすることであり、即ち、第2の誤差値L(Θu)の極小値を見つけることであり、調整後評価モデルを得る。
【0113】
例示的に、1番目の収集周期でサンプル状態データa1を取得し、2番目の収集周期でサンプル状態データa2を取得し、3番目の収集周期でサンプル状態データa3を取得すると仮定すると、サンプル状態データa1(即ち、現在の状態)をサンプル状態データsとする場合、サンプル状態データa2(即ち、次の状態)をサンプル状態データs’とし、サンプル状態データa2をサンプル状態データsとする場合、サンプル状態データa3をサンプル状態データs’とする。上記の式r=ω1×E+ω2×N(S)に基づいて、サンプル状態データsに対応する報酬パラメータ値rを得、サンプル状態データs’に対応する報酬パラメータ値r’を得る。以上をまとめると、第2の誤差値を決定する際に、報酬パラメータ値r’は、現在の状態の次の状態に対応する報酬パラメータ値である。
【0114】
ステップS26において、調整後動作モデル及び調整後評価モデルが収束したか否かを判断する。
【0115】
調整後動作パターン及び調整後評価パターンが収束した場合、ステップS27を実行する。
【0116】
調整後動作モデル及び/又は調整後評価モデルが収束していない場合、ステップS28を実行する。
【0117】
例えば、第1の誤差値が第1の収束条件を満たしている場合、調整後動作モデルが収束したと決定してもよく、第1の誤差値が第1の収束条件を満たしていない場合、調整後動作モデルが収束していないと決定してもよい。第1の収束条件は、経験に基づいて設定されてもよく、これについて限定せず、例えば、第1の誤差値がある所定の値の区間にあれば、第1の誤差値が第1の収束条件を満たしており、そうでなければ、第1の誤差値が第1の収束条件を満たしていない。
【0118】
第2の誤差値が第2の収束条件を満たしている場合、調整後評価モデルが収束したと決定してもよく、第2の誤差値が第2の収束条件を満たしていない場合、調整後評価モデルが収束していないと決定してもよい。第2の収束条件は、経験に基づいて設定されてもよく、これについて限定せず、例えば、第2の誤差値がある所定の値の区間にある場合、第2の誤差値が第2の収束条件を満たし、そうでなければ、第2の誤差値が第2の収束条件を満たしていない。
【0119】
また、例えば、初期動作モデルの繰り返し調整回数が第1の回数閾値(経験に基づいて設定してもよく、これについて限定しない)に達した場合、調整後動作モデルが収束したと決定してもよく、初期動作モデルの繰り返し調整回数が第1の回数閾値に達していない場合、調整後動作モデルが収束していないと決定してもよい。
【0120】
初期評価モデルの繰り返し調整回数が第2の回数閾値(経験に基づいて設定してもよく、これについて限定しない)に達した場合、調整後評価モデルが収束したと決定してもよく、初期評価モデルの繰り返し調整回数が第2の回数閾値に達していない場合、調整後評価モデルが収束していないと決定してもよい。
【0121】
また、例えば、初期動作モデルの繰り返し調整時間長が第1の時間長閾値(経験に基づいて設定してもよく、これについて限定しない)に達した場合、調整後動作モデルが収束したと決定してもよく、初期動作モデルの繰り返し調整時間長が第1の時間長閾値に達していない場合、調整後動作モデルが収束していないと決定してもよい。
【0122】
初期評価モデルの繰り返し調整時間長が第2の時間長閾値(経験に基づいて設定してもよく、これについて限定しない)に達した場合、調整後評価モデルが収束したと決定してもよく、初期評価モデルの繰り返し調整時間長が第2の時間長閾値に達していない場合、調整後評価モデルが収束していないと決定してもよい。
【0123】
もちろん、上記は調整後動作モデルと調整後評価モデルが収束したか否かを判断するいくつかの例に過ぎず、この判断方式について限定せず、実際のニーズに応じて判断方式を任意に設定してもよい。
【0124】
ステップS27において、調整後動作モデルを目標動作モデルとして決定し、調整後評価モデルを目標評価モデルとして決定する。ここまで、初期動作モデル及び初期評価モデルの訓練プロセスが完了し、訓練済みの目標動作モデル及び訓練済みの目標評価モデルを得る。
【0125】
ステップS28において、調整後動作モデルを初期動作モデルとして決定し、調整後評価モデルを初期評価モデルとして決定し、ステップS23、ステップS25及びステップS26の実行に戻る。
【0126】
第6に、ネットワークデバイスが安定状態にある場合、DDPGモデル(目標動作モデル及び目標評価モデル)を周期的に用いて、Greedyアルゴリズムを再起動する必要があるか否かを決定してもよい。必要があれば、ネットワークデバイスを安定状態から調整すべき状態に調整し、ネットワークデバイスが調整すべき状態にある場合、各ファンの目標ファンデューティサイクルを見つけるまで、再びGreedyアルゴリズムを用いてファンの回転速度の制御を実現し、各ファンの目標ファンデューティサイクルを用いてファンの回転速度の制御を実現し、Greedyアルゴリズムの具体的なプロセスは第2を参照することができ、ここでは説明を省略する。必要がなければ、ネットワークデバイスを安定状態に維持し、各ファンの目標ファンデューティサイクルを再決定する必要がなく、即ち、各ファンの目標ファンデューティサイクルをそのまま維持(即ち、第2で決定された目標ファンデューティサイクルを維持)し、次の検出周期を待ち、引き続きDDPGモデルを用いてGreedyアルゴリズムを再起動する必要があるか否かを決定する。例えば、以下のステップを用いて目標ファンデューティサイクルを調整するか否かを決定してもよい。
【0127】
ステップS31において、ネットワークデバイスが安定状態にある場合、ネットワークデバイスに対応する検出状態データを取得する。
【0128】
例示的、ネットワークデバイスに対応する検出状態データは、ネットワークデバイス内の各ボードに対応するセンサデータ、ネットワークデバイスに対応するシステムデータ、及び各ファンに対応するファンデューティサイクル(即ち、現在動作中のファンデューティサイクル、即ち目標ファンデューティサイクル)のうちの少なくとも1つを含んでもよいが、これらに限定されない。ここで、各ボードに対応するセンサデータは、該ボード内のチップに対応する接合温度データ、該ボード内の各温度測定点に対応する最大温度、及び該ボードに対応する電力のうちの少なくとも1つを含んでもよいが、これらに限定されず、該システムデータは、環境温度、電源電力、及び各ファンに対応する電力のうちの少なくとも1つを含んでもよいが、これらに限定されない。
【0129】
各ボードについて、該ボード内は、MACチップ、CPUチップ、FPGAチップ、AIチップ、及び光モジュールチップのうちの少なくとも1つのチップを含む場合、これらのチップの接合温度データ(即ち実際の動作温度)を収集し、これらのチップの接合温度データをネットワークデバイスに対応する検出状態データとする。該ボード内は少なくとも1つの温度測定点を含む場合、該ボード内の各温度測定点に対応する温度値を収集し、これらの温度値のうちの最大値を該ボード内の各温度測定点に対応する最大温度として選択し、該最大温度をネットワークデバイスに対応する検出状態データとしてもよい。該ボードに対応する電力、即ち、該ボードの現在使用中の電力を収集し、該ボードに対応する電力をネットワークデバイスに対応する検出状態データとしてもよい。
【0130】
ネットワークデバイスについて、ネットワークデバイスの環境温度及び電源電力を収集し、ネットワークデバイスの環境温度及び電源電力をネットワークデバイスに対応する検出状態データとしてもよい。
【0131】
各ファンについて、該ファンに対応する電力、即ち、該ファンの現在使用中の電力を収集し、該ファンに対応する電力をネットワークデバイスに対応する検出状態データとしてもよい。
【0132】
各ファンについて、該ファンに対応するファンデューティサイクルを収集してもよく、該ファンが該ファンデューティサイクルに対応する回転速度で回転していることを示し、該ファンに対応するファンデューティサイクルをネットワークデバイスに対応する検出状態データとしてもよい。例示的に、ファンデューティサイクルは、ファンの回転速度を示すために用いられ、ファンデューティサイクルは、最小ファンデューティサイクルと最大ファンデューティサイクルとの間の整数値であってもよく、ファンの最大回転速度をk、ファンデューティサイクルをmと仮定すると、該ファンの回転速度はm%*kであってもよく、即ち、該ファンの回転速度は最大回転速度kのm%である。
【0133】
ステップS32において、該検出状態データを訓練済みの目標動作モデルに入力して、各ファンに対応する出力済みファンデューティサイクルを得、ここで、異なるファンに対応する出力済みファンデューティサイクルは同じ又は異なる。
【0134】
例示的に、初期動作モデルの入力データはサンプル状態データであり、初期動作モデルの出力データは全てのファンに対応するサンプルファンデューティサイクルであり、即ち、ネットワークデバイスの全てのファンに対応するサンプルファンデューティサイクルを1つの全体として、初期動作モデルの出力データとする。これに基づいて、訓練して目標動作モデルを得た後、目標動作モデルの入力データは検出状態データであり、目標動作モデルの出力データは全てのファンに対応する出力済みファンデューティサイクル(区別の便宜上、目標動作モデルによって出力されるファンデューティサイクルを出力済みファンデューティサイクルと称する)であり、即ち、ネットワークデバイスの全てのファンに対応する出力済みファンデューティサイクルを1つの全体として、目標動作モデルの出力データとしてもよい。
【0135】
ステップS32においては、ネットワークデバイスに対応する検出状態データを目標動作モデルに入力し、目標動作モデルによって検出状態データを処理してもよく、この処理プロセスについて限定せず、各ファンに対応する出力済みファンデューティサイクルを得、異なるファンに対応する出力済みファンデューティサイクルは同じ又は異なる。
【0136】
例えば、該検出状態データを目標動作モデルに入力した後、ファン1に対応する出力済みファンデューティサイクル、ファン2に対応する出力済みファンデューティサイクル、…を得ることができる。
【0137】
ステップS33において、各ファンに対応する出力済みファンデューティサイクルでのネットワークデバイスの報酬データに基づいて、出力済みファンデューティサイクルに対応する第1の報酬パラメータ値を決定し、各ファンに対応する目標ファンデューティサイクルでのネットワークデバイスの報酬データに基づいて、目標ファンデューティサイクルに対応する第2の報酬パラメータ値を決定する。
【0138】
例示的に、出力済みファンデューティサイクルでのネットワークデバイスの報酬データ(即ち、報酬データは、各ファンに対応する出力済みファンデューティサイクルを含み、報酬データにおける電源電力、ボードに対応する電力、及びファンに対応する電力などは、出力済みファンデューティサイクルに対応する)を取得し、該報酬データに基づいて出力済みファンデューティサイクルに対応する第1の報酬パラメータ値を決定してもよい。目標ファンデューティサイクルでのネットワークデバイスの報酬データ(即ち、報酬データは、各ファンに対応する目標ファンデューティサイクルを含み、報酬データにおける電源電力、ボードに対応する電力、及びファンに対応する電力などは、目標ファンデューティサイクルに対応する)を取得し、該報酬データに基づいて目標ファンデューティサイクルに対応する第2の報酬パラメータ値を決定してもよい。報酬データに基づいて第1の報酬パラメータ値又は第2の報酬パラメータ値を決定するプロセスについては、ステップS13を参照することができ、ここでは繰り返さない。
【0139】
ステップS34において、第1の報酬パラメータ値が第2の報酬パラメータ値より優れているか否かを判断する。
【0140】
第1の報酬パラメータ値が第2の報酬パラメータ値より優れている場合、ステップS35を実行する。
【0141】
第1の報酬パラメータ値が第2の報酬パラメータ値より優れていない場合、ステップS36を実行する。
【0142】
ステップS35において、ネットワークデバイスが調整すべき状態にあると決定し、各ファンに対応する出力済みファンデューティサイクルで該ファンに対応する初期ファンデューティサイクルを更新し、各ファンの目標ファンデューティサイクルを見つけるまで、再びGreedyアルゴリズムを用いてファンの回転速度の制御を実現し、各ファンの目標ファンデューティサイクルを用いてファンの回転速度の制御を実現し、Greedyアルゴリズムの具体的なプロセスは第2を参照することができ、ここでは説明を省略する。
【0143】
例示的に、ネットワークデバイスが安定状態にある場合、目標動作モデルに基づいて各ファンに対応する出力済みファンデューティサイクルを得てもよく、出力済みファンデューティサイクルに対応する第1の報酬パラメータ値が目標ファンデューティサイクルに対応する第2の報酬パラメータ値より優れている場合、目標ファンデューティサイクルを最適化する必要があることを示し、ネットワークデバイスを安定状態から調整すべき状態に調整してもよく、ネットワークデバイスが調整すべき状態にある場合、各ファンの目標ファンデューティサイクルを見つけるまで、再びGreedyアルゴリズムを用いてファンの回転速度の制御を実現する。
【0144】
ステップS36において、ネットワークデバイスが安定状態にあると決定し、各ファンに対応する出力済みファンデューティサイクルを該ファンに対応する目標ファンデューティサイクルに復元し、引き続き目標ファンデューティサイクルを用いてファンの回転速度の制御を実現する。
【0145】
例示的に、ネットワークデバイスが安定状態にある場合、目標動作モデルに基づいて各ファンに対応する出力済みファンデューティサイクルを得てもよく、出力済みファンデューティサイクルに対応する第1の報酬パラメータ値が目標ファンデューティサイクルに対応する第2の報酬パラメータ値より優れていない場合、目標ファンデューティサイクルを最適化する必要がないことを示し、ネットワークデバイスを安定状態に維持し、各ファンに対応する出力済みファンデューティサイクルを該ファンに対応する目標ファンデューティサイクルに復元し、引き続き各ファンに対応する目標ファンデューティサイクルを用いてファンの回転速度の制御を実現する。
【0146】
以上の技術案から分かるように、本発明の実施例では、各ファンの回転速度を効果的に制御し、ファンの消費電力及びノイズを低減し、ネットワークデバイスの温度が高すぎることを回避した上で、ファンのノイズが小さく且つファンの消費電力が小さいことを保証し、省エネルギーとノイズ低減の目的を達成することができ、ネットワークデバイスの省エネルギーとノイズ低減の要求を満たし、騒音公害を低減し、粉塵などの空気中の有害物質の吸い込みを低減し、ネットワークデバイスに対する腐食の低減に有利である。省エネルギーとノイズ低減に対するユーザの要求に基づいて、重み係数を自律的に調整し、適切な報酬関数を設定し、報酬パラメータ値を得る。ネットワークデバイスの安全性を確保するために、ネットワークデバイスの各温度制御点を検出してもよく、高温の危険状態にあれば、PIDアルゴリズムに強制的に切り替えてネットワークデバイスの安全性を確保する。Greedyアルゴリズムを用いて局所的に最適な安定状態を見つけてもよく、DDPGアルゴリズムを用いてネットワークデバイスに新しい擾乱値を導入してもよく、ネットワークデバイスの大域的な最適解(global optimal solution)を見つけることに有利である。
【0147】
上記の方法と同じ発想に基づいて、本発明の実施例は、複数のファンを含むネットワークデバイスに適用されるファンの回転速度制御装置を提供し、
図4は、前記装置の構造を示す模式図であり、前記ネットワークデバイスが調整すべき状態にある時、前記装置は、
各ファンが現在採用している初期ファンデューティサイクルを決定するための決定モジュール41と、
前記複数のファンの目標順序に基づいて、各ファンを候補ファンとして順次トラバースし、前記候補ファンに対応する初期ファンデューティサイクルを複数回調整して、異なる複数の候補ファンデューティサイクルを得、各候補ファンデューティサイクルについて、前記候補ファンデューティサイクルでの前記ネットワークデバイスの報酬データを取得し、前記報酬データに基づいて前記候補ファンデューティサイクルに対応する報酬パラメータ値を決定し、前記複数の候補ファンデューティサイクルに対応する報酬パラメータ値から最適な報酬パラメータ値を選択し、前記最適な報酬パラメータ値に対応する候補ファンデューティサイクルを前記候補ファンに対応する目標ファンデューティサイクルとして決定するための処理モジュール42と、
各ファンに対応する目標ファンデューティサイクルを得た後、前記ネットワークデバイスが安定状態にある場合、各ファンに対応する目標ファンデューティサイクルに対応する回転速度に基づいて該ファンを制御するための制御モジュール43と、を含む。
【0148】
例示的に、前記処理モジュール42が、各ファンに対応する目標ファンデューティサイクルを得た後、さらに、前記ネットワークデバイスが調整すべき状態にある場合、各ファンに対応する目標ファンデューティサイクルで該ファンに対応する初期ファンデューティサイクルを更新し、前記複数のファンの目標順序に基づいて、各ファンを候補ファンとして順次トラバースすることの実行に戻るために用いられ、目標条件を満たしているファンの総数が所定の閾値以上であれば、前記ネットワークデバイスが安定状態にあり、そうでなければ、前記ネットワークデバイスが調整すべき状態にあり、各ファンについて、該ファンに対応する目標ファンデューティサイクルと該ファンに対応する初期ファンデューティサイクルとが同じであれば、該ファンは目標条件を満たしており、そうでなければ、該ファンは目標条件を満たしていない。
【0149】
例示的に、前記処理モジュール42が、前記報酬データに基づいて前記候補ファンデューティサイクルに対応する報酬パラメータ値を決定する時、具体的に、前記報酬データに基づいてシステム総電力及びファンデューティサイクル最大値を決定し、前記ファンデューティサイクル最大値に基づいて目標ノイズ値を決定し、前記システム総電力と、前記システム総電力に対応する第1の重み係数と、前記目標ノイズ値と、前記目標ノイズ値に対応する第2の重み係数とに基づいて、前記報酬パラメータ値を決定するために用いられ、前記報酬データは各ファンに対応するファンデューティサイクルを含み、前記ファンデューティサイクル最大値は全てのファンデューティサイクルのうちの最大値であり、前記報酬データが電源電力を含む場合、前記電源電力に基づいてシステム総電力を決定し、前記報酬データが各ボードに対応する電力及び各ファンに対応する電力を含む場合、全てのボードに対応する電力及び全てのファンに対応する電力に基づいてシステム総電力を決定する。
【0150】
例示的に、前記第1の重み係数と前記第2の重み係数との和は固定値であり、省エネルギーの重要性がノイズ低減の重要性より優れている場合、前記第1の重み係数は前記第2の重み係数より大きく、ノイズ低減の重要性が省エネルギーの重要性より優れている場合、前記第1の重み係数は前記第2の重み係数より小さい。
【0151】
例示的に、前記ネットワークデバイスが電源オンにされて起動した後、又は前記ネットワークデバイスが温度警報を発した後、前記決定モジュール41は、さらに、前記ネットワークデバイスの各ボードの温度値に基づいて、各ファンに対応する調整すべきファンデューティサイクルを決定するために用いられ、各ファンに対応する調整すべきファンデューティサイクルに対応する回転速度に基づいてファンを制御すると、各ボードの温度値と目標温度値との差の絶対値を温度閾値より小さくすることができ、前記決定モジュール41は、さらに、各ボードの温度値と目標温度値との差の絶対値が温度閾値より小さい場合、前記ネットワークデバイスが調整すべき状態にあると決定し、各ファンに対応する調整すべきファンデューティサイクルで該ファンに対応する初期ファンデューティサイクルを更新するために用いられ、前記制御モジュール43は、さらに、各ファンに対応する初期ファンデューティサイクルに対応する回転速度に基づいてファンを制御するために用いられる。
【0152】
例示的に、前記ネットワークデバイスが安定状態にある場合、前記処理モジュール42は、さらに、前記ネットワークデバイスに対応する検出状態データを取得し、前記検出状態データを訓練済みの目標動作モデルに入力して、各ファンに対応する出力済みファンデューティサイクルを得、各ファンに対応する出力済みファンデューティサイクルでの前記ネットワークデバイスの報酬データに基づいて、出力済みファンデューティサイクルに対応する第1の報酬パラメータ値を決定し、各ファンに対応する目標ファンデューティサイクルでの前記ネットワークデバイスの報酬データに基づいて、目標ファンデューティサイクルに対応する第2の報酬パラメータ値を決定し、第1の報酬パラメータ値が第2の報酬パラメータ値より優れている場合、前記ネットワークデバイスが調整すべき状態にあると決定し、各ファンに対応する出力済みファンデューティサイクルで該ファンに対応する初期ファンデューティサイクルを更新し、前記複数のファンの目標順序に基づいて、各ファンを候補ファンとして順次トラバースすることの実行に戻るために用いられ、異なるファンに対応する出力済みファンデューティサイクルは同じ又は異なる。
【0153】
例示的に、前記ネットワークデバイスに対応する検出状態データは、前記ネットワークデバイス内の各ボードに対応するセンサデータ、前記ネットワークデバイスに対応するシステムデータ、及び各ファンに対応する目標ファンデューティサイクルを含み、各ボードに対応するセンサデータは、該ボード内のチップに対応する接合温度データ、該ボード内の各温度測定点に対応する最大温度、及び該ボードに対応する電力のうちの少なくとも1つを含み、前記システムデータは、環境温度、電源電力、及び各ファンに対応する電力のうちの少なくとも1つを含む。
【0154】
例示的に、前記ファンの回転速度制御装置は、訓練によって前記目標動作モデルを得るための訓練モジュールをさらに含み、前記訓練モジュールが訓練によって前記目標動作モデルを得る時、具体的に、前記ネットワークデバイスが安定状態にある場合、前記ネットワークデバイスに対応するサンプル状態データを取得し、前記サンプル状態データを初期動作モデルに入力し、各ファンに対応するサンプルファンデューティサイクルを得、前記サンプル状態データ及び各ファンに対応するサンプルファンデューティサイクルを初期評価モデルに入力し、前記サンプル状態データに対応する状態動作値を得、前記サンプル状態データに基づいて、前記状態動作値に対応する報酬パラメータ値を決定し、前記報酬パラメータ値及び前記状態動作値に基づいて前記初期動作モデル及び前記初期評価モデルを訓練し、訓練済みの目標動作モデル及び目標評価モデルを得るために用いられる。
【0155】
例示的に、前記訓練モジュールが、前記報酬パラメータ値及び前記状態動作値に基づいて前記初期動作モデル及び前記初期評価モデルを訓練し、訓練済みの目標動作モデル及び目標評価モデルを得る時、具体的に、前記状態動作値に基づいて初期動作モデルに対応する第1の誤差値を決定し、前記第1の誤差値に基づいて前記初期動作モデルのネットワークパラメータを調整し、調整後動作モデルを得、前記報酬パラメータ値及び前記状態動作値に基づいて初期評価モデルに対応する第2の誤差値を決定し、前記第2の誤差値に基づいて前記初期評価モデルのネットワークパラメータを調整し、調整後評価モデルを得、前記調整後動作モデル及び前記調整後評価モデルが収束した場合、調整後動作モデルを前記目標動作モデルとして決定し、調整後評価モデルを前記目標評価モデルとして決定し、前記調整後動作モデル及び/又は前記調整後評価モデルが収束していない場合、調整後動作モデルを前記初期動作モデルとして決定し、調整後評価モデルを前記初期評価モデルとして決定し、前記サンプル状態データを初期動作モデルに入力するステップの実行に戻るために用いられる。
【0156】
上記の方法と同じ発想に基づいて、本発明の実施例は、ネットワークデバイスを提供し、
図5に示すように、前記ネットワークデバイスは、プロセッサ51及び機械可読記憶媒体52を含み、機械可読記憶媒体52には、プロセッサ51によって実行可能な機械実行可能命令が記憶され、プロセッサ51は、機械実行可能命令を実行して、本発明の上記の例に開示されたファンの回転速度制御方法を実施するために用いられる。
【0157】
上記の方法と同じ発想に基づいて、本発明の実施例は、さらに、機械可読記憶媒体を提供し、前記機械可読記憶媒体には、いくつかのコンピュータ命令が記憶され、前記コンピュータ命令がプロセッサによって実行されると、本発明の上記の例に開示されたファンの回転速度制御方法が実施され得る。
【0158】
ここで、上記機械可読記憶媒体は、実行可能命令、データなどの情報を格納又は記憶することができる電子、磁気、光学、又は他の物理記憶装置であってもよい。例えば、機械可読記憶媒体は、RAM(Radom Access Memory、ランダムアクセスメモリ)、揮発性メモリ、不揮発性メモリ、フラッシュメモリ、ストレージドライブ(例えば、ハードディスクドライブ)、ソリッドステートドライブ、任意のタイプの記憶ディスク(例えば、光ディスク、dvdなど)、又は類似の記憶媒体、又はこれらの組み合わせであってもよい。
【0159】
上記実施例で説明したシステム、装置、モジュール又はユニットは、具体的には、コンピュータチップ、エンティティ、又は何らかの機能を有する製品によって実現されてもよい。典型的な実現デバイスはコンピュータであり、コンピュータの具体的な形態は、パーソナルコンピュータ、ラップトップコンピュータ、携帯電話、カメラ付き電話、スマートフォン、パーソナルデジタルアシスタント、メディアプレーヤ、ナビゲーションデバイス、電子メール送受信デバイス、ゲーム機、タブレット、ウェアラブルデバイス、又はこれらのデバイスの任意のいくつかの組み合わせであってもよい。
【0160】
なお、説明の便宜上、上記の装置を説明するときに機能によって様々なユニットに分けてそれぞれ説明する。もちろん、本発明を実施する際に、各ユニットの機能を同一又は複数のソフトウェア及び/又はハードウェアで実現することも可能である。
【0161】
当業者であれば分かるように、本発明の実施例が、方法、システム、又はコンピュータプログラム製品として提供されてもよい。従って、本発明は、ハードウェアだけからなる実施例、ソフトウェアだけからなる実施例、又はソフトウェアとハードウェアを組み合わせた実施例なる形態を用いてもよい。さらに、本発明の実施例は、コンピュータで使用可能なプログラムコードを含む1つ又は複数のコンピュータで使用可能な記憶媒体(磁気ディスクメモリ、CD-ROM、光学メモリなどを含むが、これらに限定されない)において実施されるコンピュータプログラム製品の形態を採用してもよい。
【0162】
本発明は、本発明の実施例による方法、デバイス(システム)、及びコンピュータプログラム製品のフローチャート及び/又はブロック図を参照して説明される。フローチャート及び/又はブロック図における各フロー及び/又はブロック、並びにフローチャート及び/又はブロック図におけるフロー及び/又はブロックの組み合わせは、コンピュータプログラム命令によって実現されてもよいことが理解されるべきである。これらのコンピュータプログラム命令は、マシンを生成するために、汎用コンピュータ、専用コンピュータ、埋め込みプロセッサ、又は他のプログラム可能なデータ処理デバイスのプロセッサに提供されてもよく、それにより、コンピュータ又は他のプログラム可能なデータ処理デバイスのプロセッサによって実行される命令により、フローチャートの1つ又は複数のフロー、及び/又はブロック図の1つ又は複数のブロックにおいて指定される機能を実現するための装置が生成される。
【0163】
また、これらのコンピュータプログラム命令は、コンピュータ又は他のプログラム可能なデータ処理デバイスに特定の方法で作業するように指示することができるコンピュータ可読メモリに記憶されてもよく、その結果、該コンピュータ可読メモリに記憶されている命令により、フローチャートの1つ又は複数のフロー及び/又はブロック図の1つ又は複数のブロックにおいて指定される機能を実現する命令装置を含む製品が生成される。
【0164】
これらのコンピュータプログラム命令は、コンピュータ又は他のプログラム可能なデータ処理デバイスにロードしてもよく、それにより、一連の動作ステップがコンピュータ又は他のプログラム可能なデバイス上で実行されることで、コンピュータにより実施される処理が生成され、それにより、コンピュータ又は他のプログラム可能なデバイス上で実行される命令により、フローチャートの1つ又は複数のフロー、及び/又はブロック図の1つ又は複数のブロック内で指定される機能を実現するためのステップが提供される。
【0165】
上記は、本発明の実施例に過ぎず、本発明を限定するために使用されるものではない。当業者にとって、本発明に対して様々な修正及び変更がなされ得る。本発明の趣旨と原理から逸脱せずに行った任意の修正、同等な置換、改善など、いずれも本発明の特許請求の範囲に含まれるものとするべきである。
【国際調査報告】