1. Trang chủ
  2. » Công Nghệ Thông Tin

Phương pháp lai mạng nơ ron giải thuật di truyền giải bài toán NP c và ứng dụng

66 346 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 66
Dung lượng 790 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Những năm gần đây trên thế giới đã đưa ra phương pháp lại mạng Nơ ron Hopfield và thuật giải di truyển nhằm giải quyết các bài toán tối ưu thuộc lớp NP-C và được áp dụng rộng rãi trong l

Trang 1

MỤC LỤC

TRANG PHỤ BÌA

LỜI CAM ĐOAN

MỤC LỤC i

52 iv

52 iv

53 iv

54 iv

56 iv

57 iv

DANH MỤC CÁC HÌNH iv

14 iv

14 iv

16 iv

16 v

17 v

19 v

21 v

25 v

31 v

35 v

36 v

37 v

Trang 2

44 v

55 v

CHƯƠNG I 9

GIỚI THIỆU SƠ LƯỢC VỀ CÁC BÀI TOÁN NP-C .9

1.1 Giới thiệu chung về bài toán NP-C 9

1.2 Cách tiếp cận giải bài toán NP-C 10

1.2.1 Một số khái niệm 10

1.2.2 Giới thiệu một số thuật toán xấp xỉ giải bài toán NP-C 11

1.2.3 Các thuật toán gần đúng 12

1.2.4 Tô mầu đồ thị với bài toán 4 mầu 19

1.2.5 Bài toán phẳng hóa đồ thị 21

1.3 Kết luận 23

2.1 Giới thiệu về mạng nơ-ron 24

2.1.1 Lịch sử phát triển 24

2.1.2 Mô hình mạng nơ-ron nhân tạo 25

2.2 Phạm vi ứng dụng của mạng nơ-ron 29

2.2.1 Những bài toán thích hợp 29

2.2.2 Các lĩnh vực ứng dụng mạng nơ-ron 29

2.2.3 Ưu và nhược điểm của mạng nơ-ron 30

2.3 Mạng Hopfield 30

2.3.1 Mạng Hopfield rời rạc 32

2.4 Giới thiệu thuật giải di truyền 34

2.4.2 Các bước quan trọng trong việc áp dụng thuật giải di truyền 36

2.4.3 Ví dụ minh họa 37

2.4.4 Các phương thức biến hóa của giải thuật di truyền 40

CHƯƠNG 3 51

Trang 3

ỨNG DỤNG THUẬT GIẢI DI TRUYỀN 51

GIẢI BÀI TOÁN PHÂN CÔNG NHIỆM VỤ .51

3.1 Giới thiệu 52

3.2 Định nghĩa bài toán 53

3.3 Ứng dụng Thuật giải di truyền vào bài toán 55

3.3.1 Mã hóa: 56

3.3.2 Toán tử chọn cá thể 56

3.3.3 Toán tử lai ghép và toán tử đột biến 57

3.3.4 Sửa chữa giải pháp 59

3.3.5 Tìm kiếm cục bộ 60

3.4 Thí nghiệm và nhận xét 61

3.4.1 Thí nghiệm 61

Để mô tả quá trình tiếp cận xem xét các trường hợp ASLGP sinh ra với số sinh viên và nhóm là khác nhau Xem xét các trường hợp từ 75 đến 400 sinh viên, được phân vào các nhóm thực hành khác nhau Các trường hợp được ký hiệu M/N/Cg (tương ứng là tổng số sinh viên, số nhóm, và khả năng chứa tối đa của từng nhóm) .61

3.4.2 Nhận xét 62

3.5 Kết luận 63

1 Giới thiệu sơ lược các bài toán NP-C, giới thiệu một số thuật toán, giải thuật và một số cách tiếp cận tới việc giải các bài toán NP-C 64

2 Đã hệ thống cơ sở lý thuyết của mạng nơron, nơ ron nhân tạo, mạng nơ ron hopfiled, thuật giải di truyền 64

KẾT LUẬN……… ……….58

TÀI LIỆU THAM KHẢO………….….……… 59

DANH MỤC BẢNG

Trang 4

Bảng 3.1: Các ứng dụng toán tử lai ghép thực hiện trong GGA. 52

Bảng 3.2: Các ứng dụng toán tử đột biến thực hiện trong GGA. 52

Bảng 3.3: Ví dụ về các sở thích của sinh viên 53

Bảng 3.4: Ví dụ về các sở thích của sinh viên 54

Bảng 3.5: Số sinh viên trong nhóm thứ i trong những giải pháp được

Bảng 3.6: So sánh các kết quả thu được bằng GGA và thuật toán

DANH MỤC CÁC HÌNH

Trang 5

Hình 2.9: Ví dụ về biểu diễn nơ ron của bài toán với N = 4 44Hình 3.1: Ví dụ về sở thích của các sinh viên trong 5 nhóm 55

Trang 7

LỜI NÓI ĐẦU

Trong thực tế có rất nhiều bài toán phức tạp thuộc lớp bài toán NP- C

và bài toán tối ưu có ràng buộc, cũng có nhiều công trình nghiên cứu để giải quyết các bài toán đó Ví dụ như: Bài toán tìm đường đi ngắn nhất, bài toán

tô màu bản đồ, bài toán vận tải Xong các giải thuật đưa ra thường phức tạp mà chưa có thuật toán đơn giản và hợp lý Những năm gần đây trên thế giới đã đưa ra phương pháp lại mạng Nơ ron Hopfield và thuật giải di truyển nhằm giải quyết các bài toán tối ưu thuộc lớp NP-C và được áp dụng rộng rãi trong lĩnh vực Công nghệ thông tin Việc nghiên cứu và áp dụng những thành tựu mới vào việc phân tích, thiết kế, phân công nhiệm vụ là một trong những vấn đề nóng đang rất được quan tâm

Nhận thức được vấn đề đó và có sự gợi ý, định hướng của PGS TS

Đặng Quang Á em đã mạnh dạn nghiên cứu đề tài " Phương pháp lai

mạng nơ ron - giải thuật di truyền giải bài toán NP-C và ứng dụng" Nội

dung cơ bản của luận văn gồm có ba chương:

Chương một giới thiệu sơ lược về một số bài toán NP-C, cách tiếp cận giải các bài toán NP-C như: bài toán tô mầu đồ thị, bài toán phẳng hóa đồ thị, bài toán chọn đồng tiền…, trình bầy các cách tiếp cận tới việc giải quyết các bài toán nêu trên

Chương hai giới thiệu sơ lược về mạng nơ ron, mạng nơ ron Hopfield, giải thuật di truyền Đặc biệt trình bầy phương pháp lai mạng Hopfield và giải thuật di truyền giải bài toán tối ưu

Chương ba ứng dụng giải thuật di truyền giải bài toán phân lịch thực hành tại các trường Đại học Đây là bài toán có tính ứng dụng thực tế cao trong nhiều lĩnh vực như phân công nhiệm vụ trong các đơn vị, xắp sếp lịch biểu Bài toán thuộc lớp NP-C Vì vậy, ứng dụng giải thuật di truyền trong

Trang 8

bài toán phân công nhiệm vụ trong hệ thống tính toán hỗn tạp sẽ hứa hẹn là một gải pháp khả thi góp phần nâng cao hiệu quả trong công việc phân công, điều hành của con người.

Qua luận văn này em xin chân thành cảm ơn: PGS TS Đặng Quang Á - Viện Công nghệ thông tin đã tận tình giúp đỡ, động viên, định hướng, hướng dẫn em nghiên cứu và hoàn thành luận văn Em xin cảm ơn các thầy cô giáo trong viện Công nghệ thông tin, các thầy cô giáo khoa Công nghệ thông tin

ĐH Thái nguyên, đã giảng dạy và giúp đỡ em trong hai năm học vừa qua, cảm ơn sự giúp đỡ nhiệt tình của các bạn đồng nghiệp

Xin chân thành cảm ơn!

Thái Nguyên, tháng 11 năm 2010

Người viết luận văn

Lê Thanh Bình

Trang 9

CHƯƠNG I GIỚI THIỆU SƠ LƯỢC VỀ CÁC BÀI TOÁN NP-C

1.1 Giới thiệu chung về bài toán NP-C

Quá trình khám phá các bài toán thuộc loại NP-C cho ta biết rằng có rất

ít cơ hội phát triển được một thuật toán hiệu quả để giải nó Điều đó khuyến khích ta tìm kiếm các heuristic, các lời giải từng phần, các xấp xỉ và những cách khác nhằm tránh giải trực diện bài toán

Mỗi lần đưa thêm một bài toán vào danh sách các bài toán NP-C chúng

ta lại củng cố thêm ý tưởng rằng tất cả mọi bài toán NP-C đều đòi hỏi thời gian mũ

Định nghĩa 1.1: Ta nói L là bài toán thuộc loại NP-complete nếu các

khẳng định sau đều đúng:

1) L thuộc NP

2) Với mọi ngôn ngữ L' NP có một phép thu thời gian đa thức L' về L.Bài toán NP-complete đầu tiên chúng ta sẽ xét là bài toán thỏa SAT (Boolean satisfiability) Chúng ta sẽ chứng tỏ rằng ngôn ngữ của mọi máy Turing không đơn định (NTM) thời gian đa thức đều có một phép thu thời gian đa thức về SAT Khi đã có được một số bài toán thuộc NP-complete (NP-C) chúng ta có thể chứng minh một bài toán mới thuộc NP-C bằng cách thu một bài toán đã biết là NP-C về bài toán đó nhờ một phép thu thời gian đa thức [ 1]

Định lý dưới đây cho biết vì sao một phép thu như thế chứng minh được bài toán đích là NP-C

Định lý 1.1: Nếu bài toán P1 là NP-C, P2 là NP và có một phép thu

thời gian đa thức từ P1 về P2 thì P2 cũng là NP-C.

Trang 10

Chứng minh: Ta cần chứng tỏ rằng mỗi ngụn ngữ L thuộc NP đều thu được P2 trong thời gian đa thức Khi đú theo định nghĩa P2 sẽ thuộc NP-C.Thật vậy vỡ P1 là NP-C nờn cú một phộp thu đa thức L về P1 Giả sử thời gian của phộp thu này là P(n) Vỡ thế một chuỗi W L có chiều dài n đợc biến đổi thành một chuỗi x P1 cú chiều dài tối đa là P(n) Ta cũng biết rằng

cú một phộp thu đa thức từ P1 về P2 Giả sử thời gian của phộp thu này là q(m) Thế thỡ phộp thu này biến đổi chuỗi x P1 về một chuỗi y nào đú thuộc P2 với thời gian tối đa là q(p(n)) Vỡ thế phộp biến đổi W L về y P2 mất thời gian tối đa là p(n) + q(p(n)) đõy cũng là một đa thức Như vậy, ta kết luận rằng L cú thể thu về P2 trong thời gian đa thức

Định lý 1.2 Nếu cú một bài toỏn nào đú là NP-C mà lại thuộc lớp P thỡ

ta cú P = NP.

Chứng minh: Giả sử cú bài toỏn Q NP-C và Q P Thế thỡ mọi ngụn ngữ L

trong NP đều thu được về Q trong thời gian đa thức Nếu Q P thỡ L

P Như vậy NP P Kết hợp với điều hiển nhiờn là P NP ta được P = NP Nhận xột: Chỳng ta vẫn tin tưởng rằng nhiều bài toỏn thuộc NP nhưng khụng thuộc P nờn chỳng ta sẽ xem việc chứng minh một bài toỏn là NP-C cú giỏ trị ngang với việc chứng minh rằng nú khụng thể giải được trong thời gian đa thức, và vỡ thế khụng cú lời giải đỳng nào bằng mỏy tớnh (và ta sẽ chỉ đi tỡm lời giải gần đỳng)

1.2 Cỏch tiếp cận giải bài toỏn NP-C

1.2.1 Một số khỏi niệm

Như đó trỡnh bầy ở phần trờn việc tỡm nghiệm của cỏc bài toỏn NP-C với kớch cỡ đầu vào n tương đối lớn là rất khú khăn, thường là khụng khả thi vỡ độ phức tạp cú thể núi là hàm mũ Đõy là những bài toỏn nan giải hay cũn gọi là

Trang 11

bất trị Vì thế thay cho việc tìm lời giải đúng (lời giải tối ưu) người ta phải tìm nghiệm gần đúng (lời giải gần tối ưu) mà có thể chấp nhận được.

- Giải thuật xấp xỉ: Xét trường hợp dữ kiện I của bài toán tối ưu P Gọi

F*(I) là giá trị của lời giải tối ưu đối với I Giải thuật G được gọi là giải thuật xấp xỉ cho bài toán P nếu nó luôn tạo ra một lời giải khả thi (feasible solution)

mà giá trị (I) của lời giải này gần với F*(I) đối với mọi dữ liệu I của bài toán

P

- Giải thuật xấp xỉ tuyệt đối: Giải thuật G được gọi là giải thuật xấp xỉ tuyệt đối cho bài toán P với mọi trường hợp I của P tồn tại hằng số K

|F*(I) - (I)| ≤ K

ở đây (I) là giá trị của lời giải do G tạo ra đối với dữ kiện I

- Giải thuật f(n)-xấp xỉ: Giải thuật G được gọi là giải thuật f(n)-xấp xỉ cho bài toán P với mọi dữ kiện I của bài toán P thì

với n là kích thước của I

- Giải thuật - xấp xỉ là giải thuật f(n)-xấp xỉ nếu f(n)

1.2.2 Giới thiệu một số thuật toán xấp xỉ giải bài toán NP-C

a Bài toán phủ đỉnh bé nhất (thuộc NP-C)

Input: Đồ thị vô hướng G = (V,E)

Trang 12

Loại bỏ khỏi E cạnh uv và mọi cạnh liên thuộc với u hoặc v

End do

Return(C)

b Giải thuật tham lam giải các bài toán tối ưu hóa thuộc loại NP-C

Giải thuật tham lam là một heuristic GrA (Greedy Algorithm) không phải luôn luôn cho lời giải tối ưu Thường nó chỉ cho lời giải gần tối ưu Khi

nó cho lời giải tối ưu thì việc chứng minh tính đúng đắn của thuật toán cũng không đơn giản

Để mô tả chính xác GrA cần mô tả chính xác môi trường trong đó các bài toán tối ưu đặt ra Trong các bài toán tối ưu trong ngữ cảnh GrA người ta có:

- Tập (danh sách) các ứng viên, thí dụ, các nút, các cạnh trong đồ thị

a Heuristic đối với bài toán phủ đỉnh

Bài toán: Cho đồ thị G = (V,E) Tìm tập đỉnh C nhỏ nhất phủ G theo nghĩa nếu cạnh uv E u C hoặc v C

Thuật toán tham lam:

Input: Đồ thị G = (V,E)

Output: Phủ C của G gần với phủ nhỏ nhất

begin

C := Ø;

Trang 13

Đầu tiên chon một trong các đỉnh a1, a2 hoặc a3 có bậc bằng 5 Giả sử ta chọn a1, a2 rồi a3 Cuối cùng là c1, c2, c3, c4 và c5 Như vậy phủ đỉnh gồm 8 đỉnh Nhưng phủ đỉnh tối ưu chỉ gồm 5 đỉnh là {b1, b2, b3, b4, b5} nếu mở rộng thí dụ này và xét đồ thị với n đỉnh loại a, n +2 đỉnh loại b và n +2 đỉnh loại c Theo giải thuật 1 ta tìm được phủ gồm 2n + 2 đỉnh, nhưng phủ tối ưu chỉ gồm

n + 2 đỉnh Vì n không giới nội nên sai số có thể đạt gần tới 100%

Phải chăng đây là phương pháp xấu nhất của giải thuật tham, hay có thể

có sai số lớn hơn?

Xét đồ thị: Đầu tiên chọn a7 với deg(a7) = 5 lớn nhất Sau khi loại a7 thì

a6 có bậc lớn nhất (bậc 4) rồi a5 (bậc 3), Trên mỗi bước trong số các đỉnh có bậc lớn nhất có một đỉnh loại a, sau đó được loại bỏ Cuối cùng phủ đỉnh được bổ sung các đỉnh loại c Kết quả là ta được phủ đỉnh của G gồm 13 đỉnh, trong khi phủ tối ưu chỉ gồm 6 đỉnh {b1, b2, b3, b4, b5, b6} Như vậy sai số vượt quá 100%

Để tổng quát hóa phản ví dụ trên đầu tiên ta cần hiểu cấu trúc của nó Có thể xem nó như 6 cạnh cibi (i = 1, 6), được bổ sung thêm các đỉnh loại a một cách thích hợp

Trang 14

Đầu tiên 6 cạnh loại b được phân thành 3 cặp và các đỉnh của mỗi cặp được nối với một đỉnh loại a Sau đó các đỉnh loại b được chia thành hai bộ ba

và tất cả các đỉnh của mỗi bộ ba nối với một đỉnh a mới Cũng làm như vậy với mỗi bộ bốn, bộ năm

Định nghĩa 1.2 Giả sử A là bài toán tối ưu với hàm giá trị c là nguyên

dương, A là thuật toán cho giá trị fA(I) đối với dữ kiện I, lời giải tối ưu là (I) Khi đó thuật toán A được gọi là thuật toán -xấp xỉ đối với bài toán A nếu

0 sao cho

Thí dụ: Thuật toán 2 là thuật toán 1-xấp xỉ, thuật toán 1 không phải là -xấp xỉ > 0, vì sai số tương đối của nó đối với các bài toán riêng biệt có thể lớn hơn hằng số bất kỳ Để mô tả trường hợp xấu nhất của thuật toán đôi khi người ta lấy = (n) Thí dụ nếu n là số đỉnh trong bài toán phủ đỉnh người ta chỉ ra rằng thuật toán 1 là lnn-xấp xỉ Có nghĩa là với mọi đồ thị G với n đỉnh thuật toán cho tập phủ C thỏa mãn

trong đó là phủ tối ưu

Trang 15

dij + djk dik 1 i, j, k n.

Bất đẳng thức này thỏa mãn nếu dij là khoảng cách thông thường giữa 2 điểm (xi, yi) và (xj , yj):

dij =

Có thể có các ma trận (dij) khác thỏa mãn bất đằng thức tam giác

Bài toán: Hãy tìm cách nhận số tiền S đã cho dùng ít tờ tiền nhất với mệnh giá khác nhau

c Thuật toán tham giải bài toán chọn đồng tiền

input: Tổng số tiền S, tập các mệnh giá M = {m1,m2, ,mn}

+ Sắp xếp các mệnh giá theo thứ tự giảm dần Giả sử đó là m1 > m2 >

Trang 16

Phương án tối ưu hơn: 2 tờ, mỗi tờ mệnh giá 20.

Kết luận: Như vậy thuật toán tham không phải khi nào cũng cho lời giải tối ưu

Nhưng khi tập dữ liệu lớn thì thuật toán nhanh chóng cho lời giải tối ưu hoặc gần tối ưu

d Bài toán ba lô nguyên (0-1)

Giả sử ba lô có dung lượng là W Có các vật b1, , bn với dung lượng wi

và giá trị pi (profit) Xếp các vật vào ba lô sao cho đạt tổng giá trị lớn nhất (giả thiết là các vật không thể chia nhỏ)

Ký hiệu xi là biến quyết định (loại 0-1):

xi =

Trang 17

Khi đó bài toán được phát biểu như sau:

Tìm vector x = (x1, x2, , xn), xi {0, 1} sao cho với ràng

e Các phương pháp tham (GrM) đối với bài toán ba lô 0-1

GrM dựa trên việc đặt các vật vào ba lô từng cái một

Các chiến lược chọn vật đặt vào ba lô:

* Greedy-by-profit: Tại mỗi bước chọn trong các vật còn lại vật có giá trị lớn nhất (với điều kiện dung lượng của ba lô cho phép)

* Greedy-by-weight: Tại mỗi bước chọn vật có trọng lượng bé nhất trong các vật còn lại Đặt càng nhiều vật vào ba lô càng tốt

* Greedy-by-profit-density: Tại mỗi bước chọn trong số các vật còn lại vật có mật độ giá trị di = pi/wi lớn nhất

Trang 18

Bảng dưới đây trình bày 4 lời giải:

i w i p i d i G-profit G-weight G-density Optimal

Trang 19

1.2.4 Tô mầu đồ thị với bài toán 4 mầu

a Giới thiệu

Lịch sử xuất hiện giả thuyết bốn màu còn nhiều điều chưa rõ Có ý kiến cho rằng Mobious đã biết bài toán này từ năm 1852 khi Francis Guthrie, một sinh viên trường Tổng hợp London trình bày bài toán này cho Augustus De Morgan, và ông này đã mô tả nó trong thư gửi cho Hamilton (Lại có ý kiến khác cho rằng bài toán này xuất hiện vào khoảng những năm 1850-1852 từ một nhà buôn người Anh là Gazri khi tô bản đồ hành chính nước Anh đã cố gắng chứng minh rằng nó có thể tô bốn màu Sau đó, năm 1952 ông ta đã viết thư cho DeMorgan để thông báo về giả thuyết này) Năm 1878 Kelly, nhà toán học nổi tiếng người Anh đã phát biểu trước hội toán học London với thông báo rằng ông đã suy nghĩ nhiều ngày về bài toán bốn màu nhưng không thể giải được

Tính hấp dẫn của bài toán này nằm ở tính dễ hiểu trong cách phát biểu bài toán : “Cần chứng minh rằng một đồ thị phẳng bất kỳ có thể tô bởi bốn màu sao cho hai đỉnh kề nhau có hai màu khác nhau” Để giả bài toán này, có hai khuynh hướng :

1 Đối với một đồ thị phẳng bất kỳ, xây dựng thuật toán thực hiện việc tô màu các đỉnh bởi bốn màu

2 Chứng minh sự tồn tại của phép tô màu đó

Tóm lại, bài toán bốn màu được phát biểu như sau:

Phát biểu bài toán bốn màu:

Cho một bản đồ trong đó có N nước Cần tô màu cho các nước sao cho hai nước kề nhau (tức là có chung biên giới) được tô bởi hai màu khác nhau, nhờ đó có thể phân biệt các vùng một cách dễ dàng

Bài toán sẽ không còn tồn tại nếu như có số lượng màu lớn Tuy nhiên,

sẽ thực sự khó khăn với ràng buộc rằng phải sử dụng số màu là nhỏ nhất

Trang 20

b Cỏch tiếp cận giải bài toỏn bốn màu

Cỏc nhà toỏn học đó chứng minh rằng một bản đồ bất kỳ cú thể tụ bởi 4 màu

Vớ dụ bản đồ 9 nước tụ bởi bốn màu như hỡnh 1.2

Trước hết ta sẽ mụ hỡnh hoỏ bài toỏn này như một bài toỏn thoả món ràng buộc

Ký hiệu X là chỉ số miền cần tụ màu (X= 1,2 N)

) ê (

nha kề Y X, nếu

màu bởi tô

dược X miền

4 5

6

7 8

Trang 21

X Y

(1.2)

Vì vế trái của ràng buộc (1.2) không âm (do VXi, VYi, dXY ≥ 0) và giá trị nhỏ nhất của nó là 0 Bài toán thoả mãn ràng buộc trên có thể phát biểu dưới dạng bài toán tối ưu hoá

N

X Y

có ràng buộc sau:

Tìm VXi ∈ {0,1} sao cho

min 1

4 1 1

2 4

1

→ +

N X i

N

X i X i

Y

B V

Phẳng hoá đồ thị là một trong những bài toán quan trọng trong việc thiết

kế mạch điện tử và định tuyến tối ưu mạch tổ hợp

Một cách tổng quát bài toán phẳng hóa đồ thị được phát biểu như sau:

Từ một đồ thị cho trước (là đồ thị phẳng hoặc không phẳng), hãy tìm ra một

đồ thị con lớn nhất để có thể phẳng hoá được, sau đó phẳng hóa đồ thị con đó sao cho không có cạnh nào cắt nhau khi biểu diễn chúng trên cùng một mặt phẳng

Với đồ thị không phẳng cho trước, để thực hiện phẳng hoá nó, trước hết

ta phải chọn từ nó một đồ thị con lớn nhất có thể phẳng hóa được Đồ thị con này được chọn sao cho số cạnh của nó là lớn nhất, tương đương với số cạnh bị loại bỏ khỏi đồ thị cho trước là nhỏ nhất Như vậy bài toán tìm một đồ thị con

Trang 22

lớn nhất từ một đồ thị không phẳng cho trước sau đó phẳng hoá nó là một bài toán thuộc lớp bài toán NP- đầy đủ.

b Cách tiếp cận giải bài toán phẳng hóa đồ thị

Như vậy để phẳng hoá một đồ thị ta phải thực hiện các bước sau:

- Với một đồ thị cho trước kiểm tra xem nó có phẳng hay không, nếu không phẳng, ta tìm một đồ thị con lớn nhất có thể phẳng hoá được

- Biểu diễn đồ thị tìm được lên mặt phẳng sau đó thực hiện phẳng hoá

34

(a)

34

(b)

Hình 1.3: Đồ thị 6 cạnh

Trang 23

hàng và được sắp xếp theo thứ tự, các cạnh của đồ thị được biểu diễn bởi các đường nối trên và các đường nối dưới Với phương pháp này đồ thị hình (1.3) được biểu diễn như sau:

1.3 Kết luận

Nội dụng của chương tập trung vào giới thiệu sơ lược về một số bài toán NP-C, cách tiếp cận giải bài toán NP-C như bài toán tô mầu đồ thị, bài toán phẳng hóa đồ thị, bài toán ba lô, bài toán chọn đồng tiền…

Giới thiệu một số thuật toán giải bài toán NP-C như thuật toán xấp xỉ, thuật toán gần đúng, giải thuật tham lam và một số cách tiếp cận giải bài toán tối ưu thuộc loại NP-C

đường nối trên

đường nối dưới

Hình 1.5: Đồ thị phẳng trên một hàng

đơn

Trang 24

CHƯƠNG II MẠNG NƠ RON VÀ THUẬT GIẢI DI TRUYỀN GIẢI

BÀI TOÁN TỐI ƯU2.1 Giới thiệu về mạng nơ-ron

+ Giai đoạn hai: Vào khoảng gần những năm 1960, một số mô hình ron hoàn thiện hơn đã được đưa ra như: mô hình Perceptron của Rosenblatt (1958), Adaline của Widrow (1962)

nơ-+ Giai đoạn ba: Có thể tính vào khoảng đầu thập niên 80 Những đóng góp lớn cho mạng nơ-ron trong giai đoạn này phải kể đến Grossberg, Kohonen, Rumelhart và Hopfield Trong đó đóng góp lớn của Hopfield gồm hai mạng phản hồi: mạng rời rạc năm 1982 và mạng liên tục năm 1984 Đặc biệt, ông đã dự kiến nhiều khả năng tính toán lớn của mạng mà một nơ-ron không có khả năng đó

+ Giai đoạn bốn: Tính từ năm 1987 đến nay, hàng năm thế giới đều mở hội nghị toàn cầu chuyên ngành nơ-ron IJCNN (International Joint Conference on Neural Networks) Rất nhiều công trình được nghiên cứu để ứng dụng mạng nơ-ron vào các lĩnh vực, ví dụ như: kỹ thuật tính, tối ưu, sinh học, y học, thống kê, giao thông, hoá học… Cho đến nay, mạng nơ-ron đã tìm được và khẳng định được vị trí của mình trong rất nhiều ứng dụng khác nhau

Trang 25

2.1.2 Mô hình mạng nơ-ron nhân tạo

2.1.2.1 Nơ-ron sinh học

Hệ thần kinh ở người có khoảng 1010 tế bào thần kinh được gọi là các nơ-ron Mỗi nơ-ron gồm có ba phần: Thân nơ-ron với nhân ở bên trong (soma), một đầu thần kinh ra (axon) và một hệ thống hình cây thần kinh (dendrite) Có nhiều loại nơ-ron khác nhau về kích thước và khả năng thu phát tín hiệu Tuy nhiên, chúng có cấu trúc và nguyên lý hoạt động chung Hình 2.1 là một hình ảnh đơn giản hoá của một loại nơ-ron như vậy Trong thực tế có rất nhiều dây thần kinh vào và chúng bao phủ một diện tích rất lớn (0.25 mm2) để nhận các tín hiệu từ các nơ-ron khác Đầu thần kinh ra được rẽ nhánh nhằm chuyển giao tín hiệu từ thân nơ-ron tới nơ-ron khác Các nhánh của đầu thần kinh được nối với các khớp thần kinh (synapse) Các khớp thần kinh này được nối với thần kinh vào của các nơ-ron khác Thêm vào đó, các nơ-ron có thể sửa đổi tín hiệu tại các khớp, trong các nơ-ron nhân tạo được gọi là trọng số

Hoạt động của nơ-ron sinh học có thể mô tả tóm tắt như sau:

Khớp nối dây thần kinh ( Đầu Vào) Nhân

Trang 26

Mỗi nơ-ron nhận tín hiệu vào từ các tế bào thần kinh khác Chúng tích hợp các tín hiệu vào, khi tổng tín hiệu vượt quá một ngưỡng nào đó chúng tạo tín hiệu ra và gửi tín hiệu này tới các nơ-ron khác thông qua dây thần kinh Các nơ-ron liên kết với nhau thành mạng Mức độ bền vững của các liên kết này xác định một hệ số gọi là trọng số liên kết.

2.1.2.2 Nơ-ron nhân tạo

+ Trọng số và tổng tín hiệu đầu vào:

Mô phỏng nơ-ron sinh học, ta có nơ-ron nhân tạo Mỗi nơ-ron có rất nhiều dây thần kinh vào, nghĩa là mỗi nơ-ron có thể tiếp nhận đồng thời nhiều tín hiệu Giả sử tại nơ-ron i có N tín hiệu vào, mỗi tín hiệu vào S j được gán một trọng số W ijtương ứng Ta có thể ước lượng tổng tín hiệu đi vào nơ-ron

i w s net

1 , (2.1)(ii) Dạng toàn phương:

∑=

= N

j j ij

i w s net

net ρ , (2.3)trong đó ρvàw ij(j = 1 ,N) lần lượt là bán kính và tâm cầu

+ Hàm kích hoạt

Hàm biến đổi tín hiệu đầu vào net cho tín hiệu đầu ra out được gọi là hàm kích hoạt Hàm này có đặc điểm là không âm và bị chặn Có nhiều dạng

Trang 27

hàm kích hoạt, người ta thường sử dụng một hàm kích hoạt chung cho toàn mạng

Một số hàm kích hoạt thường được sử dụng:

f out

LTP net

UTP net net

f

1

(2.5)

ở đây UTP>LTP Trong đó:

UTP là ngưỡng trên (Upper Trip Point)

LTP là ngưỡng dưới (Lower Trip Point)

f out

1

1

, (2.6)trong đó λ > 0 là hằng số xác định độ nghiêng của hàm

 Nút bias:

Là một nút thêm vào nhằm tăng khả năng thích nghi của mạng nơ-ron trong quá trình học Trong các mạng nơ-ron có sử dụng bias, mỗi nơ-ron có thể có một trọng số tương ứng với bias Trong số này luôn có giá trị là 1

 Mô hình của một nút xử lý (nút thứ i):

Trang 28

i j ij

i W V U

#1

θ , (2.7)

( )i i

Với việc giả lập các hệ thống sinh học, các cấu trúc tính toán, mạng ron có thể giải quyết được các lớp bài toán nhất định, như: Bài toán xếp loại, bài toán lập lịch, bài toán tìm kiếm, bài toán nhận dạng mẫu Các bài toán phức tạp cao, không xác định Tuy nhiên, sự liên kết giữa một bài toán bất kỳ trong thực tế với một giải pháp mạng nơ-ron lại là một việc không dễ dàng.Xét một cách tổng quát, mạng nơ-ron là một cấu trúc xử lý song song thông tin phân tán mang các đặc tính nổi bật sau:

nơ-Hình (2.2) Mô hình một nơ-ron

Trang 29

• Là mô hình toán học dựa trên bản chất của nơ-ron.

• Bao gồm một số lượng rất lớn các nơ-ron liên kết với nhau

• Mạng nơ-ron có khả năng học, khái quát hoá tập dữ liệu học thông qua việc gán và hiệu chỉnh các trọng số liên kết

• Tổ chức theo kiểu tập hợp mang lại cho mạng nơ-ron khả năng tính toán rất lớn, trong đó không có nơ-ron nào mang thông tin riêng biệt [2]

2.2 Phạm vi ứng dụng của mạng nơ-ron

2.2.1 Những bài toán thích hợp

Mạng nơ-ron được coi như là hộp đen biến đổi véc-tơ đầu vào m biến thành véc-tơ đầu ra n biến Tín hiệu ra có thể là các tham số thực, (tốt nhất nằm trong khoảng [0,1], hoặc [-1,1]), số nhị phân 0,1, hay số lưỡng cực -1;+1

Số biến của véc-tơ vào ra không bị hạn chế xong sẽ ảnh hưởng tới thời gian tính và tải nguyên liệu của máy tính Nói chung, các lớp bài toán áp dụng cho nơ-ron có thể được phân chia thành bốn loại:

- Phân lớp (classification)

- Mô hình hoá (modeling)

- Biến đổi, thực hiện ánh xạ từ một không gian đa biến vào không gian

đa biến khác tương ứng (transformation and mapping)

- Liên kết và kỹ thuật dịch chuyển cửa sổ (association and moving window)

2.2.2 Các lĩnh vực ứng dụng mạng nơ-ron

Khó có thể thống kê đầy đủ các ứng dụng của mạng nơ-ron Tuy nhiên,

có thể nêu một số ứng dụng như sau:

- Xử lý ảnh

- Nhận dạng mẫu

- Y học

- Các hệ thống quân sự

Trang 30

- Vấn đề lập kế hoạch, điều khiển và tìm kiếm.

- Các hệ thống năng lượng

- Dự đoán

- Giải các bài toán tối ưu: Vấn đề chính là tìm những thuật toán huấn luyện mạng để góp phần tìm nghiệm cho nhiều lớp bài toán tối ưu toàn cục

2.2.3 Ưu và nhược điểm của mạng nơ-ron

- Không có cách tổng quát để đánh giá hoạt động bên trong mạng

- Việc học đối với mạng có thể khó (hoặc không thể) thực hiện

- Khó có thể dự đoán trước được hiệu quả của mạng trong tương lai (khả năng tổng quát hoá)

2.3 Mạng Hopfield

Trong mạng hồi quy tín hiệu ra của một nơ-ron có thể được truyền ngược lại làm tín hiệu vào cho các nơ-ron ở các lớp trước, hoặc các nơ-ron trong cùng một lớp Phần này sẽ trình bày mô hình mạng tiêu biểu thuộc lớp mạng hồi quy, đó là mạng Hopfield

Mạng Hopfield được bắt đầu nghiên cứu từ năm 1982 Đây là mạng một lớp với thông tin và quá trình xử lý có nối ngược Chính công trình của

Trang 31

Hopfield được tìm thấy rất nhiều ứng dụng, đặc biệt trong bộ nhớ liên kết và trong các bài toán tối ưu.

Giả sử mạng được xây dựng dưới dạng mạng một lớp, mỗi nơ-ron được truyền ngược lại làm tín hiệu vào cho các nơ-ron khác nhưng bản thân các nơ-ron không tự liên kết với chính nó Khi đó mô hình mạng Hopfield được biểu diễn như hình 2.3

Tín hiệu ra của nơ-ron thứ j nào đó được truyền ngược lại làm tín hiệu vào cho các nơ-ron khác trong mạng một cách đầy đủ thông qua các trọng số tương ứng

Ký hiệu Wij là liên kết giữa hai nơ ron i và j (wij = wji), Vi là đầu ra của

nơ ron i Ta coi véc tơ (V1, V2, Vn) là trạng thái của mạng Tại mỗi thời điểm t mỗi nơ ron i tổng hợp các tin hiệu Vj từ các nơ ron khác và tin hiệu từ bên ngoài (bias) iÞ j( ) i.

Mạng đạt trạng thái cân bằng nếu Vi(t+1) = Vi(t) , ∀ i

Ta định nghĩa hàm năng lượng của mạng là:

2

X

N

Y 1

Y2

Y M

.

Trang 32

i i n i j i iị n ị i j

n i

n W V V I V V

V E E

1 1

1

1 ) , , (

Trường hợp mạng nhận cỏc giỏ trị nhị phõn {0, 1}:

Hàm kớch hoạt được xỏc định như sau:

net nếu net

f

á 0

0 1

) ( (2.11)

Việc cho hàm kớch hoạt (2.11) tương đương với quy tắc chuyển trạng thỏi của mạng Vi(t+1) = Vi(t) +∆Vi ;

trong đú ∆Vi được cho bởi cụng thức (quy tắc)

Định lý: Giả sử Wii =0 (i ,=i n) Khi đú với quy tắc chuyển trạng thỏi

như trờn và cập nhật khụng đồng bộ thỡ năng lượng của mạng khụng tăng (tức

là giảm hoặc giữ nguyờn)

Chứng minh: Giả sử nơ ron k thay đổi trạng thỏi từ thời điểm t đến t+1

Khi đú mạng sẽ thay đổi năng lượng và

j

k j

=

≥ +

V(t)=1 và

I t V W nếu

t V và I

t V W nếu

V

j

i i

j ij j

i i

j ij

i

trong các trường hợp khác

0

0 )

( 1

0 ) ( 0

) ( 1

Trang 33

vì thế theo công thức ta luôn có ∆E≤ 0, tức là năng lượng của mạng không tăng Vì thế hàm năng lượng sẽ đạt tới giá trị cực tiểu Do hàm giới nội.

Do tính chất hội tụ và giá trị nhị phân của các nơ ron nên mạng Hopfield rời rạc được sử dụng cho các bài toán tối ưu {0, 1}

Sự hội tụ của mạng Hopfield liên tục cho bởi định lý sau:

Định lý: Nếu fi(Ui) (i= 1 ,n) là các hàm khả vi và không giảm thì ≤ 0

dt dE

i i

i

dV V

E dt

dU dU

dV V

E dt

Ngày đăng: 16/04/2017, 17:30

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1]. Đặng Quang Á, Bài giảng lý thuyết độ phức tạp tính toán, tài liệu nội bộ khoa CNTT, Đại học Thái Nguyên, Hà nội, 2009 Sách, tạp chí
Tiêu đề: Bài giảng lý thuyết độ phức tạp tính toán
Tác giả: Đặng Quang Á
Nhà XB: Đại học Thái Nguyên
Năm: 2009
[2]. Đặng Quang Á, ứng dụng của mạng nơ ron trong tính toán, Sách “Hệ mờ, mạng nơ ron và ứng dụng”, Chủ biên: Bùi công Cường, Nguyễn Doãn Phước, Nhà XBKH-KT, Hà nội, 2001, 199-211 Sách, tạp chí
Tiêu đề: Hệ mờ, mạng nơ ron và ứng dụng
Tác giả: Đặng Quang Á
Nhà XB: Nhà XBKH-KT
Năm: 2001
[3]. Hoàn Kiếm, Lê Hoàng Thái, Giải thuật di truyền, cách giải tự nhiên các bài toán trên máy tính, NXB Giáo dục, 2000 Sách, tạp chí
Tiêu đề: Giải thuật di truyền, cách giải tự nhiên các bài toán trên máy tính
Tác giả: Lê Hoàng Thái
Nhà XB: NXB Giáo dục
Năm: 2000
[5]. Falkenauer, E. (1992). The grouping genetic algorithm–widening the scope of the GAs. In Proceedings of the Belgian journal of operations research, statistics and computer science (Vol. 33, pp. 79–102) Sách, tạp chí
Tiêu đề: The grouping genetic algorithm–widening the scope of the GAs
Tác giả: E. Falkenauer
Nhà XB: Proceedings of the Belgian journal of operations research, statistics and computer science
Năm: 1992
[6]. LiMin Fu, Neural Network in Computer Intelligence, Mc. Graw Hill, 1994 Sách, tạp chí
Tiêu đề: Neural Network in Computer Intelligence
Tác giả: LiMin Fu
Nhà XB: Mc. Graw Hill
Năm: 1994
[7]. Y.Takefuji, Neural Network Parallel Computing, Kluwer Acad. Publ, 1992 Sách, tạp chí
Tiêu đề: Neural Network Parallel Computing
Tác giả: Y.Takefuji
Nhà XB: Kluwer Acad. Publ
Năm: 1992
[8]. Falkenauer, E. (1998). Genetic algorithms for grouping problems. New York: Wiley Sách, tạp chí
Tiêu đề: Genetic algorithms for grouping problems
Tác giả: E. Falkenauer
Nhà XB: Wiley
Năm: 1998
[4]. Trần Thị Thu Trà, Đặng Quang Á, Huy động nguồn điện tối ưu bằng mạng Hopfield rời rạc, Tạp chí Khoa học và Công nghệ, Tập 43, Số 1, 2005, 125-131 Khác
[9]. Fan, Z. P., Chen, Y., Mab, J., & Zhu, Y. (2009). Decision support for proposal grouping: A hybrid approach using knowledge rules and genetic algorithms. Expert Systems with Applications, 36, 1004–1013 Khác

HÌNH ẢNH LIÊN QUAN

Bảng dưới đây trình bày 4 lời giải: - Phương pháp lai mạng nơ ron giải thuật di truyền giải bài toán NP c và ứng dụng
Bảng d ưới đây trình bày 4 lời giải: (Trang 18)
Hình 1.1: Bản dồ 9 nước chưa tô - Phương pháp lai mạng nơ ron giải thuật di truyền giải bài toán NP c và ứng dụng
Hình 1.1 Bản dồ 9 nước chưa tô (Trang 20)
Hình 1.4:  (a) và (b) là đồ thị phẳng. - Phương pháp lai mạng nơ ron giải thuật di truyền giải bài toán NP c và ứng dụng
Hình 1.4 (a) và (b) là đồ thị phẳng (Trang 22)
Hình 2.1. Mô hình nơ ron sinh học - Phương pháp lai mạng nơ ron giải thuật di truyền giải bài toán NP c và ứng dụng
Hình 2.1. Mô hình nơ ron sinh học (Trang 25)
Hình 2.3: Mô hình mạng Hopfield - Phương pháp lai mạng nơ ron giải thuật di truyền giải bài toán NP c và ứng dụng
Hình 2.3 Mô hình mạng Hopfield (Trang 31)
Hình 2.4: Lưu đồ mô tả cấu trúc của giải thuật di truyền. - Phương pháp lai mạng nơ ron giải thuật di truyền giải bài toán NP c và ứng dụng
Hình 2.4 Lưu đồ mô tả cấu trúc của giải thuật di truyền (Trang 37)
Hình 2.5: Lưu đồ thuật toán của quá trình chọn lọc. - Phương pháp lai mạng nơ ron giải thuật di truyền giải bài toán NP c và ứng dụng
Hình 2.5 Lưu đồ thuật toán của quá trình chọn lọc (Trang 41)
Hình 2.6: Lưu đồ thuật toán quá trình lai ghép. - Phương pháp lai mạng nơ ron giải thuật di truyền giải bài toán NP c và ứng dụng
Hình 2.6 Lưu đồ thuật toán quá trình lai ghép (Trang 43)
Hình 2.8: Lưu đồ thuật toán của giải thuật lai. - Phương pháp lai mạng nơ ron giải thuật di truyền giải bài toán NP c và ứng dụng
Hình 2.8 Lưu đồ thuật toán của giải thuật lai (Trang 49)
Hình 2.9:Ví dụ về biểu diễn nơ ron của bài toán với N = 4 - Phương pháp lai mạng nơ ron giải thuật di truyền giải bài toán NP c và ứng dụng
Hình 2.9 Ví dụ về biểu diễn nơ ron của bài toán với N = 4 (Trang 50)
Bảng 3.2: Ví dụ: về các ứng dụng toán tử đột biến thực hiện trong GGA. - Phương pháp lai mạng nơ ron giải thuật di truyền giải bài toán NP c và ứng dụng
Bảng 3.2 Ví dụ: về các ứng dụng toán tử đột biến thực hiện trong GGA (Trang 58)
Bảng 3.3: Ví dụ về các sở thích của sinh viên - Phương pháp lai mạng nơ ron giải thuật di truyền giải bài toán NP c và ứng dụng
Bảng 3.3 Ví dụ về các sở thích của sinh viên (Trang 60)
Bảng 3.4: Ví dụ về các sở thích của sinh viên - Phương pháp lai mạng nơ ron giải thuật di truyền giải bài toán NP c và ứng dụng
Bảng 3.4 Ví dụ về các sở thích của sinh viên (Trang 61)
Bảng 3.5:  Số sinh viên trong nhóm thứ i trong những giải pháp tốt nhất được tìm   thấy bởi GGA. - Phương pháp lai mạng nơ ron giải thuật di truyền giải bài toán NP c và ứng dụng
Bảng 3.5 Số sinh viên trong nhóm thứ i trong những giải pháp tốt nhất được tìm thấy bởi GGA (Trang 62)
Bảng 3.6:  So sánh các kết thu được bằng các GGA và thuật toán tham lam GRAH . - Phương pháp lai mạng nơ ron giải thuật di truyền giải bài toán NP c và ứng dụng
Bảng 3.6 So sánh các kết thu được bằng các GGA và thuật toán tham lam GRAH (Trang 63)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w