# 基于问题的非线性优化

## 函数

 `evaluate` 计算优化表达式 `fcn2optimexpr` 将函数转换为优化表达式 `infeasibility` 一个点处的约束违反度 `optimproblem` 创建优化问题 `optimvar` 创建优化变量 `prob2struct` 将优化问题或方程问题转换为求解器形式 `solve` 求解优化问题或方程问题

## 主题

### 基于无约束问题的应用

Rational Objective Function, Problem-Based

This example shows how to create a rational objective function using optimization variables and solve the resulting unconstrained problem.

### 基于有约束问题的应用

Solve Constrained Nonlinear Optimization, Problem-Based

This example shows how to solve a constrained nonlinear problem based on optimization expressions. The example also shows how to convert a nonlinear function to an optimization expression.

Convert Nonlinear Function to Optimization Expression

Convert nonlinear functions, whether expressed as function files or anonymous functions, by using `fcn2optimexpr`.

Constrained Electrostatic Nonlinear Optimization, Problem-Based

Shows how to define objective and constraint functions for a structured nonlinear optimization in the problem-based approach.

Problem-Based Nonlinear Minimization with Linear Constraints

Shows how to use optimization variables to create linear constraints, and `fcn2optimexpr` to convert a function to an optimization expression.

Effect of Automatic Differentiation in Problem-Based Optimization

Automatic differentiation lowers the number of function evaluations for solving a problem.

Supply Derivatives in Problem-Based Workflow

How to include derivative information in problem-based optimization when automatic derivatives do not apply.

Obtain Generated Function Details

How to find the values of extra parameters in nonlinear functions created by `prob2struct`.

Objective and Constraints Having a Common Function in Serial or Parallel, Problem-Based

Save time when your objective and nonlinear constraint functions share common computations in the problem-based approach.

Solve Nonlinear Feasibility Problem, Problem-Based

Solve a feasibility problem, which is a problem with constraints only.

Output Function for Problem-Based Optimization

Shows how to use an output function in the problem-based approach to record iteration history and to make a custom plot.

### 并行计算

What Is Parallel Computing in Optimization Toolbox?

Use multiple processors for optimization.

Using Parallel Computing in Optimization Toolbox

Improving Performance with Parallel Computing

Investigate factors for speeding optimizations.

### 算法和其他理论

fminsearch Algorithm

Steps that `fminsearch` takes to minimize a function.

Bibliography

Lists published materials that support concepts implemented in the solver algorithms.