পাঠ ৩২ · ৫৭-এর মধ্যে · মডিউল ৭
Home / Courses / Engineering Economics / ডেপ্রিসিয়েশন

সাম-অফ-ইয়ার্স-ডিজিট ও ইউনিটস-অফ-প্রোডাকশন

Sum-of-years-digits & units-of-production
৮ মিনিট পড়া মধ্যম · Intermediate Python কোডসহ সম্পূর্ণ বাংলায়

এই পাঠে যা শিখবেন

  • সাম-অফ-ইয়ার্স-ডিজিটস (SYD)-এর সূত্র ও এটি কীভাবে ডিক্লাইনিং ব্যালান্স থেকে আলাদা
  • ইউনিটস-অফ-প্রোডাকশন পদ্ধতি — কেন এটি "সময়ভিত্তিক নয়, ব্যবহারভিত্তিক" ডেপ্রিসিয়েশন
  • Python-এ syd_depreciation() ও units_of_production_depreciation() — দুটো ভিন্ন ফাংশন লিখে দুটো ভিন্ন শিডিউল তৈরি করা
  • Discrete Mathematics-এর অ্যারিথমেটিক সিরিজ সূত্রের সাথে SYD-এর সরাসরি সম্পর্ক

১ · সাম-অফ-ইয়ার্স-ডিজিটস (SYD)

সাম-অফ-ইয়ার্স-ডিজিটসSum-of-years-digitsএকটি অ্যাক্সিলারেটেড পদ্ধতি যা N, N-1, N-2, ..., 1 -- এই "বছর-ডিজিট"গুলোর যোগফল দিয়ে (B-S)-কে ওজনযুক্তভাবে ভাগ করে। পদ্ধতিতে প্রথমে বছরসংখ্যাগুলোর যোগফল বের করা হয় —

$$SYD = 1 + 2 + \dots + N = \frac{N(N+1)}{2}$$

তারপর প্রতি বছর t-এর ডেপ্রিসিয়েশন হয় "উল্টানো" ওজন $(N-t+1)$ দিয়ে —

$$D_t = \frac{N-t+1}{SYD}(B-S)$$

বছর ১-এ ওজন সবচেয়ে বড় ($N$), বছর N-এ সবচেয়ে ছোট ($1$) — তাই এটিও ডিক্লাইনিং ব্যালান্সের মতো শুরুতে বেশি, শেষে কম ডেপ্রিসিয়েশন দেয়, কিন্তু $BV_{t-1}$-এর উপর নির্ভর না করে সরাসরি একটি নির্দিষ্ট ভগ্নাংশ ব্যবহার করে বলে হিসাব সরল ও ফ্লোর-লজিকের প্রয়োজন হয় না — SYD স্বয়ংক্রিয়ভাবেই N বছরে ঠিক $B-S$-এ গিয়ে থামে। $1+2+\dots+N$ এই যোগফল সূত্রটি Discrete Mathematics কোর্সের সিকোয়েন্স ও সিরিজ অধ্যায়ে শেখা অ্যারিথমেটিক সিরিজের যোগফলের সূত্রই — এখানে শুধু সরাসরি প্রয়োগ, পুনরায় derive করা হচ্ছে না।

Python
# সাম-অফ-ইয়ার্স-ডিজিটস (SYD) -- SYD = N(N+1)/2, D_t = [(N-t+1)/SYD] * (B-S)

def syd_depreciation(B, S, N):
    SYD = N * (N + 1) / 2
    schedule = []
    for t in range(1, N + 1):
        D_t = ((N - t + 1) / SYD) * (B - S)
        schedule.append(D_t)
    return schedule

B, S, N = 36000, 6000, 5
syd_schedule = syd_depreciation(B, S, N)
SYD = N * (N + 1) / 2

print(f"B = ${B:,.2f}, S = ${S:,.2f}, N = {N}")
print(f"SYD = N(N+1)/2 = {N}({N}+1)/2 = {SYD:.0f}\n")
print(f"{'বছর':>4} | {'ভগ্নাংশ':>10} | {'D_t':>10}")
print("-" * 30)
for t, D_t in enumerate(syd_schedule, start=1):
    frac = (N - t + 1) / SYD
    print(f"{t:>4} | {frac:>9.4f} | ${D_t:>8,.2f}")

total_syd = sum(syd_schedule)
check_syd = abs(total_syd - (B - S)) < 1e-9
print("-" * 30)
print(f"যাচাই -- সঞ্চিত D == B - S ?  ${total_syd:,.2f} == ${B - S:,.2f} -> {check_syd}")

    
$SYD = 5(6)/2 = 15$। বছর ১: $\frac{5}{15}\times 30{,}000 = \$10{,}000$। বছর ২: $\frac{4}{15}\times 30{,}000 = \$8{,}000$। বছর ৩: $\$6{,}000$। বছর ৪: $\$4{,}000$। বছর ৫: $\$2{,}000$। মোট $10{,}000+8{,}000+6{,}000+4{,}000+2{,}000 = \$30{,}000 = B-S$ — যাচাই True।

২ · ইউনিটস-অফ-প্রোডাকশন

ইউনিটস-অফ-প্রোডাকশনUnits-of-productionসময়ের বদলে প্রকৃত ব্যবহার (উৎপাদিত একক সংখ্যা) দিয়ে ডেপ্রিসিয়েশন হিসাব করার পদ্ধতি। আগের সব পদ্ধতি থেকে ভিন্ন দর্শনের — এখানে বছরের সংখ্যা N নয়, বরং সম্পদটি তার পুরো জীবনকালে মোট কত একক উৎপাদন করবে বলে ধরা হয় ($\text{total\_units}$), সেই তুলনায় প্রতি বছর প্রকৃতপক্ষে কত একক উৎপাদিত হলো তার অনুপাত ধরে ডেপ্রিসিয়েশন হিসাব করা হয় —

$$D_t = \frac{\text{units}_t}{\text{total\_units}}(B-S)$$

এই পদ্ধতি এমন সম্পদের জন্য বাস্তবসম্মত যেখানে ক্ষয় সময়ের সাথে নয়, ব্যবহারের সাথে সরাসরি সম্পর্কিত — যেমন একটি খনির যন্ত্র যা কম উৎপাদনের বছরে কম ক্ষয় হয় এবং বেশি উৎপাদনের বছরে বেশি ক্ষয় হয়।

Python
# ইউনিটস-অফ-প্রোডাকশন -- D_t = (units_t / total_units) * (B - S)

def units_of_production_depreciation(B, S, unit_amounts_per_year):
    total_units = sum(unit_amounts_per_year)
    schedule = []
    for units_t in unit_amounts_per_year:
        D_t = (units_t / total_units) * (B - S)
        schedule.append(D_t)
    return schedule

B, S = 100000, 10000
units_per_year = [50000, 45000, 40000, 35000, 30000]   # মোট আয়ুষ্কাল উৎপাদন = 200,000 ইউনিট
uop_schedule = units_of_production_depreciation(B, S, units_per_year)

print(f"B = ${B:,.2f}, S = ${S:,.2f}, মোট আয়ুষ্কাল উৎপাদন = {sum(units_per_year):,} ইউনিট\n")
print(f"{'বছর':>4} | {'উৎপাদন':>10} | {'D_t':>10}")
print("-" * 32)
for t, (units_t, D_t) in enumerate(zip(units_per_year, uop_schedule), start=1):
    print(f"{t:>4} | {units_t:>10,} | ${D_t:>8,.2f}")

total_uop = sum(uop_schedule)
check_uop = abs(total_uop - (B - S)) < 1e-9
print("-" * 32)
print(f"যাচাই -- সঞ্চিত D == B - S ?  ${total_uop:,.2f} == ${B - S:,.2f} -> {check_uop}")

    
মোট আয়ুষ্কাল উৎপাদন 200,000 ইউনিট, $B-S = 90{,}000$। বছর ১: $\frac{50{,}000}{200{,}000}\times 90{,}000 = \$22{,}500$। বছর ২: $\$20{,}250$। বছর ৩: $\$18{,}000$। বছর ৪: $\$15{,}750$। বছর ৫: $\$13{,}500$। মোট $22{,}500+20{,}250+18{,}000+15{,}750+13{,}500 = \$90{,}000 = B-S$ — যাচাই True। লক্ষ্য করুন এখানে "বছর" শব্দটি শুধু ক্রম বোঝাতে ব্যবহৃত হয়েছে — আসল চালিকাশক্তি হলো উৎপাদনের পরিমাণ, সময় নয়।
মূল কথা · Key takeaway

SYD ও ডিক্লাইনিং ব্যালান্স দুটোই "অ্যাক্সিলারেটেড" — শুরুতে বেশি ডেপ্রিসিয়েশন — কিন্তু SYD সরাসরি একটি ডিজিট-ওজন ভগ্নাংশ ব্যবহার করে বলে ফ্লোর-লজিকের প্রয়োজন হয় না। ইউনিটস-অফ-প্রোডাকশন সম্পূর্ণ ভিন্ন — সময়ের বদলে প্রকৃত ব্যবহার ট্র্যাক করে, যা এমন সম্পদের জন্য উপযুক্ত যাদের ক্ষয় ব্যবহারের সমানুপাতিক।

ভাবনার প্রশ্ন

প্রতিটি প্রশ্ন নিজে কিছুক্ষণ ভাবুন — তারপর "→ উত্তর" চাপুন।

প্র ০১ SYD পদ্ধতিতে ডিক্লাইনিং ব্যালান্সের মতো "ফ্লোর-লজিক" (বুক ভ্যালু স্যালভেজের নিচে না যাওয়ার চেক) কেন প্রয়োজন হয় না?

কারণ SYD সরাসরি $(B-S)$-কে নির্দিষ্ট ভগ্নাংশে ($\frac{N-t+1}{SYD}$) ভাগ করে দেয়, আর এই ভগ্নাংশগুলোর যোগফল সবসময় ঠিক ১ (কারণ $1+2+\dots+N = SYD$) — তাই N বছর শেষে সঞ্চিত ডেপ্রিসিয়েশন স্বয়ংক্রিয়ভাবেই ঠিক $B-S$-এ পৌঁছায়, বুক ভ্যালু কখনো এর বেশি বা কমও হয় না। ডিক্লাইনিং ব্যালান্সে সমস্যা হয় কারণ সেখানে প্রতি বছর আগের বুক ভ্যালুর উপর হিসাব হয়, যা তাত্ত্বিকভাবে কখনো ঠিক শূন্যে পৌঁছায় না।

প্র ০২ ইউনিটস-অফ-প্রোডাকশন পদ্ধতিতে যদি কোনো বছরে উৎপাদন ০ হয় (যেমন কারখানা বন্ধ ছিল), সেই বছরের D_t কত হবে?

D_t = (0 / total_units) * (B - S) = 0 — অর্থাৎ সেই বছরে কোনো ডেপ্রিসিয়েশন হবে না, কারণ সম্পদটি ব্যবহারই হয়নি। এটাই ইউনিটস-অফ-প্রোডাকশনের মূল বৈশিষ্ট্য — ডেপ্রিসিয়েশন ব্যবহারের সাথে সরাসরি বাঁধা, শুধু ক্যালেন্ডার সময়ের সাথে নয়।

প্র ০৩ SYD-এর যোগফল সূত্র $N(N+1)/2$ Discrete Mathematics কোর্সের কোন ধারণার সাথে সরাসরি সম্পর্কিত?

এটি প্রথম N পূর্ণসংখ্যার (1 থেকে N পর্যন্ত) যোগফলের সূত্র — একটি ধ্রুবক পার্থক্যের অ্যারিথমেটিক সিরিজ (arithmetic series) — যা Discrete Mathematics কোর্সের সিকোয়েন্স ও সিরিজ অধ্যায়ে প্রতিষ্ঠিত হয়। এখানে শুধু সেই একই সূত্র সরাসরি প্রয়োগ করা হয়েছে, নতুন করে derive করার দরকার নেই।

অনুশীলন

  1. চিন্তা করুন: একটি $21,000 বেসিসের সম্পদ, $3,000 স্যালভেজ, ৩ বছরের SYD পদ্ধতিতে ডেপ্রিসিয়েট হবে। হাতে হিসাব করুন $SYD$ কত, এবং বছর ১-এর $D_1$ কত।

    $SYD = 3(4)/2 = 6$। $B-S = 21{,}000-3{,}000 = 18{,}000$। বছর ১-এর ওজন $(N-1+1)=3$, তাই $D_1 = \frac{3}{6}\times 18{,}000 = \$9{,}000$। (পুরো শিডিউল: বছর ১ = $9,000, বছর ২ = $6,000, বছর ৩ = $3,000, মোট = $18,000 = B-S।)

  2. পরীক্ষা করুন: ইউনিটস-অফ-প্রোডাকশন কোড সেলে units_per_year-কে [40000, 40000, 40000, 40000, 40000]-এ (প্রতি বছর সমান উৎপাদন, মোট এখনো 200,000) বদলে Run চেপে দেখুন — ফলাফল স্ট্রেইট-লাইন পদ্ধতির (L30) সাথে মিলে যায় কি না, এবং কেন।

    হ্যাঁ, মিলে যাবে — প্রতি বছর D_t = (40000/200000) * 90000 = $18,000, যা প্রতিটি বছরে সমান। এটাই স্বাভাবিক, কারণ উৎপাদন যদি প্রতি বছর ঠিক সমান হয়, তাহলে "ব্যবহার-ভিত্তিক" ও "সময়-ভিত্তিক" ডেপ্রিসিয়েশন একই ফলাফল দেয় — স্ট্রেইট-লাইন আসলে ইউনিটস-অফ-প্রোডাকশনের একটি বিশেষ (সমান-ব্যবহার) কেস হিসেবে দেখা যায়।

আরও পড়ুন · ABCL TECH-এ আপনার পরবর্তী পদক্ষেপ

  • কোর্সের সম্পূর্ণ সিলেবাস দেখুন ৫৭টি পাঠ টাইম ভ্যালু অফ মানি, ক্যাশ ফ্লো সিরিজ, ওয়ার্থ-ভিত্তিক তুলনা, রেট অফ রিটার্ন, ডেপ্রিসিয়েশন, ট্যাক্স, ইনফ্লেশন, রিস্ক অ্যানালাইসিস ও ক্যাপিটাল বাজেটিং সহ সম্পূর্ণ ৫৭টি পাঠ।
  • Discrete Mathematics কোর্স সহোদর কোর্স সিকোয়েন্স ও সিরিজ অধ্যায় — SYD-এর $N(N+1)/2$ সূত্রের গাণিতিক ভিত্তি সেই কোর্সেই তৈরি হয়েছে।
  • পরের পাঠ L33 MACRS ডেপ্রিসিয়েশন — মার্কিন ট্যাক্স-বাধ্যতামূলক পার্সেন্টেজ-ভিত্তিক পদ্ধতি।
আগের পাঠ
ডিক্লাইনিং ব্যালান্স ও ডাবল-ডিক্লাইনিং ব্যালান্স