الگوریتم ژنتیک Genetic, زمان بندی وظایف, زمانبندی وظایف در شبکه گرید

زمان بندی وظایف در سیستم های گرید با الگوریتم ژنتیک

زمان بندی وظایف در سیستم های گرید با الگوریتم ژنتیک

این کار از مقاله ای با عنوان

A Comparison of Eleven Static Heuristics for Mapping a Class of Independent Tasks onto
Heterogeneous Distributed Computing Systems

ایده گرفته شده است . این مقاله 11 روش را پیاده سازی و مقایسه کرده است. ما همین مقاله را با 6 روش اماده کرده ایم و نتایج را مقایسه کرده ایم. در این پست تنها یک روش یعنی روش الگوریتم ژنتیک را در اختیار شما عزیزان قرار داده ایم.

زمان بندی وظایف در سیستم های گرید با الگوریتم ژنتیک

زمان بندی وظایف در سیستم های گرید با الگوریتم ژنتیک

 

توضیحات روش کار : (زمان بندی وظایف در سیستم های گرید با الگوریتم ژنتیک)

فرض کنیم که t وظیفه وجود دارد و m دستگاه

زمان انجام هر وظیفه در هر دستگاه را از قبل میدانیم و در یک ماتریس t*m به نام ETC  ذخیره کرده ایم.هدف این است که مشخص کنیم کدام وظیفه بر روی کدام ماشین اجرا شود تا زمان اجرای کل مینیمم شود.

هر سطر ماتریس ETC زمان اجرای یک وظیفه در دستگاههای مختلف را نشان میدهد.بنابراین ETC(ti,mj) نشان دهنده زمان اجرای وظیفه i ام بر روی دستگاه j ام می باشد.

برای مواردی که وظیفه i ام بر روی دستگاه j ام قابل اجرا نیست (مثلا بدلیل محدودیت سخت افزاری) انگاه مقدار ETC(ti,mj) بینهایت فرض میشود.

روال ساخت ماتریس ETC :

یک ماتریس به اندازه t*m می سازیم با مقادیر صفر و بعد با اعداد تصادفی این ماتریس را پر میکنیم زمان اجرای کارها بر روی ماشین ها را بصورت تصادفی و در بازه 10 تا 120 می سازیم

ETC=round(10+rand(t,m)*(120-10));

یا اگر این زمان ها را بصورت واقعی یا دیتاست در دست داریم میتوانیم این مقادیر را در ماتریس ETC قرار دهیم.

تعاریف :(زمان بندی وظایف در سیستم های گرید با الگوریتم ژنتیک)

Machine availability time : که با mat(mj) نشان داده میشود : زودترین زمانی که ماشین mj میتواند تمام وظایفی که قبلا به او تخصیص داده شده است را اجرا کند.

 

The completion time : زمان اتمام برای وظیفه جدید ti بر روی ماشین mj : که با ct(ti,mj) نشان داده میشود، که برابر است با Machine availability time ماشین mj بعلاوه زمان اجرای وظیفه ti بر روی ماشین mj:

ct(ti,mj)= mat(mj) + ETC(ti,mj)

 

معیاری که برای سنجش و مقایسه نتایج بدست امده از روشهای ابتکاری مختلف استفاده میشود ماکزیمم کردن ct(ti,mj) برای تمام وظایف و تمام ماشین ها می باشد. ماکزیمم مقدار ct(ti,mj) برای و زمان اجرای metatask می باشد و makespan نامیده میشود.

هر روش ابتکاری تلاش میکند که makespan را به حداقل برساند (یعنی وظایف در سریعترین زمان ممکن اجرا شوند)

 

در توصف زیر فرض میکنیم که زمانهای در دسترس بودن ماشین (machine availability times) بعد از نگاشت (تخصیص) هر وظیفه بروز میشوند. برای روشهای ابتکاری ای که در ان یک ترتیب برای وظایف در نظر گرفته میشود از ترتیب موجود در ماتریس ETC استفاده میشود.

 

جهت دریافت کد متلب زمان بندی وظایف در سیستم های گرید با الگوریتم ژنتیک از بخش زیر اقدام کرده و بصورت آنلاین کد و راهنما را دریافت کنید

 

[parspalpaiddownloads id=”88″]

 

 

ایمیل ما :

matlab24ir@gmail.com و یا info@matlab24.ir

 

==================================

جهت دریافت کد متلب زمان بندی وظایف در سیستم گرید با ما تماس بگیرید

کد متلب زمان بندی وظایف در سیستم گرید با الگوریتم ژنتیک

کد متلب زمان بندی وظایف در سیستم گرید با الگوریتم ذوب شبیه سازی شده (SA)

کد متلب زمان بندی وظایف در سیستم گرید با الگوریتم جستجوی ممنوعه (Tabu Search)

کد متلب زمان بندی وظایف در سیستم گرید با الگوریتم GSA

کد متلب زمان بندی وظایف در سیستم گرید با الگوریتم رقابت استعماری (ICA)

شماره تماس: 09120563264

ایمیل: matlab24ir@gmail.com و یا info@matlab24.ir

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *