畳み込み積分は、一方の関数をもう一方の上でずらしながら、2つの関数がどのように組み合わさるかを表します。連続時間では、次のように定義されます。
直感的にはシンプルです。各 に対して一方の関数をスライドさせ、2つが重なる場所を見つけ、その重なりの上で値を掛け合わせて足し合わせます。両方の関数が因果的、つまり負の時間で 0 なら、しばしば
となります( で、かつ が重なり全体を含む場合)。実用上のポイントは、スライドする重なりを各 に対して1つの数に変えることです。
畳み込み積分の定義と直感
は固定され、 は を反転して平行移動したものだと考えてください。 が変わると重なり方も変わるので、積分値も変わります。
ここが点ごとの積との大きな違いです。2つの関数を同じ入力で比べているのではありません。ずらしたコピーが元の関数と重なる領域全体で、積を足し合わせているのです。
なぜ重なりが積分区間を決めるのか
畳み込みの問題で積分区間は、暗記した型から決まることはあまりありません。両方の因子がどこで 0 でないかを考えて決まります。
そのため、多くの畳み込みの答えは場合分けになります。 が動くと重なり区間は広がったり、縮んだり、消えたりするので、それに応じて積分も変わります。
学生がよく見落とすのはここです。難しいのはたいてい積分そのものではなく、まず正しい重なり区間を見つけることです。
畳み込み積分の例:2つの単位パルス
次を考えます。
そして も同じ関数とします。求めたいのは です。
この例がわかりやすいのは、被積分関数が か のどちらかなので、畳み込みがそのまま重なり区間の長さになるからです。
定義を使うと、
です。 なのは 上だけで、 なのは のときだけなので、被積分関数が になるのはこの2つの条件が同時に成り立つところに限られます。
2つ目の条件は
を意味します。
したがって、重なり区間は
です。
つまり は、この重なりの長さになります。
場合 1:
重なりはないので、
です。
場合 2:
重なりは から までなので、
となります。
場合 3:
重なりは から までなので、
となります。
場合 4:
ここでも重なりはないので、
です。
以上をまとめると、
となります。
結果は三角形になります。重なりが増える間は高さが増え、重なりが減ると高さも下がります。
畳み込み積分でよくあるミス
ずらした入力を忘れる
2つ目の因子は であって、 でも単なる でもありません。ずらしこそが畳み込みの本質です。
積分区間を間違える
最も安全な方法は、両方の因子が 0 でない範囲を見つけることです。重なりが によって変わるなら、たいてい場合分けが必要になります。
畳み込みを点ごとの積だと思ってしまう
点ごとの積は同じ入力での値を使います。畳み込みは、区間全体にわたる積を累積します。
近道が使える条件を飛ばしてしまう
近道として
を使うことがあります。
これは因果的な設定ではよく成り立ちますが、どんな関数の組にも使えるわけではありません。その仮定が成り立つときだけ使ってください。
畳み込み積分はどこで使われるか
ある量が、別の量の近くの時間や空間への広がり方に依存するとき、畳み込みを使います。
線形時不変系では、入力とインパルス応答から出力を求めるのに畳み込みを使います。確率では、2つの独立な確率変数が密度関数をもつとき、その和の密度はそれらの密度の畳み込みになります。より広くは、平滑化、フィルタリング、拡散、そして近くの値どうしが組み合わさるあらゆる場面に現れます。
似た畳み込み問題を試してみよう
同じパルスの例で、2つ目のパルスの高さを2倍にしてみてください。
重なり区間は同じままですが、その区間での被積分関数は2倍になります。積分する前に、それで三角形の結果がどう変わるか予想できれば、畳み込みの核心はつかめています。