Искам да оптимизирам една обективна функция с зависимите променливи на решението, както е описано по-долу.
Sum [I * (x(i) - x(i-1) + lo(i) - g(i)) * p(i)]
Моля, имайте предвид, че променливата за решение е самоx (i) и x (i-1) е стойност, получена от предишната стъпка на оптимизация. Нямам представа как да напиша тази обективна функция. Трябва ли да използвам функционален манипулатор? Благодаря
Отговори:
0 за отговор № 1Може би това е това, което питате?
Представете си, че имате 3 x 1 вектор x.
[x_1
x = x_2
x_3]
и искате да изчислите:
[x_1 [0
y= x_2 - x_1
x_3 x_2]
Можете да направите това в Matlab с кода:
y = x - [0;x(1:end-1)];
това работи, тъй като x (1: end-1) ще се отнася до [x_1; x_2]
, Можете да използвате този фрагмент, за да напишете общата ви цел функция.