سؤال

أنا أستخدم Povray لتقديم الصور على مجموعة. كل عقدة عامل ستقدم صورة جزئية. موضوع هذا السؤال هو العثور على خوارزمية تقسيم مناسبة.

Povray تقديم بكسل بواسطة بكسل. لكن كل بكسل لديه تعقيد فريد ولذا فإنه يستغرق وقتًا مختلفًا لتقديمه.

قمت بتقسيم الصورة في العديد من المناطق. على سبيل المثال ، مناطق 2x2 بكسل. وجعلت بعض هذه المناطق. يؤثر تعقيد تلك المناطق على تعقيد المناطق المحيطة ، وبالتالي فإن المجموعة الكاملة من المناطق مليئة بقيمة التعقيد.

أقسم صورة في المناطق. تحدد كل منطقة:

  • عمود بدء ، عمود إنهاء.
  • بدء الصف ، نهاية الصف.
  • تعقيد تلك المنطقة.

الهدف من ذلك هو إنشاء قائمة بالوظائف التي تغطي جميع المناطق عند دمجها. يجب أن يكون للوظائف تعقيدات مماثلة.

تحدد كل وظيفة:

  • عمود بدء ، عمود إنهاء.
  • بدء الصف ، نهاية الصف.

يناقض:

  • منطقة ماكرو صالحة لوظيفة في شكل مستطيل أو مربع.
  • عدد الوظائف هو N.
هل كانت مفيدة؟

المحلول

شكرا لتحديث سؤالك.

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

نصائح أخرى

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

https://gist.github.com/gists/729677

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top