تحليل الأخطاء في التحليل العددي المقدمة
المقدمة
التّحليل العدديّ هو أحد فروع الرّياضيات الهامّة ، و هو الذي يربط بين الرياضيات التحليلية و الحاسب الآلي
، و يُستخدم عادةً في إيجاد حلول بعض المسائل و المشاكل التي لا يمكن حلّها بالرياضيات التحليلية
حيث تكون النتيجة التي نحصل عليها تقريبية .
و بما أنّنا نحصل على نتيجةٍ تقريبيّة أو حلّ تقريبي ،
فهذا يعني وجود نسبة خطأ علينا حسابه ، إلا أنّنا لو استطعنا إيجاد الخطأ لاستطعنا
إيجاد الحلّ الفعليّ ( الحقيقي ) الأمر الذي يعني أن إيجاد الخطأ غير ممكن
، فنسعى بالتالي إلى إيجاد تقريب للخطأ أو حجم الخطأ ( القيمة التي لا يتجاوزها الخطأ ) .
إذًا تتلخّص مهمّة التحليل العددي في إيجاد الحل التقريبي لمسألة ما و تقويم الخط
التقريب (Approximation)
إنّ معظم الأعداد التي نتعامل معها هي أعداد تقريبية ؛
لأنها غالبًا ما تمثّل أطوالًا و قياساتٍ أو قيمًا لمقاديرَ فيزيائيّة بنتيجة القياس ، و هي بحدّ ذاتها تقريبية .
كذلك فإن الكثير من الأعداد الحقيقية لا يمكن التعبير عنها بعدد منتهٍ من الأرقام ، فمثلًا العددpi
يساوي تقريبًا 3.14159 ، كذلك هو الحال بالنسبة لـلعدد eو sqrt 7 مثلًا ؛ فإنّنا لا نستطيع كتابتها كأعداد مضبوطة .
إننا ـ كما أوردنا في السابق ـ يتحتّم علينا أن نستخدم التقريب لحل المسائل التي لا تحلّ في الرياضيات التّحليلية ،
إلا أن هذا التقريب ستنتج عنه أخطاء ، أهمها التالي
التدوير(Rounding)
هو واحد من أهمّ مصادر الأخطاء و هو استعمال الأعداد المدوّرة بدلًا من المضبوطة .
قاعدة التدوير إذا كان لدينا العدد X 0.x_1x_2...x_ n-1 x_n، و أردنا الاكتفاء بـ (n-1) عدد على يمين الفاصلة ،
أي أن العدد المدوّر يكون كما يلي
X_0 0.X_1X_2.....X_ n-2 ar X_ n-1 فإن ar X_ n-1
يتم تحديده بالشكل الآتي
إذا كانX_n( أكبر من 5 أو يساوي )، فإنar X_ n-1 X_ n-1 +1 إذا كانX_n (أصغر من 5) ، فإنar X_ n-1 X_ n-1 .
على سبيل المثال العددان 0.045651 و 9033 بتقريبهما باستخدام التدوير لثلاث خانات عشرية ي
نتج العددان 0.0457 و 9033 على التوالي .
أما عن منشأ الخطأ العددي هنا فيكون بسبب الاكتفاء بعدد معين من المنازل العشريّة بعد الفاصلة في الحسابات .
القطع (chopping)
إن آلات الحاسبة الإلكترونية لا تدور الأعداد غالبًا وإنما تقطعها .
قاعدة القطع إذا كان لدينا العددX 0X_0X_2....X_(n-1)X_n وأردنا الاكتفاء بــ(1-n) عدد على يمين الفاصلة ،
فإن العدد المتقطع يكون كما يلي
X_0 0.X_1X_2....X(n-2)X_(n-1) على سبيل المثال العددان 0.045651 و 9033 بتقريبها
باستخدام القطع لثلاث خانات عشرية ينتج العددان 0.0456 و9030 على التوالي .
ملاحظة العدد 0 على يمين الفاصلة غير معتبر في عملية التقريب .
ومنشأ الخطأ العددي هنا هو يكون من الاكتفاء بعدد معين من حدود المتسلسلة اللانهائية .
الأخطاء (Error)
تلعب الأخطاء دورًا محوريًا في التحليل العددي وهي تبين مدى دقة وسرعة الطريقة المستخدمة لاحقًا.
وفيما يلي أنواع الأخطاء وتأثيرها
الخطأ المطلق (Absolute Error)
وهو الخطأ المطلق المرتكب في العدد المقربX_0 هو القيمة المطلقة للفرق بينه وبين القيمة الفعليةX
Delta Delta.x x_0-x x-x_0
غالبًا مايكون العدد الفعلي x غير معلوم ، عندئذ لا يمكن تعيين الخطأ المطلق ،
من أجل ذلك نلجأ إلى إيجاد حد أعلى لهذا الخطأ مثلepsilon_x ويحقق المتباينة
Delta.x x-x_0 levarepsilon_x .
وهكذا نحصل على
(x_0-epsilon_x) le x le(x_0+epsilon_x)
أي أن العدد الفعلي يقع بين العددينx_0-epsilon_x ,x_0+epsilon_x ,
حيث القيمةx_0+epsilon_x تمثل تقريب العدد x بالزيادة والقيمةx_0-epsilon_x تمثل تقريبه بالنقصان .
مثال
لتكن x 3.257 و لتكن القيمة التقريبية لـx هي 3.26 بتعيين الخطأ المطلق
Delta.x x_0-x
3.26-3.257 0.003
الخطأ النسبي(Relative)
الخطأ R النسبي المرتكب في عدد ما تقريبيx_0 هو نسبة الخطأ المطلق
لمرتكب بهذا العدد إلى القيمة المطلقة للعدد الفعلي x≠0) X) أي أن
R Deltaover x
وفي حالة عدم معرفة القيمة الفعلية X نلجأ إلى الحد الأعلى لهذا الخطأ أي أن
Deltaover x le S_x ، R le S_x
ومنه Deltale x S_x
لذلك يمكن اعتبار epsilon_x x delta_x
فيكون S_x epsilon_xover x
الحد الأعلى للخطأ النسبي المرتكب في العدد المقربx_0 وبما أن x cong x_0 فيمكن أن يكتب epsilon_x cong x_0 delta_x
مثال
لتكن x 3.257 و لتكن x_0 3.026 قيمة تقريبية لــ x فإن الخطأ النسبي
R Deltaover x 0.003over3.257 0.000921
ويستفاد من الخطأ النسبي في حساب الدقة المعنوية (significant digits) حيث العلاقة التالية
Deltaover x le 5 imes10^-t
حيث t أكبر عدد صحيح غير سالب نستطيع أن نوجد من خلاله أكبر فترة تقريب للخطأ الفعلي .
ملاحظات عامّة
من المهمّ أن يُعلم أنّ الخطأ النسبي لا يتأثر بالخطأ كثيرًا بينما الخطأ المطلق يتأثّر بشكل ملحوظ ؛
لذا نعتمد في الأغلب على الخطأ النسبي .
أيضًا كلّما كانت قيمة الخطأ الناتجة صغيرة جدًا كلما كان هذا أفضل ، و على العكس من ذلك
فكلما كبرت قيمة الخطأ احتجنا لأن نبحث عن إجراء رياضيّ يعمل على تصغير ( تحسين ) قيمة الخطأ الناتج .
أكبر خطأ نسبي في الدالة في عدة متغيرات (Max relative error in a function of several variables)
نفرض أن دالة f في متغيرn
x_1,x_2,...,x_n
أي أن
f f(x_1,x_2,...,x_n)
ونفرض أن الأخطاء المفردة في هذه المتغيرات هي على الترتيب
Delta.x_1,Delta.x_2,...Delta.x_n
فيكون الخطأ الكلي في الدالة مع اهمال حدود الرتبة الثانية وما فوقها هو
Delta.f dfover dx_1 Delta.x_1+ dfover dx_2 Delta.x_2+....+ dfover dx_n Delta.x_n
إذا Delta.f df over dx_1 Delta.x_1 + df over dx_2 Delta.x_2 +....+ df over dx_n Delta.x_n
وبالتالي يكون أقصى خطأ نسبي هو
Delta.f _maxover f 1over f df over dx_1 Delta.x_1 + df over dx_2 Delta.x_2 +....+ df over dx_n Delta.x_n
مثال
أكبير خطأ نسبي في كل من الدالتين التاليتيين بدلالة المتغيراتx_1,x_2,...,x_n
وأخطأهاDelta.x_1,Delta.x_2,...,Delta_n
f x_1,x_2,...,x_n
g x_1 ^ m_1 , x_2 ^ m_2 ,..., x_n ^ m_n
الحل
Delta.f _max 1. Delta.x_1 +1. Delta.x_2 +...+1. Delta.x_n
Delta.f over f _max Delta.x_1 + Delta.x_2 +...+ Delta.x_n over x_1+x_2+...+x_n
Delta.g over g _max m_1 Delta.x_1 over x_1 + m_2 Delta.x_2 over x_2 +...+ m_n Delta.x_n over x_n
يُلاحظ عمومًا أن الخطأ الفعلي في قيمة يكون أقل بكثير من الحد الأقصى للخطأ ؛
و ذلك لأن الأخطاء من الناحية العلمية تتجه لأن يلغي بعضها بعضًا (حيث بعضها موجب و البعض الآخر سالب)
فمثلًا إذا أضيف 200,000 عدد , و قرب كل عدد إلى 4 أرقام عشرية , فإن الحد الأقصى للخطأ يساوي
10 imes.5 imes20,000 أو يساوي 1 وهذه قيمة كبيرة , بينما الخطأ الكلي المتوقع يكون عادة في حدود 0,005.
نهاية مسدودة