You are on page 1of 23

1

Using ant algorithm to find the optimal critical path of


project network
‫استخدام خوارزمية ن ملإل يجاد ا لمسار ا لحرج ا ألمثلل شبكة مشروع‬

2
‫‪3‬‬

‫بسم هللا الرحمن الرحيم‬

‫الحمد هلل رب العالمين والصالة والسالم على اشرف‬


‫‪:‬المرسلين وعلى اله وصحبه الى يوم الدين‬
‫شبكة اعمال المشاريع‬

‫• النشاط ‪ : Activity‬يعبر عنها بخط متصل يمثل مجموعة من الموارد المادية‪ :‬البشرية‪ ،‬الوقت‪ ،‬المواد ‪ ،‬المعدات‪ ،‬الكلف أو األرباح‪.‬‬
‫‪4‬‬
‫‪ -‬النشاط الفعلي‪ :‬هي األنشطة التي تستغرق وقت وتستلزم موارد مادية وبشرية‪.‬‬
‫‪ -‬النشاط الوهمي‪ :‬هي األنشطة التي ال تستغرق وقتاً وال تستلزم أي موارد مادية وبشرية ويعبر عنها بخط متقطع وتكون قيمته =‪.0‬‬
‫الحدث ‪ :Event‬تمثل بعقدة تبين بداية نشاط او نهاية نشاط‪،‬‬ ‫•‬

‫‪ -‬العقدة األولى تمثل بداية المشروع‪.‬‬


‫‪ -‬العقدة األخيرة تمثل نهاية المشروع ككل‪.‬‬
‫المسار ‪ :Path‬يمثل سلسلة من األسهم المتعاقبة تبدأ بحدث البداية وتنتهي بحدث النهاية‪.‬‬ ‫•‬
‫‪1‬‬ ‫‪2‬‬ ‫‪4‬‬ ‫‪5‬‬
‫• المسار الحرج األمثل ‪ : Optimal Critical Path‬هو المسار الذي يحقق اعلى مجموع لألنشطة‬
‫مستعمرة النمل الطبيعية‬

‫بحث النمل عن مصدر الطعام‬

‫‪ -1‬بدايةً مجموعة من النمل المستكشف ينطلق من العش(‪ )A‬في عدة اتجاهات عشوائية للبحث عن مصدر‬
‫الغذاء(‪.)B‬‬

‫على المسار الذي تسلكه‪،‬‬ ‫‪ -2‬تتواصل النملة مع افراد مجموعتها بواسطة فرز مادة كيميائية عطرية ‪Pheromone‬‬
‫إلرشاد المجموعة على مسارها‪.‬‬
‫‪5‬‬

‫‪ -3‬عندما تجد النملة مصدر الطعام تأخذ كمية منه وتسلك المسار الذي‬
‫يحوي اكبر كمية فيرمون للعودة الى العش(‪.)A‬‬

‫استكشاف المسار األمثل‬


‫فرضية البحث‬

‫• يتوفر العديد من التقنيات الذكائية لمسألة اتخاذ القرار في إدارة المشاريع بعيدا عن الطرائق التقليدية كبحوث العمليات‪.‬‬

‫وقع االختيار على خوارزمية أمثلية مستعمرة النمل )‪ Ant Colony Optimization (ACO‬إليجاد المسار الحرج‬ ‫•‬

‫األمثل لشبكة أعمال المشاريع(‪. Critical Path Network )CPN‬‬

‫شبكة األعمال هي أكثر الشبكات تقليدا لسلوك (طبيعة) نظام مستعمرات النمل لكونها‪:‬‬ ‫•‬
‫‪6‬‬ ‫‪ -1‬تمتلك عقده بداية المشروع (الحدث األول)‬

‫تعادل مسكن النمل‪.‬‬


‫‪ -2‬عقده نهاية المشروع (الحدث األخير)‬
‫تعادل مصدر الطعام‪.‬‬
‫‪ -3‬مسألة إيجاد المسار الحرج األمثل للمشروع‬
‫يعادل عملية البحث إليجاد أمثل (أقصر)‬
‫مسار بين مسكن وموقع الطعام‪.‬‬
‫مشكلة البحث‬
‫‪ -1‬مشكلة ‪ :1‬تهيئة بيانات شبكة االعمال برمجيا ً‪.‬‬

‫الحل المقترح‬
‫تم االعتماد على متجه الهيكلي ‪ array of structure‬للتعامل مع شبكة االعمال‪.‬‬

‫‪7‬‬ ‫‪grid(1).no = 2‬‬


‫] ‪grid(1).nodes(2:no) = [ 2 3‬‬
‫] ‪grid(1).days(2:no) = [ 0 5‬‬

‫‪grid(2).no = 2‬‬
‫] ‪grid(2).nodes(2:no) = [ 3 4‬‬
‫] ‪grid(2).days(2:no) = [ 3 7‬‬
‫مشكلة البحث‬

‫‪ -2‬مشكلة ‪ :2‬التعامل مع المسارات الوهمية وكيفية تضمينها ضمن قاعدة االنتقال لتوسعة مجال البحث‬
‫الحل المقترح‪:‬‬
‫‪8‬‬
‫‪ -1‬اعتماد عجلة الروليت مع العقد التي تحتوي مسارات حقيقة فقط ‪.‬‬

‫مع العقد التي تحوي‪:‬‬ ‫‪ -2‬اعتماد دالة ‪randi‬‬


‫مسار وهمي واحد او اكثر‬
‫مسارات وهمية وحقيقية معا ً‬
‫هدف البحث‬

‫‪ -1‬تصميم برنامج ‪ ANTOCPN‬بلغة ماتالب‪ ،‬يمتاز بإمكانية تطبيقه على أي شبكة أعمال مهما كانت‬

‫درجه التعقيد من ناحية عدد المسارات سوآ ًء الواقعية منها والوهمية بسالسة وسهولة‪.‬‬

‫‪ -2‬تصميم برنامج يتميز بكفاءته ودقة نتائجه مقارنة مع الطرق التقليدية في بحوث العمليات‪.‬‬

‫‪ -3‬تسليط الضوء على التقنيات الذكائية لمسالة شبكات المشاريع لتكون بديالً عن نظيرتها من الطرائق‬

‫التقليدية (بحوث العمليات) إليجاد المسار الحرج األمثل للمسألة‪.‬‬


‫‪9‬‬
‫‪ -4‬مقارنة بين البرنامج المصمم ‪ ANTOCPN‬وبرنامج ‪ GAOCPN‬في دراسة سابقة لحل نفس المسالة‬
‫المخطط االنسيابي لخوارزميه النمل إليجاد المسار الحرج األمثل لشبكة اعمال المشاريع‬

‫‪10‬‬
‫خطوات خوارزمية مستعمرة النمل االصطناعي‬
‫‪ -1‬تهيئة المعامالت‪:‬‬
‫المعلومات الحدسية‬ ‫‪α –1‬‬
‫ضمن المدى (‪ 0‬و‪)1‬‬ ‫المادة العطرية‬ ‫‪β -2‬‬
‫المادة العطرية المفرزة‬ ‫‪Q -3‬‬
‫معامل التبخر‬ ‫‪E -4‬‬

‫‪11‬‬
‫‪ :m -5‬عدد النمالت ‪. Ants‬‬

‫‪ : n -6‬عدد العقد ‪ Node‬لشبكة المشاريع‪.‬‬

‫‪ : tour -7‬عدد الجوالت الكلية للنمل وتنتهي الجولة حين كل النمالت تصل إلى آخر عقده للشبكة‬

‫‪ -8‬مصفوفة األثر تعطى قيمه أولية على حافات العقد جميعها وللجولة األولى فقط وتتحدث مصفوفة األثر عند كل جولة جديدة‬
‫للنمل‪.‬‬
‫‪.‬‬
‫خطوات خوارزمية مستعمرة النمل االصطناعي‬

‫‪ -2‬قراءة ملف شبكة االعمال‬


‫العقدة التالية للعقدة ‪i‬‬
‫عدد العقد المرتبطة بها‬
‫قيمة النشاط‬
‫‪2 3‬‬
‫‪2‬‬
‫‪0 5‬‬
‫‪3‬‬ ‫‪4‬‬
‫‪2‬‬
‫‪3‬‬ ‫‪7‬‬
‫‪4‬‬ ‫‪5‬‬
‫‪2‬‬
‫‪0‬‬ ‫‪0‬‬
‫‪6‬‬
‫‪12‬‬ ‫‪0‬‬
‫‪1‬‬

‫‪4‬‬
‫‪1‬‬
‫‪10‬‬

‫)‪D(n-1,n‬‬ ‫‪1 2 3 4 5 6‬‬


‫‪grid(1).no = 2‬‬ ‫‪1‬‬ ‫‪[ -1 0 5 -1 -1 -1‬‬
‫‪ ‬‬
‫] ‪grid(1).nodes(2:no) = [ 2 3‬‬
‫] ‪grid(1).days(2:no) = [ 0 5‬‬ ‫‪2 -1 -1 3 7‬‬ ‫‪-1 -1‬‬
‫‪3 -1 -1 -1 0‬‬ ‫‪0 -1‬‬
‫‪4 -1 -1 -1 -1‬‬ ‫‪-1‬‬ ‫‪0‬‬
‫‪5 -1 -1 -1 10‬‬ ‫‪-1 -1 ] 5*6‬‬
‫خطوات خوارزمية مستعمرة النمل االصطناعي‬
‫‪ -3‬احتساب الدالة الحدسية‬
‫تمثل قدرة النمل في استشعار المادة العطرية‪ .‬وتحسب لمره واحده‬

‫)‪D(n-1,n‬‬ ‫‪1 2 3 4 5 6‬‬


‫‪1‬‬ ‫‪[ -1 0 5 -1 -1 -1‬‬

‫‪2 -1 -1‬‬ ‫‪3‬‬ ‫‪7 -1 -1‬‬


‫‪3 -1 -1 -1‬‬ ‫‪0‬‬ ‫‪0 -1‬‬
‫‪4 -1 -1 -1 -1 -1‬‬ ‫‪0‬‬
‫‪13‬‬ ‫‪5 -1 -1 -1 10 -1 -1 ] 5*6‬‬

‫‪Ƞ=1/D‬‬
‫‪[-1.0000‬‬ ‫‪0‬‬ ‫‪0.2000‬‬ ‫‪-1.0000‬‬ ‫‪-1.0000‬‬ ‫‪-1.0000‬‬
‫‪1‬‬
‫‪ 2‬‬ ‫‪-1.0000‬‬ ‫‪-1.0000‬‬ ‫‪-1.0000‬‬ ‫‪0.1429‬‬ ‫‪-1.0000‬‬ ‫‪-1.0000‬‬

‫‪3 ‬‬ ‫‪-1.0000‬‬ ‫‪-1.0000‬‬ ‫‪-1.0000‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪-1.0000‬‬

‫‪4 ‬‬ ‫‪-1.0000‬‬ ‫‪-1.0000‬‬ ‫‪-1.0000‬‬ ‫‪-1.0000‬‬ ‫‪-1.0000‬‬ ‫‪0‬‬

‫‪5 ‬‬ ‫‪-1.0000‬‬ ‫‪-1.0000‬‬ ‫‪-1.0000‬‬ ‫‪-1.0000‬‬ ‫‪-1.0000‬‬ ‫‪-1.0000]5*6‬‬


‫خطوات خوارزمية مستعمرة النمل االصطناعي‬
‫‪ -4‬المادة العطرية التي تفرزها النملة ‪ k‬على المسار بين العقدة ‪ i,j‬للجولة الحالية‬
‫‪14‬‬ ‫في حاله مرور النملة على الحافة (‪for k=1 to m )i , j‬‬

‫تبخر (‪)i , ،j‬إضافة اثر)‬


‫في حالة عدم مرور النملة على الحافة‬
‫‪ -5‬تركيز المادة العطرية على المسارات (‬

‫=‪τi, j‬‬
‫{‬
‫الحالية ∆‪¿ ( 1− 𝐸 ) ∗ τ i , j +‬‬
‫‪,j‬‬
‫في حاله مرور النمل على الحافة (‪ )i , j‬للجولة 𝑗𝑖 𝜏‬
‫الحالية‪¿ ( 1− 𝐸 ) ∗ τ i‬‬ ‫الروليت)‬
‫الحافة (‪ )i , j‬للجولة‬ ‫(عجلة‬
‫النمل على‬ ‫االنتقال مرور‬ ‫‪ -6‬قاعدة‬
‫في حالة عدم‬
‫احتمالية انتقال النملة ‪ k‬من موقعها الحالي ‪ i‬إلى العقدة المجاورة ‪ j‬وحساب احتمالية اختيار العقدة التالية ‪j‬‬
‫جانب ألحدى نتائج مجال البحث‬
‫‪15‬‬
‫= ‪Tabu‬‬ ‫‪[1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫‪6‬‬ ‫‪0‬‬ ‫=‪L‬‬ ‫‪[3‬‬

‫‪ ‬‬ ‫‪1‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫‪6‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪ ‬‬ ‫‪5‬‬

‫‪ ‬‬ ‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪5‬‬ ‫‪4‬‬ ‫‪6‬‬ ‫‪ ‬‬ ‫‪13‬‬

‫‪ ‬‬ ‫‪1‬‬ ‫‪3‬‬ ‫‪5‬‬ ‫‪4‬‬ ‫‪6‬‬ ‫‪0‬‬ ‫‪ ‬‬ ‫‪15‬‬

‫‪ ‬‬ ‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫‪6‬‬ ‫‪0‬‬ ‫‪ ‬‬ ‫‪3‬‬

‫‪ ‬‬ ‫‪1‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫‪6‬‬ ‫‪0‬‬ ‫]‪0‬‬ ‫‪ ‬‬ ‫]‪5‬‬

‫=‬ ‫=‪Ʈ‬‬ ‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫‪5‬‬ ‫‪6‬‬


‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫‪5‬‬ ‫‪6‬‬ ‫‪1‬‬ ‫‪[0.4305‬‬ ‫‪1.8394‬‬ ‫‪1.3918‬‬ ‫‪0.4305‬‬ ‫‪0.4305‬‬ ‫‪0.4305‬‬
‫‪1 [0‬‬ ‫‪0.1949‬‬ ‫‪0.1333‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪0‬‬
‫‪2‬‬
‫‪ ‬‬ ‫‪0.4305‬‬ ‫‪0.4305‬‬ ‫‪1.6640‬‬ ‫‪0.6059‬‬ ‫‪0.4305‬‬ ‫‪0.4305‬‬
‫‪0‬‬ ‫‪0.1949‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪0‬‬
‫‪ 2‬‬ ‫‪0‬‬
‫‪ 3‬‬
‫‪0‬‬ ‫‪0‬‬ ‫‪0.2133‬‬ ‫‪0.1149‬‬ ‫‪0‬‬ ‫‪0.4305‬‬ ‫‪0.4305‬‬ ‫‪0.4305‬‬ ‫‪2.2320‬‬ ‫‪0.8238‬‬ ‫‪0.4305‬‬
‫‪ 3‬‬ ‫‪0‬‬
‫‪ 4‬‬
‫‪0‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪0.3282‬‬ ‫‪0.4305‬‬ ‫‪0.4305‬‬ ‫‪0.4305‬‬ ‫‪0.4305‬‬ ‫‪0.4305‬‬ ‫‪2.8008‬‬
‫‪ 4‬‬ ‫‪0‬‬
‫‪0‬‬ ‫‪0‬‬ ‫‪0.1149‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪ 5‬‬
‫‪ 5‬‬ ‫‪0‬‬ ‫‪0.4305‬‬ ‫‪0.4305‬‬ ‫‪0.4305‬‬ ‫‪0.8238‬‬ ‫‪0.4305‬‬ ‫]‪0.4305‬‬
‫الجانب التطبيقي للبرنامج المصمم ‪ANTOCPN‬‬
‫شبكة اعمال جسر الصرافية‬

‫‪16‬‬
‫الجانب التطبيقي للبرنامج المصمم ‪ANTOCPN‬‬
‫شبكة اعمال جسر الصرافية‬
‫‪17‬‬
‫الجانب التطبيقي للبرنامج المصمم ‪ANTOCPN‬‬
‫شبكة اعمال جسر الصرافية‬
‫‪18‬‬
‫الجانب التطبيقي للبرنامج المصمم ‪ANTOCPN‬‬

‫‪19‬‬ ‫شبكة اعمال من موقع (‪)https://media.cheggcdn.com‬‬


‫الجانب التطبيقي للبرنامج المصمم ‪ANTOCPN‬‬

‫‪20‬‬ ‫شبكة اعمال من موقع (‪)https://media.cheggcdn.com‬‬


‫الجانب التطبيقي للبرنامج المصمم ‪ANTOCPN‬‬

‫‪21‬‬ ‫شبكة اعمال من موقع (‪)https://media.cheggcdn.com‬‬


‫االستنتاجات والتوصيات‬
‫اهم االستنتاجات التي حققها ‪ANTOCPN‬‬
‫‪ -1‬يمكن التعامل مع جميع العقد سواء كانت واقعية او وهمية ومهما كان حجم الشبكة‪.‬‬
‫‪ -2‬يمتاز بسهولة تطبيقه‪ ،‬لكونه مدعم بواجهات ‪.GUI‬‬
‫‪ - 3‬يساهم البرنامج في دعم قرار مدير المشروع برفده برسوم بيانية لتعزيز قراراته بشكل علمي مدروس‪.‬‬
‫‪ -4‬أسفر تطبيق شبكة إعمار جسر الصرافية في برنامج ‪ ANTOCPN‬بالحصول على نفس المسار الحرج األمثل لبرنامج ‪GAOCPN‬‬
‫(في دراسة سابقة) لكن بعدد خطوات أقل وبالتالي فإن ‪ ANTOCPN‬هو أسرع بالوصول إلى الحل األمثل من نظيره ‪GAOCPN‬‬
‫‪22‬‬

‫التوصيات والعمل المستقبلي‬


‫‪ -1‬نوصي بتطبيق التقنيات الذكائية في حل مسائل بحوث العمليات‬
‫‪ -2‬نوصي بتهجين ‪ ANTOCPN‬مع تقنية ذكية أخرى لتحديد أمثل قيم لباراميترات خوارزمية النمل لمسألة المسار الحرج األمثل لشبكة‬
‫األعمال‪.‬‬
‫‪.‬ن وصيب تبنيخوارزمياتس ربذكية ل مسأ لة ا لمسار ا لحرج ا ألمثلوا لمقارنة ف يما ب ينها منن احية ا لسرعة وا لكفاءة ‪3-‬‬
‫‪23‬‬ ‫شكراً لحسن االصغاء‬

You might also like