MATLAB is not responding
조회 수: 5 (최근 30일)
이전 댓글 표시
Hello everybody, I am a beginner in Matlab and I have a problem with optimization using fmincon. I use an objective function file, a (non linear) constraints file and a script file which contains the fmincon function. When I run the last file Matlab's not responding.
These are the codes, thank you
*objective function file:*
function [ C ] = objparadeigma4(var)
% αντικειμενική συνάρτηση του προβλήματος 4
L=30;
V=80;
D=var(1);
W=var(2);
C= 255*L+137*L*D^1.5+55500*W^0.5+10500*W^0.925+17000;
% Δεν καταλαβαίνει τη μεταβλητή W, μάλλον επειδή δεν ξέρει μέχρι στιγμής το
% D
end
*constraints file*
function [c,ceq] = paradeigma4constraints(var)
% Περιέχει τους μη γραμμικούς περιορισμούς του προβλήματος 4
L=30;
V=80;
D=var(1);
W=var(2);
%Περιορισμοί
c=[];
ceq=[2.66*10^(-9)*(L*V^3)/D^5+1.78*10^(-10)*(L*V^2.68)/D^4.68-W];
end
script file
% script paradeigma4.m
% επιλύει το πρόβλημα 4
clc
L=30;
V=80;
D=var(1);
W=var(2);
var0=[1.1,0.25];
[D,W,C]=fmincon(@objparadeigma4,var0,[],[],[],[],0.25,6,@paradeigma4constraints);
disp('η βελτιστη τιμή της συναρτήσεως είναι c='),disp(C),disp('για D και για W = ')
disp(D),disp(W)
댓글 수: 5
Oleg Komarov
2012년 2월 17일
I think it's all those comments in greek, Matlab is trying to tarnslate them but it's not very good at languages...
채택된 답변
Selwyn
2012년 2월 17일
As a debugging suggestion, take the semicolon out of your [D,W,C]=fmincon..... statement and watch for output at the command line.
It should show if things are moving or standing still. If its standing still then I'd guess its something inside fmincon, but if its moving and giving values for D,W and C that you expect then its just busy calculating things.
추가 답변 (0개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!