인공지능

최적화 Optimisation

복습은만점의지름길 2019. 9. 3. 12:27
반응형

글을 올리기 앞서 저는 인공지능을 대해 뛰어난 지식을 갖추진 못했지만 제가 학교 다닐 때 배웠던 인공지능에 대해 조금 더 제대로 알고 싶은 마음에 제가 공부한 것을 같이 공유하고 싶어 블로그를 개설했습니다. 단순히 사전적 내용을 덧붙이기보다는 제가 이해한 내용을 알기 쉽게 표현하려 노력하겠습니다. 오류나 부족한 부분들이 존재할 수 있으니 미리 양해 부탁드리고 혹시 제가 잘못 알고 있는 부분이 있다면 겸허히 받아들여 더 발전할 수 있도록 노력하겠습니다. 

 

일단 최적화의 사전적 의미란 주어진 범위 안에서 최댓값 또는 최솟값을 찾아 자원 또는 비용의 효율성을 추구하는 것입니다. 이것이 인공지능에서는 어떤 의미로 씌는지 알아보도록 하겠습니다. 

 

수학 문제를 풀게 될 때 우리는 단 하나의 정답을 찾아야 합니다. 수많은 오답들 사이에서 정답 하나를 찾는 것을 절대적인 문제라고 표현합니다. 하지만 현실에서 우리가 직면하는 수많은 문제들은 단 하나의 정답을 찾는 것보다 훨씬 복잡합니다. 

 

예를 들어 한 물건을 생산하는 기계가 있고 기계의 속도는 1에서 1000까지 조절 가능합니다. 만약 속도를 1000으로 조절해 가장 빠르게 물건을 만들어낼 수 있다면 물건을 빨리 만들어 낼 수 있지만 기계가 빠르게 마모되고 금방 고장 나 버릴 겁니다. 그렇다면 기계의 속도를 1로 조절해 기계수명을 최대한 늘린다면? 물건 생산 속도가 엄청나게 느려져 생산성이 나빠질 겁니다. 즉 생산속도와 기계수명을 적절히 조절할 수 있는 중간값을 찾아야 할 겁니다. 이것이 바로 최적화 문제인 것입니다. 

 

다시 한번 현실적인 상황에서 맞딱드릴수 있는 예를 가지고 설명해 보겠습니다. 저는 현재 경남 창원 진해구에 거주하고 있는데 가끔 부산 서면에 가야 할 때가 있습니다. 이때 내비게이션으로 경로를 검색해보면 몇 가지 경로가 검색됩니다.

 

 

최단거리

최단시간

최단 비용

큰길 위주 

의 제 각각의 기준에 따라 최적의 경로가 설정됩니다. 

 

과연 이중에 최적의 경로는 무엇일까?라고 한다면 정답은 모두 다입니다. 어떤 기준에 따르냐에 따라 답이 달라지기 때문이죠.

 

1. 고속도로 통행료 1800원을 내더라도 최대한 빨리 도착해야 한다면?

2. 조금 늦더라도 기름값과 통행료를 아낄 수 있는 경로?

3. 편하게 운전하기 위해 시내길이 아닌 신호가 없는 큰길로 가는 경우?

 

등등에 따라 기준이 달라지고 달라진 기준에 따라 정답이 달라지기 때문입니다. 하지만 만약 복잡한 출퇴근 시간대 최대한 빨리 도착하기 위한 1번 길을 택했는데 도로가 막힌다면 어떻게 될까요? 추가적인 비용을 지불했음에도 원하는 목적(빨리 도착하기)을 이루 내지 못하게 됩니다. 또는 편하게 가기 위해 신호가 없는 동서고가대로로 갔는데 사고 또는 교통체증으로 꽉 막혀 가다 서다를 반복한다면? 이렇게 정해진 기준이 변해버려 최적의 결과를 내지 못하게 돼버립니다. 

 

즉 최적화 문제는 너무 복잡한 문제입니다 왜냐하면

- 해결책이라고 정의할 수 있는 기준이 불명확하거나 수시로 변하기 때문에

- 가능한 해결책이 너무 많기 때문에

 

그리고 해결책이 정의되어 있다고 하더라도 제한된 시간과 능력 내에서 찾은 이 최적의 값이 최선이라고 확신할수 있을까요? 

그렇다면 더 나은 해결책들이 있는지 더 찾아봐야 할까요?

더 나은 해결책을 찾는다면 바로 멈춰야? 

오직 최고의 값을 찾을 때까지?

정해진 시간과 능력 내에서 찾을 수 있을 때까지?

적당히 괜찮은 해결을 찾을 때까지?

 

이렇게 최적화의 개념에 대해 간단히 알아봤습니다. 하지만 최적화는 정말 복잡한 문제입니다. 최적의 값을 찾는 기준부터 최적의 조건 무엇하나 확실하게 정의할수 없기 때문입니다. 이후로는 최적의 값을 구하기 위한 알고리즘들과 다른 최적화 문제들에 대해 알아보도록 하겠습니다. 

 

 

 

 

 

 

 

 

 

반응형