족제비 프로그램
Weasel program족제비 프로그램이나 도킨스의 족제비는 사고 실험이며 그것을 보여주는 다양한 컴퓨터 시뮬레이션이다.이들의 목표는 진화 시스템을 구동하는 과정(비랜덤 누적 선택과 결합된 무작위 변화)이 순전히 우연과 다르다는 것을 입증하는 것이다.
이 사고 실험은 리처드 도킨스에 의해 공식화되었고, 그가 쓴 첫 번째 시뮬레이션은 다른 사람들에 의해 작성되었다.
개요
도킨스는 그의 저서 '블라인드 워치메이커'의 3장에서 잘 알려진 무한 원숭이 정리를 참고하면서 이 프로그램에 대해 다음과 같은 소개를 했다.
충분한 시간이 주어지면, 원숭이가 타자기를 마구 두드려도 셰익스피어의 모든 작품을 만들 수 있다는 것을 누가 먼저 지적했는지 모르겠다.작용하는 구절은 물론 충분한 시간이 주어진다.우리 원숭이가 직면한 일을 어느 정도 제한하자.그가 셰익스피어의 전집이 아니라 단지 짧은 문장인 ' 족제비 같다'를 제작해야 한다고 가정해 보자면, 우리는 그에게 제한된 키보드로 타이프라이터, 26자(수도) 글자만으로 된 타이프라이터, 스페이스바를 주어 비교적 쉽게 제작할 수 있을 것이다.그가 이 작은 문장을 쓰는데 얼마나 걸릴까?
각 글자가 28자 순서에 따라 무작위로 선택되는 경우를 가정해 일련의 횡설수설 문자를 제작하기 위해 시나리오가 준비된다.이 무작위 시퀀스에서 가능한 조합의 수는 27개28 또는 약 10개이므로40 원숭이가 주어진 시퀀스를 생산할 확률은 극히 낮다.28자의 특정한 순서는 "표적" 구절로 선택될 수 있는데, 모두 도킨스가 선택한 목표물인 "METHINKS IT Is Is Is A WEZEEL"과 마찬가지로 실현 가능성이 없다.
도킨스의 가상 원숭이의 행동을 실행하기 위해 컴퓨터 프로그램이 작성될 수 있으며, 26개의 문자와 공간을 고속으로 연속적으로 조합할 수 있다.초당 수백만 개의 조합의 비율로 조차도, 이 프로그램이 "MethinkS It is like a Weasel"[1]이라는 문구를 만들어낼 가능성은 거의 없다.
도킨스는 진화적 변화에 대한 일반적인 오해, 즉 DNA 시퀀스나 단백질과 같은 유기 화합물이 원자가 무작위로 결합하여 더 복잡한 구조를 형성한 결과라는 것을 설명하기 위해 이 예를 의도하고 있다.이러한 유형의 계산에서 단백질 내 아미노산의 모든 순서는 비범하게 일어날 가능성이 없을 것이다(이는 호일의 오류로 알려져 있다).오히려, 적응하는 풍경에서처럼, 진화는 언덕을 오르는 것으로 진행된다.
그런 다음 도킨스는 계속해서 누적 선택 과정이 주어진 목표에 도달하기 위해 훨씬 더 적은 단계를 취할 수 있다는 것을 보여준다.도킨스의 말에 의하면:
우리는 다시 우리의 컴퓨터 원숭이를 사용하지만 그것의 프로그램에서 결정적인 차이를 가지고 있다.다시 28글자의 무작위 시퀀스를 선택하는 것으로 시작되는데, 이전과 마찬가지로...반복적으로 복제하지만 복사에서 무작위 오류가 발생할 가능성이 있다.컴퓨터는 원래 구절의 '원형'인 돌연변이 허튼 구절을 검사하고, 대상 구절인 '메톡스 IT IT YOUZEEL'과 가장 약간 닮은 구절을 선택한다.
절차를 반복함으로써 임의로 생성된 28자의 문자와 공백의 순서가 세대별로 점진적으로 바뀌게 된다.시퀀스는 각 세대를 통해 진행되며,
- 01세대: WDLTMNLT DTJBKWIRZELMQCO P[2]
- 02세대: WDLTMNLT DTJBSWIRZELMQCO P
- 10세대: MDLDMNLS ITJISWHRZREZ MECS P
- 20세대: MELDINLS IT ISWPRKE Z WECSEL
- 30세대: METSING IT IT WECSEL B WECSEL
- 40세대: METINKS I WEZEL과 같다.
- 43세대: 족제비 같다
도킨스는 계속 다음과 같이 말한다.
컴퓨터가 목표물에 도달하는 데 걸리는 정확한 시간은 중요하지 않다.알고 싶다면, 내가 점심 먹으러 나간 동안 처음으로 나를 위해 모든 운동을 끝마쳤다.30분 정도 걸렸다.(컴퓨터 애호가들은 이런 일이 지나치게 느리게 느껴질지도 모른다.그 이유는 그 프로그램이 일종의 컴퓨터 베이비 토크인 BASIC으로 쓰여졌기 때문이다.파스칼에서 다시 썼을 때는 11초가 걸렸다.)컴퓨터는 원숭이보다 이런 종류의 것에 조금 더 빠르지만, 그 차이는 정말 크지 않다.중요한 것은 누적 선택으로 걸리는 시간과 동일한 속도로 작동하는 동일한 컴퓨터가 1단계 선정의 다른 절차인 약 백만 년을 사용하도록 강요받았을 때 목표 구문에 도달하는 데 걸리는 시간의 차이다.이것은 지금까지 우주가 존재해 온 것의 백만 배 이상이다.
생물학에 대한 시사점
이 프로그램은 (인공선택의 경우) 어떤 특성이 바람직한지를 식별하는 사람인지, 또는 어떤 특성이 바람직한지를 확인하는 사람인지, 또는 어떤 것이 진화하는 문자(또는 유전자)의 줄에 작은 변화를 보존하는 것이 누적 변화를 선택하기 위한 어떤 메커니즘이 있는 한, 비교적 짧은 시간 내에 의미 있는 조합을 만들어 낼 수 있다는 것을 증명하는 것을 목표로 한다.환경에 의해 부과되는 생존 기준("자연 선택의 경우")번식 시스템은 자손이 부모의 특성 복사본을 상속받기 때문에 세대에 걸쳐 특성을 보존하는 경향이 있다.그것은 자손 간의 차이, 복사의 변화로 선정의 기초가 되어 대상에 더 가까운 구절은 살아남게 하고, 나머지 변형은 '죽게' 하는 것이다.
Dawkins는 그의 "바이오모르프" 프로그램과 관련하여 선택 메커니즘의 문제를 논의한다.
인간의 눈은 이야기에서 적극적인 역할을 한다.그것은 선발 요원이다.그것은 자손 번식을 조사해서 번식을 위해 하나를 선택한다.즉 우리 모델은 엄밀히 말하면 자연선택이 아니라 인위선택의 모델이다.'성공'의 기준은 진정한 자연선택에 있기 때문에 생존의 직접적인 기준이 아니다.진정한 자연 선택에서, 만약 신체가 생존하기 위해 필요한 것을 가지고 있다면, 신체의 유전자는 그 안에 있기 때문에 자동적으로 생존한다.그래서 생존하는 유전자는 자동적으로 신체에 생존을 돕는 자질을 부여하는 유전자가 되는 경향이 있다.
그는 이 사례가 생물학적 진화에 적용할 수 있는지에 대해 다음과 같은 한계가 있다는 점을 지적하는 데 신중하다.
원숭이/셰익스피어 모형은 단단계 선택과 누적 선택 사이의 구분을 설명하는데 유용하지만 중요한 방법으로 오해의 소지가 있다.그 중 하나는 선택적 '교배'의 각 세대에서 돌연변이 '프로제니' 구절이 먼 이상적인 대상과 닮은 기준, 즉 METINKS IT IT I LIKE A WEZEL이라는 문구에 따라 판단되었다는 점이다.인생이란 그런 게 아니다.진화는 장기적인 목표가 없다.인간의 허영심은 우리 종족이 진화의 최종 목표라는 어처구니없는 생각을 소중히 여기지만, 장거리 목표도, 선택 기준이 될 최종 완성도도 없다.실생활에서 선택 기준은 단순한 생존이나 보다 일반적으로 생식 성공으로 항상 단기적이다.
더욱 복잡한 모델
블라인드 워치메이커에서 도킨스는 자신이 바이오모르프라고 부르는 실체들을 포함하는 유전자 선택의 그래픽 모델을 계속해서 제공한다.이들은 생체모형의 외관을 결정하는 "genes"의 통제 아래 그려진 서로 관계를 갖는 선 세그먼트의 2차원 집합이다.순차적인 바이오모르프 세대 중에서 실체를 선택함으로써, 실험자는 "비행기"나 "옥토푸스" 바이오모르프와 같은 주어진 형상으로 수치의 진화를 안내할 수 있다.
모의실험으로, 생체모형은 생물학적 유기체의 실제 유전적 행동에 그다지 가깝지 않다.위즐 프로그램처럼 이들의 발전은 외부 요인에 의해 형성되는데, 이 경우 가능한 많은 형상 중 어떤 것이 다음 세대로 나아갈지를 선택하는 실험자의 결정이다.그러나 그들은 각각의 가능한 유전자가 차원으로 취급되고, 살아있는 유기체의 실제 게놈은 모든 가능한 유전자 조합의 아주 작은 부분을 차지하며, 대부분은 생존 가능한 유기체를 생산하지 못할 것이다.도킨스의 말처럼, "살아있는 방법이 아무리 많더라도, 죽는 방법은 훨씬 더 많을 것이 확실하다"고 말한다.
도킨스는 '인피할 수 없는 등산'에서 거미줄의 진화를 모델로 한 프로그램을 다른 당사자들이 작성한 '위즐 프로그램'의 한계에 대응했다.그는 이러한 프로그램들이 '시행착오' 과정을 통해 더 많은 파리를 잡는 웹을 고안하는 것 외에는 미리 정해진 목표가 없기 때문에 진화 과정의 보다 현실적인 모델이라고 제안했다.스파이더위브는 쉽게 시각화된 생물 시스템의 단순한 예였기 때문에 진화 모델링의 좋은 주제로 여겨졌다. 모델 프로그램은 자연에서 발견되는 것과 유사한 범위의 거미줄을 성공적으로 생성했다.
예제 알고리즘
![]() | 이 절에는 아마도 독창적인 연구가 포함되어 있을 것이다.(2016년 8월) (이 를 과 시기 |
도킨스는 자신의 프로그램에 소스 코드를 제공하지 않았지만, "Weasel" 스타일 알고리즘은 다음과 같이 실행될 수 있었다.
- 28자의 임의 문자열로 시작하십시오.
- 문자열을 100개 복사(복제)하십시오.
- 100개의 각 카피에 있는 각 문자에 대해 5%의 확률로 문자를 새 임의 문자로 대체(교체)한다.
- 새로운 각 문자열을 대상 문자열 "METHINKS IT IS LIKE A WEZEL"과 비교하고 각 문자열에 점수(정확하고 올바른 위치에 있는 문자열의 문자 수)를 부여한다.
- 새 문자열 중 만점(28)이 있으면 중지하십시오.그렇지 않은 경우 가장 높은 점수를 매긴 문자열을 사용하고 2단계로 이동하십시오.
이러한 목적을 위해 "문자"는 대문자 또는 공백이다.세대당 복사 건수와 글자당 돌연변이 발생 가능성은 도킨스의 저서에 명시되어 있지 않다. 100부와 5%의 돌연변이 발생률이 그 예다.올바른 문자는 "잠금"되지 않는다. 각 올바른 문자는 다음 세대에 부정확해질 수 있다.그러나 프로그램의 조건과 대상 구절의 존재는 그러한 '부정적 돌연변이'가 빠르게 '수정'될 것이라는 것을 의미한다.
참고 항목
참조
- Dawkins, R. (1986) The Blind Watchmaker Oxford University Press.