<DIV>
<DIV>Dear IPOPT users</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp; I would like to share my java interface originate form c++ version of IPOPT .&nbsp;My codes were&nbsp;changed from&nbsp; Rafael de Pelegrini Soares's original code.&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp; Rafael de Pelegrini Soares's codes are originally derived form C version of IPOPT,which has limited functions.&nbsp;I derived my codes from C++ version of IPOPT, which is much more powerful than C or Fortran version.</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp; &nbsp;I also fix a bug in Rafael de Pelegrini Soares's code on function setProblemScaling, In his original code thefunction setProblemScaling has no use.<BR>&nbsp;&nbsp;&nbsp; I added some useful functions in JIpopt, such as get_scaling_parameters or get_number_of_nonlinear_variables or get_list_of_nonlinear_variables. You can add any more functions as you like. Follow my structure it is very easy now.</DIV>
<DIV>&nbsp;&nbsp;&nbsp; </DIV>
<DIV>&nbsp;&nbsp;&nbsp;On my platform Windows XP,I use&nbsp;Visual Studio.net 2005, JDK 1.6.0, I test HS071 and LukVlE1 LukVlI1 with size 20000. I test three jni dll. one is from Rafael de Pelegrini Soares, he said he use mumps, I call it jipopt_c_mumps, one is generate using Rafael de Pelegrini Soares&nbsp;'s c version jipopt with ma27,I call it&nbsp;jipopt_c_ma27 , and my own c++ version jni, I call it jipopt_c++. Running times below:</DIV>
<DIV>&nbsp;</DIV>
<DIV>problem C++_use_ma27&nbsp; jipopt_c_mumps &nbsp; jipopt_c_ma27&nbsp;&nbsp; jipopt_c++&nbsp; </DIV>
<DIV>HS071&nbsp;&nbsp;&nbsp;0.015/0.000&nbsp;&nbsp;&nbsp;0.015/0.016&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;0.015/0.016&nbsp;&nbsp;&nbsp; 0.015/0.016</DIV>
<DIV>LukVlE1 0.375/0.172&nbsp;&nbsp; 2.171/0.579&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0.438/0.687&nbsp;&nbsp;&nbsp; 0.452/0.611</DIV>
<DIV>LukVlI1 2.310/0.549&nbsp; &nbsp;10.251/1.968&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2.260/2.388&nbsp;&nbsp;&nbsp; 2.265/2.095</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp; As you can see, the C++ version of JIpopt is the same with C version of JIpopt, By the way, the results are same. The MUMPS version is much&nbsp;slower than MA27.&nbsp;Original C++ version is faster than jni version, but their computational afford&nbsp;are in the same order.</DIV>
<DIV>&nbsp;&nbsp;&nbsp; </DIV>
<DIV>&nbsp;&nbsp;&nbsp; When I test&nbsp;&nbsp;jipopt_c version's setScalingParameter, I use HS071&nbsp;and it's obj_scaling=-1, it get the minimum obj not the maximum, which is 17.014..., but I test C++ version and jipopt_c++ version&nbsp;of HS071 get_scaling_parameter with obj_scaling=-1, I get the maximum obj_val, which is 134.7338.... So I can say, Rafael de Pelegrini Soares's codes have errors in setScalingParameter. Be aware of that!</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp; If you have problem or you need me to add another functions, please contact me.</DIV>
<DIV>&nbsp;&nbsp;&nbsp; My codes are attached with this e-mail, Can Andreas give me a place to share them. Thank you!</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>Tong Kewei</DIV>
<DIV>Ph.D. Candidate</DIV>
<DIV>School of Astronautics</DIV>
<DIV>Beihang University</DIV>
<DIV>Beijing</DIV>
<DIV>China<BR></DIV></DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV><br><!-- footer --><br><hr>
<a style="font-size:14px;line-height:15px; color:#000; text-decoration:none" href="http://event.mail.163.com/chanel/click.htm?from=NO_24&domain=126" target="_blank"><span style="text-decoration:underline; color:blue">火 速 参 加 2007 网 易 校 园 美 女 大 赛, 超 过 10 万 的 现 金 奖 金 在 等 您!!>></span> </a>