الگوریتم سیستم ایمنی در خدمت حل مثالی دیگر
حل مسئلة زمانبندي پروژه همراه با منابع محدود بوسيلة سيستم ايمني مصنوعي
چكيده
در اين گزارش ، مسئلة زمانبندي پروژه همراه با منابع محدود با هدف کاهش مدت زمان کل پروژه مورد بحث قرار ميگيرد. به خاطر عموميت اين مسئله، براي آن کاربردهاي متنوعي در توليد، برنامهريزي توليد، مديريت پروژه و ... متصور است. همچنين بحث در مورد يک مسئلة پيچيدة محاسبــاتي معروف است و بـکارگيري روشهاي ابتکاري و يا ابزارهاي بهينهسازي بر پاية هوش مصنوعي در مورد آن، اين امر را گواهي ميدهد.
در اين گزارش رويکرد سيستم ايمني مصنوعي براي مسئلة مذکور مورد بررسي قرار ميگيرد و در انتها عملکرد الگوريتم پيشنهادي با عملکرد ديگر رويکردهاي موجود نظير الگوريتم ژنتيک، الگوريتم ژنتيک فازي و ... بر روي مجموعهاي از دادههاي معروف مسئله مقايسه مي شود.
كلمات كليدي
زمانبندي پروژه، محدوديت تقدمی، محدوديت منبع، سيستم ايمني مصنوعي، فراجهش
Solving resource constrained project scheduling problem by artificial immune system
Reisi Nafchi M.
Abstract
In this paper, resource-constrained project scheduling problem is discussed with an objective of minimizing the makespan of a project. Due to its universality, it has a variety of applications as in manufacturing, production planning, project management and elsewhere. It is a well known computationally complex problem, thus warrants the application of heuristics techniques or AI based optimization tools to achieve optimal or near optimal solution in real time. In this research, the artificial immune system approach is proposed to solve the aforementioned problem. Finally, performance of proposed algorithm is compared to the other approaches like, genetic algorithm, fuzzy genetic algorithm, base on well-known data set of problem.
Keywords
Project scheduling, Precedence constraint, Resource constraint, Artificial immune system,
Hypermutation
1- مقدمه
در عصر جديد هر بنگاه اقتصادي خواهان زمانبندي کارايي براي فعاليتهاي خود بهمنظور افزايش سوددهي است. مسئلة زمانبندي پروژه همراه با منابع محدود ([1]RCPSP) شامل تخصيص تعدادي فعاليت يا کار به منبع يا منابعي با ظرفيت محدود و يک سري محدوديتهاي زماني براي دستيابي به اهدافي از پيش تعيين شده است. براي مسئله اهداف گوناگوني متصور است و نوع هدف به آرمانهاي تصميمگيرنده بستگي دارد. اما رايجترينِ اين اهداف يافتن کمترين مدت زمان کل پروژه (makespan) است. [1]
محدوديتهاي زماني معمولاً شامل محدوديتهاي تقدمي هستند که بطور ضمني دربردارندة اين مفهوماند که کارهاي معيني بايد قبل از شروع کارهاي ديگري تکميل شوند. يک محدوديت منبع نيز، مشخص ميکند که هر فعاليت براي اجرا نيازمند چه ميزان استفاده از منابع است.
RCPSP به عنوان يک مسئلة به شدت NP-hard شناخته ميشود.[4] از اين رو، الگوريتمهاي ابتکاري و فرا ابتکاري مختلفي براي حل آن پيشنهاد شده است. در اين گزارش که پيکرة اصلي آن بر اساس [2] است، يک الگوريتم ايمني شناختي (Immunological algorithm) بر اساس سيستم ايمني مصنوعي (AIS[2]) براي حل RCPSP بررسي ميشود.
رويکرد AIS پيش از اين براي حـل مسائل مختـــلف زمانبندي مانند Job-shop ، Flow-shop ، single machine tardiness بکار رفته است. اما اين گزارش رابطة AIS را با RCPSP مورد بررسي قرار ميدهد. اخيراً تعدادي محقق سعي در حل RCPSP داشتهاند که از آن جمله ميتوان به Boctor، Chang، Herroelen & Demeulemeester، Salewski & Drexel، Schrage و Sprecher اشاره کرد.
همانطور که ذکر شد محققان زيادي سعي در ارائة يک برنامة زماني کارا و مؤثر براي فعاليتها داشتهاند و در اکثر اين موارد معيار makespan مورد توجه بوده است. اما با وجود اين، اغلب به شرايط و محيط واقعي در اين پؤوهشها توجه نشده است. هدف اين گزارش بررسي کارهاي انجام شده در زمينة حل RCPSP تک حالته با هدف کاهش makespan بوسيلة AIS است.
در ادامة گزارش و در بخش 2، مسئلة RCPS[3] با مدل رياضي آن توصيف شده است و سپس در بخش 3، رويکرد AIS مورد بررســي قرار ميگيرد. بخش 4 نيز به تفصيل جنبههاي اجراي الگوريتم پيشنهادي را شرح ميدهد. در بخش 5 هم نتايج محاسبات بر روي مجموعهاي از دادههاي معروف در اين رابطه و مقايسة آنها با ديگر رويکردهاي حل مسئلة مذکور آورده شده است.
شکل 1: رابطة تقدمي بين فعاليتهاي مختلف
2- شرح مسئله
در اين گزارش، هدف اصلي کمينه کردن کل مدت زمان پروژه با در نظر گرفتن محدوديتهاي زماني و محدوديتهاي منابع است. بمنظور سادهسازي حل، اين مسئله بصورت يک مسئلة فروشندة دورهگرد (TSP[4]) با محدوديتهاي تقدمي مدل شده است. در اين مدل مسـافت طي شده بين دو گره - که گرهها نمايندة فعاليتها هستند - برابر با زمان اجراي گرهها فرض شده است و روابط تقدمي رابطة بين دو فعاليت را از نظر پيشنيازي يا پسنيازي نشان ميدهد.
براي مدل کردن و حل مسئله فرضهاي زير مدنظر قرار ميگيرند:
- زمان اجراي هر فعاليت بايد از قبل معين باشد.
- هر فعاليت نميتواند بدون تکميل فعاليتهاي پيشنياز آن اجرا شود.
- حداکثر تعداد منابع در دسترس بايد ار قبل تعريف شده باشد. با وجود اين، تعداد منابع در دسترس بر اساس تکميل و زمان شروع فعاليتها تغيير خواهد کرد.
- هيچ توقفي نبايد در هنگام اجراي فعاليتها صورت گيرد.
- هر فعاليت تنها يک حالت براي اجرا دارد.
در اينجا يک مسئلة زمانبندي پروژه شامل J فعاليت مختلف در نظر گرفته ميشود. بدليل محدوديتهاي فني، فعاليتها توسط تعدادي رابطة تقدمي به يکديگر متصل ميشوند. اين روابط تقدمي نشانگر اين هستند که يک فعاليت j نميتواند قبل از تکميل تمام پيشنيازهاي آن آغاز شود. روابط مذکور را همچنين ميتوان بوسيلة يک شبکة گرهي فاقد حلقه همانند شکل 1 نشان داد؛ که در آن فعاليتهاي ابتدا و انتـــهاي شبکه فعاليتهاي موهومي هستند.
شکل رياضي روابط تقدمي بين فعاليتها را ميتوان به صورت زير نشان داد:
بر اساس محدوديت منابع، در هر لحظه ميزان استفاده از يک منبع نميتواند از حداکثر مقدار آن فراتر رود. فرمولبندي رياضي اين محدوديت نيز به صورت زير است:
3- روش حل بر پاية سيستم ايمني مصنوعي براي مسئلة RCPS
3-1- سيستم ايمني مصنوعي (AIS):
طبيعت و بطور خاص سيستمهاي بيولوژيکي هميشه بدليل پيچيدگي، انعطافپذيري و فلسفة کارکردي آنها براي کارشناسان سحرآميز بودهاند. سيستم عصبي، الهامبخشِ تکامل تدريجي شبکههاي عصبي مصنوعي است و در حالتي مشابه سيستم ايمني، موجب پيدايش يک سيستم ايمني مصنوعي (AIS) شده است. بر طبق نظر Castero & Zuben، AIS را ميتوان به عنوان چکيدة سيستمهاي محاسباتي الهام گرفته شده از نظرية ايمونولوژي (Immunology) و اجزاي آن دانست. [3]
براي فهم بيشتر اين موضوع، تعداي عبارات بيولوژيکي اوليه در زير توصيف شدهاند:
سلولهاي ايمني: سلولهاي B و سلولهاي T، دو گروه بزرگ از سلولهاي ايمني هستند. اين سلولها در شناسايي الگوهاي آنتيژني در محدودهاي تقريباً بي حد و حصر کمک ميکنند.
آنتيژنها (Ag): اينها عوامل بيماريزا هستند. دو نوع آنتيژن خودي و غير خودي وجود دارد. آنتيژنهاي غير خودي عوامل بيماريزا بوده در حالي که آنتيژنهاي خودي براي بدن بيضرراند.
آنتيباديها (Ab): آنتيبادي مولکولي است که بوسيلة يک سلول B در واکنش به يک آنتيژن توليد ميشود و داراي خاصيت ويژهاي است که با آنتيژن ترکيب شده و موجب تغيير شکل آن ميشود.
3-2- نظرية انتخاب همزادي (Clonal selection):
هنگامي که يک سلول B با يک الگوي آنتيژني غير خودي با آستانة ميل ترکيبي (affinity) مناسب مواجه ميشود، تکثير شده و به سلولهاي عملکننده و سلولهاي حافظـــه مشتق ميشود. بر اساس نظرية انتخاب همزادي، آنتيژن سلول B را تحريک ميکند که پس از تکثير به سلول ترشحي با آنتيبادي نهايي تکامل مييابد. تکثير سلولهاي ايمني يک فرآيند غيرجنسي و صرفاً تقسيم سلولي است. اين سلولها خودشان را براي توليد همزادها تقسيم ميکنند. همزادها تحت يک فرآيند فراجهشي (Hypermutation) قرار ميگيرند که منجر به توليد سلولهاي B با گيرندههاي آنتيژني داراي ميل ترکيبي بالا با آنتيژن مذکور ميشود. فرآيند انتخاب همزادي بطور خلاصه در شکل 2 نشان داده ميشود.
شکل 2: فرآيند انتخاب همزادي، تکثير و بلوغ ميل ترکيبي
صرفنظر از تکثير و مشتق شدن به سلولهاي پلاسما، سلولهاي B ميتوانند به سلولهاي حافظة داراي عمر طولاني مشتق شوند. در طي تکامل سيستم ايمني اين امکان وجود دارد که سلولهاي ايمني در طول حيات خود با يک آنتيژن خاص بهدفعات برخورد کنند، بنابراين سلولهاي حافظة داراي عمر طولاني ميتوانند در واکنشهاي آتي کمک کنند. حضور اين سلولهاي حافظه در اولين مواجهه با بيماري، اثربخشي واکنش ايمني به مواجهة دوم را افزايش ميدهد و اين به تضمين سرعت و دقتِ واکنش ايمني کمک کرده و به طور پيدرپي آن را قويتر ميکند.
فراجهش و تصحيح گيرنده دو خاصيت قابل توجه در سيستم ايمني هستند. آنها در تکامل فرزندان، به عنوان آنتيباديهاي حاضر در واکنشِ حافظه، که بايد داراي ميل ترکيبي بيشتري از آنها که در واکنـــــش اوليه بودهاند باشند، کمک ميکنند. فراجهش بسيار شبيه به عملگر جهش در الگوريتم ژنتيک است، از آن رو که هر دو تغييرات تصادفي را براي متنوع ساختن فضاي جستجو معرفي ميکنند. اما تفاوت آنها در نرخ تعديل نهفته است که بستگي به ميل ترکيبي آنتيژني دارد.
بطور کلي آنتيباديهاي پَست (داراي ميل ترکيبي آنتيژني پايين) در يک نرخ بيشتر در مقايسه با آنتيباديهاي داراي ميل ترکيبي آنتيژني بالا، فراجهش پيدا ميکنند. اين پديده به عنوان تصحيح گيرنده شناخته ميشود و فراجهش را اداره ميکند. کار اصلي فراجهش هدايت به سمت بهينة محلي است، در حالي که تصحيح گيرنده به خروج از آن کمک ميکند.
3-3- مراحل کلي AIS :
گام 1: تابع هدف مخصوص مسئله را تعريف و پارامترهاي الگوريتم را معين کنيد.
iter=0 قرار دهيد. (شمارندهاي براي تعداد تکرارها) جوابهاي تصادفي امکانپذير اوليه را توليد کنيد. (در اينجا جواب همان عدد اولويت عمليات مربوط به هر فعاليت است)
گام 2 : يک آنتيژن را بطور تصادفي انتخاب کرده و در معرض تمام آنتيباديها قرار دهيد.
ميل ترکيبي همة آنتيژنها را محاسبه کنيد و بردار ميل ترکيبي (Af) را بسازيد. (در مورد کار ما، براي محاسبة ميل ترکيبي، اولين زمانبندي بهينه/نزديک بهينة فعاليتها را مطابق بخش 3.4 تعيين کرده و مقدار makespan آن محاسبه ميگردد.)
گام 3 : آنتيباديهاي با بالاترين ميل ترکيبي Pc را انتخاب کنيد.
مجموعة همزادها را براي آنتيباديهاي منتخب توليد نماييد.
گام 4 : براي هر همزاد توليد شده عمل جهش معکوس (قسمتي از رشتة همزاد را انتخاب کرده و معکوس کنيد) را با يک احتمالي انجام داده و ميل ترکيبي جواب جديد را محاسبه کنيد. اگر ميل ترکيبي جواب جديد از ميل ترکيبي همزاد بزرگتر است آنگاه همزاد را برابر با جواب جديد قرار داده و در غير اين صورت عمل تغيير جفتي را انجام دهيد. (دو مکان را انتخاب کرده و اجزاي آنها را جابجا کنيد) ميل ترکيبي جواب جديد را محاسبه کنيد، اگر بزرگتر از ميل ترکيبي همزاد بود آنگاه همزاد را برابر با جواب جديد قرار داده و در غير اين صورت همزاد را تغيير ندهيد.
گام 5 : ساکنين جديد جامعه (يعني همزادها) را در معرض آنتيژنها قرار دهيد. امکانپذيري را کنترل کرده و ميل ترکيبي را محاسبه نماييد.
گام 6 : آنتيباديهاي با کمترين ميل ترکيبي Ps را با بهترين همزادهاي Ps تعويض کنيد.
iter=iter+1 قرار داده، اگر (iter در اين گزارش يک الگوريتم جستجوي ترکيبي بر پاية AIS با ويژگيهاي آميخته با گراف جهتدار و روشهاي کوتاه جانمايي براي توليد يک زمانبندي امکانپذير بهينه/نزديک بهينه، توسعه داده شده است. در يک گراف جهتدار، رئوس نشاندهندة فعاليتها هستند در حالي که کمانها نشاندهندة روابط تقدمي بين فعاليتهاي مختلفاند. کمان جهتدار از گراف جهتدار را ميتوان با يک گراف جهتدار از يک فرآيند توليد که در دو کارگاه اجرا شده، در شکل 3 نشان داده ميشود. شکل 3: گراف جهتدارِ يک فرآيند توليد همراه با روابط تقدمي رأس e11 به عنوان اولين فعاليت انتخاب شده است، زيرا هيچ کمان مقدمي براي آن وجود ندارد و نيز داراي عدد اولويت بالاتري در مقايسه با رئوس e12 و e13 است. رأس e11 را به عنوان اولين فعاليت انتخاب کرده و کمانهاي متصل به e11 را 3-4- زمانبندي عملياتِ فعاليت :
شکل 4: کدگذاري آنتيبادي
حذف کنيد. اين روند تکرار ميشود تا اينکه همة رئوس انتخاب شوند. در آخر، يک توالي امکانپذير واحد به صورت زير بدست ميآيد:
{e11 , e13 , e21 , e23 , e22 , e12 , e14 , e15 , e24 , e26 , e25}
4- اجراي رويکرد AIS براي حل مسئلة RCPS
همانطور که پيش از اين بحث شد، هدف از حل مسئلة RCPS ، زمانبندي فعاليتها است، بطوري که محدوديتهاي تقدمي و منبعي برآورده شده و makespan کمينه شود.
4-1- تعريف مسئله
براي نشان دادن کارآيي و قدرت مدل پيشنهاد شده و نيز کيفيت رويکرد جواب بر پاية سيستم ايمني پيشنهادي، يک مثال توضيحي از [4] ذکر ميشود. در اين مسئله يک پروژه با 27 فعاليت زمانبندي ميشود. اين زمانبندي بايد بگونهاي باشد که مدت زمان کل پروژه را کمينه کند. اطلاعات مربوط به هر فعاليت در جدول 1 آمده است. روابط تقدمي نيز در شکل 1 نشان داده ميشود.
از روي شکل ميتوان ديد که کدام فعاليت پيشنياز و کدام فعاليت پسنياز است. فعاليتهاي 1 و 27 فعاليتهاي موهومی هستند.
4-2- الگوي کدگذاري
مبحث کليدي در اجراي رويکرد AIS، کدگذاري آنتيبادي يک جواب و نحوة نمايش آن است. در طول دو دهة گذشته، روشهاي کدگذاري رشتهاي مختلفي مانند کدگذاري حقيقي، عدد صحيح، جايگشت، ماتريس و ... توسعه داده شدهاند. در اين گزارش از الگوي کدگذاري عدد صحيح استفاده ميشود. براي مثال جواب اولية مسئلهاي با 10 فعاليت در شکل 4 آمده است. در آنتيبادي نشان داده شده در اين مثال هر جزء نمايانگر اولويت هر فعاليت است، مثلاً اولويت عملياتِ فعاليتهاي اول و دوم و چهارم به ترتيب برابر است با 6، 5 و 2.
4-3- جمعيت اوليه
رويکرد AIS پيشنـهاد شده بر روي يک آنتيبادي از رشتههاي تکي عمل ميکند. چندين محقق هر دو روش تصادفي و ابتکاري را براي توليد جواب اوليه بکار بردهاند. نتايج آزمايشات نشاندهندة اين است که عملکرد رويکرد AIS با جوابهاي ابتدايي تصادفي بهتر از جوابهاي از قبل انتخاب شده است. همچنين مشاهده شده است که جوابهاي اولية تصادفي به طور کارا، فضاي جستجو را متنوع ساخته و بطور همزمان زمان محاسبات را کاهش ميدهد.[5] اين دليل اصلي براي توليد تصادفي يک جواب اوليه در اين گزارش است. براي همين در آغاز به تعداد n عدد آنتيبادي بطور تصادفي توليد ميشود.
جدول 1: مجموعه دادههاي مسئلة اول
4-4- محاسبه زيبندگي (Fitness)
بعد از مراحل آغازين، مقدار زيبندگي هر آنتيبادي بر اساس تابع هدف مخصوص مسئله ارزيابي ميشود. در اينجا هدف اصلي توليدِ يک زمانبندي کارا از فعاليتها با کمترين مقدار makespan است، بطوري که همة محدوديتهاي فني در نظر گرفته شوند.
شکل 5: آنتيبادي اوليه
4-5- تکثير و بلوغ ميل ترکيبي
50 درصد از بهتـرين آنتيباديهاي موجود براي تکثير ثبتنام ميشوند. در اينجا آنتيباديها در تقابل با هم نمايندگان خود را انتخاب ميکنند. تعداد کل همزادهاي توليد شده از معادلة (3) تبعيت خواهد کرد:
سپس مرحلة بلوغ ميل ترکيبي انجام ميشود. الگوريتم ما يک روية قطعي براي يافتن نرخ فراجهش دارد، که به صورت معادلة (4) است:
فراجهش تغييرات تصادفي را ارائه ميدهد و تفاوت آن با فرآيند جهش طبيعي در درجة تعديل نهفته است. تصحيح گيرنده (درجهاي که يک آنتيبادي به بهترين نوع خود شباهت دارد) فراجهش را اداره کرده و قدرتي براي خروج از بهينههاي محلي ارائه ميکند. از معادلة (4) بديهي است که آنتيباديهاي با ميل ترکيبي پايين در يک نرخ بيشتري از آنتيباديهاي با ميل ترکيبي بالاتر، فراجهش مييابند. الگوريتم حاضر بر اساس اين قوانين و اصول، آنتيباديهاي فراجهش يافته را توليد ميکند. شکل 5 يک آنتيبادي اوليه را نشــان داده و شکل 6 همان آنتيبادي را بعد از فراجهش نشان ميدهد.
در آخر، مجموعهاي از جوابهاي فراجهش يافته تشکيل شده و مقدار زيبندگي آنها ارزيابي ميشود. سپس تعداد ثابتي (d) از بهترين آنتيباديها براي توليدات بعدي انتخاب ميگردند. در اينجا d يک پارامتر تنظيم است.
4-6- پارامتر تنظيم
پارامترهايي که عملکرد AIS را اداره ميکنند، بعد از آزمايشهاي اوليه و نيز تجارب گذشته انتخاب ميشوند. مقدار اين پارامترها و ارتباط آنها با مسئلة تحت بررسي يک موضوع قابل توجه است. اين پارامترها را بطور مستقل نميتوان تعيين کرد، زيرا اين يک موضوع پيچيدة بهينهسازي غيرخطي است. براي همين بديهي است که، تنظيم اين پارامترها با توجه به جزئيات تعاملات بين عمليات صورت گيرد.
با وجود موارد ذکر شده، رويکرد AIS سه پارامتر تعريف شده توسط کاربر دارد که عبارتند از: n (تعداد آنتيباديهايي که بايد براي همزادي انتخاب شوند)، Nc (تعداد همزادهاي توليد شده) و d (تعداد آنتيباديهاي با ميل ترکيبي پايين که بايد تعويض گردند). اينها به طور عمده بر سرعت همگرايي، پيچيدگي محاسبات و توانايي الگوريتم براي اجراي جستجوهاي چندشرطي اثر ميگذارند.
شکل 7: ميانگين ميل ترکيبي جمعيت بعد از همگرايي
4-6-1- پارامتر n
در اين گزارش 50 درصد از بهترين آنتيباديها براي همزادي انتخاب شدند. با اينکه پارامتر n بطور قوي بر تعدادِ توليدات اثر ندارد، اما بطور مؤثري بر اندازة جمعيت تأثيرگذار است؛ و مقدار بزرگتر n بهمعني هزينة محاسباتي بيشتر براي اجراي الگوريتم است. به همين دليل 50 درصد بنظر مناسبتر و اقتصاديتر است. همچنين ميانگين ميل ترکيبي جمعيت با افزايش n ، افزايش مييابد. اين امر در شکل 7 نشان داده شده است.
4-6-2- پارامتر Nc
بر روي اين پارامتر آناليز حساسيت صورت گرفته است. در هنگام ارزيابي عملکرد Nc ، مقدار n برابر 10 و d نيز صفر بوده است. چندين آزمايش بر روي Nc از 0 تا 100 و در گامهاي 20تايي و از 100 تا 500 در گامهاي 50تايي انجام شده و نمودار مربوطه در برابر تعداد توليدات، در شکل 8 رسم گرديده است. در اين شکل به سادگي ميتوان ديد که با مقدار بيشتر Nc
شکل 6: آنتيبادي بلوغ يافته
، همگرايي سريعتري برحسب تعداد توليدات رخ ميدهد. با وجود اين، زمان محاسبات بازاي تعداد توليدات بصورت خطي با Nc و در يک دامنة منطقي افزايش مييابد.
شکل 8: رابطة بين Nc و تعداد توليدات
4-6-3- پارامتر d
تعداد آنتيباديهاي با ميل ترکيبي پايين که بايد تعويض گردند بطور زيادي بر حفظ تنوع در جمعيت مؤثر است. اين امر در جستجوي نواحي جديد کمک شاياني ميکند. براي n=10 ، الگوريتم بهازاي d=0,1,2,3,4 اجرا ميشود، و بطور متناظر 0، 10، 20، 30 و 40 درصد از جمعيت در هر بار توليد تعويض خواهند شد. همانطور که مقدار d افزايش مييابد الگوريتم به جواب بهينه نزديک و نزديکتر ميشود. در اين گزارش مقدار پارامتر d در عدد 1 تنظيم شده است.
5- نتايج محاسبات
براي اثبات کارآييِ ابتکار ارائه شده بر پاية AIS، مطالعات گستردهاي بر روي مجموعة دادههاي معروف RCPSP انجام شده است. ويژگيهاي اصلي الگوريتم پيشنهاد شده عبارتند از:
1- ماهيت احتمالي الگوريتم به خروج آن از بهينههاي محلي کمک ميکند.
2- رويههاي قطعي براي يافتن نرخ فراجهش به الگوريتم در دستيابي سريعتر به جواب بهينه کمک ميکند.
3- زمان محاسباتي مورد نياز براي محاسبة جواب بهينه بطور قابل توجهي با بکار بردن يادگيري حافظه، کاهش مييابد.
تجزيه و تحليل عميقي بر روي مسئلهاي که در بخش 4.1 ذکر شد، با استفاده از AIS انجام شده است. با بکارگيري رويکرد AIS براي اين ممسئله بهترين مقدار makespan برابر 64 بدست آمد.(جدول 2) در رابطه با اين مسئله مقايسهاي بين رويکرد AIS با ديگر رويکردهاي موجود در ادبيات موضوع انجام شده که در شکل 9 نتايج آن نشان داده شده است.
شکل 9: مطالعة مقايسهاي از AIS ارائه شده با ديگر رويکردهاي موجود
در شکل 9 واضح است که الگوريتم AIS بر همة روشهاي موجود برتري دارد بغير از روش الگوريتم ژنتيک فازي (FGA[5]) که نتيجه در مورد هر دو روش يکسان است. با وجود اين، رويکرد AIS در تعداد کمتري از توليدات نسبت به الگوريتم ژنتيک فازي به جواب ميرسد. الگوريتم AIS جواب را در 52 تکرار و FGA همان جواب را در 100 تکرار بدســت ميآورد. همچنين زمان صرف شده براي رسيدن به جواب مذکور براي AIS برابر 0.41185 ثانيه و براي FGA 0.934066 ثانيه است. با توجه به موارد ياد شده ميتوان گفت، بر اساس معيار makespan الگوريتم AIS با رويکرد FGA برابر و بر اساس زمان محاسبات برتر از آن است. روند همگرايي رويکرد AIS در شکل 10 نشان داده ميشود.
شکل 10: همگرايي makespan با تعداد توليدات
چند گزينة ديگر با مقدار makespan برابر 64 در جدول 3 نشان داده ميشود. اين گزينهها از اين نظر داراي اهميت هستند که در صورت اجرايي نبودن يکي ميتوان از ديگري استفاده نمود.
جدول 2: برنامة زماني بهينة توليد شده توسط AIS براي مسئلة اول
نتايج مطالعات صورت گرفته بر روي مجموعة نمونة ProGen از PSPLIB [6] در جدول 4 خلاصه شده است. در اين جدول ميانگين درصدِ انحراف از makespan بهينه، براي مجموعة نمونة ProGen با 30 فعاليت بعد از 1000 و 5000 تکرار مشاهده ميشود.
الگوريتم ارائه شده بر پاية AIS در C++ کدنويسي شده و بر روي يک کامپيوتر Pentium IV با 1.8 GHz CPUاجرا گرديده است.
6- نتيجه
در اين گزارش مسئلة زمانبندي پروژه همراه با منابع محدود مورد بررسي قرار گرفت. هدف اصلي کمينه کردن مدت زمان کل پروژه با در نظر گرفتن چند معيار، (مانند انتخاب فعاليت و اولويت آن) در عين برآورده شدن محدوديتهاي تقدمي و منبعي بود. بررسي ادبيات موضوع آشکار ميکند که اين مسئله از لحاظ محاسباتي پيچيده و ذاتاً NP-hard است. به همين دليل دستيابي به جواب بهينه تحت يک جستجوي جامع در دنياي واقعي قابل اجرا نبوده و بنابراين استفاده از يک روش جستجوي تصادفي ضروري است. برخي از کارهاي صورت گرفته در گذشته، مدت زمان کل پروژه را کمينه کردهاند، اما جواب آنها غير واقي بوده است زيرا بيش از يک محدوديتِ حداکثر منبع در دسترس را نقض کردهاند. عملکرد الگوريتم AIS ارائه شده بر روي مسئلهاي که در ادبيات موضوع آمده است حاکي از اين است که اين الگوريتم در مقايسه با الگوريتم ژنتيک (GA[6])، الگوريتم ژنتيک فازي (FGA)، حداقلِ ديرترين زمان پايان ([7]LFT)، بيشترين استفاده از منابع (GRU[8])، کوتاهترين عمليات آتي (SIO[9])، حداقل شناوري کار (MINSLK[10])، روش زمانبندي منابع (RSM[11])، انتخاب تصادفي کارها (RAN[12])، حداکثر کارهاي ممکن ([13]MJP)، برتر است.
اين موضوع داراي دامنهاي وسيع جهت کارهاي آتي است. در آينده ميتوان توابع هدف ديگري چون تابع هزينة موجودي، ميانگين زمان در جريان، تابع ارزش فعلي خالص و... را مورد مطالعه قرار داد و از روشهاي ديگري چون الگوريتم مورچگان، شبيهسازي سرد شدن فلزات و ... استفاده کرد.
جدول 3: چند گزينة ديگر براي زمانبندي بهينة بدست آمده بوسياة AIS براي مسئلة اول
جدول 4: ميانگين انحراف (%) از makespan بهينه براي مجموعه دادههاي ProGen براي 30 فعاليت
7- مراجع
|
[1] |
Yang, Bibo; Geunes, Joseph; J. O’Brien, William; “Resource constrained project scheduling problem: Past Work and New Directions” , Univ of Floride, Deportment of Industrial & Systems Engineering, 2001
|
|
[2] |
Agarwal, Rina; M.K. Tiwari; S.K. Mukherjee; “Artificial Immune System based approach for solving resource constrained project scheduling problem”, Adv Manuf Technol, 2006
|
|
[3] |
Musilek, Petr; Lau, Adriel; Reformat, Marek; Wyard-Scott, Loren; “Immune Programming”, Information Sciences 176, p.p. 972-1002, 2006
|
|
[4] |
Kim KW.; Gen M; Yamajaki G.; “Hybrid genetic algorithm with fuzzy logic for resource constrained project scheduling”, Appl Soft Comput 2/3F, p.p.174–188, 2003
|
|
[5] |
Anderson EJ.; Ferris MC.; “Genetic algorithm for combinatorial optimization: assembly line balancing problem”, ORSA J Comput 6, p.p.161–173, 1994
|
|
[6] |
PSPLIB (2000) ftp://ftp.bwl.uni-kiel.de/pub/operationsresearch/psplib/HTML/
|
[1] Resource Constrained Project Scheduling Problem
[2] Artificial Immune System
[3] Resource Constrained Project Scheduling
[4] Traveling Salesman Problem
[5] Fuzzy Genetic Algorithm
[6] Genetic Algorithm
[7] Minimum late finish time
[8] Greatest resource utilization
[9] Shortest imminent operation
[10] Minimum job slack
[11] Resource scheduling method
[12] Select jobs randomly
[13] Most jobs possible
سال1392، سال حماسه سیاسی حماسه اقتصادی بر شما هموطنان عزیز مبارک باد.