3.3 المعادلات الجبرية الخطية (Linear Algebraic Equations) 

    اعتبر مجموعة المعادلات الجبرية الخطية (linear algebraic equations)

    $$ \mathbf {A} \mathbf {x} = \mathbf {y} \tag {3.9} $$

    حيث إن $ \mathbf{A} $ و $ \mathbf{y} $ هما على الترتيب مصفوفتان حقيقيتان (real matrices) بأبعاد $ m \times n $ و $ m \times 1 $ ، والمتجه $ \mathbf{x} $ هو متجه بأبعاد $ n \times 1 $ . المصفوفتان $ \mathbf{A} $ و $ \mathbf{y} $ معطاتان، و $ \mathbf{x} $ هو المجهول المطلوب حله. لذا تتكون المجموعة فعليًا من $ m $ معادلات و $ n $ مجاهيل. يمكن أن يكون عدد المعادلات أكبر من عدد المجاهيل أو مساويًا له أو أصغر منه.

    نناقش شرط الوجود (existence condition) والصيغة العامة (general form) لحلول (3.9). يُعرَّف فضاء المدى (range space) للمصفوفة $ \mathbf{A} $ بأنه جميع التركيبات الخطية (linear combinations) الممكنة لجميع أعمدة $ \mathbf{A} $ . تُعرَّف رتبة (rank) $ \mathbf{A} $ بأنها بُعد فضاء المدى أو، بشكل مكافئ، عدد الأعمدة المستقلة خطيًا (linearly independent) في $ \mathbf{A} $ . يُسمّى المتجه $ \mathbf{x} $ متجهًا صفريًا بالنسبة إلى $ \mathbf{A} $ (null vector) إذا كان $ \mathbf{Ax} = \mathbf{0} $ . ويتكون فضاء العدم (null space) للمصفوفة $ \mathbf{A} $ من جميع متجهاتها الصفرية. وتُعرَّف العدمية (nullity) بأنها أكبر عدد من المتجهات الصفرية المستقلة خطيًا لـ $ \mathbf{A} $ ، وترتبط بالرتبة وفقًا لـ

    $$ \text{Nullity} (\mathbf {A}) = \text{No. of columns of } \mathbf {A} - \operatorname {r a n k} (\mathbf {A}) \tag {3.10} $$

    مثال 3.3.1 اعتبر المصفوفة

    $$ \mathbf {A} = \left[ \begin{array}{l l l l} 0 & 1 & 1 & 2 \\ 1 & 2 & 3 & 4 \\ 2 & 0 & 2 & 0 \end{array} \right] =: [ \mathbf {a} _ {1} \mathbf {a} _ {2} \mathbf {a} _ {3} \mathbf {a} _ {4} ] \tag {3.11} $$

    حيث تشير $ \mathbf{a}_i $ إلى العمود $ i $ (column) من $ \mathbf{A} $ . من الواضح أن $ \mathbf{a}_1 $ و $ \mathbf{a}_2 $ مستقلان خطيًا (linearly independent). العمود الثالث هو مجموع العمودين الأولين أو $ \mathbf{a}_1 + \mathbf{a}_2 - \mathbf{a}_3 = \mathbf{0} $ . والعمود الأخير يساوي ضعفي العمود الثاني، أي $ 2\mathbf{a}_2 - \mathbf{a}_4 = \mathbf{0} $ . لذا فإن $ \mathbf{A} $ لها عمودان مستقلان خطيًا ولها رتبة (rank) تساوي 2. يمكن استخدام المجموعة $ \{\mathbf{a}_1, \mathbf{a}_2\} $ كأساس (basis) لفضاء المدى (range space) للمصفوفة $ \mathbf{A} $ .

    تشير المعادلة (3.10) إلى أن العدمية (nullity) لـ $ \mathbf{A} $ هي 2. ويمكن التحقق بسهولة من أن المتجهين

    $$ \mathbf {n} _ {1} = \left[ \begin{array}{r} 1 \\ 1 \\ - 1 \\ 0 \end{array} \right], \quad \mathbf {n} _ {2} = \left[ \begin{array}{r} 0 \\ 2 \\ 0 \\ - 1 \end{array} \right] \tag {3.12} $$

    يحققان $ \mathbf{A}\mathbf{n}_i = \mathbf{0} $ . وبما أن المتجهين مستقلان خطيًا، فإنهما يشكّلان أساسًا (basis) لفضاء العدم (null space).

    تُعرَّف رتبة (rank) $ \mathbf{A} $ بأنها عدد الأعمدة المستقلة خطيًا. وهي تساوي أيضًا عدد الصفوف المستقلة خطيًا. وبسبب هذه الحقيقة، إذا كانت $ \mathbf{A} $ بأبعاد $ m \times n $ ، فإن

    $$ \operatorname {r a n k} (\mathbf {A}) \leq \min (m, n) $$

    في MATLAB، يمكن الحصول على فضاء المدى (range space) وفضاء العدم (null space) والرتبة (rank) باستدعاء الدوال orth و null و rank. على سبيل المثال، للمصفوفة في (3.11)، نكتب

    $$ a = \left[ 0 1 1 2; 1 2 3 4; 2 0 2 0 \right]; $$
    $$ \operatorname {r a n k} (a) $$

    التي تعطي 2. لاحظ أن MATLAB يحسب الرتب باستخدام تحليل القيم المفردة (singular value decomposition, svd) الذي سيُقدَّم لاحقًا. خوارزمية svd تعطي أيضًا فضاءي المدى والعدم للمصفوفة. دالة MATLAB المسماة R=orth(a) تعطي

    $$ \text{Ans} \quad R = $$
    $$ - 0. 3 7 8 2 \quad 0. 3 0 8 4 $$
    $$ - 0. 8 8 7 7 \quad 0. 1 4 6 8 \tag {3.13} $$
    $$ - 0. 2 6 2 7 \quad - 0. 9 3 7 9 $$

    العمودان في $ \mathbb{R} $ يشكّلان مجموعة أساس متعامد معياري (orthonormal basis) لفضاء المدى. للتحقق من التعامد المعياري (orthonormality)، نكتب $ \mathbb{R}^{\prime} * \mathbb{R} $ فنحصل على مصفوفة الوحدة (unity matrix) من الرتبة 2. العمودان في $ \mathbb{R} $ لم يُحصلا من الأساس $ \{\mathbf{a}_1, \mathbf{a}_2\} $ في (3.11) باستخدام إجراء Schmidt للتعامد المعياري (Schmidt orthonormalization procedure)؛ بل هما ناتج ثانوي من svd. ومع ذلك، ينبغي أن تمتد المجموعتان نفس فضاء المدى. يمكن التحقق من ذلك بكتابة

    $$ \operatorname {r a n k} ([ \mathrm {a 1} \quad \mathrm {a 2} \quad \mathrm {R} ]) $$

    والتي تعطي 2. وهذا يؤكد أن $ \{\mathbf{a}_1, \mathbf{a}_2\} $ تمتد نفس الفضاء مثل المتجهين في $ \mathbb{R} $ . نذكر أن رتبة المصفوفة شديدة الحساسية لأخطاء التقريب (roundoff errors) والبيانات غير الدقيقة. على سبيل المثال، إذا استخدمنا عرض الخمس خانات (5-digit display) لـ $ \mathbb{R} $ في (3.13)، فإن رتبة $ [\mathbf{a}1 \quad \mathbf{a}2 \quad \mathbb{R}] $ هي 3. الرتبة هي 2 إذا استخدمنا $ \mathbb{R} $ المخزنة في MATLAB التي تستخدم 16 خانة بالإضافة إلى الأسّ.

    يمكن الحصول على فضاء العدم (null space) لـ(3.11) بكتابة null(a)، والتي تعطي

    Ans N=

    $$ \begin{array}{l} - 0. 6 1 9 4 \quad - 0. 2 6 6 2 \\ 0. 2 2 9 3 \quad - 0. 8 7 5 0 \\ - 0. 6 1 9 4 \quad 0. 2 6 6 2 \\ - 0. 4 2 4 9 \quad 0. 3 0 4 4 \\ \end{array} $$

    العمودان يشكّلان مجموعة أساس متعامد معياري (orthonormal basis) لفضاء العدم الممتد بالمتجهين $ \{\mathbf{n}_1, \mathbf{n}_2\} $ في (3.12). تنطبق كل المناقشات الخاصة بفضاء المدى هنا. أي أن rank ([n1 n2 N]) يعطي 3 إذا استخدمنا عرض الخمس خانات في (3.14). الرتبة هي 2 إذا استخدمنا N المخزنة في MATLAB.

    بهذه الخلفية، نحن مستعدون لمناقشة حلول (3.9). نستخدم $ \rho $ للدلالة على رتبة (rank) المصفوفة.

    نظرية 3.1 

    1. إذا كانت لدينا مصفوفة $ m \times n $ هي $ \mathbf{A} $ ومتجه $ m \times 1 $ هو $ \mathbf{y} $ ، فإن الحل $ \mathbf{x} $ بأبعاد $ n \times 1 $ يوجد في $ \mathbf{Ax} = \mathbf{y} $ إذا وفقط إذا كان $ \mathbf{y} $ يقع في فضاء المدى (range space) لـ $ \mathbf{A} $ أو، بشكل مكافئ،
    $$ \rho (\mathbf {A}) = \rho ([ \mathbf {A} \mathbf {y} ]) $$

    حيث إن $ [\mathbf{A}\mathbf{y}] $ مصفوفة بأبعاد $ m\times (n + 1) $ مع إلحاق $ \mathbf{y} $ إلى $ \mathbf{A} $ كعمود إضافي.

    1. إذا كانت $ \mathbf{A} $ معطاة، فإن حلًا $ \mathbf{x} $ يوجد في $ \mathbf{Ax} = \mathbf{y} $ لكل $ \mathbf{y} $ إذا وفقط إذا كان لـ $ \mathbf{A} $ رتبة $ m $ (الرتبة الكاملة للصفوف (full row rank)).

    تتبع العبارة الأولى مباشرة من تعريف فضاء المدى. إذا كانت $ \mathbf{A} $ ذات رتبة كاملة للصفوف، فإن شرط الرتبة في (1) يتحقق دائمًا لكل $ \mathbf{y} $ . وهذا يثبت العبارة الثانية.

    نظرية 3.2 (بارامتَرة جميع الحلول (Parameterization of all solutions)) 

    لتكن $ \mathbf{A} $ مصفوفة بأبعاد $ m \times n $ و $ \mathbf{y} $ متجهًا بأبعاد $ m \times 1 $ . لتكن $ \mathbf{x}_p $ حلًا للمعادلة $ \mathbf{A}\mathbf{x} = \mathbf{y} $ ، ولتكن $ k := n - \rho(\mathbf{A}) $ هي العدمية (nullity) للمصفوفة $ \mathbf{A} $ . إذا كانت $ \mathbf{A} $ ذات رتبة $ n $ (رتبة أعمدة كاملة (full column rank)) أو كان $ k = 0 $ ، فإن الحل $ \mathbf{x}_p $ يكون وحيدًا. إذا كان $ k > 0 $ ، فإن المتجه، لكل قيم حقيقية $ \alpha_i, i = 1, 2, \ldots, k $ ،

    $$ \mathbf {x} = \mathbf {x} _ {p} + \alpha_ {1} \mathbf {n} _ {1} + \dots + \alpha_ {k} \mathbf {n} _ {k} \tag {3.15} $$

    يعد حلًا لـ $ \mathbf{Ax} = \mathbf{y} $ ، حيث إن $ \{\mathbf{n}_1, \ldots, \mathbf{n}_k\} $ أساس (basis) لفضاء العدم (null space) لـ $ \mathbf{A} $ .

    بإحلال (3.15) في $ \mathbf{Ax} = \mathbf{y} $ نحصل على

    $$ \mathbf {A} \mathbf {x} _ {p} + \sum_ {i = 1} ^ {k} \alpha_ {i} \mathbf {A} \mathbf {n} _ {i} = \mathbf {A} \mathbf {x} _ {p} + \mathbf {0} = \mathbf {y} $$

    وبالتالي، لكل $ \alpha_{i} $ ، فإن (3.15) حل. لتكن $ \bar{\mathbf{x}} $ حلًا أو $ \mathbf{A}\bar{\mathbf{x}} = \mathbf{y} $ . بطرح هذه من $ \mathbf{A}\mathbf{x}_p = \mathbf{y} $ نحصل على

    $$ \mathbf {A} (\bar {\mathbf {x}} - \mathbf {x} _ {p}) = \mathbf {0} $$

    وهذا يعني أن $ \bar{\mathbf{x}} -\mathbf{x}_p $ ينتمي إلى فضاء العدم. لذا يمكن التعبير عن $ \bar{\mathbf{x}} $ كما في (3.15). وهذا يثبت نظرية 3.2.

    مثال 3.3.2 اعتبر المعادلة

    $$ \mathbf {A} \mathbf {x} = \left[ \begin{array}{l l l l} 0 & 1 & 1 & 2 \\ 1 & 2 & 3 & 4 \\ 2 & 0 & 2 & 0 \end{array} \right] \mathbf {x} =: [ \mathbf {a} _ {1} \mathbf {a} _ {2} \mathbf {a} _ {3} \mathbf {a} _ {4} ] \mathbf {x} = \left[ \begin{array}{r} - 4 \\ - 8 \\ 0 \end{array} \right] = \mathbf {y} \tag {3.16} $$

    هذا المتجه $ \mathbf{y} $ يقع بوضوح في فضاء المدى (range space) لـ $ \mathbf{A} $ و $ \mathbf{x}_p = [0 - 400]^{\prime} $ هو حل. وقد بُيّن أساس (basis) لفضاء العدم لـ $ \mathbf{A} $ في (3.12). لذا يمكن التعبير عن الحل العام لـ(3.16) على الصورة

    $$ \mathbf {x} = \mathbf {x} _ {p} + \alpha_ {1} \mathbf {n} _ {1} + \alpha_ {2} \mathbf {n} _ {2} = \left[ \begin{array}{c} 0 \\ - 4 \\ 0 \\ 0 \end{array} \right] + \alpha_ {1} \left[ \begin{array}{c} 1 \\ 1 \\ - 1 \\ 0 \end{array} \right] + \alpha_ {2} \left[ \begin{array}{c} 0 \\ 2 \\ 0 \\ - 1 \end{array} \right] \tag {3.17} $$

    لأي قيم حقيقية $ \alpha_{1} $ و $ \alpha_{2} $ .

    في التطبيقات، سنواجه أيضًا $ \mathbf{xA} = \mathbf{y} $ ، حيث إن المصفوفة $ \mathbf{A} $ ذات الأبعاد $ m \times n $ والمتجه $ \mathbf{y} $ ذو الأبعاد $ 1 \times n $ معطيان، والمتجه $ \mathbf{x} $ ذو الأبعاد $ 1 \times m $ مطلوب حله. بتطبيق النظريتين 3.1 و3.2 على منقول المعادلة، نحصل بسهولة على النتيجة التالية.

    نتيجة 3.2 (Corollary 3.2) 

    1. إذا كانت لدينا مصفوفة $ m \times n $ هي A، فإن حلًا $ \mathbf{x} $ يوجد في $ \mathbf{xA} = \mathbf{y} $ لأي $ \mathbf{y} $ إذا وفقط إذا كانت $ \mathbf{A} $ ذات رتبة أعمدة كاملة (full column rank)

    2. إذا كانت $ \mathbf{A} $ مصفوفة بأبعاد $ m \times n $ و $ \mathbf{y} $ متجهًا بأبعاد $ 1 \times n $ . لتكن $ \mathbf{x}_p $ حلًا لـ $ \mathbf{xA} = \mathbf{y} $ ولتكن $ k = m - \rho(\mathbf{A}) $ . إذا كان $ k = 0 $ ، فإن الحل $ \mathbf{x}_p $ يكون وحيدًا. إذا كان $ k > 0 $ ، فعندئذ لأي $ \alpha_i $ ، $ i = 1, 2, \ldots, k $ ، فإن المتجه

    $$ \mathbf {x} = \mathbf {x} _ {p} + \alpha_ {1} \mathbf {n} _ {1} + \dots + \alpha_ {k} \mathbf {n} _ {k} $$

    يعد حلًا لـ $ \mathbf{xA} = \mathbf{y} $ ، حيث إن $ \mathbf{n}_i\mathbf{A} = \mathbf{0} $ والمجموعة $ \{\mathbf{n}_1, \ldots, \mathbf{n}_k\} $ مستقلة خطيًا (linearly independent).

    في MATLAB، يمكن الحصول على حل $ \mathbf{Ax} = \mathbf{y} $ بكتابة $ \mathbf{A} \backslash \mathbf{y} $ . لاحظ استخدام الشرطة العكسية (backslash) التي تدل على القسمة اليسرى للمصفوفات (matrix left division). على سبيل المثال، للمعادلة في (3.16)، نكتب

    $$ \begin{array}{l} a = \left[ 0 1 1 2; 1 2 3 4; 2 0 2 0 \right]; y = \left[ - 4; - 8; 0 \right]; \\ a \backslash y \\ \end{array} $$

    فتعطي $ [0 0 0 -2] $ . يمكن الحصول على حل $ \mathbf{xA} = \mathbf{y} $ بكتابة $ \mathbf{y} / \mathbf{A} $ . هنا نستخدم الشرطة المائلة (slash) التي تدل على القسمة اليمنى للمصفوفات (matrix right division).

    المحدد (Determinant) ومعكوس المصفوفات المربعة 

    تُعرَّف رتبة المصفوفة بأنها عدد الأعمدة أو الصفوف المستقلة خطيًا. ويمكن تعريفها أيضًا باستخدام المحدد (determinant). يُعرَّف محدد مصفوفة $ 1 \times 1 $ بأنه يساوي نفسه. ولـ $ n = 2, 3, \ldots $ ، فإن محدد المصفوفة المربعة $ n \times n $ $ \mathbf{A} = [a_{ij}] $ يُعرَّف تكراريًا كما يلي، لأي $ j $ مختار،

    $$ \det \mathbf {A} = \sum_ {i} ^ {n} a _ {i j} c _ {i j} \tag {3.18} $$

    حيث إن $ a_{ij} $ يشير إلى العنصر في الصف $ i $ والعمود $ j $ من $ \mathbf{A} $ . تُسمّى المعادلة (3.18) توسعة Laplace (Laplace expansion). والعدد $ c_{ij} $ هو المتمم الجبري (cofactor) الموافق لـ $ a_{ij} $ ويساوي $ (-1)^{i+j} \det M_{ij} $ ، حيث إن $ M_{ij} $ هو المصفوفة الفرعية (submatrix) ذات الأبعاد $ (n-1) \times (n-1) $ الناتجة من $ \mathbf{A} $ بحذف صفها $ i $ وعمودها $ j $ . إذا كانت $ \mathbf{A} $ قطرية (diagonal) أو مثلثية (triangular)، فإن $ \det \mathbf{A} $ يساوي حاصل ضرب جميع العناصر القطرية.

    يُسمّى محدد أي مصفوفة فرعية $ r \times r $ من $ \mathbf{A} $ مينور (minor) من الرتبة $ r $ . وبذلك يمكن تعريف الرتبة بأنها أكبر رتبة لجميع المينورات غير الصفرية (nonzero minors) لـ $ \mathbf{A} $ . وبعبارة أخرى، إذا كانت $ \mathbf{A} $ رتبتها $ r $ ، فهناك على الأقل مينور غير صفري من الرتبة $ r $ ، وكل مينور من رتبة أكبر من $ r $ يساوي صفرًا. ينطبق هذا التعريف على $ \mathbf{A} $ سواء كانت مربعة أم لا. إذا كانت $ \mathbf{A} $ مربعة من الرتبة $ n $ ، وكان محددها غير صفري، فإن $ \mathbf{A} $ رتبتها $ n $ (رتبة كاملة (full rank)) وتُسمّى غير منفردة (nonsingular). إذا كان المحدد صفريًا، تُسمّى $ \mathbf{A} $ منفردة (singular) ولها رتبة أقل من $ n $ . بالنسبة لمصفوفة مربعة غير منفردة، تكون جميع الأعمدة (الصفوف) مستقلة خطيًا.

    يرمز لمعكوس (inverse) المصفوفة المربعة غير المنفردة $ \mathbf{A} = [a_{ij}] $ بـ $ \mathbf{A}^{-1} $ . للمعكوس الخاصية $ \mathbf{A}\mathbf{A}^{-1} = \mathbf{A}^{-1}\mathbf{A} = \mathbf{I} $ ويمكن حسابه كما يلي

    $$ \mathbf {A} ^ {- 1} = \frac {\operatorname {A d j} \mathbf {A}}{\det \mathbf {A}} = \frac {1}{\det \mathbf {A}} \left[ c _ {i j} \right] ^ {\prime} \tag {3.19} $$

    حيث يُسمّى $ [c_{ij}]' $ المرافق (adjoint) ويُرمز له بـ Adj A. إذا كانت A من الرتبة $ 2 \times 2 $ ، فيمكن حساب المرافق بسهولة وتختزل (3.19) إلى

    $$ \mathbf {A} ^ {- 1} := \left[ \begin{array}{l l} a _ {1 1} & a _ {1 2} \\ a _ {2 1} & a _ {2 2} \end{array} \right] ^ {- 1} = \frac {1}{a _ {1 1} a _ {2 2} - a _ {1 2} a _ {2 1}} \left[ \begin{array}{c c} a _ {2 2} & - a _ {1 2} \\ - a _ {2 1} & a _ {1 1} \end{array} \right] \tag {3.20} $$

    وهكذا فإن معكوس مصفوفة $ 2 \times 2 $ بسيط جدًا: تبديل العناصر القطرية وتغيير إشارة العناصر خارج القطر (دون تغيير مواضعها) وقسمة المصفوفة الناتجة على محدد $ \mathbf{A} $ . عمومًا، يكون استخدام (3.19) لحساب المعكوس معقدًا. إذا كانت $ \mathbf{A} $ مثلثية (triangular)، فمن الأسهل حساب معكوسها بحل $ \mathbf{A} \mathbf{A}^{-1} = \mathbf{I} $ . لاحظ أن معكوس المصفوفة المثلثية يكون مثلثيًا أيضًا. دالة MATLAB المسماة inv تحسب معكوس $ \mathbf{A} $ . لاحظ أن المصفوفة المتعامدة (orthogonal matrix) $ \mathbf{A} $ لها رتبة كاملة ومعكوسها موجود. إن ضرب $ \mathbf{A}^{-1} $ يمينًا في $ \mathbf{A}'\mathbf{A} = \mathbf{I} $ يعطي $ \mathbf{A}' \mathbf{A} \mathbf{A}^{-1} = \mathbf{I} \mathbf{A}^{-1} $ ، مما يعني $ \mathbf{A}' = \mathbf{A}^{-1} $ . وبالتالي نحصل على $ \mathbf{A} \mathbf{A}' = \mathbf{A} \mathbf{A}^{-1} = \mathbf{I} $ . إذن المصفوفة المتعامدة $ \mathbf{A} $ لها الخصائص $ \mathbf{A}'\mathbf{A} = \mathbf{A}\mathbf{A}' = \mathbf{I} $ و $ \mathbf{A}^{-1} = \mathbf{A}' $ . نعطي الآن حالة خاصة من نظرية 3.2 حيث $ n = m $ .

    نظرية 3.3 

    اعتبر $ \mathbf{A}\mathbf{x} = \mathbf{y} $ ، حيث إن $ \mathbf{A} $ مصفوفة مربعة من الرتبة $ n $ ، و $ \mathbf{x} $ و $ \mathbf{y} $ متجهان بأبعاد $ n \times 1 $ .

    1. إذا كانت $ \mathbf{A} $ غير منفردة (nonsingular) أو $ \rho(\mathbf{A}) = n $ ، فإن للمعادلة حلًا وحيدًا لكل $ \mathbf{y} $ ويكون الحل مساويًا لـ $ \mathbf{A}^{-1}\mathbf{y} $ . وبوجه خاص، فإن الحل الوحيد للمعادلة $ \mathbf{Ax} = \mathbf{0} $ هو $ \mathbf{x} = \mathbf{0} $ .

    2. للمعادلة المتجانسة (homogeneous equation) $ \mathbf{Ax} = \mathbf{0} $ حلول غير صفرية إذا وفقط إذا كانت $ \mathbf{A} $ منفردة (singular) أو $ \rho(\mathbf{A}) < n $ . يساوي عدد الحلول المستقلة خطيًا $ n - \rho(\mathbf{A}) $ ، أي العدمية (nullity) للمصفوفة $ \mathbf{A} $ .

    هذه نظرية مهمة وسيُعاد استخدامها مرارًا في هذا النص.