2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
Naval A
rch
itectu
re &
Ocean
En
gin
eerin
g
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
Computer Aided Ship design
-Part I. Optimal Ship Design-
September, 2009
Prof. Kyu-Yeul Lee
Department of Naval Architecture and Ocean Engineering,Seoul National University of College of Engineering
학부3학년 교과목“전산선박설계(Computer Aided ship design)”강의 교재
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
Naval A
rch
itectu
re &
Ocean
En
gin
eerin
g
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
3.1 Optimal Solution Using Optimality Condition
3.2 Lagrange Multiplier for equality constraints
3.3 Kuhn-Tucker Necessary Condition for inequality constraints
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
Naval A
rch
itectu
re &
Ocean
En
gin
eerin
g
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
3.1 Optimal Solution Using Optimality Condition
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
1변수 함수의 최적성 조건- 함수의 극대, 극소(고교 과정 Review)
x
y
1
1
-1 x
y
1
1
-1
극대
극소
1) 극대값 : 에서 연속 함수 f(x)가 증가에서 감소 상태로 변함
2) 극소값 : 에서 연속 함수 f(x)가 감소에서 증가 상태로 변함
0)(' * xf
( 에서 극대 또는 극소값을 가질 필요 조건)
고등학교 수학의 정석(수학 II) Review
- 수학의 정석 ‚6. 극대, 극소와 미분‛(p. 104)
*xx *xx
*xx
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
4/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
1변수 함수의 최적성 조건- 1계 필요 조건(1)
변수가 하나일 때, 극값을 가질 필요 조건 : 0)(' * xf
Rxxdx
xfdxx
dx
xdfxfxf 2*
2
*2*
** )(
)(
2
1)(
)()()(
pf) 주어진 점 에서 f(x)의 테일러 급수는 다음과 같다.*x
나머지항(Remainder)
: 가 에 충분히
가까우면 그 값이 매우 작음
*xxdxx *라고 놓으면
Rdxfdxfxfxf 2*** )(''2
1)(')()(
)()()( * xfxfxf 함수 값의 변화량
Rdxfdxfxf 2** )(''2
1)(')(
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
5/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
1변수 함수의 최적성 조건- 1계 필요 조건(2)
*xx 에서 국부적 후보 최소점이기 위해서는 0f
따라서, )( *xxd 의 부호에 상관없이 를 만족하려면0f 0)(' * xf
Rdxfdxfxfxfxf 2*** )(''2
1)(')()()(
0)(' * xf 를 만족하는 점 : 국부적으로 최소, 최대, 또는 변곡점
총칭하여 상점(Stationary point)이라고 함
cf)
보다 함수 값이 작은 점(x*+d )이
존재하므로 x*는 최소점이 아님
)( *xf에서 최소값)( *xf
*x dx *dx * *x dx *dx * *x dx *dx *
의미 : x*에서의 함수 값이 x*d에서의
함수 값보다 작으면 x*는 국부적
후보 최소점이 될 가능성이 있음
이어야 함
이와 유사한 개념으로 에서 국부적 후보 최대점이 되기 위해서는 이어야 하며,
의 부호에 상관없이 를 만족하려면 이어야 함
*xx 0f)( *xxd 0f 0)(' * xf
에서 최대값)( *xf
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition 6/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
1변수 함수의 최적성 조건- 충분 조건과 2계 필요 조건
상점( 를 만족하는 점) 중 어느 점이 최소점인지 결정하는 방법
상점이므로, . 따라서, 0)(' * xf Rdxfxf 2* )(''2
1)(
2차항이 다른 모든 고차항에 비해 지배적인 항이므로,
d≠0에 대하여 다음 조건을 만족하면 항상 0f
0)('' * xf
cf) 0)('' * xf 인 경우 국부적으로 최소점인지 알 수 없다.
∵ 1계, 2계 미분이 모두 0이므로, 국부적으로 최소이기 위해서는
3계 미분계수는 0이 되어야 하고, 4계 미분계수가 양수(>0)여야 한다.
즉, R의 부호에 따라 달라지게 된다.
(충분 조건(Sufficient condition))
2계 필요 조건 :
0)('' * xf국부적으로 최소값을 가지면,
(※ 단, 역은 성립하지 않는다.)
Rdxfdxfxfxfxf 2*** )(''2
1)(')()()(
*xx 에서 국부적 후보 최소점이기 위해서는 0f따라서, )( *xxd 의 부호에 상관없이 를 만족하려면0f 0)(' * xf 이어야 함
0)(' * xf
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition 7/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
1변수 함수의 최적성 조건(요약)
충분 조건, 필요 조건, 필요 충분 조건
(고등학교 수학의 정석 ‘명제와 조건’ 참고)
1) A는 B의 충분 조건이다.
“A이면 B이다.” ( )
2) C는 D의 필요 조건이다.
“D이면 C이다.” ( )
3) E는 F의 필요 충분 조건이다.
“E이면 F이고, F이면 E이다.” ( )
BA
DC
FE
1계 필요 조건(1st Order necessary condition)
2계 필요 조건(2nd Order necessary condition)
충분 조건(Sufficient condition)
0)(' * xf가 국부적 후보 최소점이면,
cf) 0)(' * xf 이면, 가 상점(극소, 극대, 변곡점)
이다.
0)('' * xf
상점( )일 경우
이면 가 국부적 최소점이다.
0)('' * xf가 국부적 최소점이면,
*x
*x
0)(' * xf
*x
*x
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
8/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
2변수 함수의 테일러 전개(Taylor Series Expansion)(1)
Rxxx
fxxxx
xx
fxx
x
f
xxx
fxx
x
fxxfxxf
2*
222
2
2*
22
*
11
21
22*
112
1
2
*
22
2
*
11
1
*
2
*
121
)())((2)(2
1
)()(),(),(
2변수 함수 에 대한 점 에서의 테일러 전개식),( 21 xxf ),( *
2
*
1 xx
RfffTT ****** )(
2
1)()()()( xxxHxxxxxxx
22
*
2
*
1
*
21 ,),(,),( Mxxxx TT Hxx
2x2 Matrix의 원소
각 항을 다시 표현하면
)()()()( **
*
22
*
11
2
1*
22
2
*
11
1
xxx
T
T
fxx
xx
x
f
x
f
xxx
fxx
x
f
***
*
22
*
11
2
2
2
12
221
2
2
1
2
*
22
*
11
*
22
*
11*
222
2
2*
11
21
2*
22
12
2*
112
1
22*
222
2
2*
22
*
11
21
22*
112
1
2
)(2
1
2
1
)()()()(2
1)())((2)(
2
1
xxxHxx
T
xx
xx
x
f
xx
f
xx
f
x
f
xxxx
xx
xxxx
x
fxx
xx
fxx
xx
fxx
x
fxx
x
fxxxx
xx
fxx
x
f
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition 9/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
2변수 함수의 테일러 전개(2)
2변수 테일러 전개식의 행렬 표기법
RfffTT ****** )(
2
1)( )()()( xxxHxxxxxxx
다변수 함수의 테일러 전개식의 행렬 표기법 : 2변수 전개식과 동일
22
*
2
*
1
*
21 ,),(,),( Mxxxx TT Hxx
nnM
f
H
xx ,, *: n 차원 Vector
Rfff TT dxHddxxdx )(2
1)()()( ****
로 정의 하면, 다음과 같이 표현 가능dxx *
2x2 Matrix의 원소
,0)( * Tf x 0)(2
1 * dxHdT 에서 최소이기 위한 충분 조건
*xx
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
10/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
[참고] 헷세 행렬(Hessian Matrix)
2
2
2
2
1
2
2
2
2
2
2
12
21
2
21
2
2
1
2
2
nnn
n
n
x
f
xx
f
xx
f
xx
f
x
f
xx
f
xx
f
xx
f
x
f
f
xx
),,2,1;,,2,1(2
njnixx
f
ji
H
헷세 행렬(Hessian Matrix) : Gradient Vector를 한번 더 미분하면(각각, 에 대하여 미분),
함수 에 대한 2계 편도함수의 행렬을 얻게 되는데, 이를 헷세 행렬이라고 정의함.
ix
)(xf
Tnxxx 21x
: n개의 변수를 가지는
column Vector(열벡터)
즉, Gradient Vector의 각 성분을 으로 미분하면 다음을 얻는다.nxxx ,,, 21
헷세 행렬은 보통 H 또는 로 표시f2
헷세 행렬의 대칭성
ijji xx
f
xx
f
따라서, 헷세 행렬은 항상 대칭 행렬
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
11/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
2차 형식(Quadratic Form)
2차 형식 : 한 변수의 제곱항과 서로 다른 두 변수의 곱항(다변수 곱항)의 합으로 이루어진 함수
ex) 2
332
2
23121
2
1321 5464222
1),,( xxxxxxxxxxxxF
2차 형식은 다음과 같이 행렬로 표현이 가능하다.
xAxT
x
x
x
xxxxxxF2
1
522
261
212
2
1,,
3
2
1
321321
A : 대칭 행렬
(Symmetric Matrix)
대칭행렬 A의 구성 방법 (A의 (i,j) 성분을 aij로 나타냄)
1) 대각 성분은 제곱항의 계수
2) 대각 성분 이외의 성분은
다변수 곱항 계수의 ½
계수의 2
iii xa
2
1 계수의jiij xxa
HddT
2
1
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
12/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
2차 형식의 형태
2차 형식의 정의
1) 양정 형식(Positive Definite)
: 인 모든 x에 대하여
2) 양반정 형식(Positive Semidefinite)
: 모든 x에 대하여 이고
3) 음정 형식(Negative Definite)
: 인 모든 x에 대하여
4) 음반정 형식(Negative Semidefinite)
: 모든 x에 대하여
5) 부정 형식(Indefinite)
: 어떤 x에 대해서는 양수 또는 음수
0x
0x 0AxxT
0AxxT
0AxxT
0AxxT
2차 형식 정의의 이용
0)('' * xf 이면
x*는 국부적 최소점이다.
① 1변수 함수의 최소 조건
② 다변수 함수의 최소 조건
0)( * dxHdT
즉, 가 양정 형식이면
0)(' * xf
0)( * dxHdT
이면
인 x*(상점)에서
인0)( 0)( ** xx ff T
x*는 국부적 최소점이다.
x*(상점)에서
0AxxT
인 0x 가 존재
여기서, 가 양정 행렬이면
0)( * dxHdT
)( *xH
참고: KREYSZIG E., Advanced Engneering Mathematics, WILEY, 2006,
8.4. Eigenbasis. Diagonalization. Quadratic forms.
13/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
2차 형식 행렬의 형태 결정을 위한 고유치 검사
AxxxTF
2
1)( 2차 형식 에 관련된 대칭 nn 행렬 A의 n개의 고유치를
nii ,...,1 , 이라고 가정
1) 가 양정(Positive Definite)이기 위한 필요 충분 조건: 모든 고유치가 양수)(xF
2) 가 양반정(Positive Semidefinite)이기 위한 필요 충분 조건: 모든 고유치가 음수가 아님)(xF
nii ,...,1 ,0
nii ,...,1 ,0
3) 가 음정(Negative Definite)이기 위한 필요 충분 조건: 모든 고유치가 음수)(xF
nii ,...,1 ,0
nii ,...,1 ,0
4) 가 음반정(Negative Semidefinite)이기 위한 필요 충분 조건: 모든 고유치가 양수가 아님)(xF
5) 적어도 하나의 가 음수이고 또 적어도 하나의 가 양수이면 는 부정(Indefinite)임i i )(xF
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
14/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
고유치 검사에 의한 2차 형식의 행렬의 형태 결정 예제
고유치 구하는 방법
vAv 0)( vIA 0)det( IA
422
242
224
A
0)8()2(
422
242
224
det 2
8,)(2 중근
다음 행렬의 고유치를 구하여 행렬의 형태를 결정하시오.
모든 고유치가 양수이므로 주어진 행렬은 양정(Positive Definite) 행렬임
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
15/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
1) x*가 국부적 후보 최소점일 필요 조건 :
2) 인 상점에서 x*가 국부적 최소점일 조건 :
다변수 함수의 후보 최적성 조건(요약)
n개의 변수로 이루어진 다변수 함수 에 대한 테일러 전개식)(xf
Rfff TT dxHddxxx )(2
1)()()( ***
함수의 변화량으로 위 식을 다시 쓰면,
Rff TT dxHddx )(2
1)( **
가 국부적으로 후보 최소점이면, 이어야 함*x 0f
0)( * Tf x
0)dH(xd*T
위 조건은 가 양정 행렬일 경우 성립한다. )H(x*
),2,1(,0)( *
nix
f
i
x즉,
0)( 0)( ** xx ff T
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition 16/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
Solution
Optimum Problem
후보 최적성 필요 조건을 이용한 등호 제약 최적화 문제의 해법
2
2
2
121 )5.1()5.1(),( xxxxf
02),( 2121 xxxxh
x2를 x1의 양함수(explicit function)로 표현하면,
2)( 112 xxx
2
1
2
111 )5.12()5.1())(,( xxxxf
04
12
1
0)5.0(2)5.1(2
2
1
2
12
1
11
1
dx
fd
xx
x
xxdx
df
)1,1(),( 21 xx : 국부적 최소점
Minimize
Subject to
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition 17/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
Naval A
rch
itectu
re &
Ocean
En
gin
eerin
g
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
3.2 Lagrange Multiplier for equality constraints
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
함수의 상점(Stationary Point)을 찾는 방법
Given: minimize f(x1, x2)
* *
1 2( , )x x
* *
1 2( , )f x x
- 어떤 점 (x1*, x2*)에서 미소변위(dx1, dx2) 만큼 이동한 점에서의 함수값의 변화량 df 는 다음과 같다.Find: 상점 (x1*, x2*)
모든 방향으로의 함수값의 변화량 df 가 0인 점을 상점(Stationary Point)이라고 하며, 최소점, 최대점,
안장점(Saddle Point)은 상점에 속한다.
1 2( , )f x x
1x
2x
참고: 일반적인공학적 최적화문제에서는목적 함수의 최적값(Optimum Value)보다는최적점(Optimum Point)이 더 중요하다.
[예시] 건조비를최소화 하는 선박의주요치수(L, B, D, CB)가 건조비자체보다중요한개념이다.
1 2
1 2
f fdf dx dx
x x
19/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
제약조건이 없는 경우의 함수와 상점(Stationary Point)
1 2 3
1 2 3
f f fdf dx dx dx
x x x
상점에서의 df 는 0이다.
dx1, dx2, dx3는 임의의 값이라고 하면 df 가 항상 0이 되기 위해서는
이 되어야 한다.
1 2 3
0f f f
x x x
0f
Given:1 2 3( , , )minimize f x x x
Find: 상점 (x1*, x2*, x3*)
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
20/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
제약조건이 있는 경우의 함수와 상점(Stationary Point)
1. 함수 h (제약조건)를 x1에 대해서정리
2. 함수 f 에 x1 을 대입하여정리하고 f 의 전미분이 0임을 이용하여상점 구하기
제약조건 h 를 하나의변수로서 정리하기어려울수 있으며, 정리할변수를 선택하는것도쉽지 않을 수 있다.
하나의변수로정리하지않고, 상점을구하는 방법은 없을까?
상점에서의 df 는 0이다. h(x1,x2,x3)=0 이므로 dh 는 0이다.
식 ①, ②는 모두 0이므로 다음 식이 항상 성립한다.
0df dh
1 2 3
1 2 3
0f f f
df dx dx dxx x x
① 1 2 3
1 2 3
0h h h
dh dx dx dxx x x
②
3
1 2 3 1 2( , , ) tan cos 0x
h x x x x x e 예시) 제약조건이다음과같은경우어느한 변수로정리하기어려움
Given:1 2 3( , , )minimize f x x x
Find: 상점 (x1*, x2*, x3*)
1 2 3( , , ) 0h x x x
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
: Undetermined Coefficient
‘Lagrange multiplier’21/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
제약조건이 있는 경우의 함수와 상점(Stationary Point)
1 2 3
1 2 3
0f f f
df dx dx dxx x x
1 2 3
1 2 3
0h h h
dh dx dx dxx x x
위 식을 정리 하면
1 2 3 1 2 3
1 2 3 1 2 3
0f f f h h h
dx dx dx dx dx dxx x x x x x
1 2 3
1 1 2 2 3 3
0f h f h f h
dx dx dxx x x x x x
- 제약조건 h가 있기 때문에dx1, dx2, dx3가 1차 독립이 아님.
①
②
0df dh
Given:1 2 3( , , )minimize f x x x
Find: 상점 (x1*, x2*, x3*)
1 2 3( , , ) 0h x x x
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
: Undetermined Coefficient
‘Lagrange multiplier’
22/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
제약조건이 있는 경우의 함수와상점(Stationary Point)
1 2 3
1 1 2 2 3 3
0f h f h f h
dx dx dxx x x x x x
λ값을 적절히 결정하여 첫번째 괄호 안의 값을 0으로 만들면위 식은 dx1에 무관하게 성립한다.
2 3
2 2 3 3
0f h f h
dx dxx x x x
dx2와 dx3는 임의의 값이므로 위 식을 항상 만족하기 위해서는 괄호 안의 식이 0이 되어야 한다.
1 1 2 2 3 3
0, 0, 0f h f h f h
x x x x x x
따라서 다음을 만족하는 값 을 찾으면 그 점이 상점이 된다.321 ,,, xxx
1 2 3, ( , , ) 0h x x x
미지수: 4개 (x1, x2, x3, λ)
식: 4개
유일해존재
1 2 3
1 2 3
0f f f
df dx dx dxx x x
1 2 3
1 2 3
0h h h
dh dx dx dxx x x
- 제약조건 h가 있기 때문에dx1, dx2, dx3가 1차 독립이아님.
①
②
0df dh
Given:1 2 3( , , )minimize f x x x
Find: 상점 (x1*, x2*, x3*)
1 2 3( , , ) 0h x x x
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
1 1 2 3 1 1 2 3 2 1 2 3 2 1 2 3
3 1 2 3 3 1 2 3
( , , ) ( , , ) 0, ( , , ) ( , , ) 0,
( , , ) ( , , ) 0
F x x x H x x x F x x x H x x x
F x x x H x x x
1, 2 3 1, 2 3( , ), ( , )i i
i i
f hF x x x H x x x
x x
: Undetermined Coefficient
‘Lagrange multiplier’
23/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
제약조건이 있는 경우의 함수와상점(Stationary Point)
Given:1 2 3( , , )minimize f x x x
Find: 상점 (x1*, x2*, x3*)
1 2 3( , , ) 0h x x x
1 1 2 2
1 2 3
3 3
0, 0
0, ( , , ) 0
f h f h
x x x x
f hh x x x
x x
1 2 3 1 2 3 1 2 3( , , , ) ( , , ) ( , , )L x x x f x x x h x x x
다음을 만족하는 값 을 찾으면그 점이 상점이 된다.
321 ,,, xxx
Lagrange 함수(L)를 정의 하고 L의 상점을 구함
1 2 3( , , , ) 0L x x x
제약조건이있는 최적화 문제를 제약조건이없는 최적화 문제로 변경
1 1 1
0L f h
x x x
λ : Lagrange Multiplier
L : Lagrange Function1 2 3( , , ) 0L
h x x x
2 2 2
0L f h
x x x
3 3 3
0L f h
x x x
24/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
[요약] 제약조건이 있는 경우의 함수와 상점- 제약 최적화 문제와 그 해법 - Lagrange Multiplier를 이용
1 1 2 3( , , ) 0h x x x
2 1 2 3( , , ) 0h x x x
1 2 3
1 2 3
0f f f
df dx dx dxx x x
①’
②
③
Necessary condition
that minimize f : df = 0
⇒eq①’
dx1, dx2, dx3 are not independent because of h1, h2
Optimization Problem
Minimize
Subject to
①
②
③
1 1 2 3( , , ) 0h x x x
2 1 2 3( , , ) 0h x x x
1 2 3( , , )f x x x Number of variables: 3
Number of equation : 2
So, we cannot say that 1 2 3
0, 0, 0f f f
x x x
Number of variables: 3
Number of equation : 3
We can solve it!
But it is difficult to solve.
처음에는미지수개수보다식의개수가적은부정방정식이었는데, 어떻게식의개수와미지수개수가같아졌는가?
Minimize f 를 수식으로표현 (df = 0) 하였기때문에식의개수가늘어났음
(Num of Equation = Num of Variables)
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
25/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
[요약] 제약조건이 있는 경우의 함수와 상점- 제약 최적화 문제와 그 해법 - Lagrange Multiplier를 이용
1 1 2 3( , , ) 0h x x x
2 1 2 3( , , ) 0h x x x
1 2 3
1 2 3
0f f f
df dx dx dxx x x
①’
②
③
Necessary condition
that minimize f : df = 0
⇒eq①’
dx1, dx2, dx3 are not independent because of h1, h2
Eq ②’, ③’are modified from eq ②, ③
Optimization Problem
Minimize
Subject to
①
②
③
1 1 2 3( , , ) 0h x x x
2 1 2 3( , , ) 0h x x x
1 2 3( , , )f x x x
To find relation between dx1, dx2, dx3 , modify
eq②, ③
1 2 3
1 2 3
0f f f
df dx dx dxx x x
①’
②’
③’
1 1 11 1 2 3
1 2 3
0h h h
dh dx dx dxx x x
2 2 22 1 2 3
1 2 3
0h h h
dh dx dx dxx x x
Number of variables: 3
Number of equation : 2
So, we cannot say that 1 2 3
0, 0, 0f f f
x x x
26/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
[요약] 제약조건이 있는 경우의 함수와 상점- 제약 최적화 문제와 그 해법 - Lagrange Multiplier를 이용
Optimization Problem
Minimize
Subject to
①
②
③
1 1 2 3( , , ) 0h x x x
2 1 2 3( , , ) 0h x x x
1 2 3( , , )f x x x
Necessary
condition
that minimize f
and some
modification
1 2 3
1 2 3
0f f f
df dx dx dxx x x
①’
②’
③’
1 1 11 1 2 3
1 2 3
0h h h
dh dx dx dxx x x
2 2 22 1 2 3
1 2 3
0h h h
dh dx dx dxx x x
그런데함수 f, h1, h2(식①, ②, ③)는 주어진것이고, 우리가구하려고하는 것은 x1, x2, x3이기때문에 x1,x2, x3 에 대한 미분 방정식이됩니다.
식 ①’, ②’, ③’은 f, h1, h2 에 대한 미분 방정식이아닌가요?
만일 다음과 같은문제라면 위의말이 맞습니다.
- Given:
- Find: 함수 f, h1, h2
1 2 3
1 2 3
0,f f f
dx dx dxx x x
1 1 11 2 3
1 2 3
0,h h h
dx dx dxx x x
2 2 21 2 3
1 2 3
0,h h h
dx dx dxx x x
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
27/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
[요약] 제약조건이 있는 경우의 함수와 상점- 제약 최적화 문제와 그 해법 - Lagrange Multiplier를 이용
1 1 2 2 0df dh dh
=0 (dx3는 독립변수 이므로, 식⑥)
1 21 2 1
1 1 1
h hfdx
x x x
1 21 2 2
2 2 2
h hfdx
x x x
1 21 2 3
3 3 3
0h hf
dxx x x
=0 이 되도록 λ1,λ2 를 결정(dx2를 소거하기 위함, 식⑤)
=0 이 되도록 λ1,λ2 를 결정(dx1를 소거하기 위함, 식④)
식 ①’의 dx1, dx2를 소거하기위하여식 ②’, ③’을 이용하여다음 식을 유도
②’
③’
1 1 11 1 2 3
1 2 3
0h h h
dh dx dx dxx x x
2 2 22 1 2 3
1 2 3
0h h h
dh dx dx dxx x x
①’에 새로운 미지의 계수 를 도입하고②’, ③’을 대입식④,⑤,⑥을 유도
1 2,
Optimization Problem
Minimize
Subject to
①
②
③
1 1 2 3( , , ) 0h x x x
2 1 2 3( , , ) 0h x x x
1 2 3( , , )f x x x
Necessary
condition
that minimize f
and some
modification
1 2 3
1 2 3
0f f f
df dx dx dxx x x
①’
②’
③’
1 1 11 1 2 3
1 2 3
0h h h
dh dx dx dxx x x
2 2 22 1 2 3
1 2 3
0h h h
dh dx dx dxx x x
Number of variables: 5
Number of equation : 5
유일해존재
28/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
[요약] 제약조건이 있는 경우의 함수와 상점- 제약 최적화 문제와 그 해법 - Lagrange Multiplier를 이용
Optimization Problem
Minimize
Subject to
①
②
③
1 1 2 3( , , ) 0h x x x
2 1 2 3( , , ) 0h x x x
1 2 3( , , )f x x x
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
제약조건이있는 최적화 문제를 제약조건이없는 최적화 문제로 변경
1 2 3 1 2 1 2 3 1 1 1 2 3 2 2 1 2 3( , , , , ) ( , , ) ( , , ) ( , , )L x x x f x x x h x x x h x x x
Lagrange 함수(L)를 정의 하고 L의 상점을 구함
1 2 3 1 2( , , , , ) 0L x x x
1 21 2
1 1 1 1
0h hL f
x x x x
λ : Lagrange Multiplier
L : Lagrange Function
1 1 2 3
1
( , , ) 0L
h x x x
1 21 2
2 2 2 2
0h hL f
x x x x
1 21 2
3 3 3 3
0h hL f
x x x x
2 1 2 3
2
( , , ) 0L
h x x x
② ③
④
⑥
⑤
1 2 1 21 2 1 2
1 1 1 2 2 2
1 21 2 1 1 2 3 2 1 2 3
3 3 3
0, 0
0, ( , , ) 0, ( , , ) 0
h h h hf f
x x x x x x
h hfh x x x h x x x
x x x
다음을 만족하는 값 을 찾으면그 점이 상점이 된다.
1 2 1 2 3, , , ,x x x
29/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
Lagrange Multiplier를 이용한 제약 비선형 최적화 기법- 2차 계획 문제
2 2
1 2 1 2( , ) ( 1.5) ( 1.5)f x x x x
1 2 1 2( , ) 2 0h x x x x
Original Problem
75.0f
5.0f
1 2
1
2
1 2( , ) 0h x x
C
Minimize
Subject to
1 2 1 2 1 2
2 2
1 2
1 2
( , , ) ( , ) ( , )
( 1.5) ( 1.5)
( 2)
L x x f x x h x x
x x
x x
Lagrange Function
Minimize
1x
2x
0.0)(,5.0)( CC hf
Necessary Condition:
* * *
1 2 1, 1x x (점 C가 상점이 된다.)
1 1( , ) 0L x ,x
1
1
2( 1.5) 0L
xx
2
2
2( 1.5) 0L
xx
1 2 2 0L
x x
1 2 3 1 2 3 1 2 3( , , , ) ( , , ) ( , , )L x x x f x x x h x x x
1 2 3( , , , ) 0L x x x
2차 계획 문제- 목적 함수: 2차 형식- 제약 조건: 1차 형식
30/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
Lagrange Multiplier를 이용한 제약 비선형 최적화 기법
중심이 (0,0,0)이고 반지름이 c인 구가 있다.
각 꼭지점이 구에 접하는 직육면체의 최대 부피를 구하시오
1 2 3( , , )x x x
1x
2x
3x
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
31/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
Lagrange Multiplier를 이용한 제약 비선형 최적화 기법
풀이 – Mathematical Modeling
1 2 3( , , )x x x
1x
2x3x
직육면체의 꼭지점이 구 상의 점이므로
1 2 3 1 2 3( , , ) 2 2 2f x x x x x x
직육면체의 부피 f 는
2 2 2 2
1 2 3 1 2 3( , , ) 0h x x x x x x c
1 2 3 1 2 3
1 2 3
: ( , , ) 2 2 2
8
maximize f x x x x x x
x x x
2 2 2 2
1 2 3 1 2 3
:
( , , ) 0
constraint
h x x x x x x c
1 2 3 1 2 3: ( , , ) 8minimize f x x x x x x
2 2 2 2
1 2 3 1 2 3
:
( , , ) 0
constraint
h x x x x x x c
22x
12x
32x
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition 32/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
Lagrange Multiplier를 이용한 제약 비선형 최적화 기법
풀이 – Solution(1/2)
1 2 3 1 2 3: ( , , ) 8minimize f x x x x x x
2 2 2 2
1 2 3 1 2 3
:
( , , ) 0
constraint
h x x x x x x c
1 2 3 1 2 3 1 2 3( , , , ) ( , , ) ( , , )L x x x f x x x h x x x
1 2 3( , , , ) 0L x x x
2 2 2 2
1 2 3 1 2 38 ( )x x x x x x c
Lagrange 함수 구성
2 3 1
1
8 2 0L
x x xx
2 2 2 2
1 2 3 0L
x x x c
1 3 2
2
8 2 0L
x x xx
1 2 3
3
8 2 0L
x x xx
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
33/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
Lagrange Multiplier를 이용한 제약 비선형 최적화 기법
풀이 - Solution(2/2)
2 3 18 2 0x x x
1 3 28 2 0x x x
1 2 38 2 0x x x 2 2 2 2
1 2 3 0x x x c
①
②
③
④
식 ① X x1
식 ② X x2
식 ③ X x3
2
1 2 3 18 2 0x x x x 2
1 2 3 28 2 0x x x x
2
1 2 3 28 2 0x x x x
2 1 2 31
4x x xx
2 1 2 32
4x x xx
2 1 2 33
4x x xx
식 ④에 대입
21 2 3 1 2 3 1 2 34 4 40
x x x x x x x x xc
21 2 312x x xc
1 2 3
2
12x x x
c ⑤
식 ⑤를 식①에 대입
1 2 32 3 12
128 2 0
x x xx x x
c
2
1 2 32 3 2
248 0
x x xx x
c
2
12 3 2
38 1 0
xx x
c
2
1
2
31 0
x
c
2
1
2
31
x
c
22
13
cx
13
cx
1 ,3
cx
x1은길이이므로양수이다.
x2, x3도 이와 같은 방법으로구하면
2 ,3
cx 3
3
cx
3
1 2 3
88
3 3
cx x x
x2, x3가 0이면 부피가
0이므로안된다.
따라서 최대의 부피는
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition 34/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
(참고) 소거법을 이용한 제약 비선형 최적화 기법- 2차 계획 문제
Given:2 2 2
1 2 3 1 2 3( , , )f x x x x x x
Find: 상점 (x1*, x2*, x3*)
1 2 3 1 2 3( , , ) 1 0h x x x x x x
함수 h (제약조건)를 x1에 대해서정리
1 2 3 1x x x
함수 f 에 x1 대입
2 2 2
2 3 2 3( 1)f x x x x 2 2
2 3 2 3 2 3
2 2
2 3
( 1 2 2 2 )x x x x x x
x x
2 2
2 3 2 3 2 32 2 1 2 2 2x x x x x x
제약조건이없는 함수의상점 구하기
2 3
0f f
x x
2 3
2
4 2 2 0f
x xx
3 2
3
4 2 2 0f
x xx
위 식을 연립하여 풀면, 2
1,
3x
이고, 이를 함수 f 에 대입하면,
1
1
3x 이다.
따라서상점은1 1 1
, ,3 3 3
이다.
3
1
3x
2차 계획 문제- 목적 함수: 2차 형식- 제약 조건: 1차 형식
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
( 0)df
2 3
2 3
0f f
df dx dxx x
35/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
(참고)2변수 함수의 전미분함수의 상점(Stationary Point)을 찾는 방법
1 2
1 2
f fdf dx dx
x x
방향의 변화량1x
방향의 변화량2x
),( *
2
*
1 xxf
),( 21 xxf
),( 2
*
21
*
1 xxxxf
fdf
),( *
2
*
1 xx
22 dxx
11 dxx
1x
2x
1
1
dxx
f
2
2
dxx
f
1x
f
기울기=
f
2x
f
기울기=
- 상점(x1*, x2*)에서는 모든 방향으로함수값의 변화율이 0인 특성이 있음
- 현재 위치가 상점인지 판단하기 위해서는 임의의 방향으로의 함수값변화량을 계산 해야 함
) ,( 21 dxdx
- x1, x2 Coordinate 상에서 임의의 방향으로 dx1, dx2 만큼 변화시켰을 때 함수값의변화량 df 는 0이 되어야 함
주어진 것: ),(),,( *
2
*
1
*
2
*
1 xxfxx
실제 구해야 하는 것:
fxxf
xxxxf
),(
),(
*
2
*
1
2
*
21
*
1
근사적으로 구할 수 있는 것:
dfxxf ),( *
2
*
1
dff
21 , xx 가 아주 작다면
라 볼 수 있음
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition 36/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
Lagrange Multiplier를 이용한 제약 비선형 최적화 기법- 2차 계획 문제
2
2
2
1 )5.1()5.1()( xxf x
02)( 21 xxh x
Original Problem
)2(
)5.1()5.1(
)()() ,(
21
2
2
2
1
xx
xx
hfL
xxx
Lagrange Function
Necessary Condition:
0)()( *** xx hf
)()( *** xx hf
75.0f
5.0f
1 2
1
2
)(xf : )(xf 의 증가 방향
)(xh : )(xh 의 증가 방향
0h
1
1)(,
)5.1(2
)5.1(2)(
2
1xx h
x
xf
1
1)(Cf
C
1
1)(Ch
0.0)(,5.0)( CC hf
02*
2
*
1 xx
)()( *** xx hvf 후보 최적점 C에서 의 의미를 살펴 보면,
0.0)(,75.0)( DD hf
D
73.1
0)(Df
1
1)(Dh
목적 함수 및 제약 함수의 Gradient 벡터는 동일 작용선 상에 있고,
서로 비례하며 이때 Lagrange multiplier v*가 비례 상수임
1,1
1)(,
1
1)( *
CC hf
그러나 점 D에서는 위 식을 만족하지 않으므로 후보 최적점이 아님
**
2
**
1 )5.1(2 ,)5.1(2 vxvx
1,1 **
2
*
1 vxx (점 C)
Minimize
0)( ** , L x
Subject to
Minimize
1x
2x
2차 계획 문제- 목적 함수: 2차 형식- 제약 조건: 1차 형식
37/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
Lagrange 함수의 정의- 등호 제약 조건이 있는 최적화 문제(요약)
등호 제약 조건이 있는 최적화 문제
Lagrange 함수(L)의 정의
), ... ,,()( 21 nxxxff x
pihi , ... ,1 ,0)( x
)()(
)()(),(1
xhvx
xxvx
T
p
i
ii
f
hvfL
Minimize
Subject to
vi = 등호 제약 조건에 대한 Lagrange multiplier로서 부호에 제한이 없음
<이유> 원래의 등호 제약 조건(“등식‛)의 양변에 –를 곱해도 주어진 문제의 해는 변하지 않으므로
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
Lagrange multiplier를 이용한프로펠러 주요치수 결정 예
1
2,
p
v
v
v
v
1
2
p
h
h
h
h
38/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
[참고] 등호 제약 조건이 있는 문제의 후보 최적성 필요 조건- Lagrange multiplier의 도입
,0/),( 121 dxxxdf
0) ,( *
2
*
1 xxh
0)(),(),(),(
1
1
2
*
2
*
1
1
*
2
*
1
1
*
2
*
1
dx
xd
x
xxh
x
xxh
dx
xxdh
0)(),(),(
1
1
2
*
2
*
1
1
*
2
*
1
dx
xd
x
xxf
x
xxf
221
121
1
1
/*)*,(
/*)*,()(
xxxh
xxxh
dx
xd
0/*)*,(
/*)*,(*)*,(*)*,(
221
121
2
21
1
21
xxxh
xxxh
x
xxf
x
xxf
0),(),(
1
2
2
21
1
21
dx
dx
x
xxf
x
xxf
0*)*,(*)*,(
1
21*
1
21
x
xxh
x
xxf
0*)*,(*)*,(
2
21*
2
21
x
xxh
x
xxf
식 (3)은
), ,( 21 xxf 0),( 21 xxhMinimize Subject to
) ,( *
2
*
1
* xxx 를 국부적 후보 최소점이라 가정하면,
등호 제약 조건으로부터
식 (1)
식 (2)
식 (2)를 식 (1)에 대입하면
식 (3)
만일 라고 가정하면식 (4)
한편, 식 (4)를 다시 정리하면
0) ,( *
2
*
1 xxh
0*)*,(*)*,(
1
21*
1
21
x
xxh
x
xxf
0*)*,(*)*,(
2
21*
2
21
x
xxh
x
xxf
요약하면, 가 국부적 후보
최소점이 되기 위해서는 아래의 3가지 조건을
모두 만족해야 함
*) *,(* 21 xxx
위 식에서 v*를 Lagrange multiplier라고 함
221
221*
/*)*,(
/*)*,(
xxxh
xxxf
0) ,( 21 xxh 으로부터 x2를 x1으로 표현할 수 있다. 즉, ))(,(),( 1121 xxfxxf
1변수 함수의 국부적 후보 최소점을 구하기 위해서는
는 양함수 형태이나 일반적으로 이렇게 표현이 안됨)( 12 xx
2
2
211
1
2121
),(),(),( dx
x
xxfdx
x
xxfxxdf
그런데 이므로
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition 39/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
Naval A
rch
itectu
re &
Ocean
En
gin
eerin
g
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
3.3 Kuhn-Tucker Necessary Condition for Inequality constraints
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
Lagrange Multiplier를 이용한 제약 비선형 최적화 기법- 부등호 제약 조건을 포함한 2차 계획 문제
2
2
2
1 )5.1()5.1()( xxf x
02)( 21 xxg x
Original Problem
)2(
)5.1()5.1(
)()() , ,(
2
21
2
2
2
1
2
sxxu
xx
sgufsuL
xxx
Lagrange Function
Necessary Condition:
75.0f
5.0f
1
2
0g
1
1)(Cf
C
1
1)(Cg
0.5
0.5
0.0)(,5.0)( CC gf
5.0g1 2
02 ,02
0)5.1(2 ,0)5.1(2
2
21
2
2
1
1
uss
Lsxx
u
L
uxx
Lux
x
L
0u단,
(1) s = 0일 때(부등호 제약 조건이 등호 제약 조건으로 변환)
(2) u = 0일 때(부등호 제약 조건을 만족함, 즉 부등호 제약 조건이 없는 문제임)
1,1 **
2
*
1 uxx
1,0,5.1 2**
2
*
1 suxx (점 D: 제약 조건을 위배)
후보 최적점(점 C)
02)( 2
21
2 sxxsg x D
0)( *** , s, uL x
Minimize
Subject to
Minimize
부등호 제약 조건을 등호 제약 조건으로변환하기 위해 도입한 완화 변수(slack variable)
2차 계획 문제- 목적 함수: 2차 형식- 제약 조건: 1차 형식
선형 부정 방정식
비선형 부정 방정식
-비선형 부정 방정식을 만족하는 해를 먼저 구함
- 각 해에 대해 선형 부정방정식을 만족하는지를 확인하여 해를 확정한다.
, ( 0 0)u or s
41/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
부등호 제약 조건에 대한 Lagrange multiplier의 부호가양이어야 하는 이유
2
2
2
1 )5.1()5.1()( xxf x
02)( 21 xxg x
Original Problem
75.0f
5.0f
1
2
0g
1( )
1f
C
C
1
1)(Cg
0.5
0.5
0.0)(,5.0)( CC gf
5.0g1 2
Minimize
Subject to제약 조건이
완화되는1) 방향
g
목적 함수 값이감소하는 방향
f
1) 제약 조건 완화됨: 가능해 영역의 범위가 넓어짐
f g
목적 함수 값이 감소하는 방향이 제약 조건이 완화되는 방향과 같다.
즉, 제약 조건이 완화되면 목적 함수 값이 더 작아질 수 있다.
f g
목적 함수 값이 감소하는 방향이 제약 조건이 강화되는 방향과 같다.
즉, 제약 조건이 강화되면 목적 함수 값이 더 작아질 수 있다.
0)()( *** xx guf
Kuhn-Tucker Necessary Condition으로부터
모순!
* * *( )= ( )f u g x x
Case #1
Case #2
Case #1, Case #2로부터* 0u
42/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
부등호 제약 조건이 있는 문제의 후보 최적성 필요 조건(1/2)
부등호 제약 조건
migi , ... ,1 ,0)( x
부등호 제약 조건을 등호 제약 조건으로 변경하기 위해서 완화 변수(slack variable) 을 도입하면,
misg ii , ... ,1 ,0)( 2 x
부등호 제약 조건이 있는 문제의 Lagrange 함수
원래의 부등호 제약 조건이 완화 변수의 도입을 통해 등호 제약 조건으로 변경되었기 때문에Lagrange 함수에 대입하여 정리하면
))(()())(()(),,( 2
1
2sxguxxxsux
Tm
i
iii fsgufL
ui : 부등호 제약 조건에 대한 Lagrange multiplier로서 0보다 크거나 같아야 함
si : 부등호 제약 조건을 등호 제약 조건으로 변환하기 위한 완화 변수
단, 0iu
2
is
)()()()(),(1
xhvxxxvxT
p
i
i fhvfL
vi : 등호 제약 조건에 대한 Lagrange multiplier로서부호에 제한이 없음
[참고] 등호 제약 조건이 있는 문제의 Lagrange 함수
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
43/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
부등호 제약 조건이 있는 문제의 후보 최적성 필요 조건(2/2)
ui : 부등호 제약 조건에 대한 Lagrange multiplier로서 0보다 크거나 같아야 함
si : 부등호 제약 조건을 등호 제약 조건으로 변환하기 위한 완화 변수
부등호 제약 조건이 있는 문제의 Lagrange 함수
부등호 제약 조건이 있는 문제의 후보 최적성 필요 조건
0sux ),,( ***L
njx
gu
x
f
x
L
j
im
i
i
jj
, ... ,1 ,01
*
m, ... ,1 ,0)(2**
isg
u
Lii
i
x
misus
Lii
i
, ... ,1 ,0**
miui , ... ,1 ,0*
))(()())(()(),,( 2
1
2sxguxxxsux
Tm
i
iii fsgufL
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition 44/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
등호 및 부등호 제약 조건이 있는 문제의 후보 최적성 필요 조건- 쿤-터커(Kuhn-Tucker) 필요 조건
njx
gu
x
hv
x
f
x
L
j
im
i
i
j
i
p
i
i
jj
, ... ,1 ,01
*
1
*
pihv
Li
i
, ... ,1 ,0)( *
x
m, ... ,1 ,0)(2**
isg
u
Lii
i
x
misus
Lii
i
, ... ,1 ,0**
miui , ... ,1 ,0* 여기서, 모든 함수 값 및 경사도(Gradient)는 점 에서 계산한다.*x
x*가 국부적 후보 최적해라면 반드시 이 조건을만족해야 함
즉, Kuhn-Tucker 필요 조건은 x*가 국부적 후보최적해이기 위한 필요 조건임
따라서 등호 제약 조건 및 부등호 제약 조건을 가진최적화 문제에 대해, 국부적 후보 최적점을 구하기위한 조건으로 사용할 수 있음
최적화 문제 Minimize ) , , ,()( 21 nxxxff x
,...,pihi 1 ,0)( xSubject to
,...,migi 1 ,0)( x
등호 제약 조건
부등호 제약 조건
Lagrange 함수의 정의
Kuhn-Tucker 필요 조건: 0suvx ),,,(L
))(()()(
))(()()(),,,(
2
1
2
1
sxguxhvx
xxxsuvx
TT
m
i
iii
p
i
ii
f
sguhvfL
vi : 등호 제약 조건에대한 Lagrange multiplier로서부호에제한이없음
ui : 부등호제약 조건에대한 Lagrange multiplier로서 0보다 크거나같아야함
si : 부등호제약 조건을등호 제약 조건으로변환하기위한 완화 변수
45/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
제약 비선형 최적화 문제- Kuhn-Tucker 필요 조건을 이용한 국부적 후보 최적해 도출
0232 121
1
uxxx
x
L
0232 212
2
uxxx
x
L
0,0,06 222
2
2
1
ussxx
u
L
02
us
s
L
21
2
2
2
1 3)( xxxxf x
06)(2
2
2
1 xxg x
Minimize
CASE #2 : 0s (제약 조건의 경계 상에 해가 있는 경우)
두가지 경우가 나옴
)6(3),,( 22
2
2
121
2
2
2
1 sxxuxxxxsuL x
1
2
3
CASE #1 : 0u
023
032
21
21
xx
xx0)(,00 2121 **** x,xfx,x
(제약 조건을 고려하지 않아도 되는 경우)
점 A:
①
②
③
식①을 정리 1 2 12 3 2 0,x x ux 2
1
31
2
xu
x
식②에 대입2
2 1 2
1
32 3 2( 1 ) 0
2
xx x x
x
2
22 1 2
1
2 3 2 3 0,x
x x xx
2
21
1
3 3 ,x
xx
2 2
2 1x x
식③에 대입 2
12 6,x 1 3x
A
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition 46/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
제약 비선형 최적화 문제- Kuhn-Tucker 필요 조건을 이용한 국부적 후보 최적해 도출
0232 121
1
uxxx
x
L
0232 212
2
uxxx
x
L
0,0,06 222
2
2
1
ussxx
u
L
02
us
s
L
CASE #1 : 0u
CASE #2 : 0s
023
032
21
21
xx
xx0)(,00 2121 **** x,xfx,x
2
5,321 uxx
B
C
21
2
2
2
1 3)( xxxxf x
06)(2
2
2
1 xxg x
Minimize
(제약 조건을 고려하지 않아도 되는 경우)
(제약 조건의 경계 상에 해가 있는 경우)
두가지 경우가 나옴
)6(3),,( 22
2
2
121
2
2
2
1 sxxuxxxxsuL x
1
2
3
점 A:
A3),(,3 *
2
*
1
*
2
*
1 xxfxx2
1,321 uxx
점 B:
2
1,321 uxx 3),(,3 *
2
*
1
*
2
*
1 xxfxx점 C:
점 E:
D
E
2
5,321 uxx 점 D: 15),(,3,3 *
2
*
1
*
2
*
1 xxfxx
15),(,3,3 *
2
*
1
*
2
*
1 xxfxx47/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
K-T 필요 조건을 이용한 2차 계획 문제 최적해 구하기- xi의 부호 제약이 없을 경우(1/3)
042)(
042)(
212
211
xxg
xxg
x
x
Minimize
Subject to
222)( 21
2
2
2
1 xxxxf x
Lagrange 함수
x1
x2
1 2 3 4
1
2
3
4
A
g2 = 0
g1 = 0
92*
34
34* )(),,( xx f
최적해(점 A)
가능해 공간
f = 1.32
f = 0.64
2 2
1 2 1 2
2
1 1 2 1
2
2 1 2 2
( , , , ) 2 2 2
( 2 4 )
( 2 4 )
L x x x x
u x x s
u x x s
x u s ζ
2차 계획 문제- 목적 함수: 2차 형식- 제약 조건: 1차 형식
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
48/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
K-T 필요 조건을 이용한 2차 계획 문제 최적해 구하기- xi의 부호 제약이 없을 경우(2/3)
Lagrange 함수
Kuhn-Tucker 필요 조건:
2 2
1 2 1 2
2
1 1 2 1
2
2 1 2 2
( , , , ) 2 2 2
( 2 4 )
( 2 4 )
L x x x x
u x x s
u x x s
x u s ζ
042)(
042)(
212
211
xxg
xxg
x
x
222)( 21
2
2
2
1 xxxxf x
0ζsux ),,,(L
1 1 2
1
2 2 2 0L
x u ux
2 1 2
2
2 2 2 0L
x u ux
2
1 2 1
1
2 4 0L
x x su
2
1 2 2
2
2 4 0L
x x su
1 1
1
2 0L
u ss
2 2
2
2 0L
u ss
0, 1,2iu i
2차 계획 문제- 목적 함수: 2차 형식- 제약 조건: 1차 형식
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition
49/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
K-T 필요 조건을 이용한 2차 계획 문제 최적해 구하기- xi의 부호 제약이 없을 경우(3/3)
Lagrange 함수
x1
x2
1 2 3 4
1
2
3
4
AB
C
g2 = 0
g1 = 0
92*
34
34* )(),,( xx f
최적해(점 A)
가능해 공간
f = 1.32
f = 0.64
2 2
1 2 1 2
2
1 1 2 1
2
2 1 2 2
( , , , ) 2 2 2
( 2 4 )
( 2 4 )
L x x x x
u x x s
u x x s
x u s ζ
D
I
Case #1: s1=s2=0일 때(최적해, 점 A)
92
2134
21 , uuxx
Case #2: u1=s2=0일 때(점 B)
512
152
257
256
1 ,,, suxx
Case #3: u2=s1=0일 때(점 C)
512
252
156
257
1 ,,, suxx
Case #4: u1=u2=0일 때(점 D)
1,1 2
2
2
121 ssxx
음수여서안됨
음수여서안됨
음수여서안됨
2차 계획 문제- 목적 함수: 2차 형식- 제약 조건: 1차 형식
50/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
K-T 필요 조건을 이용한 2차 계획 문제 최적해 구하기- xi가 음이 아닐 경우(1/4)
042)(
042)(
212
211
xxg
xxg
x
x
Minimize
Subject to
222)( 21
2
2
2
1 xxxxf x
최적해는92*
34
34* )(),,( xx f
단, 0,0 21 xx
x1
x2
1 2 3 4
1
2
3
4
A
g2 = 0
g1 = 0
92*
34
34* )(),,( xx f
최적해(점 A)
가능해 공간
f = 1.32
f = 0.64
042)(
042)(
212
211
xxg
xxg
x
x
Minimize
Subject to
222)( 21
2
2
2
1 xxxxf x
단, 1 20, 0x x
2
1 1 2 1
2
2 1 2 2
( ) 2 4 0
( ) 2 4 0
g x x s
g x x s
x
x
Minimize
Subject to
222)( 21
2
2
2
1 xxxxf x
2 2
1 1 2 20, 0x x
“” 형태의부등호 제약 조건:
완화 변수(slack variable)의 도입
2차 계획 문제- 목적 함수: 2차 형식- 제약 조건: 1차 형식
51/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
K-T 필요 조건을 이용한 2차 계획 문제 최적해 구하기- xi가 음이 아닐 경우(2/4)
x1
x2
1 2 3 4
1
2
3
4
A
g2 = 0
g1 = 0
92*
34
34* )(),,( xx f
최적해(점 A)
가능해 공간
f = 1.32
f = 0.64
2
1 1 2 1
2
2 1 2 2
( ) 2 4 0
( ) 2 4 0
g x x s
g x x s
x
x
Minimize
Subject to
222)( 21
2
2
2
1 xxxxf x
2 2
1 1 2 20, 0x x
Lagrange 함수2 2
1 2 1 2
2
1 1 2 1
2
2 1 2 2
2 2
1 1 1 2 2 2
( , , , , ) 2 2 2
( 2 4 )
( 2 4 )
( ) ( )
L x x x x
u x x s
u x x s
x x
x u s ζ δ
Kuhn-Tucker 필요 조건: ( , , , , )L x u s ζ δ 0
2
1 1
1
0L
x
2
2 2
2
0L
x
1 1 2 1
1
2 2 2 0L
x u ux
2 1 2 2
2
2 2 2 0L
x u ux
2
1 2 1
1
2 4 0L
x x su
2
1 2 1
2
2 4 0L
x x su
1 1
1
2 0L
u ss
2 2
2
2 0L
u ss
1 1
1
2 0L
1 1
1
2 0L
2차 계획 문제- 목적 함수: 2차 형식- 제약 조건: 1차 형식
52/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.2009 Fall, Computer Aided Ship Design – Part1.Optimal Ship Design
K-T 필요 조건을 이용한 2차 계획 문제 최적해 구하기- xi가 음이 아닐 경우(3/4)
, 0, 1,2i iu i 1 1
1
2 0L
Kuhn-Tucker 필요 조건: ( , , , , )L x u s ζ δ 0
2
1 1
1
0L
x
2
2 2
2
0L
x
1 1
1
2 0L
1 1 2 1
1
2 2 2 0L
x u ux
2 1 2 2
2
2 2 2 0L
x u ux
2
1 2 1
1
2 4 0L
x x su
2
1 2 2
2
2 4 0L
x x su
1 1
1
2 0L
u ss
2 2
2
2 0L
u ss
2
1 1x 2
2 2x
대입 대입
양변에 를 곱한다.1
2
1 12 0 2
2 22 0
양변에 를 곱한다.2
2 22 0x
1 1 2 1
1
2 2 2 0L
x u ux
2 1 2 2
2
2 2 2 0L
x u ux
2
1 2 1
1
2 4 0L
x x su
2
1 2 2
2
2 4 0L
x x su
1 1
1
2 0L
u ss
2 2
2
2 0L
u ss
1 12 0x
Kuhn-Tucker 필요 조건: ( , , , , )L x u s ζ δ 0
, , 0, 1,2i i iu i
2차 계획 문제- 목적 함수: 2차 형식- 제약 조건: 1차 형식
- Ch.3 Optimality Condition Using Kuhn-Tucker Necessary Condition 53/54
2009 Fall, Computer Aided Ship Design – Part1 Optimal Ship Design
SDAL@Advanced Ship Design Automation Lab.http://asdal.snu.ac.kr
Seoul NationalUniv.
K-T 필요 조건을 이용한 2차 계획 문제 최적해 구하기- xi가 음이 아닐 경우(4/4)
Lagrange 함수
x1
x2
1 2 3 4
1
2
3
4
AB
C
g2 = 0
g1 = 0
92*
34
34* )(),,( xx f
최적해(점 A)
가능해 공간
f = 1.32
f = 0.64
Case #1: s1=s2=1=2=0일 때(점 A)
92
2134
21 , uuxx
Case #2: u1=s2=1=2=0일때(점 B)
512
152
257
256
1 ,,, suxx
Case #3: u2=s1=1=2=0일때(점 C)
512
252
156
257
1 ,,, suxx
Case #4: u1=u2=1=2=0일 때(점 D)
1,1 2
2
2
121 ssxx
D
E
Case #5: u1=u2=x1=x2=0일 때(점 E)
2
,4,0
21
2
2
2
121
ssxx
Case #6: u1=s2=x1=x2=0일때(점 E)
042
,4,0
2
221
2
121
sxx
sxx
Case #7: u2=s1=x1=x2=0일때(점 E)
042
,4,0
2
121
2
221
sxx
sxx
Case #8: s1=s2=x1=x2=0일 때(점 E)
042
,042,0
2
221
2
12121
sxx
sxxxx
F
H
G I
Case #9: u1=s2=2=x1=0일 때(점 F)
3,2
,1,2,0
1
2
1
221
s
uxx
Case #10: u2=s1=1=x2=0일 때(점 G)
3
,2,1,0,2
2
2
2121
suxx
Case #11: s1=s2=1=x2=0일 때(점 G)
042
,0,2
2
221
21
sxx
xx
Case #12: u2=s1=2=x1=0일 때(점 H)
14,4
,6,4,0
1
2
2
121
s
uxx
Case #13: s1=s2=2=x1=0일 때(점 H)
042
,4,0
2
221
21
sxx
xx
Case #14: u1=s2=1=x2=0일때(점 I)
14,4
,6,0,4
2
2
1
221
s
uxx
Case #15: u1=u2=2=x1=0일 때(점 J)
2,2
,3,1,0
1
2
2
2
121
s
sxx
Case #16: u1=u2=1=x2=0일 때(점 K)
2,3
,2,0,1
2
2
2
2
121
s
sxx
J
K
음수여서안됨
음수여서안됨
음수여서안됨
음수여서안됨
음수여서안됨
음수여서안됨
음수여서안됨
음수여서안됨
음수여서안됨
음수여서안됨
음수여서안됨
음수여서안됨
제약 조건 위배
제약 조건 위배
제약 조건 위배
제약 조건 위배
제약 조건 위배
2 2
1 2 1 2
2
1 1 2 1
2
2 1 2 2
2 2
1 1 1 2 2 2
( , , , , ) 2 2 2
( 2 4 )
( 2 4 )
( ) ( )
L x x x x
u x x s
u x x s
x x
x u s ζ δ
2차 계획 문제- 목적 함수: 2차 형식- 제약 조건: 1차 형식
54/54
Top Related