2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

1次関数の絶対値の和と2次関数について

Last updated at Posted at 2025-07-18

はじめに

数学において絶対値を処理することは極めて難しいとされる。初学者向けの説明では、符号を取っただけのものと説明されがちであるが、本質はそこではない。絶対値とは、原点から対象の値までの数直線上の距離である。なので、実数の領域では、絶対値の中身が正であれば1倍をし、負であれば0からその数を減算する操作、つまり-1倍することを意味する。そこで今回は、ある1次関数の絶対値を無限に足していった場合それがある2次関数に収束することを示す。その後、Pythonを用いたプログラムでその結果が正しいことを視覚的に確認する。
1次関数の絶対値の和の極限と2次関数_3.png

問題

以下の関数$f(x)$を考える。

f(x)=\frac{1}{n}\sum_{k=0}^{n} |x-\frac{k}{n}|

このとき、$n\to \infty$とした場合、$f(x)$はどのような関数に漸近するか考えよ。ただし、$0\le x\le 1$とする。

ヒント

まず、$n$といった抽象的な数をいきなり考えるのではなく、具体的な数で実験してみる。
また、絶対値の外し方は、2乗か中身を正負によって1倍もしくは-1倍するという方法しかない。しかし、今回の場合、2乗をしても意味がなさそうである。ということは、中身によって場合分けをしていく方針で考えてみよう。

$n=2$の場合、

f(x)=|x|+|x-\frac{1}{2}|+|x-1|

となり、グラフを描写すると、以下の青線のようになる。

1次関数の絶対値の和の極限と2次関数_2.png

これは、受験勉強をするとよく出る絶対値の折れ線である。

面白いので、$n=3$でも行ってみる。

1次関数の絶対値の和の極限と2次関数_3.png

このように、何となく中心の$x=0.5$付近で最小をとるような関数になってくように見える。

試しに、$n=10$だと以下のようになる。

1次関数の絶対値の和の極限と2次関数_10.png

このように、かなりある2次関数に漸近しているのが分かる。

解法

$0\le m\le n$となる整数$m$をおく。

\frac{m}{n}\le x\le \frac{m+1}{n}

の場合、$f(x)$は以下のようになる。

f(x)=\frac{1}{n}\{ x+(x-\frac{1}{n})+\cdot\cdot\cdot\ (x-\frac{m}{n})\}-\frac{1}{n}\{ (x-\frac{m+1}{n})+\cdot\cdot\cdot\ (x-\frac{n}{n})\}

これをシグマ計算(和の公式)を駆使して計算していくと以下のようになる。

f(x)=\frac{2m-n}{n}x+\frac{1}{n}\{\frac{-m(m+1)}{n}+\frac{n+1}{2}  \}

ここで、

\frac{m}{n}\le x\le \frac{m+1}{n}

という制限のもとで、$n,m\to \infty$とすると、以下のことが分かる。


\frac{2m-n}{n}\to2(\frac{m}{n})-1

\frac{1}{n}\{\frac{-m(m+1)}{n}+\frac{n+1}{2}  \}\to -(\frac{m}{n})^2+\frac{1}{2}

ここで、最後に$\frac{m}{n}\to x $を用いると、


\frac{2m-n}{n}\to 2x-1

\frac{1}{n}\{\frac{-m(m+1)}{n}+\frac{n+1}{2}  \}\to -x^2+\frac{1}{2}

したがって


f(x)\to(2x-1)x+(-x^2+\frac{1}{2})=x^2-x+\frac{1}{2}

となる。

プログラム

さて、上記の議論をプログラムに反映と以下のようになる。

python abs_par.py
import numpy as np
import matplotlib.pyplot as plt
import japanize_matplotlib
import math

#基準となる2次関数の描写
nn=100
xx=np.linspace(0,1,nn)
y_opt=xx**2-xx+0.5

#1次関数の絶対値の和
n1=100
## プログラム上の仕様
n=n1+1

x=np.linspace(0,1,n)

y=np.zeros(n)
for i in range(n):
    y=y+abs(x-i/n)/n

plt.plot(x,y,color="blue",label="絶対値の和(n=%d)"%(n1))
plt.plot(xx,y_opt,color="red",label="二次関数")
plt.legend()
plt.savefig("1次関数の絶対値の和の極限と2次関数_%d.png"%(n1))
plt.show()

上記のプログラムを実行すると以下のようになる。($n=100$といった十分に大きい数を用いた場合)

1次関数の絶対値の和の極限と2次関数_100.png

このように、1次関数の絶対値の和は2次関数に漸近する。

まとめ

高校数学1で学習する、場合分けによる絶対値の外し方を用いてある1次関数の絶対値の和が2次関数に漸近することを確認した。また、Pythonを用いることで、そのような漸近の様子を視覚的に示すことができた。このように、極限を考える問題の場合はいきなり抽象的に考えるのではなく、具体的な数で考え、それを拡張していくべきである。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?