هذا النقش ، لم تجد Google / Yandex المؤلف
هذا هو الجزء الثاني من المقالة "ما هو واضح للجميع".
من أجل فهم أفضل لخوارزمية Z الموضحة فيها ، سأضيف هنا مثالًا جيدًا تم تقديمه مسبقًا في المناقشة / التعليقات.
تخيل أن المهمة تتمثل في إنشاء منحنى لبعض الوظائف T (X) على فترة زمنية معينة من القيم (المسموح بها). من المستحسن القيام بذلك بأكبر قدر ممكن من التفاصيل ، لكنك لا تعرف مسبقًا متى "ستمسك بيدك". تريد إنشاء قيم X بحيث في أي وقت يتم فيه مقاطعة رسم المنحنى (إنشاء معلمات X على فاصل زمني وحساب T (X)) ، يعكس الرسم البياني الناتج هذه الوظيفة بأكبر قدر ممكن من الدقة. سيستغرق الأمر مزيدًا من الوقت - سيكون الرسم البياني أكثر دقة ، ولكن - دائمًا أقصى ما هو ممكن في الوقت الحالي لوظيفة عشوائية .
بالطبع ، بالنسبة لوظيفة معروفة ، يمكن لخوارزمية تقسيم الفاصل الزمني أن تأخذ في الاعتبار سلوكها ، لكننا هنا نتحدث عن نهج عام يعطي النتيجة المرجوة بأقل "خسائر". بالنسبة للحالة ثنائية الأبعاد ، يمكنك إعطاء مثال على عرض ارتياح / سطح معين وتريد التأكد من أنك قد عرضت الحد الأقصى من ميزاته قدر الإمكان.
يمكن أن تكون مهمة النمذجة وكائناتها (من الجزء الأول) في الحالة العامة مختلفة تمامًا: هناك نموذج نظري / مادي أو تقريب أم لا (الصندوق الأسود) - ستكون هناك فروق دقيقة في نماذج البناء في كل مكان. لكن الحاجة إلى إنشاء معلمات (بما في ذلك خوارزمية Z) جزء مشترك ومتكامل للجميع. هناك كائنات (على سبيل المثال ، مثل ) عندما يكون وقت الحصول على T طويلًا جدًا (أيام وأسابيع) ، ثم تتوقف خوارزمية اختيار خطوة جديدة وفقًا لمعايير أخرى ، وليس بسبب إكمال دورة الحساب الرئيسية في عملية موازية. ليس من المنطقي مواصلة تقليل الخطوة لتحسين البحث عن التنبؤ التالي T إذا كان التحسين المتوقع أسوأ بشكل واضح من خطأ النموذج و / أو أخطاء القياس T.
سأقدم توضيحًا آخر لتقسيم الفاصل الزمني المسموح به للحالة ثنائية الأبعاد لخوارزمية Z (K = 3 في الحقل 64 * 64):
النقاط المميزة في الشكل (9 قطع) هي نقاط البداية للحواف ووسط الفاصل الزمني ، وإذا لزم الأمر ، تعتبر خارج خوارزمية Z. يمكنك أن ترى أنه على طول الاتجاهات الأفقية والعمودية / "المسارات" التي تربط هذه النقاط التي تم إنشاؤها بواسطة الخوارزمية قيم Z مفقودة. من السهل حساب النقاط الإضافية هنا بشكل منفصل ، ولكن مع زيادة عدد النقاط على طول هذه الاتجاهات / "المسارات" ، سيتحسن تمثيل الوظيفة (تصبح "المسارات" أضيق) والحاجة إلى استكمال الخوارزمية نفسها (هناك حاجة إلى 7 خطوط ، منها 4 مشغلين في الحلقة الرئيسية في n ، انظر أدناه) أو لا أرى كيفية إنشاء عملية حسابية منفصلة. علاوة على ذلك ، في هذه الحالة ، يتدهور متوسط كفاءة الخوارزمية ، ولن يكون هناك تحسن كبير في تمثيل النموذج (بالفعل بالنسبة لـ n> 8 ، تكون الخطوة في المعلمة أقل من 1/1000 ، انظر الجدول أدناه).
الميزة الثانية لخوارزمية Z هي (للحالة ثنائية الأبعاد) عدم التناسق في ترتيب إضافة النقاط - فهي أكثر تكرارًا على المحور / المعلمة Y ، ويتم محاذاة الصورة في نهاية كل دورة بواسطة n.
الخوارزمية Z ، حالة أحادية البعد ، بلغة VBA:
Xmax =
Xmin =
Dx = (Xmax - Xmin) / 2
L = 2
Sx = 0
For n = 1 To K
Dx = Dx / 2
D = Dx
For j = 1 To L Step 2
X = Xmin + D
Cells(5, X) = "O" ' - / T(X)
X = Xmax - D
Cells(5, X) = "O"
D = D + Sx
Next j
Sx = Dx
L = L + L
Next n
خوارزمية Z ، حالة ثنائية الأبعاد ، لغة VBA:
Xmax = ' 65 - , GIF
Xmin = ' 1
Ymax = ' 65
Ymin = ' 1
Dx = (Xmax - Xmin) / 2
Dy = (Ymax - Ymin) / 2
L = 2
Sx = 0
Sy = 0
For n = 1 To K ' K = 3 GIF
Dx = Dx / 2
Dy = Dy / 2
Tx = Dx
For j = 1 To L Step 2
X1 = Xmin + Tx
X2 = Xmax - Tx
Ty = Dy
For i = 1 To L Step 2
Y = Ymin + Ty
Cells(Y, X1) = "O" ' - / T(Y,X)
Cells(Y, X2) = "O"
Y = Ymax - Ty
Cells(Y, X1) = "O"
Cells(Y, X2) = "O"
Ty = Ty + Sy
Next i
Tx = Tx + Sx
Next j
Sx = Dx
Sy = Dy
L = L + L
Next n
التكاليف الحسابية:
العمليات الرئيسية المستخدمة في الحسابات موضحة بين قوسين معقوفين (لا تؤخذ تكاليف تنظيم الدورات في الاعتبار).
وتجدر الإشارة هنا إلى أن عملية القسمة [] "الثقيلة" في هذه الحالة ليست مكلفة ، لأن القسمة الصحيحة على 2 هي إزاحة برقم واحد. تميل التكاليف النسبية لعملية القسمة والتعيين ([=] ، المصطلح الثاني) بسرعة إلى الصفر مع زيادة K.
إجمالي النقاط:
متوسط التكاليف:
للقيم الأولى لـ K ، سنجري العمليات الحسابية باستخدام هذه الصيغ ونملأ الجدول:
هنا "جزء الفاصل" هو الخطوة النسبية بين النقاط في نهاية الدورة بمقدار n.
يعرض السطر الأخير ("المتوسط") التكلفة النسبية لكل نقطة - نسبة الإضافات / عمليات الطرح. يميل الحد إلى 0.5625 أو 1 / 1.77777 لعملية الإضافة.
بالعودة إلى التأكيد الوارد في الجزء الأول من المقالة ، يتضح هنا أن "الخوارزمية المقترحة للمناقشة توضح تكاليف حسابية منخفضة للغاية ولا تنطوي على أي عيوب أو صعوبات" ، وفي ظروف الانقطاع المفاجئ للحسابات ، فإنها تتمتع أيضًا بمزايا. من الحكمة استخدامه في جميع التطبيقات المناسبة.
أطلب المساعدة في التوزيع والتنفيذ في كل من البرامج والأجهزة.