Dear all. I have been trying to use the R implementation of NLOPT to solve a
simple problem. I need to find the 1-Median Center with fuzzy data. A fuzzy
number is a 4-tuple M=(m1,m2,m3,m4) for which m(k)<=m(k+1). The 1-Median
Center is the point in X,Y that solves:
Minimize E(Sum(i=1:n) sqrt(Sum(j in {x,y}) (abs(X(i,j)+Im(C(j))))^2))
ST:
C(j,k)<=C(j,k+1), k=1:4
C(j,4)-C(j,1)<=max(X(i,j,4)-X(i,j,1))
where:
E(M)=(m1+2*m2+2*m3+m4)/6
Im(M)=(-m4,-m3,-m2,-m1)
abs(M) = PC(M), if E(M)>0; E(Im(M)), if E(M)<0; (0,0,0,0), otherwise.
PC(M) = M, if m1>=0;
(0,m2-g1,m3-g1,m4-g1), if m1<0 and m2+m1/5>=0;
(0,0,m3-g2,m4-g2), if m2-m1/5<0 and m1/3 + 2*m2/3 + m3>=0;
(0,0,0,m4-g3), if m1/3 + 2*m2/3 + m3<0;
(0,0,0,0), otherwise.
g1=-m1/5
g2=(-m1-2*m2)/3
g3= -m1-2*m2-2*a3
As "n" grows, the number of terms of the gradient also grow by a factor of
8, so doing a gradient based method would be out of the question. I decided
to use "NLOPT_LN_BOBYQA", thinking it wouldn't be that hard to solve this
problem. Nonetheless, I have found that the second constraint, which limits
the maximum uncertainty of the solution, is repeatedly violated by the
solver. How can I control this problem? Or is it a limitation inherent to
the solver?
I hope you can help me. Best regards.
-------------------------------------------------
Julio Rojas
[email protected]
_______________________________________________
NLopt-discuss mailing list
[email protected]
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/nlopt-discuss