0

我正在尝试使用 Matlab 中的 cvx 包解决几何规划问题。目标函数是最大化,但在其中,我必须定义一个最小函数。当我尝试运行代码时,出现此错误

使用 cvx/mtimes 时出错(第 41 行)内矩阵尺寸必须一致。

cvx/mrdivide 中的错误(第 15 行)z = mtimes(x, y, 'rdivide');

代码在这里:

cvx_begin gp
variables P_1 P_2
maximize ((D * (log2(P_1 * min(G_1/(np + (P_2 * G_2)))))) + log2((P_2 * G_3)/(np + (P_1 * G_3))))
subject to
    P_2 <= P_max_Cell;
    P_1 <= P_max_D2D;
    P_2 * (G_3/(np + (P_1 * G_3))) >= C_th;
    min(G_1/(np + (P_2 * G_2))) * P_1 >= D_th;
    ((np + (P_2 * G_2)) * min(G_1/(np + (P_2 * G_2)))) <= G_1; cvx_end

我以前的问题已经解决了,但是我现在有另一个错误,我现在为什么会发生它,但我不知道如何解决它。错误是:

有纪律的凸编程错误:无法执行操作:{log-convex} .* {log-concave}

它属于最后一行代码。谁能帮我解决这个问题?

4

0 回答 0