Main

APM.REDUCE - APMonitor Option

Main.OptionApmReduce History

Hide minor edits - Show changes to markup

June 09, 2017, at 12:30 AM by 10.5.113.159 -
Changed line 30 from:

See also COLDSTART?

to:

See also COLDSTART

June 09, 2017, at 12:30 AM by 10.5.113.159 -
Changed line 30 from:

See also COLDSTART?

to:

See also COLDSTART?

June 09, 2017, at 12:30 AM by 10.5.113.159 -
Changed lines 5-6 from:
to:
Added lines 29-30:

See also COLDSTART?

June 06, 2017, at 12:29 AM by 10.5.113.159 -
Added lines 1-28:

(:title APM.REDUCE - APMonitor Option:) (:keywords APM.REDUCE, Optimization, Estimation, Option, Configure, Default, Description:) (:description REDUCE is the number of cycles of pre-processing to analyze the problem structure and eliminate variables that can be fixed and equations that can be eliminated from the problem:)

 Type: Integer, Input
 Default Value: 0
 Description: Number of pre-processing cycles to identify
              equations or variables to eliminate

REDUCE is the number of cycles of pre-solve analysis before sending the problem to a solver. The analysis eliminates variables and equations with the following characteristics:

  • variables that don't belong to an equation or objective
  • equations with assignments such as x=2.5 (set to value and fix)
    • identified with a single non-zero in Jacobian row
    • set variable equal to zero, evaluate residual
    • then set x = -resid/jac (when abs(jac)>tolerance)
    • check that upper or lower limits are not violated
  • equations that connect two variables y = z (merge)
    • set variables equal to zero, evaluate residual
    • if abs(residual)~0 and abs(jac_1 - jac_2) ~ 0, merge
  • independent blocks of linear equations (not yet implemented)
    • perform Lower Block Triangularization (LBT)
    • analyze independent blocks
    • if equation blocks are linear then solve and fix

If no variables are left (all reduced) then APMonitor reports a successful solution without sending the problem to a solver. When no variables or equations are eliminated, the remainder of the REDUCE cycles are skipped. REDUCE has the potential to present a more dense and smaller problem to the solver but may also require more pre-processing time that is more efficiently utilized by the solver.