# 基于求解器的非线性优化

## 函数

 `fminbnd` 查找单变量函数在定区间上的最小值 `fmincon` 寻找约束非线性多变量函数的最小值 `fminsearch` 使用无导数法计算无约束多变量函数的最小值 `fminunc` 求无约束多变量函数的最小值 `fseminf` 求解半无限约束多变量非线性函数的最小值

## 实时编辑器任务

 优化 在实时编辑器中优化或求解方程

## 主题

### 基于无约束求解器的应用

Example of unconstrained nonlinear programming including derivatives.

Minimization with Gradient and Hessian Sparsity Pattern

Example of nonlinear programming using some derivative information.

### 基于有约束求解器的应用

Optimization Toolbox™ 教程

Example of nonlinear programming with derivative information.

How to Use All Types of Constraints

Example showing all constraints.

Obtain Best Feasible Point

Find the best feasible point in the `output` structure.

Minimization with Bound Constraints and Banded Preconditioner

Example showing efficiency gains possible with structured nonlinear problems.

Minimization with Linear Equality Constraints, Trust-Region Reflective Algorithm

Example showing nonlinear programming with only linear equality constraints.

Minimization with Dense Structured Hessian, Linear Equalities

Example showing how to save memory in nonlinear programming with a structured Hessian and only linear equality constraints or only bounds.

Calculate Gradients and Hessians Using Symbolic Math Toolbox™

Example showing how to calculate derivatives symbolically for optimization solvers.

Using Symbolic Mathematics with Optimization Toolbox™ Solvers

Use Symbolic Math Toolbox™ to generate gradients and Hessians.

### 代码生成

Code Generation in fmincon Background

Prerequisites to generate C code for nonlinear optimization.

Code Generation for Optimization Basics

Learn the basics of code generation for the `fmincon` optimization solver.

Static Memory Allocation for fmincon Code Generation

Use static memory allocation in code generation when the problem changes.

Optimization Code Generation for Real-Time Applications

Explore techniques for handling real-time requirements in generated code.

### 半无限约束

One-Dimensional Semi-Infinite Constraints

Example showing how to use one-dimensional semi-infinite constraints in nonlinear programming.

Two-Dimensional Semi-Infinite Constraint

Example showing how to use two-dimensional semi-infinite constraints in nonlinear programming.

Analyzing the Effect of Uncertainty Using Semi-Infinite Programming

This example shows how to use semi-infinite programming to investigate the effect of uncertainty in the model parameters of an optimization problem.

### 并行计算

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.

Minimizing an Expensive Optimization Problem Using Parallel Computing Toolbox™

Example showing how to use parallel computing in both Global Optimization Toolbox and Optimization Toolbox™ solvers.

### 算法和其他理论

fminsearch Algorithm

Steps that `fminsearch` takes to minimize a function.