최적화를 공부해야하는 이유는?
- 어떤 변수가 존재하고 그 변수에 따른 비용이 존재할 때, 비용을 최저로 줄이는 변수를 찾을 수 있습니다. (효율적이다!)
지금 공부할 convex optimization은 convex 형태의 최적화 문제를 푸는 방법입니다.

convex optimization에는 inequality와 equality라는 조건이 존재합니다. 이 조건들이 만족하는 범위내에서의 변수 중 가장 낮은 cost를 갖는 변수를 찾아야 합니다.
우리가 최적화할 함수를 표현할 때는
1.
2.
조금 간단하게 벽지를 사는 문제로 예시를 들어보겠습니다. 벽지를 살 때 간단하게 2가지 조건이 붙는데
- 첫 번째는 벽과 벽지의 크기가 같아야합니다. (equality)
- 두 번째는 예상한 금액 안에서 해결해야합니다. (inequality)
여기서는 cost는 variable이 되고 variable은 벽지의 종류가 될 것입니다. 우선 벽에 딱 맞는 벽지들 중에서 가격을 비교하여 예산안에 들어오는 벽지들을 찾아야합니다. 조건들을 충족하는 선택지를 feasible solution 이라고 합니다. 이때 조건을 충족하는 선택지가 여러 개가 존재할 수 있습니다. 이 feasible solution들을 모아서 feasible set이라고 부릅니다.
조건을 만족하는 선택지 중 가장 적은 비용의 선택지를 optimal solution이라고 합니다.
- feasible set에 포함되면서 cost를 최소화 시켜주는 solution이 optimal solution
Convex optimizaiton problem의 정의
convex optimizaiton problem이 되기 위해서는 object function
feasible set이 convex하다는 건 어떤 걸까요?

feasible set이 convex하기 위해서는 사진의 첫 번째 집합과 같아야 합니다. 즉 집합에 존재하는 점과 점을 이었을 때 그 선분도 집합에 포함되어야 합니다.
즉 set에 존재하는 모든

다음과 같은 벡터가 만들어집니다. 그리고 여기다
이제 convex function에 대해서 알아보겠습니다.
Convex function
convex set은 두 점 사이의 점들이 set안에 존재한다는 조건을 만족시키면 됬었습니다.
그럼 convex function은 어떨까요?
마찬가지로 함수위에 임의의 두 점을 고르고 그 사이를 선으로 이었을 때 함수값들이 선보다 아래 존재하면 됩니다. 이 선분은

convex한 경우 모든 구간에서 미분이 가능한데 이때 두 번 미분하면 양수가 나오게 됩니다. 만약 두 번 미분했을 때 행렬이 만들어진다면 그 행렬이 positive definite matrix가 됩니다.
이렇게 feasible set이 convex하고 object function이 convex할 때 convex optimizaiton problem이라고 합니다. convex optimizaiton problem은 local minimum이 optimal solution이 되기 때문에 간단하게 문제를 해결할 수 있습니다.
만약 convex optimization problem에서 local minimum을 찾았는데 이 local minimum보다 작은 것이 있다면 그것은 local minimum이 아닙니다. 주변에 더 작은 값이 존재하는 것이기 때문입니다.
왜 전 구간 convex여야만 convex problem일까?

사진 속 함수는 전 구간 convex하지는 않지만 부분적으로 convex합니다. (
이렇게 된 경우 initialize 과정에서 convex하지 않은 바깥 부분에서는 초기화 할 때 최적화하기가 어려워집니다.
'수학 > 최적화 공부' 카테고리의 다른 글
2. 최적화 기법들 (0) | 2022.06.06 |
---|