بسم الله الرحمن الرحيم.
- سواء تعلق الأمر بتحسين أداء جهاز أو إدارة أو تحسين كفاءة خطوط إنتاج أو شبكة اتصالات إلخ ..
- وسواء تم الاعتماد على آلية تبحث عن الحلول المثلى في خطوة واحدة فقط أو على عدة خطوات..
فإن كلمة "optimization" ليس لها أي معنى دون تحديد الغاية المتمثلة في (الدالة الموضوعية) = (objective function)
وحتى لا يُقال أن "الحديث عن الغاية" هو كلام فلسفي .. سيتم الإنطلاق من التعريف الرياضي للدالة الموضوعية للحكم على أية آلية تحسين
أمثلة عن التحسين في خطوة واحدة
المثل 1
لو كلفتك بلدية المدينة بتحديد مسارات الشاحنات المخصصة لجمع النفايات (النقاط الزرقاء) والعودة بها الى مركز التجميع والمعالجة (النقطة الخضراء) .. فإنك ستجد نفسك أمام حتمية المرور من بعض النقاط أكثر من مرة، والمرور من طرق خالية للانتقال من منطقة سكنية الى أخرى. هذا شر لا مفر منه، ومطلوب تقليله قدر المستطاع بحيث يكون مجموع المسافات التي تقطعها الشاحنات هو الأقصر. لحل هذه المشكلة، الخطوة الأولى البديهية هي محاولة البحث عن طريقة ما "لترجمة" الواقع وعوائقه الى معادلات.. وبالتحديد
ترجمة غايتك الى (دالة موضوعية) :
المثل 2
لديك شركة تصنع 4 منتجات وجميعها تمر من نفس محطات التصنيع، إلا أن الزمن الذي تحتاجه كل محطة يختلف من منتج لآخر كما هو مبين في الجدول التالي. وبالنظر الى المكسب بالنسبة لكل منتج، والى الحد الأدنى لإنتاج كل منتج أسبوعيا (حتى لا تفقد زبائنك)، والى عدد الساعات التي لا ينبغي لكل جهاز تجازوها أسبوعيا، المطلوب تحديد العدد الأمثل لكل منتج لتعظيم الربح ؟
المثل3
الاستخدام الأمثل لعدد محدود من الشاحنات ذات سعات مختلفة، لنقل أجهزة ذات أحجام وأولويات مختلفة..
بقية التفاصيل ..
وبصفة عامة
هذه النوعية من المشاكل المتعلق بدعم القرار، تصاغ بالطريقة التالية:
في الأمثلة السابقة يمكن البحث عن الحلول المثلى في خطوة واحدة
ولا يجادل الملحد في هذه الحالة حول ضرورة تحديد الهدف مسبقا
لكن ماذا لو توزعت آلية التحسين على خطوات متراكمة و"أجيال"؟
هل عامل "التراكمية" ينفي الحاجة الى توجيه كما يتوهم البعض؟
الجواب لا !
لأنه لا يوجد تعريف لمفهوم "الأصلح" .. يمكن التعامل معه رياضيا .. دون ربط ذلك التعريف بدالة موضوعية
genetic algorithm
البعض يرد بالقول: "ألم تسمع عن الخوارزمية الجينية كمثال يثبت امكانية وجود انتخاب دون توجيه مسبق"؟ الطرفة هنا أن هذه الخوارزمية
تثبت النقيض تماما !! وتثبت جهل من يستشهد بها في هذا السياق، لأنها تعتمد في نجاحها على تحديد ما يُسمى
fitness function وهي
حالة خاصة من الدالة الموضوعية الـobjective function التي يجب وضعها منذ البداية.
وأما كلمة genetic فيُخدع بها من لا يقرأ من البرنامج غير عنوانه، ولو نظر الى محتواه لعلم أن السبب يرجع الى تسمية (الأعداد الثنائية)
مــجـــازا بـ(الكروموسومات) عند البحث عن حلول مثلى في مجالات هندسية مختلفة
ليست بالضرورة متعلقة بالمجال البيولوجي. كما تم استخدام كلمة "تزاوج" لوصف (إنشاء أعداد ثنائية جديدة باقتطاع جزء من عدد ووضعه في آخر وبالعكس) إلخ..
والعبرة ليست في المسميات .. بل في العامل الذي بدونه لن ينجح البرنامج = وهو ضرورة تحديد وحفظ الغاية.
مثال ..
في خانة "الكروموسومات" لديك قائمة من الأعداد الثنائية، والمطلوب تقييمها طبقا لمعايير لـf(x)
للقيام بذلك يتم تحويل كل عدد ثنائي الى عشري، ثم ضربه بـ(10 /1023) لتحصل على قيم x تتراوح بين 0 و 10 .
ثم يتم ربط حظوظ انتقاء x بقيمة f(x)، مثلا حظوظ انتقاء العنصر الثالث = 38% = f(2.55) / 22.05 .
ومن لا يحب الأرقام.. الفكرة بكل بساطة هو ربط كل عنصر بنسبة % تمثل حظوظ انتقائه طبقا لتقييم f(x).
هذه الطريقة تسمى "roulette wheel selection".
وهناك طرق أخرى كثيرة غير طريقة "الروليت"، وكلها دون استثناء تعتمد في علمية الانتقاء على معايير تحددها دالة موضوعية.
...
كل ما سبق يمثل الخطوة
(أ) في الخوارزمية التالية:
• ينطلق البرنامج من مجموعة من الأعداد الثنائية ..
• (أ) : ينتقي منها الأفضل طبقاً لتقييم f(x).
(ب) : ليُنتج منها "أبناء"، وذلك باقتطاع جزء من عدد ثنائي ووضعه في آخر وبالعكس.
• (ج) : تغيير بعض المواقع من "الشريط" .. لتجربة أعداد "مجاورة"..
• تكرار الخطوات (أ) ، (ب) ، (ج) لعدد من المرات (100 مثلا) ، لتحصل كل مرة على جيل جديد من الأعداد.
ما هو العامل الضروري لنجاح البرنامج، وما الذي يمكن تغييره دون التأثير على كفاءته؟
- استخدام طرق أخرى غير (ب) لإنشاء جيل جديد من الأعداد الثنائية لها خواص قريبة من العناصر المنتقاة.. لن يؤثر على كفاءة البرنامج
- استخدام طرق أخرى غير (ج) للقيام بتغييرات طفيفة على بعض الأعداد الثنائية للبحث عن حلول مجاورة .. لن يؤثر على كفاءة البرنامج
استخدام مسميات بيولوجية لوصف (ب) و (ج) وتسمية الأعداد الثنائية بالكروموسوم .. لن يغير من الحقيقية التالية:
العامل الذي بدونه لن تنجح أية آلية تحسين في خطوة واحدة أو عدة خطوات.. هو تحديد وحفظ الغاية
المتمثلة في الـobjective function
...
ونفس ما يُقال على (الدالة الموضوعية) يسري أيضاً على (الدالة التي تربط الــgenome بالــphenome).
وقد تم التطرق الى هذا الامر في موضوع: (
متى يكون الانتخاب ممكنا؟)
حيث تمت المقارنة في
هذا الرابط بين برنامجين متطابقين تماما
الفرق الوحيد بينهما هو أن الأول يعصم (النظام اللغوي) من الطفرات .. وبدون ذلك لن يكون هناك إنتقاء.
في جميع الأمثلة السابقة.. دائما هناك "عمود" ثابت يمثل معايير ثابتة .. يوازي شريط الأحداث المتغير.
لماذا؟
لأنه لا يوجد تعريف مطلق لكلمة "الأصلح" .. بل لا بد أن يرتبط بدالة موضوعية
أما من يؤمن أن "الطبيعة لا تنتقي فقط الجيل الأصلح، بل تنتقي أيضاً الدالة الموضوعية الأصلح، والنظام اللغوي الأصلح" .. عليه أن يثبت أنه يفهم حقا ما يدعيه، ويأتي ببرنامج محاكاة ينطلق من (القوانين الفيزيائية) + (صفر توجيه) + (الصدفة) + (تسريع الأحداث).. تكون نتيجته ظهور نُظم لغوية وأجهزة
-حية أو غير حية- تنسخ وتحسّن نفسها بنفسها. لماذا لا يوجد هكذا برنامج في عصر يمتلك فيه الإسنان المعرفة والتقنية والحواسيب التي تمكنه من محاكاة سلوك أي جهاز وسلوك الذرة والمجرة وتسريع الأحداث ملايين السنين؟
لأنه لا يمكنك أن تحاكي أمرا ينطلق من تعريف فاسد "للأصلح".. لا يمكن التعامل معه رياضيا .
ولذلك تجد أكبر الملاحدة يستشهد بأمثلة فاشلة تحتوي على ما أسماه دوكينز نفسه بـdistant targeting
كمثل "فتح السارق للخزنة" و "البرنامج الذي يحاول فيه القرد كتابة جملة لشكسبير" ..
متى تحتاج (الدالة الموضوعية) الى جهاز؟
• القاسم المشترك بين (بحث البلدية عن أقصر المسارات لجمع النفايات) وبين (بحث النمل عن أقصر الطرق الموصلة للغذاء)
هو أنه في الحالتين الـ(objective function) محفوظة كشفرة أو كتصميم في جهازٍ (كالدماغ، أو الحاسوب) ..
فالنمل ليتحرى أقصر الطرق المؤدية للطعام، بحاجة الى
دماغ بدونه ستفقد (العلاقة التي تربط بين قصر الطريق وبين قوة الفيرومون) قيمتها،
ولن ينجح في تحديد أقصر الطرق.
في المقابل..
• الفرق بين (مثل النمل ومثل جمع النفايات) من جهة وبين ("تحري" صخرة لأقصر المسارات الممكنة عند سقوطها) من جهة أخرى
هو أن في مثل الصخرة الـ(objective function) = هي نفسها المعادلات الفيزيائية التي لا تحتاج الى جهاز لتدوينها..
كما أنه لا حاجة لتدوين entropy formula في جهاز .. حتى يسعى الكون الى حالة الأنتروبي التي تعتبر "غاية فيزيائية"..
وعلى ضوء ما سبق..
من يؤمن بظهور الحياة بالصدفة .. عليه أن يثبت ما هو دون ذلك.. وأن يأتي بخوارزمية تثبت إمكانية:
- ظهور آلية تحسين بيولوجية أو غير بيولوجية ..
تحتاج (دوالها الموضوعية) الى لغة تشفير وأجهزة..
- انطلاقا فقط من النظام الفيزيائي .. الذي
لا تحتاج (دواله الموضوعية) الى لغة تشفير وأجهزة..
دون أن يكون هناك توجيه مسبق !
Bookmarks