실시간 뉴스



[유성민]모든 사물의 AI 핵심은, 유전 알고리즘


IoT 기반의 스마트시티는, 인간을 포함한 모든 것들을 IT로 연결하여 형성한 도시를 의미한다. 그렇기 때문에 스마트시티의 핵심은 바로 '연결'이다.

모든 것이 연결되어 있기 때문에 서로의 정보를 주 받을 수 있고 스스로 정보를 기반으로 최적의 판단 내릴 수 있다. 그런데 여기에서 한 가지 짚고 넘어가야할 부분이 있다. 그건 바로 "어떻게 정보를 기반으로 최적의 선택을 할 수 있냐?" 이다.

인터넷의 빠른 발전과 IoT 기술의 등장은, 지식의 양 혹은 정보의 양은 급속도로 증가 시켰다. 정보의 생산 층이 소수에게만 몰린 것이 아닌 다수에게 정보생산의 기회가 많아지면서 정보의 생산량은 급속하게 증가 하였다.

뿐만 아니라 정보의 공유를 더욱더 쉽게 만드는 것 또한 정보생산자의 생산능력을 향상시켰고 정보의 생산량을 증가시켰다. 거기에 더하여 IoT 기술의 도래는 모든 사물들의 정보를 통신에서 생산하고 공유가 가능하게 하였다. 그리고 이는 또 다른 정보의 양을 증가 시킨 결과를 초래하였다.

이러한 트랜드로 인해, 정보의 양은 우리가 다룰 수 있는 정보의 양은 폭발적으로 증가했고 '빅데이터'라는 새로운 개념이 등장하였다. 정보의 양은 증가와 함께 많은 기업들이 정보의 중요성을 인식하면서 '빅데이터 분석'은 중요하게 되었다.

다시 본론으로 돌아와서, 기기들은 정보의 바다에서 필요한 정보를 서로 주고받는다. 그리고 정보를 기반으로 IoT 기기는 최적의 선택을 하여야 한다. 그것도 적은 양의 정보가 아닌 많은 양의 정보를 분석해야 한다. 뿐만 아니라 계속해서 새로운 정보가 업데이트 되고 있기 때문에 기기는 스스로 최적의 판단에 대한 지식 또한 업데이트 되어야 한다.

정리하면 이미 IoT 세상으로 수많은 기기들은 연결되고 있으며, 많은 기기들이 서로 정보를 생산하여 주고받고 있다. 따라서 IoT 기기 스스로 AI(Artificial Intelligence)를 구현하기 위해서는 '최적의 선택'을 내릴 수 있도록 만드는 적합한 기술이 필요하다.

해답은 바로 다윈의 진화론에...

다윈의 진화론은 생물의 다양성을 설명하는 이론이다. 다윈의 이론에 따르면 생물이 다양성을 유지하여 다양한 환경과 변화하는 환경에 살아남을 수 있다고 한다. 생물의 다양성을 형성하는 방법에는 크게 두 가지가 있다.

첫 번째는 부와 모가 만나서 반반씩 유전자를 서로 결합하여 새로운 자손을 만드는 과정인, 유전자재조합이 있다. 두 번째의 경우 유전자 재조합과정 중 이상이 발생하여 유전자의 잘못된 변질로 이상한 개체 혹은 새로운 개체가 생성되는 형상인, 돌연변이가 있다.

위 두 가지의 생물학적인 발생으로 생물이 멸종하지 않고 다양성을 유지하면서 오랫동안 생존할 수 있었던 이유를 설명할 수 있다. 유전자재조합은 생물 내의 경쟁에서 이기게 하기 위해서 기존환경에 더욱더 잘 맞는 개채를 생성하게 한다는 장점이 있다.

반면 돌연변이는 무계획적으로 예측불가능하게 발생한 유전사고이다. 돌연변이라고 해서 열성개체를 생성하는 것은 아니다. 돌연변이로 인해 기존 개체보다 더 강력한 개체가 등장할 수 있다.

전자의 경우 점진적인 반면에 후자의 경우 급진적이라 할 수 있다. 특히 갑작스런 환경변화 발생 시 급격하게 변화한 환경에 적응하는 돌연변이가 발생되었다고 가정해보자.

만일 확률이 100,000 분의 1이라고 하더라도 이러한 돌연변이가 태어난다면 그 개체 종은 멸종하지 않고 급격하게 변화한 환경에 생존 할 수 있게 된다. 환경은 끊임없이 변화하고 복잡하다. 따라서 위의 유전학적인 방식은 개체가 생존하는데 최적의 방법이다.

변화하는 환경에 잘 적응하는 생명체의 친화방법론을 그래도 컴퓨터의 알고리즘에 적용하였는데, 이를 유전자 알고리즘 (Genetic Algorithm)이라 한다. 유전자 알고리즘은 유전학 방법을 그대로 구현하였기 때문에 변수가 많거나 수많은 정보 속에서 스스로 기기가 최적의 선책 도출이 가능하다. 그렇다면 유전자알고리즘을 활용하여 어떻게 최적의 선택을 도출하게 하는 것일까?

유전자 알고리즘은 다윈의 진화론의 개념을 빌려서 만든 알고리즘이다. 따라서 유전알고리즘은 실제 유전자의 결합 프로세스와 매우 동일하다.

유전 알고리즘의 주어진 문제에 대한 가능한 해들은 하나의 개체가 된다. 그리고 이러한 개체는 개체군이라는 집합을 이룬다. 하나의 개체는 생물학적 유전인자인 염색체에 해당하는 이진 스트링을 가지고 생물학적 개체와 마찬가지로 선택(selection) 혹은 재생산(reproduction), 교배(crossover), 돌연변이(mutation)과정을 거쳐 다음 세대의 새로운 자손(offspring)을 인공적으로 만드는 과정들을 반복하여 최적의 값에 도달한다.

다시 말하여 여러 개체들을 임의로 선택하고 교배를 시킨다. 그리고 기존의 방식보다 더 나은 최적의 해가 돌연변이 발생과 같이 발생한다면 그 값을 최적의 값으로 선택하는 것이다. 그리고 최적의 값을 고려하여 다시 위의 과정을 앞의 결과 값보다 최적의 값이 나올 때까지 구한다.

결국 유전 알고리즘은 어떠한 문제에 대하여 가능한 해들의 집합을 정해진 형태의 데이터 구조로 표현하고 이 데이터 구조를 반복적으로 유전자의 재결합이나 돌연변이의 형태처럼 변형함으로써 최적의 해들을 찾는 알고리즘이라고 할 수 있다.

이 방법은 최적의 값이 도출할 수 없는 상태에서 가장 적합한 방법으로서, 데이터의 분석양이 많거나 데이터가 끊임없이 업데이트 될 때 적합한 알고리즘이다. 끊임없이 스스로 최적의 솔루션을 찾아가게끔 하기 때문에 시스템 자체적으로 최적의 솔루션을 도출하게 하는 것이다.

수많은 변수들을 고려해야 하고 네트워크 통신으로 가장 복잡하게 얽혀있는 스마트시티에서는 유전자알고리즘이 적합하다. 뿐만 아니라 끊임없이 정보가 쌓이고 그때 마다 새로운 최적의 값이 도출이 필요할 때에도 마찬가지이다. 그 이유는 최적의 솔루션을 찾기 위해 유전알고리즘은 계속해서 진화의 과정을 계속 반복하기 때문이다.

유성민

ICT 융합기술 및 보안솔루션 분야를 연구하고 있다. 현재 보안솔루션 회사에서 기획 및 해외사업 업무를 담당하고 있다. 블로그(http://blog.naver.com/dracon123)에서도 열정적으로 활동하고 있으며 IT 칼럼리스트로서 다양한 IT 칼럼들을 연재하고 있다.








alert

댓글 쓰기 제목 [유성민]모든 사물의 AI 핵심은, 유전 알고리즘

댓글-

첫 번째 댓글을 작성해 보세요.

로딩중
포토뉴스