이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
최적화
설명
최적화 작업에서는 다음 두 가지 방법 중에서 선택하여 대화형 방식으로 문제를 최적화하거나 비선형 연립방정식을 풀 수 있습니다.
문제 기반(권장) — 목적 함수와 제약 조건 또는 방정식을 나타내는 기호 최적화 변수와 표현식을 만듭니다.
솔버 기반 — 표준 MATLAB® 코드를 사용하여 목적 함수와 제약 조건 또는 방정식을 나타냅니다.
이 작업은 라이브 스크립트를 위한 MATLAB 코드를 자동으로 생성합니다.
이 작업의 문제 기반 버전을 사용하면 다음을 수행할 수 있습니다.
범위와 초기값을 포함하여 최적화 변수 배열을 지정합니다.
최소화, 최대화, 실현가능성, 방정식 풀이 등 문제 유형을 지정합니다.
표현식을 작성하거나 함수를 검색하여 목적 함수와 제약 조건 함수를 지정합니다.
선택적으로, 솔버를 선택하고 디폴트가 아닌 옵션을 지정합니다.
최적화를 실행합니다.
이 작업의 솔버 기반 버전을 사용하면 다음을 수행할 수 있습니다.
문제의 특성을 기반으로 하여 솔버를 선택합니다. Global Optimization Toolbox를 사용하는 경우, 이 툴박스의 솔버도 사용하도록 선택할 수 있습니다.
함수를 작성하거나 함수를 검색하여 목적 함수와 제약 조건 함수를 지정합니다.
솔버 옵션을 지정합니다.
최적화를 실행합니다.
최적화를 사용하려면 솔버 기반 최적화 라이브 편집기 작업 시작하기 항목과 문제 기반 최적화 라이브 편집기 작업 시작하기 항목을 참조하십시오. 최적화 사용 방법에 대한 제안 사항은 Use Solver-Based Optimize Live Editor Task Effectively 또는 문제 기반 최적화 라이브 편집기 작업을 효과적으로 사용하기 항목을 참조하십시오. 현재는 최적화를 fseminf
, GlobalSearch
또는 MultiStart
솔버와 함께 사용할 수 없습니다.
라이브 편집기 작업에 대한 일반적인 내용은 라이브 스크립트에 대화형 방식 작업 추가하기 항목을 참조하십시오.
작업 열기
MATLAB 편집기의 라이브 스크립트에 최적화 작업을 추가하려면 라이브 편집기의 삽입 탭에서 작업 > 최적화를 선택하십시오.
또는 스크립트의 코드 블록에 관련 키워드를 입력합니다(예: optim
또는 fmincon
). 제안된 명령 완성에서 Optimize를 선택합니다.
작업을 삽입한 후 문제 기반(권장) 또는 솔버 기반을 선택합니다.
예제
- 솔버 기반 최적화 라이브 편집기 작업 시작하기
- 문제 기반 최적화 라이브 편집기 작업 시작하기
- 최적화 라이브 편집기 작업 또는 솔버를 사용한, 제약 조건이 있는 비선형 문제
- 문제 기반 Optimize 라이브 편집기 작업을 사용한 실현가능성
- fmincon 솔버로 최적화 라이브 편집기 작업 사용
- Optimize Live Editor Task with lsqlin Solver
- Optimize Using the GPS Algorithm (Global Optimization Toolbox)
- Minimize Function with Many Local Minima (Global Optimization Toolbox)
- Pareto Front for Two Objectives (Global Optimization Toolbox)
- 문제 기반 최적화 라이브 편집기 작업을 효과적으로 사용하기
- Use Solver-Based Optimize Live Editor Task Effectively
- 솔버 기반 최적화 문제 설정
- How to Use the Solver-Based Optimize Live Editor Task
- How to Use the Problem-Based Optimize Live Editor Task
파라미터
제한 사항
현재, 최적화는 다중 목적 함수 최적화에 대해 다음과 같은 제한 사항을 가집니다.
여러 출력값을 갖는 단일 함수를 사용하여 목적 함수를 지정해야 합니다. 즉, 사용자가 지정한 목적 함수는 한 요소가 각 목적 함수인 값 벡터를 출력해야 합니다.
모든 목적 함수는 동일한 의미를 가져야 합니다. 즉, 솔버 기반 작업은 최소화를 목적으로 하고, 문제 기반 작업은 최소화 또는 최대화를 목적으로 해야 합니다.
팁
추가 입력값이 있는 함수의 경우, 솔버 기반과 문제 기반의 최적화 작업은 약간 다른 요구 사항을 가집니다.
솔버 기반: 최적화 변수를 선택하고 고정 데이터 입력값을 포함하는 작업 공간 변수를 지정합니다. 예제는 다음 3개의 함수 입력값을 포함하는 Place Optimization Variables in One Vector and Data in Other Variables 항목을 참조하십시오.
최적화는 모든 함수 입력값을 지정한 후에만 코드를 생성합니다.
문제 기반: 각 함수 입력값에 대해 최적화 변수 이름이나 작업 공간 변수 이름을 지정합니다. 함수 시그니처의 입력 인수 이름이 기존 최적화 변수 또는 작업 공간 변수 이름과 일치하면 최적화가 자동으로 해당 이름을 선택합니다.
최적화는 모든 함수 입력값을 지정한 후에만 코드를 생성합니다.
최적화는
varargin
입력값을 포함하는 함수 또는 오류를 포함하는 함수를 구문 분석할 수 없습니다.파일에서 함수를 선택하는 경우 최적화는 파일 위치를 MATLAB 경로에 추가합니다.
최적화에 구문 분석 오류가 있거나 여러 로컬 함수의 이름이 동일한 경우, 사용 가능한 로컬 함수 목록이 비어 있게 됩니다.
버전 내역
R2020b에 개발됨참고 항목
함수
fmincon
|intlinprog
|surrogateopt
(Global Optimization Toolbox) |patternsearch
(Global Optimization Toolbox)