Wednesday, March 09, 2005

Tiến hóa số

 

Gần đây, bài báo
The Evolutionary Origin of Complex Features; R.E. Lenski, C. Ofria, R.T. Pennock, and C. Adami, Nature 423 (2003) 139-145.

mô tả một nghiên cứu thú vị ở phòng nghiên cứu sự sống số (Digital Life Lab) của trường CalTech về việc mô phỏng tiến hóa sinh học (evolution) bằng máy tính.

Đại khái, ta có thể nghĩ về một quá trình máy tính (process) như một vi khuẩn. Các processes "ăn" các số nguyên (integers) và thực hiện một vài tác vụ ngẫu nhiên trên các integers mà nó ăn bằng một bộ lệnh ngẫu nhiên cho trước. Các processes có thể tự tái sinh và thay đổi tập lệnh của nó một cách ngẫu nhiên (random mutation) giống như quá trình tiến hóa sinh học. Nếu một process "tiến hóa" đến mức có thể làm một số tác vụ nhất định với các integers, như "so sánh hai integers", "cộng hai integers", vân vân, thì nó sẽ được "thưởng" bằng cách cho tăng tần suất tái sinh của process.

Khá nhiều các giả thuyết về tiến hóa sinh học được khẳng định bởi tiến hóa trong môi trường số này. Ví dụ như sau vài chục ngàn thế hệ, bọn vi khuẩn số này đều có thể cộng hoặc so sánh các integers. Điểm thú vị là bọn chúng không nhất thiết có tập lệnh giống nhau!