我怎样才能找到哪些方程在Pypsa-lopf中是不可行的?

2024-10-06 06:43:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我的问题与PyPSA软件的使用有关。我想用PyPSA优化一个简单的机组组合问题。优化是不可行的,我试图找出哪些方程或变量的界限是导致不可行的。你知道吗

为此,我尝试调用pyomo.util.不可行模块。但我不确定应该在哪里/如何称呼他们。你知道吗

特别是在我的主代码中,我写了:

# basic imports and declarations
import pypsa

...

import logging

logging.basicConfig(level=logging.ERROR)
pypsa.opf.logger.setLevel(logging.INFO)

from pyomo.util.infeasible import log_infeasible_constraints 

# define network
...

# run optimization
network.lopf(network.snapshots)
log_infeasible_constraints(network)

但这不会返回任何关于不可行的日志信息。你知道吗

接下来,我想也许我应该调用opf.py公司在其中构建并解决优化问题的文件,因此我在顶部添加了:

# my addition on the opf.py file
from pyomo.util.infeasible import log_infeasible_constraints

..

在network_lopf(..)函数中,最后:

log_infeasible_constraints(network)

但还是没什么。你知道吗

我认为我无法解决这个问题,因为我对我的主代码pypsa和pyomo的通信方式理解不足。如果有人能指出我的方法中的错误,以及我应该在哪里/如何“请求”pyPSA向我展示不可行的约束,那将非常有帮助。感谢您抽出时间阅读我的问题!你知道吗


Tags: 代码frompyimportlogloggingutilnetwork