2

我更新了 OP,以便可以通过求解以下方程来解决原始问题。

 integral_from_0_N of (x * f(x))  dx  =  constant  // here , constant > 0 , N > 0

在哪里

f(x) = g(j,k) * (x/k)^(j-1) * exp(-x/k)   // here,  k > 0 , j > 0 

这里,g(j,k) = j / [ k* g1 (1+j, constant1/k) - k* g1 (1+j, constant2/k) + exp(-constant2/k) * k^(1 -j) * constant2^j - exp(-constant1/k) * k^(1-j) * constant1^j ] constant1 >= 0 , constant 2 > 0
其中

     g1( p, q) = integral_from_q_to_inf of (t^(p-1) * exp(-t)) dt

我需要找到 k 和 j 的解决方案。


我需要求解一个以积分为约束的数学优化模型。

Min.   | s1 - k1 | + | s2- k2 |
s.t.    
    integral_from_0_to_M of  f(x) = 1

    s1 = integral_from_0_to_M of  x * f(x) 
    s2 = integral_from_0_to_M of  x^2 * f(x) 
    M, k1 and k2 are positive numbers
    f(x) is a probability density function of x with arguments of  
       (alpha, beta, 0, M)
    f(x) = G * (x * beta)^(alpha -1) *  e^(-x * beta)
    G = alpha * beta / [( gamma(alpha, 0) - gamma(alpha, M) + e^(-M*beta) *    beat^(1-alpha) * M^alpha] 

 Decision variables:
      alpha > 0, beta > 0 

任何帮助,将不胜感激。

4

1 回答 1

2

为了将通常的fmincon应用于任何问题,您应该将目标函数(Min. | s1 - k1 | + | s2- k2 |)和约束定义为数值函数。因此,关键是如何将函数定义为定积分函数。您可以使用 matlab 函数quadv来做到这一点。

但是,我不得不说您的问题可能没有正确表述。请注意,如果 f(x) 是在支持 [0,M] 上定义的分布函数(它似乎是 gamma 函数或它的某种变体),integral_from_0_to_M of f(x)则始终等于 1。如果未在支持 [0 ,M],integral_from_0_to_M of f(x)永远不会等于 1。所以也许这个约束是不必要的或永远不会满足。我没有仔细检查您的情况,但请确保自行选择 alpha 和 beta 以确保满足此约束。

此外,这是定义参数为 ExpectedValue=k1 和 Variance=k2 的分布函数的一种非常不寻常的方法。是否不可能在分析上重新定义支持 [0,M] 中的 Gamma 函数,即截断 Gamma 函数?看看人们如何使用截断的正态分布来做到这一点......

于 2014-03-20T08:54:09.143 回答