我有两个指数函数,如何在这两个函数的范围内生成任何指数函数?

I have two exponential functions, how can I generate any exponential function within the range of the two functions?

提问人:leeweix 提问时间:3/18/2023 最后编辑:leeweix 更新时间:3/19/2023 访问量:98

问:

我有两个指数函数,例如:A1(1/λ)^k1 和 A2(1/λ)^k2 如何在这两个函数的范围内找到任何指数函数? 我们需要的功能也遵循这种形式。例如:Ax(1/λ)^kx,其中 Ax 和 kx 是我想知道的值。

enter image description here

这是我的伪代码:

def fun_random_gen(fun_upper_bound, fun_lower_bound)
    generate Ax(1/λ)^kx within fun_upper_bound, fun_lower_bound
    return Ax, kx

欣赏!

如果我使用上界和下界的线性组合,我无法生成这种曲线:在此处输入图像描述

此外,我尝试在 [A1,A2] 中随机生成 Ax 和在 [k1,k2] 中生成 kx,然后将生成的曲线限制在不超过上限和下限。但是,我需要很长很长的时间才能生成一条曲线。

Python 数学 随机 曲线拟合 多项式

评论

1赞 Tim Roberts 3/18/2023
当然,如果你找到 和 ,你就会得到答案。我认为代数保证了这一点。事实上,(0.0,1.0)中的任何alpha都应该起作用。Ax = (A1+A2)/2kx=(k1+k2)/2(A1*alpha + A2*(1-alpha))k
0赞 leeweix 3/18/2023
谢谢!对不起,我之前没有提到,λ 以 [700,880] 为界,这意味着生成的函数可以比上限和下限更倾斜或更平坦。
0赞 Tim Roberts 3/18/2023
我不知道这意味着什么。对于给定的 lambda,我说的是正确的。如果 lambda 是一个变量,那么就没有答案。
0赞 leeweix 3/19/2023
当然,你说的是对的。对不起,我的解释不好,我在上面编辑了我的文章。

答:

0赞 Matan Bendak 3/18/2023 #1

正如 Tim Roberts 所提到的,您可以使用代数来定义这样的函数并从中生成。

如果您愿意1.在任何时候都有不同的函数(在指数族的约束下)——正如 Tim 提到的,生成 alpha 和 k。

假设你没有代数函数,只有一个pythonic函数- 您可以生成一些 X,使用参数函数(fun_upper_bound、fun_lower_bound),然后使用它们之间的线性组合。

例:

  1. 生成一个 X
  2. upper_val = fun_upper_bound(X)
  3. lower_val = fun_lower_bound(X)
  4. 生成 alpha (between[0.0,1.0])
  5. 返回 alpha*upper_val + (1-alpha)*lower_val