Research/Genetic Algorithms

Many-objective problem

shhyun 2017. 6. 17. 23:20

최근에 Multi- 혹은 Many-objective 에 대한 연구를 진행하고 있다. 회사에서 필요한 부분도 있지만, 오랫동안 개인적으로 연구해오던 테마이기도 하기 때문에, 꽤 많은 자료를 다시 살펴보고 연구를 진행하고 있다.


만약, 목적함수의 개수가 하나라고 가정하자. 이 경우에는 최소 혹은 최대라는 하나의 값으로 수렴해나갈 수 있다. 그러나 Trade-off 관계에 있는 2개의 목적함수를 사용할 경우에 한쪽이 상승할 경우, 필연적으로 다른 한쪽은 낮아질 수 밖에 없다. 만약 3개 이상의 목적함수가 각각이 상보적인 관계일 경우, 값의 방향성을 어떻게 잡아가야 하는 지는 더욱 모호해질 수 밖에 없다.


이러한 문제들에 대한 보편적 접근 방식은 Weight 를 적용하여 목적함수에 대한 가중을 두어 수렴시키는 방식이다. 예를 들면 보행 로봇의 직진성과 좌/우 흔들림에 대해서 직진성에 0.8, 좌/우 흔들림에 0.2 와 같은 식으로 가중치를 두어 더 빠르게 움직이는 것을 더 중요하다고 보는 식이다.


우리가 정확하게 어떤 Spec 을 주고, 그 Spec에 맞도록 학습/최적화를 진행한다고 할 때에는 관계가 없을 수도 있다. 그러나 때로는 이 가중치를 정의하기 어려운 경우가 있을 수 있다. 그리고 정 반대로 수 많은 선택지를 만들어내고, 그 속에서 무엇인가를 고르고 싶은 경우도 있다.


Multi- 혹은 Many-objective 에 대한 연구는 이러한 방향성을 가지고 있다. 즉, 기존에 Weight 를 주어 하나의 값으로 수렴시키는 것을 목적으로 했다면, 이 연구는 어떻게 더 넓게 해를 표현할 수 있는지에 관심을 갖는다. 그리고 Trade-off 관계에 있는 다양한 해를 효율적으로 찾아가는데에 목적을 갖는다. 이렇기에 현실 문제에 적용하기가 좋은 특징이 있어서, 많은 관심을 갖고 연구를 진행하고 있다.


다음에는 관련해서 진행되어온 연구들을 정리할 예정이다.  --> 과연 이걸 언제쯤 하나씩 하게될까...