[frames] | no frames]

# Module log_barrier_function

source code

Logarithmic barrier function optimization constraint algorithm.

This file is part of the minfx optimisation library.

 Classes
Log_barrier_function
 Functions

 log_barrier_function(func=None, dfunc=None, d2func=None, args=`(``)`, x0=None, min_options=`(``)`, A=None, b=None, epsilon0=1e-05, scale_epsilon=0.01, func_tol=1e-25, grad_tol=None, maxiter=1000000.0, inner_maxiter=500, full_output=0, print_flag=0) The logarithmic barrier augmented function. source code
 Variables
__package__ = `'minfx'`

Imports: log, dot, float64, inf, outer, sqrt, zeros, match, print_iter, Min, Constraint_linear

 Function Details

### log_barrier_function(func=None, dfunc=None, d2func=None, args=`(``)`, x0=None, min_options=`(``)`, A=None, b=None, epsilon0=1e-05, scale_epsilon=0.01, func_tol=1e-25, grad_tol=None, maxiter=1000000.0, inner_maxiter=500, full_output=0, print_flag=0)

source code

The logarithmic barrier augmented function.

From http://en.wikipedia.org/wiki/Barrier_function and http://bayen.eecs.berkeley.edu/bayen/?q=webfm_send/247. This is an augmented function, the algorithm is:

• Given starting points x0s.
• while 1:
• Find an approximate minimiser xk of the target function value plus the logarithmic barrier function value.
• Final convergence test.
• Scale the penalty function scaling factor epsilon.
• k = k + 1.

# Linear constraints

These are defined as:

```   A.x >= b
```

where:

• A is an m*n matrix where the rows are the transposed vectors, ai, of length n. The elements of ai are the coefficients of the model parameters.
• x is the vector of model parameters of dimension n.
• b is the vector of scalars of dimension m.
• m is the number of constraints.
• n is the number of model parameters.

E.g. if 0 <= q <= 1, q >= 1 - 2r, and 0 <= r, then:

```   | 1  0 |            |  0 |
|      |            |    |
|-1  0 |   | q |    | -1 |
|      | . |   | >= |    |
| 1  2 |   | r |    |  1 |
|      |            |    |
| 0  1 |            |  2 |
```

To use linear constraints both the matrix A and vector b need to be supplied.

# Initial values

These are the default initial values:

```   epsilon0 = 1e-5
scale_epsilon = 1e-2
```

 Generated by Epydoc 3.0.1 on Thu Jul 3 13:38:04 2014 http://epydoc.sourceforge.net