Optimization Toolbox는 제약 조건을 충족하면서 목적 함수를 최소화 또는 최대화하는 파라미터를 찾을 수 있는 함수를 제공합니다. 툴박스에는 LP(선형 계획법), MILP(혼합 정수 선형 계획법), QP(2차 계획법), SOCP(2차 원뿔 계획법), NLP(비선형 계획법), 제약 조건이 있는 선형 최소제곱, 비선형 최소제곱 및 비선형 방정식을 위한 솔버가 있습니다.
함수와 행렬을 사용하거나 토대가 되는 수학을 반영하는 변수 표현식을 지정하여 최적화 문제를 정의할 수 있습니다. 더 빠르고 정확한 해를 구할 수 있도록 목적 함수 및 제약 조건 함수에 대한 자동 미분을 사용할 수 있습니다.
툴박스의 솔버를 사용하면 연속 및 이산 문제에 대한 최적해를 구하고 상반관계 분석을 수행하며 알고리즘과 응용 사례에 최적화 방법을 적용할 수 있습니다. 툴박스를 통해 파라미터 추정, 구성요소 선택 및 파라미터 조정 등의 설계 최적화 작업을 수행할 수 있습니다. 이를 통해 포트폴리오 최적화, 에너지 관리 및 거래, 생산 계획 등의 응용 분야에서 최적해를 구할 수 있습니다.
시작하기:
모델링
변수, 목적 함수 및 제약 조건을 정의하여 문제 설명을 수학적 형식으로 변환하면 최적화 기법을 사용하여 문제를 풀 수 있습니다.
문제 기반 최적화
최적화 변수로 구성된 표현식으로 목적 함수와 제약 조건을 작성할 수 있습니다. 비선형 표현식에 대해 자동 미분을 통해 보다 빠르고 견고하게 문제를 풀 수 있습니다. 자동으로 선택된 솔버를 적용할 수 있습니다. 최적화 라이브 편집기 작업을 사용하여 대화형 방식으로 문제를 만들고 풀고, 코드를 생성해 공유하거나 응용 프로그램에 사용할 수 있습니다.
솔버 기반 최적화
함수를 사용하여 비선형 목적 함수와 제약 조건을 작성할 수 있으며 계수 행렬을 사용하여 선형 목적 함수와 제약 조건을 작성할 수 있습니다. 최적화 라이브 편집기 작업을 사용하여 대화형 방식으로 문제를 만들고 풀고, 코드를 생성해 공유하거나 응용 프로그램에 사용할 수 있습니다.
솔버 선택
문제 기반 또는 솔버 기반 접근법에 최적화 라이브 편집기 작업을 사용하여 문제 유형에 적합한 솔버를 선택할 수 있습니다.
옵션 설정
최적화 옵션을 설정하여 최적화 과정을 조정할 수 있습니다. 예를 들어 솔버가 사용할 최적화 알고리즘을 선택하거나 종료 조건을 설정할 수 있습니다 옵션을 설정하여 최적화 솔버 진행 상황을 모니터링하고 플로팅할 수 있습니다.
결과 검토 및 개선
종료 메시지, 최적성 측정값 및 반복 과정 표시를 검토하여 해를 평가할 수 있습니다. 자동 미분을 사용하거나 기울기를 제공하거나 병렬 연산을 사용해 기울기를 추정하여 비선형 문제에 대한 성능을 개선할 수 있습니다.
솔버
준뉴턴, Trust-Region 또는 넬더-미드 단체 알고리즘을 적용하여 비제약 조건 문제를 풀 수 있습니다. Interior-Point, 순차적 2차 계획법(SQP) 또는 Trust-Region-Reflective 알고리즘을 적용하여 제약 조건 문제를 풀 수 있습니다.
응용 사례
파라미터를 추정하고 조정하며, 최적 설계를 구하고 최적 궤적을 계산하거나 강건한 포트폴리오를 구축하거나 변수 간에 비선형 관계가 있는 기타 응용 분야에 비선형 최적화를 사용할 수 있습니다.
선형 계획법 솔버
Dual-Simplex 또는 Interior-Point 알고리즘을 적용하여 선형 계획법을 풀 수 있습니다.
2차 및 2차 원뿔 계획법 솔버
Interior-Point, Active-Set, Trust-Region-Reflective 알고리즘을 적용하여 2차 계획법을 풀 수 있습니다. Interior-Point 방법을 적용하여 2차 원뿔 계획법을 풀 수 있습니다.
응용 사례
자원 할당, 생산 계획, 배합 및 투자 계획 등의 문제에서 선형 계획법을 사용할 수 있습니다. 설계 최적화, 포트폴리오 최적화, 수력발전 댐 제어 등의 문제에서 2차 또는 2차 원뿔 계획법을 사용할 수 있습니다.
솔버
전처리, 실현가능점 생성에 대한 발견법, 평면 절단 방법을 포함하는 분기한정 알고리즘을 사용하여 혼합 정수 선형 계획법 문제를 풀 수 있습니다.
혼합 정수 선형 계획법 기반 알고리즘
혼합 정수 선형 계획법 솔버를 사용하여 특수 목적 알고리즘을 구축할 수 있습니다.
응용 사례
온/오프 의사결정 또는 논리적 제약 조건이 있고, 변수 값이 정수여야 하는 경우 정수 변수로 모델링할 수 있습니다. 경로 계획, 일정 계획, 계획, 할당 및 자본 예산 문제가 일반적인 응용 사례입니다.
솔버
목표 달성 또는 최대최소화로 문제를 공식화할 수 있습니다. 각 목적 함수에 대해 선택적으로 가중 목표 값이 적용되는 경우, 목표 달성을 사용할 수 있습니다. 일련의 목적 함수에 대한 최악의 경우 값을 최소화하는 경우, 최대최소화를 사용할 수 있습니다.
응용 사례
목적 함수 충돌로 인해 절충이 필요한 경우 다중 목적 최적화를 사용할 수 있습니다. 구조 설계에서의 중량과 강도 그리고 포트폴리오 최적화에서의 위험 및 예상 수익이 바로 그러한 예입니다.
솔버
Levenberg-Marquardt, Trust-Region, Active-Set 또는 Interior-Point 알고리즘을 적용할 수 있습니다.
선형 최소제곱 응용 분야
파라미터에 범위 제약 조건과 선형 제약 조건이 적용되는 경우를 포함해 선형 최소제곱 솔버를 사용하여 선형 모델을 데이터에 피팅하거나 선형 연립방정식을 풀 수 있습니다.
비선형 최소제곱 응용 분야
파라미터에 범위, 선형, 비선형 제약 조건이 적용되는 경우를 포함해 비선형 최소제곱 솔버를 사용하여 비선형 모델을 수집된 데이터에 피팅하거나 비선형 연립방정식을 풀 수 있습니다.
MATLAB Compiler 지원
MATLAB Compiler 및 MATLAB Compiler SDK를 사용하여 MATLAB 최적화 모델을 독립 실행 파일, 웹 앱, C/C++ 공유 라이브러리, Microsoft® .NET 어셈블리, Java® 클래스 및 Python® 패키지로 배포할 수 있습니다.
코드 생성
MATLAB Coder를 사용하여 이식성과 가독성이 좋은 C 또는 C++ 코드를 생성하여 최적화 문제를 풀 수 있습니다. 임베디드 시스템을 포함한 모든 하드웨어에 대해 생성된 코드를 컴파일할 수 있습니다.