%LINPROG Linear programming.
% X=LINPROG(f,A,b) attempts to solve the linear programming problem:
%
% min f'*x subject to: A*x <= b
% x
%
% X=LINPROG(f,A,b,Aeq,beq) solves the problem above while additionally
% satisfying the equality constraints Aeq*x = beq.
%
% X=LINPROG(f,A,b,Aeq,beq,LB,UB) defines a set of lower and upper
% bounds on the design variables, X, so that the solution is in
% the range LB <= X <= UB. Use empty matrices for LB and UB
% if no bounds exist. Set LB(i) = -Inf if X(i) is unbounded below;
% set UB(i) = Inf if X(i) is unbounded above.
%FMINCON finds a constrained minimum of a function of several variables.
% FMINCON attempts to solve problems of the form:
% min F(X) subject to: A*X <= B, Aeq*X = Beq (linear constraints)
% X C(X) <= 0, Ceq(X) = 0 (nonlinear constraints)
% LB <= X <= UB
%
% X=FMINCON(FUN,X0,A,B) starts at X0 and finds a minimum X to the function
% FUN, subject to the linear inequalities A*X <= B. FUN accepts input X and
% returns a scalar function value F evaluated at X. X0 may be a scalar,
% vector, or matrix.
%
% X=FMINCON(FUN,X0,A,B,Aeq,Beq) minimizes FUN subject to the linear equalities
% Aeq*X = Beq as well as A*X <= B. (Set A=[] and B=[] if no inequalities exist.)