Có một mối kết hợp tuyệt vời giữa công nghệ và tự nhiên, nguyên lý đó là thuyết tính toán về sự tiến hóa. Thuyết tính toán về sự tiến hóa là phương pháp giải quyết vấn đề bằng cách áp dụng kỹ thuật tiến hóa. Lĩnh vực này đưa ra 3 mô tả độc lập bao gồm: các thuật toán về di truyền, lập trình về sự tiến hóa và chiến lược tiến hóa. Tất cả 3 mô tả này đã được nghiên cứ lần đầu tiên trong hai thập niên 1960 và 1970, nhưng mãi cho tới cuối thập niên 1980 thì chúng mới bắt đầu được chấp nhận. Và thời gian này, các nhà nghiên cứu bắt đầu nhận thấy mối quan hệ rõ ràng giữa máy tính và sinh học . Hiện tại, các thuật toán di truyền đang được xem là kỹ thuật máy học thành công nhất. Tự nhiên đã cung cấp nguồn cảm hứng cho hai vấn đề: ”quá trình chọn lọc tự nhiên” là một kỹ thuật để giải quyết vấn đề. Và DNA như một kỹ thuật mã hóa vấn đề.
Trong “Nguồn gốc của muôn loài”, Darwin mô tả lý thuyết về sự tiến hóa: “sự chọn lọc tự nhiên” là khái niệm trung tâm. Mỗi loài có một sự sinh sản thừa, trong cuộc đấu tranh mạnh mẽ giành sự sống, chỉ có những loài nào thích nghi tốt nhất đối với môi trường thì mới sống sót.
Năm 1953, Jame Watson và Francis Crick phát hiện ra cấu trúc xoắn kép của DNA. Thông tin di truyền được lưu trữ trong phần tử DNS dài, bao gồm 4 khối, điều này có nghĩa là tất cả thông tin di truyền của các nhân con người, hoặc của bất kỳ một tạo vật sống nào, đều được đặt trong một ngôn ngữ chỉ có 4 ký tự (C, G, A và T trong ngôn ngữ di truyền). Tập hợp của các chỉ thị di truyền cho loài người vào khoảng 3 tỷ ký tự. Mỗi cá nhân đều thừa hưởng vài đặc tính của người cha hoặc người mẹ. Sự khác nhau giữa các cá nhân như màu tóc hay màu mắt, và các bệnh bẩm sinh được gây nên bởi sự khác biệt về mã di truyền.
Sự chọn lọc tự nhiên có hai mặt thuận lợi và không thuận lợi. Mặt bất lợi rõ ràng là sự sinh sản quá mức của các cá thể. Một bất lợi khác là toàn bộ tiến trình đạt được rất ít mục đích, vì sự cải thiện của các loài phụ thuộc vào các yếu tố thay đổi môi trường. Các loài có thể tiến hóa bằng cách đột biến Gen ngẫu nhiên. Công thức xây dựng thuật toán di truyền để giải quyết vấn đề như sau:
Đặt ra bộ mã tốt, hoàn hảo để mã hóa vấn đề dưới dạng chuỗi bao gồm một số ký tự giới hạn
Sáng chế ra một môi trường nhân tạo trong máy tính để các giải pháp có thể kết nối lại với nhau. Cung cấp đối tượng có thể xét đoán được sự thành công hay thất bại mà thuật ngữ của chuyên gia gọi là “hàm thích nghi”.
Để kết hợp các giải pháp, cần thực hiện các thao tác chéo – các chuỗi gen của người cha và người mẹ được cắt ra và sau khi thay đổi thì được kết lại với nhau. Trong việc tái tạo, tất cả các trường hợp đột biến có thể được áp dụng.
Khởi đầu, ta cung cấp một “số người” hoàn toàn khác nhau, và yêu cầu máy tính thực hiện “sự tiến hóa” bằng cách loại bỏ các giải pháp xấu trên mỗi thế hệ và thay thế chúng bởi con cháu hoặc sự đột biến tốt. Dừng lại khi một gia đình gồm các giải pháp tốt đã được hình thành.
Ưu điểm và khuyết điểm của các thuật toán di truyền luôn tồn tại song song. Hai hạn chế là sự sinh sản quá nhiều và tính chất ngẫu nhiên trong tiến trình tìm kiếm. Các cách giải bằng những thuật toán di truyền được mã hóa thành các ký hiệu, vì vậy thường là dễ đọc, đó là một thuận lợi hơn so với mạng neural.
Áp dụng cho bài toán data mining, giả sử ta muốn phát hiện một nhóm các tạp chí thường được đọc từ một cơ sở dữ liệu tạp chí dùng thuật toán di truyền. Bước đầu, tìm bộ mã tốt, mã hóa các vấn đề dưới dạng chuỗi các ký tự có giới hạn, đưa ra cách thức để: mô tả các tạp chí như một tập các điểm trong không gian mà đang điều tra. Hình 3.9 chỉ một nhóm các tạp chí hay đọc của một không gian mẫu dưới dạng 5 điểm.
Các điểm mô tả các vùng chứa các tạp chí trong không gian tìm kiếm, đường viềm giữa hai điểm được định nghĩa bằng một đường thẳng cách đều hai điểm. Kết quả của việc phân chia thành vùng khác nhau từ định nghĩa của các đường viềm được gọi là lược đồ Voronoi. Sử dụng kỹ thuật của lược đồ Voronoi, ta có thể chia không gian mẫu thành các khu vực khác nhau tùy thuộc vào tập các điểm đã tìm thấy. Trong trường hợp này, sẽ có 5 vùng ứng với 5 lớp “thô” trên không gian mẫu. Nếu dùng nhiều điểm hướng dẫn sẽ có nhiều vùng con tốt hơn trên không gian mẫu.
Trong bài toán tìm tạp chí thường đọc, ta có thể chọn một chuỗi kết hợp 5 điểm hướng dẫn là một mã. Một vật riêng lẻ trong không gian tìm kiếm gồm 10 số thực mô tả sự kết hợp 5 điểm. Để bắt đầu thuật toán di truyền với các vật thể, mỗi vật thể mô tả bằng 5 điểm. Ở giai đoạn đầu, các điểm này được chọn một cách ngẫu nhiên. Bắt đầu với 20 vật thể mô tả 20 giải pháp ngẫu nhiên có liên quan đến vấn đề. Hình 3.10 là tập các giải pháp ngẫu nhiên ban đầu được thể hiện cho thế hệ đầu tiên.
Bước tiếp theo là một hàm “Fitness” cho các vật thể. Trong trường hợp hiện tại, điều này rất đơn giản, ta chỉ việc tính khoảng cách trung bình của các điểm trong không gian mẫu tới điểm hướng dẫn gần nhất. Tập các điểm hướng dẫn sẽ cho kết quả tốt nếu khoảng cách trung bình của các điểm trong không
gian mẫu tới điểm hướng dẫn gần nhất là nhỏ nhất. Hình 3.10 cho thấy các giải pháp đưa ra hầu hết phụ thuộc vào khoảng cách trung bình. Mối quan tâm là quan hệ chéo và quan hệ đột biến. Trong trường hợp, quan hệ chéo đơn giản lấy 3 điểm từ một cá thể, 2 điểm từ một cá thể khác, trao đổi chúng, và bằng cách này tạo ra 2 con cháu từ cha mẹ chúng. Đối với đột biến, đơn giản hơn: ta chỉ chuyển ngẫu nhiên vài điểm của một cá thể trong không gian tìm kiếm. Dùng thao tác chéo và đột biến, chúng ta có thể tạo ra thế hệ các giải pháp mới cho vấn đề. Sau một số thế hệ, sẽ tìm thấy tính ổn định cho không gian mẫu như hình 3.9.
Hình 3.10: tập các giải pháp ngẫu nhiên ban đầu được thể hiện cho thế hệ đầu tiên
TÀI LIỆU THAM KHẢO
[1] R. Agrawal, T. Imielinski, and A. Swami. Mining association rules between sets of items in large databases. In Proc. of the ACM SIGMOD Conference on
Management of Data, pages 207–216, 1993.
[2] R. Agrawal, H. Mannila, R. Srikant, H. Toivonen, and A. I. Verkamo. Fast discovery of association rules. In Advances in Knowledge Discovery and Data
Mining, pages 307–328, 1996.
[3] R. Agrawal and R. Srikant. Fast algorithms for mining association rules. The
International Conference on Very Large Databases, pages 487–499, 1994.
[4] R. Agrawal and R. Srikant. Mining sequential patterns. In P. S. Yu and A. L. P. Chen, editors, Proc. 11th Int. Conf. Data Engineering, ICDE, pages 3–14. IEEE Press, 6–10 1995.
[5] N. F.Ayan, A. U. Tansel, and M. E. Arkun. An efficient algorithm to update large itemsets with early pruning. In Knowledge Discovery and Data Mining, pages 287–291, 1999.
[6] R. J. Bayardo, Jr. Efficiently mining long patterns from databases. In
Proceedings of the 1998 ACM SIGMOD international conference on
Management of data, pages 85–93. ACM Press, 1998.
[7] F. Bodon and L. R´onyai. Trie: an alternative data structure for data mining algorithms. to appear in Computers and Mathematics with Applications, 2003. [8] S. Brin, R. Motwani, J. D. Ullman, and S. Tsur. Dynamic itemset counting and implication rules for market basket data. SIGMOD Record (ACM Special