特定条件を満たす、入力値が大きいほど値が小さくなる関数を作りたい
現在の状況
個人的に制作しているプログラムで、特定の性質を持つ関数を実装する必要が出てきました。
- $f$の変数(=引数)は複数(個数は実装時には固定できる)で、それぞれが0以上1以下の実数
- $f$の値域は0以上の実数、可能ならば1以下にしたい
これに加え、目的の為には最低限
- $f$は連続関数である
- $f$は各変数について単調減少関数である
- $f$の引数それぞれを交換しても結果は変化しない
- $f(0, 0, ..., 0) = 1$
- $f(1, 0, ..., 0) = f(0, 1, ..., 0) = ... = f(0, 0, ..., 1) = 0$
を満たしていてほしいです。
恐らく満たされるであろう条件としては、
- 引数に1のものが含まれるならば、他は全て0になっている。
- 複数の引数が1であることはない
があります。
解決したいこと
前述の条件を満たす関数の例を知りたいです。一例の定義が明示されていれば、実装、また目的の為のチューニングはできそうです。
自分で試したこと
線形な関数でできれば…と思って考えてみましたが、思い浮かばないです…
0