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

لدي مشكلة واريد توظيفها وتحليلها عن طريق ايجاد خوارزمية كحل

بدأه vector_ever في 17 ديسمبر 2010 · 8 رد · 1,720 مشاهدة · في الرياضيات والخوارزميات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

اخواني عندي مشروع كبير بالبرمجة ولدي شكلة تواجهني وانا صراحة اريد ايجاد خوارزمية لحل تلك المشكلة وانا اقوم ببرمجتها فيما بعد فقط اريد ايجاد خوارزمية تعطيني طريقة الحل بطريقة رياضية منطقية او عن طريق معادلات رياضية

المشكلة كالتالي انه لدي عدد معين من الآلات تقوم كل آلة بعدد معين من الوظائف وكل وظيفة تستغرق وقت معين

J1 J2 J3 J4

M1 4 3 6 2

M2 2 3 1 2

M3 2 5 6 3

M4 4 4 1 2

J:job and M: machine

نرى هنا مصفوفة مؤلفة من اربعة اعمدة واربعة صفوف كل صف هو عبارة عن آلة ستنفذ 4 وظائف

الصفوف تمثل الآلات والاعمدة تمثل الوظائف او المهام

مثلا السطر الثاني يحوي الآلة الثانية وفيها مثلا الوظيفة الاولى تستغرق 2 وحدة زمن (ربما ساعة او دقيقة) الوظيفة الثانية تستغرق 3 وحدة زمن الوظيفة الرابعة تستغرق 2 وحدة زمن طبعا كله بالسطر الثاني الذي يمثل الالة الثانية

طبعا هنا سيتم تنفيذ وظائف الآلة الاولى بالكامل ثم يتم تنفيذ وظائف الالة الثانية فالثالثة فالرابعة وهكذا بالتدريج

كما هو واضح بالشكل نرى كيف تم العملية طبعا مثلا لن يتم يتنفيذ الوظيفة الثانية من الالة الثانية قبل ان ننتهي من تنفيذ الوظيفة الثانية من الالة الاولى

post-152477-083599000 1292557153_thumb.j

الهدف من العملية هو ايجاد الوقت الكلي لتنفيذ اخر وظيفة باخر الة بشرط ان لا يسبق تنفيذ وظيفة معينة الوظيفة نفسها في الالة اللتي قبلها كما قلنا مثلا الوظيفة رقم 3 في الالة 2 لن يتم البدء بتنفيذها حتى يتم الانتهاء من تنفيذ الوظيفة رقم 3 في الالة 1

الهدف هو ايجاد كما قلت الوقت النهائي والاخير لتنفيذ الوظائف بكل الآلات

post-152477-021011900 1292558566_thumb.j

ساضرب الآن مثال اخر وعلى نفس المبدأ

J1 J2 J3 J4

M1 3 6 2 1

M2 4 3 6 2

M3 1 5 4 2

M4 2 2 1 5

post-152477-042899000 1292559562_thumb.j

فيا اخوان انا شرحت الموضوع انا الموضوع فكرت فيه جدا كثير واخد مني ايام وليالي وكل طرق الحل اللي وجدتها كان فيها ثغرات يعني كانت تصلح لحالات محددة فقط

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

واي استفسار او نقطة غامضة انا جاهز

المرفقات
1.jpg2.jpg3.jpg

تم تعديل هذه المشاركة بواسطة vector_ever في 18 ديسمبر 2010 في 03:34

إذا نظــرتَ نيـوب اللـّيـثِ بـارزةً         فـلا تظــنَنَ أَنَّ اللـّيـــثَ يبْتسـِـــمُ


 


 


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


 


كتاب تحليل وتصميم نظم المعلومات


#2

السلام ..

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

كنت أوكل هذه المهمة لـــ لبرنامجي Microsoft Project أو Primavera

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

تم تعديل هذه المشاركة بواسطة Devd في 17 ديسمبر 2010 في 12:38

1
#3

السلام عليكم ورحمة الله

أخى الفاضل بارك الله فيك

vector_ever كتب:

طبعا هنا سيتم تنفيذ وظائف الآلة الاولى بالكامل ثم يتم تنفيذ وظائف الالة الثانية فالثالثة فالرابعة وهكذا بالتدريج

كما هو واضح بالشكل نرى كيف تم العملية طبعا مثلا لن يتم يتنفيذ الوظيفة الثانية من الالة الثانية قبل ان ننتهي من تنفيذ الوظيفة الثانية من الالة الاولى

طبعا هذا الكلام متناقض ، فالسطر الأول يوحى بأن جميع عمليات الآلة الأولى ستنتهى قبل بدأ اى عملية للألة الثانية وهكذا.

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

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

المصفوفة الأولى فى الصورة ، تمثل مصفوفة القيم التى تقوم بإدخالها. والمصفوفة الثانية تقوم بحسب الوقت الكلى منذ بدأ العمل على الآلة الأولى وحتى الإنتهاء من تنفيذ العملية المناظرة.

فمثلا ، T23 تمثل الوقت الكلى المستغرق منذ بدأ عمل العملية الأولى للآلة الأولى ، وحتى الإنتهاء من العملية الثالثة للآلة الثانية.

مع ملاحظة ان max(a,b) تعود بالقيمة الأكبر من العددين a, b.

post-52814-056436100 1292662124_thumb.jp

هذا والله اعلى واعلم. بالله التوفيق ،،،

المرفقات
machines.jpg
4

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

bnr025.gif

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

#4
عماد حمدي احمد كتب:

السلام عليكم ورحمة الله

أخى الفاضل بارك الله فيك

طبعا هذا الكلام متناقض ، فالسطر الأول يوحى بأن جميع عمليات الآلة الأولى ستنتهى قبل بدأ اى عملية للألة الثانية وهكذا.

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

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

المصفوفة الأولى فى الصورة ، تمثل مصفوفة القيم التى تقوم بإدخالها. والمصفوفة الثانية تقوم بحسب الوقت الكلى منذ بدأ العمل على الآلة الأولى وحتى الإنتهاء من تنفيذ العملية المناظرة.

فمثلا ، T23 تمثل الوقت الكلى المستغرق منذ بدأ عمل العملية الأولى للآلة الأولى ، وحتى الإنتهاء من العملية الثالثة للآلة الثانية.

مع ملاحظة ان max(a,b) تعود بالقيمة الأكبر من العددين a, b.

post-52814-056436100 1292662124_thumb.jp

هذا والله اعلى واعلم. بالله التوفيق ،،،

أخي عماد والله اثلجت صدري بهذا الحل الرائع مع المثال والتوضيح الرائع على فكرة الحل صحيح 100% واشكرك جدا اخي وامنحك صوتي مع حبي وتقديري لمساعدتك

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

1

إذا نظــرتَ نيـوب اللـّيـثِ بـارزةً         فـلا تظــنَنَ أَنَّ اللـّيـــثَ يبْتسـِـــمُ


 


 


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


 


كتاب تحليل وتصميم نظم المعلومات


#5

جزاك الله خيرا اخى الفاضل.

لو احتجت اى مساعدة فى برمجة او تعميم الخوارزمية ، يمكننى مساعدتك ان شاء الله.

بالله التوفيق ،،،

1

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

bnr025.gif

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

#6

أخ عماد .. رائعة جدا" فكرتك انها كافية تماما" في حل معضلة الاخ ...

ولكن أريد أن أنوه بأن الحالة التي طرحها الاخ السائل .. تبقى في دائرة ما يسمى (بالحالة الخاصة) وتعميمها يحتاج الى جهد

كبير ..

تقبّل مروري..

تم تعديل هذه المشاركة بواسطة Devd في 23 ديسمبر 2010 في 18:45

#7

السلام عليكم ورحمة الله

مرحبا أخى الفاضل Devd

Devd كتب:

أخ عماد .. رائعة جدا" فكرتك انها كافية تماما" في حل معضلة الاخ ...

فى الحقيقة اخى الكريم هذه شهادة اعتز بها جدا ، فإن رأيك من الأراء التى احترمها واقدرها فى هذا المنتدى ، واتمنى ان اكون عند حسن ظنك بى دوما.

Devd كتب:

ولكن أريد أن أنوه بأن الحالة التي طرحها الاخ السائل .. تبقى في دائرة ما يسمى (بالحالة الخاصة) وتعميمها يحتاج الى جهد كبير ..

لم افهم مقصدك من الجملة السابقة. هل تقصد بالتعميم هنا ، التعميم على عدد اكبر من الآلات او الوظائف؟ ام تقصد التعميم لمشكلات اخرى من هذا النوع؟

فالتعميم الذى قصدته انا فى ردى على الأخ صاحب السؤال ، هو التعميم لأى عدد من الآلات او الوظائف. وهذه سهلة ان شاء الله ولا تحتاج لجهد او خلافه.

اما التعميم لحالات اخرى بشروط مختلفه عن المسألة الحاليه ، فطبعا سيكون كلامك مضبوط تماما. لأن كل مشكله لها ظروفها وشروطها الخاصة ،،،

هذا والله اعلى واعلم ،،،

1

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

bnr025.gif

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

#8

أستاذي الغالي عماد

حل أكثر من رائع !!!

ما شاء الله

1
#9
aohammed كتب:

أستاذي الغالي عماد

حل أكثر من رائع !!!

ما شاء الله

جزاك الله خيرا أخى الكريم ، وجعلنى عند حسن ظنك بي ،،،

1

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

bnr025.gif

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

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

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

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

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

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