I think the primary problem here is that case3375wp has an isolated bus. If I 
remove it, all of the following solvers work for me MIPS, PDIPM, IPOPT, KNITRO.

mpc = loadcase(‘case3375wp’);
mpc = extract_islands(mpc, 1);
r = runopf(mpc);

Interestingly, for me MIPS is faster than both PDIPM and my build of IPOPT for 
this case. 

   Ray


> On Feb 18, 2015, at 5:46 AM, Irina Boiarchuk <[email protected]> wrote:
> 
> Dear Matpower community,
> 
> My question is about optimization of large scale systems and appropriate 
> solvers. 
> 
> I was testing OPF for the example systems, distributed with Matpower and I 
> followed the Matpower recommendations to use PDIPM and IPOPT solvers to deal 
> with large models.
> 
> All provided examples converged successfully using both solvers, but the case 
> 'case3375wp' of Polish system has caused me some problems:
> 
> 1. when I run opf with PDIPM solver, the optimization fails;
> 
> 2. when I run opf with IPOPT solver, the optimization lasts too long (> 1 
> hour) so I aborted it before it finished.
> 
> I use pre-compiled binary version of IPOPT from the website 
> http://www.coin-or.org/download/binary/Ipopt/ 
> <http://www.coin-or.org/download/binary/Ipopt/> . It works fine with smaller 
> systems, but not with the 'case3375wp' ...
> 
> Which optimizer should I use to obtain convergent opf solution for 
> 'case3375wp' ?
> 
> 
> Any advice is appreciated! 
> 
> 
> Kind regards, 
> Irina Boiarchuk
> 
> 
> On 17 February 2015 at 16:55, Irina Boiarchuk <[email protected] 
> <mailto:[email protected]>> wrote:
> Thank you, Ray, your reply gives me enough motivation to try using IPOPT!
> 
> Best,
> Irina
> 
> On 17 February 2015 at 16:41, Irina Boiarchuk <[email protected] 
> <mailto:[email protected]>> wrote:
> Dear Olaf,
> 
> thank you for the quick reply!
> 
> It would be great to receive such version for testing.
> 
> Is the problem of compatibility with R2014a and later of Matlab solved there?
> 
> Is there any guidance how to install the connection with Matlab?
> 
> Sorry for multiple questions!
> 
> 
> I'm looking forward to your reply,
> 
> Kind regards
> Irina Boiarchuk
> 
> On 17 February 2015 at 16:27, Olaf Schenk <[email protected] 
> <mailto:[email protected]>> wrote:
> Dear Irina,
> 
> IPOPT can handle large-scale systems MUCH better than PDIPM or MIPS. We are 
> in the process of building a Matpower IPOPT binary version that Ray 
> Zimmermann will put on the matpower webpage.
> 
> If you like we can send you a binary so that you can test it.
> 
> best regards,
> Olaf Schenk
> 
> 
>  
> On 17.02.2015 16:22, Irina Boiarchuk wrote:
>> Dear all,
>> 
>> my questions are about using IPOPT for optimization of large-scale systems.
>> 
>> 1. Which MATLAB version do you have such that IPOPT works? (on their website 
>> it is said that there are some problems with R2014a of Matlab - i was 
>> wondering if it is still the case...)
>> 
>> 2. Does IPOPT handle large-scale systems better than PDIPM or MIPS?
>> 
>> I would appreciate any help regarding this issue!
>> 
>> Kind regards,
>> Irina Boiarchuk
>> 
>> 
>> 
>> 
>> 
>> On 16 February 2015 at 22:49, Ray Zimmerman <[email protected] 
>> <mailto:[email protected]>> wrote:
>> Absolutely.
>> 
>>     Ray
>> 
>>> On Feb 16, 2015, at 12:11 PM, Bouchekara Houssem 
>>> <[email protected] <mailto:[email protected]>> wrote:
>>> 
>>> Iam not using runopf but I have implemented my one OPF using MATPOWER 
>>> functions.
>>> Another question, I guess that providing the Jacobian structure, Hessian 
>>> and Hessian structure will speed up the convergence?
>>> 
>>> 
>>> On 2/16/2015 3:21 PM, Ray Zimmerman wrote:
>>>> Again, it is not clear to me whether you are simply using MATPOWER’s OPF 
>>>> (i.e. runopf) or implementing your own. It would seem you’re implementing 
>>>> your own since the IPOPT output indicates that the Jacobian structure, 
>>>> Hessian and Hessian structure are not supplied. With MATPOWER’s OPF 
>>>> implementation that should not be the case. Here’s what I get …
>>>> 
>>>> >> mpopt = mpoption('out.all', 0, 'verbose', 2, 'opf.ac.solver', 'IPOPT'); 
>>>> >> runopf('case30', mpopt)                                                 
>>>> 
>>>> MATPOWER Version 5.1-dev, 06-Feb-2015 -- AC Optimal Power Flow
>>>> This is Ipopt version 3.10.3, running with linear solver mumps.
>>>> 
>>>> Number of nonzeros in equality constraint Jacobian...:      454
>>>> Number of nonzeros in inequality constraint Jacobian.:      324
>>>> Number of nonzeros in Lagrangian Hessian.............:      254
>>>> 
>>>> Total number of variables............................:       71
>>>>                      variables with only lower bounds:        0
>>>>                 variables with lower and upper bounds:       42
>>>>                      variables with only upper bounds:        0
>>>> Total number of equality constraints.................:       60
>>>> Total number of inequality constraints...............:       82
>>>>         inequality constraints with only lower bounds:        0
>>>>    inequality constraints with lower and upper bounds:        0
>>>>         inequality constraints with only upper bounds:       82
>>>> 
>>>> iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du 
>>>> alpha_pr  ls
>>>>    0  4.9036963e+02 1.21e+00 1.06e+01   0.0 0.00e+00    -  0.00e+00 
>>>> 0.00e+00   0
>>>>    1  5.2670003e+02 4.79e-01 1.87e+02   0.1 1.28e+00    -  3.77e-01 
>>>> 5.58e-01h  1
>>>>    2  5.7233174e+02 1.44e-02 8.54e+01  -0.4 6.07e-01    -  1.00e+00 
>>>> 1.00e+00h  1
>>>>    3  5.7307970e+02 1.39e-02 5.98e+01  -1.0 9.22e-02    -  9.99e-01 
>>>> 2.91e-01h  1
>>>>    4  5.7635279e+02 5.84e-03 1.90e+02  -1.3 1.49e-01    -  1.00e+00 
>>>> 1.00e+00h  1
>>>>    5  5.7698733e+02 9.81e-04 6.93e+00  -2.0 6.20e-02    -  1.00e+00 
>>>> 1.00e+00h  1
>>>>    6  5.7693657e+02 7.09e-05 5.84e+00  -2.9 1.30e-02    -  1.00e+00 
>>>> 1.00e+00h  1
>>>>    7  5.7689674e+02 1.42e-05 6.89e-01  -3.8 7.65e-03    -  1.00e+00 
>>>> 1.00e+00h  1
>>>>    8  5.7689223e+02 9.17e-06 5.46e-02  -5.3 6.06e-03    -  1.00e+00 
>>>> 1.00e+00h  1
>>>>    9  5.7689227e+02 1.58e-06 1.08e-02  -6.8 2.65e-03    -  1.00e+00 
>>>> 1.00e+00h  1
>>>> iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du 
>>>> alpha_pr  ls
>>>>   10  5.7689232e+02 2.06e-07 1.63e-03  -8.3 9.69e-04    -  1.00e+00 
>>>> 1.00e+00h  1
>>>>   11  5.7689233e+02 1.32e-08 1.19e-04  -9.3 2.47e-04    -  1.00e+00 
>>>> 1.00e+00h  1
>>>>   12  5.7689233e+02 1.13e-10 1.08e-06 -11.0 2.29e-05    -  1.00e+00 
>>>> 1.00e+00h  1
>>>>   13  5.7689233e+02 1.36e-14 9.86e-11 -11.0 2.15e-07    -  1.00e+00 
>>>> 1.00e+00h  1
>>>> 
>>>> Number of Iterations....: 13
>>>> 
>>>>                                    (scaled)                 (unscaled)
>>>> Objective...............:   1.3985268672263120e+02    
>>>> 5.7689233273085370e+02
>>>> Dual infeasibility......:   9.8586584428882276e-11    
>>>> 4.0666966076913940e-10
>>>> Constraint violation....:   1.3558539391522494e-14    
>>>> 1.3558539391522494e-14
>>>> Complementarity.........:   1.0529404232602505e-11    
>>>> 4.3433792459485328e-11
>>>> Overall NLP error.......:   9.8586584428882276e-11    
>>>> 4.0666966076913940e-10
>>>> 
>>>> 
>>>> Number of objective function evaluations             = 14
>>>> Number of objective gradient evaluations             = 14
>>>> Number of equality constraint evaluations            = 14
>>>> Number of inequality constraint evaluations          = 14
>>>> Number of equality constraint Jacobian evaluations   = 14
>>>> Number of inequality constraint Jacobian evaluations = 14
>>>> Number of Lagrangian Hessian evaluations             = 13
>>>> Total CPU secs in IPOPT (w/o function evaluations)   =      0.035
>>>> Total CPU secs in NLP function evaluations           =      0.046
>>>> 
>>>> EXIT: Optimal Solution Found.
>>>> >> 
>>>> 
>>>> 
>>>> Regarding the issue of the objective function decreasing with each 
>>>> iteration, that is not necessarily to be expected with primal-dual 
>>>> interior point solvers such as the one used by IPOPT. The objective 
>>>> function may need to increase in order to improve feasibility.
>>>> 
>>>>     Ray
>>>> 
>>>> 
>>>> 
>>>> 
>>>>> On Feb 14, 2015, at 2:33 PM, Bouchekara Houssem 
>>>>> <[email protected] <mailto:[email protected]>> 
>>>>> wrote:
>>>>> 
>>>>> Dear all
>>>>> I am trying to solve the OPF using the IPOPT solver (application on the 
>>>>> IEEE 30 bus test system).
>>>>> However, I have some issues. 
>>>>> 
>>>>> The first one is that this solver takes many iterations and at the end, I 
>>>>> receive the message "Maximum Number of Iterations Exceeded.". if I 
>>>>> increase the number of iterations I obtain the same message on the time 
>>>>> of simulation !!!
>>>>> 
>>>>> The second issue or question is that the objective function keep changing 
>>>>> but not always decreasing as you can see in the herewith results. I have 
>>>>> run the same problem using the fmincon function the objective function 
>>>>> does not increase at all it decreases all the time until convergence !!!
>>>>> 
>>>>> Regards
>>>>> 
>>>>> 
>>>>> Results
>>>>> %-------------------------------------------------------------------------------------------------------------------
>>>>> ------------------------------------------------------
>>>>> Nonlinear Program (NLP) Optimization
>>>>>  min  f(x)
>>>>>  s.t. lb <= x <= ub
>>>>>       cl <= c(x) <= cu
>>>>> ------------------------------------------------------
>>>>>    Problem Properties: 
>>>>> # Decision Variables:       24
>>>>> # Constraints:             233
>>>>> # Bounds:                 48
>>>>> # Nonlinear Inequality:  185
>>>>> ------------------------------------------------------
>>>>>   Solver Parameters:
>>>>> Solver:                    IPOPT
>>>>> Objective Gradient:        @(x)mklJac(prob.fun,x,1) [numdiff]
>>>>> Constraint Jacobian:       @(x)mklJac(prob.nlcon,x,nnl) [numdiff]
>>>>> Jacobian Structure:        Not Supplied
>>>>> Lagrangian Hessian:        Not Supplied
>>>>> Hessian Structure:         Not Supplied
>>>>> ------------------------------------------------------
>>>>> 
>>>>> ******************************************************************************
>>>>> This program contains Ipopt, a library for large-scale nonlinear 
>>>>> optimization.
>>>>>  Ipopt is released as open source code under the Eclipse Public License 
>>>>> (EPL).
>>>>>          For more information visit http://projects.coin-or.org/Ipopt 
>>>>> <http://projects.coin-or.org/Ipopt>
>>>>> ******************************************************************************
>>>>> 
>>>>> This is Ipopt version 3.11.7, running with linear solver ma57.
>>>>> 
>>>>> Number of nonzeros in equality constraint Jacobian...:        0
>>>>> Number of nonzeros in inequality constraint Jacobian.:     2712
>>>>> Number of nonzeros in Lagrangian Hessian.............:        0
>>>>> 
>>>>> Total number of variables............................:       24
>>>>> variables with only lower bounds:        0
>>>>> variables with lower and upper bounds:       24
>>>>> variables with only upper bounds:        0
>>>>> Total number of equality constraints.................:        0
>>>>> Total number of inequality constraints...............:      113
>>>>> inequality constraints with only lower bounds:        0
>>>>> inequality constraints with lower and upper bounds:       72
>>>>> inequality constraints with only upper bounds:       41
>>>>> 
>>>>> iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du 
>>>>> alpha_pr  ls
>>>>>    0 8.2505796e+002 3.92e+001 2.39e+000   0.0 0.00e+000    -  0.00e+000 
>>>>> 0.00e+000   0
>>>>>    1 8.2333913e+002 3.43e+001 2.88e+001   0.0 3.26e+000    -  4.40e-001 
>>>>> 7.91e-002f  2
>>>>>    2 8.1521317e+002 0.00e+000 6.48e+001  -0.4 5.64e+000    -  8.84e-001 
>>>>> 1.00e+000f  1
>>>>>    3 8.0493896e+002 0.00e+000 6.52e+001   0.0 3.96e+001    -  8.87e-001 
>>>>> 4.80e-001f  2
>>>>>    4 8.0277302e+002 0.00e+000 2.39e+001  -0.1 3.95e+000    -  9.88e-001 
>>>>> 1.00e+000h  1
>>>>>    5 8.0079336e+002 0.00e+000 3.27e+001  -0.8 5.65e+000    -  9.86e-001 
>>>>> 1.00e+000f  1
>>>>>    6 7.9975232e+002 0.00e+000 1.50e+001  -1.3 1.64e+000    -  9.99e-001 
>>>>> 7.80e-001f  1
>>>>>    7 7.9977509e+002 0.00e+000 1.70e+001  -1.1 1.52e+000    -  1.00e+000 
>>>>> 1.00e+000h  1
>>>>>    8 7.9947341e+002 0.00e+000 2.73e+000  -1.7 7.49e-001    -  9.98e-001 
>>>>> 1.00e+000h  1
>>>>>    9 7.9933411e+002 0.00e+000 1.06e+001  -2.2 2.68e+000    -  9.99e-001 
>>>>> 1.00e+000h  1
>>>>> iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du 
>>>>> alpha_pr  ls
>>>>>   10 7.9931298e+002 0.00e+000 1.50e+001  -1.9 4.96e+000    -  1.00e+000 
>>>>> 1.00e+000H  1
>>>>>   11 7.9945021e+002 0.00e+000 2.00e+001  -1.6 9.10e+000    -  1.00e+000 
>>>>> 4.53e-001f  2
>>>>>   12 7.9940918e+002 0.00e+000 5.80e+000  -1.7 2.61e+000    -  7.69e-001 
>>>>> 1.00e+000h  1
>>>>>   13 7.9935727e+002 0.00e+000 9.48e+000  -1.7 5.58e+000    -  8.33e-001 
>>>>> 2.62e-001h  2
>>>>>   14 7.9970882e+002 0.00e+000 1.04e+001  -1.7 4.50e+000    -  1.00e+000 
>>>>> 1.00e+000H  1
>>>>>   15 7.9936389e+002 0.00e+000 1.04e+001  -1.7 3.89e+000    -  1.00e+000 
>>>>> 1.00e+000H  1
>>>>>   16 7.9932908e+002 0.00e+000 2.52e+000  -1.7 1.06e+001    -  5.30e-001 
>>>>> 8.14e-002h  3
>>>>>   17 7.9940245e+002 0.00e+000 9.01e+000  -1.7 9.80e-001    -  1.00e+000 
>>>>> 1.00e+000h  1
>>>>>   18 8.0110400e+002 0.00e+000 2.25e+001  -1.7 1.04e+001    -  5.27e-001 
>>>>> 1.00e+000H  1
>>>>>   19 7.9946399e+002 0.00e+000 4.25e+000  -1.7 1.20e+001    -  1.00e+000 
>>>>> 1.00e+000F  1
>>>>> iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du 
>>>>> alpha_pr  ls
>>>>>   20 7.9948550e+002 0.00e+000 1.00e+001  -1.3 1.24e+001    -  1.00e+000 
>>>>> 2.28e-001f  2
>>>>>   21 7.9975197e+002 0.00e+000 1.65e+001  -1.5 3.80e+000    -  7.44e-001 
>>>>> 1.00e+000h  1
>>>>>   22 8.0029390e+002 0.00e+000 4.95e+001  -1.5 4.78e+000    -  1.00e+000 
>>>>> 7.66e-001H  1
>>>>>   23 7.9969885e+002 0.00e+000 3.75e+001  -1.5 7.79e+000    -  4.43e-001 
>>>>> 7.55e-001F  1
>>>>>   24 8.0153952e+002 0.00e+000 5.42e+001  -1.5 6.09e+000    -  3.71e-001 
>>>>> 1.00e+000H  1
>>>>>   25 8.0083849e+002 0.00e+000 5.53e+001  -1.5 9.48e+000    -  3.14e-001 
>>>>> 1.60e-001f  3
>>>>>   26 8.0055898e+002 0.00e+000 5.68e+001  -1.5 7.24e+001    -  1.35e-001 
>>>>> 2.09e-002f  3
>>>>>   27 7.9993130e+002 0.00e+000 2.14e+001  -1.5 1.56e+001    -  1.22e-001 
>>>>> 1.16e-001f  2
>>>>>   28 7.9966609e+002 0.00e+000 2.34e+001  -1.5 1.13e+001    -  1.91e-001 
>>>>> 2.55e-001h  1
>>>>>   29 7.9951187e+002 0.00e+000 4.68e+000  -1.5 1.61e+001    -  7.25e-002 
>>>>> 2.62e-001f  1
>>>>> iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du 
>>>>> alpha_pr  ls
>>>>>   30 8.0267261e+002 0.00e+000 2.31e+001  -1.5 9.14e+000    -  6.12e-001 
>>>>> 9.49e-001H  1
>>>>>   31 8.0226367e+002 0.00e+000 1.04e+001  -1.5 1.01e+001    -  3.30e-001 
>>>>> 8.99e-002f  3
>>>>>   32 8.0192666e+002 0.00e+000 1.32e+001  -1.5 2.47e+001    -  8.06e-002 
>>>>> 2.93e-002f  4
>>>>>   33 8.0132986e+002 0.00e+000 9.01e+000  -1.5 1.40e+001    -  5.76e-001 
>>>>> 1.32e-001f  1
>>>>>   34 8.0105092e+002 0.00e+000 6.84e+000  -1.5 7.34e+000    -  8.30e-001 
>>>>> 9.60e-002f  3
>>>>>   35 7.9977021e+002 0.00e+000 3.28e+001  -1.5 9.26e+000    -  3.27e-001 
>>>>> 8.37e-001F  1
>>>>>   36 8.0033089e+002 0.00e+000 4.86e+001  -1.5 4.62e+000    -  1.00e+000 
>>>>> 1.00e+000H  1
>>>>>   37 7.9996104e+002 0.00e+000 1.06e+001  -1.5 5.43e+000    -  1.96e-001 
>>>>> 1.75e-001f  2
>>>>>   38 7.9951421e+002 0.00e+000 9.42e+000  -1.5 1.59e+001    -  2.53e-001 
>>>>> 1.96e-001f  2
>>>>>   39 7.9967929e+002 0.00e+000 3.01e+001  -1.5 3.16e+000    -  9.19e-001 
>>>>> 7.79e-001H  1
>>>>> iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du 
>>>>> alpha_pr  ls
>>>>>   40 7.9962530e+002 0.00e+000 2.19e+001  -1.5 6.91e+000    -  1.80e-001 
>>>>> 1.78e-001h  3
>>>>>   41 7.9951740e+002 0.00e+000 1.26e+000  -1.5 1.88e+000    -  1.00e+000 
>>>>> 1.00e+000h  1
>>>>>   42 8.0007055e+002 0.00e+000 9.26e+000  -1.5 3.65e+000    -  1.00e+000 
>>>>> 1.00e+000H  1
>>>>>   43 7.9994265e+002 0.00e+000 7.74e+000  -1.5 7.16e+000    -  5.93e-001 
>>>>> 9.68e-002h  4
>>>>>   44 7.9969538e+002 0.00e+000 6.51e+000  -1.5 7.45e+000    -  6.32e-001 
>>>>> 1.92e-001h  2
>>>>>   45 7.9957525e+002 0.00e+000 4.13e+000  -1.5 1.30e+001    -  4.92e-001 
>>>>> 5.31e-002h  3
>>>>>   46 7.9993363e+002 0.00e+000 2.71e+001  -1.5 4.17e+000    -  4.89e-001 
>>>>> 1.00e+000H  1
> ...
> 
> [Message clipped]  
> 
> 
> 

Reply via email to