如何解决“检查错误的调用函数中参数数据类型或失踪参数实验”在矩阵线性规划

116(30天)
我想建立的矩阵线性规划来模拟distibuted能源的使用在一个微型智能电网"。
当设置矩阵得到以下错误消息(我也附加模拟价格数据)的一个例子:
检查不正确的参数数据类型或失踪参数的调用函数“经验”。
错误(第91行)
f = [OMVar_L + (exp (Y (n, T)) *φ+ FTDCharge) / EEff_L;(exp (X (n, T)) + ETDCharge);(exp (Y (n, T)) *φ+ FTDCharge) / HEff;0;
EDRCost;HDRCost];
我不明白为什么我得到这个错误,这就是为什么每个帮助是感谢。
代码提取:
%测试文件
N = 365;%的样本路径
T = 365;%的决策步骤
h = 24;每天%的小时数
φ= 3.412;%转换因子从MMBTU MWh (MMBTU /千瓦时)
%的时间步骤
dt = 1 / T;
%的需求数据
ED = 0 (T, 1);
高清= 0 (T, 1);
ED = readtable (“ED.xls”);
高清= readtable (“HD.xls”);
%定期折扣因素
β= exp (- r * dt);
%为X和Y生成N相关样本路径
X = 0 (N, T);
Y = 0 (N, T);
X = readtable (“模拟日志电价测试”);
Y = readtable (“模拟日志天然气价格测试”);
n = 1: n
%定义目标函数系数
f = [OMVar_L + (exp (Y (n, T)) *φ+ FTDCharge) / EEff_L;(exp (X (n, T)) + ETDCharge);(exp (Y (n, T)) *φ+ FTDCharge) / HEff;0;EDRCost;HDRCost];
%定义不等式约束系数和rhs
= [1 0 0 0 0 0
-HR_L 0 0 1 0 0
0 0 0 0 1 0
0 0 0 0 0 1);
b = [G_L * h;0;MaxEDR * ED (T);MaxHDR *高清(T)];
%定义等式约束系数和rhs
Aeq = [1 1 0 0 1 0
0 0 1 1 0 1);
说真的= [ED (T);高清(T)];
%设置上下限约束决策变量
1磅= 0(6日);
%解决LP
[x fval] = linprog (f, A、b Aeq,说真的,磅);
Gen_L (n, T) = x (1);
EPurchase (n, T) = x (2);
NGHeat (n, T) = x (3);
DGHeat (n, T) = x (4);
EDResponse (n, T) = x (5);
HDResponse (n, T) = x (6);
V (n) = fval;
结束
2的评论
Jakeb Chouinard
Jakeb Chouinard 2021年8月3日
编辑:Jakeb Chouinard 2021年8月3日
我们需要理解这些文件是什么样子,你想读的表。表的索引可能指的是错误的位置或东西被存储为一个字符,而不是翻倍,这将导致exp函数失败。

登录置评。

接受的答案

艾克Blechschmidt
艾克Blechschmidt 2021年8月4日
编辑:艾克Blechschmidt 2021年8月4日
以下返回一个表。
X = readtable (“模拟日志电价测试”);
如果你返回索引它使用下面的表。
X (1,1)
exp-function另一方面不是为表定义输入。
如果你替换所有
Y (n, T)
通过
Y {n, T}
它应该工作。

更多的答案(0)

类别

找到更多的在开始使用优化工具箱帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!