تحليل الأخطاء في التحليل العددي

المقدمة

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

التقريب (Approximation)

إنّ معظم الأعداد التي نتعامل معها هي أعداد تقريبية؛ لأنها غالبًا ما تمثّل أطوالًا وقياساتٍ أو قيمًا لمقاديرَ فيزيائيّة بنتيجة القياس، وهي بحدّ ذاتها تقريبية. كذلك فإن الكثير من الأعداد الحقيقية لا يمكن التعبير عنها بعدد منتهٍ من الأرقام، فمثلًا العددπ يساوي «تقريبًا» 3.14159، كذلك هو الحال بالنسبة لـلعدد eو 7 مثلًا؛ فإنّنا لا نستطيع كتابتها كأعداد مضبوطة. إننا ـ كما أوردنا في السابق ـ يتحتّم علينا أن نستخدم التقريب لحل المسائل التي لا تحلّ في الرياضيات التّحليلية، إلا أن هذا التقريب ستنتج عنه أخطاء، أهمها التالي:

التدوير (Rounding)

هو واحد من أهمّ مصادر الأخطاء وهو استعمال الأعداد المدوّرة بدلًا من المضبوطة. قاعدة التدوير: إذا كان لدينا العدد X=0.x1x2...xn1xn، وأردنا الاكتفاء بـ (n-1) عدد على يمين الفاصلة، أي أن العدد المدوّر يكون كما يلي:

X0=0.X1X2.....Xn2X¯n1 فإن X¯n1

يتم تحديده بالشكل الآتي: إذا كانXn(أكبر من 5 أو يساوي)، فإنX¯n1=Xn1+1 إذا كانXn (أصغر من 5)، فإنXn1¯=Xn1. على سبيل المثال العددان 0.045651 و 9033 بتقريبهما باستخدام التدوير لثلاث خانات عشرية ينتج العددان 0.0457 و 9033 على التوالي.

أما عن منشأ الخطأ العددي هنا فيكون بسبب الاكتفاء بعدد معين من المنازل العشريّة بعد الفاصلة في الحسابات.

القطع (chopping)

إن آلات الحاسبة الإلكترونية لا تدور الأعداد غالبًا وإنما تقطعها. قاعدة القطع: إذا كان لدينا العددX=0X0X2....X(n1)Xn وأردنا الاكتفاء بــ (1-n) عدد على يمين الفاصلة، فإن العدد المتقطع يكون كما يلي: X0=0.X1X2....X(n2)X(n1) على سبيل المثال العددان 0.045651 و 9033 بتقريبها باستخدام القطع لثلاث خانات عشرية ينتج العددان 0.0456 و9030 على التوالي.

    • ملاحظة: العدد 0 على يمين الفاصلة غير معتبر في عملية التقريب.

ومنشأ الخطأ العددي هنا هو يكون من الاكتفاء بعدد معين من حدود المتسلسلة اللانهائية.

الأخطاء (Error)

تلعب الأخطاء دورًا محوريًا في التحليل العددي وهي تبين مدى دقة وسرعة الطريقة المستخدمة لاحقًا. وفيما يلي أنواع الأخطاء وتأثيرها:

الخطأ المطلق (Absolute Error)

وهو الخطأ المطلق المرتكب في العدد المقربX0 هو القيمة المطلقة للفرق بينه وبين القيمة الفعلية X Δ=|Δ.x|=|x0x|=|xx0| غالبًا مايكون العدد الفعلي x غير معلوم، عندئذ لا يمكن تعيين الخطأ المطلق، من أجل ذلك نلجأ إلى إيجاد حد أعلى لهذا الخطأ مثلϵx ويحقق المتباينة: |Δ.x|=|xx0|εx. وهكذا نحصل على: (x0ϵx)x(x0+ϵx) أي أن العدد الفعلي يقع بين العددينx0ϵx ,x0+ϵx , حيث القيمةx0+ϵx تمثل تقريب العدد x بالزيادة والقيمةx0ϵx تمثل تقريبه بالنقصان.

مثال

لتكن x=3.257 ولتكن القيمة التقريبية لـx هي 3.26 بتعيين الخطأ المطلق:

|Δ.x|=|x0x|

|3.263.257|=0.003

الخطأ النسبي (Relative)

الخطأ R النسبي المرتكب في عدد ما تقريبيx0 هو نسبة الخطأ المطلق لمرتكب بهذا العدد إلى القيمة المطلقة للعدد الفعلي x≠0) X) أي أن: R=Δ|x| وفي حالة عدم معرفة القيمة الفعلية X نلجأ إلى الحد الأعلى لهذا الخطأ أي أن:

Δ|x|Sx ،RSx 

ومنه: Δ|x|Sx لذلك يمكن اعتبار: ϵx=|x|δx فيكون: Sx=ϵx|x| الحد الأعلى للخطأ النسبي المرتكب في العدد المقربx0 وبما أن xx0 فيمكن أن يكتبϵx|x0|δx

مثال

لتكن x=3.257 ولتكن x0=3.026 قيمة تقريبية لــ x فإن الخطأ النسبي:

R=Δ|x|=0.0033.257=0.000921 

ويستفاد من الخطأ النسبي في حساب الدقة المعنوية (significant digits) حيث العلاقة التالية: Δ|x|5×10t حيث t أكبر عدد صحيح غير سالب نستطيع أن نوجد من خلاله أكبر فترة تقريب للخطأ الفعلي. ملاحظات عامّة:

  • من المهمّ أن يُعلم أنّ الخطأ النسبي لا يتأثر بالخطأ كثيرًا بينما الخطأ المطلق يتأثّر بشكل ملحوظ؛ لذا نعتمد في الأغلب على الخطأ النسبي.
  • أيضًا كلّما كانت قيمة الخطأ الناتجة صغيرة جدًا كلما كان هذا أفضل، وعلى العكس من ذلك فكلما كبرت قيمة الخطأ احتجنا لأن نبحث عن إجراء رياضيّ يعمل على تصغير (تحسين) قيمة الخطأ الناتج.

أكبر خطأ نسبي في الدالة في عدة متغيرات (Max relative error in a function of several variables)

نفرض أن دالة f في متغيرn:

x1,x2,...,xn

أي أن: f=f(x1,x2,...,xn) ونفرض أن الأخطاء المفردة في هذه المتغيرات هي على الترتيب: Δ.x1,Δ.x2,...Δ.xn فيكون الخطأ الكلي في الدالة مع اهمال حدود الرتبة الثانية وما فوقها هو: Δ.f=dfdx1Δ.x1+dfdx2Δ.x2+....+dfdxnΔ.xn

إذا |Δ.f|=|df||dx1||Δ.x1|+|df||dx2||Δ.x2|+....+|df||dxn||Δ.xn|

وبالتالي يكون أقصى خطأ نسبي هو: |Δ.f|max|f|=1|f||df||dx1||Δ.x1|+|df||dx2||Δ.x2|+....+|df||dxn||Δ.xn|

مثال

أكبير خطأ نسبي في كل من الدالتين التاليتيين بدلالة المتغيراتx1,x2,...,xn وأخطأهاΔ.x1,Δ.x2,...,Δn

f=x1,x2,...,xn

g=x1m1,x2m2,...,xnmn

الحل:

|Δ.f|max=1.|Δ.x1|+1.|Δ.x2|+...+1.|Δ.xn|

|Δ.f||f|max=|Δ.x1|+|Δ.x2|+...+|Δ.xn||x1+x2+...+xn|

|Δ.g||g|max=|m1||Δ.x1||x1|+|m2||Δ.x2||x2|+...+|mn||Δ.xn||xn|

يُلاحظ عمومًا أن الخطأ الفعلي في قيمة يكون أقل بكثير من الحد الأقصى للخطأ؛ وذلك لأن الأخطاء من الناحية العلمية تتجه لأن يلغي بعضها بعضًا (حيث بعضها موجب والبعض الآخر سالب) فمثلًا إذا أضيف 200,000 عدد، وقرب كل عدد إلى 4 أرقام عشرية، فإن الحد الأقصى للخطأ يساوي 10×.5×20,000 أو يساوي 1 وهذه قيمة كبيرة، بينما الخطأ الكلي المتوقع يكون عادة في حدود 0,005.

مراجع

[1] [2] [3]

  1. ^ الطرق العددية و التحليل العددي / أ.د.أبو بكر أحمد السيد / مكتبة الفلاح
  2. ^ التحليل العددي /أ.د محمود أبو العز / مكتبة الرشد
  3. ^ التحليل العددي وطرقة حسابه / د.محمد منصور صبح / مكتبةالرشد