Tải bản đầy đủ - 0 (trang)
2 Độ phức tạp của bài toán người du lịch

2 Độ phức tạp của bài toán người du lịch

Tải bản đầy đủ - 0trang

GVHD: TS. Hồ Quốc Dũng



Khóa luận tốt nghiệp



Các mơ hình tính tốn và các thơng số phức tạp [3]:

+ Máy Turing là một mơ hình tốn học cho một máy tính tổng qt. Nó là

thiết bị lý thuyết thao tác trên các ký hiệu nằm trên một dãi băng. Máy Turing khơng

nhằm thiết kế thiết bị tính tốn trên thực tế, mà chỉ là một thiết bị trừu tượng đại diện

cho máy tính. Người ta tin rằng nếu một vấn đề có thể giải quyết bởi một thuật tốn,

thì cũng có một máy Turing giải quyết vấn đề đó. Tất cả các mơ hình tính tốn hiện

nay chẳng hạn như máy RAM, Trò chơi cuộc sống của Conway, automat tế bào hay

bất kì ngơn ngữ lập tình nào cũng đều có thể tính được trên máy Turing. Do máy

Turing phù hợp cho việc nghiên cứu bằng toán học và được xem là mạnh ngang bất







kỳ mơ hình tính tốn nào, máy Turing là mơ hình tốn phổ biến nhất trong lý thuyết



TR



Ư







N



G



Đ



ẠI



H





C



KI



N

H



TẾ



H



U



độ phức tạp tính tốn.



Hình 1. 3: Máy Turing

+ Các thông số phức tạp: Để định nghĩa cụ thể thời gian và bộ nhớ cần thiết

để giải quyết vấn đề, cần định rõ một mơ hình tính tốn cụ thể. Thời gian cần thiết

cho một máy Turing M giải quyết dữ liệu vào X là số lượng lần chuyển trạng thái,

hay số bước của máy trước khi máy ngừng và có thể thơng báo kết quả. Một máy

Turing chạy trong thời gian f(n) nếu thời gian máy sử dụng cho tất cả các dữ liệu

vào kích thước n là không f(n). Mặc dù thời gian và bộ nhớ là hai thông số phổ biến

nhất, nhiều thông số phức tạp khác cũng có thể xem là tài ngun tính tốn. Các



SVTH: Hồ Minh Toàn - K48A Tin Học Kinh Tế



Trang 10



GVHD: TS. Hồ Quốc Dũng



Khóa luận tốt nghiệp



thơng số độ phức tạp được định nghĩa tổng quát bởi các tiên đề độ phức tạp Blum,

một vài thông số độ phức tạp khác được dùng trong lý thuyết độ phức tạp bao gồm

độ phức tạp truyền thông, độ phức tạp mạch và độ phức tạp cây quyết định.

+ Các lớp độ phức tạp:

Một lớp độ phức tạp là một tập hợp các vấn đề có độ phức tạp tương tự

nhau. Các lớp độ phức tạp thường được định nghĩa theo các yếu tố như sau : Thể

loại vấn đề, Mơ hình tính tốn, Loại tài ngun bị giới hạn và giới hạn cụ thể.

+ Các độ phức tạp quan trọng :



H



U







Bảng 1. 2: Các lớp độ phức tạp

Lớp độ phức tạp



Mô hình tính tốn



DTIME



Máy Turing đơn định



P



Máy Turing đơn định



EXPTIME



Máy Turing đơn định



Thời gian 2poly(n)



NTIME(f(n))



Máy Turing không đơn định



Thời gian f(n)



NP



Máy Turing không đơn định



Thời gian poly(n)



NEXPTIME



Máy Turing không đơn định



Thời gian2poly(n)



Máy Turing đơn định



Bộ nhớ f(n)



Máy Turing đơn định



Bộ nhớ O (log n)



PSPACE



Máy Turing đơn định



Bộ nhớ poly(n)



EXPSPACE



Máy Turing đơn định



Bộ nhớ 2poly(n)



NSPACE(f(n))



Máy Tuirng không đơn định



Bộ nhớ f(n)



NL



Máy Turing không đơn định



Bộ nhớ O (log n)



NPSPACE



Máy Turing không đơn định



Bộ nhớ poly(n)



NEXPSPACE



Máy Turing không đơn định



Bộ nhớ 2poly(n)



TẾ



N

H



KI





C



H



ẠI



Đ



N



G



TR



Ư







DSPACE(f(n))

L



Giới hạn tài nguyên



SVTH: Hồ Minh Toàn - K48A Tin Học Kinh Tế



Thời gian f(n)

Thời gian poly(n)



Trang 11



GVHD: TS. Hồ Quốc Dũng







Khóa luận tốt nghiệp



H



U



Hình 1. 4: Quan hệ giữa các lớp độ phức tạp quan trọng



TẾ



Theo định lý Savitch thì PSPACE = NPSPACE và EXPSPACE =



N

H



NEXPSPACE.



KI



1.2.2 Độ phức tạp tính tốn của bài toán người du lịch





C



Bài toán người di du lịch (TSP) thuộc lớp bài tốn NP-Khó (Lớp các bài

tốn khơng có giải thuật trong thời gian đa thức).



ẠI



H



Việc thực hiện liệt kê hết tất cả các chu trình là điều gần như không thể với



Đ



số đỉnh lớn (đồ thị đỉnh phải duyệt n! chu trình). Số chu trình phải duyệt tăng rất



N



G



nhanh khi số đỉnh n càng lớn. Ngay với 1 đồ thị 100 đỉnh, việc duyệt toàn bộ cũng







là điều kiện rất khó thực hiện.



TR



Ư



1.3 Thuật tốn di truyền

1.3.1. Lịch sử của thuật toán di truyền

Ý niệm về thuật toán di truyền đã được một số nhà sinh vật học đưa ra từ

những năm 50-60, thế kỉ XX. A.S.Fraser [11] là người tiên phong nêu lên sự tương

đồng giữa sự tiến hóa của sinh vật và chương trình tin học giả tưởng về Genetic

Algorithms (GA)

Tuy nhiên, chính John Henry Holland [12] mới là người triển khai ý tưởng

và phương pháp giâỉ quyết vấn đề dựa theo sự tiến hóa.

Thuật tốn di truyền là thuật tốn tối ưu ngẫu nhiên dựa trên cơ chế chọn

lọc tự nhiên và tiến hóa di truyền. Ngun lý cơ bản của thuật tốn di truyền đã



SVTH: Hồ Minh Toàn - K48A Tin Học Kinh Tế



Trang 12



GVHD: TS. Hồ Quốc Dũng



Khóa luận tốt nghiệp



được tác giả J.H.Holland giới thiệu vào năm 1962. Cơ sở toán học đã được phát

triển từ cuối những năm 1960 và đã được giới thiệu trong cuốn sách đầu tiên của

Holland “Adaptive in Natural and Artificial Systems” [12]. Thuật toán di truyền

được ứng dụng đầu tiên trong hai lĩnh vực chính : tối ưu hóa và học máy.

Trong lĩnh vực tối ưu hóa thuật tốn di truyền được phát triển nhanh chóng

và ứng dụng trong nhiều lĩnh vực khác nhau như tối ưu hàm, xử lý ảnh, bài tốn

hành trình người du lịch, nhận dạng hệ thống và điều khiển. Thuật tốn di truyền

cũng như các thuật tốn tiến hóa nói chung, hình thành dựa trên quan niệm cho

rằng, q trình tiến hóa tự nhiên là q trình hồn hảo nhất, hợp lý nhất và tự nó đã



U

H



thế hệ trước bởi tính kế thừa và đấu tranh sinh tồn.







mang tính tối ưu. Q trình tiến hóa tối ưu ở chổ, thế hệ sau bao giờ cũng tốt hơn



TẾ



Lần đầu tiên Holand nghiên cứu các giải thuật này, chúng hoàn toàn khơng



N

H



có tên. Do nguồn gốc của phương pháp là từ gen di truyền, Holand đã đặt tên cho



KI



nó là thuật tốn đi truyền.





C



Thuật tốn di truyền khơng chú trọng đến giải pháp duy nhất và chính xác



H



như phương pháp cổ điển, trái lại GA xét đến toàn bộ các giải pháp và chọn lấy giải



ẠI



pháp tương đối tốt nhất nếu khơng nói là tối ưu. GA tuy dựa trên tính ngẫu nhiên



Đ



nhưng có hướng dẫn bởi hàm số thích nghi, do đó khơng có nghĩa là đốn mò như



N



G



nhiều người hiểu lầm, trái lại GA có một nền tảng tốn học vững chắc.







1.3.2. Đặc điểm của thuật toán di truyền



TR



Ư



Thuật tốn di truyền [13] đã mơ phỏng sự chọn lọc tự nhiên và di truyền .

Trong tự nhiên các cá thể khỏe, có khả năng thích nghi với mơi trường tốt sẽ được

tồn tại và phát triển ở các thế hệ sau. Mỗi cá thể có cấu trúc gen đặc trưng cho tính

chất của cá thể đó.

Trong q trình sinh sản, các cá thể con có thể thừa hưởng các phẩm chất

của cha mẹ, cấu trúc gen của nó có thể xảy ra hiện tượng đột biến, cấu trúc gen của

cá thể con có thể chứa các gen mà cả cha mẹ đều khơng có.

Trong giải thuật di truyền, mỗi cá thể được mã hóa bởi một cấu trúc dữ liệu

mơ tả cấu trúc gen của cá thể đó, ta gọi nó là nhiễm sắc thể. Mỗi nhiễm sắc thể

được tạo thành từ các đơn vị được gọi là gen.



SVTH: Hồ Minh Toàn - K48A Tin Học Kinh Tế



Trang 13



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

2 Độ phức tạp của bài toán người du lịch

Tải bản đầy đủ ngay(0 tr)

×