为什么此线性编程请求在迭代时不起作用?

问题描述 投票:0回答:1

PREFACE这是一个有关使用线性建模来了解发电系统的问题,但是您实际上不需要了解这两者中的任何一个。我很确定这是关于R的问题。

我正在建立一个线性模型,以优化一个国家(称为“黎巴嫩”,但实际上我所使用的数据有点虚构)中每小时发电机的调度。我有一个可以令人满意地优化每小时发电量的模型,代码如下所示:

lp.newobjfun.norelax <- lpSolve::lp(dir = "min", objfun.lebanon.postwalk1, constraintmatrix.lebanon.postwalk.allgenerators, directions.lebanon.postwalk3, rhs.lebanon.postwalk4)

以上工作正常。当然,尽管每天执行此操作都没有用,所以我希望能够一年迭代地运行它。下面的代码应该这样做,但是返回的值(目标函数的值)始终为0。有什么想法我做错了吗?

for(i in 1:365) 
{
rhs.lebanon.postwalk4[1:24] = as.numeric(supplylebanon2010wholeyear[i,])

lp.newobjfun.norelax <- lpSolve::lp(dir = "min", objfun.lebanon.postwalk1, constraintmatrix.lebanon.postwalk.allgenerators, directions.lebanon.postwalk3, rhs.lebanon.postwalk4)

print(lp.newobjfun.norelax$solution); 
}

请注意,在第二个版本中,对前24个约束的右侧进行了修改,以影响一年中每小时的每小时用电量变化。

谢谢!

前言这是一个有关使用线性建模来了解发电系统的问题,但是您实际上不需要对这两者都了解太多。我很确定这是...

r linear-programming
1个回答
0
投票

[好吧,没关系,我已经弄清楚这是因为我没有处理过从kWh到MWh的单位转换。

© www.soinside.com 2019 - 2024. All rights reserved.