Borrar filtros
Borrar filtros

Different Output value of Functions

7 visualizaciones (últimos 30 días)
Khalid Khawaja
Khalid Khawaja el 14 de Mayo de 2024
Comentada: Voss el 14 de Mayo de 2024
function f_value = test_function(Solution)
% Beale function test functions
Implementation 1
x=Solution(1);
y=Solution(2);
f_value = (1.5- x+ x*y)^2 + (2.25 - x + x*y^2)^2 + (2.625 -x + x*y^2)^2;
% Optimal at f(3,0.5) = 0
%% Implementation 2
% x1 = Solution(1);
% x2 = Solution(2);
%
% term1 = (1.5 - x1 + x1*x2)^2;
% term2 = (2.25 - x1 + x1*x2^2)^2;
% term3 = (2.625 - x1 + x1*x2^3)^2;
%
% f_value = term1 + term2 + term3;
end
Hi, I have a test function for testing my optimization algorithm. These two implementations are same but they are generating different f_value for the same solution value. For example. for Solution [-3.3381,0.1668], Implementation1 generates f_value of 82.9832 whereas Imp2 generates 83.8981. I am unable to find the reason. This small difference is making huge difference and with imp1. Optimization algorithm doesnot converge to global solution. However, with imp2 it converges to global solution. Any help would be appreciated.

Respuesta aceptada

Voss
Voss el 14 de Mayo de 2024
Implementation 1 has x*y^2 in the third term; Implementation 2 has x1*x2^3 in term3.
f_value = (1.5- x+ x*y)^2 + (2.25 - x + x*y^2)^2 + (2.625 -x + x*y^2)^2;
% ^ squared
term1 = (1.5 - x1 + x1*x2)^2;
term2 = (2.25 - x1 + x1*x2^2)^2;
term3 = (2.625 - x1 + x1*x2^3)^2;
% ^ cubed
f_value = term1 + term2 + term3;
  2 comentarios
Khalid Khawaja
Khalid Khawaja el 14 de Mayo de 2024
Thank you very much. Problem solved. I don't know why I couldn't see this. Now the algorithm has converged to global optimal 3.00016245036652 0.500051623977431. Implementation 1 had a typo. Squared term instead of a cubed.
Voss
Voss el 14 de Mayo de 2024
You're welcome!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Simulink Design Optimization en Help Center y File Exchange.

Productos

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by