JP2024014837A - 強化学習に基づくオンラインマルチワークフローのスケジューリング方法 - Google Patents

強化学習に基づくオンラインマルチワークフローのスケジューリング方法 Download PDF

Info

Publication number
JP2024014837A
JP2024014837A JP2023118563A JP2023118563A JP2024014837A JP 2024014837 A JP2024014837 A JP 2024014837A JP 2023118563 A JP2023118563 A JP 2023118563A JP 2023118563 A JP2023118563 A JP 2023118563A JP 2024014837 A JP2024014837 A JP 2024014837A
Authority
JP
Japan
Prior art keywords
node
nodes
time
scheduling
workflow
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.)
Pending
Application number
JP2023118563A
Other languages
English (en)
Inventor
殷▲いく▼▲いく▼
Yuyu Yin
黄彬彬
Binbin Huang
黄子信
Zixin Huang
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.)
Hangzhou Dianzi University
Original Assignee
Hangzhou Dianzi University
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 Hangzhou Dianzi University filed Critical Hangzhou Dianzi University
Publication of JP2024014837A publication Critical patent/JP2024014837A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • G06N5/025Extracting rules from data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06311Scheduling, planning or task assignment for a person or group
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0633Workflow analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Tourism & Hospitality (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Educational Administration (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Development Economics (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Game Theory and Decision Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】強化学習に基づく、すべてのワークフローの平均完了時間を可能な限り短縮できるオンラインマルチワークフローのスケジューリング方法を提供する。【解決手段】方法は、まず、システムモデルを構築し、次に、ノードのオフロードルールを構築し、モバイルデバイスがノードをエッジサーバにオフロードするか又はローカルに残して実行するかを選択する。その後、タイムラインモデルを構築し、すべてのタスクの到着イベント及びノードの実行完了イベントを記録する。さらに、強化学習に基づくオンラインマルチワークフローのスケジューリングポリシーを構築し、スケジューリング問題の状態空間及び動作空間を定義し、かつ、スケジューリング問題の報酬関数を設計する。最後に、ポリシー勾配に基づく、オンラインマルチワークフローのスケジューリング問題を解くアルゴリズムを設計して、スケジューリングポリシーの実現に用いる。【選択図】図1

Description

本発明は、モバイルエッジコンピューティングの分野に属し、主に強化学習に基づくオンラインマルチワークフローのスケジューリング方法に関する。
モバイルエッジコンピューティング(Mobile Edge Computing、MEC)ネットワークは、ネットワークのエッジに一定の計算能力を有するエッジサーバを配置し、コンピューティングタスクをローカルユーザに近いネットワークエッジのエッジサービスにオフロードすることにより、より高いサービス品質を提供する。該ネットワークは、低い遅延、強い安全性及びネットワーク輻輳の減少等の顕著な優位性を有し、従来のクラウドコンピューティングモードにおける限られた計算力及び高遅延の問題を解決する。効果的且つ合理的なオフロード決定とリソース割り当ては、MECネットワークの性能を向上させることに役立ち、企業にかなりの利益をもたらす。
しかし、有向非巡回グラフ(Directed Acyclic Graph、DAG)で特徴付けられるワークフローのMECネットワーク環境におけるオンラインオフロード決定とリソース割り当ての共同最適化問題は、非凸のNP-hard問題であり、従来の数学的方法で該種類の問題を解くには、計算量が大きく、複雑性が高く、これはMECネットワークに巨大な負担をもたらす。したがって、モバイルエッジコンピューティング環境で、どのように良好なオフロード決定とリソース割り当てを得るかは、中国内外の学者に広く注目されている。
上記問題を解決するために、本発明は、強化学習に基づくオンラインマルチワークフローのスケジューリング方法を提供する。
本発明は、ステップS1~S5を含む。
S1.システムモデルの構築:
モバイルエッジコンピューティングネットワークは、複数のモバイルデバイス及び複数のエッジサーバで構成され、モバイルデバイスのプロセッサ周波数とコア数はfnとcpunで表され、エッジサーバのプロセッサ周波数とコア数はfmとcpumで表され、エッジサーバ間の帯域幅及びモバイルデバイスとエッジサーバとの間の帯域幅はBで表される。
各モバイルデバイスは、DAGで特徴付けられる互いに独立したタスクをオンラインで生成する。各DAGはダブレットG=(V,E)で表すことができ、ここで、V=(v1,...,vk,...,vk)は該DAGに含まれるノードを示し、E={ekl|vk∈V,vl∈V}はノード間の接続関係を特徴付ける辺を表し、辺eklはノード間の制約依存関係を表し、すなわちノードvkの実行が完了した後にのみ、ノードvlは実行を開始できる。各ノードはいずれもトリプレット
Figure 2024014837000002
として特徴付けることができ、ここで、Wkはノードvkのワークロードを表し、
Figure 2024014837000003
はノードvkの入力データサイズを表し、
Figure 2024014837000004
はノードvkの出力データサイズを表す。各モバイルデバイス及びエッジサーバはいずれも、該モバイルデバイス又はエッジサーバ上で実行されようとするノードを記憶するための自身の待ちキューを有する。
S2.ノードのオフロードルールの構築:
モバイルデバイスはノード単位でオフロードを行い、ノードをエッジサーバにオフロードするか、ローカルに残して実行するかを選択できる。現在のノードのすべての先行ノードの実行が完了し、かつデータ伝送が完了した後にのみ、現在のノードは実行を開始できる。本発明が提供するスケジューリングポリシーは、スケジューリング動作をトリガした後、割り当て対象のノードを選択し、それに割り当てるエッジサーバ又はモバイルデバイスを決定する。モバイルデバイス又はエッジサーバ上のノードvkの完了時刻は式(1)で計算でき、
Figure 2024014837000005
ここで、式(1)のavailはモバイルデバイス又はエッジサーバの利用可能な時刻を表し、
Figure 2024014837000006
Figure 2024014837000007
とavailの大きな値を取ることを表す。式(2)は、現在のノードvkのすべての先行ノードの実行が完了し、かつ出力データの伝送が完了した時刻を表し、ここで、
Figure 2024014837000008
はノードvlの実行が完了した時刻を表し、
Figure 2024014837000009
はノードvkのすべての先行ノードvlをトラバースし、
Figure 2024014837000010
とTtran(vl,vk)の和の最大値を取ることを表す。式(3)はデータ伝送に必要な時間を表し、先行ノードと現在のノードが同じモバイルデバイス又はエッジサーバに実行すれば、データ伝送を行う必要がなく、そうでなければ、データ伝送を行う必要があり、式(4)はノードの実行にかかる時間を表す。
S3.タイムラインモデルの構築:
本発明は、すべてのDAGタスクの到着イベント及びノードの実行完了イベントが記録されるタイムラインモデルを提供する。モバイルデバイス上のタスクの到着過程は、パラメータがλであるポアソン分布に従い、すなわちタスク到着率はλである。スケジューリング動作をトリガする条件が満たされるまで、タイムライン上の現在時刻に最も近いイベントが絶えずキャプチャされ、かつキャプチャされたイベントに従って現在時刻を更新する。スケジューリング動作をトリガする条件は、スケジューリング可能なノードがあり、かつエッジサーバ又は該ノードが属するモバイルデバイスがアイドル状態にあることであり、スケジューリング動作が終了した後、タイムライン上のイベントをキャプチャし続ける。
S4.強化学習に基づくオンラインマルチワークフローのスケジューリングポリシー:
スケジューリング問題の状態空間及び動作空間を定義し、かつスケジューリング問題の報酬関数を設計し、勾配ポリシーを使用して訓練する必要があり、目標は所望の報酬を最大化することである。具体的には、次のサブステップS41~S44を含む。
S41.状態空間の定義:
DAGで特徴付けられるマルチワークフローのオンラインスケジューリング環境で、環境と対話するエージェントはグラフ畳み込みニューラルネットワークを用いてすべてのDAGの特徴を抽出する。グラフ畳み込みニューラルネットワークにより、各ノードは上から下へ自身の子ノードの情報を集約し、同時に自身を親ノードとする子ノードもそれに対応する親ノードによって集約される。メッセージを段階的に伝達して集約することにより、各ノードの埋め込みベクトルを得ることができ、これには各ノードのクリティカルパス値の情報を含む。同時に、これらのノードの埋め込みベクトルに基づいて、エージェントはさらに集約して、ノードが属するDAGの埋め込みベクトルを形成でき、これには該DAGの残りのワークロードの情報を含む。これらのDAGの埋め込みベクトルに基づいて、エージェントは集約して、ローバルな埋め込みベクトルの情報を得ることができ、これにはグローバルなワークロードの情報を含む。
エージェントが環境を観測して得た環境状態は2つの部分に分けられる。
スケジューリングするノードを選択する時、エージェントの観測可能な環境状態Onodeは式(5)で表され、
Figure 2024014837000011
ここで、Enode、EDAG、Eglobaはそれぞれノード、ノードが属するDAG、グローバルレベルの埋め込みベクトルを表し、Tstayは、ノードが属するDAGが環境内に滞在する時間を表し、Twasteは、ノードがモバイルデバイス又はエッジサーバでの実行を待機する時間、及びモバイルデバイス又はエッジサーバが待機する時間を表し、Di,oはノードの入力データと出力データを表し、Wnodeはノードのワークロードを表し、Wpreは、ノードのすべての親ノードのワークロードの合計を表す。
今回割り当てるサーバを選択する時、エージェントの観測可能な環境状態Oserverは式(6)で表され、
Figure 2024014837000012
ここで、stpreは、該ノードの先行ノードのデータ伝送が完了した時刻を表し、stserverは各サーバの利用可能な時間を表し、Texecは、各サーバ上のノードの実行時間を表し、numchildは、ノードのすべての子ノードの合計数及びすべての子孫ノードの合計数を表し、Wchildは、ノードのすべての子ノードとすべての子孫ノードのワークロードの合計を表す。
S42.動作空間の定義:
本発明が提供するポリシーは動作を2つの部分に分け、エージェントは、上記の観測された状態OnodeとOserverを勾配ポリシーに基づく2つのニューラルネットワーク、すなわちポリシーネットワークにそれぞれ入力して、スケジューリング対象のノードから今回スケジューリングされるノードnodeを選択し、利用可能なサーバから該ノードに割り当てるサーバserverを選択し、式(7)で表すことができ、
Figure 2024014837000013
ここで、Aは、定義された動作空間を表す。
S43.報酬関数の定義:
マルチワークフローのオンラインスケジューリング中に、各動作は、該動作の良否を評価するために即座報酬を得る。すべてのDAGタスクの平均完了時間を最終的な長期最適化目標として、リトルの法則に従って、即時報酬は、現在の動作の開始から次の動作のトリガまでの間に、すべてのDAGタスクが環境内に存在する時間として設定され、式(8)、(9)で表すことができ、
Figure 2024014837000014
ここで、Tnowは現在時刻を表し、Tfinish(G)はワークフローGの完了時刻を表し、Tpreは前の動作が実行された時刻を表し、Tarrive(G)はワークフローGの到着時刻を表し、min(Tnow,Tfinish(G))はTnow,Tfinish(G)の最小値を取ることを表し、max(Tpre,Tarrive(G))はTpre,Tarrive(G)の最大値を取ることを表す。
S44.問題の形式化:
オンラインマルチワークフローのスケジューリングポリシーは、勾配ポリシーに基づくニューラルネットワークモデルを考慮でき、その主な目標は、すべての動作の累積報酬を最大化することであり、式(10)で表すことができ、
Figure 2024014837000015
ここで、Tは今回のポリシーの実施にT個の動作があることを表し、kはk番目の動作を表し、Rkはk番目の動作の報酬を表す。
勾配ポリシーの目標は報酬を最大化することであるため、ニューラルネットワークパラメータに対して勾配上昇を実行してパラメータの学習を行う。
S5.ポリシーの実現:
本発明は、ポリシー勾配に基づく、オンラインマルチワークフローのスケジューリング問題(PG-OMWS)を解くアルゴリズムを設計して、ポリシーの実現に用い、ポリシー実現の詳細な過程は、以下のとおりである。
(1)ポリシーの実施段階において、まず、環境パラメータ及びネットワークパラメータを初期化する。環境パラメータは、主に実行キューの長さ、モバイルデバイスとエッジサーバとの間の帯域幅、並びに環境内のDAGタスクの構造及び環境に到着しようとするDAGタスクの構造を含む。ネットワークパラメータは、主に2つのポリシーネットワーク及びグラフ畳み込みニューラルネットワークのネットワークパラメータを含む。その後、エージェントは環境内の各ノードの基本的な特徴を観測し、グラフ畳み込みニューラルネットワークに送信して、2回の集約後にEnodeを得、これらのEnodeに従って再び集約してEDAGを得、すべてのEDAGに従ってさらに集約してEglobaを得、現在の環境と組み合わせてOnodeとOserverを得、これら2つの観測結果に従って、今回の動作に割り当てるノード及び該ノードに割り当てるサーバを選択する。該ノードの完了イベントはタイムラインに記録され、同時に該動作の報酬を計算する。毎回観測された環境状態、動作及び報酬は、保存される。次に、スケジューリング動作をトリガする条件が満たされているか否かを判断し、満たされている場合、スケジューリング動作をトリガし続け、満たされていない場合、スケジューリング動作をトリガする条件が再び満たされるまで、タイムライン上の現在時刻に最も近いイベントをキャプチャし、そのイベントに従って現在時刻を更新する。環境内のすべてのDAGタスクの実行が完了するまで、スケジューリング動作とタイムラインイベントのキャプチャのサイクルを連続的に実行する。
(2)訓練段階において、エージェントは前に保存された環境状態、動作及び報酬に従って、勾配ポリシーを使用して式(11)によってニューラルネットワークのパラメータを更新し、最終的なワークフロースケジューリングポリシーを取得し、
Figure 2024014837000016
ここで、θはネットワークパラメータを表し、αは学習率を表し、Tは今回のポリシーの実施にT個の動作があることを表し、kはk番目の動作を表し、πθ(okk)はθをパラメータとするニューラルネットワークが環境状態okで動作αkを行う確率を表し、rkは即時報酬に基づいて、さらに減衰して得られた総合報酬を表す。∇θlnπθ(okk)rkはlnπθ(skk)rkの勾配を求めることを表し、
Figure 2024014837000017
はすべての動作について求めた勾配を積算することを表す。
(3)ポリシーの実行段階:環境内にワークフローが動的に到着すると、最終的なワークフロースケジューリングポリシーにより、該ワークフロー内のノードを実行するエッジサーバ又はモバイルデバイスをノードを実行するサーバとして選択し、ワークフロー内のノードを順次実行して完了する。
本発明の有益な効果は以下のとおりである。グラフ畳み込みニューラルネットワークを用いてワークフローの構造的特徴を抽出し、抽出された特徴に基づいてオフロード決定とリソース割り当てを行い、モバイルエッジコンピューティングのマルチワークフローのオンラインスケジューリング環境で、初めて勾配ポリシーと組み合わせた解決手段を提供する。環境内にワークフローが動的に到着すると、本発明は、現在のワークフロー及びサーバの状態をリアルタイムで分析し、ワークフローのノードをあるサーバにスケジューリングして実行することができる。本方法は、複雑さが低く、すべてのワークフローの平均完了時間を可能な限り短縮する。
本発明の強化学習に基づくオンラインマルチワークフローのスケジューリングポリシーのフローチャートである。 タスク到着率λの影響下での、本発明とFIFO方法、SJF方法、Random方法、LocalEx方法ム及びEdgeEx方法との実験結果の比較図である。 エッジサーバのプロセッサコア数の影響下での、本発明とFIFO方法、SJF方法、Random方法、LocalEx方法及びEdgeEx方法との実験結果の比較図である。 モバイルデバイスのプロセッサコア数の影響下での、本発明とFIFO方法、SJF方法、Random方法、LocalEx方法及びEdgeEx方法との実験結果の比較図である。 エッジサーバの数の影響下での、本発明とFIFO方法、SJF方法、Random方法、LocalEx方法及びEdgeEx方法との実験結果の比較図である。 モバイルデバイスの数の影響下での、本発明とFIFO方法、SJF方法、Random方法、LocalEx方法及びEdgeEx方法との実験結果の比較図である。
本発明の目的、技術的解決手段及び利点をより明確に分かりやすくするために、以下、図面を参照しながら本発明をさらに詳しく説明する。
図1に示すように、本発明が提供する強化学習に基づくオンラインマルチワークフローのスケジューリング方法は、以下のステップS1~S5を含む。
S1.システムモデルの構築:
モバイルエッジコンピューティングネットワークは、複数のモバイルデバイス及び複数のエッジサーバで構成され、モバイルデバイスのプロセッサ周波数とコア数はfnとcpunで表され、エッジサーバのプロセッサ周波数とコア数はfmとcpumで表され、エッジサーバ間の帯域幅及びモバイルデバイスとエッジサーバとの間の帯域幅はでB表される。
各モバイルデバイスは、DAGで特徴付けられる互いに独立したタスクをオンラインで生成する。各DAGはダブレットG=(V,E)で表すことができ、ここで、V=(v1,...,vk,...,vk)は該DAGに含まれるノードを表し、E={ekl|vk∈V,vl∈V}はノード間の接続関係を特徴付ける辺を表す。辺eklはノード間の制約依存関係を表し、すなわちノードvkの実行が完了した後にのみ、ノードvlは実行を開始できる。各ノードはいずれもトリプレット
Figure 2024014837000018
として特徴付けることができ、ここで、Wkはノードのワークロードを表し、
Figure 2024014837000019
はノードvkの入力データサイズを表し、
Figure 2024014837000020
はノードの出力データサイズを表す。各モバイルデバイス及びエッジサーバはいずれも、該モバイルデバイス又はエッジサーバ上で実行されようとするノードを記憶するための自身の待ちキューを有する。
S2.ノードのオフロードルールの構築:
モバイルデバイスはノード単位でオフロードを行い、ノードをエッジサーバにオフロードするか、ローカルに残して実行するかを選択できる。現在のノードのすべての先行ノードの実行が完了し、かつデータ伝送が完了した後にのみ、現在のノードは実行を開始できる。本発明が提供するスケジューリングポリシーは、スケジューリング動作をトリガした後、割り当て対象のノードを選択し、それに割り当てるエッジサーバ又はモバイルデバイスを決定する。モバイルデバイス又はエッジサーバ上のノードvkの完了時刻は式(1)で計算でき、
Figure 2024014837000021
ここで、式(1)のavailは、モバイルデバイス又はエッジサーバの利用可能時刻を表し、式(2)は、現在のノードvkのすべての先行ノードの実行が完了し、かつ出力データの伝送が完了した時刻を表す。式(3)はデータ伝送に必要な時間を表し、先行ノードと現在のノードが同じモバイルデバイス又はエッジサーバに実行すれば、データ伝送を行う必要がなく、そうでなければ、データ伝送を行う必要がある。式(4)はノードの実行にかかる時間を表す。
S3.タイムラインモデルの構築:
本発明は、すべてのDAGタスクの到着イベント及びノードの実行完了イベントが記録されるタイムラインモデルを提供する。モバイルデバイス上のタスクの到着過程は、パラメータがλであるポアソン分布に従う。スケジューリング動作をトリガする条件が満たされるまで、タイムライン上の現在時刻に最も近いイベントが絶えずキャプチャされ、かつキャプチャされたイベントに従って現在時刻を更新する。スケジューリング動作をトリガする条件は、スケジューリング可能なノードがあり、かつエッジサーバ又は該ノードが属するモバイルデバイスがアイドル状態にあることである。スケジューリング動作が終了した後、タイムライン上のイベントをキャプチャし続ける。
S4.強化学習に基づくオンラインマルチワークフローのスケジューリングポリシー:
スケジューリング問題の状態空間及び動作空間を定義し、かつスケジューリング問題の報酬関数を設計し、勾配ポリシーを使用して訓練する必要があり、目標は、所望の報酬を最大化することである。具体的には、次のサブステップS41~S44を含む。
S41.状態空間の定義:
DAGの形式で特徴付けられるマルチワークフローのオンラインスケジューリング環境で、環境と対話するエージェントはグラフ畳み込みニューラルネットワークを使用してすべてのDAGの特徴を抽出し、各ノードは上から下へ自身の子ノードの情報を集約し、同時に自身を親ノードとする子ノードも自身の親ノードによって集約される。メッセージを段階的に伝達して集約することにより、各ノードの埋め込みベクトルを得ることができ、これには各ノードのクリティカルパス値の情報を含む。同時に、これらのノードの埋め込みベクトルに基づいて、エージェントはさらに集約して、ノードが属するDAGの埋め込みベクトルを形成でき、これには該DAGの残りのワークロードの情報を含む。これらのDAGの埋め込みベクトルに基づいて、エージェントは集約して、ローバルな埋め込みベクトルの情報を得ることができ、これにはグローバルなワークロードの情報を含む。ノードの埋め込みベクトルがあると、エージェントは該ノードに沿った下向きのクリティカルパスのワークロードを判断でき、DAG及びグローバルレベルの埋め込みベクトルがあると、エージェントはジョブの残りのワークロードの相対的な大きさを識別できる。
エージェントが環境を観測して得た環境状態は2つの部分に分けられる。
スケジューリングするノードを選択する時、エージェントの観測可能な環境状態Onodeは式(5)で表され、
Figure 2024014837000022
ここで、Enode、EDAG、Eglobaはそれぞれノード、ノードが属するDAG、グローバルレベルの埋め込みベクトルを表し、Tstayは、ノードが属するDAGが環境内に滞在する時間を表し、Twasteは、ノードがモバイルデバイス又はエッジサーバでの実行を待機する時間、及びモバイルデバイス又はエッジサーバが待機する時間を表し、Di,oはノードの入力データと出力データを表し、Wnodeはノードのワークロードを表し、Wpreは、ノードのすべての親ノードのワークロードの合計を表す。
今回割り当てるサーバを選択する時、エージェントの観測可能な環境状態空間Oserverは式(6)で表すことができ、
Figure 2024014837000023
ここで、stpreは、該ノードの先行ノードのデータ伝送が完了した時刻を表し、stserverは各サーバの利用可能な時間を表し、Texecは、各サーバ上のノードの実行時間を表し、numchildは、ノードのすべての子ノードの合計数及びすべての子孫ノードの合計数を表し、Wchildは、ノードのすべての子ノードとすべての子孫ノードのワークロードの合計を表す。
S42.動作空間の定義:
本発明が提供するポリシーは動作を2つの部分に分け、エージェントは、上記の観測された状態OnodeとOserverを勾配ポリシーの2つのニューラルネットワークにそれぞれ入力して、スケジューリング対象のノードから今回スケジューリングされるノードnodeを選択し、利用可能なサーバから該ノードに割り当てるサーバserverを選択し、式(7)で表すことができ、
Figure 2024014837000024
ここで、Aは、定義された動作空間を表し、
S43.報酬関数の定義:
マルチワークフローのオンラインスケジューリング中に、各動作は、動作の良否を評価するために即座報酬を得る。すべてのDAGタスクの平均完了時間を最終的な長期最適化目標として、リトルの法則に従って、即時報酬は、現在の動作の開始から次の動作のトリガまでの間に、すべてのDAGタスクが環境内に存在する時間として設定され、式(8)、(9)で表すことができ、
Figure 2024014837000025
ここで、Tnowは現在時刻を表し、Tfinish(G)はワークフローGの完了時刻を表し、Tpreは前の動作が実行された時刻を表し、Tarrive(G)はワークフローGの到着時刻を表し、min(Tnow,Tfinish(G))は、Tnow,Tfinish(G)の最小値を取ることを表し、max(Tpre,Tarrive(G))は、Tpre,Tarrive(G)の最大値を取ることを表す。リトルの法則に従って、タスクの到着速度は外部によって決定されるため、タスクが環境内に留まる時間が短いほど、環境内のタスクの平均数は少なくなり、すべてのタスクの平均完了時間は短くなる。したがって、該即時報酬は、動作の良否を良好に評価できる。
S44.問題の形式化:
オンラインマルチワークフローのスケジューリングポリシーは、勾配ポリシーに基づくモデルを考慮でき、その主な目標は、すべての動作の累積報酬を最大化することであり、式(10)で表すことができ、
Figure 2024014837000026
ここで、Tは今回のポリシーの実施にT個の動作があることを表し、kはk番目の動作を表し、Rkはk番目の動作の報酬を表す。
勾配ポリシーの目標は報酬を最大化することであるため、ニューラルネットワークパラメータに対して勾配上昇を実行してパラメータの学習を行う。
S5.ポリシーの実現:
本発明は、ポリシー勾配に基づく、オンラインマルチワークフローのスケジューリング問題(PG-OMWS)を解くアルゴリズムを設計して、ポリシーの実現に用い、ポリシー実現の詳細な過程は、以下のとおりである。
(1)ポリシーの実行段階において、まず、環境パラメータ及びネットワークパラメータを初期化する。環境パラメータは、主に実行キューの長さ、モバイルデバイスとエッジサーバとの間の帯域幅、並びに環境内に既に存在したDAGタスクの構造及び環境に到着しようとするDAGタスクの構造を含む。ネットワークパラメータは、主に2つのポリシーネットワーク及びグラフ畳み込みニューラルネットワークのネットワークパラメータを含む。その後、エージェントは環境下での各ノードの基本的な特徴を観測し、グラフ畳み込みニューラルネットワークに送信して、2回の集約後にEnodeを得、これらのEnodeに従って再び集約してEDAGを得、すべてのEDAGに従ってさらに集約してEglobaを得、現在の環境と組み合わせてOnodeとOserverを得、これら2つの観測結果に従って、今回の動作に割り当てるノード及び該ノードに割り当てるサーバを選択する。該ノードの完了イベントはタイムラインに記録され、同時に該動作の報酬Rを計算する。毎回観測された環境状態、動作及び報酬は、保存される。次に、スケジューリング動作をトリガする条件が満たされているか否かを判断し、満たされている場合、スケジューリング動作をトリガし続け、満たされていない場合、スケジューリング動作をトリガする条件が再び満たされるまで、タイムライン上の現在時刻に最も近いイベントをキャプチャし、該イベントに従って現在時刻を更新する。環境内のすべてのDAGの実行が完了するまで、スケジューリング動作とタイムラインイベントのキャプチャのサイクルを連続的に実行する。
(2)訓練段階において、エージェントは前に保存された環境状態、動作及び報酬に従って、勾配ポリシーを使用して式(11)によってネットワークパラメータを更新し、最終的なワークフロースケジューリングポリシーを取得し、
Figure 2024014837000027
ここで、θはネットワークパラメータを表し、αは学習率を表し、Tは今回のポリシーの実施にT個の動作があることを表し、kはk番目の動作を表し、πθ(okk)はθをパラメータとするニューラルネットワークが環境状態okで動作αkを行う確率を表し、rkは即時報酬に基づいて、さらに減衰して得られた総合報酬を表し、∇θlnπθ(okk)rkはlnπθ(skk)rkの勾配を求めることを表し、
Figure 2024014837000028
はすべての動作について求めた勾配を積算することを表す。
(3)ポリシーの実行段階:環境内にワークフローが動的に到着すると、最終的なワークフロースケジューリングポリシーにより、該ワークフロー内のノードを実行するエッジサーバ又はモバイルデバイスをノードを実行するサーバとして選択し、ワークフロー内のノードを順次実行して完了する。
本実施例のステップは具体的な実施形態と同じであり、ここでは説明を省略する。
好ましくは、S1に記載のモバイルデバイスの数は3、そのプロセッサコア数cpun=4、プロセッサ周波数はfn=2.0GHZである。エッジサーバの数は6、そのプロセッサコア数はcpum=6、プロセッサ周波数はfm=2.5GHZである。モバイルデバイスとエッジサーバとの間の帯域幅、エッジサーバとエッジサーバとの間の帯域幅は、[10,100]MB/sの間でランダムに値を取る。DAGタスクは、最初に環境内に10個あり、その後、モバイルデバイスによってオンラインで15個生成される。DAG内のノードのワークロードは、[10,100]GHZ・Sの間でランダムに値を取る。ノードの出力データはMB単位でワークロードの0.1倍に数値的に設定され、入力データはすべての親ノードの出力データの合計である。
好ましくは、S2に記載のポアソン分布パラメータ、すなわちタスク到着率λは5に設定される。
好ましくは、S5に記載のグラフ畳み込みニューラルネットワークの集約が通過するニューラルネットワーク隠れ層構造は同じであり、2つの隠れ層があり、ニューロンの数はそれぞれ16と8であり、2つのポリシーネットワークの隠れ層の構造も同様で、いずれも3つの隠れ層があり、ニューロンの数はそれぞれ32、16、8である。本発明は、Adamオプティマイザを使用してターゲットネットワークを更新し、活性化関数はいずれもleakyReluを用い、学習率は0.0003に設定され、報酬減衰係数γは1に設定される。
以下、比較方法の実施及び実施結果について示す。
提供された方法フレームワークの有効性を評価するために、他の5つの方法(SJF、FIFO、Random、LocalEx、EdgeEx)が比較のために使用される。以下、5つの方法を簡単に説明する。
(1)SJF:該方法は、短いジョブ優先の原則に従って、実行するノードを選択し、DAG内のノードのワークロードの合計をDAGのワークロードとし、ワークロードが少ないほど、スケジューリングが早くなり、該ノードの実行完了時間が最も早いエッジサーバ又はモバイルデバイスを該ノードを実行するサーバとして選択する。
(2)FIFO:該方法は、先入れ先出しの原則に従って、実行するノードを選択し、該ノードの実行完了時間が最も早いエッジサーバ又はモバイルデバイスを該ノードを実行するサーバとして選択する。
(3)LocalEx:該方法は、常にモバイルデバイスを選択してノードを実行し、ノードの実行順序は先入れ先出しの原則に従う。
(4)EdgeEx:この略語は、ノードが常にエッジサーバにオフロードされることを意味し、すなわち、開始ノードと終了ノード以外に、該方法は、ノードの実行完了時間が最も早いエッジサーバを常に選択し、ノードの実行順序は先着順の原則に従う。
(5)Random:該方法は、今回割り当てられたノードとエッジサーバ又はモバイルデバイスを該ノードを実行するサーバとしてランダムに選択する。
タスク到着率、エッジサーバのプロセッサコア数、モバイルデバイスのプロセッサコア数、エッジサーバの数及びモバイルデバイスの数という複数の要因のすべてのタスクの平均完了時間に対する影響をそれぞれ評価及び分析した。
様々なタスク到着間隔のパフォーマンスに対する影響を調べるために、タスク到着間隔を3から7単位時間まで1ずつ増分して変更した。6つの方法によって得られた平均完了時間を図2に示した。図2から、他の方法に比べて、本発明が提供するPGーOMWSによって実現される方法は平均完了時間がより短く、タスク到着間隔が増加するにつれて平均完了時間も徐々に減少することが観察された。これは、タスク到着間隔が増加するにつれて、同時に処理する必要があるノードの数が減り、平均完了時間が短縮されるためであった。
エッジサーバの計算能力のパフォーマンスに対する影響を調べるために、エッジサーバのプロセッサコア数、すなわちCPUコア数を4コアから8コアまで1ずつ増分して変更した。実験における6つの方法で得られた平均完了時間を図3に示した。本発明が提供するPGーOMWSによって実現される方法は、最も短い平均完了時間を得ることができ、CPUコア数が増加するにつれて、平均完了時間は徐々に減少することが分かった。これは、CPUコア数の増加により、ノードの処理遅延が大幅に短縮され、平均完了時間が短縮されるためであった。
モバイルデバイスの計算能力の影響を調べるために、モバイルデバイスのCPUコア数を2コアから6コアまで1ずつ増分して変更した。6つの方法によって得られた平均完了時間を図4に示した。他の方法に比べて、本発明が提供するPG-OMWSによって実現される方法は、より低い平均完了時間を得ることができた。モバイルデバイスのCPUコア数が増加するにつれて、平均完了時間は徐々に減少した。これは、モバイルデバイスのCPUコア数が増加するにつれて、ノードの処理速度が大幅に加速され、平均完了時間が短縮されるためであった。
様々な数のエッジサーバの方法性能に対する影響を調べるために、エッジサーバの数を1から5まで1ずつ増分して設定した。6つの方法によって得られた平均完了時間を図5に示した。図5の結果から、エッジサーバの数が変化した場合、本発明が提供するPGーOMWSによって実現される方法は、他の方法よりも常に優れていることが示された。エッジサーバの数が増加するにつれて、平均完了時間は減少した。その理由は、より多くのエッジサーバがより多くのコンピューティングリソースを提供し、平均完了時間が減少するためであった。また、LocalExポリシーの曲線は平坦であった。これは、LocalEx方法が、エッジサーバの数に関係なく、すべてのノードをローカルに実行するためであった。
モバイルデバイスの数のパフォーマンスに対する影響を調べるために、様々な数のモバイルデバイスに基づいて実験を行った。エッジサーバの数を4から8まで1ずつ増分して設定した。関連する結果を図6に示した。図6から、モバイルデバイスの数が変化した場合、本発明が提供するPGーOMWSによって実現される方法は、常に他の方法よりも優れていることが分かった。モバイルデバイスの数が増加するにつれて、平均完了時間は徐々に減少した。その理由は、より多くのモバイルデバイスがより多くのコンピューティングリソースを提供し、平均完了時間が短縮されるためであった。また、モバイルデバイスの数が過度に増加した場合、EdgeEx方法はそれに応じて減少し続けることはなかった。これは、EdgeEx方法が、モバイルデバイスの数に関係なく、ほとんどのノードをエッジサーバにオフロードするためであった。

Claims (10)

  1. 強化学習に基づくオンラインマルチワークフローのスケジューリング方法であって、ステップS1~S5を含み、
    S1.システムモデルの構築:
    モバイルエッジコンピューティングネットワークは、複数のモバイルデバイス及び複数のエッジサーバで構成され、モバイルデバイスのプロセッサ周波数とコア数はfnとcpunで表され、エッジサーバのプロセッサ周波数とコア数はfmとcpumで表され、エッジサーバ間の帯域幅及びモバイルデバイスとエッジサーバとの間の帯域幅はBで表され、
    各モバイルデバイスによってオンラインで生成された互いに独立したタスクを有向非巡回グラフ(DAG)で特徴付けると、各有向非巡回グラフ(DAG)はダブレットG=(V,E)として表され、ここで、V=(v1,...,vk,...,vk)は、前記DAGに含まれるノードを表し、E={ekl|vk∈V,vl∈V}はノード間の接続関係を特徴付ける辺を表し、辺eklはノード間の制約依存関係を表し、すなわちノードvkの実行が完了した後にのみ、ノードvlは実行を開始でき、
    各ノードはトリプレット
    Figure 2024014837000029
    として特徴付けることができ、ここで、Wkはノードvkのワークロードを表し、
    Figure 2024014837000030
    はノードvkの入力データサイズを表し、
    Figure 2024014837000031
    はノードvkの出力データサイズを表し、
    S2.ノードのオフロードルールの構築:
    スケジューリングポリシーは、スケジューリング動作をトリガした後、割り当て対象のノードを選択し、それに割り当てるエッジサーバ又はモバイルデバイスを決定し、
    S3.タイムラインモデルの構築:
    前記タイムラインモデルは、すべてのDAGタスクの到着イベント及びノードの実行完了イベントを記録し、
    モバイルデバイス上のタスクの到着過程は、パラメータがλであるポアソン分布に従い、すなわちタスク到着率はλであり、スケジューリング動作をトリガする条件が満たされるまで、タイムライン上の現在時刻に最も近いイベントが絶えずキャプチャされ、かつキャプチャされたイベントに従って現在時刻を更新し、スケジューリング動作が終了した後、タイムライン上のイベントをキャプチャし続け、
    S4.強化学習に基づくオンラインマルチワークフロースのケジューリングポリシー:
    スケジューリング問題の状態空間及び動作空間を定義し、かつスケジューリング問題の報酬関数を設計し、勾配ポリシーを使用して訓練し、
    S41.状態空間の定義:
    エージェントが環境を観測して得た環境状態は2つの部分に分けられ、
    スケジューリングするノードを選択する時、エージェントの観測可能な環境状態Onodeは式(5)で表され、
    Figure 2024014837000032
    ここで、Enode、EDAG、Eglobaはそれぞれノード、ノードが属するDAG、グローバルレベルの埋め込みベクトルを表し、Tstayは、ノードが属するDAGが環境内に滞在する時間を表し、Twasteは、ノードがモバイルデバイス又はエッジサーバでの実行を待機する時間、及びモバイルデバイス又はエッジサーバが待機する時間を表し、Di,oはノードの入力データと出力データを表し、Wnodeはノードのワークロードを表し、Wpreは、ノードのすべての親ノードのワークロードの合計を表し、
    割り当てるサーバを選択する時、エージェントの観測可能な環境状態Oserverは式(6)で表され、
    Figure 2024014837000033
    ここで、stpreは、前記ノードの先行ノードのデータ伝送が完了した時刻を表し、stserverは各サーバの利用可能な時間を表し、Texecは各サーバ上のノードの実行時間を表し、numchildは、ノードのすべての子ノードの合計数及びすべての子孫ノードの合計数を表し、Wchildは、ノードのすべての子ノードとすべての子孫ノードのワークロードの合計を表し、
    S42.動作空間の定義:
    エージェントは、上記の観測された状態OnodeとOserverを勾配ポリシーに基づく2つのニューラルネットワークにそれぞれ入力して、スケジューリング対象のノードから今回スケジューリングされるノードnodeを選択し、利用可能なサーバから前記ノードに割り当てるサーバserverを選択し、式(7)で表され、
    Figure 2024014837000034
    ここで、Aは定義された動作空間を表し、
    S43.報酬関数の定義:
    即時報酬は、今回の動作の開始から次の動作のトリガまでの間に、すべてのDAGタスクが環境内に存在する時間Rとして設定され、式(8)、(9)で表され、
    Figure 2024014837000035
    ここで、Tnowは現在時刻を表し、Tfinish(G)はワークフローGの完了時刻を表し、Tpreは前の動作が実行された時刻を表し、Tarrive(G)はワークフローGの到着時刻を表し、min(Tnow,Tfinish(G))はTnow,Tfinish(G)の最小値を取ることを表し、max(Tpre,Tarrive(G))はTpre,Tarrive(G)の最大値を取ることを表し、
    S44.問題の形式化
    オンラインマルチワークフローのスケジューリングポリシーの勾配ポリシーに基づくニューラルネットワークモデルの主な目標は、すべての動作の累積報酬を最大化することであり、式(10)で表され、
    Figure 2024014837000036
    ここで、Tは今回のポリシーの実施にT個の動作があることを表し、kはk番目の動作を表し、Rkはk番目の動作の報酬を表し、
    ニューラルネットワークパラメータに対して勾配上昇を実行してパラメータの学習を行い、
    S5.ポリシーの実現:
    (1)まず、環境パラメータ及びネットワークパラメータを初期化し、次に、エージェントは環境内の各ノードの基本的な特徴を観測し、グラフ畳み込みニューラルネットワークに送信して、2回の集約後にEnodeを得、これらのEnodeに従って再び集約してEDAGを得、すべてのEDAGに従ってさらに集約してEglobaを得、現在の環境と組み合わせてOnodeとOserverを得、今回の動作に割り当てるノード及び前記ノードに割り当てるサーバを選択し、前記ノードの完了イベントはタイムラインに記録され、同時に前記動作の報酬を計算し、毎回観測された環境状態、動作及び報酬は、保存され、
    次に、スケジューリング動作をトリガする条件が満たされているか否かを判断し、満たされている場合、スケジューリング動作をトリガし続け、満たされていない場合、スケジューリング動作をトリガする条件が再び満たされるまで、タイムライン上の現在時刻に最も近いイベントをキャプチャし、前記イベントに従って現在時刻を更新し、
    環境内のすべてのDAGタスクの実行が完了するまで、スケジューリング動作とタイムラインイベントのキャプチャのサイクルを連続的に実行し、
    (2)エージェントは前に保存された環境状態、動作及び報酬に従って、勾配ポリシーを使用して式(11)によってネットワークパラメータを更新し、最終的なワークフロースケジューリングポリシーを取得し、
    Figure 2024014837000037
    ここで、θはネットワークパラメータを表し、αは学習率を表し、Tは今回のポリシーの実施にT個の動作があることを表し、kはk番目の動作を表し、πθ(okk)は、θをパラメータとするニューラルネットワークが環境状態okで動作αkを行う確率を表し、rkは、即時報酬に基づいて、さらに減衰して得られた総合報酬を表し、∇θlnπθ(okk)rkは、lnπθ(skk)rkの勾配を求めることを表し、
    Figure 2024014837000038
    はすべての動作について求めた勾配を積算することを表し、
    環境内にワークフローが動的に到着すると、最終的なワークフロースケジューリングポリシーにより、前記ワークフロー内のノードを実行するエッジサーバ又はモバイルデバイスを前記ノードを実行するサーバとして選択し、ワークフロー内のノードを順次実行して完了することを特徴とする強化学習に基づくオンラインマルチワークフローのスケジューリング方法。
  2. ステップS1に記載のモバイルデバイス及びエッジサーバはいずれも、前記モバイルデバイス又はエッジサーバ上で実行されるノードを記憶するための自身の待ちキューを有することを特徴とする請求項1に記載の強化学習に基づくオンラインマルチワークフローのスケジューリング方法。
  3. ステップS2に記載のモバイルデバイスはノード単位でオフロードを行い、ノードをエッジサーバにオフロードするか、ローカルに残して実行するかを選択することを特徴とする請求項1に記載の強化学習に基づくオンラインマルチワークフローのスケジューリング方法。
  4. ステップS2において、現在のノードのすべての先行ノードの実行が完了し、かつデータ伝送が完了した後にのみ、現在のノードは実行を開始できることを特徴とする請求項1に記載の強化学習に基づくオンラインマルチワークフローのスケジューリング方法。
  5. ステップS2において、モバイルデバイス又はエッジサーバ上のノードvkの完了時刻は、式(1)で計算され、
    Figure 2024014837000039
    ここで、式(1)のavailは、モバイルデバイス又はエッジサーバの利用可能な時刻を表し、
    Figure 2024014837000040
    は、
    Figure 2024014837000041
    とavailの大きな値を取ることを表し、式(2)は、現在のノードvkのすべての先行ノードの実行が完了し、かつ出力データの伝送が完了した時刻を表し、ここで、
    Figure 2024014837000042
    はノードvlの実行が完了した時刻を表し、
    Figure 2024014837000043
    はノードvkのすべての先行ノードvlをトラバースし、
    Figure 2024014837000044
    とTtran(vl,vk)の和の最大値を取ることを表し、式(3)はデータ伝送に必要な時間を表し、先行ノードと現在のノードが同じモバイルデバイス又はエッジサーバに実行すれば、データ伝送を行う必要がなく、そうでなければ、データ伝送を行う必要があり、ここで、Bはエッジサーバ間の帯域幅及びモバイルデバイスとエッジサーバとの間の帯域幅を表し、
    Figure 2024014837000045
    はノードvlの出力データサイズを表し、式(4)はノードの実行にかかる時間を表し、ここで、fnとcpunはそれぞれモバイルデバイスのプロセッサ周波数とコア数を表し、fmとcpumはそれぞれエッジサーバのプロセッサ周波数とコア数を表すことを特徴とする請求項1に記載の強化学習に基づくオンラインマルチワークフローのスケジューリング方法。
  6. ステップS3に記載のスケジューリング動作をトリガする条件は、スケジューリング可能なノードがあり、かつエッジサーバ又は前記ノードが属するモバイルデバイスがアイドル状態にあることであることを特徴とする請求項1に記載の強化学習に基づくオンラインマルチワークフローのスケジューリング方法。
  7. ステップS4において、DAGで特徴付けられるマルチワークフローのオンラインスケジューリング環境で、環境と対話するエージェントは、グラフ畳み込みニューラルネットワークを用いてすべてのDAGの特徴を抽出することを特徴とする請求項1に記載の強化学習に基づくオンラインマルチワークフローのスケジューリング方法。
  8. ステップS41において、グラフ畳み込みニューラルネットワークにより、各ノードは上から下へ自身の子ノードの情報を集約し、同時に自身を親ノードとする子ノードもそれに対応する親ノードによって集約され、各ノードの埋め込みベクトルを取得し、これには各ノードのクリティカルパス値の情報を含み、
    同時に、これらのノードの埋め込みベクトルに基づいて、エージェントはさらに集約して、ノードが属するDAGの埋め込みベクトルを形成し、これには前記DAGの残りのワークロードの情報を含み、
    これらのDAGの埋め込みベクトルに基づいて、エージェントは集約して、ローバルな埋め込みベクトルを取得し、これにはグローバルなワークロードの情報を含むことを特徴とする請求項1に記載の強化学習に基づくオンラインマルチワークフローのスケジューリング方法。
  9. ステップS43において、マルチワークフローオンラインスケジューリング中に、各動作は、前記動作の良否を評価するために即時報酬を得、すべてのDAGタスクの平均完了時間を最終的な長期最適化目標とすることを特徴とする請求項1に記載の強化学習に基づくオンラインマルチワークフローのスケジューリング方法。
  10. ステップS5に記載の環境パラメータ及びネットワークパラメータ:
    前記環境パラメータは、主に実行キューの長さ、モバイルデバイスとエッジサーバとの間の帯域幅、並びに環境内のDAGタスクの構造及び環境に到着しようとするDAGタスクの構造を含み、
    前記ネットワークパラメータには、主に2つのポリシーネットワーク及びグラフ畳み込みニューラルネットワークのネットワークパラメータを含むことを特徴とする請求項1に記載の強化学習に基づくオンラインマルチワークフローのスケジューリング方法。
JP2023118563A 2022-07-20 2023-07-20 強化学習に基づくオンラインマルチワークフローのスケジューリング方法 Pending JP2024014837A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210857988.8A CN115114030B (zh) 2022-07-20 2022-07-20 一种基于强化学习的在线多工作流调度方法
CN202210857988.8 2022-07-20

Publications (1)

Publication Number Publication Date
JP2024014837A true JP2024014837A (ja) 2024-02-01

Family

ID=83334291

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023118563A Pending JP2024014837A (ja) 2022-07-20 2023-07-20 強化学習に基づくオンラインマルチワークフローのスケジューリング方法

Country Status (4)

Country Link
US (1) US20240137404A1 (ja)
JP (1) JP2024014837A (ja)
CN (1) CN115114030B (ja)
GB (1) GB2624736A (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111756653B (zh) * 2020-06-04 2022-03-04 北京理工大学 基于图神经网络深度强化学习的多coflow调度方法
CN112905312A (zh) * 2021-01-20 2021-06-04 杭州电子科技大学 边缘计算环境中基于深度q神经网络的工作流调度方法
US11206221B1 (en) * 2021-06-04 2021-12-21 National University Of Defense Technology Online task dispatching and scheduling system and method thereof
CN113778648B (zh) * 2021-08-31 2023-07-11 重庆理工大学 分层边缘计算环境中基于深度强化学习的任务调度方法

Also Published As

Publication number Publication date
CN115114030A (zh) 2022-09-27
GB202311034D0 (en) 2023-08-30
CN115114030B (zh) 2023-06-16
GB2624736A (en) 2024-05-29
US20240137404A1 (en) 2024-04-25

Similar Documents

Publication Publication Date Title
Han et al. Tailored learning-based scheduling for kubernetes-oriented edge-cloud system
US9386086B2 (en) Dynamic scaling for multi-tiered distributed systems using payoff optimization of application classes
Yang et al. MIRAS: Model-based reinforcement learning for microservice resource allocation over scientific workflows
CN109101339A (zh) 异构集群中视频任务并行化方法、装置及异构集群系统
Swarup et al. Task scheduling in cloud using deep reinforcement learning
Tang et al. Dependent task offloading for multiple jobs in edge computing
CN108111335A (zh) 一种调度和链接虚拟网络功能的方法及系统
CN116069512B (zh) 一种基于强化学习的Serverless高效资源分配方法及系统
Swarup et al. Energy efficient task scheduling in fog environment using deep reinforcement learning approach
CN114327526B (zh) 一种移动边缘计算环境中的任务卸载方法及其应用
Yu et al. Communication-aware application mapping and scheduling for NoC-based MPSoCs
CN116450312A (zh) 面向流水线并行训练的调度策略确定方法及系统
Tang et al. Collaborative cloud-edge-end task offloading with task dependency based on deep reinforcement learning
Yu et al. Drag-JDEC: A deep reinforcement learning and graph neural network-based job dispatching model in edge computing
Salehnia et al. SDN-based optimal task scheduling method in Fog-IoT network using combination of AO and WOA
CN111814981B (zh) 一种分布式实时规则推理调度方法
CN116954866A (zh) 基于深度强化学习的边缘云下任务调度方法及系统
JP2024014837A (ja) 強化学習に基づくオンラインマルチワークフローのスケジューリング方法
Li et al. Efficient data offloading using Markovian decision on state reward action in edge computing
CN116582407A (zh) 一种基于深度强化学习的容器化微服务编排系统及方法
Li et al. A customized reinforcement learning based binary offloading in edge cloud
Gao et al. Deep reinforcement learning and markov decision problem for task offloading in mobile edge computing
Duan et al. Reducing average job completion time for DAG-style jobs by adding idle slots
Barika et al. Adaptive scheduling for efficient execution of dynamic stream workflows
Zhu et al. Smart Offloading Computation-intensive & Delay-intensive Tasks of Real-time Workflows in Mobile Edge Computing

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230720

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240626