살아 있는 생명이 사람에 의해 만들어진다. 이 생명체는 동물도 아니고, 식물도 아니며 암수구별도 없다 오로지 '인공생명'이란 용어 밖에는 이 생명체를 정의할 방법이 없다. 디지털 세계의 완성판이 될 인공생명 연구는 과연 무엇을 꿈꾸고 있는 것일까.
1 인공생명이란 무엇인가?
인공생명(artificial life)이란 '살아 있는 생명체와 유사한 행동을 보이는 인간이 만든 물체' 또는 '이를 만드는 방법을 연구하는 학문'을 의미한다.
자신과 같이 살아 있는 생명체를 창조하고자 하는 인간의 욕망은 매우 오랜 역사를 가지고 있다.
고대 그리스 신화에도 키프로스섬의 왕이었던 피그말리언이 자신이 만든 여인 조각상을 연모한 나머지 생명을 불어넣어 줄 것을 신에게 간곡히 기도해 갈라티아라는 여인을 소생시켰다는 이야기가 있다.
그러나 신화의 영역을 넘어 인공생명을 위한 가장 기초적인 시도가 이루어지기 위해서는 과학기술이 일정한 수준까지 발전할 때까지 기다릴 수밖에 없었다.
2 생명을 어떻게 정의하는가
살아 있는 생명체에 대한 정의는 사람마다 다를 수 있다. 인공생명 연구자들은 생명체를 복잡성 종족번식 죽음의 3가지 특성을 갖는 물체로 정의하고 있다.
복잡성
겉으로 드러난 생명체의 모양이나 이들의 행동은 단순하지 않고 복잡하며 신비롭다. 그리고 이같은 현상은 고등생물체일수록 더욱 복잡한 특성을 갖고 있다. 그러나 이 복잡성은 완전히 무작위적이지는 않으며 대부분의 경우 기본적인 법칙이 속에 감추어져 있다. 나무의 예를 보더라도 나뭇가지가 뻗어가는 모양은 매우 복잡해 보이지만 그 속에는 일정한 법칙이 숨어 있다. 사람의 경우 더욱 복잡한 모양과 행동을 보이지만, 역시 법칙이 있는 것으로 보인다. 생물체의 속에 감춰진 신비로운 법칙을 찾는 것이 인공생명 연구의 중요한 부분을 차지한다.
종족번식
종족번식이란 자식을 두는 것을 의미한다. 일반적으로 2개의 생명체가 결혼해 자식을 두면 부모의 성질이 서로 섞여 자식에게 전달된다.
우리는 이를 유전이라 부르는데, 자식의 생김생김 목소리 행동 등이 부모를 닮는 것도 이 때문이다. 그러나 유전은 가끔 무작위적으로 성질에 변형이 일어나는데, 이를 돌연변이라 한다. 자기와 똑같은 개체를 만드는 자기복제는 종족번식의 특수한 경우로 볼 수 있다.
죽음
종족번식에 의해 새생명이 생겨나지만, 오래된 생명체는 죽는다. 환경에 잘 적응하지 못하는 생명체는 일찍 죽고 자식을 남기지 못하는 경우도 많다. 이를 적자생존이라 한다.
3 성(性)을 어떻게 이해하는가
거의 모든 생명체는 남성과 여성으로 구성되며 상호보완적인 기능을 갖는 것으로 알려져 있다. 또한 자기 복제를 위해서는 이들의 결합이 요구된다. 그러나 현재까지의 인공생명 연구에서는 성을 고려하지 못하고 있으며, 추후의 주요 연구과제로 남아 있다.
4 유기물이 아닌 생명체를 생명으로 인정할 수 있는가
인공생명 연구자에게 생명체를 구성하는 재질은 중요하지 않다. 앞서 예시한 복잡성 종족번식 죽음의 3가지 특징만이 의미를 가진다.
재질은 특성을 주기 위해 적합한 소재를 사용할 뿐인데, 자연계에서는 단백질과 탄수화물에 기초한 유기물질이 이용된다.
물론 유기물질을 사용한 인공생명 연구가 진행 중이긴 하지만, 인간은 아직 유기물질을 제대로 활용해 생명을 부여할 능력이 없어 상대적으로 사용하기 쉬운 소재인 반도체와 금속 등을 이용하고 있다.
인간이 날고 싶었을 때 새와 같이 날개를 움직이지 못하고 프로펠러에 기초한 비행기를 발명한 것과 같은 이유다. 둘 다 공기역학을 이용해 나는 목적을 수행하지만 비행기는 인간이 사용할 수 있는 방법으로 이를 달성한다.
5 연구 목적은 무엇인가
인공생명 연구의 목적은 과학자와 기술자의 입장에 따라 크게 두가지로 나누어진다. 과학자들은 생명체의 감추어진 신비를 이해하는데 목표를 두고 있다. 즉 생명체가 종족을 번식하고 진화하는 기본 법칙이 무엇이며, 이것이 어떻게 복잡하고 신비한 특징과 연결되는지를 이해하고자 한다.
또한 기술자들은 이렇게 알려진 신비를 이용해 인간에게 유익한 것을 만들고자 노력한다. 원하는 특징을 갖기 위해서는 어떤 진화법칙이 필요한가도 연구된다. 인간 기능의 일부, 또는 전부를 대신할 수 있는 인공체를 개발해 인간은 보다 창조적인 일에 몰두할 수 있도록 하는 것이 이 연구의 최종 목표다.
인공생명 기술로 개발된 로봇이 가사를 돌보고 사무실에서 비서의 역할을 수행하는 것은 꿈만의 이야기가 아니다. 인간에 의해 재창조된 '인공 베토벤'과 '인공 피카소'도 가능할 것이다. 산업혁명이 인간의 육체적 한계를 뛰어넘는 기계에 의한 대량 생산으로 인류사회를 풍요롭게 했다면, 인공생명에 의한 혁명은 인간의 정신까지도 자유롭게 할 수 있을 것이다.
6 인공생명의 선구자들은 누구인가
생명체와 비슷한 복잡도를 갖는 기계의 시초는 1778년 프랑스의 바캉손에 의해 제작된 '인공오리'다. 기록에 따르면 인공오리는 먹고 마시고 소화시키고 울고 물을 튀겼다고 한다. 그러나 인공오리는 비록 매우 정교한 행동을 보이긴 했지만 단순한 기계일 뿐 생명체의 본질인 종족번식 기능이 없었다.
20세기 들어 놀라운 속도로 전개된 컴퓨터과학의 발전은 생명체의 특징을 갖는 것을 컴퓨터 프로그램으로 모의실험할 수 있게 했다. 1960년대 미국 전신전화회사의 벨 연구소(AT&T Bell Laboratory)에서 만든 격투기 게임에는 자기 복제 기능을 갖춘 전투사들이 등장했다.
1980년대 초에는 자기복제와 변형기능을 갖춘 컴퓨터 바이러스가 나타나 컴퓨터 사용자들을 공포에 떨게 했다. 이들은 비록 생명체의 모습을 가지고 있지는 않았으나 생명체의 중요한 특징을 소유하고 있었다.
다양한 분야에서 뛰어난 업적을 남긴 현대 컴퓨터 개념의 창시자 폰 노이만은 인공생명 연구의 아버지로 불릴만하다. 그는 1951년 자기증식 기계에 관한 세포자동자(cellular automata)이론을 발표했다.
먼저 바둑판 모양의 주위 환경을 설정한뒤, 각 사각형을 세포(cell)로 생각하고 이 세포의 모음으로 유기체를 구성한다. 각 세포는 자신을 둘러싼 주위 세포의 상태에 따라 매우 간단한 법칙에 의해 자신의 상태를 바꾸게 되는데, 이 결과 전체 유기체는 매우 복잡한 패턴이나 행동으로 발전하게 된다.
한편 1968년 수학자 존 콘웨이는 폰 노이만의 세포자동자에서 각 세포의 상태를 29개에서 두 개('생:살아 있다' 와 '사:죽었다')로 줄이면서 '생명'(life)이라는 게임을 창조했다. '생명'의 법칙은 매우 간단했다.(그림1)
○살아 있는 각 세포는 주위 8개 세포 중 2개나 3개의 세포가 살아 있으면 다음 단계(세대)에서도 살아 있다. 그러나 4개 이상이나 1개 이하가 살아 있으면 밀도가 너무 높거나 낮아 죽게 된다. 즉 적당한 주위 환경에서만 세포는 살아 있을 수 있다.
○죽어 있는 세포는 주위에서 3개의 세포가 살아 있을 때만 다시 태어날 수 있다.
이렇게 단순한 법칙임에도 불구하고 '생명'은 초기 상태에 따라 매우 복잡하고 아름다운 모양에 도달하기도 하고, 특수한 모양을 주기적으로 반복하기도 했다. 꽃의 일생을 연상시키는 예에서는 씨앗이 자라서 꽃이 피고 시들며, 다시 여러 개의 씨앗을 뿌리고 죽는 과정을 볼 수 있다. 한편 노먼 패커드는 보다 실제적인 현상과의 연결을 추구해 눈의 결정체와 유사한 아름다운 눈송이를 만들어 보이기도 했다.
그러나 진정한 의미의 인공생명 연구는 80년대 후반부터 시작됐다. 1987년 미국 로스알라모스에서 인공생명과 관련된 첫 학술회의가 개최된 이후 세계 각지에서 활발한 연구가 수행되고 있다. 컴퓨터를 이용한 생명의 진화과정 모의 실험에서부터 컴퓨터게임 및 지능형 대리자(agent) 등이 인공생명 연구의 주된 연구 과제들이다. 또한 인공생명 기법을 지능형 로봇에 적용하고자 하는 연구도 수행되고 있다.
1987년 크리스토퍼 랭턴은 '인공생명'(Artificial Life)이라는 학문적 단어를 만들고 컴퓨터 그래픽을 이용해 활성화시킴으로써 '인공생명의 산파'로 불리고 있다. 랭턴의 고리모양 세포자동자는 산호초의 형성 과정과 유사하게 성장했다.
7 인공지능과 어떤 관계인가
인공지능은 지능을 갖는 물체를 인간이 만들어보자는 연구분야다. 지능은 고등생명체에 복잡성을 부여하는 주요 요소이므로 인공생명 연구는 인공지능 연구를 포함하고 있다고 볼 수 있다. 연구 분야로서 좁은 의미의 인공지능은 지능을 단순히 법칙의 모음으로 구성함에 비해, 넓은 의미의 인공지능은 인간의 두뇌 작용을 모방해 주위로부터 스스로 배우는 신경회로망 연구를 포함한다. 언어를 배우는 과정을 예로 들면, 좁은 의미의 인공지능이 문법 암기를 기본으로 함에 비해 신경회로망에서는 많이 들려주고 말하게 함으로써 스스로 배우게 한다.
인공생명 연구에서는 이 외에도 종족번식과 죽음(적자생존)이 도입되는 유전 알고리즘 등 진화연산기법(evolutionary computation)이 활용된다. 즉 인공지능이 단순히 각 개체의 지능을 연구함에 비해 유전알고리즘에서는 여러개의 개체가 사회를 구성한다. 그래서 우수한 특성을 갖는 개체간의 상호작용을 통해 보다 나은 개체를 생성하고, 또 나쁜 특성의 개체는 사라지도록 한다. 또한 여러개의 개체가 상호 경쟁과 협력을 거쳐 발전하는 것이 혼자서 독립적으로 발전하는 것보다 훨씬 우수한 성질의 것으로 성장한다.
8 진화연산기법이란 무엇인가
이는 생명의 진화 과정을 모방해 최적의 답을 찾는 계산 기법이다. 이것은 먼저 무작위로 여러 개의 찾고자 하는 답을 가정하는 것으로부터 시작한다. 여기서 답은 여러개의 2진수나 실수를 포함해 DNA와 같이 띠 모양을 하고 있다고 생각한다.
한개의 답을 하나의 생명체에 비유하고 이러한 답의 수를 '인구', 이들로 구성된 답의 모음을 '세대'라 한다. 각 생명체(답)에는 사회에의 적합도(fitness)가 관련지어지고, 세대가 지나감에 따라, 또 종족번식에 따라 새로운 생명체가 탄생하게 된다. 사회에 보다 적절히 적응하는 생명체에 종족 번식의 기회가 보다 많이 주어지므로 생명체는 점점 진화해 보다 우수한 답(최대의 적합도)을 도출해낸다.
종족번식의 법칙은 크게 두 종류로 나누어진다. 첫번째 법칙은 '교차'(crossover) 또는 '교배'로, 같은 세대에서 2개의 생명체(부모)를 선택해 이들로부터 특성이 서로 섞인 2개의 생명체(자식)를 만드는 것이다. 두번째 법칙은 돌연변이로, 각 생명체의 일부가 무작위로 바뀌는 것이다. 두가지 법칙은 서로 다른 확률로 발생하게 되는데, 이 확률의 비와 실제 문제를 답으로 표현하는 방법에 따라 '유전 알고리즘' '유전 프로그래밍' '진화 전략' '진화 프로그래밍' 등으로 불려진다.
9 실재하는 인공생명은 어떤 것인가
현재까지 인간과 같이 5감(시각 청각 후각 미각 촉각)이라는 센서를 이용해 주위 자료를 받아 자료를 처리한 후 복잡한 팔과 다리의 행동으로 전달하는 인공생명체는 공상과학소설이나 영화에만 존재한다. 앞에서 설명한 바캉손의 인공오리는 비교적 복잡한 오리의 동작을 수행할 수 있었지만(달리 말해 결국 망가져 '죽었지만'), 종족번식에 의한 진화라는 생명체의 가장 중요한 기능을 수행하지는 못했다. 미국 MIT의 인공지능연구센터에서 제작하는 일련의 로봇들도 주위 환경과 반응하지만 역시 종족번식을 수행하지는 못한다.
인공생명의 특징을 보다 많이 충족시키는 것은 컴퓨터 바이러스다. 비록 주위로부터 자료를 받는 센서와 행동 기능이 단순하긴 해도 컴퓨터 바이러스는 컴퓨터 운영체제라는 환경과 반응해 자기 자신을 변형하거나 복제해 자손을 만든다. 또한 컴퓨터 바이러스는 매우 복잡한 행동을 보이며 때로는 창조주인 프로그래머의 통제를 벗어나기도 하고, 백신 프로그램에 의해 죽음을 맞이하기도 한다.
컴퓨터 상에 존재하는 또다른 인공생명은 격투기 게임에 등장하는 디지털 전사들이다. 이들은 서로 싸움을 통해 자기 자신을 발전시키고 복제하며, 때로는 원래의 복제자들을 지우기도 한다.
도망자와 추적자가 서로 쫓고 쫓기는 술래잡기 게임에서도 도망과 추적 기법이 인공생명 기법, 특히 유전프로그램 기법으로 진화될 수 있다.
컴퓨터 화면에 나타나 사용자와의 인터페이스를 담당하는 '캐스퍼' '밥' 등의 지능형 대리자 역시 자기 복제기능은 없지만, 인공생명의 초기 단계로 볼 수 있다. 이들은 사용자와 정보를 주고 받으며 사용자를 위해 스스로를 발전시키는 기능을 가지고 있다. 사람 비서보다 훨씬 유능한 인공생명 비서는 인공생명 연구의 공학적 응용을 위한 첫단계로 보여진다.
인공생명 기법은 컴퓨터와 예술을 접합시키고 있다. 컴퓨터로 복잡한 그림을 그리는 것은 실세계의 풍부한 복잡성을 표현하는데 어려움이 있으나, 이를 자기 복제와 변형을 포함하는 유전 알고리즘으로 쉽게 구성하고 있다. 여러 종류의 형태로부터 2개를 선택한 후 이들을 섞어서 새로운 그림을 만들고 약간의 돌연변이를 가함으로써 새로운 그림을 얻는다. 이를 여러번 반복하면 놀랄 만큼 복잡하면서도 아름다운 그림을 얻게 된다.
생물체의 성장과정을 인공생명 기법으로 모의실험하기도 한다. 인공생명의 특정 규칙들이 성장하고 가지치기하면서 잎의 형성 및 꽃의 발아 등 식물 성장의 기본 과정을 모방하고, 이들을 모아 다양한 모양의 식물로 성장시킬 수 있다. 생명체 성장과정의 모의 실험은 생명체가 가진 신비를 이해하는데 크게 기여할 것으로 보인다.
10 소프트웨어인가, 하드웨어인가
생명체는 하드웨어와 소프트웨어가 유기적으로 결합돼 있는 시스템이다. 사람의 경우 몸이 하드웨어에 해당하고 두뇌가 소프트웨어의 기능을 수행한다. 좀 더 정확하게 표현하자면 생명체의 두뇌에는 하드웨어와 소프트웨어가 구별없이 뒤섞여 있다. 따라서 인공생명의 경우에도 하드웨어와 소프트웨어가 유기적으로 결합돼야 한다.
그러나 현재의 과학기술로는 생명체의 특징, 특히 종족번식을 하드웨어로 구현하기 어려우므로 대부분 소프트웨어적으로 처리하고 있다. 컴퓨터 바이러스 등 앞에서 설명한 현존하는 인공생명은 모두 컴퓨터 상에서 소프트웨어로만 처리되고 있는 것들이다.
물론 소프트웨어적인 인공생명의 구현은 이 연구가 추구하는 궁극의 목표가 아니다. 하드웨어적인 연구도 극소수이나마 시도된 적이 있다. 1980년 미국 항공우주국(NASA)이 우주 탐사를 위한 연구의 일환으로 위성 표면에 배치될 자기 복제공장의 개념을 설계한 적이 있다.
하드웨어기술, 특히 생체분자를 이용하는 기술의 발달과 더불어 하드웨어와 소프트웨어가 유기적으로 결합된 인공생명이 탄생할 것을 기대해본다.
창발적 행동(emergent behavior)
여러 개의 단순한 행동을 하는 개체가 주위 환경과 상호 작용함으로써 보이는, 각각의 개체에서는 보지 못한 새롭고 복잡한 행동을 창발적 행동이라 한다. 한 예로 벽을 따라가는 시스템을 생각해보자. 공학적 설계에서는 벽과의 거리를 측정하고 이를 바탕으로 벽쪽이나 반대로 방향을 틀면 된다.
충돌을 회피하는 개체와 벽 쪽으로 가고자 하는 개체가 있다면 2개 개체가 협동하는 창발적 행동으로 벽을 따라가는 시스템을 구성할 수 있다. 이 경우 벽과의 거리라는 가시적 변수는 사용되지 않는다. 단 2가지 개체만으로도 이러한 새로운 기능이 가능하므로 보다 많은 개체의 집합적 행동은 매우 복잡할 수 있다.
창발적 행동은 바람직하지 않은 방향으로 진행될 수도 있으나, 적자생존 법칙이 존재하는 한 진화연산에서처럼 자연계에서는 우수한 창발적 행동만이 다음 세대에 전해질 수 있다. 창발적 행동에 의한 기능은 공학적 설계에 의한 것보다 많은 개체를 사용하므로 비효율적일 수 있으나, 각 개체의 행동을 설계하는 것보다 설계자의 노력이 적게 드는 장점이 있다.
또한 새로운 기능이 추가로 요구되더라도 전체 시스템의 구조는 큰 변화가 필요하지 않다. 또한 주위 환경의 변화나 시스템 자체 특성의 변화에도 둔감한 장점이 있다. 벽을 따라가는 시스템의 경우 공학적 시스템이 정확한 거리 측정에 기초함에 비해, 창발적 시스템에서는 외부에서 시스템을 순간적으로 움직이거나 벽의 모양이 바뀌어도 큰 문제가 없다.
설계가 어려운 매우 복잡한 시스템에서는 창발적 행동이 유일한 해결 방법일 것이다. 이러한 복잡한 창발적 시스템의 설계에서는 비가시적인 간접 변수의 설정 등 모든 설계가 진화연산기법 등 자동구성기법에 의해 이루어질 수 있다.
복잡성의 과학(Science of Complexity)
복잡성은 생명체의 중요한 특징 중 하나다. 모든 자연현상의 복잡성은 특정한 임계치에 도달하기 전에는 질서를 유지한다. 반면 임계치를 넘으면 완전히 무질서 상태로 접어든다. 이 두가지, 즉 질서와 무질서(혼돈, chaos)의 경계에는 겉으로 보기에는 무질서한 것 같으나 자세히 내부를 들여다보면 매우 단순한 법칙에 의한 자체 재생산(self-reproduction)이 진행됨을 알 수 있다. 생명은 이러한 혼돈의 경계면에서 진화해온 것으로 보이며, 세포자동자 등 인공생명도 이 경계에서 연구되고 있다.
대리자(agent)
컴퓨터 등 각종 기기를 사용하기 위해서 사람들은 보다 자연스런 인터페이스를 원한다. 인간은 기계가 아닌 인간을 상대할 때 제일 자연스러우므로, 기기의 사용자 인터페이스를 인간처럼 구성하고자 하는 노력이 진행되고 있다. 컴퓨터 화면에 사람의 얼굴이 나타나고 말로 사용자와 대화하며 일을 수행해나간다.
이 '가상의 인간' 을 대리자라 한다. 대리자는 인공생명의 중요한 한 형태로 기기 사용에 익숙한 전문가나 비서의 일을 대행한다. 대리자는 컴퓨터의 방대한 저장 계산 및 통신 능력을 활용해 인간 비서보다도 더욱 효율적으로 업무를 수행할 수 있을 것으로 기대된다.