Skip to content

সমাধান — 0.3 · Calculus I: Limits, Derivatives, Optimization

অধ্যায়: part-0-foundations/00-03-calculus-1-derivatives.md। নিচে সব ১০টি অনুশীলনীর পূর্ণ সমাধান।


ক · ধারণাগত (Conceptual)

Q1 ★ — secant vs tangent, এবং \(h\to 0\)-এর তাৎপর্য

Secant line হলো curve-এর দুটো আলাদা বিন্দু \((x, f(x))\)\((x+h, f(x+h))\)-এর সংযোগকারী সরলরেখা; এর slope \(\frac{f(x+h)-f(x)}{h}\) দেয় ঐ ব্যবধানে average rate of change (গড় পরিবর্তন)। Tangent line হলো এমন রেখা যা curve-কে একটিমাত্র বিন্দুতে স্পর্শ করে এবং সেই বিন্দুতে curve-এর "তাৎক্ষণিক দিক" ধরে।

\(h\to 0\) নেওয়ার তাৎপর্য: দ্বিতীয় বিন্দুকে প্রথম বিন্দুর দিকে ক্রমশ টেনে আনলে secant line ঘুরতে ঘুরতে গিয়ে tangent line-এ মিলে যায়। ফলে average rate of change → instantaneous rate of change (তাৎক্ষণিক পরিবর্তন), অর্থাৎ derivative। এটি limit বলেই অর্থপূর্ণ: ঠিক \(h=0\) বসালে \(\frac{0}{0}\) অসংজ্ঞায়িত হতো, কিন্তু limit সেই বাধা এড়িয়ে সঠিক slope দেয়।

Q2 ★ — \(f'=0\) অথচ max/min নয়: saddle / inflection

এমন বিন্দুকে বলে inflection point (বাঁকবদলের বিন্দু) বা এক-চলকে stationary point of inflection (saddle-সদৃশ)। উদাহরণ: \(f(x)=x^3\)

এখানে \(f'(x)=3x^2\), তাই \(f'(0)=0\) — কিন্তু \(x=0\)-এর বাঁ-ডান দুপাশেই \(f'(x)=3x^2 > 0\) (function সবসময় বাড়ছে)। চিহ্ন বদলায় না, তাই \(x=0\) max-ও নয় min-ও নয়। (\(f''(0)=0\) হওয়ায় second-derivative test inconclusive — তখন first-derivative test বা উচ্চতর derivative লাগে।)

Q3 ★★ — convex-এ GD কেন global min দেয়, non-convex-এ কেন নয়

একটি convex function-এ (\(f''\ge 0\) সর্বত্র) মাত্র এক ধরনের "তলা" থাকে — যেকোনো local minimum আবশ্যিকভাবে global minimum। কারণ convex curve বাটির (\(\smile\)) মতো; একবার নিচে নামতে শুরু করলে আর দ্বিতীয় কোনো আলাদা গর্তে আটকে যাওয়ার সুযোগ নেই। gradient descent negative-gradient দিকে নামে, তাই সেই একমাত্র তলাতেই পৌঁছায় — global minimum-এর নিশ্চয়তা।

Non-convex function-এ একাধিক local minimum, local maximum ও saddle point থাকতে পারে (যেমন ঢেউখেলানো ভূদৃশ্য)। gradient descent শুধু স্থানীয় ঢাল দেখে নামে, তাই যে গর্তের কাছে শুরু করেছে সেই local minimum-এ আটকে যেতে পারে — যেটা global minimum নাও হতে পারে। তাই non-convex-এ global minimum-এর কোনো গ্যারান্টি নেই (শুরুর বিন্দু, learning rate ইত্যাদির উপর নির্ভর করে)।


খ · গণনামূলক (Computational)

Q4 ★ — derivatives

function derivative যুক্তি
(a) \(x^4\) \(4x^3\) power rule
(b) \(\sqrt{x}=x^{1/2}\) \(\dfrac{1}{2}x^{-1/2} = \dfrac{1}{2\sqrt{x}}\) power rule
(c) \(\dfrac{1}{x}=x^{-1}\) \(-x^{-2} = -\dfrac{1}{x^2}\) power rule
(d) \(e^{x}\) \(e^{x}\) standard
(e) \(\ln x\) \(\dfrac{1}{x}\) standard
(f) \(x^3\sin x\) \(3x^2\sin x + x^3\cos x\) product rule: \(u'v+uv'\)

Q5 ★★ — chain rule, \((3x^2+1)^5\)

বাইরের function \(u^5\) (derivative \(5u^4\)), ভেতরের \(u=3x^2+1\) (derivative \(6x\))। chain rule:

\[\frac{d}{dx}(3x^2+1)^5 = 5(3x^2+1)^4 \cdot \underbrace{6x}_{u'} = 30x\,(3x^2+1)^4.\]

Q6 ★★ — \(f(x)=x^3-6x^2+9x+1\) optimize

Step 1. \(f'(x) = 3x^2 - 12x + 9 = 3(x^2 - 4x + 3) = 3(x-1)(x-3)\)

Step 2. critical points: \(f'=0 \Rightarrow x=1\)\(x=3\)

Step 3. \(f''(x) = 6x - 12\)

Step 4. second-derivative test: - \(x=1\): \(f''(1)=6-12=-6 < 0 \Rightarrow\) local maximum, মান \(f(1)=1-6+9+1=5\)। - \(x=3\): \(f''(3)=18-12=6 > 0 \Rightarrow\) local minimum, মান \(f(3)=27-54+27+1=1\)

উত্তর: local max \((1, 5)\), local min \((3, 1)\)


গ · প্রমাণভিত্তিক (Proof-based)

Q7 ★★ — limit সংজ্ঞা থেকে \(\dfrac{d}{dx}\dfrac{1}{x} = -\dfrac{1}{x^2}\)

\[\frac{d}{dx}\frac{1}{x} = \lim_{h\to 0}\frac{\frac{1}{x+h} - \frac{1}{x}}{h}.\]

লব-এর দুই ভগ্নাংশকে সাধারণ হর \(x(x+h)\)-এ আনি:

\[\frac{1}{x+h} - \frac{1}{x} = \frac{x - (x+h)}{x(x+h)} = \frac{-h}{x(x+h)}.\]

তাই difference quotient:

\[\frac{1}{h}\cdot\frac{-h}{x(x+h)} = \frac{-1}{x(x+h)}.\]

এবার \(h\to 0\) নিই (তখন \(x+h \to x\)):

\[\lim_{h\to 0}\frac{-1}{x(x+h)} = \frac{-1}{x\cdot x} = -\frac{1}{x^2}. \qquad \blacksquare\]

Q8 ★★★ — quotient rule, product+chain থেকে উৎপাদন

\(\dfrac{u}{v} = u\cdot v^{-1}\) লিখি। প্রথমে chain rule দিয়ে \(v^{-1}\)-এর derivative:

\[\frac{d}{dx}\,v^{-1} = -1\cdot v^{-2}\cdot v' = -\frac{v'}{v^2}.\]

এবার product rule প্রয়োগ করি \(u\)\(v^{-1}\)-এর উপর:

\[\left(\frac{u}{v}\right)' = (u\cdot v^{-1})' = u'\cdot v^{-1} + u\cdot \frac{d}{dx}v^{-1} = \frac{u'}{v} + u\left(-\frac{v'}{v^2}\right) = \frac{u'}{v} - \frac{u\,v'}{v^2}.\]

সাধারণ হর \(v^2\)-এ এনে:

\[= \frac{u'v}{v^2} - \frac{u\,v'}{v^2} = \frac{u'v - u\,v'}{v^2}. \qquad \blacksquare\]

এটাই প্রমিত quotient rule


ঘ · কোডিং (Coding)

Q9 ★★ — central-difference second derivative

def second_derivative(f, x, h=1e-4):
    """Central-difference approximation of f''(x)."""
    return (f(x + h) - 2*f(x) + f(x - h)) / h**2

f = lambda x: x**3
print("approx f''(2):", second_derivative(f, 2.0))   # ~ 12.0
print("exact  f''(2):", 6*2.0)                        # f''(x)=6x -> 12

আউটপুট (আনুমানিক):

approx f''(2): 12.00000...   # floating-point-এর কারণে সামান্য পার্থক্য
exact  f''(2): 12.0

ব্যাখ্যা: \(f(x)=x^3 \Rightarrow f''(x)=6x \Rightarrow f''(2)=12\)। central second-difference সূত্র খুব ছোট error-এ ১২-ই দেয়। (অতি-ছোট \(h\), যেমন \(10^{-8}\), নিলে \(h^2\) অতি-ক্ষুদ্র হয়ে rounding error বাড়ে — তাই \(h\approx 10^{-4}\) ভালো আপস।)

Q10 ★★★ — gradient descent on \(f(x)=x^4-3x^3+2\)

def f(x):  return x**4 - 3*x**3 + 2
def df(x): return 4*x**3 - 9*x**2     # f'(x)

x = 4.0        # শুরু
lr = 0.01      # learning rate
for _ in range(2000):
    x = x - lr * df(x)

print("GD result x:", round(x, 4))     # -> 2.25
print("f at result:", round(f(x), 4))  # -> -6.543

আউটপুট:

GD result x: 2.25
f at result: -6.543

বিশ্লেষণ: \(f'(x)=4x^3-9x^2 = x^2(4x-9)=0 \Rightarrow x=0\) অথবা \(x=\tfrac{9}{4}=2.25\)। - \(x=0\): \(f''(0)=12\cdot0^2 - 18\cdot 0 = 0\) — degenerate; আসলে \(x=0\) একটা inflection (চারপাশে \(f'\) চিহ্ন বদলায় না অর্থপূর্ণভাবে min হিসেবে), তাই GD সেখানে থামে না। - \(x=2.25\): \(f''(2.25)=12(2.25)^2 - 18(2.25)=60.75-40.5=20.25>0 \Rightarrow\) local minimum

\(x_0=4\) থেকে শুরু করে negative-gradient দিকে নামতে নামতে GD ঠিক \(x=2.25\)-এ থামে — বিশ্লেষণাত্মক local (এবং এখানে global, যেহেতু \(x\to\pm\infty\)-এ \(f\to+\infty\)) minimum-এর সাথে নিখুঁত মিল।