فی بوو

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

فی بوو

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

روشی جدید برای الگوریتم زمانبندی CPU با گردش بنوبت ژنتیکی

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

روشی جدید برای الگوریتم زمانبندی CPU با گردش بنوبت ژنتیکی


روشی جدید برای الگوریتم زمانبندی CPU با گردش بنوبت ژنتیکی

روشی جدید برای الگوریتم زمانبندی CPU با گردش بنوبت ژنتیکی

45 صفحه در قالب word

به همراه 45 اسلاید آماده ارائه در قالب پاورپوینت

 

 

 

 

فهرست مطالب

مقدمه ..................................1

فصل اول

چکیده..................................................................2

تاریخچه الگوریتم ژنتیک.....................................3

اهداف ......................................................3

ساختار الگوریتم‏های ژنتیکی................................4

عملگرهای الگوریتم  ژنتیک...............5

روند کلی الگوریتم‏های ژنتیکی............................9

روند کلی بهینه سازی و حل مسائل در الگوریتم ژنتیک :.....................11

شرط پایان الگوریتم..........................................12

    فصل دوم

توضیح الگوریتم ژنتیک  در 12 قدم.......................18

قدم اول :  بدست آوردن تابع هدف (Cost Function) با n متغیر…………...18

قدم دوم : تعیین طول کروموزوم. ................20

قدم سوم : تولید جمعیت اولیه. .......................21

قدم چهارم: تبدیل هر ژن  از کروموزوم به اعدادی در بازه دامنه همان متغیر...............23

قدم پنجم :........................................25

قدم ششم : :.................................................26

قدم هفتم : تعیین تعداد کروموزوم شرکت کننده در عمل پیوند .:.........27

قدم هشتم : انتخاب کروموزومهایی که در عمل پیوند شرکت می کنند .................27

قدم نهم :  پیوند (crossover) . ..........................31

قدم دهم : جهش (mutation)   .................................36

قدم یازدهم : حفظ بهترین کروموزوم 36………………..

قدم دوازدهم : 37………………

فصل سوم

روش پژوهش....................................40

نتایج و بحث:.......................................41

نتیجه گیری و کارهای آینده..............................................50

نتیجه گیری‌ کلی.................................................51

قدر دانی................................................51

منابع.................................................43

 

 

مقدمه

یک موضوع جالب در سیستم عامل, زمانبندی CPU است.این زمانبندی به تخصیص CPU مربوط است که فراینده ها را در سیستمی کامپیوتری اجرا میکند.زمانبندی CPU وظیفه ی اصلی سیستم عامل است[1].زمانبندی باید بدرستی برای نگه داشتن بیطرفی و جلوگیری از فرایندهایی که هرگز CPU را تخصیص نمیدهد انجام شود(فرایند گرسنگی).زمانبندی CPU ضروری است , بخصوص در سیستم شبکه ی کامپیوتری که از گروهی از ایستگاههای کاری و سرویس دهندهها تشکیل میشود.سپس,در این سیستم عامل جدید ,کامپیوتر چند وظیفه ای ,یک هدف است و این به الگوریتم برای زمانبندی CPU متکی است.بهمین دلیل CPU بخش موثر یا مهم یک کامپیوتر است.[1].علاوه بر این ,در این عصر به کمک VLSL (در مقیاس بسیار بزرگ مدار مجتمع)ممکن است پردازنده هایی با قدرت بالا تولید کنند.این قدرت شگفت انگیز بایداستفاده شود تا بی فایده نباشد.همزمان با قدرت محاسبه ی پردازنده, در برنامه های کاربردی افزایش وجود دارد که آن قدرت را استفاده میکند. یک معیار که باید بوسیله ی برنامه انجام شود ,به حداقل رساندن میانگین زمان انتظار برای همه ی فرایندها در بدست آوردن تخصیص CPU است.الگوریتمهای مختلفی برای زمانبندی CPU وجود دارد:یکی از آنها گردش بنوبت(RR) است.مفهوم اساسی در RR استفاده از اشتراک گذاری زمان است[3].هر فرایند همان زمان CPU را بدست می آورد یعنی زمان کوانتومی, که بعنوان محدودیت در زمان پردازش ,بطور کلی در محدوده ی 1-100 میلی ثانیه عمل میکند.بعد از اینکه زمان کوانتومی برای فرایندی بپایان رسید,فرایند از اجرای آن متوقف میشود و در صف آماده گذارده میشوند.سپس ,فرایند بعدی انتخاب میشودتا اجرا شود.این مراحل چندین بار اجرا خواهند شد تا زمانیکه همه ی فرایندها بطور کامل بوسیله ی CPU بکار روند.اگر چه محدوده ی مقدار برای زمان کوانتومی وجود دارد,هنوز هیچ استانداردی وجود ندارد. ضمنا اگر زمان کوانتومی بسیار زیاد باشد,زمان مورد نیاز برای پاسخ / انتظار (چقدر زمان مورد نیاز است که آن بکار گرفته شود) کاملا زیاد است.علاوه براین, اگر خیلی کم باشد برای CPU مخارج کلی بوجود می آورد.جستجو برای بهترین زمان کوانتومی هدف دارد که به حداقل رساندن میانگین زمان انتظار برای گروهی از فرایندهاست.امیدواریم که هر فرایند بتواند کارش را در زمان معقول انجام دهد.تسریع کننده  یک فرایند اثرات کارش را در بسیاری از فرایندها بپایان میرساند که میتواند بوسیله ی CPU بکار گرفته شود.این کار به توان عملیاتی بهتری از CPU میرسد برای اینکه همیشه مشغول است و هرگز غیرفعال نیست.براساس مقدمه ی بالا فکر میکنیم برای پیدا کردن بهترین کوانتوم برای بدست آوردن میانگین بهتری از زمان انتظار,مدت زمان صرف شده و حداقل تعویض بستر لازم است.الگوریتم ژنتیکی را پیشنهاد میکنیم که با گردش بنوبت سنتی ترکیب میشود.

به زبان ساده تر

   محدوده کاری الگوریتم ژنتیک  بسیار وسیع می باشد و هر روز با پیشرفت روزافزون علوم و تکنولوژی استفاده از این روش در بهینه سازی و حل مسائل بسیار گسترش یافته است. الگوریتم ژنتیک   یکی از زیر مجموعه های محاسبات تکامل یافته می باشد که رابطه مستقیمی با مبحث هوش مصنوعی دارد در واقع الگوریتم ژنتیک  یکی از زیر مجموعه های هوش مصنوعی می باشد.  الگوریتم ژنتیک را می­توان یک روش جستجوی کلی نامید که از قوانین تکامل بیولوژیک طبیعی تقلید می­کند .الگوریتم ژنتیک برروی یکسری از جواب­های مساله به امید بدست آوردن جوابهای بهتر قانون بقای بهترین را اعمال می کند. درهر نسل به کمک فرآیند انتخابی متناسب با ارزش جواب­ها و تولید مثل جواب-های انتخاب شده به کمک عملگرهایی که از ژنتیک طبیعی تقلید شده­اند ,تقریب­های بهتری از جواب نهایی بدست می­آید. این فرایند باعث می­شود که نسلهای جدید با شرایط مساله سازگارتر باشد.

تاریخچه

   حساب تکاملی ,برای اولین بار در سال 1960 توسط آقای ریچنبرگ ارائه شد که تحقیق وی در مورد استراتژی تکامل بود.بعدها نظریه او توسط محققان زیادی مورد بررسی قرار گرفت تا اینکه الگوریتم ژنتیک  (GA  ) توسط جان هولند(John Holland ) و در سال 1975 در دانشگاه میشیگان ,ارائه شد.

در سال 1992 نیز جان کوزا (John Koza ) از الگوریتم ژنتیک  (GA  ) برای حل و بهینه سازی مسائل مهندسی پیشرفته استفاده کرد و توانست برای اولین بار روند الگوریتم ژنتیک  (GA  )  را به زبان کامپیوتر در آورد و برای آن یک زبان برنامه نویسی ابداع کندکه به این روش برنامه نویسی ,برنامه نویسی ژنتیک (GP ) گویندو نرم افزاری که توسط وی ابداع گردید به نرم افزار LISP مشهور است که هم اکنون نیز این نرم افزار کاربرد زیادی در حل و بهینه سازی مسائل مهندسی پیدا کرده است .

 

اهداف

تحقیقاتمان اهدافی بشرح زیر دارد:

  1. طراحی و پیاده سازی سیستم که میتواند بهترین کوانتوم را برای رسیدن به میانگین بهینه ی زمان انتظار تولید کند.
  2. بمنظور بررسی پارامترهای GA که میتواند بهترین راه حل را ارائه کند.
  3. تحقیقات قبلی

 

ساختار الگوریتم‏های ژنتیکی

به طور کلی, الگوریتم‏های ژنتیکی از اجزاء زیر تشکیل می‏شوند:

 کروموزوم[1]

در الگوریتم‏های ژنتیکی, هر کروموزوم نشان دهنده یک نقطه در فضای جستجو و یک راه‏حل ممکن برای مسئله مورد نظر است. خود کروموزوم‏ها (راه حل‏ها) از تعداد ثابتی ژن[2] (متغیر) تشکیل می‏شوند. برای نمایش کروموزوم‏ها, معمولاً از کدگذاری‏های دودویی (رشته‏های بیتی) استفاده می‏شود.

جمعیت[3]

مجموعه‏ای از کروموزوم‏ها یک جمعیت را تشکیل می‏دهند. با تاثیر عملگرهای ژنتیکی  بر روی هر جمعیت, جمعیت جدیدی با همان تعداد کروموزوم تشکیل می‏شود.

تابع برازندگی[4]

به منظور حل هر مسئله با استفاده از الگوریتم‏های ژنتیکی, ابتدا باید یک تابع برازندگی برای آن مسئله ابداع شود. برای هر کروموزوم, این تابع عددی غیر منفی را برمی‏گرداند که نشان دهنده شایستگی یا توانایی فردی آن کروموزوم است.

عملگرهای الگوریتم  ژنتیک

در الگوریتم‏های ژنتیکی, در طی مرحله تولید مثل[5] ازعملگرهای ژنتیکی استفاده می‏شود. با تاثیر این عملگرها بر روی یک جمعیت, نسل[6] بعدی آن جمعیت تولید می‏شود. عملگرهای انتخاب[7] , آمیزش[8]  و جهش[9] معمولاً بیشترین کاربرد را در الگوریتم‏های ژنتیکی دارند.

عملگر انتخاب  (Selection ):

این عملگر از بین کروموزوم‏های موجود در یک جمعیت, تعدادی کروموزوم را برای  تولید مثل انتخاب می‏کند. کروموزوم‏های برازنده‏تر شانس بیشتری دارند تا برای تولید مثل انتخاب شوند.

روش های انتخاب :

  • : Elitist Selection (انتخاب نخبگان)
    • مناسب‌ترین عضو هر اجتماع انتخاب می‌شود. با توجه به مقدار شایستگی که از تابع ارزیاب دریافت کرده است.
  • نمونه‏برداری به روش چرخ رولت

در این روش, به هر فرد قطعه‏ای از یک چرخ رولت مدور اختصاص داده می‏شود. اندازه این قطعه متناسب با برازندگی آن فرد است. چرخ N بار چرخانده می‏شود که N تعداد افراد در جمعیت است. در هر چرخش, فرد زیر نشانگر چرخ انتخاب می‏شود و در مخزن والدین نسل بعد قرار می‏گیرد. این روش می‏تواند به صورت زیر پیاده‏سازی شود:

  • نرخ انتظار کل افراد جمعیت را جمع کنید و حاصل آن را T بنامید.
  • مراحل زیر را N بار تکرار کنید:

یک عدد تصادفی r بین 0 و T  انتخاب کنید.

در میان افراد جمعیت بگردید و نرخ‏های انتظار( مقدار شایستگی) آنها را با هم جمع کنید تا این که مجموع بزرگتر یا مساوی r شود. فردی که نرخ انتظارش باعث بیشتر شدن جمع از این حد می‏شود, به عنوان فرد برگزیده انتخاب می‏شود.

 

ممکن است هنگام انتقال از فایل ورد به داخل سایت بعضی متون به هم بریزد یا بعضی نمادها و اشکال درج نشود ولی در فایل دانلودی همه چیز مرتب و کامل است

متن کامل را می توانید در ادامه دانلود نمائید

چون فقط تکه هایی از متن برای نمونه در این صفحه درج شده است ولی در فایل دانلودی متن کامل همراه با تمام ضمائم (پیوست ها) با فرمت ورد word که قابل ویرایش و کپی کردن می باشند موجود است


دانلود با لینک مستقیم


روشی جدید برای الگوریتم زمانبندی CPU با گردش بنوبت ژنتیکی