0
(4-2.1*x1^2+x1^4/3)*x1^2+x1*x2+(-4+4*x2^2)*x2^2
, -10 < = X1 < = 10 -10 < = X2 < = 10 .
내가 쓰고있는이게 맞습니까? 그에서
min = -10;
max = 10;
x1 = min+max*rand();
x2 = min+max*rand();
T = 1.0;
Tmin = 0.0000001;
refresh = 0.9;
finalMin = (4-2.1*x1^2+x1^4/3)*x1^2+x1*x2+(-4+4*x2^2)*x2^2;
finalCoordinate=[x1,x2];
while(T>Tmin)
i=0;
while(i<=300)
x1= min+max*rand(1,1);
x2= min+max*rand(1,1);
newMin = (4-2.1*x1^2+x1^4/3)*x1^2+x1*x2+(-4+4*x2^2)*x2^2;
delta1 = finalMin-newMin;
if(newMin < finalMin)
finalMin=newMin;
finalCoordinate=[x1,x2];
elseif(2.71828^(delta/T))>(0+(rand(1)*1))
finalCoordinate=[x1,x2];
end;
i=i+1;
end;
T = T*refresh;
end;
그러나 왜,
elseif(2.71828^(delta/T))>(0+(rand(1)*1))
Error using^One argument must be a square matrix and the other must be a scalar. Use POWER (.^) for elementwise power.
어떻게에서 얻기 위해 100 %의 정확도는 좌표?
최대한 멀리 볼 수있는, 당신이 실제로 정의하지 않는'델타 : 일반적으로
, 당신의 문제를 신속하게 최적화 도구 상자에서
fmincon
으로 해결 될 수있는 비선형 제약 최적화 문제입니다 '어디든지. 비슷하게 이름이 지정된 'delta1'을 정의하십시오. – etmuseHTML이 아닌 내용에 HTML 스 니펫을 사용하지 마십시오. 어쨌든 작동하지 않는 모든 종류의 버튼 및 기타 무의미한 화면 채우기가 생성됩니다. – Adriaan