特許第6952190号(P6952190)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ シェンチェン ユニバーシティーの特許一覧 ▶ ハルビン インスティテュート オブ テクノロジー シェンチェン グラデュエート スクールの特許一覧

特許6952190クラウドコンピューティングのタスク割り当て方法、装置、設備及び記憶媒体
<>
  • 特許6952190-クラウドコンピューティングのタスク割り当て方法、装置、設備及び記憶媒体 図000047
  • 特許6952190-クラウドコンピューティングのタスク割り当て方法、装置、設備及び記憶媒体 図000048
  • 特許6952190-クラウドコンピューティングのタスク割り当て方法、装置、設備及び記憶媒体 図000049
  • 特許6952190-クラウドコンピューティングのタスク割り当て方法、装置、設備及び記憶媒体 図000050
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6952190
(24)【登録日】2021年9月29日
(45)【発行日】2021年10月20日
(54)【発明の名称】クラウドコンピューティングのタスク割り当て方法、装置、設備及び記憶媒体
(51)【国際特許分類】
   G06F 9/50 20060101AFI20211011BHJP
   G06F 9/455 20060101ALI20211011BHJP
   G06N 3/08 20060101ALI20211011BHJP
   G06N 99/00 20190101ALI20211011BHJP
【FI】
   G06F9/50 120A
   G06F9/455 150
   G06N3/08 160
   G06N99/00 180
【請求項の数】8
【全頁数】16
(21)【出願番号】特願2020-519124(P2020-519124)
(86)(22)【出願日】2018年4月15日
(65)【公表番号】特表2020-537231(P2020-537231A)
(43)【公表日】2020年12月17日
(86)【国際出願番号】CN2018083135
(87)【国際公開番号】WO2019196127
(87)【国際公開日】20191017
【審査請求日】2020年4月13日
(31)【優先権主張番号】201810321267.9
(32)【優先日】2018年4月11日
(33)【優先権主張国】CN
(73)【特許権者】
【識別番号】517161511
【氏名又は名称】シェンチェン ユニバーシティー
(73)【特許権者】
【識別番号】519064654
【氏名又は名称】ハルビン インスティテュート オブ テクノロジー シェンチェン グラデュエート スクール
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(72)【発明者】
【氏名】チャン,ヨン
(72)【発明者】
【氏名】タン,リンリン
(72)【発明者】
【氏名】チャオ,ドンニン
(72)【発明者】
【氏名】ヘ,ロンギュ
(72)【発明者】
【氏名】リァン,チャンギュイン
(72)【発明者】
【氏名】ゼン,チンハオ
【審査官】 坂庭 剛史
(56)【参考文献】
【文献】 中国特許出願公開第103345657(CN,A)
【文献】 特表2012−517041(JP,A)
【文献】 特開2017−027601(JP,A)
【文献】 米国特許出願公開第2011/0055426(US,A1)
【文献】 特開2013−008089(JP,A)
【文献】 高橋良英,遺伝的アルゴリズムとアーントコロニー最適化手法による巡回セールスマン問題の解法,計測自動制御学会 東北支部 第236回研究集会 講演資料,日本,社団法人計測自動制御学会 東北支部,2007年06月15日,pp.1−8(資料番号236-4),https://www.topic.ad.jp/sice/htdocs/papers/236/236-4.pdf
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/50
G06F 9/455
G06N 3/08
G06N 99/00
(57)【特許請求の範囲】
【請求項1】
クラウドコンピューティングのタスク割り当て方法であって、前記方法には、
ユーザーからのクラウドタスク割り当てリクエストを受信すると、前記クラウドタスク割り当てリクエスト中の割り当て対象のクラウドコンピューティングタスクに基づき、クラウドタスク割り当てモデルを構築する工程と、
前記クラウドタスク割り当てモデル及び所定の蟻コロニー最適化を通して、前記クラウドコンピューティングタスクの割り当てに対して第1所定数の最適化を行い、前記第1所定数の中間割り当てパスを生成する工程と、
所定の遺伝的アルゴリズムを通して、前記中間割り当てパスに対して第2所定数の進化を行い、前記クラウドコンピューティングタスクの最適割り当てパスを生成する工程と、
前記最適割り当てパスに従い、前記クラウドコンピューティングタスクをクラウド環境中の仮想マシンに割り当てる工程と、を含むことを特徴とし、
前記クラウドタスク割り当てモデル及び所定の蟻コロニー最適化を通して、前記クラウドコンピューティングタスクの割り当てに対して第1所定数の最適化を行い、前記第1所定数の中間割り当てパスを生成する工程が、
前記タスク割り当てモデル中の各タスク仮想マシンペアノード間のフェロモンに対して初期化を行い、蟻コロニー最適化のフェロモン行列を生成し、
前記蟻コロニー最適化の蟻が前記タスク仮想マシンペアノード中で対応するパスを生成し、前記各蟻の対応するパス中の部分最適パスを前記中間割り当てパスとして設定し、
前記タスク割り当てモデル中、前記クラウドコンピューティングタスクの前記クラウド環境における仮想マシン上の実行時間に基づき、前記各蟻に対応するパス上のフェロモンを更新し、
前記蟻コロニー最適化の最適化回数が前記第1所定数に達したか否かを判断し、達した場合には前記蟻コロニー最適化の最適化過程を完了し、達していない場合には、前記蟻コロニー最適化の蟻が前記タスク仮想マシンペアノード中で対応するパスを生成する工程にジャンプすることを含むことを特徴とする、方法。
【請求項2】
前記各蟻に対応するパス上のフェロモンを更新する工程の後、前記蟻コロニー最適化の最適化回数が前記第1所定数に達したか否かを判断する工程の前において、
所定の最適パスフェロモン更新式に従い、前記部分最適パスを通過した各蟻により前記部分最適パス上のフェロモンを更新することをさらに含むことを特徴とする、請求項に記載の方法。
【請求項3】
所定の遺伝的アルゴリズムを通して、前記中間割り当てパスに対して第2所定数の進化を行い、前記クラウドコンピューティングタスクの最適割り当てパスを生成する工程が、
前記中間割り当てパスに対してコーディングを行い、遺伝的アルゴリズムの現個体群を生成し、
所定の適応度関数に基づいて前記現個体群に対する進化を行い、次世代個体群を生成し、
前記遺伝的アルゴリズムの進化回数が前記第2所定数に達したか否かを判断し、達した場合には前記次世代個体群の最適個体を前記最適割り当てパスに設定し、達していない場合には前記次世代個体群を前記現個体群に設定して、所定の適応度関数に基づいて前記現個体群に対する進化を行う工程にジャンプすることを含むことを特徴とする、請求項1に記載の方法。
【請求項4】
前記中間割り当てパスに対してコーディングを行う工程が、
前記中間割り当てパス中のタスク仮想マシンペアノードに対してソートを行い、各前記中間割り当てパスの仮想マシンシーケンスを生成し、
前記仮想マシンシーケンスを前記遺伝的アルゴリズム中の個体群内個体に設定し、前記個体群内個体により前記現個体群を構成することを含むことを特徴とする、請求項に記載の方法。
【請求項5】
クラウドコンピューティングのタスク割り当て装置であって、前記装置は、
ユーザーからのクラウドタスク割り当てリクエストを受信すると、前記クラウドタスク割り当てリクエスト中の割り当て対象のクラウドコンピューティングタスクに基づき、クラウドタスク割り当てモデルを構築するためのモデル構築ユニットと、
前記クラウドタスク割り当てモデル及び所定の蟻コロニー最適化を通して、前記クラウドコンピューティングタスクの割り当てに対して第1所定数の最適化を行い、前記第1所定数の中間割り当てパスを生成するための蟻コロニー最適化ユニットと、
所定の遺伝的アルゴリズムを通して、前記中間割り当てパスに対して第2所定数の進化を行い、前記クラウドコンピューティングタスクの最適割り当てパスを生成するための遺伝的進化ユニットと、
前記最適割り当てパスに従い、前記クラウドコンピューティングタスクをクラウド環境中の仮想マシンに割り当てるためのタスク割り当てユニットと、を含むことを特徴とし、
前記蟻コロニー最適化ユニットが、
前記タスク割り当てモデル中の各タスク仮想マシンペアノード間のフェロモンに対して初期化を行い、前記蟻コロニー最適化のフェロモン行列を生成するためのフェロモン初期化ユニットと、
前記蟻コロニー最適化の蟻が前記タスク仮想マシンペアノード中で対応するパスを生成し、前記各蟻の対応するパス中の部分最適パスを前記中間割り当てパスとして設定するためのパス生成ユニットと、
前記タスク割り当てモデル中、前記クラウドコンピューティングタスクの前記クラウド環境における仮想マシン上の実行時間に基づき、前記各蟻に対応するパス上のフェロモンを更新するためのフェロモン更新ユニットと、
前記蟻コロニー最適化の最適化回数が前記第1所定数に達したか否かを判断し、達した場合には前記蟻コロニー最適化の最適化過程を完了し、達していない場合には前記パス生成ユニットをトリガして、前記蟻コロニー最適化の蟻が前記タスク仮想マシンペアノード中で対応するパスを生成する操作を実行させる蟻コロニー最適化判断ユニットと、を含むことを特徴とする、装置。
【請求項6】
前記遺伝的進化ユニットが、
前記中間割り当てパスに対してコーディングを行い、前記遺伝的アルゴリズムの現個体群を生成するための個体群コーディングユニットと、
所定の適応度関数に基づいて前記現個体群に対する進化を行い、次世代個体群を生成するための個体群進化ユニットと、
前記遺伝的アルゴリズムの進化回数が前記第2所定数に達したか否かを判断し、達した場合には前記次世代個体群中の最適個体を前記最適割り当てパスに設定し、達していない場合には前記次世代個体群を前記現個体群に設定し、前記個体群進化ユニットをトリガして、所定の適応度関数に基づいて前記現個体群に対する進化を行う工程を実行させる遺伝的進化判断ユニットと、を含むことを特徴とする、請求項に記載の装置。
【請求項7】
クラウドコンピューティング設備であって、ストレージ、プロセッサ及びストレージ中に記憶され且つ前記プロセッサ上で作動可能なコンピュータプログラムを含み、前記プロセッサが前記コンピュータプログラムを実行すると、請求項1から請求項のいずれか1項に記載の方法の工程が実現されることを特徴とする設備。
【請求項8】
コンピュータ読取可能記憶媒体であって、前記コンピュータ読取可能記憶媒体はコンピュータプログラムを記憶し、前記コンピュータプログラムがプロセッサによって実行されると、請求項1から請求項のいずれか1項に記載の方法の工程が実現されることを特徴とする記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明はコンピュータ技術分野に属し、特にクラウドコンピューティングのタスク割り当て方法、装置、設備及び記憶媒体に関するものである。
【背景技術】
【0002】
クラウドコンピューティングは、便利でフレキシブルな計算モデルの1つであり、ネットワークを通じてコンピュータリソース(ネットワーク、サーバー、ストレージ、アプリケーションサービスなど)にアクセスしたり使用したりすることができる共有プールである。そのコンセプトは、大量のコンピュータリソースを一元的に管理・ディスパッチして、それらのコンピュータリソースを日常生活における水のごとくネットワーク中に必要に応じて配分することである。クラウドコンピューティングのタスク割り当てとは、ユーザーがリクエストしたタスクの複雑さに応じて、限りあるクラウドコンピュータリソースの下で大量のスケジュール済みタスクに対する処理を行なうことをいう。
【0003】
近年、クラウドコンピューティングのタスク割り当て方法に関する研究が発展を続けているが、その一方で従来のクラウドコンピューティングにおけるスケジューリング方法は性能が悪く、ユーザーから大量の独立タスクが提出された場合には、タスクの応答時間や完了時間を最大限短くすることが保証し難く、クラウドコンピューティングプラットフォームのサービス品質及びユーザーエクスペリエンスを保証することが難しかった。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明は、従来技術中のクラウドコンピューティングのタスク割り当て方法の性能が悪く、クラウドコンピューティングタスクの応答時間や完了時間を短くすることが保証し難いという問題を解決する、クラウドコンピューティングのタスク割り当て方法、装置、設備及び記憶媒体を提供することを目的としている。
【0005】
本発明の一態様において、クラウドコンピューティングのタスク割り当て方法を提供するが、その方法は以下の工程を含む。
【0006】
ユーザーからのクラウドタスク割り当てリクエストを受信すると、クラウドタスク割り当てリクエスト中の割り当て対象のクラウドコンピューティングタスクに基づき、クラウドタスク割り当てモデルを構築する。
【0007】
クラウドタスク割り当てモデル及び所定の蟻コロニー最適化を通して、クラウドコンピューティングタスクの割り当てに対して第1所定数の最適化を行い、第1所定数の中間割り当てパスを生成する。
【0008】
所定の遺伝的アルゴリズムを通して、中間割り当てパスに対して第2所定数の進化を行い、クラウドコンピューティングタスクの最適割り当てパスを生成する。
【0009】
最適割り当てパスに従い、クラウドコンピューティングタスクをクラウド環境中の仮想マシンに割り当てる。
【0010】
本発明の別の一態様において、クラウドコンピューティングのタスク割り当て装置を提供するが、その装置は、
【0011】
ユーザーからのクラウドタスク割り当てリクエストを受信すると、クラウドタスク割り当てリクエスト中の割り当て対象のクラウドコンピューティングタスクに基づき、クラウドタスク割り当てモデルを構築するための、モデル構築ユニットと、
【0012】
クラウドタスク割り当てモデル及び所定の蟻コロニー最適化を通して、クラウドコンピューティングタスクの割り当てに対して第1所定数の最適化を行い、第1所定数の中間割り当てパスを生成するための、蟻コロニー最適化ユニットと、
【0013】
所定の遺伝的アルゴリズムを通して、中間割り当てパスに対して第2所定数の進化を行い、クラウドコンピューティングタスクの最適割り当てパスを生成するための、遺伝的進化ユニットと、
【0014】
最適割り当てパスに従い、クラウドコンピューティングタスクをクラウド環境中の仮想マシンに割り当てるための、タスク割り当てユニットと、を含む。
【0015】
本発明の別の一態様において、クラウドコンピューティング設備をさらに提供するが、それにはストレージ、プロセッサ及びストレージ中に記憶され且つプロセッサ上で実行可能なコンピュータプログラムを含み、プロセッサがコンピュータプログラムを実行すると、上述のクラウドコンピューティングのタスク割り当て方法で述べた工程が実現される。
【0016】
本発明の別の一態様において、コンピュータ読取可能記憶媒体をさらに提供するが、コンピュータ読取可能記憶媒体はコンピュータプログラムを記憶し、コンピュータプログラムがプロセッサによって実行されると、上述のクラウドコンピューティングのタスク割り当て方法で述べた工程が実現される。
【0017】
本発明は、クラウドタスク割り当てリクエスト中の割り当て対象のクラウドコンピューティングタスクに基づき、クラウドタスク割り当てモデルを構築し、クラウドタスク割り当てモデル及び蟻コロニー最適化を通してクラウドコンピューティングタスクの割り当てに対する最適化を行い、第1所定数の中間割り当てパスを生成し、遺伝的アルゴリズムを通して中間割り当てパスに対して第2所定数の進化を行い、クラウドコンピューティングタスクの最適割り当てパスを生成し、最適割り当てパスに従ってクラウドコンピューティングタスクを仮想マシンに割り当てることで、ユーザーから大量の独立したクラウドコンピューティングタスクが提出された場合に、蟻コロニーと遺伝的アルゴリズムを組み合わせた混合型群知能アルゴリズムを通してクラウドコンピューティングのタスク割り当て性能を効果的に向上させることで、クラウドコンピューティングタスクの応答時間及び完了時間が短いことを保証し、クラウドコンピューティングプラットフォームのサービス品質及びユーザーエクスペリエンスを向上させている。
【図面の簡単な説明】
【0018】
図1】本発明の実施例1で提供するクラウドコンピューティングのタスク割り当て方法のフローチャートである。
図2】本発明の実施例2で提供するクラウドコンピューティングのタスク割り当て装置の構造概念図である。
図3】本発明の実施例2で提供するクラウドコンピューティングのタスク割り当て装置の好ましい構造概念図である。
図4】本発明の実施例3で提供するクラウドコンピューティング設備の構造概念図である。
【発明を実施するための形態】
【0019】
本発明の目的、技術案及び優位点をより明解にするため、以下で図面及び実施例を基に本発明についてより詳細に説明する。ここに記述された具体的な実施例は本発明を説明するためのものに過ぎず、本発明を限定するものでは決してないことを理解されたい。
【0020】
以下、具体的な実施例に基づき、本発明の具体的な実現について詳しく説明する。
【実施例1】
【0021】
図1は本発明の実施例1で提供するクラウドコンピューティングのタスク割り当て方法のフローチャートを示しているが、説明の便宜上、本発明の実施例と関係する部分だけを示しており、詳細は以下の通りである。
【0022】
工程S101では、ユーザーからのクラウドタスク割り当てリクエストを受信すると、クラウドタスク割り当てリクエスト中の割り当て対象のクラウドコンピューティングタスクに基づき、クラウドタスク割り当てモデルを構築する。
【0023】
本発明はクラウドコンピューティングプラットフォームに適用でき、異なるユーザーからのクラウドタスク割り当てリクエストを受信した場合に、それらのクラウドタスク割り当てリクエスト中から割り当て対象のクラウドコンピューティングタスクを得て、それらのクラウドコンピューティングタスクに基づき、クラウドタスク割り当てモデルを構築することができる。クラウドタスク割り当てモデルの構築時には、クラウド環境中で複数の仮想マシンがホストに分布しているため、クラウドコンピューティングのタスク割り当てにおいてクラウドコンピューティングタスクがこれらの仮想マシンに割り当てられ、タスク仮想マシンペアを構築する過程を通してクラウドタスク割り当てモデルを構築することができる。
【0024】
一例として、クラウドタスク割り当てリクエスト中から割り当て対象であるm個のクラウドコンピューティングタスク
を得て、m個のクラウドコンピューティングタスクをn個の仮想マシン
上で実行し、タスク仮想マシンペア
を形成し、
を用いて各クラウドコンピューティングタスクの仮想マシン上における実行時間を表す。
【0025】
工程S102では、クラウドタスク割り当てモデル及び所定の蟻コロニー最適化を通して、クラウドコンピューティングタスクの割り当てに対して第1所定数の最適化を行い、第1所定数の中間割り当てパスを生成する。
【0026】
本発明の実施例では、第1所定数は所定の蟻コロニー最適化の最大反復回数(又は最大最適化回数)であり、タスク仮想マシンモデル中の各タスク仮想マシンペアには各々に対応するノードが設けられ、蟻コロニー最適化中の蟻コロニーはそれらのノード間において最適パスを探索する必要がある。先ず各タスク仮想マシンペアノード間のフェロモンに対する初期化を行って、蟻コロニー最適化におけるフェロモン行列を生成することができ、次に蟻コロニー最適化中の蟻にタスク仮想マシンペアノード中の対応するパスを歩かせることで、それらのパス中の部分最適パスを中間割り当てパスとして設定し、次にクラウドコンピューティングタスクの仮想マシン上で要する実行時間に基づいて蟻が通過した各パス上のフェロモンを更新し、フェロモンによって後続の蟻コロニー最適化過程を導けるようにすることができる。
【0027】
選択的に、蟻コロニー最適化中の各蟻がタスク仮想マシンペアノード中の対応するパスを歩くとき、タスク仮想マシンペアノード中で次に歩くノードを所定の確率式によって選択するのが好ましく、これにより蟻コロニー最適化のパス探索性能が向上する。例えば、t回目の最適化過程中、タスク仮想マシンペアノード
が蟻kの探索可能タスクテーブル中にある場合、蟻kがタスク仮想マシンペアノード
に辿り着く確率は:
であり、そのうち、
は各々t回目の最適化過程中のリソースのフェロモン濃度、リソースの固有属性(計算及び通信能力など)を表し、
それぞれフェロモンの重要度、リソースの固有属性の重要度を表し、
はt回目の最適化過程中の蟻の探索可能タスクテーブルを表し、vmsは選択可能な仮想マシンである。t回目の最適化過程中、タスク仮想マシンペアノード
が蟻kの探索可能タスクテーブル中にない場合、蟻kがタスク仮想マシンペアノード
に辿り着く確率は0である。
【0028】
本発明の実施例における蟻コロニー最適化は、自然環境中の蟻コロニー現象をシミュレートするため、フェロモンの更新には蟻が通過する際に残すフェロモンを含めるだけでなく、フェロモンの自然蒸発も考慮に入れる必要がある。選択的に、フェロモン行列の更新式は:
で表すのが好ましく、そのうちrhoは所定の蒸発因数であり、Deltaは蟻が通過する際に残すフェロモンを表し、
であり、
は所定の重みパラメータであり、
は蟻が通過したパスにおける各仮想マシンの消費時間であり、
は蟻が通過したパスにおける各仮想マシンの消費した時間のうち最長の消費時間であり、こうすることで、仮想マシンにおけるクラウドコンピューティングタスクの実行時間を基に各蟻に対応するパス上のフェロモンが更新され、フェロモンの更新精度が効果的に向上する。
【0029】
さらに、各蟻が各自のパスを歩き終えた後、部分最適パスを通過した各蟻に所定の最適パスフェロモン更新式に従って部分最適パス上でもう一度フェロモンを放出させるのが好ましく、こうすることで全域パスにおける最適パスのフェロモンが間接的に増やされ、全域での最適パスを素早く見つける上で有利になる。一例として、最適パスフェロモン更新式中のフェロモンの更新値は:
で表すことができ、そのうち、
は所定の重みパラメータであり、
は現在の最適な
である。
【0030】
本発明の実施例では、蟻コロニー最適化の最適化回数が第1所定数に達したか否かを判断し、達した場合には蟻コロニー最適化の最適化過程を完了し、第1所定数の中間割り当てパスを得て、達していない場合には引き続き蟻コロニー最適化の蟻にタスク仮想マシンペアノード中の対応するパスを歩かせる。
【0031】
工程S103では、所定の遺伝的アルゴリズムを通して、中間割り当てパスに対して第2所定数の進化を行い、クラウドコンピューティングタスクの最適割り当てパスを生成する。
【0032】
本発明の実施例では、第2所定数は遺伝的アルゴリズムの最大反復回数(又は最大進化回数)であり、蟻コロニー最適化の各代の実行は長い時間を必要とし、遺伝的アルゴリズムの各代が費やす時間は短いため、第2所定数の値は第1所定数よりも大きく設定するのが好ましく、こうすることでクラウドコンピューティングのタスク割り当ての時間コストが減ると同時に、クラウドコンピューティングのタスク割り当ての効果が向上する。
【0033】
本発明の実施例では、先ず蟻コロニー最適化によって得た中間割り当てパスに対してコーディングを行い、遺伝的アルゴリズムの現個体群を得ることができ、次に所定の適応度関数に基づいて現個体群に対する進化を行い、次世代個体群を生成して、遺伝的アルゴリズムの進化回数が第2所定数に達したか否かを判断し、達した場合には次世代個体群中の最適個体をクラウドコンピューティングのタスク割り当てにおける最適割り当てパスに設定し、達していない場合には次世代個体群を現個体群に設定して、引き続き現個体群に対する進化を行う。
【0034】
選択的に、蟻コロニー最適化によって得た中間割り当てパスに対してコーディングを行う際に、各中間割り当てパス中のタスク仮想マシンペアノードに対してソートを行い、各中間割り当てパスの仮想マシンシーケンスを生成して、それらの仮想マシンシーケンスを遺伝的アルゴリズム中の現個体群の個体群内個体に設定するのが好ましく、こうすることでクラウドコンピューティングのタスク割り当てにおける蟻コロニー最適化と遺伝的アルゴリズムの結合が実現する。
【0035】
選択的に、遺伝的アルゴリズムが実行する反復のユーザーコストを段階的により低くし、また完了時間をより速くするために、採用する適応度関数は:
であるのが好ましく、そのうち、
、rは所定の重みパラメータであり、rは時間と経済コストとの間の比重を制御するのに用いられ、
はクラウドコンピューティングのタスク割り当て過程の経済コストである。一例として、
の計算式は:
で表すことができ、そのうち、
は1つの仮想マシンのホスト数であり、
は1つのホストの費用であり、
はそれぞれクラウドコンピューティング環境中のメモリ費用、ストレージ費用及び帯域幅費用であり、
はそれぞれクラウドコンピューティング環境中のメモリ容量、ストレージサイズ及び帯域幅の数である。
【0036】
工程S104では、最適割り当てパスに従い、クラウドコンピューティングタスクをクラウド環境中の仮想マシンに割り当てる。
【0037】
本発明の実施例では、最適割り当てパスを得た後に、最適割り当てパスに従い、すべてのクラウドコンピューティングタスクを仮想マシンに割り当てて、クラウドコンピューティングタスクの割り当てが完了する。実際の実験過程では、最適割り当てパスを得た後に、クラウドコンピューティングシミュレーションツール、クラウドコンピューティング環境の分散型システムシミュレータ(CloudSimツールなど)上でクラウドコンピューティング試験をシミュレートすることで、クラウドコンピューティングのタスク割り当ての研究・試験における障壁とコストを低減することができる。
【0038】
本発明の実施例では、蟻コロニー最適化によりクラウドコンピューティングタスクの割り当てに対して最適化を行い、第1所定数の中間割り当てパスを生成し、遺伝的アルゴリズムにより中間割り当てパスに対して第2所定数の進化を行い、クラウドコンピューティングタスクの最適割り当てパスを生成することにより、蟻コロニーと遺伝的アルゴリズムを組み合わせた混合型群知能アルゴリズムを通して蟻コロニー最適化の優れたロバスト性及び解探索性能と、遺伝的アルゴリズムの空間全域探索性能及び並行性とを統合し、クラウドコンピューティングのタスク割り当て性能を効果的に向上させて、クラウドコンピューティングタスクの応答時間及び完了時間が短いことを保証し、クラウドコンピューティングプラットフォームのサービス品質及びユーザーエクスペリエンスを向上させている。
【実施例2】
【0039】
図2は本発明の実施例1で提供するクラウドコンピューティングのタスク割り当て装置の構造を示しているが、説明の便宜上、本発明の実施例と関係する部分だけを示しており、それには以下が含まれる。
【0040】
モデル構築ユニット21は、ユーザーからのクラウドタスク割り当てリクエストを受信すると、クラウドタスク割り当てリクエスト中の割り当て対象のクラウドコンピューティングタスクに基づき、クラウドタスク割り当てモデルを構築するためのものである。
【0041】
本発明の実施例では、異なるユーザーからのクラウドタスク割り当てリクエストを受信した場合に、それらのクラウドタスク割り当てリクエスト中から割り当て対象のクラウドコンピューティングタスクを得て、それらのクラウドコンピューティングタスクに基づき、クラウドタスク割り当てモデルを構築することができる。クラウドタスク割り当てモデルの構築時には、クラウド環境中で複数の仮想マシンがホストに分布しているため、クラウドコンピューティングのタスク割り当てにおいてクラウドコンピューティングタスクがこれらの仮想マシンに割り当てられ、タスク仮想マシンペアを構築する過程を通してクラウドタスク割り当てモデルを構築することができる。
【0042】
蟻コロニー最適化ユニット22は、クラウドタスク割り当てモデル及び所定の蟻コロニー最適化を通して、クラウドコンピューティングタスクの割り当てに対して第1所定数の最適化を行い、第1所定数の中間割り当てパスを生成するためのものである。
【0043】
本発明の実施例では、先ず各タスク仮想マシンペアノード間のフェロモンに対する初期化を行って、蟻コロニー最適化におけるフェロモン行列を生成することができ、次に蟻コロニー最適化中の蟻にタスク仮想マシンペアノード中の対応するパスを歩かせることで、それらのパス中の部分最適パスを中間割り当てパスとして設定し、次にクラウドコンピューティングタスクの仮想マシン上で要する実行時間に基づいて蟻が通過した各パス上のフェロモンを更新し、フェロモンによって後続の蟻コロニー最適化過程を導けるようにすることができる。
【0044】
選択的に、蟻コロニー最適化中の各蟻がタスク仮想マシンペアノード中の対応するパスを歩くとき、タスク仮想マシンペアノード中で次に歩くノードを所定の確率式によって選択するのが好ましく、これにより蟻コロニー最適化のパス探索性能が向上する。
【0045】
本発明の実施例における蟻コロニー最適化は、自然環境中の蟻コロニー現象をシミュレートするため、フェロモンの更新には蟻が通過する際に残すフェロモンを含めるだけでなく、フェロモンの自然蒸発も考慮に入れる必要がある。選択的に、フェロモン行列の更新式は:
で表すのが好ましく、そのうち、rhoは所定の蒸発因数であり、Deltaは蟻が通過する際に残すフェロモンを表し、
は所定の重みパラメータであり、
は蟻が通過したパスにおける各仮想マシンの消費した時間であり、
は蟻が通過したパスにおける各仮想マシンの消費した時間のうち最長の消費時間であり、こうすることで、仮想マシンにおけるクラウドコンピューティングタスクの実行時間を基に各蟻に対応するパス上のフェロモンが更新され、フェロモンの更新精度が効果的に向上する。
【0046】
さらに、各蟻が各自のパスを歩き終えた後、部分最適パスを通過した各蟻に所定の最適パスフェロモン更新式に従って部分最適パス上でもう一度フェロモンを放出させるのが好ましく、こうすることで全域パスにおける最適パスのフェロモンが間接的に増やされ、全域での最適パスを素早く見つける上で有利になる。
【0047】
本発明の実施例では、蟻コロニー最適化の最適化回数が第1所定数に達したか否かを判断し、達した場合には蟻コロニー最適化の最適化過程を完了し、第1所定数の中間割り当てパスを得て、達していない場合には引き続き蟻コロニー最適化の蟻にタスク仮想マシンペアノード中の対応するパスを歩かせる。
【0048】
遺伝的進化ユニット23は、所定の遺伝的アルゴリズムを通して、中間割り当てパスに対して第2所定数の進化を行い、クラウドコンピューティングタスクの最適割り当てパスを生成するためのものである。
【0049】
本発明の実施例では、第2所定数は遺伝的アルゴリズムの最大反復回数(又は最大進化回数)であり、蟻コロニー最適化の各代の実行は長い時間を必要とし、遺伝的アルゴリズムの各代が費やす時間は短いため、第2所定数の値は第1所定数よりも大きく設定するのが好ましく、こうすることでクラウドコンピューティングのタスク割り当ての時間コストが減ると同時に、クラウドコンピューティングのタスク割り当ての効果が向上する。
【0050】
本発明の実施例では、先ず蟻コロニー最適化によって得た中間割り当てパスに対してコーディングを行い、遺伝的アルゴリズムの現個体群を得ることができ、次に所定の適応度関数に基づいて現個体群に対する進化を行い、次世代個体群を生成して、遺伝的アルゴリズムの進化回数が第2所定数に達したか否かを判断し、達した場合には次世代個体群中の最適個体をクラウドコンピューティングのタスク割り当てにおける最適割り当てパスに設定し、達していない場合には次世代個体群を現個体群に設定して、引き続き現個体群に対する進化を行う。
【0051】
選択的に、蟻コロニー最適化によって得た中間割り当てパスに対してコーディングを行う際に、各中間割り当てパス中のタスク仮想マシンペアノードに対してソートを行い、各中間割り当てパスの仮想マシンシーケンスを生成して、それらの仮想マシンシーケンスを遺伝的アルゴリズム中の現個体群の個体群内個体に設定するのが好ましく、こうすることでクラウドコンピューティングのタスク割り当てにおける蟻コロニー最適化と遺伝的アルゴリズムの結合が実現する。
【0052】
選択的に、遺伝的アルゴリズムが実行する反復のユーザーコストを段階的により低くし、また完了時間をより速くするために、採用する適応度関数は:
であるのが好ましく、そのうち、
、rは所定の重みパラメータであり、rは時間と経済コストとの間の比重を制御するのに用いられ、
はクラウドコンピューティングのタスク割り当て過程の経済コストである。一例として、
の計算式は:
で表すことができ、そのうち、
は1つの仮想マシンのホスト数であり、
は1つのホストの費用であり、
はそれぞれクラウドコンピューティング環境中のメモリ費用、ストレージ費用及び帯域幅費用であり、
はそれぞれクラウドコンピューティング環境中のメモリ容量、ストレージサイズ及び帯域幅の数である。
【0053】
タスク割り当てユニット24は、最適割り当てパスに従い、クラウドコンピューティングタスクをクラウド環境中の仮想マシンに割り当てるためのものである。
【0054】
本発明の実施例では、最適割り当てパスを得た後に、最適割り当てパスに従い、すべてのクラウドコンピューティングタスクを仮想マシンに割り当てて、クラウドコンピューティングタスクの割り当てが完了する。実際の実験過程では、最適割り当てパスを得た後に、クラウドコンピューティングシミュレーションツール、クラウドコンピューティング環境の分散型システムシミュレータ(CloudSimツールなど)上でクラウドコンピューティング試験をシミュレートすることで、クラウドコンピューティングのタスク割り当ての研究・試験における障壁とコストを低減することができる。
【0055】
選択的に、図3に示す通り、蟻コロニー最適化ユニット22は、
【0056】
タスク割り当てモデル中の各タスク仮想マシンペアノード間のフェロモンに対して初期化を行い、蟻コロニー最適化のフェロモン行列を生成するための、フェロモン初期化ユニット321と、
【0057】
蟻コロニー最適化の蟻がタスク仮想マシンペアノード中で対応するパスを生成し、各蟻の対応するパス中の部分最適パスを中間割り当てパスとして設定するための、パス生成ユニット322と、
【0058】
タスク割り当てモデル中、クラウドコンピューティングタスクのクラウド環境における仮想マシン上の実行時間に基づき、各蟻に対応するパス上のフェロモンを更新するための、フェロモン更新ユニット323と、
【0059】
蟻コロニー最適化の最適化回数が第1所定数に達したか否かを判断し、達した場合には蟻コロニー最適化の最適化過程を完了し、達していない場合にはパス生成ユニット322をトリガして、蟻コロニー最適化の蟻がタスク仮想マシンペアノード中で対応するパスを生成する操作を実行させるための、蟻コロニー最適化判断ユニット324と、を含むのが好ましい。
【0060】
選択的に、遺伝的進化ユニット23は、
【0061】
中間割り当てパスに対してコーディングを行い、遺伝的アルゴリズムの現個体群を生成するための、個体群コーディングユニット331と、
【0062】
所定の適応度関数に基づいて現個体群に対する進化を行い、次世代個体群を生成するための、個体群進化ユニット332と、
【0063】
遺伝的アルゴリズムの進化回数が第2所定数に達したか否かを判断し、達した場合には次世代個体群中の最適個体を最適割り当てパスに設定し、達していない場合には次世代個体群を現個体群に設定し、個体群進化ユニット332をトリガして、所定の適応度関数に基づいて現個体群に対する進化を行う工程を実行させる、遺伝的進化判断ユニット333と、を含むのが好ましい。
【0064】
本発明の実施例では、蟻コロニー最適化によりクラウドコンピューティングタスクの割り当てに対して最適化を行い、第1所定数の中間割り当てパスを生成し、遺伝的アルゴリズムにより中間割り当てパスに対して第2所定数の進化を行い、クラウドコンピューティングタスクの最適割り当てパスを生成することにより、蟻コロニーと遺伝的アルゴリズムを組み合わせた混合型群知能アルゴリズムを通して蟻コロニー最適化の優れたロバスト性及び解探索性能と、遺伝的アルゴリズムの空間全域探索性能及び並行性とを統合し、クラウドコンピューティングのタスク割り当て性能を効果的に向上させて、クラウドコンピューティングタスクの応答時間及び完了時間が短いことを保証し、クラウドコンピューティングプラットフォームのサービス品質及びユーザーエクスペリエンスを向上させている。
【0065】
本発明の実施例では、クラウドコンピューティングのタスク割り当て装置の各ユニットは、対応するハードウェア又はソフトウェアユニットにより実現することができ、各ユニットは独立したソフト・ハードウェアユニットでもよいし、1つのソフト・ハードウェアユニットに統合してもよく、本発明では限定されない。
【実施例3】
【0066】
図4は本発明の実施例3で提供するクラウドコンピューティング設備の構造を示しているが、説明の便宜上、本発明の実施例と関係する部分だけを示している。
【0067】
本発明の実施例におけるクラウドコンピューティング設備4は、プロセッサ40、ストレージ41及びストレージ41中に記憶され且つプロセッサ40上で実行可能なコンピュータプログラム42を含む。プロセッサ40がコンピュータプログラム42を実行すると、上述した方法の実施例中の、図1に示した工程S101〜S104などの工程が実現される。或いは、プロセッサ40がコンピュータプログラム42を実行すると、上述した装置の実施例中の、図2に示したユニット21〜24などの各ユニットの機能が実現される。
【0068】
本発明の実施例では、蟻コロニー最適化によりクラウドコンピューティングタスクの割り当てに対して最適化を行い、第1所定数の中間割り当てパスを生成し、遺伝的アルゴリズムにより中間割り当てパスに対して第2所定数の進化を行い、クラウドコンピューティングタスクの最適割り当てパスを生成することにより、蟻コロニーと遺伝的アルゴリズムを組み合わせた混合型群知能アルゴリズムを通して蟻コロニー最適化の優れたロバスト性及び解探索性能と、遺伝的アルゴリズムの空間全域探索性能及び並行性とを統合し、クラウドコンピューティングのタスク割り当て性能を効果的に向上させて、クラウドコンピューティングタスクの応答時間及び完了時間が短いことを保証し、クラウドコンピューティングプラットフォームのサービス品質及びユーザーエクスペリエンスを向上させている。
【実施例4】
【0069】
本発明の実施例では、コンピュータ読取可能記憶媒体を提供するが、コンピュータ読取可能記憶媒体はコンピュータプログラムを記憶し、コンピュータプログラムがプロセッサによって実行されると、上述した方法の実施例中の、図1に示した工程S101〜S104などの工程が実現される。或いは、コンピュータプログラムがプロセッサによって実行されると、上述した装置の実施例中の、図2に示したユニット21〜24などの各ユニットの機能が実現される。
【0070】
本発明の実施例では、蟻コロニー最適化によりクラウドコンピューティングタスクの割り当てに対して最適化を行い、第1所定数の中間割り当てパスを生成し、遺伝的アルゴリズムにより中間割り当てパスに対して第2所定数の進化を行い、クラウドコンピューティングタスクの最適割り当てパスを生成することにより、蟻コロニーと遺伝的アルゴリズムを組み合わせた混合型群知能アルゴリズムを通して蟻コロニー最適化の優れたロバスト性及び解探索性能と、遺伝的アルゴリズムの空間全域探索性能及び並行性とを統合し、クラウドコンピューティングのタスク割り当て性能を効果的に向上させて、クラウドコンピューティングタスクの応答時間及び完了時間が短いことを保証し、クラウドコンピューティングプラットフォームのサービス品質及びユーザーエクスペリエンスを向上させている。
【0071】
本発明の実施例におけるコンピュータ読取可能記憶媒体は、コンピュータプログラムコードを携帯可能な任意の実体又は装置、記憶媒体でよく、例えばROM/RAM、磁気ディスク、光ディスク、フラッシュメモリなどのストレージである。
【0072】
上述は本発明の好ましい実施例に過ぎず、本発明を限定するものではない。本発明の精神及び原則内において行われる何らかの修正、均等物による置換及び改良などはすべて本発明の保護範囲を逸脱しない。
図1
図2
図3
図4