Main Content

evaluate

최적화 표현식 실행

설명

evaluate를 사용하여 한 점에서 최적화 표현식의 숫자형 값을 구합니다.

전체 워크플로는 문제 기반 최적화 워크플로 또는 방정식 풀이를 위한 문제 기반 워크플로 항목을 참조하십시오.

예제

val = evaluate(expr,pt)는 값 pt에서 최적화 표현식 expr의 값을 반환합니다.

예제

모두 축소

두 변수에 최적화 표현식을 만듭니다.

x = optimvar('x',3,2);
y = optimvar('y',1,2);
expr = sum(x,1) - 2*y;

점에서 표현식을 실행합니다.

xmat = [3,-1;
    0,1;
    2,6];
sol.x = xmat;
sol.y = [4,-3];
val = evaluate(expr,sol)
val = 1×2

    -3    12

선형 계획법 문제 풀기

x = optimvar('x');
y = optimvar('y');
prob = optimproblem;
prob.Objective = -x -y/3;
prob.Constraints.cons1 = x + y <= 2;
prob.Constraints.cons2 = x + y/4 <= 1;
prob.Constraints.cons3 = x - y <= 2;
prob.Constraints.cons4 = x/4 + y >= -1;
prob.Constraints.cons5 = x + y >= 1;
prob.Constraints.cons6 = -x + y <= 2;

sol = solve(prob)
Solving problem using linprog.

Optimal solution found.
sol = struct with fields:
    x: 0.6667
    y: 1.3333

해에서 목적 함수의 값을 구합니다.

val = evaluate(prob.Objective,sol)
val = -1.1111

입력 인수

모두 축소

최적화 표현식으로, OptimizationExpression 객체로 지정됩니다.

예: expr = 5*x+3. 여기서 xOptimizationVariable입니다.

표현식의 변수 값으로, 구조체로 지정됩니다. 구조체 pt는 다음과 같은 요구 사항을 갖습니다.

  • expr의 모든 변수는 pt의 필드 이름과 일치합니다.

  • 일치하는 필드 이름의 값은 숫자입니다.

예를 들어, ptsolve에서 반환했으므로 최적화 문제에 대한 해가 될 수 있습니다.

예: pt.x = 3, pt.y = -5

데이터형: struct

출력 인수

모두 축소

표현식의 숫자형 값으로, double형으로 반환됩니다.

경고

문제 기반 접근법은 목적 함수, 비선형 등식 또는 비선형 부등식에서 복소수 값을 지원하지 않습니다. 함수 계산에 중간값으로라도 복소수 값이 포함될 경우, 최종 결과가 올바르지 않을 수 있습니다.

버전 내역

R2017b에 개발됨