<시리즈> 첨단 컴퓨터의 세계(171)

유전자 알고리듬은 일반적인 생물의 진화과정보다는 훨씬 단순하므로 이 방법이 과연 유전자를 이용하는 지능적인 수단이 될 수 있겠느냐고 반문하는 사람들이 많다. 동식물보다도 훨씬 복잡하고 정교한 인간의 판단에 필적하기 위해서는 보다 정교한 오퍼레이터들이 필요할 것이며 하나의 적합도에 의해 판단된 결과를 지능적인 것으로 받아들이기가 어려운 것도 사실이다.

그러나 멘델이 완두콩의 교배를 통해 잎의 색깔을 관찰하고 연구하는데 일생 을 바친 것에 비해 고도로 발달된 현대의 컴퓨터를 이용하여 시뮬레이션함으로써 오랜 시간이 걸리는 종의 특성을 빠른 시간내에 분석해볼 수 있다는 장점을 가지고 있다.

그러면 유전자 알고리듬이 첨단 컴퓨터이론에서 차지하는 역할과 주요영역은 무엇일까. 유전자 알고리듬은 지능적인 처리나 판단을 필요로 하는 지능시스템에서 중요한 역할을 기대할 수 있다. 유전자 알고리듬은 특정한 응용에 있어서 적절한 평가함수를 사용하여 최적의 적합도를 가진 염색체를 구함으로써 전역적 최소값의 구현이 가능할 것이다.

그러나 유전자 알고리듬을 이용한다고 해서 전역적 최소값을 항상 구할 수있는 것은 아니다. 우리가 가정하는 평가함수에 따라 결과가 서로 다를 수도있으며 돌연변이의 확률에 따라서 다를 수도 있는 것이다.

또한 진화의 세대를 얼마로 하느냐 또는 수렴값을 어떻게 결정하느냐에 따라 그 결과가 달라지기도 한다는 점에 유의하여야 한다. 이 점은 필자가 몇년전부터 유전자 알고리듬을 시뮬레이션해 본 결과이기도 하다.

유전자 알고리듬에 대한 연구는 몇년전부터 몇몇 사람들의 관심속에서 진행 되었다. 그것은 주로 제어분야에 적용되었으나 최근에는 그 응용범위가 점차 확대되고 있다.

국제적으로는 1988년도에 제1회 국제학술대회가 열렸으며 올해로 6회를 맞이 하였다. 국내에서도 올해 11월초에 진화연산연구회가 창립되었는데 한국퍼지 시스템학회 산하의 연구회로 지능제어와 최적화에 관한 여러편의 논문을 발표한 바 있다.

동적인 환경에서의 시스템의 성공적인 결과는 종종 적응적인(Adap-tive)해결 방안을 필요로 한다. 많은 응용분야들은 노이즈, 고차원, 여러개의 반응 또는 애매함 등으로 인해 좋은 해답을 얻기 힘들다.

따라서 이러한 분야들에 있어서 유전자 알고리듬의 적절한 적용은 상당히 좋은 결과를 도출할 수 있다. 그렇다고 해서 이러한 해결방법이 항상 최적의 해답을 가져다 주는 것은 아니며 다만 어느 정도 수용이 가능하다는 점이다.

유전자 알고리듬의 주요 응용분야는 소프트웨어 디자인, 스케줄링 문제, 순회판매원 문제와 같은 경로배정문제, 그리고 최적화나 기계학습 등이 있다.

몇가지 예를 들어보자. 첫째, 동적인 프로세서 제어분야다. 일반적인 접근방법으로는 프로세서의 효용성을 인간이 미리 지정한 알고리듬을 따라 가는 것인데 유전자 알고리듬을 이용한 적응적인 시스템에 응용될 경우에는 프로세서의 변화에 따라 동적으로 변화하게 되는 장점을 가지고 있다.

둘째, 유전자 알고리듬은 주어진 규칙들로부터의 연역과 최적화를 이룰 수있다. 셋째 새로운 연결 토폴로지를 발견할 수 있다. 신경망과의 효과적인 결합을 통해 신경망이 안고 있는 지역최소점의 문제를 극복하여 연결강도 조정을 통한 보다 지능적인 시스템 구현에 기여할 수 있다.

넷째, 행위와 진화모델에 관한 생물학적인 시뮬레이션이 가능하다.

유전자알고리듬은 특정한 영역에서의 효과적인 탐색 퓨리스틱을 제공하여 컴퓨터나 공학분야에 상당히 많은 응용 가능성을 내포하고 있다. 그러나 이 방법 또한 몇개의 오퍼레이터에 국한돼 변화하기 때문에 거창한 이름에 비해 그 성과는 아직까지도 미지수다. 보다 정교하고 다양한 이론의 확립과 적절한 응용이 기대된다.

브랜드 뉴스룸