Chcę zoptymalizować funkcję celu z zależnymi zmiennymi decyzyjnymi, jak poniżej.
Sum [I * (x(i) - x(i-1) + lo(i) - g(i)) * p(i)]
Zwróć uwagę, że zmienna decyzyjna jest tylkox (i) i x (i-1) to wartość pochodząca z poprzedniego etapu optymalizacji. Nie mam pojęcia, jak napisać tę funkcję celu. Czy powinienem używać funkcji obsługi? Dzięki
Odpowiedzi:
0 dla odpowiedzi № 1Być może właśnie o to pytasz?
Wyobraź sobie, że masz wektor x 3 na 1.
[x_1
x = x_2
x_3]
i chcesz obliczyć:
[x_1 [0
y= x_2 - x_1
x_3 x_2]
Możesz to zrobić w Matlab z kodem:
y = x - [0;x(1:end-1)];
działa to, ponieważ odwołuje się do x (1: end-1) [x_1; x_2]
. Możesz użyć tego fragmentu, aby napisać swoją ogólną funkcję celu.