Nghĩa thực tiễn và tình hình ứng dụng

Một phần của tài liệu Ứng dụng giải thuật di truyền vào phân loại tài liệu dạng văn bản (Trang 28 - 85)

1.4.1. Ý nghĩa thực tiễn

Hiện nay các hoạt động sản xuất, kinh doanh, quản lý… đều ứng dụng công nghệ thông tin, các thiết bị lƣu trữ ngày càng tăng dung lƣợng nên hàng triệu CSDL đƣợc tạo ra, và hàng ngày khối lƣợng dữ liệu lại tăng lên không ngừng, yêu cầu trong việc khai thác dữ liệu ngày càng cao hơn. Ngoài đòi hỏi về năng suất, tính linh hoạt, sự chuyên môn hóa trong vấn đề khai thác, CSDL cần phải mang lại tri thức hơn là chính dữ liệu đó.Trƣớc những yêu cầu này cách khai thác CSDL truyền thống cho thấy sự hạn chế của mình.Phƣơng pháp học máy chủ yếu đƣợc áp dụng trong các CSDL đầy đủ, ít biến động và tập dữ liệu không quá lớn, trong khi đó khối lƣợng dữ liệu tăng lên không ngừng.

Phƣơng pháp thống kê tuy là một trong những nền tảng của khai phá dữ liệu, nhƣng phƣơng pháp thống kê còn tồn tại một số điểm yếu: các phƣơng pháp thống kê hoạt động hoàn toàn theo dữ liệu, nó không sử dụng tri thức sẵn có về lĩnh vực, kết quả có thể rất nhiều và khó có thể làm rõ đƣợc…

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

1.4.2. Tình hình ứng dụng

Với những ƣu điểm của mình, khai phá dữ liệu đang đƣợc áp dụng một cách rộng rãi trong nhiều lĩnh vực kinh doanh và đời sống khác nhau nhƣ: marketing, tài chính, ngân hàng, bảo hiểm, khoa học, y tế, an ninh, viễn thông…

Rất nhiều tổ chức và công ty lớn trên thế giới đã áp dụng kỹ thuật khai phá dữ liệu vào các hoạt động sản xuất kinh doanh của mình và thu lợi ích to lớn nhƣ: British Telecom đã phát hiện ra những nhóm ngƣời thƣờng xuyên gọi cho nhau bằng mobile và thu lại đƣợc hàng triệu USD; IBM Surf-Aid áp dụng khai phá dữ liệu phân tích các lần đăng nhập Web vào các trang có liên quan đến thị trƣờng để phát hiện sở thích khách hàng, phục vụ việc đánh giá tiếp thị qua Web…

Một số ứng dụng khai phá dữ liệu đã có hiệu quả cao:

- Khai phá dữ liệu đƣợc vận dụng hiệu quả để giải quyết các bài toán phức tạp trong các ngành đòi hỏi kỹ thuật cao nhƣ tìm kiếm dầu mỏ từ ảnh viễn thám, xác định các vùng gãy trong ảnh địa chất để dự đoán thiên tai, cảnh báo hỏng hóc trong hệ thống sản xuất.

- Tìm kiếm tri thức, quy luật của thị trƣờng chứng khoán và đầu tƣ bất động sản, xây dựng mô hình dự báo rủi ro…

- Phân tích hành vi mua sắm, cho biết các thông tin tiếp thị phù hợp với loại khách hàng trong từng phân khu thị trƣờng nhất định.

- Dự đoán tải sử dụng điện năng cho các công ty cung cấp điện, lƣu lƣợng viễn thông cho các công ty điện thoại…

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

CHƢƠNG 2: TÌM HIỂU VỀ THUẬT GIẢI DI TRUYỀN

2.1. Tổng quan về giải thuật di truyền2.1.1. Giới thiệu 2.1.1. Giới thiệu

Trong ngành khoa học máy tính, tìm kiếm lời giải tối ƣu cho các bài toán là vấn đề đƣợc các nhà khoa học máy tính đặc biệt rất quan tâm.Mục đích chính của các thuật toán tìm kiếm lời giải là tìm ra lời giải tối ƣu nhất cho bài toán trong thời gian nhỏ nhất. Các thuật toán nhƣ tìm kiếm không có thông tin/vét cạn (tìm kiếm trên danh sách, trên cây hoặc đồ thị) sử dụng phƣơng pháp đơn giản nhất và trực quan nhất hoặc các thuật toán tìm kiếm có thông tin sử dụng Heurictics để áp dụng các tri thức về cấu trúc của thông gian tìm kiếm nhằm giảm thời gian cần thiết cho việc tìm kiếm đƣợc sử dụng nhiều nhƣng chỉ với không gian tìm kiếm nhỏ và không hiệu quả khi tìm kiếm trong không gian tìm kiếm lớn.

Trong thực tiễn có rất nhiều bài toán tối ƣu với không gian tìm kiếm rất lớn cần phải giải quyết.Vì vậy, việc đòi hỏi thuật giải chất lƣợng cao và sử dụng kỹ thuật trí tuệ nhân tạo đặc biệt rất cần thiết khi giải quyết các bài toán có không gian tìm kiếm lớn.Giải thuật di truyền là một trong những kỹ thuật tìm kiếm lời giải tối ƣu đã đáp ứng đƣợc yêu cầu của nhiều bài toán và ứng dụng.

Từ những năm 1962, tại Mỹ, J.H.Holland đã đƣa ra các khái niệm đầu tiên của giải thuật di truyền.Tại Đức, vấn đề đƣợc nghiên cứu dƣới tên gọi giải thuật tiến hóa bởi các nhà nghiên cứu Rechenberg và Schwefel.Tuy có tên gọi và đƣợc tiếp cận với cách khác nhau nhƣng các nghiên cứu trên đều bắt nguồn từ các nguyên tắc tiến hóa của tự nhiên.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Hình 2.1: Giải quyết vấn đề bằng giải thuật di truyền. 2.1.2. Các tính chất quan trọng của giải thuật di truyền

Giải thuật di truyền lập luận mang tính chất ngẫu nhiên để tìm giải pháp tối ƣu cho những vấn đề phức tạp, thay vì xác định nhƣ toán học giải tích. Tuy nhiên đây là hình thức ngẫu nhiên có hƣớng dẫn bởi trị số thích nghi.Chính hàm số thích nghi giúp giải thuật di truyền tìm giải pháp tối ƣu trong rất nhiều giải pháp có thể có.

Giải thuật di truyền không chú ý đến chi tiết vấn đề, trái lại chỉ chú ý đến giải pháp cho vấn đề, hay tìm điều kiện tối ƣu cho việc điều hành, và phân nhóm những giải pháp có đƣợc.

Giải thuật di truyền đƣợc sử dụng đặc biệt cho những bài toán yêu cầu tìm kiếm tối ƣu toàn cục với không gian tìm kiếm lớn và không thể kiểm soát nhờ khả năng duyệt qua không gian tìm kiếm đại diện mà không thực sự đi qua từng điểm của toàn bộ không gian.

Ƣu điểm của giải thuật di truyền là tính song song. Giải thuật di truyền duyệt trong không gian tìm kiếm với nhiều đơn thể, vì thế hiếm khi chúng bị tắc nghẽn ở cực trị cục bộ nhƣ những phƣơng pháp khác. Chúng còn dễ cài đặt, một khi bạn có

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

một giải thuật di truyền nào đó, bạn chỉ cần viết nhiễm sắc thể mới để giải bài toán khác.Với cùng cách mã hoá, chỉ việc thay đổi hàm thích nghi ta cũng có thể giải bài toán.Tuy nhiên, việc chọn cách mã hoá và hàm thích nghi có thể khó khăn.

Nhƣợc điểm của giải thuật di truyền là thời gian tính toán.Chúng có thể chậm hơn các phƣơng pháp khác.Nhƣng với máy tính ngày nay thì đây không phải là vấn đề quá lớn.

2.1.3. Cơ sở sinh học của giải thuật di truyền

Giải thuật di truyền đƣợc xây dựng từ lý thuyết tiến hoá của Darwin, nguyên lý cơ bản của những giải thuật này là duy trì một quần thể các gen có cấu trúc xác định làm đại diện cho các phƣơng pháp giải quyết một vấn đề. Quần thể này đƣợc phát triển trên cơ sở cạnh tranh lẫn nhau trong điều kiện biến động có kiểm soát, bao gồm sự tái tổ hợp hay còn gọi là lai giống, và đột biến gen của các cá thể trong quần thể. Quá trình này tạo ra sự tiến hóa của các quần thể với một tính chất quan trọng là: thế hệ sau luôn thích nghi với môi trƣờng tốt hơn so với thế hệ trƣớc. Những cá thể có độ thích nghi cao hơn sẽ đƣợc lựa chọn cho thế hệ sau.Khi giải thuật kết thúc, ngƣời ta đã chứng minh đƣợc rằng những cá thể ƣu tú nhất, có mức độ thích nghi cao nhất với yêu cầu của bài toán sẽ đƣợc chọn. Các hoạt động lai ghép và đột biến gen sẽ góp phần tạo ra những bộ gen mới, làm thay đổi bộ mặt của quần thể. Tuy xảy ra với tần số thấp, nhƣng với số lƣợng cá thể lớn và kéo dài qua nhiều thế hệ, những hoạt động này bảo đảm sẽ không bỏ sót những giải pháp tối ƣu không đƣợc tạo ra ngay ban đầu.

2.1.4. Sơ đồ thực hiện giải thuật di truyền

Giải thuật di truyền đơn quần thể: (adsbygoogle = window.adsbygoogle || []).push({});

Giả sử chúng ta đã có phƣơng pháp mã hóa di truyền cho bài toán và xây dựng hàm lƣợng giá độ thích nghi cho các cá thể. Giải thuật di truyền bao gồm các bƣớc sau:

Bước 1: Khởi tạo quần thể ban đầu.

Bước 2: Lƣợng giá hàm mục tiêu hay tính độ thích nghi cho từng nhiễm sắc thể trong quần thể.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Bước 3: Kiểm tra điều kiện tối ƣu. Nếu điều kiện tối ƣu đƣợc thỏa mãn thì chuyển sang bƣớc 5. Nếu không chuyển sang bƣớc 4.

Bước 4: Thực hiện tạo quần thể mới bằng cách thực hiện các cơ chế di truyền nhƣ chọn lọc, lai ghép, đột biến. Các cá thể mới sinh ra đƣợc thay thế cho các cặp cha mẹ trong quần thể cũ.

Bước 5: Khi điều kiện tối ƣu đƣợc thoả mãn, giải thuật dừng và trả lại cá thể tốt nhất.

Hình 2.2: Sơ đồ giải thuật di truyền.

Mô phỏng giải thuật di truyền:

Thỏa Điều kiện tối ƣu Không Đánh giá hàm thích nghi Bắt đầu Tạo quần thể Cá thể tốt nhất Chọn lọc Lai ghép Đột biến Kết thúc

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Cấu trúc của một giải thuật tiến hóa nói chung và của một giải thuật di truyền nói riêng có dạng nhƣ trên. Ở bƣớc lặp t, giải thuật di truyền duy trì một quần thể các lời giải.Mỗi lời giải đƣợc đánh giá để biết đƣợc độ thích nghi của nó.Ở mỗi quần thể mới (tức ở lần lặp thứ t + 1) đƣợc hình thành bằng cách chọn và giữ lại những cá thể thích nghi nhất.Một số cá thể của quần thể này trải qua những biến đổi nhờ lai ghép và đột biến hình thành nên những lời giải mới.

Một quá trình đơn quần thể nhƣ trình bày trên là khá mạnh và có thể đƣợc áp dụng tốt cho một lớp lớn các bài toán. Tuy nhiên chúng ta có thể thu đƣợc kết quả tốt hơn nếu nhƣ sử dụng không chỉ một mà là nhiều quần thể, hay còn gọi là các quần thể con. Mỗi quần thể con sẽ tạo ra một vài thế hệ cô lập trƣớc khi có sự trao đổi một hay nhiều cá thể giữa các quần thể với nhau. Lúc này, giải thuật di truyền đƣợc gọi là đa quần thể và việc mô phỏng sẽ gần gũi với tự nhiên hơn giải thuật đơn quần thể.

Begin

t = 0; // biến lưu trữ giá trị quần thể thứ t Khởi tạo quần thể ban đầu P(t);

Tính độ thích nghi cho các cá thể thuộc P(t); Lặp (Khi chưa thỏa điều khiển dừng)

t = t + 1;

Tái sinh P’(t) từ P(t); // Replication Lai ghép Q(t) từ P(t-1); // Crossover Đột biến R(t) từ R(t-1); // Mutation Chọn lọc P(t) từ P; // Selection Kết thúc lặp

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

2.1.5. Ứng dụng

Giải thuật di truyền mặc dù mới đƣợc phát triển trong thời gian gần đây nhƣng đã thu đƣợc những thành công lớn ở nhiều ngành khác nhau, cả trên lý thuyết và thực tiễn, trong các lĩnh vực nhƣ khoa học, kinh doanh và giải trí. Đặc biệt ngƣời ta có thể kết hợp giải thuật di truyền với những giải thuật khác để tạo thành một cơ chế điều khiển tự động nhiều tầng, cho phép giải những bài toán tối ƣu phức tạp một cách nhanh chóng với độ chính xác có thể chấp nhận đƣợc.

Một số lĩnh vực giải thuật di truyền đã đƣợc ứng dụng thành công: - Phân tích dữ liệu và mô hình dự báo.

- Thiết kế mạng nơron. - Quy hoạch chiến lƣợc. - Quỹ đạo cho ngƣời máy. - Lập trình di truyền.

- Tìm dạng của các phân tử protein

- Bài toán ngƣời du lịch (Travelling Salesman Problems) và lập thời gian biểu. - Giải những bài toán khó.

2.2. Các khái niệm chung về giải thuật di truyền2.2.1. Chuỗi nhiễm sắc thể 2.2.1. Chuỗi nhiễm sắc thể

Giải thuật di truyền là giải thuật tìm kiếm dựa trên sự mô phỏng di truyền học tự nhiên thông qua các cơ chế chọn lọc tự nhiên và sự tiến hóa của các gen. Các gen liên kết với nhau tạo thành chuỗi nhiễm sắc thể.

Một chuỗi nhiễm sắc thể S là một xâu có độ dài cố định thành lập trên bảng mã di truyền A nhƣ sau:

S = (d0, d1, …dn) SAn,diA

Trên tập hợp các chuỗi nhiễm sắc thể ta định nghĩa các hàm. (adsbygoogle = window.adsbygoogle || []).push({});

* Hàm len trả lại độ dài của chuỗi

S = (d0, d1, …dn) =>lenSnS

* Hàm  thực hiện ghép hai chuỗi

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

B = (b1, b2, … bm)

AB(a1, a2, … an, b1, b2, … bm)

Nói chung, trong giải thuật di truyền các chuỗi nhiễm sắc thể là các chuỗi bit nhị phân. Khi đó

A = {0,1}

* Khoảng cách Hamming giữa hai chuỗi A và B là | | ) , ( 1     n i i i B A B A

H with lenA = lenB = n

2.2.2. Các cá thể

Mỗi cá thể là một phần tử của quần thể, là đối tƣợng thực hiện các quá trình tiến hóa nhƣ lai ghép, đột biến, sinh sản và chọn lọc tự nhiên.Mỗi chuỗi nhiễm sắc thể đặc trƣng về mặt di truyền cho một cá thể.

2.2.3. Phương pháp mã hóa

Mỗi cá thể I có một bộ gen S thể hiện bởi chuỗi nhiễm sắc thể của I. Tƣơng ứng với mỗi bộ gen S thì cá thể I có một kiểu hình M nhất định. Trong khi đó, các bài toán chúng ta cần giải quyết đều đƣợc biểu diễn thông qua kiểu hình của cá thể trong quần thể. Do đó cần phải có phƣơng pháp chuyển đổi từ M sang S. Phƣơng pháp này còn gọi là phƣơng pháp mã hóa di truyền cho bài toán.

2.2.4. Quần thể

Các giải thuật di truyền không làm việc với các cá thể đơn lẻ mà thực hiện trên toàn bộ quần thể gồm nhiều cá thể. Khi thực hiện giải thuật di truyền, các quần thể sẽ trải qua các quá trình tiến hóa đƣợc mô phỏng theo tiến hóa tự nhiên. Bắt đầu từ quần thể ban đầu P0 lần lƣợt các thế hệ đƣợc sản sinh nối tiếp nhau và thông qua quá trình tiến hóa thì thế hệ sau càng có tính thích nghi cao hơn so với thế hệ trƣớc.Đây là đặc tính quan trọng nhất, là cơ sở hình thành nên giải thuật di truyền.

Quần thể ban đầu có thể khởi tạo bằng cách tạo ra p xâu ngẫu nhiên bất kỳ có độ dài l đóng vai trò chuỗi nhiễm sắc thể của các cá nhân ban đầu. Hoặc chúng ta có thể khởi tạo quần thể bằng cách tạo ra các cá thể có kiểu hình nhất định rồi từ đó tìm ra kiểu gen của từng cá thể. Tuỳ theo bài toán phƣơng pháp đƣợc sử dụng là

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

khác nhau nhƣng đều phải đƣa đến kết quả là tạo ra quần thể ban đầu P0 có chất lƣợng tốt nhằm tối thiểu hóa thời gian tính toán.

2.2.5. Hàm thích nghi

Hàm thích nghi f(I) là hàm lƣợng giá khả năng thích nghi của cá thể I đối với môi trƣờng. Hàm thích nghi f(I) đƣợc sử dụng để định hƣớng, điều khiển quá trình tiến hóa của cả quần thể theo một hƣớng nhất định.

2.2.6. Lai ghép, đột biến, tái sinh và chọn lọc

Một cá thể mới sinh ra trong quá trình tiến hóa có thể mang những đặc tính, tính trạng của cha mẹ hoặc có thể mang những đặc tính hoàn toàn mới.Tuy nhiên hiện tƣợng đột biến xảy ra với xác suất nhỏ hơn rất nhiều so với hiện tƣợng di truyền nhƣng di truyền và đột biến là hai cơ chế có vai trò quan trọng nhƣ nhau trong quá trình tiến hóa. Các thuật toán tiến hóa đều mô phỏng bốn quá trình cơ bản sau: Lai ghép, đột biến, sinh sản và chọn lọc.

* Lai ghép: Lai ghép là quá trình hình thành nhiễm sắc thể trên cơ sở các nhiễm sắc thể cha mẹ bằng cách ghép một hay nhiều đoạn gen của hai hay nhiều nhiễm sắc thể cha mẹ với nhau. Quá trình lai ghép đƣợc mô phỏng: Chọn ngẫu nhiên hai hay nhiều cá thể bất kỳ trong quần thể. Giả sử các nhiễm sắc thể của cha mẹ đều có m

Một phần của tài liệu Ứng dụng giải thuật di truyền vào phân loại tài liệu dạng văn bản (Trang 28 - 85)