RPGツクールと数学のブログ

RPGツクールと数学についてのブログです。

差分和分

過去ブログの転載です。

微分積分の離散バージョンに差分和分(さぶんわぶん)というのがあります。微分積分と比較しながら見てみましょう。

以後、 x微分する微分演算子 D(= \displaystyle \frac{d}{dx})とします。これに対応して、 nで差分する差分演算子 \Deltaとします。

微分の定義】
 \displaystyle Df(x)=\lim_{h \to 0} \frac{f(x+h)-f(x)}{h}

【差分の定義】(厳密にはこれは前進差分というものになります)
 \displaystyle \Delta a_{n} = a_{n+1}-a_{n} 

差分は数列の階差数列を求める手続きと同じです。改めて見てみると、この操作は微分とよく似ていますね。

例えば次のような数列 a_{n}を考えます。

 1, 4, 9, 16, 25, 36, \cdots

この階差数列 b_{n}は次のようになります。

 3, 5, 7, 9, 11, \cdots

このとき、これを次のように表します。

 \Delta a_{n} = b_{n}

もとの数列を差分したものが階差数列ということになりますね。逆に、階差数列からもとの数列を導く手続きを和分といいます。

ただし、和分だと積分と同様、任意定数が後につきます。階差数列だけではもとの数列が特定できないのと同じですね。この定数を和分定数 Cと呼び、和分演算子 \Delta^{-1}とします。
 \Delta^{-1}b_{n}=a_{n}+C

こうなるわけですね。

微分と差分の多項式での公式を提示します。それぞれ定義に従って計算すれば求められます。微分も差分も線型性があります。

微分公式】
 D1=0
 Dx=1
 Dx^{2}=2x
 Dx^{3}=3x^{2}
 Dx^{a}=ax^{a-1}
 Da^{x}=(\log a) a^{x}

【差分公式】
 \Delta 1=0
 \Delta n=1
 \Delta n^{2}=2n+1
 \Delta n^{3}=3n^{2}+3n+1
 \Delta n^{a}=an^{a-1}+({}_{a}C_{2})n^{a-2}+({}_{a}C_{3})n^{a-3}+\cdots+1
 \Delta a^{n}=(a-1)a^{n}

微分だと h \to 0とするので第1項以外は全部0になりますが差分だと残ってしまうので高次の差分は複雑です。

微分公式をひっくり返すと積分公式が得られるように、
差分公式をひっくり返すことにより、和分公式を得ることができます。

積分演算子 D^{-1}(= \int dx)とします。

積分公式】
 \displaystyle D^{-1}0=C
 \displaystyle D^{-1}1=x+C
 \displaystyle D^{-1}x=\frac{1}{2}x^{2}+C
 \displaystyle D^{-1}x^{2}=\frac{1}{3}x^{3}+C
 \displaystyle D^{-1}x^{a}=\frac{1}{a+1}x^{a+1}+C
 \displaystyle D^{-1}a^{x}=\frac{1}{\log a}a^{x}+C

【和分公式】
 \displaystyle \Delta^{-1}0=C
 \displaystyle \Delta^{-1}1=n+C
 \displaystyle \Delta^{-1}n=\frac{1}{2}n^{2}-\frac{1}{2}n+C
 \displaystyle \Delta^{-1}n^{2}=\frac{1}{3}n^{3}-\frac{1}{2}n^{2}+\frac{1}{6}n+C
 \displaystyle \Delta^{-1}a^{n}=\frac{1}{a-1}a^{n}+C

 \Delta^{-1}n^{a}はファイルハーバーの公式で得られるような複雑なものになるので、求めるのはやめておきます。やはり積分と対応していますが、余分な項が出ていますね。実は \Delta^{-1}n^{a}は、 1から n-1までの a乗和になっています。

階差数列の問題を解く

ではこれらを用いて高校の階差数列の問題を解いてみましょう。次のような数列を考えます。*1

 1, 2, 9, \cdots

第1項、第2項、第3項、の順に1, 2, 9になるような数列です。それさえ満たしてあれば、正直別に後は何でも構いません。

この一般項の最も単純な形は 3n^{2}-8n+6になるので、これを導きます。

上の数列を a_{n}とし、差分を求めます。 \Delta a_{n}=b_{n}とします。

 b_{n}は、 1, 7, \cdotsとなりますね。この一般項は b_{n}=6n-5とでも書けるとします。

ここまでは高校数学と同じです。ここで、和分公式を用いて b_{n}を和分することにより a_{n}を求めましょう。

 a_{n}
 =\Delta^{-1}b_{n}
 =\Delta^{-1}(6n-5)
 =6\Delta^{-1}n-5\Delta^{-1}1 … 線型性より
 \Delta^{-1}1=n+C \displaystyle \Delta^{-1}n=\frac{1}{2} n^{2}-\frac{1}{2} n+C を用いて、
 \displaystyle =6(\frac{1}{2} n^{2}-\frac{1}{2} n)-5n+C
 =3n^{2}-8n+C
となり、和分が計算できました。

和分定数 Cが残っていますが、これは初期条件 a_{1}=1を用いることにより消去できます。

 a_{1}=1=3-8+C
 C=6
従って、 a_{n}=3n^{2}-8n+6が求まりました。

なんとなく、微分方程式の解を求める手続きに似ていると思いませんか。

漸化式を解く

 a_{n+1}=2a_{n}+1 a_{1}=3)を満たす a_{n}を求めてみます。

まずは通常の解法からやってみましょう。

定数の「 +1」が邪魔なので、両辺に 1を足して
 a_{n+1}+1=2a_{n}+2
 a_{n+1}+1=2(a_{n}+1)
とし、 a_{n}+1=b_{n}と置けば
 b_{n+1}=2b_{n}
となりますね。 b_{1}=a_{1}+1=4です。
これは等比数列ですから
 b_{n}=4\cdot 2^{n-1}=2^{n+1}となりますね。
従って、 a_{n}=2^{n+1}-1として求めることができます。

これを差分和分を用いて解くことを考えてみます。
 a_{n+1}=2a_{n}+1から両辺 a_{n}を引けば
 a_{n+1}-a_{n}=a_{n}+1となるわけですが、
差分の定義から a_{n+1}-a_{n}=\Delta a_{n}でしたね。ですからこれは
 \Delta a_{n}=a_{n}+1と表せることになります。
微分方程式の差分版のような形になっていますね。これが微分方程式だとすると、どうすれば解けるのか確認してみましょう。

微分方程式の場合

微分方程式 Dy=y+1の解を得ることを考えてみます。

移項すると Dy-y=1
この斉次形の一般解を求めて、それにもとの微分方程式の特殊解を足せば一般解になります。

斉次形は Dy-y=0なので、移項すると Dy=y
微分してもとの関数に戻るものといえば y=e^{x}ですから、一般解は定数つけて y=Ce^{x}となりますね。
次に、 Dy-y=1の特殊解を得ます。右辺が 1なので、 y=-1としてやれば、定数の微分 0なので、 Dy=0となることから解になることが確認できます。

従って y=Ce^{x} y=-1を足して、一般解は y=Ce^{x}-1として得られます。

差分方程式の場合

同様にして差分方程式 \Delta a=a+1を解いてみます。

移項すると \Delta a-a=1となり、この斉次形の一般解に非斉次形の特殊解を足します。

斉次形は \Delta a-a=0なので、移項すると \Delta a=a
差分公式に \Delta a^{n}=(a-1)a^{n}というものがありました。つまり a=2だと \Delta 2^{n}=2^{n}となるわけです。

微分だと e^{x}微分しても変わらない関数になりますが、差分の場合、 2^{n}が差分しても変わらない数列になります。

ですから、斉次形の一般解は a_{n}=C\cdot 2^{n}となるわけですね。次に \Delta a-a=1の特殊解を求めます。

右辺が 1ですから、 a=-1なら \Delta a=0となって、解になりますね。この辺りは微分方程式の解き方と同じ理屈です。

従って一般解は a_{n}=C\cdot 2^{n}-1となるわけです。初期条件 a_{1}=3を入れれば、
 a_{1}=3=2C-1より C=2となるので、
 a_{n}=2\cdot 2^{n}-1=2^{n+1}-1という同じ解が得られたことが確認できました。

フィボナッチ数列の一般項なども類似の方法で求めることができます。漸化式は差分方程式に置き換えて考えるのも一つの手かもしれません。

*1:チルノ関数という関数の数列です^^;