Main Content

Optimization Toolbox 함수가 처리하는 문제

다음 표에서는 최소화, 다중 목적 함수 최적화, 방정식 풀이, 최소제곱 (모델 피팅) 문제 풀이에 사용할 수 있는 함수를 보여줍니다.

최소화 문제

유형정식화솔버

스칼라 최소화

minxf(x)

이때 lb < x < ub 조건을 충족해야 합니다(x는 스칼라임).

fminbnd

제약 조건이 없는 최소화

minxf(x)

fminunc,
fminsearch

선형 계획법

minxfTx

이때 A·x ≤ b, Aeq·x = beq, lb ≤ x ≤ ub 조건을 충족해야 합니다.

linprog

혼합 정수 선형 계획법

minxfTx

이때 A·x ≤ b, Aeq·x = beq, lb ≤ x ≤ ub 조건을 충족해야 합니다(x(intcon)은 정수 값임)

intlinprog

2차 계획법

minx12xTHx+cTx

이때 A·x ≤ b, Aeq·x = beq, lb ≤ x ≤ ub 조건을 충족해야 합니다.

quadprog

원뿔 계획법

minxfTx

이때 AxbdTxγ, A·x ≤ b, Aeq·x = beq, lb ≤ x ≤ ub 조건을 충족해야 합니다.

coneprog

제약 조건이 있는 최소화

minxf(x)

이때 c(x) ≤ 0, ceq(x) = 0, A·x ≤ b, Aeq·x = beq, lb ≤ x ≤ ub 조건을 충족해야 합니다.

fmincon

반무한 제약 조건이 있는 최소화

minxf(x)

이때 K(x,w) ≤ 0 for all w, c(x) ≤ 0, ceq(x) = 0, A·x ≤ b, Aeq·x = beq, lb ≤ x ≤ ub 조건을 충족해야 합니다.

fseminf

다중 목적 함수 최적화 문제

유형정식화솔버

목표 달성

minx,γγ

이때 F(x) – w·γ ≤ goal, c(x) ≤ 0, ceq(x) = 0, A·x ≤ b, Aeq·x = beq, lb ≤ x ≤ ub 조건을 충족해야 합니다.

fgoalattain

최대최소화

minxmaxiFi(x)

이때 c(x) ≤ 0, ceq(x) = 0, A·x ≤ b, Aeq·x = beq, lb ≤ x ≤ ub 조건을 충족해야 합니다.

fminimax

방정식 풀이 문제

유형정식화솔버

선형 방정식

C·x = d, n개의 방정식, n개의 변수

mldivide(행렬 왼쪽 나눗셈)

변수가 하나인 비선형 방정식

f(x) = 0

fzero

비선형 방정식

F(x) = 0, n개의 방정식, n개의 변수

fsolve

최소제곱 (모델 피팅) 문제

유형정식화솔버

선형 최소제곱

minx12Cxd22

m개의 방정식, n개의 변수

mldivide(행렬 왼쪽 나눗셈)

음이 아닌 선형 최소제곱

minx12Cxd22

이때 x ≥ 0 조건을 충족해야 합니다.

lsqnonneg

제약 조건이 있는 선형 최소제곱

minx12Cxd22

이때 A·x ≤ b, Aeq·x = beq, lb ≤ x ≤ ub 조건을 충족해야 합니다.

lsqlin

비선형 최소제곱

minxF(x)22=minxiFi2(x)

이때 lb ≤ x ≤ ub 조건을 충족해야 합니다.

lsqnonlin

비선형 곡선 피팅

minxF(x,xdata)ydata22

이때 lb ≤ x ≤ ub 조건을 충족해야 합니다.


lsqcurvefit