글 수 4

인공생명, 새로운 생명의 창조

조회 수 292 추천 수 0 2016.03.25 02:21:55


인공생명의 정의

 

인공지능(Artificial Intelligence)이 인공적으로 지능을 구현하려는 학문인 것처럼, 인공생명(Artificial Life) 역시 인공적인 생명체에 대한 연구를 목적으로 하는 학문이다. 1987년 9월, 로스앨러모스(Los Alamos)에서 처음 열린 인공생명 워크숍을 기점으로 시작된 새로운 연구분야이다.

 

기존 생물체가 세포로 구성된 탄소기반의 화학작용에 기초하고 있다면, 인공생명은 비유기체 물질을 재료로 하며, 그 본질은 정보로 이루어져 있다. 현재 지구의 탄소에 기초한 생명형태 이외에도 우주에는 무수히 많은 생명형태가 존재할 것이라는 전제를 깔고 있다.

 

인공생명을 바라보는 관점에는 다음과 같이 두 가지가 있다. '약한 인공생명(Weak ALife)'은 단순히 자연에 있는 생물체의 매커니즘을 모방하며 모의실험하는 정도라는 주장이고, '강한 인공생명(Strong ALife)'을 주장하는 사람들은 지구상의 탄소기반의 생명체와 같이 스스로 진화하고, 자손들을 번식하며, 여러 가지 생명의 특성을 지닌 살아있는 유기체의 창조를 목표로 한다.

 

figure1.jpg

 

 

 

인공생명의 특성

 

복잡계(Complex System)

 

복잡성이란 여러 가지 요소들이 상호 작용하는 상태를 뜻한다. 따라서 복잡계란 비교적 단순한 구성 요소들이 상호 작용을 하고 있는 계라 할 수 있다. 그리고 그 구성 부분이 충분한 복잡성과 상호 연관되고 있어서 표준적인 선형(linear) 방적식으로 예견이 불가능한 비선형 계를 말한다.

 

비선형계에서는 비례관계가 아닌 계로서 결과가 반드시 원인에 비례하지 않거나, 출력이 입력에 비례하지 않는다. 예를 들어 쥐의 번식률이 매년 2배라고 해도, 내년의 쥐 번식률이 반드시 올해의 2배가 되지는 않는다. 왜냐하면 병에 걸리거나 먹이의 부족등 여러 다른 요소들이 고려되야되기 때문이다

 

전체의 움직임은 그 속에 무수한 움직임이 내재되어 있는, 전체론적인 총합에 의한 창발적(emergent)인 결과로서 이해될 수 있을 뿐이다. 예를 들면 수많은 분자로 구성되어 있는 세포, 그리고 무수한 세포로 이루어져 있는 사람의 신체, 무수한 사람으로 이루어져 있는 사회와 국가 모두가 복잡계 또는 복잡성을 지닌다.

 

 

 

창발성(Emergent)

 

단순한 규칙의 적용으로 그보다 복잡한 규칙이 자발적으로 나타나는 현상 등을 말한다. 생명을 갖지 않은 물질에서 생명체가 탄생하고, 단순한 생물이 복잡한 생물로 진화하는 과정 등이 그에 해당한다. 예를 들어 가장 초보적인 몇 가지 규칙만으로 프로그램된 인공 유기체가 자기 복제, 성장과 같은 고도한 행동을 창발하는 것이다. 인공생명은 이러한 창발성을 중요한 토대로 삼는다.

 

 

 

자기 조직(Self-organizing)

 

복잡성 이론의 중요한 개념중의 하나가 ‘자기 조직’이다. 복잡계는 그 속에 포함된 단순한 구성 요소 상호간의 부단한 상호 작용과 경쟁을 통해 스스로를 조직하고 복잡성의 정도를 높여 나간다.

 

자연의 기본법칙 중의 하나인 엔트로피 법칙에서는 자연은 더 무질서해지는 쪽으로 진행되는 경향이 있다고 기술한다. 정돈된 구슬이 들어있는 상자를 흔들면 구슬이 뒤섞여지는 것이 그 예이다. 그러나 생명은 원료를 가지고 그것들을 조직하여 더욱 복잡한 시스템인 생물로 조직된다. 이는 자기 조직의 하나의 예라 할 수 있다.

 

생물이란 이러한 자기 조직 과정에서 질서도가 어느 정도 수준 이상으로 높아진 복잡계라 할 수 있다. 진화의 과정은 인공생명이 검토하고 사용하려고 시도하는 자기 조직의 특성이라 할 수 있다.

 

figure2.jpg

 

 

 

카오스 이론(Chaos Theory)

 

카오스란 어떤 계가 확실한 규칙에 따라 움직이고 있음에도 불고하고 복잡하고 불규칙하면서 예측할 수 없는 행동을 나타내는 것이라 할 수 있다. 이러한 계는 비선형적인 특성을 가지며, 극히 작은 변화에도 민감한 반응을 보인다. 카오스 이론은 복잡성 이론, 자기 조직 이론 등과 밀접히 연관된다.

 

카오스 이론에서 '베이징에 나비가 날면 뉴욕에 폭풍이 일 수 있다'라는 유명한 말이 있다. 이는 일개 나비의 날갯짓이 복잡한 자연의 인과관계에 의해 지구 반대편뉴욕에 폭풍을 가져올 수도 있다는 것이다.

 

 

 

인공생명 관련 주제

 

유한 상태 기계(Finite State Machine)

 

우주를 포함한 모든 만물이 불연속적인 시간 단계를 거치며 그 시간단계마다의 특정한 상태를 부여하고 그 상태는 내부나 외부로부터 영향을 받아 변화한다는 것에서 근본적인 가설이 도입된 개념이다. 유일한 제약은 가능한 상태의 유한한 집합들 중에서 단 하나를 가져야 한다는 것이다.

 

사람의 경우를 예로 들면, 내부 상태와 받아들이는 환경적 정보는 그 사람의 행동과 정신의 다음 상태 상태를 결정짓는다. 튜링의 관점에 따르면 거의 모든 사람은 상태 기계로 분해 또는 분석될 수 있다.

 

 

 

세포 자동차(Cellular Automata)

 

복잡계에서 조직은 그 구성원인 셀(cell)이 존재하며, 셀은 상태라고 알려져 있는 정보를 가질 것이며, 매 시간 단계마다 주위의 다른 셀들의 상태를 확인하고 비교적 간단한 규칙에 의해 다른 시간 단계의 상태를 결정짓는다. 이러한 특성은 유한 상태 기계로 이루어진다.

 

그러한 셀들의 상태 또는 행동이 누적되어 전체적인 행동이 이루어지며, 전체적인 행동의 양상은 복잡계를 구성하게 된다. 단순한 규칙들이 서로 상호작용하여 보다 복잡한 질서있고 의미있는 행동을 만들어 낸다. 예를 들면, 인간의 근육 세포는 시그널(signal)의 강약에 반응하는 비교적 단순한 상태를 표현될 수 있지만, 복잡한 인간들의 행동을 가능케 한다.

 

이러한 세포자동차에서는 자기복제와 돌연변이, 자기조직 등의 특성을 발견할 수가 있어 생명의 본질을 탐구하는데 유용한 수단이 된다.

 

 

 

[2차원 세포 자동차]

 

규칙1. 살아있는 이웃 셀이 1개 이하이면 가운데 셀은 고립돼 죽는다.
규칙2. 살아있는 이웃 셀이 4개 이상이면 가운데 셀은 인구과잉으로 죽는다.
규칙3. 살아있는 이웃 셀이 3개이면 가운데 셀은 새로 태어난다.
규칙4. 나머지의 경우 가운데 셀의 상태는 변하지 않는다.

 

figure3.jpg

 

 

유전자 알고리즘(Genetic Algorithm)

 

유전자 알고리즘은 미시건 대학의 존 헨리 홀랜드라는 사람이 발명을 했으며, 생물학의 적자 생존, 유전의 원리에 토대를 두고 있다. 생물학적 유기체가 재생산을 통해 계에 적응하며 진화하는 원리를 논리적으로 실현한 알고리즘이다.컴퓨터의 놀라운 계산 능력은, 진화에서 요구되는 수백만 세대의 길이를 점심 먹는 시간 정도로 단축시켰고, 유전 알고리듬이 놀라울 만큼 강력한 도구임을 입증했다.

 

유전자 알고리즘은 두 가지 측면에서 매우 중요한 돌파구를 열어 놓았다. 첫째는, 컴퓨터에서 기능의 최적화를 수행할 수 있는 강력한 방법을 제공하는 데 유전법칙을 사용한 점이다. 둘째는, 진화의 작용 원리, 그리고 자연 현상을 연구하는 독특한 방법을 제공하다는 것이다.

 

 

 

figure4.jpg

 

(a) Initial Population  - 비트스트링으로 구성된 개체의 특징을 표현한 유전자들의 초기 개체군
(b) Fitness Function  - 개체의 적응도를 테스트하여 우수한 것만 선별
(c) Selection            - 교배를 수행할 두 개체를 선택
(d) Cross-Over         - 임의의 위치를 기준으로 서로의 유전자를 교환하여 교배를 수행
(e) Mutation             - 임의의 위치의 비트를 변환하여 돌연변이 수행

 

 

 

보이드(Boid)

 

크레이그 레이놀즈가 만든 보이드(Boid)는 새떼나 물고기떼, 또는 벌떼와 비슷한 집단 행동처럼 보이도록 1987년 SIGGRAPH에 제출된 논문에서 처음 등장한 기법이다.

 

각각의 보이드는 매 순간마다 자신의 주변을 다시 평가할 뿐, 무리에 대한 정보는 가지고 있지 않다. 무리의 보이드들은 어디로 가는지에 대해서 전혀 알지 못하지만, 모든 보이드들은 하나의 무리로서 움직이고, 장애물과 적들을 피하며, 다른 보이드들과 보조를 맞춰서 유동적으로 이동하게 된다.

 

이는 단순한 규칙의 적용으로 복잡한 행동이 나타나는 창발적 특징을 보여주며, 복잡해 보이는 자연현상이 실제로는 단순한 규칙들의 상호작용들로 이루어 졌을지도 모른다는 가정을 갖게한다.

 

 

 

컴퓨터 바이러스(Computer Virus)

 

컴퓨터의 기억 장치에 나타나는 하나의 패턴으로 다른 컴퓨터에 자신을 복제할 수 있고, 또한 다른 프로그램을 변경시키는 프로그램으로 구성되었으며, 실제 바이러스와 매우 유사한 특징을 갖는다. 하지만 현재의 바이러스는 스스로 자신의 정보를 변경하며 진화를 할 수 없으며 인간 프로그래머에 의해서 새롭게 창조되고 있다.

 

컴퓨터 바이러스도 인공생명적으로 접근을 한다면 자기 변화 메커니즘을 갖고 있어 새로운 변화에 스스로를 적응시킬 수 있을 것이다. 만약 스스로 진화하는 컴퓨터 바이러스가 만들어진다면 너무도 빠르게 변이를 일으키며 진화를 이루어나갈 것이므로 인간에 의한 통제를 벗어나 끔찍한 상황이 발생할 수도 있을 것이다.

 

 

 

인공생명의 활용 분야

 

생명의 기원과 생명체에 대한 더 나은 이해

 

인공생명 연구자를 비롯한 많은 사람들은, 자연 법칙에 생명을 포함한 시스템의 작동을 지배하는 법칙이 있어서 무질서에서 질서로, 단순에서 복잡으로 발전해 나가도록 유도한다고 생각한다. 명백하고 수학적인 용어로 이 법칙을 표현할 수 있기를 희망한다. 만약 이러한 법칙이 표현되고 이해된다면, 곧 생명의 본질과 생명을 창조하는 과정에 대해 좀 더 알 수 있게될 것이다.

 

이러한 연구에서 실제 생명 대신 인공생명을 연구하는 것에는 여러 가지 이점이 있다. 첫째, 인공생명 시스템은 더 이해하기 쉽고 단순하다. 둘째, 컴퓨터는 높은 수준의 현실 시스템을 모방할 수 있다. 셋째, 생명의 내부 구조에까지 접근할 수 있다. 넷째, 규칙을 변경해 매우 다양한 상황에서 실험할 수 있다. 그러므로 인공생명은 생물학적인 생명에 대한 연구에 있어 강력한 도구가 될 수 있다.

 

 

 

인공지능에 대한 다른 접근

 

기존 인공지능의 전통적인 프로그램은 하향식(Top-Down) 설계였다. 이것은 프로그래머가 복잡한 모든 상황을 고려하고 설계해야 되기 때문에 개발과 구현에 있어 상당한 부담이 되었다. 그래서 AI연구는 초기 성공적인 출발 이후로 매우 느리게 진척되어 왔다. 체스나 전문가 시스템 등 기존 AI 시스템은 특정한 부분에 있어선 괄목할 만한 성능을 보이지만 보다 통합적인 AI 시스템 설계에 있어선 아직 많은 난관이 있다.

 

인공생명의 상향식(Bottom-Up) 방법은 AI에 활기를 불어넣을 것이다. 진화과정에서의 경쟁은 한 사람의 프로그램 설계자보다 훨씬 다양한 방식으로 프로그램을 테스트하기 때문에, 진화한 프로그램이 설계된 프로그램보다 더 튼튼하고 안정적이다.

 

상향식 인공생명 방법론을 사용하여, 갓 태어난 시스템을 여러 종류의 자극에 드러냄으로써 병렬처리 능력과 더불어 인간의 지능 형태와 흡사한 AI의 형태를 개발할 기반을 마련할 수 있을 것이다. 영화속의 인간과 흡사한 범용의 AI는 이런 과정에서 언제가 출현할 것이다.

 

 

 

컴퓨터 소프트웨어

 

인공생명 방법을 사용한 상업적인 소프트웨어를 개발할 수 있다. 주식 시장이나 날씨 예측 같은 프로그램 같은 비즈니스 소프트웨어에서 인공생명 기반의 게임 소프트웨어에 까지 인공생명 기법은 새로운 소프트웨어 개발의 유용한 수단이 될 수 있다.

 

 

 

인공생명 로봇의 개발

 

현재 로봇 AI방식은 전통적인 하향식 설계였다. 로봇은 자신 주위의 환경에 대해서 전체적인 인식을 하고 분석하며 추론과정을 거쳐 자신의 목표를 달성하는 방식이다. 하지만 이런 방식은 구현하기가 어렵고 실제 복잡한 실세계에서 작동하기에는 많은 어려움이 있다.

 

인공생명 기법을 적용한 로봇은 복잡한 전체를 고려하며 환경에 대한 지식을 가지고 분석하기 보다는 정해진 규칙들의 조합에 의해 환경에 상호작용하고 보다 빠르게 대응한다. 이 방법은 전통적인 하향식 방법보다 훨씬 유연하고 개방적이며 빠르다. 모든 행동을 미리 설계하기 보다는 행동이 창발될 수 있는 조건을 만드는 것이다.

 

figure5.jpg

 

 

 

현재 인공생명 로봇은 그 행동수준이 단순한 벌레에 접근해 있다. 앞으로의 목표는 실세계의 벌레들처럼 집단으로 행동하는 로봇 집단을 만드는 것이다. 이러한 로봇 집단은 달이나 화성, 해저를 개발할 자동 로봇이 될 수 있을 것이다.

 

로봇들은 서로 상호작용하여 정보를 공유하며 목표를 수행해 나가고 로봇 하나가 고장나도 전체의 임무는 이상없이 수행될 것이다. 또한 로봇의 자기재생산이 가능하다면 스스로 개발지역을 확장해 나가며 반영구적인 생산시스템을 구축할 수도 있을 것이다.

 

figure6.jpg

 

 

 

윤리적인 문제

 

만약 인공생명체가 실제로 탄생을 한다면 그것을 생명체로 인정하고 생명의 권리를 부여할 것인지에 대한 윤리적인 고찰이 필요하다. 또한 자기재생산하며 진화하는 인공생명체는 결국 인간의 통제를 벗어나 인간 다음의 세대로 선택될 지도 모른다.

 

 

 

[참고자료]

- 인공생명, 스티븐 프에이타, 김영사
- 인공생명, 스티븐 레비, 사민서각
- Artificial Intelligence A Modern Approach, Stuart Russell, Prentice Hall
- ALTOZ, http://myhome.naver.com/altoz/
- 조용현 교수의 인공생명, http://chaos.inje.ac.kr/Alife/

List of Articles
제목 글쓴이 날짜 조회 수
격자속의 작은 세상 - 라이프 게임 file 깊은바다 2017-04-11 356
플로킹 데모 프로그램 file 깊은바다 2016-03-25 293
플로킹, 생물의 집단행동 구현 file 깊은바다 2016-03-25 551
인공생명, 새로운 생명의 창조 file 깊은바다 2016-03-25 292