최적화 라이브 편집기 작업
최적화 라이브 편집기 작업이란?
최적화 라이브 편집기 작업은 fminbnd
, fminsearch
, fzero
및 lsqnonneg
솔버에 대한 시각적 인터페이스를 제공합니다. 작업을 시작하려면 새 라이브 스크립트 버튼을 클릭하십시오. 그런 다음 삽입 탭을 클릭하고 작업 > 최적화를 선택합니다.
다변수 비선형 함수 최소화하기
이 예제에서는 함수 을 최소화하는 방법을 보여줍니다(변수 a = π, 최적화 라이브 편집기 작업 사용).
유사한 최적화 문제를 설명하는 비디오는 How to Use the Optimize Live Editor Task를 참조하십시오.
홈 탭의 파일 섹션에서 새 라이브 스크립트 버튼을 클릭합니다.
최적화 라이브 편집기 작업을 삽입합니다. 삽입 탭을 클릭한 다음 코드 섹션에서 작업 > 최적화를 선택합니다.
문제 데이터 입력에 사용하기 위해 섹션 나누기 버튼을 클릭합니다. 작업 위와 아래에 새 섹션이 나타납니다.
최적화 작업 위 섹션에서 다음 코드를 입력합니다.
a = pi; x0 = [-1 2];
이 변수를 작업 공간에 배치하려면 Ctrl+Enter를 누르십시오.
작업의 문제 유형 지정 섹션에서 목적 함수 > 비선형 버튼을 클릭하고 제약 조건 > 제약 없음 버튼을 클릭합니다. 작업에 권장되는 솔버가
fminsearch
라고 표시됩니다.참고
Optimization Toolbox™가 있는 경우 이때 권장되는 솔버는 다르게 나타납니다.
fminsearch
를 선택하여 예제를 진행합니다.문제 데이터 선택 섹션에서 목적 함수 > 로컬 함수를 선택한 다음 새로 만들기 버튼을 클릭합니다. 함수 스크립트가 작업 아래의 새 섹션에 나타납니다. 만들어진 코드를 편집하여 다음의 주석 없는 라인을 포함하도록 합니다.
function f = objectiveFcn(optimInput,a) x = optimInput(1); y = optimInput(2); f = 100*(y - x^2)^2 + (a - x)^2; end
문제 데이터 선택 섹션에서
objectiveFcn
을 로컬 함수로 선택합니다.문제 데이터 선택 섹션의 함수 입력값에서 최적화 입력값 > optimInput과 고정 입력값: a > a를 선택합니다.
초기점(x0) > x0을 선택합니다.
진행률 표시 섹션에서 플롯에 대해 목적 함수 값을 선택합니다.
솔버를 실행하려면 작업 창 오른쪽 상단에 있는 ⁝ 옵션 버튼을 클릭하고 섹션 실행을 선택하십시오.
다음 플롯이 나타납니다.
해에 해당하는 점을 보려면 최적화 작업의 맨 위를 확인하십시오.
solution
및objectiveValue
변수가 작업 공간에 반환됩니다. 변수 값을 보려면 작업 아래에 섹션 나누기를 삽입하고 다음 코드를 입력하십시오.disp(solution) disp(objectiveValue)
Ctrl+Enter를 눌러 섹션을 실행합니다.
disp(solution)
3.1416 9.8696
disp(objectiveValue)
3.9946e-11
스칼라 방정식 풀기
이 예제에서는 최적화 라이브 편집기 작업을 사용하여 cos(x) = x인 점 x를 찾는 방법을 보여줍니다.
홈 탭의 파일 섹션에서 새 라이브 스크립트 버튼을 클릭합니다. 라이브 스크립트에 다음 코드 라인을 입력합니다.
fun = @(x)cos(x) - x; x0 = 0;
첫 번째 라인은 익명 함수
fun
을 정의하는데, 이 함수는 cos(x) = x인 점 x에서 값 0을 취합니다. 두 번째 라인은 초기점x0
= 0을 정의하며 여기서fzero
가 해 탐색을 시작합니다.Ctrl+Enter를 눌러 이들 변수를 MATLAB® 작업 공간에 넣습니다.
최적화 라이브 편집기 작업을 삽입합니다. 삽입 탭을 클릭한 다음 코드 섹션에서 작업 > 최적화를 선택합니다.
작업의 문제 유형 지정 섹션에서 솔버 > fzero를 선택합니다.
문제 데이터 선택 섹션에서 목적 함수 > 함수 핸들을 선택한 다음
fun
을 선택합니다. 초기점(x0) > x0을 선택합니다.진행률 표시 섹션에서 플롯에 대해 목적 함수 값을 선택합니다.
Ctrl+Enter를 눌러 솔버를 실행합니다.
해 값을 보려면 삽입 탭에서 섹션 나누기 버튼을 클릭하여 작업 아래 새 섹션을 삽입하십시오. 새 섹션에서
solution
을 입력하고 Ctrl+Enter를 누릅니다.solution
solution = 0.7391
참고 항목
fzero
| fminsearch
| 최적화