12.07.2015 Views

ILOG CPLEX 11.0 User's Manual

ILOG CPLEX 11.0 User's Manual

ILOG CPLEX 11.0 User's Manual

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

The <strong>ILOG</strong> <strong>CPLEX</strong> Barrier Optimizer is appropriate and often advantageous for largeproblems, for example, those with more than 100 000 rows or columns. It is not always thebest choice, though, for sparse models with more than 100 000 rows. It is effective onproblems with staircase structures or banded structures in the constraint matrix. It is alsoeffective on problems with a small number of nonzeros per column (perhaps no more than adozen nonzero values per column).In short, denseness or sparsity are not the deciding issues when you are deciding whether touse the barrier optimizer. In fact, its performance is most dependent on these characteristics:◆the number of floating-point operations required to compute the Cholesky factor;◆ the presence of dense columns, that is, columns with a relatively high number of nonzeroentries.To decide whether to use the barrier optimizer on a given problem, you should look at boththese characteristics, not simply at denseness, sparseness, or problem size. (How to checkthose characteristics is explained later in this chapter in Cholesky Factor in the Log File onpage 204, and Nonzeros in Lower Triangle of AA T in the Log File on page 203).Barrier Simplex CrossoverSince many users prefer basic solutions because they can be used to restart simplexoptimization, the <strong>ILOG</strong> <strong>CPLEX</strong> Barrier Optimizer includes basis crossover algorithms. Bydefault, the barrier optimizer automatically invokes a primal crossover when the barrieralgorithm terminates (unless termination occurs abnormally because of insufficient memoryor numeric difficulties). Optionally, you can also execute barrier optimization with a dualcrossover or with no crossover at all. The section Controlling Crossover on page 201explains how to control crossover in the Interactive Optimizer.Differences between Barrier and Simplex OptimizersThe barrier optimizer and the simplex optimizers (primal and dual) are fundamentallydifferent approaches to solving linear programming problems. The key differences betweenthem have these implications:◆◆Simplex and barrier optimizers differ with respect to the nature of solutions. Barriersolutions tend to be midface solutions. In cases where multiple optima exist, barriersolutions tend to place the variables at values between their bounds, whereas in basicsolutions from a simplex technique, the values of the variables are more likely to be ateither their upper or their lower bound. While objective values will be the same, thenature of the solutions can be very different.By default, the barrier optimizer uses crossover to produce a basis. However, you maychoose to run the barrier optimizer without crossover. In such a case, the fact that barrierwithout crossover does not produce a basic solution has consequences. Without a basis,you will not be able to optimize the same or similar problems repeatedly using advancedstart information. You will also not be able to obtain range information for performingsensitivity analysis.<strong>ILOG</strong> <strong>CPLEX</strong> <strong>11.0</strong> — USER’ S MANUAL 199

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!