طريقة المحاسبة (علم الحاسوب)

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

طريقة تنفيذها عدل

تم اختيار مجموعة من العمليات الأولية أو ما تسمى بالعمليات البسيطة التي سيتم استخدامها في الخوارزمية ويتم تعيين تكاليفها بشكل عشوائي بحيث تكون تكلفتها ثابتة. حقيقة أن التكاليف الفعلية لهذه العمليات قد تختلف تماما ولكن ما هو مهم هو أن كل عملية لها تكلفة ثابتة.

يتم تعيين تكلفة الدفعة لكل عملية بهدف تغطية تكلفة العمليات التي يتم تنفيذها في البداية ولا تحتاج إلى تكلفة فعلية عالية لإكمال هذه العملية المعينة، مع ترك بعض المدفوعات لتكلفة الدفعة، وتحزينها لاستخدامها لاحقا. بمعنى آخر، فإن تكلفة الدفعة هو أن يتم تعيين تكلفة جديدة تختلف عن التكلفة الفعلية بحيث تكون قيمتها كبيرة نسبياً للعمليات التي تحدث أولا وتتكرر كثيرا وتسمى هذه العمليات بالعمليات البسيطة، بينما يتم تعيين تكلفة قليلة نسبيا للعمليات التي تتكر بشكل أقل ولها تكلفة فعلية أكبر وتسمى بالعمليات الباهظة. أثناء تنفيذ العمليات البسيطة يتم حساب تكلفة الائتمان الناتجة من جمع ما تبقى من تكلفة الدفعة لكل عملية من هذه العمليات البسيطة ودفعها لاحقا للعمليات الباهظة. وبما أن تكلفة الائتمان تبدأ من الصفر، فإن التكلفة الفعلية لمجموعة من العمليات المتسلسلة تساوي ناتج طرح تكلفة الدفعة من تكلفة الكلية. وبما أن تكلفة الائتمان لا يجب أن تكون أقل من صفر، لذلك يجب أن تكون أكبر من التكلفة الفعلية. وفي معظم الأحيان، فإن العمليات التي لها أقل تكلفة فعلية تزيد من قيمة تكلفة الدفعة بشكل تدريجي وبنسب قليلة، بينما العمليات التي لها تكلفة فعلية أكبر وتتكرر بشكل أقل فهي تقلل من تكلفة الدفعة بنسبة كبيرة [1]

إحدى مشاكل هذه الطريقة بأن بعض العمليات تتطلب تكلفة أكبر من التكلفة الثابتة وبالتالي لن يتم تغطية تكلفة العمليات الباهظة التي تكرر قليلا وتحتاج إلى تكلفة فعلية عالية.  ومع ذلك فإن عملية اختيار القيمة الصحيحة لتكلفة الدفعة لم تعد بهذه الصعوبة بحيث أن العمليات الباهظة لن تحدث إلا عندما يكون هناك مدفوعات كافية مخزنة لتغطية تكاليفها.

المراجع عدل

  1. ^ Kozen، Dexter (Spring 2011). "CS 3110 Lecture 20: Amortized Analysis". جامعة كورنيل. مؤرشف من الأصل في 2023-02-03. اطلع عليه بتاريخ 2015-03-14.