الگوریتم ژنتیک Genetic, حل مسئله کوله پشتی (knapsak) در متلب

حل مسئله کوله پشتی با الگوریتم ژنتیک

 حل مسئله کوله پشتی با الگوریتم ژنتیک

 

در این کار ما مسئله کوله پشتی صفرویک را با الگوریتم ژنتیک باینری حل کرده ایم و کد متلب به همراه فایل توضیحات خط به خط کد را در اختیار شما قرار داده ایم

 

برای دانلود کد به همراه توضیحات خط به خط از بخش زیر اقدام نمایید و بصورت آنلاین کد را خریداری و دانلود کنید

 

[parspalpaiddownloads id=”60″]

 

—————————————–

مسئله کوله پشتی که با عنوان های Knapsack یا Rucksack مطرح می شود، مسئله ای در بهینه سازی ترکیبیاتی است. فرض کنید مجموعه ای از اشیا، که هر کدام داری وزن و ارزش خاصی هستند در اختیار دارید. به هر شی تعدادی را تخصیص دهید به طوری که وزن اشیا انتخاب شده کوچکتر یا مساوی حدی از پیش تعیین شده، و ارزش آنها بیشینه شود. علت نامگذاری این مسئله، جهانگردی است که کوله پشتی ای با اندازه ی محدود دارد و باید آن را با مفیدترین صورت ممکن از اشیا پر کند.

فرض کنید n جسم داریم که از 1 تا n شماره گذاری شده‌اند. جسم  i ام ارزشی معادل v_iو وزنی برابر با w_i دارد. معمولاً فرض می شود که وزن ها و ارزش ها نامنفی اند. برای ساده تر شدن نمایش، بدون کم شدن از کلیت مسئله می توان فرض کرد اشیا به ترتیب صعودی بر حسب وزنشان مرتب شده‌اند. بیشترین وزنی که می توان در کوله پشتی حمل کرد،W است.

معروف ترین نوع از این مسئله، مسئله ی کوله پشتی 0 و 1 است. یعنی تعداد از هر شی، یا 0 است (آن شی را انتخاب نمی‌کنیم) یا 1 ( آن شی انتخاب می شود). مسئله ی کوله پشتی 0 و 1 را می توان به این صورت، به زبان ریاضی بیان کرد:

  • مقدار \qquad \sum_{i=1}^n v_ix_i را بیشینه کنید.
  • به طوری که \qquad \sum_{i=1}^n w_ix_i \leqslant W, \quad  x_i \in \{0,1\}

برای دریافت کد حل مسئله کوله پشتی با الگوریتم های تکاملی با ما تماس بگیرید

 حل مسئله کوله پشتی با الگوریتم ژنتیک

 حل مسئله کوله پشتی با الگوریتم توده ذرات PSO

 حل مسئله کوله پشتی با الگوریتم DE

 حل مسئله کوله پشتی با الگوریتم SA

 حل مسئله کوله پشتی با الگوریتم جستجوی ممنوعه Tabu search

و……….

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

شماره تماس : 09120563264

مطالب مرتبط

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

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