الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

الخوارزميات الجينية

رائج
بدأه joo في 10 أغسطس 2008 · 60 رد · 64,253 مشاهدة · في الذكاء الاصطناعي وتطبيقاته
مشاركة: واتساب X فيسبوك تيليجرام
#26

موضوع حميل وانا درست زيه بس ما كان واضح لي، لدي استفسار شو مجال تطبيقات يعني انا ناوي اشتغل مشروع التخرج بهيك موضوع فأرجو المساعدة بفكرة تطبيق عليه....

#27

:lol: اخي كما قلت في timetable يوجد هنالك نوعين من القيود قيود صعبه وقيود سهله طبعا لمعلوماتك حل السهله اصعب من الصعبه ...

انا اسف اذا خربطتك طيب خليك معي :

القيود الصعبه يجب حلها ومعالجتها تحت اي ظرف وهذه تتم في اول مرحله من عملك وتسمى الحل الاولي فعلا سبيل المثال سوف اضع لك مجموعه من القيود الصعبه في جدول المواد الجامعيه والتي جمعتها من دراسات سابقه طبعا , وسبب اختلاف الدر اسات من حيث الشروط الصعبه يرجع لشروط الجامعات وقوانينها لذالك ضهر اختلافات بها :

Hard constraints

1. Each lecture is exactly one period long.

2. Students can only have one lecture at a time.

3. A class cannot have a lecture with more than one lecturer.

4. A class cannot have the same subject for more than two lecture

Periods a day.

5. A lecturer can only deliver one lecture at a time.

6. Lecturers’ unavailability is considered.

7. Each lecturer must deliver a specified number of lectures per week.

8. A classroom can only be used for one lecture at a time.

9. Specific room requirements are taken into account.

10. Allocated rooms must be large enough to accommodate the

Students.

11. Only one lecture for a particular course is allowed per day.

12. Lectures can be prescheduled to take place at a specific time.

13. Lessons can be blocked, if required.

14. Double lectures must include two consecutive periods.

طبعا اخي مثل ما ذكرت هذه القيود يجب حلها في اول مرحله اي ما يسمى Feasible solution او Initial solution وفي هذه الحاله يكون شيء يسمى الاكراهات او violation لا يوجد , قيمة Penalty تساوي صفر .

يعني بشكل مبسط يجب حل هذه القيود مئه بالمئه لكي لا يكون هنالك تكرارت في الجدول او تظاربات .

الان النقطه الثانيه وهي القيود السهله وكما قلت فحلها اصعب من القيود الصعبه لانه قد يكون هنالك الكثير الكثير منها لذالك لا نستطيع حلها مئه بالمئه انما نقوم بعملية تقليل العقوبات بها فكيف يحدث ذالك ؟ وما هي هذه القيود ؟ واين نعالجها ؟ وما هي طرق حلها ؟ وكيف نحسب مدى فلاحنا في حلها ؟ كل هذه الاسئله ساجاوب عنها لاحقا ولكن يجب عليك في بداية ان تفهم كيفية حل اول قسم كما ذكرت سابقا على كل اول حل اي مشكلة القيود الصعبه افضل واسهل طريقه لحلها طريقة اسمها ال graph coloring وهي نظريا بفرض كل ماده عباره عن vertices والعلاقات بينها اي القيود الصعبه تمثل edges فما عليك الا ان تضع كل مجموعه من الماد التي لا يوجد بها تضارب اي التي لا تدرس تحت نفس المدرس او في نفس القاعه او لنفس الطالب في لون خاص وهكذا , طبعا هذه معلومه عامه , ويجب عليك يا اخي ان تحاول ان تراجع بعض المراجع وانا ارفقت ملفات سابقه قد تفيدك لا احب ان اكررها مره اخرى طبعا وهذا الحكي نفس الشيء في جدول الامتحانات والفرق هو القيود فالقيود تختلف , وسلامتك اسف اذا لم تكن المعلومات مرتبه ولكن السرعه هي السبب انا اسف , وان شاء الله موفق وما رح نقصر معك , تحياتي .

انا اسف لم انتبه الا بعد ما وضعت المشاركه وهو انك تعمل في جدولة الامتحانات انا اسف ولكن مثل ما قلت هي نفس الشيء والفرق الوحيد هي فقط في القيود , اكرر اسفي مره اخرى ولكن اصبحت في بعض الاحيان افقد الذاكره :rolleyes: .

#28

والله مشكور يا اخ حسن 82 وإن شاء الله ساستفيد من كل هذه المعلومات ...ومتل ما ذكرت انت ان مسالة جدولة الامتحانات لا تختلف كثيرا عن جدولة المواد الا فى بعض القيود....

وربنا يوفقنا جميعا

#29

الاخوة الاعضاء فى منتدى الرياضيات والخوارزميات تحية طيبة لكم ....اود ان اسال عن كيفية تمثيل المشكلة عن طريق الخوارزميات الجينية بحيث تكون قابلة للبرمجة وتحقق الغرض المطلوب وهو فى الاخر ايجاد الحل الامثل من بين عدة حلول تم التوصل اليها...وتعتبر برمجة المسالة العمود الفقرى الذى ترتكز عليه فكرة الخوارزميات الجينية ...وهنا اود منكم من كان لديه فكرة فى تمثيل مسائل الجدولة بصورة عامة ..سالت بعض الزملاء فبعضهم يقول لى انه يتم تمثيل الجينات داخل كل كروموسوم فى شكل مصفوفات حيث ان التعامل مع المصفوفات يعتبر الاسهل من حيث انها هيكل بيانات يحتوى على غرف وكل غرفى تستطيع تسكين جين واحد ...فلا اعرف اذا كانت طريقة المصفوفات مناسبة ام لا ...فمن كان لديه الخبرة فى هذا المجال او سبق ان استخدمها فى حل مسالة جدولة معينة ان يساعدنى برايه ...وبالنسبة للاخ الحسن قال فى عدة مشاركات انه قام بعمل نظام جدولة باستخدام الخوارزميات الجينية فياليته ينقل لنا تجربته فى ذلك المجال والمساعدة فى تمثيل مشاكل الجدولة بصورة عامة... حيث ان تمثيل المشكلة الصحيح فى الحلول الابتدائية -الكروموسومات -يؤدى الى الحل الصحيح ..ولقد استفدت كثيرا من الشروحات السابقة فى مجال جدولة المواد ....وفى الختام ارجو ان لا اكون قد حصرت الاجابة على سؤالى فى شخص معين او عضو معين فاى شخص عمل فى هذا المجال فليساعدنى على تمثيل مشكلة جدولة الامتحانات ..مع العلم باننى قمت بوضع القيود السهلة والصعبة التى تمكننا من اجراء جدولة صحيحة ..وقيود الفرق المختلفة التى سوف تجلس للامتحانات ايضا المراقبين للقاعات وسعة القاعات وعدد الطلاب فى كل فرقة وعدد المواد التى سوف تجدول والفترات الزمنية التى يجرى فيها كل امتحان والايام التى سوف يمتحنون فيها الطلاب .... فمساعدتى فى تمثيل المشكلة ولو بافكار بسيطة تساعدنى على قطع شوط كبير فى موضوعى

وارجو ان لا اكون قد اطلت عليكم

وتحياتى لكل الاعضاء وبالتوفيق لكم جميعا

#30

السلام عليكم ورحمه الله وبركاته

اخى الكريم خالد2008 انا مثلك طالبه فى اخر مرحله فى البكلريوسوم ونتاولت فى مشروعى فكره الخوارزميات الجينيه كما انى لم اتمكن حتى الان من مشكله جداول الامتحانات لانى منذ فتره بسيطه بدات بها حيث كنت اتناول مشكله آخر ماعلينا المهم اخى عندما بدات فى مرحله الاكواد وجدت ان تمثيل الكروموسومات بالمصوصفه امر جيدا كما ذكر لك

البعض ولا اعلم ان كانت هي افضل طريقه لكنها سهله جدا بحيث تستخدم مصفوفه تاخذ عدد الكروموسومات وعدد الجينات التى تكون بداخل كل كروموسوم

ويكون طول هذه المصفوفه عدد الكورموسومات وعرضها عدد الجينات وهكذا سوف تعطيك مصفوفه تحتوي على الكروموسومات بداخل كل منها عدد جيناتها

لا اعرف ان كانت هناك طريقه افضل لكن هذه الطريقه جيده ايضا ودكتوري المشرف على مشروعي هو من اخبرنا بها

حاول ان تستخدم هذه الطريقه وان شاء الله تزبط معك

اتمنى ان اكون افدتك فى سؤالك عن تمثيل الكروموسومات برمجيا

تحياتي لجميع الاعضاء

#31

good student شكرا اخت

إن شاء الله سوف ابدا فى تمثيل المشكلة بحيث تسهل برمجتها فى شكل مصفوفات ...وربنا يوفقنا جميعا

وشكرا لكل الاعضاء وبانتظار اى اراء اخرى اضافية

تحياتى

#32

السلام عليكم ، جميعا

أنا بالفعل أقوم الآن ببرمجة جدول الإمتحانات النهائية لجامعة،

أرجو من الإخوة تزويدنا ببعض الكود ، لأني قرأت المقال كاملا، ولم أستطع فهم كيفية تمثيل الكروموزوم ، أو الجين.... الخ

إذا بالإمكان مساعدتي في هذا الموضوع وشكرا مسبقا

إن لم يكن عون من الله للفتى فأول ما يقضي عليه اجتهاده

#33

يا اخ خالد لقد تم التوضيح عن ما تريد , واذا اردت نصيحتي اذا كنت تعمل في السي ++ فاجعل كل كروموسوم يمثل متجه وليس مصفوفه ,لان المتجهات التعامل معها اسهل وافضل في عملية ايجاد احلول والتعامل معها اكثر سلاسة من المصفوفه العاديه .

طيب خليني اوضح الكوا هاي المعلومه والتي قد يكون البعض منكم قد تاه عنها , وهذا امر طبيعي لانه انتم ليس مطلوب منكم امر عميق جدا بالموضوع .

اولا : كلكم يعلم ان تمثيل جدول المواد او جدول الامتحانات يهتم بالدرجه الاولى بالفترات الزمنيه والتي تكون عباره عن اوقات الدوام في اليوم والاسبوع وهي كالاتي :

لنفرض ان هنالك في اليوم الواحد 10 ساعات دوام يعني من الساعه الثامنه مثلا ولغاية نهاية الدوام اي الساعه الخامسه ويوجد في الاسبوع خمسة ايام دوام فبالتالي يوجد لدينا 50 ساعة دوام ولنفرض ان كل محاظره تمثل ساعه واحده اذن اصبح لدينا كروموسوم يمثل جدول المواد اي كل جين يمثل فتره زمنيه او slot ومجموعة هذه الفترات تمثل الكرومومسوم اي الجدول الذي نريد بنائه .

ثانيا : يجب عليكم معالجة القيود الصعبه في الحل المبداي ثم حل القيود الصعبه في محاولة الحصول على الحل الامثل .

اما انك تقوم بجعل كل جين يمثل امتحان او ماده فهذا امر اخر, على فكره لقد قمت فعلا بعمل جدول الامتحانات بحيث جعلت كل جين يمثل امتحان ولكن كان لمدرسه عدد امتحاناتها قليل لكل فصل .

بالتوفيق

#34

ممكن سورس كود

أو توضيح أكثر وشكرا

إن لم يكن عون من الله للفتى فأول ما يقضي عليه اجتهاده

#35

ارجو اضافة شي هو ان الله عز وجل جعل لكل شئ سبب فاذا كانت الجينات من الاب و الام عندما يتحدوا تجعل الجنين(الطفل) يكون افضل حال منهم في بعض الاحيان ويتطور للافضل فهذا هو السبب الذي خلقة الله لكي يكون الجيل القادم افضل ولا يمكن ان نتتطور للافضل بمعجزة خفية لا يمكن للعلم اكتشافها هذا ليس من سنن الله الكونية لا ولكن الله جعل الاسباب وخلق الاسباب حتى تنتج عملية الافضلية في الاجيال الجديدة

قال تعالى عن قصة ذي القرنين {إنا مكنا له فى الأرض و أتيناه من كل شىء سببا فاتبع سببا } ومعنى هذا ان ذي القرنين بالرغم انه كان نبي الا انه كان ياخذ بالاسباب ولكن لا يتوكل عليها وانما يتوكل على الله وايضا النبي (ص)كان ياخذ بجميع الاسباب في الغزوات وامور حياته حتى يظن الصحابه انها(اي الاسباب) كل شئ

وهذا ما يدعني للان اقول للامتنا الاسلامية يجب ان ناخذ بالاسباب حتى نرتقي للافضل كما جعل الله الكائنات ترتقي 0

وبدون ديننا لن يعزنا الله ابدا الله جعل تطور واستحسان الامة الاسلامية في دينها فقط والدليل هو احوال الصحابة والذين صاروا على نهجهم نرى انهم بعد ان كانوا رعاة اغنام لا قيمة لهم بين الامم عندما تمسكوا بتوحيدهم فتح الله لهم البلاد وخضع لهم العباد الفرس والروم وفي زماننا هذا نقول مثل روسيا وامريكا وتجربة الصحابة خير دليل والامثلة كثيرة بعد الصحابة مثلا صلاح الدين الخ 000

شكرا للجميع

تم تعديل هذه المشاركة بواسطة sharks في 1 يوليو 2009 في 21:37

#36

لا اعتقد ان لهذا النوع من الخوارزميات فوائد كثيرة, هي في النهاية محاولات عشوائية "جرب حظك" في ترتيب بعض الارقام,

قد اكون مخطئا في ذلك,

و لكن على كل حال, اطلاق صفة "جينية" genetic عليها هي محاولة - من وجهة نظري - لادخال نظرية التطوير في البرمجة و علوم الحاسوب (لانهم يريدونها ان تتغلغل في شتى مناحي العلوم).

تم تعديل هذه المشاركة بواسطة hasan_aljudy في 15 يوليو 2009 في 22:38

−1
#37
hasan_aljudy كتب:
لا اعتقد ان لهذا النوع من الخوارزميات فوائد كثيرة, هي في النهاية محاولات عشوائية "جرب حظك" في ترتيب بعض الارقام,

قد اكون مخطئا في ذلك,

و لكن على كل حال, اطلاق صفة "جينية" genetic عليها هي محاولة - من وجهة نظري - لادخال نظرية التطوير في البرمجة و علوم الحاسوب (لانهم يريدونها ان تتغلغل في شتى مناحي العلوم).

لماذا ليس لها فوائد كبيرة؟! :huh:

خوارزميات مثل Neural Networks لها اهمية كبيرة جداً خصوصا عند عمل Optical Character Recognition او ما يعرف ب OCR.

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#38

فى اقل من دقيقة على جوجل , يمكنك الوقوف على مدى اهمية مثل هذه الخوارزميات.

أشهد أن لا إله إلا الله وأشهد أن محمدا رسول الله

bnr025.gif

مـــوقـــعـــى

#39
Wael Dalloul كتب:
لماذا ليس لها فوائد كبيرة؟! :huh:

خوارزميات مثل Neural Networks لها اهمية كبيرة جداً خصوصا عند عمل Optical Character Recognition او ما يعرف ب OCR.

انا ما جبت سيرة الـ neural networks

من ويكيبيديا:

A genetic algorithm (GA) is a search technique used in computing to find exact or approximate solutions to optimization and search problems.

على كل حال لا احب القفز و التعليق على موضوع لا اعرف الكثير عنه, بس حبيت اضيف رايي my 2 cents

#40
اقتباس
لا اعتقد ان لهذا النوع من الخوارزميات فوائد كثيرة, هي في النهاية محاولات عشوائية "جرب حظك" في ترتيب بعض الارقام,

قد اكون مخطئا في ذلك,

اهلا بك يا حسن يا جودي والله زمان

البحث العشوائي مفيد جدا في تخطي النهايات العظمى المحلية لان سيرك على نسق معين قد يؤدي بك احيانا الى التورط في الوقوع

في مازق "افضل الموجود " بينما تريد انت "الافضل على الاطلاق" وفي الاخير ال FITNESS FUNCTION

هي من يقرر مدى مناسبة الموجود لك

أضاعوني وأي فتى أضاعـوا * * * ليـوم كــريهـة وســـداد ثغــــر

وخـــــلونـي ومعتـرك المنايـا * * * وقد شـــرعوا أسنــتهم لنحـري

كأني لم أكــــــن فيهـم وسيطـا * * * ولم تك نســبتي في آل عمــرو

أجرر في الجـــوامع كـل يـوم * * * ألا لله مظــــلمتـي وهـصـــري

عسى الملك المجيب لمن دعاه * * * سينجيني فيعلم كيــف شكـري

فأجـــزي بالكرامـة أهـل ودي * * * وأجزي بالضـغينة أهل ضري

منتديات الرياضيات العربية

#41

اهلا اخي عادل ، وانا كمان اقل لك :

اقتباس
والله زمان

الخوارزميات الجينية حلت مشاكل كثير واعطت نتائج كويسه ( راجع مواقع المجلات العلميه) ، عيبها انها بطيئه، يعني اذا امكن تحل المسأله بطريقة افضل فلا داعي لاستخدام الخوارزميات الجينيه، لذلك هي غالبا ما تستخدم في حل مسائل الNP-Complete .

الحمد لله الذي هدانا لهذا وماكنا لنهتدي لولا ان هدانا الله

#42

احسنت اخي ابراهيم فعلا كما قلت , حيث الخوارزميات الجينيه تستخدم في حل النوع الصعب من المسائل والتي يحتاج الوصول اليها الى البحث في كم كبير من الاحداث لذالك استخدموها في حل المسائل المتعلقه في بناء جداول المواعيد لما يترتب عليها من عدد كبير من القيود الصعبه والسهله والتي تحتاج الى نسبه عاليه من الاحتمالات والتوقعات لذالك استخدمت الخوارزميه الجينيه , اما من جهة السرعه فهي كما تعلم تبحث في المسائل الصعبه وبالتالي تحتاج الا وقت كبير , يعني نستطيع ان نقول تعمل في المسائل التي لا نتوقع ماهي مخرجاتها .

تحياتي لك ولمشرفنا الاخ عادل .

#43

إستمتعت في القراءه الحقيقه

شكر لك الأخوه الذين شاركوا في هذا المقال فهو غني جداجدا

أعتقد يمكن إستخدام هذه الخوارزميه في نتائج الحرب مثلا ؟

CMS Sfhati , Website Generator


نظام إدارة المحتوى صفحتي ... جربه الآن 


 


small-logo.png

#44

الى الاخ joo

لدي سؤال.. كيف نستطيع أن نقدم الشكر لك وللأعضاء أمثالك,, بصراحة لا أعتقد أن ذلك ممكنا مع أفضال هذا المنتدى الرائع..

لك تحياتي بكل معناها والى أخواني المبتدئين,, أقول لكم لن نفهم ما نجهله من تعليم الاخرين لنا فحسب.. بل يجب أن نبحث وسنصل أن شاء الله.. أكرر تحياتي وشكري الكبير والى الامام..

#45

:سؤال :

هل ممكن ان تكون الخوارزمية الجينية هي الجز المتحكم في البرنامج control وكل جين فيها يمثل نتيجة كائن object ؟؟

مثلا اذا كان لدي 3 objects تم إنشائهم من 3 classes كل كلاس يؤدي وظيفة معينة بالاصل

ولكن البرنامج يقوم بتوليد حل من خلال المكاملة بين هذه 3 الكائنات

وبالتالي فان الكروموسوم في الخوارزمية الجينة

يمثل مصفوفة فيها 4 خانات .. 3 خانات الاولى تمثل نتيجة كل كائن على حدة والخانة الرابعة تعبر عن قيمة fitness للكروموسوم ..

هل هذا التمثيل للكروموسوم في هذه الحالة صحيح ؟؟

وشكرا :wub:

#46
Memoo10 كتب:

مثلا اذا كان لدي 3 objects تم إنشائهم من 3 classes كل كلاس يؤدي وظيفة معينة بالاصل

ولكن البرنامج يقوم بتوليد حل من خلال المكاملة بين هذه 3 الكائنات

وبالتالي فان الكروموسوم في الخوارزمية الجينة

يمثل مصفوفة فيها 4 خانات .. 3 خانات الاولى تمثل نتيجة كل كائن على حدة والخانة الرابعة تعبر عن قيمة fitness للكروموسوم ..

هل هذا التمثيل للكروموسوم في هذه الحالة صحيح ؟؟

اولا اخي الهدف من الخوارزميه الجينيه هو البحث عن حلول وتطويرها اثناء عمليات واجزاء الخوارزميه , بمعنى انه ولنفرض اننا نريد الوصول من خلال التصالب والتبديل بين مكونات هذه الكائنات للحصول على حلول جديده مختزله من الكائنات الاصليه , فهذا الهدف تنفذه الحوارزميه الجينيه , ولكن مبدأ ان نجعل اخر خانه او جين يوضع به الفتنس فهذا لا يفيد هنا او بالاحرى يتعارض مع عمل الخوارزميه الجينيه والذي يتمثل بما يلي :-

لنفرض انه لديك هذه الكروسومات والتي تمثل عدة حالات ونتائج حصلنا عليها من اكثر من كائن نقول مثلا :-

الكائن 1 لنفرض انه حصلنا على اكثر من كأئن منه يعني كائن 1.1 كائن 1.2

الكائن 2 = = = = = = = = = = = = = = == = = = =كائن2.1 كائن 2.2

الان لنقوم ببناء الكروموسومات كما اشرت لها في سؤالك :-

الكروموسوم 1:- كائن1.1 , كائن 2.1

الكروموسوم2 :- كائن1.2 , كائن 2.2

الان لنفرض اننا اضفنا الفتنس كخانه او كجين في نهاية كل كروموسوم يعني :-

كروموسوم1 :- كائن1.1 , كائن2.1 , الفتنس لاول كرمومسوم .

كرموسوم2 :- كائن 2.1 , كائن 2.2 , الفتنس لثاني كروموسوم .

الان انقوم بعمليات التصالب والطفرات بين هذه الكروموسومات مثلا فيصبح عندنا الحل كالتالي :-

كروموسوم 1 الابن :- كائن 1.1 , كائن 2.2 , الفتنس لاول كرومسوم .

كروموسوم 2 الابن :- كائن 2.1 , كائن 2.1 , الفتنس لثاني كروموسوم .

نلاحظ من الحل السابق ان الفتنس يساوي مقدار النتيجه او التكلفه التي اعتمدنا عليها لاول كروموسوم والثاي وبما اننا غيرنا القيم او احدثنا تصالب جديد وانشانا ابناء جديده من الاباء اذن سوف تتغير قيمة الفتنس بناءا على الجينات الجديده وهذا الامر يجبرنا على بناء فتنس جديد والغاء الفتنس السابق , لان التصالب والطفرات في الخوارزميه الجينيه يتم بها تبديل مواقع واماكن الجينيات في كل كروموسوم وبين كروموسين اثنين , ففي هذه الحاله اصبح تواجد الفتنس في الكروموسوم غير منطقي , وبالتالي قيمة الفتنس يجب ان نقوم باستدعاءها وانشاءها في كل كروموسوم جديد نقوم بانشاءه لان قيم الجينات سوف تختلف بناء على بناء وشكل وقيم الجينات الجديده التي قمنا بعملها من التوالد الجديد ( اذا يجب عليك ان تجعل هذا الكائن الجديد الذي يمثل قيمة الفتنس متغير اي بمعنى اننا سوف نغيره ونقوم بحسابه في كل مره نعمل بها توالد جديد ) ولكن لا تجعله كجين يدخل في الكروموسوم يحيث يتم عليه عمليات التوالد من تصالب وطفرات اثناء عمل الخوارزميه الجينيه لان هذا غير منطقي ..

بالتوفيق ان شاء الله , اتمنى ان تكون وضحت الفكره ..

#47

شكرا اخي حسان عالتوضيح

ولكنك لم ترد عن الجزء الاول من السؤال وهو ان تكون الخوارزمية الجينة هي الجزء المتحكم في البرنامج .. ليكون المخرج منها تووليد بدائل حلول مثلا 4 بدائل ؟

وقد قصدت في ان الخانة الرابعة تمثل fitness هو اثناء البرمجة حيث انه الكروموسوم يحتوي على 3 الجينات هي 3 خانات الاولى ومثلما قلت الخانة الرابعة هي لتخزين قيمة الفتنس وليست جين وسوف تتغير في كل مرة يتم فيها توليد جيل جديد ...

ولكن بقية نقطة وهي انه بالنسبة لمشكلتي لااستطيع استخدام عملية التصالب بين كروموسوميين لتوليد نسل جديد !

بل انه من الافضل الاستمرار في تحسين الكروموسوم الذي تم توليده في السابق ان لم يكن قد حقق شرط الاختيار .. حيث انه الاختيار فقط سيكون لافضل كروموسوم يحققق شروط معينة اي يتم اختيار النخبة فقط Elitism ليتم نسخه في كل جيل ..

.. والكروموسومات المتبقية التي لم تحقق شرط الافضل كروموسوم وكذلك لم تحقق شرط الطفرة سيتم تحسينها لانشاء جيل جديد ..

فهل الاستغناء عن عملية التصالب بمفهومها الاساسي وهو الربط بين 2 من الاباء لتوليد النسل يخل بشروط الخوارزمية الجينية .. ؟

ومرة اخرى شكرا جزيلا :blush:

#48

اولا يمكن ان تعتبرها الجزء المتحكم وقكرة الelit تكون باختيار افضل اثناء وجعلهم في التوالد الجديد بنفس المكان اذا انت الان اصبحت تدخل في فكره اللوكال , ولكن ياستخدام التصالب cross سوف تنشيء حلول جديده تختلف عن الاولى بمعنى انه ممكن اتكون الحلول الجديده سيئه ولكنها سوف تقود للحل الافضل فيما بعد فهذه الفكره من الخوارزميات التطوريه بشكل عام , اجمالا تستطيع ان تستغني عن الكروس اوفر وهذا امر عادي ولكن لن يؤدي الى حلول جديده بالذات اذا كانت المشاكل صعبة الحل ,,

اتمنى ان اكون فهمت مقصدك , اما الا eilt كعملية اختيار لا افضلها في انواع معينه من المشاكل لانها قد توصل الحل الى طرق مسدوده يصعب الخروج منها .

#49

مرحبا اخي احسان مرة اخرى .. شكرا على ردودك المفيدة .. وعندي بعض الاستفسارات ..

الخوارزمية الجينية اين الاصل فيها .. ان تصل الى الحل .. ام ان تصل الى الحل الامثل ؟ ام ممكن استخدام الخوارزمية الجينية في كلا الحالتين ؟

دائما اسمع انه الخوارزمية الجينية تنشئ اجيال بطريقة عشوائية .. فهل هذا شرط اساسي في الجينية ؟ ل

ممكن توضح لي أكثر فكرة اللوكل ؟ ..

وهل ممكن الدمج بين الخوارزمية الجينية خوارزمية hill climbing حيث انه تستخدم خوارزمية تسلق التل بدل عملية الكروس اوفر لانتاج كروموسوم جديد من كروموسوم سابق ؟

وهل في حالة انه فضاء البحث search spaceهو في الاصل غير محدود ممكن ان توضع له حدود بناء على اقل قيمة فتنس ممكنة واقصى قيمة فتنس ممكنة بحيث انه الحلول التي ستعمل الخوارزمية على توليد تقع ضمن حدود الفتنس ؟

وشكرا على الاهتمام ..

#50
Memoo10 كتب:

الخوارزمية الجينية اين الاصل فيها .. ان تصل الى الحل .. ام ان تصل الى الحل الامثل ؟ ام ممكن استخدام الخوارزمية الجينية في كلا الحالتين ؟

دائما اسمع انه الخوارزمية الجينية تنشئ اجيال بطريقة عشوائية .. فهل هذا شرط اساسي في الجينية ؟ ل

ممكن توضح لي أكثر فكرة اللوكل ؟ ..

وهل ممكن الدمج بين الخوارزمية الجينية خوارزمية hill climbing حيث انه تستخدم خوارزمية تسلق التل بدل عملية الكروس اوفر لانتاج كروموسوم جديد من كروموسوم سابق ؟

وهل في حالة انه فضاء البحث search spaceهو في الاصل غير محدود ممكن ان توضع له حدود بناء على اقل قيمة فتنس ممكنة واقصى قيمة فتنس ممكنة بحيث انه الحلول التي ستعمل الخوارزمية على توليد تقع ضمن حدود الفتنس ؟

وشكرا على الاهتمام ..

اولا الخوارزميه الجينيه هي احد طرق وخواررميات الحلول المثلى , لمعلوماتك قد لا تستطيع الوصل الى الحل الامثل ولكن تصل الى ما يسمى near optimal soultion اذا الفكره في الخوارزميه الجينيه هي المساعده في تحسين الحلول والوصل الى حلول مثلى بالمقارنه مع حلول اخرى لخوارزميات ثابته اخرى ..

اما انشاء االاباء population فهو بالشكل الطبيعي في الخوارزميه الجينيه يكون عشوائي , ولكن هذا لا يمنع ان تستخدم طرق اخرى لتحل محل الحل العشوائي مثلا كطريقة انشاء حلول بما يسمى graph coloring او nighbors للحل الاساسي , ولكن اغلب الابحاث والتطبيقات عملت بناء الحل المبدأي او الاباء pop بالطريقه العشوائيه , بالنسبه لي طبقت الطريقتين في السابق ومن خلال تجاربي وجدت ان العشوائيه افضل في انشاء الحلول الابتدائيه او pop لبعض التجارب التي قمت بها .

اللوكل اخي مبدأه هو ان الحل صوف يصل الى حد لا يتحسن بعده ويسمى هذا الحل بس اسواء الحلول الجيده والتي لا نستطيع الابتعاد عنها اذا بقينا بنفس المسار لذلك تقوم الخوارزميات االجينيه وغيرها من الخوارزميات مثل التابو او الsimulted وغيرها لايجاد اماكن جديده قد تؤدي الى الوصول الى الحل الامثل او الحل الاقرب للامثل ..

اما استخدام ال hill فتستطيع , نعم لا يوجد هنالك مشكله , وتعتبر ال hill من اسهل الخوارزميات وانا بصراحه اعتبرها خوارزميه عاديه وليست بتلك الكفائه المطلوبه , اما فكرة ان تجعلها مكان الكروسوفر فهي فقط ترجع لعمليه البحث عن حلول اخرى واتمنى ان تكون متأكد من معلومتك عن الكروس افر لانها تمثل تصالب بين جينات اثنان من الكروموسومات فكيف تريد تطبيق ال hill عليها ؟ كيف تريد استبدل الكروس بها ؟ الامر منطقي فقط ...... على كل تستطيع تطبيقها بعد الخوارزميه الجينيه اي بعد اخر وافضل حل تحصل عليه من الخوارزميه الجينيه , اما اذا ادخلت تقنيتها داخل عمل الخوارزميه الجينيه فهذا يسمى hyperd على كل تستطيع ان تعمل ما تريده اذا كانت النتائج جيده .

اما اخر نقطه لك فلم افهما جيدا , ولكن اجمالا لا تستطيع ان تحدد النتائج التي تريدها من الخوارزميه الجينيه بقيم معينه لكي لا تقع في فخ احل اللنهائي والذي قد لا يصل له البحث بها ..

بالتوفيق ..

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…