ルジャンドル変換ビジュアライザ Legendre Transform Visualizer

凸関数 f(x) を「傾き p の接線」の情報 f*(p) に変換する双対変換を、幾何的に体験する教育用デモ

① 接線構成
② f ↔ f* 対(双対性)
③ 物理・熱力学への応用
f*(p) = maxx [ p·x − f(x) ]
接点 x*
f(x*)
切片 −f*(p)
f*(p)
傾き p の接線は曲線に1点 x* で接し、その y 切片はちょうど −f*(p)。p を動かすと接線が転がり、切片が f* の値を描き出す。f*(p)=「傾き p の接線が y 軸を切る高さの符号反転」。

f(x) と 傾き p の接線(切片 = −f*(p))

ルジャンドル変換は 対合(involution): (f*)* = f。 凸関数を 2 回変換すると元に戻る。f と f* は「点と接線」の役割を入れ替えた双対表現。
右で f*(p) を数値的に再変換した (f*)* を薄線で重ねると、元の f(x) に一致することが確認できる。

原関数 f(x)

ルジャンドル変換 f*(p)

変換の可視化