Non convex objective funtion

1 回表示 (過去 30 日間)
Nikolas Spiliopoulos
Nikolas Spiliopoulos 2021 年 9 月 22 日
Hi there,
I a have an objective function which in some areas is not convex.
Is there any way to relax it and then use fmin con ?
thanks!!
Here I have writen a piece of code to prove that second derivative for a particular temeprature T_ext is negative:
cell_capacity=45;
T_ext=25;
T=273.15+T_ext;
B2=-0.0067*T+2.35;
%% B1
a=8.89*10^-6;
b=-0.0053;
c=0.7871;
B1=a*T^2+b*T+c;
syms x
f=B1*exp(B2*x/cell_capacity)*(x^2/(2*0.8*cell_capacity));
p=diff(f);
q=diff(p);
ff = matlabFunction(q);
x=(0.1*cell_capacity):1:(0.9*cell_capacity);
figure(1)
title('Second derivative for different temperatures')
xlabel('Current (Ah)')
ylabel('second derivative')
plot(x, ff(x))
hold on
ff_final=ff(x)';
  5 件のコメント
Walter Roberson
Walter Roberson 2021 年 9 月 22 日
You can never be sure of global minimality for non-convex , n-dimensional minimization.
... unless you can use calculus to find the complete set of critical points, and you can find all of the boundary points, and you can evaluate the function at all of the critical points and all of the boundary points and select the minima.
However, you need symbolic processing to find critical points once you get beyond fairly simple functions.
Nikolas Spiliopoulos
Nikolas Spiliopoulos 2021 年 9 月 23 日
ok thanks,
that's why I was wondering if I could convert it to a convex function.
Anyway, I'll see what I can do thanks

サインインしてコメントする。

回答 (0 件)

カテゴリ

Help Center および File ExchangeMathematics についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by