Why does my optimization (fmincon) buffer following 9 iterations (cursor continues to blink), and then not proceed with further iterations?

1 次查看(过去 30 天)
I am using fmincon to solve a constrained optimization problem.
My problem involves 8900 design variables and has 5846 non-linear equality constraints (0 linear equality, 0 linear inequality and 0 non-linear inequality constraints). The non-linear equality constraints Jacobian has a known sparsity pattern which I am trying to exploit (avoid unnecessary computations to be performed by Matlab), and I am trying to numerically compute each of the terms using forward differences. I am also prodiving the numerical gradient of the objective function.
My optimization runs for several iterations. However, after several iterations the cursor continues to blink underneath the iterative display table and the optimization does not proceed. I have left the desktop computer running for more than 13 hours to see if it will continue to iterate, but I still see a blinking cursor with no error message.
Please could somebody provide some troubleshooting advice for how I may proceed? Is it perhaps a memory issue?
Kind regards,
Nicos Haralabidis

回答(1 个)

Rishabh Rathore
Rishabh Rathore 2019-1-16
The default optimization algorithm, sqp is not tractable for very large problem sizes. There are two possible workarounds:
1. Change the algorithm from 'sqp' to 'interior-point' as follows:
>> opts = optimoptions(opts, 'Algorithm', 'interior-point')
2. Reduce the number of constraints/unknowns
The interior point algorithm is designed to work with very large problem sizes.

类别

Help CenterFile Exchange 中查找有关 Problem-Based Optimization Setup 的更多信息

产品


版本

R2016b

Community Treasure Hunt

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

Start Hunting!

Translated by