ĐẠI HỌC THÁI NGUYÊN

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

NGUYỄN ĐỨC VĂN

GIẢI PHÁP TỐI ƯU CÁC THAM SỐ ĐỊNH LƯỢNG NGỮ NGHĨA CỦA ĐẠI SỐ GIA TỬ VÀ ỨNG DỤNG CHO BÀI TOÁN LẬP LUẬN XẤP XỈ MỜ TRONG ĐIỀU KHIỂN

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

THÁI NGUYÊN - 2018

ĐẠI HỌC THÁI NGUYÊN

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

NGUYỄN ĐỨC VĂN

GIẢI PHÁP TỐI ƯU CÁC THAM SỐ ĐỊNH LƯỢNG NGỮ NGHĨA CỦA ĐẠI SỐ GIA TỬ VÀ ỨNG DỤNG CHO BÀI TOÁN LẬP LUẬN XẤP XỈ MỜ TRONG ĐIỀU KHIỂN

Chuyên ngành: KHOA HỌC MÁY TÍNH

Mã số: 60.48.01.01

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

Người hướng dẫn khoa học: TS. NGUYỄN DUY MINH

THÁI NGUYÊN - 2018

i

LỜI CAM ĐOAN

Tôi xin cam đoan kết quả đạt được trong luận văn là sản phẩm của cá nhân dưới sự hướng dẫn khoa học của TS. Nguyễn Duy Minh. Trong toàn bộ nội dung luận văn, những nội dung được trình bày là của cá nhân hoặc tổng hợp từ nhiều nguồn tài liệu khác nhau. Tất cả các tài liệu tham khảo đó đều có xuất xứ rõ ràng và được trích dẫn hợp pháp.

Tôi xin chịu trách nhiệm và chịu mọi hình thức kỷ luật theo quy định cho

lời cam đoan của mình.

Thái Nguyên, 15 tháng 4 năm 2018

Tác giả

Nguyễn Đức Văn

ii

LỜI CẢM ƠN

Em xin gửi lời cảm ơn chân thành đến TS. Nguyễn Duy Minh - người hướng dẫn khoa học, thầy đã định hướng và nhiệt tình hướng dẫn, giúp đỡ em trong quá trình làm luận văn.

Em xin gửi lời biết ơn sâu sắc đến quý thầy cô giáo trường Đại học Công nghệ thông tin và Truyền thông; Viện công nghệ thông tin thuộc Viện hàn lâm Khoa học và Công nghệ Việt Nam đã truyền đạt những kiến thức và kinh nghiệm quý báu cho chúng em trong thời gian học tập.

Xin chân thành cảm ơn các bạn bè, đồng nghiệp, ban cán sự và các học viên lớp cao học CK15A, những người thân trong gia đình đã động viên, chia sẻ, tạo điều kiện giúp đỡ trong suốt quá trình học tập và làm luận văn.

Thái Nguyên, 15 tháng 4 năm 2018

Tác giả

Nguyễn Đức Văn

iii

MỤC LỤC

MỤC LỤC ........................................................................................................ iii

DANH MỤC BẢNG ......................................................................................... v

DANH MỤC HÌNH ......................................................................................... vi

DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT ..................................... vii

MỞ ĐẦU ........................................................................................................... 1

CHƯƠNG 1: GIỚI THIỆU MỘT SỐ KIẾN THỨC CƠ SỞ ..................... 3

1.1. Biến ngôn ngữ và mô hình mờ ................................................................... 3

1.1.1. Biến ngôn ngữ ..................................................................................... 3

1.1.2. Mô hình mờ ......................................................................................... 4

1.2. Đại số gia tử ............................................................................................... 5

1.2.1. Độ đo tính mờ của các giá trị ngôn ngữ .............................................. 6

1.2.2. Hàm định lượng ngữ nghĩa ................................................................. 9

1.2.3. Đại số gia tử tuyến tính đầy đủ ......................................................... 10

1.2.4. Khái niệm ngưỡng hiệu chỉnh định lượng ngữ nghĩa ....................... 12

1.3. Phương pháp lập luận xấp xỉ mờ đa điều kiện ......................................... 13

1.4. Bài toán tối ưu và giải thuật di truyền ...................................................... 15

1.4.1. Bài toán tối ưu ................................................................................... 15

1.4.2.1. Các khái niệm cơ bản của giải thuật di truyền ............................................................ 16

1.4.2.2. Cơ chế thực hiện của giải thuật di truyền .................................................................... 19

1.4.2.3. Các phương pháp biểu diễn nhiễm sắc thể và các toán tử di truyền chuyên biệt ........ 22

1.4.2.4. Biểu diễn thực ............................................................................................................. 22

1.4.2.5. Các toán tử chuyên biệt hoá ........................................................................................ 23

1.4.2. Giải thuật di truyền ........................................................................... 16

1.5. Kết luận Chương 1 ................................................................................... 25

CHƯƠNG 2: GIẢI PHÁP TỐI ƯU CÁC THAM SỐ ĐỊNH LƯỢNG NGỮ NGHĨA CHO PHƯƠNG PHÁP LẬP LUẬN MỜ DỰA TRÊN ĐẠI SỐ GIA TỬ .................................................................................................... 26

2.1. Phương pháp lập luận mờ sử dụng đại số gia tử ...................................... 26

2.2. Các giải pháp tối ưu các tham số định lượng ngữ nghĩa .......................... 29

iv

2.3. Giải pháp xác định các tham số định lượng ngữ nghĩa tối ưu ................. 32

2.3.1. Giải pháp tối ưu các tham số của đại số gia tử ................................. 32

2.3.2.1. Phân tích ảnh hưởng các tham số hiệu chỉnh .............................................................. 33

2.3.2.2. Thuật toán xác định mô hình định lượng ngữ nghĩa tối ưu ......................................... 34

2.3.2. Giải pháp xác định mô hình định lượng ngữ nghĩa tối ưu ................ 33

2.4. Phương pháp lập luận mờ sử dụng đại số gia tử dựa trên các mô hình định lượng ngữ nghĩa tối ưu. ................................................................................... 36

2.4.1. Vấn đề xác định giá trị định lượng ngữ nghĩa tối ưu ........................ 36

2.4.2. Sử dụng tham số hiệu chỉnh tối ưu cho phương pháp lập luận mờ sử dụng đại số gia tử ........................................................................................ 37

2.5. Tổng kết Chương 2 .................................................................................. 39

CHƯƠNG 3: ỨNG DỤNG PHƯƠNG PHÁP LẬP LUẬN XẤP XỈ MỜ SỬ DỤNG ĐẠI SỐ GIA TỬ VỚI MÔ HÌNH ĐỊNH LƯỢNG NGỮ NGHĨA TỐI ƯU TRONG ĐIỀU KHIỂN ................................................................. 40

3.1. Mô tả một số bài toán điều khiển logic mờ .............................................. 40

3.1.1. Bài toán 1: Xấp xỉ mô hình mờ EX1 của Cao-Kandel [9] ................ 40

3.1.2. Bài toán 2: Bài toán hệ con lắc ngược [8] ......................................... 41

3.2. Ứng dụng phương pháp lập luận xấp xỉ mờ sử dụng đại số gia tử trong điều khiển ................................................................................................................ 43

3.2.1. Phương pháp điều khiển logic mờ truyền thống ............................... 43

3.2.2. Phương pháp lập luận xấp xỉ mờ sử dụng đại số gia tử trong điều khiển 44

3.2.3. Phương pháp lập luận xấp xỉ mờ sử dụng đại số gia tử với các mô hình định lượng ngữ nghĩa tối ưu trong điều khiển .................................... 47

3.3. Ứng dụng .................................................................................................. 48

3.3.1. Bài toán 1 .......................................................................................... 48

3.3.2. Bài toán 2 .......................................................................................... 52

3.4. Kết luận Chương 3 ................................................................................... 55

KẾT LUẬN .................................................................................................... 57

TÀI LIỆU THAM KHẢO ............................................................................... 58

v

DANH MỤC BẢNG

Bảng 2. 1. So sánh các giá trị ĐLNN .............................................................. 31

Bảng 3. 1. Mô hình EX1 của Cao-Kandel ....................................................... 40

Bảng 3. 2. Các kết quả xấp xỉ EX1 tốt nhất của Cao-Kandel [9] .................... 41

Bảng 3. 3. Mô hình FAM cho hệ con lắc ngược ............................................. 43

Bảng 3. 4. Mô hình SAM gốc - xấp xỉ mô hình EX1 ...................................... 50

Bảng 3. 5. Mô hình SAM (PAR2) – xấp xỉ mô hình EX1 ................................ 50

Bảng 3. 6. Sai số lớn nhất của các phương pháp trên mô hình EX1 ............... 51

Bảng 3. 7. Chuyển nhãn ngôn ngữ cho các biến X1, X2 .................................. 52

Bảng 3. 8. Nhãn ngôn ngữ cho biến u ............................................................. 52

Bảng 3. 9. Mô hình SAM gốc của hệ con lắc ngược ...................................... 52

Bảng 3. 10. Mô hình SAM(PAR2) của hệ con lắc ngược................................. 53

Bảng 3. 11. Sai số các phương pháp của hệ con lắc ngược ............................ 55

vi

DANH MỤC HÌNH

Hinh 1. 1 Độ đo tính mờ ................................................................................... 8

Hinh 1. 2. Mã hoá nhị phân biểu diễn các cá thể ............................................ 17

Hinh 1. 3. Biểu diễn giá trị của  đối với hai lần được chọn .......................... 24

Hình 3. 1. Đường cong thực nghiệm của mô hình EX1 ................................. 41

Hình 3. 2. Mô tả hệ con lắc ngược .................................................................. 42

Hình 3. 3. Sơ đồ phương pháp điều khiển CFC .............................................. 44

Hình 3. 4. Sơ đồ phương pháp điều khiển FCHA ........................................... 45

Hình 3. 5. Kết quả xấp xỉ mô hình EX1 của Cao Kandel ............................... 51

Hình 3. 6. Đồ thị lỗi của hệ con lắc ngược ..................................................... 55

vii

DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT

Các ký hiệu:

Tổng độ đo tính mờ của các gia tử âm 

Tổng độ đo tính mờ của các gia tử dương 

Giá trị định lượng của phần tử trung hòa 

Đại số gia tử AX

Đại số gia tử tuyến tính đầy đủ AX*

Phần tử trung hòa trong đại số gia tử W

Ngưỡng hiệu chỉnh định lượng ngữ nghĩa 𝜀

δ Tham số hiệu chỉnh giá trị định lượng ngữ nghĩa

c-, c+ Các phần tử sinh

Các chữ viết tắt:

Định lượng ngữ nghĩa ĐLNN

Đại số gia tử ĐSGT

Genetic Algorithm GA

FMCR Fuzzy Multiple Conditional Reasoning

Fuzzy Associative Memory FAM

Semantic Associative Memory SAM

Hedge Algebras Reasoning HAR

OpPAR Optimal - Parameter

Conventional Fuzzy Control CFC

Fuzzy Control Using Hedge Algebras FCHA

FCOPHA Fuzzy Control using Optimal Hedge Algebras

1

MỞ ĐẦU

Khoa học ngày càng phát triển thì càng có nhiều thiết bị máy móc hỗ trợ cho đời sống con người. Các thiết bị máy móc càng “thông minh” thì càng thay thế sức lao động và do đó các thiết bị dạng này dường như là một trong những cái đích mà con người vươn tới. Như vậy, nhu cầu thiết yếu của cuộc sống là tạo ra các máy móc có thể hành xử giống với con người. Hay nói cách khác là các máy phải biết suy luận để đưa ra các quyết định đúng đắn.

Người tiên phong trong lĩnh vực này là Zadeh [11]. Trong các công trình của mình ông đã mô tả một cách toán học những khái niệm mơ hồ mà ta thường gặp trong cuộc sống như: cao, thấp; đúng, sai bằng các tập mờ. Nhờ việc xây dựng lý thuyết tập mờ mà con người có thể suy diễn từ khái niệm mơ hồ này đến khái niệm mơ hồ khác mà bản thân logic kinh điển không làm được. Trên cơ sở các thông tin không chính xác thu được, người ta có thể đưa ra những quyết định hiệu quả cho từng tình huống của bài toán.

Tuy nhiên, phương pháp lập luận của con người là vấn đề phức tạp và không có cấu trúc. Vì vậy kể từ khi lý thuyết tập mờ ra đời cho đến nay, vẫn chưa có một cơ sở lý thuyết hình thức chặt chẽ theo nghĩa tiên đề hoá cho logic mờ và lập luận mờ.

Để đáp ứng phần nào đối với nhu cầu xây dựng cơ sở toán học cho việc lập luận ngôn ngữ, N.Cat Ho và Wechler [12] đã đề xuất cách tiếp cận dựa trên cấu trúc tự nhiên của miền giá trị của các biến ngôn ngữ, trong các công trình, các tác giả đã chỉ ra rằng, những giá trị của biến ngôn ngữ trong thực tế đều có thứ tự nhất định về mặt ngữ nghĩa, ví dụ ta hoàn toàn có thể cảm nhận được rằng, ‘trẻ’ là nhỏ hơn ‘già’, hoặc ‘nhanh’ luôn lớn hơn ‘chậm’.

Với việc định lượng các từ ngôn ngữ của ĐSGT, một số phương pháp lập luận nội suy ra đời nhằm mục đích giải quyết bài toán lập luận mờ đa điều kiện, một bài toán được ứng dụng nhiều trong tự nhiên, kỹ thuật [11], các phương pháp lập luận này được gọi là các phương pháp lập luận xấp xỉ mờ sử dụng ĐSGT. Tuy nhiên khi thực hiện phương pháp lập luận còn tồn tại: Trong ĐSGT, việc ánh xạ ĐLNN bảo toàn thứ tự ngữ nghĩa định tính, vì vậy phương pháp ĐLNN này hàm chứa những lợi thế trong việc chuyển trung thành các mô hình mờ sang mô hình định lượng (theo trực giác) để giải các bài toán ứng dụng. Tuy nhiên mô hình định lượng tương đối hợp lý nhưng chưa tối ưu. Vì vậy ta phải nghiên cứu một số giải

2

pháp tìm ra được mô hình ĐLNN tối ưu nhất (các tham số ĐLNN của các ĐSGT tối ưu) nhưng vẫn phải đảm bảo thứ tự ngữ nghĩa của ĐSGT.

Với lý do như vậy đề tài “Giải pháp tối ưu các tham số ĐLNN của ĐSGT và ứng dụng cho bài toán lập luận xấp xỉ mờ trong điều khiển” nghiên cứu và đưa ra giải pháp tối ưu các tham số ĐLNN của phương pháp lập luận mờ dựa trên ĐSGT.

Giải pháp tối ưu các tham số ngữ nghĩa định lượng này được cài đặt thử nghiệm trên một số bài toán lập luận xấp xỉ mờ dựa trên ĐSGT trong điều khiển, các kết quả sẽ được đánh giá và so sánh với các phương pháp lập luận khác đã được công bố.

3

CHƯƠNG 1: GIỚI THIỆU MỘT SỐ KIẾN THỨC CƠ SỞ

1.1. Biến ngôn ngữ và mô hình mờ

1.1.1. Biến ngôn ngữ

Một biến ngôn ngữ là biến mà “các giá trị của nó là các từ hoặc câu trong ngôn ngữ tự nhiên hoặc ngôn ngữ nhân tạo”. Ví dụ như khi nói về nhiệt độ ta có thể xem đây là biến ngôn ngữ có tên gọi NHIỆT_ĐỘ và nó nhận các giá trị ngôn ngữ như “cao”, “rất cao”, “trung bình”… Đối với mỗi giá trị này, chúng ta sẽ gán cho chúng một hàm thuộc. Giả sử lấy giới hạn của nhiệt độ trong đoạn [0, 230oC] và giả sử rằng các giá trị ngôn ngữ được sinh bởi một tập các quy tắc. Khi đó, một cách hình thức, chúng ta có định nghĩa của biến ngôn ngữ sau đây:

Định nghĩa 1.1. Biến ngôn ngữ là một bộ gồm năm thành phần (X,T(X), U, R, M), trong đó X là tên biến, T(X) là tập các giá trị ngôn ngữ của biến X, U là không gian tham chiếu của biến cơ sở u, mỗi giá trị ngôn ngữ xem như là một biến mờ trên U kết hợp với biến cơ sở u, R là một qui tắc cú pháp sinh các giá trị ngôn ngữ cho tập T(X), M là qui tắc ngữ nghĩa gán mỗi giá trị ngôn ngữ trong T(X) với một tập mờ trên U.

Ví dụ 1.1. Từ định nghĩa trên ta có tên biến ngôn ngữ X chính là NHIỆT_ĐỘ, biến cơ sở u có miền xác định là U = [0, 230] tính theo oC. Tập các giá trị ngôn ngữ tương ứng của biến ngôn ngữ là T(NHIỆT_ĐỘ) = {cao, rất cao, tương_đối cao, thấp, rất thấp, trung bình, …}. R là một qui tắc để sinh ra các giá trị này. M là quy tắc gán ngữ nghĩa sao cho mỗi một giá trị ngôn ngữ sẽ được gán với một tập mờ. Chẳng hạn, đối với giá trị nguyên thủy cao, M(cao) = {(u, cao(u) | u  [0, 230]}, được gán như sau:

cao(u) =

Ngữ nghĩa của các giá trị khác trong T(NHIỆT_ĐỘ) cũng có thể tính thông qua tập mờ của các giá trị nguyên thủy bởi các phép toán tương ứng với các gia tử tác động như rất, tương_đối,…

4

1.1.2. Mô hình mờ

Cấu trúc của một mô hình mờ chính là một tập bao gồm các luật mà mỗi luật là một mệnh đề dạng “If…then…”, trong đó phần “If” được gọi là mệnh đề điều kiện hay tiền đề còn phần “then” được gọi là phần kết luận.

Mô hình mờ dạng đơn giản hay còn gọi là mô hình SISO (Single Input Single Output) là tập các luật mà trong đó mỗi luật chỉ chứa một điều kiện và một kết luận được cho như sau:

if X = A1 then Y = B1

(1.1) if X = A2 then Y = B2

. . . . . . . .

if X = An then Y = Bn

trong đó X, Y là các biến ngôn ngữ thuộc không gian U, V tương ứng và

các giá trị ngôn ngữ A1, A2,…, An, B1, B2, …, Bn là các tập mờ.

Tuy nhiên, trong một số lĩnh vực, chẳng hạn như trong điều khiển, sự phụ thuộc giữa các biến vật lý không chỉ biểu diễn ở dạng đơn giản như mô hình trên mà nó bao gồm nhiều điều kiện ràng buộc. Vì vậy, một mô hình mờ ở dạng tổng quát là một tập các luật (mệnh đề If-then) mà phần tiền đề của mỗi luật là một điều kiện phức được viết như sau:

If X1 = A11 and ... and Xm = A1m then Y = B1

If X1 = A21 and ... and Xm = A2m then Y = B2

. . . . . . . . (1.2)

If X1 = An1 and ... and Xm = Anm then Y = Bn

ở đây X1, X2, …, Xm và Y là các biến ngôn ngữ, Aij, Bi (i = 1,…, n; j =

1,…, m) là các giá trị ngôn ngữ tương ứng ([11]).

Hầu hết các ứng dụng trong hệ chuyên gia mờ, phân cụm mờ, điều khiển mờ,… liên quan đến việc suy diễn thì mô hình mờ là một phần không thể thiếu và do vậy các ứng dụng này luôn gắn liền với các phương pháp giải quyết bài toán lập luận xấp xỉ đa điều kiện. Bài toán lập luận xấp xỉ mờ đa điều kiện được phát biểu như dưới đây:

Cho mô hình mờ (1.2) và các giá trị ngôn ngữ A01, A02, …, A0m tương ứng

với các biến ngôn ngữ X1, X2, …, Xm . Hãy tính giá trị của Y.

5

Có nhiều phương pháp để giải quyết bài toán này. Các phương pháp cụ

thể sẽ được trình bày ở Mục 1.3.

1.2. Đại số gia tử

Trong mô hình mờ thường dùng các mô tả ngôn ngữ cho các biến vật lý. Với mỗi biến ngôn ngữ X, gọi X = Dom(X) là tập các giá trị ngôn ngữ của biến X. Miền giá trị X được xem như một ĐSGT AX = (X, G, H, ) trong đó G là tập các phần tử sinh, H là tập các gia tử còn “” là quan hệ cảm sinh ngữ nghĩa trên X. Ta cũng giả thiết rằng trong G có chứa các phần tử 0, 1, W với ý nghĩa là phần tử bé nhất, phần tử lớn nhất và phần tử trung hòa (neutral) trong X.

Nếu tập X và H là các tập sắp thứ tự tuyến tính, khi đó ta nói AX = (X, C,

H, ) là ĐSGT tuyến tính.

Khi tác động gia tử h  H vào phần tử x  X, thì ta thu được phần tử ký hiệu hx. Với mỗi x  X ta ký hiệu H(x) là tập tất cả các phần tử u thuộc X xuất phát từ x bằng cách sử dụng các gia tử trong H và ta viết u = hn…h1x, với hn, …, h1  H.

Bây giờ chúng ta sẽ xét một vài tính chất được phát biểu trong các định lý

dưới đây của ĐSGT tuyến tính.

Định lý 1.1. ([12]) Cho tập H– và H+ là các tập sắp thứ tự tuyến tính của

ĐSGT AX = (X, G, H, ). Khi đó ta có các khẳng định sau:

(1) Với mỗi u  X thì H(u) là tập sắp thứ tự tuyến tính.

(2) Nếu X được sinh từ G bởi các gia tử và G là tập sắp thứ tự tuyến tính thì X cũng là tập sắp thứ tự tuyến tính. Hơn nữa nếu u < v, và u, v là độc lập với nhau, tức là u  H(v) và v  H(u), thì H(u)  H(v).

Một cách tổng quát hơn như đã chứng minh trong tài liệu ([12]), mỗi miền ngôn ngữ của biến ngôn ngữ có thể được tiên đề hóa và được gọi là ĐSGT AX = (X, G, H, ), trong đó H là tập thứ tự tuyến tính bộ phận. Chúng ta có định lý sau.

Định lý 1.2. ([12]) Cho ĐSGT AX = (X, G, H, ). Khi đó ta có các khẳng

định sau:

(1) Các toán tử trong Hc là so sánh được với nhau, c  {+, –}.

6

(2) Nếu x  X là điểm cố định đối với toán tử h  H, tức là hx = x, thì nó

là điểm cố định đối với các gia tử khác.

(3) Nếu x = hn…h1u thì tồn tại chỉ số i sao cho hi…h1u của x là một biểu diễn chuẩn của x tương ứng với u (x = hi…h1u và hi…h1u ≠ hi-1…h1u) và hjx = x với mọi j > i.

(4) Nếu h ≠ k và hx = kx thì x là điểm cố định.

(5) Với bất kỳ gia tử h, k  H, nếu x ≤ hx (x ≥ hx) thì x <≤ hx (x ≥> hx) và

nếu hx < kx, h ≠ k, thì hx <≤ kx.

Trong [9] các tác giả đã chỉ ra rằng mỗi ĐSGT đầy đủ là một dàn với phần

tử đơn vị là 1 và phần tử không là 0.

Để thuận tiện về sau, chúng ta nêu ra định lý kế tiếp dùng để so sánh hai

phần tử trong miền ngôn ngữ của biến ngôn ngữ X.

Định lý 1.3. Cho x = hn…h1u và y = km…k1u là hai biểu diễn chuẩn của x và y tương ứng với u. Khi đó tồn tại chỉ số j ≤ min{n, m} + 1 sao cho hj’ = kj’ với mọi j’ < j (ở đây nếu j = min {m, n} + 1 thì hoặc hj là toán tử đơn vị I, hj = I, j = n + 1 ≤ m hoặc kj = I, j = m + 1 ≤ n) và

(1) x < y khi và chỉ khi hjxj < kjxj, trong đó xj = hj-1...h1u.

(2) x = y khi và chỉ khi m = n và hjxj = kjxj.

(3) x và y là không so sánh được với nhau khi và chỉ khi hjxj và kjxj là

không so sánh được với nhau.

1.2.1. Độ đo tính mờ của các giá trị ngôn ngữ

Khái niệm độ đo tính mờ của các giá trị ngôn ngữ là một khái niệm trừu tượng không dễ để xác định bằng trực giác và có nhiều cách tiếp cận khác nhau, để xác định khái niệm này. Thông thường, trong lý thuyết tập mờ, các cách tiếp cận chủ yếu là dựa trên hình dạng của tập mờ. Với ĐSGT có thể xác định được độ đo tính mờ của các giá trị ngôn ngữ một cách hợp lý.

Giá trị ngôn ngữ nào càng đặc trưng thì độ đo tính mờ càng nhỏ. Chẳng hạn, độ đo tính mờ của giá trị ngôn ngữ More_or_less True (MLtrue), Possibly True là nhỏ hơn độ đo tính mờ của True. Tuy nhiên trong lý thuyết tập mờ không thể hiện được điều đó. Thật vậy, giả sử ngữ nghĩa của giá trị ngôn ngữ được biểu diễn bởi tập mờ. Độ đo tính mờ của các giá trị ngôn ngữ là khoảng cách giữa tập mờ biểu thị cho giá trị ngôn ngữ đó với tập rõ gần nó nhất. Nếu

7

chúng ta biểu diễn từ true bởi hàm thuộc µtrue(t)= t trên đoạn [0,1] và MLtrue bởi µMLtrue(t) = tα với α = 2/3 < 1 thì độ đo tính mờ của true bằng 1/4, nhưng độ đo tính mờ của MLtrue bằng

Rõ ràng cách xác định độ đo tính mờ như vậy là không thích hợp so với ý kiến ban đầu đặt ra. Vì vậy để xác định độ đo tính mờ một cách hợp lý, trước hết chúng ta phải tìm ra một số tính chất trực giác về độ đo tính mờ của giá trị ngôn ngữ. Những tính chất này chính là nền tảng cho việc xác lập các định nghĩa.

Ký hiệu fm(τ) là độ đo tính mờ của phần tử τ, τ  X và chúng ta cũng giả sử rằng độ đo tính mờ của mỗi phần tử luôn thuộc đoạn [0,1]. Một số tính chất trực giác của fm(τ):

(1) fm(τ) = 0, nếu τ là giá trị rõ.

(2) Nếu h là một gia tử và τ là giá trị mờ thì hτ đặc trưng hơn τ, vì vậy ta

có fm(hτ) < fm(τ).

(3) Xét hai phần tử sinh true và false của ĐSGT. Vì đây là các khái niệm trái ngược nhau nhưng bổ sung cho nhau nên chúng ta có thể chấp nhận điều kiện sau:

fm(true) + fm(false) ≤ 1.

Chúng ta nhận thấy rằng, nếu fm(true) + fm(false) < 1 thì bắt buộc phải tồn tại khái niệm τ khác bổ sung cho cả true và false để fm(true) + fm(false) + fm(τ) = 1. Trường hợp này không tồn tại trong ngôn ngữ tự nhiên. Vì thế, ta có fm(true) + fm(false) = 1. Từ đó suy ra rằng, nếu c+, c– là hai phần tử sinh trong X thì:

fm(c+) + fm(c–) = 1

(4) Bây giờ chúng ta xét tập gia tử H = {Very, More, Possibly, Little} và tập các giá trị H[true] = {VeryTrue, MoreTrue, PossiblyTrue, LittleTrue}, tất cả các phần tử của tập này đều đặc trưng hơn true. Theo nhận định ở điểm (2), độ đo tính mờ của true lớn hơn mọi độ đo của các phần tử trong H[true]. Chúng ta có thể xác định một cách trực giác rằng độ đo tính mờ của true được thiết lập thông qua độ đo tính mờ của các phần tử bắt nguồn từ true và chấp nhận điều kiện sau đây:

8

fm(Very true) + fm(More true) + fm(Poss. true) + fm(Little true) ≤

fm(true).

Tương tự như thảo luận trong (3), ta có:

fm(Very true) + fm(More true) + fm(Poss. true) + fm(Little true) =

fm(true).

Một cách tổng quát, giả sử τ là giá trị ngôn ngữ bất kỳ thuộc X thì:

fm(Very τ) + fm(More τ) + fm(Poss. τ) + fm(Little τ) = fm(τ).

Cuối cùng chúng ta có thể biểu diễn độ đo tính mờ của biến ngôn ngữ

TRUTH như trong Hình 1.1 dưới đây.

True

More

Poss.

True

True

LittleTrue

VeryTrue

1

W

fm(MLTr)

fm(PVTr)

fm(VVTr)

fm(LLTr)

fm(M Tr)

fm(LVTr)

fm(VLTr)

fm(MVTr)

fm(PLTr)

fm(LittleTr)

fm(VeryTrue)

fm(PossTr))

fm(True)

Hinh 1. 1 Độ đo tính mờ Hình 1. 1. Độ đo tính mờ

Định nghĩa 1.2. Xét đại số gia tử AX = (X, G, H, ) của biến ngôn ngữ X. Một hàm φ: X → [0,1] được gọi là hàm độ đo tính mờ trên X nếu tồn tại một xác suất P trên X sao cho P xác định trên tập H(τ). Với mỗi phần tử τ  X thì P(H(τ)) = 0 nếu τ  {0, 1, W} và φ(τ) = P(H(τ)).

Từ định nghĩa ta thấy “kích cỡ” của tập H(τ) thể hiện độ đo tính mờ của phần tử τ. Chúng ta dễ dàng nhận ra rằng hàm φ thỏa mọi tính chất trực giác đã đề xuất trên. Cụ thể là:

Tính chất (p1): φ(0) = φ(1) = φ(W) = 0.

Tính chất (p2): φ(hτ) ≤ φ(τ), với mọi τ  X và h  H.

Tính chất (p3): φ(c–) + φ(c+) = 1, với c–, c+ là hai phần tử sinh trong X.

9

Tính chất (p4): , τ  X.

Chúng ta cũng có thể viết lại tính chất (p4) như sau: ,

tổng này không thay đổi với mọi τ  X. Chúng ta có thể xem tỷ lệ φ(hτ)/φ(τ) là một hằng số và nó đặc trưng cho gia tử h. Ta có tính chất sau:

Tính chất (p5): Tỷ lệ φ(hτ)/φ(τ) không phụ thuộc vào τ và nó được gọi là

độ đo tính mờ của gia tử h, ký hiệu µ(h).

Định lý 1.4. Độ đo tính mờ trên X là duy nhất được xác định bởi các tham số φ(c–), φ(c+) và µ(h), h  H thỏa các đẳng thức sau: φ(c–) + φ(c+) = 1, và φ(x) được định nghĩa đệ quy bởi công thức φ(hx’) = µ(h)φ(x’),

với x = hx’, h  H.

1.2.2. Hàm định lượng ngữ nghĩa

Nhu cầu tự nhiên trong cách tiếp cận tính toán lập luận của con người là định lượng các giá trị ngôn ngữ, chẳng hạn như trong các lĩnh vực phân cụm mờ, điều khiển mờ, …

Theo cách tiếp cận của tập mờ, các giá trị định lượng của mỗi tập mờ là giá trị khử mờ của hàm thuộc tương ứng. Đối với ĐSGT, vì các giá trị ngôn ngữ tuân theo thứ tự ngữ nghĩa nên chúng ta sẽ thiết lập hàm định lượng các từ (giá trị ngôn ngữ) vào đoạn [0,1] đảm bảo thứ tự, hàm này được gọi là hàm ĐLNN.

Xét ĐSGT AX = (X, G, H, ) trong đó tập gia tử H = H+H– và giả sử rằng H– = {h–1, h–2, …, h–q} thỏa h–1 < h–2 < …< h–q; H+ ={h1, h2, …, hp} thỏa h1 < h2 < …< hp, và h0 = I với I là toán tử đơn vị.

Chúng ta cần có các mệnh đề và định nghĩa sau:

Mệnh đề 1.1. Cho fm là hàm độ đo tính mờ trên X. Ta có:

(1) fm(hx) = (h)fm(x), với x  X.

(2) fm(c) + fm(c+) = 1.

(3) , trong đó c  {c, c+}

(4) , với x  X.

10

(5) và , với ,  > 0 và  +  = 1.

Định nghĩa 1.3. (Sign function) Hàm dấu Sign: X  {−1, 0, 1} là ánh xạ

được xác định đệ quy sau đây, trong đó h, h’  H và c  {c, c+}:

(1) Sign(c) = 1, Sign(c+) = +1,

(2) Sign(h'hx) = Sign(hx), nếu h’hx  hx và h' âm đối với h (hoặc tương

ứng với c, nếu h = I & x = c);

(3) Sign(h'hx) = Sign(hx), nếu h’hx  hx và h' dương đối với h (hoặc tương

ứng với c, nếu h = I & x = c);

(4) Sign(h'hx) = 0, nếu h’hx = hx.

Mệnh đề 1.2. Với bất kỳ gia tử h  H và phần tử x  X, nếu Sign(hx) =

+1 thì ta có hx > x và nếu Sign(hx) = 1 thì hx < x.

Định nghĩa 1.4. Cho fm là hàm độ đo tính mờ trên tập X. Hàm định lượng

ngữ nghĩa : X  [0,1], kết hợp với hàm fm, được xác định như sau:

(1) (W) =  = fm(c), (c) =  − fm(c) = fm(c),

(c+) =  + fm(c+);

, trong đó (2) (hjx) = (x) +

, và (hjx) =

j  {j: q  j  p & j  0} = [q^p].

Mệnh đề 1.3.

(1) Với mọi x  X, 0 ≤ (x) ≤ 1.

(2) Với mọi x, y  X, x < y suy ra (x) < (y).

1.2.3. Đại số gia tử tuyến tính đầy đủ

Để thuận tiện trong các chứng minh dưới đây, chúng ta sẽ nhắc lại một số

khái niệm về ĐSGT tuyến tính đầy đủ.

Định nghĩa 1.5. Đại số gia tử đầy đủ AX = (X, G, H, , , ≤) được gọi là tuyến tính nếu tập các phần tử sinh G = {0, c–, W, c+, 1} và tập các gia tử H– = {h-1, ..., h-q} và H+ = {h1,..., hp} là các tập sắp thứ tự tuyến tính, trong đó 

11

và  là hai phép toán với ngữ nghĩa là cận trên đúng và cận dưới đúng của tập H(x), tức là x = supremum(H(x)), x = infimum(H(x)), H = HH+, và ta luôn luôn giả thiết rằng h-1 < h-2 < ... < h-q; h1 < ...< hp.

Định nghĩa 1.6. Giả sử AX = (X, G, H, , , ) là một ĐSGT đầy đủ, tuyến tính và tự do, fm(x) và (h) tương ứng là các độ đo tính mờ của giá trị ngôn ngữ x và của gia tử h. Khi đó, ta nói  là ánh xạ cảm sinh bởi độ đo tính mờ fm của ngôn ngữ nếu nó được xác định như sau:

(1) (W) =  = fm(c), (c) =  – fm(c) = fm(c),

(c+) =  +fm(c+);

(2) ,

trong đó , với

mọi j, –q  j  p và j  0;

(3) (c) = 0, (c) =  = (c+), (c+) = 1, và với mọi j thỏa

–q  j  p, j  0, ta có:

(hjx) = (x) +

(hjx) = (x) +

Một số tính chất của giá trị ngôn ngữ: Trước hết là việc xây dựng ánh xạ  để gán mỗi phần tử x  X với một đoạn con của đoạn [0,1] sao cho đoạn con (x) của đoạn [0,1] có độ dài bằng độ đo tính mờ của phần tử x.

Cho trước ĐSGT tuyến tính đầy đủ AX = (X, G, H, , , ) và hàm độ đo tính mờ fm: X  [0,1]. Gọi Intv([0,1]) là họ tất cả các đoạn con của đoạn [0,1]. Việc gán ngữ nghĩa mờ được xác định bởi ánh xạ  : X  Intv([0,1]) thỏa các điều kiện sau:

, c+} thì (c), (c+) là các đoạn con của đoạn [0,1]. Ký hiệu |.| là độ dài của các đoạn, khi đó ta có |(c)| = fm(c), |(c+)| = fm(c+) và (c) ≤ (c+).

(1) Với x  {c

12

(2) Giả sử x  X, x có độ dài n, ký hiệu l(x) = n, khi đó ta gán |(x)| = fm(x) và nếu x < y thì (x) ≤ (y). Hơn nữa nếu h−qx < … < h−1x < h1x < h2x <…< hpx thì (x) được chia thành (p + q) đoạn con của đoạn [0,1], độ dài của đoạn con |(hix)| = fm(hix), i [ q^p] và (hix) ≤ (hjx), nếu thỏa điều kiện hix < hjx với i,j  [ q^p].

Họ {(x) : x  X } được gọi là một tựa phân hoạch (semi-partition) của đoạn [0,1] tức là nếu với x,y  X, x ≠ y thì đoạn con (x) và (y) có chung với nhau nhiều nhất một điểm và (x) = [0,1]. Để thuận tiện, chúng ta ký hiệu

tập các phần tử có độ dài k là Xk = {x  X : l(x) = k}, l(x) là độ dài của x.

Bổ đề 1.1. Cho fm là hàm độ đo tính mờ trên AX và  được gán ngữ nghĩa

mờ theo fm. Khi đó:

(1) {(c), (c+)} là một tựa phân hoạch của đoạn [0,1] và với mọi x 

X, họ {(hix) : i  [q^p]} là một tựa phân hoạch của (x).

(2) Họ {(x) : x  Xn} là một tựa phân hoạch của đoạn [0,1] và nếu x <

y và l(x) = l(y) = n thì (x) < (y).

(3) Với y =x,  là chuỗi gia tử bất kỳ thì (y) (x).

(4) Với x, y  X, x < y, H(x) H(y) = Ø thì (x) ≤ (y).

Trong [12] các tác giả chỉ ra rằng với mỗi giá trị thực r  [0,1] đều tồn tại giá trị ngôn ngữ x  X có giá trị định lượng xấp xỉ với r. Trong mệnh đề dưới đây chúng tôi sẽ xác định độ dài đủ lớn của giá trị ngôn ngữ x khi xấp xỉ với số r theo độ chính xác ε > 0 cho trước.

một số ε > 0 bé tùy ý. Đặt Mệnh đề 1.4. Cho ĐSGT tuyến tính đầy đủ AX = (X, G, H, Σ, Φ, ) và trong đó λ = max{µ(hj): j 

[−q^p]}, và γ = max{fm(c−), fm(c+)}. Khi đó với mọi giá trị thực r  [0,1] đều tồn tại giá trị ngôn ngữ x  Xk thỏa |(x) − r| ≤ ε.

1.2.4. Khái niệm ngưỡng hiệu chỉnh định lượng ngữ nghĩa

Giả thiết ĐSGT AX* = (X*, G, H, ρ , , ) là tuyến tính, đầy đủ và tự do, trong đó X* là tập cơ sở, G = (0, c-, W, c+, 1) với c-, c+ là 2 phần tử sinh, 0, W, 1 tập các phần tử không sinh nghĩa, (phần tử W còn gọi là phần tử trung hòa), H là tập các gia tử âm và dương,  là quan hệ thứ tự toàn phần trên X*, ρ và  là hai phép toán mở rộng sao cho với mọi x  X*, x, ρx tương ứng là cận dưới

13

đúng và cận trên đúng trong X* của tập H(x), là tập tất cả các phần tử sinh ra từ x nhờ các gia tử trong H. Giả sử H = HH+ và H = {h-1, ..., h-q}, với h-1

Theo tài liệu [6] đưa ra định nghĩa ngưỡng hiệu chỉnh ĐLNN và phương pháp xác định ngưỡng hiệu chỉnh ĐLNN của các giá trị ngôn ngữ để sao cho thứ tự ngữ nghĩa vẫn bảo đảm vốn có của các giá trị ngôn ngữ trong ĐSGT.

Định nghĩa 1.7. Số thực , 0   1 được gọi là ngưỡng hiệu chỉnh ĐLNN của các giá trị ngôn ngữ trong X k nếu với mọi x, y X k thỏa x  y kéo theo v(x) + 1  v(y)  2 đúng với  0<1, 2 <

Định lý 1.5. Cho AX* là ĐSGT tuyến tính, đầy đủ và tự do, ngưỡng hiệu

chỉnh ĐLNN cho các giá trị ngôn ngữ trong X k là:

k = min {fm(x)/2, fm(x)/2 | x  X k },

với k là số nguyên dương tùy ý.

1.3. Phương pháp lập luận xấp xỉ mờ đa điều kiện

Từ những năm 70 các phương pháp lập luận đã được phát triển mạnh mẽ và được ứng dụng nhiều trong các hệ chuyên gia mờ. Một số phương pháp lập luận mờ đa điều kiện (Fuzzy Multiple Conditional Reasoning - FMCR ) nhằm giải quyết bài toán lập luận mờ đa điều kiện đã được phát biểu.

Theo cách tiếp cận của lý thuyết tập mờ, các phương pháp lập luận mờ đa

điều kiện nói chung được mô tả dựa trên hai dạng mô hình sau.

Mô hình hội: Xem mô hình mờ (1.2) như là hội của các mệnh đề if -then

- Ngữ nghĩa của các giá trị ngôn ngữ của các biến ngôn ngữ trong mô hình

mờ được biểu thị bằng các tập mờ tương ứng của chúng.

- Từ các luật mờ dạng câu if-then, xây dựng quan hệ mờ R như sau:

+ Sử dụng phép hội các điều kiện ở tiền đề, mỗi câu if-then xem như là một phép kéo theo I(s,t), một phép 2-ngôi trong [0,1], lưu ý rằng giá trị s phụ thuộc m biến đầu vào.

+ Vì (1.2) được xem là mô hình hội, R được tính bằng hội của các biểu

thức phép kéo theo đã xây dựng.

14

- Khi đó ứng với vectơ đầu vào A0, giá trị của biến đầu ra được tính theo

công thức B0 = A0R, trong đó  là một phép hợp thành nào đó.

Mô hình tuyển: Xem (1.2) như là tuyển của các mệnh đề if-then

- Phương pháp tiến hành giống như trên cho đến bước xây dựng được các

phép kéo theo Ij(s,t) cho mỗi mệnh đề if-then trong (1.2), j = 1, ..., n.

- Với vectơ đầu vào A0, giá trị của biến đầu ra B0j dựa trên luật thứ j được

tính theo công thức B0j = A0 Ij(s,t), trong đó  là một phép hợp thành nào đó.

- Cuối cùng, giá trị đầu ra của mô hình mờ (1.2) được tính bằng tuyển của

các B0j, j = 1, ..., n.

Một cách tổng quát, các phép tuyển và hội được xây dựng dựa trên các

phép t-norm và s-norm.

Tuy ý tưởng chung về lược đồ phương pháp lập luận mờ là giống nhau, nhưng những phương pháp lập luận sẽ khác nhau ở cánh thức mô phỏng mô hình mờ và cách xác định các phép t-norm và s-norm.

Hiệu quả của phương pháp lập luận mờ nói chung phụ thuộc nhiều yếu tố

rất căn bản chẳng hạn như:

- Lựa chọn tập mờ (bài toán xây dựng các hàm thuộc).

- Bài toán lựa chọn phép kết nhập (bài toán chuyển mô hình đa điều kiện về mô hình đơn điều kiện).

- Xây dựng quan hệ mờ mô phỏng tốt nhất mô hình mờ (bài toán lựa chọn phép kéo theo).

- Khử mờ (bài toán lựa chọn phương pháp khử mờ).

- Luật hợp thành (max-min, min-max, t-norm, s-norm, …).

Đó chính là những khó khăn không nhỏ khi xây dựng phương pháp giải

bài toán lập luận mờ đa điều kiện.

Với mục tiêu tìm kiếm các phương pháp lập luận giải bài toán trên, một số tác giả đã quan tâm nghiên cứu một phương pháp mới, phương pháp nội suy mờ.

Ý tưởng của phương pháp này là xem các tiền đề của mệnh đề if - then trong mô hình mờ như là các “điểm lưới”. Mô hình mờ cho ta thông tin của lời giải tại điểm lưới. Dữ liệu đầu vào A0 sẽ rơi vào một “đoạn thẳng” nào đó xác

15

định bởi các điểm lưới. Trên đoạn này chúng ta giải bằng phương pháp nội suy trên cơ sở thông tin được cho tại 2 điểm lưới đầu mút của “đọan thẳng”.

Có thể thấy phương pháp nội suy mờ có trực quan rõ ràng cho phép người ta cảm nhận hay dự đoán mức độ nào đó về ứng xử của hệ thống được cho bởi mô hình mờ. Tuy nhiên, phương pháp này vẫn chứa đựng các yếu tố phức tạp chẳng hạn như:

- Vấn đề xây dựng hàm thuộc dạng tam giác của các tập mờ.

- Vấn đề khử mờ để chuyển giá trị mờ đầu ra thành giá trị thực.

- Vấn đề tìm lời giải bằng nội suy trên từng tập mức của tập mờ.

Đây cũng là những bài toán khá phức tạp vì luôn có thể chỉ ra lời giải chưa

tối ưu.

Các phương pháp lập luận, đặc biệt là phương pháp lập luận mờ đa điều kiện có rất nhiều ứng dụng trong thực tiễn như trong xây dựng các hệ chuyên gia, các hệ trợ giúp quyết định, các hệ mờ.

1.4. Bài toán tối ưu và giải thuật di truyền

1.4.1. Bài toán tối ưu

Bài toán tối ưu có dạng:

Cho trước một hàm f: A

R từ tập hợp A tới tập số thực. Tìm: một phần tử x0 thuộc A sao cho f(x0) ≤ f(x) với mọi x thuộc A ("cực tiểu hóa") hoặc sao cho f(x0) ≥ f(x) với mọi x thuộc A ("cực đại hóa").

Miền xác định A của hàm f được gọi là không gian tìm kiếm. Thông thường, A là một tập con của không gian Euclid Rn, thường được xác định bởi một tập các ràng buộc, các đẳng thức hay bất đẳng thức mà các thành viên của A phải thỏa mãn. Các phần tử của A được gọi là các lời giải khả thi. Hàm f được gọi là hàm mục tiêu, hoặc hàm chi phí. Lời giải khả thi nào cực tiểu hóa (hoặc cực đại hóa, nếu đó là mục đích) hàm mục tiêu được gọi là lời giải tối ưu.

Thông thường, sẽ có một vài cực tiểu địa phương và cực đại địa phương, trong đó một cực tiểu địa phương x* được định nghĩa là một điểm thỏa mãn điều kiện: với giá trị δ > 0 nào đó và với mọi giá trị x sao cho

;

16

Công thức sau luôn đúng

Nghĩa là, tại vùng xung quanh x*, mọi giá trị của hàm đều lớn hơn hoặc bằng giá trị tại điểm đó. Cực đại địa phương được định nghĩa tương tự. Thông thường, việc tìm cực tiểu địa phương là dễ dàng - cần thêm các thông tin về bài toán (chẳng hạn, hàm mục tiêu là hàm lồi) để đảm bảo rằng lời giản tìm được là cực tiểu toàn cục.

Phát biểu bài toán có thể có thể mô tả lại bài toán như sau:

f (x) = max(min)

- Với điều kiện: gi(x) (, =, ) bi, i=1,…, m

x X  Rn

- Hàm f(x) được gọi là hàm mục tiêu.

- Hàm gi(x) gọi là các hàm ràng buộc.

- Miền ràng buộc

D =  x X  gi (x) (, =, ) bi, i = 1,m 

1.4.2. Giải thuật di truyền

1.4.2.1. Các khái niệm cơ bản của giải thuật di truyền

Giới thiệu chung: Giải thuật GA lần đầu được tác giả Holland giới thiệu vào năm 1962. Nền tảng toán học của giải thuật GA được tác giả công bố trong cuốn sách “Sự thích nghi trong các hệ thống tự nhiên và nhân tạo” xuất bản năm 1975. Giải thuật GA mô phỏng quá trình tồn tại của các cá thể có độ phù hợp tốt nhất thông qua quá trình chọn lọc tự nhiên, sao cho khi giải thuật được thực thi, quần thể các lời giải tiến hoá tiến dần tới lời giải mong muốn. Giải thuật GA duy trì một quần thể các lời giải có thể của bài toán tối ưu hoá. Thông thường, các lời giải này được mã hoá dưới dạng một chuỗi các gen. Giá trị của các gen có trong chuỗi được lấy từ một bảng các ký tự được định nghĩa trước. Mỗi chuỗi gen được liên kết với một giá trị được gọi là độ phù hợp. Độ phù hợp được dùng trong quá trình chọn lọc. Cơ chế chọn lọc đảm bảo các cá thể có độ phù hợp tốt hơn có xác suất được lựa chọn cao hơn. Quá trình chọn lọc sao chép các bản sao của các cá thể có độ phù hợp tốt vào một quần thể tạm thời được gọi là quần thể bố mẹ. Các cá thể trong quần thể bố mẹ được ghép đôi một cách ngẫu nhiên và tiến hành lai ghép tạo ra các cá thể con. Sau khi

17

tiến hành quá trình lai ghép, giải thuật GA mô phỏng một quá trình khác trong tự nhiên là quá trình đột biến, trong đó các gen của các cá thể con tự thay đổi giá trị với một xác suất nhỏ.

Tóm lại, có 6 khía cạnh cần được xem xét, trước khi áp dụng giải thuật

GA để giải một bài toán, cụ thể là:

- Mã hoá lời giải thành cá thể dạng chuỗi.

- Hàm xác định giá trị độ phù hợp.

- Sơ đồ chọn lọc các cá thể bố mẹ.

- Toán tử lai ghép.

- Toán tử đột biến.

- Chiến lược thay thế hay còn gọi là toán tử tái tạo.

Có nhiều lựa chọn khác nhau cho từng vấn đề trên. Phần tiếp theo sẽ đưa ra cách lựa chọn theo Holland khi thiết kế phiên bản giải thuật GA đơn giản lần đầu tiên.

Giải thuật di truyền đơn giản: Holland sử dụng mã hoá nhị phân để biểu diễn các cá thể, lý do là phần lớn các bài toán tối ưu hoá đều có thể được mã hoá thành chuỗi nhị phân khá đơn giản. Hàm mục tiêu, hàm cần tối ưu, được chọn làm cơ sở để tính độ phù hợp của từng chuỗi cá thể. Giá trị độ phù hợp của từng cá thể sau đó được dùng để tính toán xác suất chọn lọc. Sơ đồ chọn lọc trong giải thuật SGA là sơ đồ chọn lọc tỷ lệ. Trong sơ đồ chọn lọc này, cá , ở đây N là số cá thể thể có độ phù hợp có xác suất chọn lựa

có trong quần thể. Toán tử lai ghép trong giải thuật GA là toán tử lai ghép một

điểm cắt. Giả sử chuỗi cá thể có độ dài L (có L bít), toán tử lai ghép được tiến hành qua hai giai đoạn là:

Hinh 1. 2. Mã hoá nhị phân biểu diễn các cá thể

18

Hai cá thể trong quần thể bố mẹ được chọn một cách ngẫu nhiên với phân

bố xác suất đều.

Sinh một số ngẫu nhiên j trong khoảng [1, L - 1]. Hai cá thể con được tạo ra bằng việc sao chép các ký tự từ 1 đến j và tráo đổi các ký tự từ j + 1 đến L. Quá trình này được minh hoạ như trong hình 1.

Điều đáng lưu ý là giải thuật GA không yêu cầu toán tử lai ghép luôn xảy ra đối với hai cá thể bố mẹ được chọn. Sự lai ghép chỉ xảy ra khi số ngẫu nhiên tương ứng với cặp cá thể bố mẹ được sinh ra trong khoảng [0, 1) không lớn hơn một tham số pc (gọi là xác suất lai ghép). Nếu số ngẫu nhiên này lớn hơn pc, toán tử lai ghép không xảy ra. Khi đó hai cá thể con là bản sao trực tiếp của hai cá thể bố mẹ.

Tiếp theo, Holland xây dựng toán tử đột biến cho giải thuật GA. Toán tử này được gọi là toán tử đột biến chuẩn. Toán tử đột biến duyệt từng gen của từng cá thể con được sinh ra sau khi tiến hành toán tử lai ghép và tiến hành biến đổi giá trị từ 0 sang 1 hoặc ngược lại với một xác suất pm được gọi là xác suất đột biến. Cuối cùng là chiến lược thay thế hay còn gọi là toán tử tái tạo. Trong giải thuật, quần thể con được sinh ra từ quần thể hiện tại thông qua 3 toán tử là chọn lọc, lai ghép và đột biến thay thế hoàn toàn quần thể hiện tại và trở thành quần thể hiện tại của thế hệ tiếp theo. Sơ đồ tổng thể của GA được thể hiện qua thủ tục GA dưới đây.

Thủ tục GA () /* Bài toán tối ưu */

{k = 0;

// Khởi động quần thể P0 một cách ngẫu nhiên.

// Tính giá trị hàm mục tiêu cho từng cá thể.

khởi_động (Pk);

tính_hàm_mục_tiêu (Pk);

// Đặt lời giải của giải thuật bằng cá thể có giá trị hàm mục tiêu tốt nhất.

Xbest = tốt_nhất (Pk);

do { // Chuyển đổi giá trị hàm mục tiêu thành giá trị độ phù hợp và

// tiến hành chọn lọc tạo ra quần thể bố mẹ Pparent

Pparent = chọn_lọc (Pk );

19

// Tiến hành lai ghép và đột biến tạo ra quần thể cá thể con Pchild

Pchild = đột_biến (lai_ghép (Pparent));

// Thay thế quần thể hiện tại bằng quần thể cá thể con

k = k + 1;

Pk = Pchild;

tính_hàm_mục_tiêu (Pk);

// Nếu giá trị hàm mục tiêu obj của cá thể tốt nhất X trong quần

// thể Pk lớn hơn giá trị hàm mục tiêu của Xbest thì thay thế lời giải

X = tốt_nhất (Pk);

if ( obj (X) > obj (Xbest) ) Xbest = X;

} while ( k < G); /* Tiến hành G thế hệ */

return (Xbest); /* Trả về lời giải của giải thuật GA*/

}

Giải thuật di truyền phụ thuộc vào bộ 4 (N, pc, pm, G), trong đó N - số cá thể trong quần thể; pc - xác suất lai ghép; pm - xác suất đột biến và G - số thế hệ cần tiến hoá, là các tham số điều khiển của giải thuật GA. Cá thể có giá trị hàm mục tiêu tốt nhất của mọi thế hệ là lời giải cuối cùng của giải thuật GA. Quần thể đầu tiên được khởi tạo một cách ngẫu nhiên.

1.4.2.2. Cơ chế thực hiện của giải thuật di truyền

Trong phần này chúng ta sẽ tìm hiểu về cơ chế thực hiện của giải thuật di truyền thông qua một bài toán tối ưu số. Không làm mất tính tổng quát, ta giả định bài toán tối ưu là bài toán tìm cực đại của hàm nhiều biến f. Bài toán tìm cực tiểu hàm g chính là bài toán tìm cực đại hàm f = -g, hơn nữa ta có thể giả định hàm mục tiêu f có giá trị dương trên miền xác định của nó, nếu không ta có thể cộng thêm một hằng số C dương.

Cụ thể bài toán được đặt ra như sau: Tìm cực đại một hàm k biến f(x1,.., xk): RkR. Giả sử thêm là mỗi biến xi có thể nhận giá trị trong miền Di = [ai,bi]  R và f(x1,.., xk)  0 với mọi xi  Di. Ta muốn tối ưu hàm f với độ chính xác cho trước: giả sử cần n số lẻ đối với giá trị của các biến.

Để đạt được độ chính xác như vậy mỗi miền Di cần được phân cắt thành

(bi - ai)  10n miền con bằng nhau, gọi m là số nguyên nhỏ nhất sao cho

20

Như vậy mỗi biến xi được biểu diễn bằng một chuỗi nhị phân có chiều dài mi. Biểu diễn như trên rõ ràng thoả mãn điều kiện về độ chính xác theo yêu cầu. Công thức sau tính giá trị thập phân của mỗi chuỗi nhị phân biểu diễn biến xi

Trong đó decimal (string2) cho biết giá trị thập phân của chuỗi nhị phân đó.

Bây giờ, mỗi nhiễm sắc thể (là một lời giải) được biểu diễn bằng một chuỗi

nhị phân có chiều dài , m1 bit đầu tiên biểu diễn giá trị trong khoảng

[a1, b1], m2 bit kế tiếp biểu diễn giá trị trong khoảng [a2, b2], …

Để khởi tạo quần thể, chỉ cần đơn giản tạo pop_size nhiễm sắc thể ngẫu

nhiên theo từng bit.

Phần còn lại của giải thuật di truyền rất đơn giản, trong mỗi thế hệ, ta lượng giá từng nhiễm sắc thể (tính giá trị hàm f trên các chuỗi biến nhị phân đã được giải mã), chọn quần thể mới thoả mãn phân bố xác suất dựa trên độ thích nghi và thực hiện các phép đột biến và lai để tạo ra các cá thể thế hệ mới. Sau một số thế hệ, khi không còn cải thiện thêm được gì nữa, nhiễm sắc thể tốt nhất sẽ được xem như lời giải của bài toán tối ưu (thường là toàn cục). Thông thường ta cho dừng giải thuật sau một số bước lặp cố định tuỳ ý tuỳ thuộc vào điều kiện tốc độ và tài nguyên máy tính.

Đối với tiến trình chọn lọc (chọn quần thể mới thoả phân bố xác suất dựa trên các độ thích nghi), ta dùng bánh xe quay Rulet với các rãnh được định kích thước theo độ thích nghi. Ta xây dựng bánh xe Rulet như sau (giả định rằng các độ thích nghi đều dương).

+ Tính độ thích nghi eval(vi) của mỗi nhiễm sắc thể vi (i = 1,…, pop_size)

+ Tìm tổng giá trị thích nghi toàn quần thể:

+ Tính xác suất chọn pi cho mỗi nhiễm sắc thể vi, (i = 1,…, pop_size):

.

+ Tính vị trí xác suất qi của mỗi nhiễm sắc thể vi, (i = 1,…, pop_size):

21

Tiến trình chọn lọc thực hiện bằng cách quan bánh xe Rulet pop_size lần, mỗi lần chọn một nhiễm sắc thể từ quần thể hiện hành vào quần thể mới theo cách sau:

+ Phát sinh ngẫu nhiên một số r trong khoảng [0..1]

+ Nếu r  q1 thì chọn nhiễm sắc thể đầu tiên v1, ngược lại thì chọn nhiễm

sắc thể thứ i, vi (2  i  pop_size) sao cho qi-1  r  qi

Hiển nhiên có thể có một số nhiễm sắc thể được chọn nhiều lần, điều này là phù hợp vì các nhiếm sắc thể tốt nhất cần có nhiều bản sao hơn, các nhiễm sắc thể trung bình không thay đổi, các nhiễm sắc thể kém nhất thì chết đi.

Bây giờ ta có thể áp dụng phép toán di truyền: kết hợp và lại vào các cá thể trong quần thể mới vừa được chọn từ quần thể cũ như trên. Một trong nhữn tham số của giải thuật là xác suất lai pc. Xác suất này cho ta số nhiếm sắc thể pop_sizepc mong đợi, các nhiễm sắc thể này được dùng trong tác vụ lai tạo. Ta tiến hành theo cách sau đây:

Đối với mỗi nhiễm sắc thể trong quần thể mới:

+ Phát sinh ngẫu nhiên một số r trong khoảng [0, 1]

+ Nếu r  pc, hãy chọn nhiễm sắc thể đó để lai tạo

Bây giờ ta ghép đôi các nhiễm sắc thể đã được chọn một cách ngẫu nhiên: đối với mỗi cặp nhiễm sắc thể được ghép đôi, ta phát sinh ngẫu nhiên một số nguyên pos trong khoảng [1, m-1], m là tổng chiều dài - số bit của một nhiễm sắc thể. Số pos cho biết vị trí của điểm lai, cụ thể hai nhiễm sắc thể:

(b1b2…bposbpos+1…bm) và (c1c2.…cposcpos+1…cm)

được thay bằng một cặp con của chúng:

(b1b2…bposcpos+1…cm) và (c1c2.…cposbpos+1…bm)

Phép toán kế tiếp là phép đột biến, được thực hiện trên cơ sở từng bit. Một tham số khác của giải thuật là xác suất đột biến pm, cho ta số bit đột biến pmmpop_size mong đợi. Mỗi bit (trong tất cả các nhiễm sắc thể trong quần thể) có cơ hội bị đột biến như nhau, nghĩa là đổi từ 0 thành 1 hoặc ngược lại. Vì thế ta tiến hành theo cách sau đây:

Đối với mỗi nhiễm sắc thể trong quần thể hiện hành (nghĩa là sau khi lai)

và đỗi với mỗi bit trong nhiễm sắc thể:

22

+ Phát sinh ngẫu nhiên một số r trong khoảng [0, 1]

+ Nếu r < pm hãy đột biến bit đó

Sau quá trình chọn lọc, lai và đột biến, quần thể mới đến lượt lượng giá kế tiếp của nó. Lượng giá này được dùng để xây dựng phân bố xác suất (cho tiến trình chọn lựa kế tiếp), nghĩa là để xây dựng lại bánh xe Rulet với các rãnh được định kích thước theo các giá trị thích nghi hiện hành. Phần còn lại của tiến hoá chỉ là lặp lại chu trình của những bước trên.

1.4.2.3. Các phương pháp biểu diễn nhiễm sắc thể và các toán tử di truyền chuyên biệt

Khi ứng dụng giải thuật di truyền vào thực tế, đôi khi gặp những bài toán đòi hỏi một cách biểu diễn lời giải thích hợp, nếu không giải thuật di truyền khó cho lời giải tốt được, thường là hội tụ sớm về một lời giải tối ưu không toàn cục.

Biểu diễn nhị phân truyền thống có một số bất lợi khi áp dụng GA giải các bài toán số cần độ chính xác cao, trong một không gian có số chiều lớn. Ví dụ tối ưu hàm 100 biến, mỗi biến nhận giá trị trong khoảng [-500, 500], chính xác đến 6 số lẻ thì chiều dài của véc tơ lời giải nhị phân phải là 3000 và phát sinh một không gian tìm kiếm khoảng 101000 phần tử. Tìm kiếm trong một không gian như thế giải thuật di truyền thực hiện rất kém hiệu quả.

Với lý do trên trong phần này chúng ta sẽ thử nghiệm với các gen mã hoá là các số thực cùng với các toán tử di truyền chuyên biệt ứng với cách mã hoá số thực này.

1.4.2.4. Biểu diễn thực

Trong biểu diễn thực, mỗi véc tơ nhiễm sắc thể được mã hoá thành vectơ thực có cùng chiều dài với véc tơ lời giải. Mỗi phần tử được chọn lúc khởi tạo sao cho thuộc miền xác định của nó, và các toán tử được thiết kế để bảo toàn các ràng buộc này (không có vấn đề như vậy trong biểu diễn nhị phân, nhưng thiết kế của các toán tử này khá đơn giản, ta không thấy điều đó là bất lợi, mặt khác nó lại cung cấp các lợi ích khác được trình bày dưới đây).

Sự chính xác của cách tiếp cận như thế chỉ tuỳ thuộc máy tính nhưng nói chung là tốt hơn nhiều so với biểu diễn nhị phân. Đương nhiên ta luôn có thể tăng độ chính xác của biểu diễn nhị phân khi thêm các bit, nhưng điều đó làm giải thuật chậm đi đáng kể như đã thảo luận ở phần trước.

23

Thêm nữa biểu diễn thực có khả năng biểu diễn một miền rất rộng (hoặc các trường hợp miền xác định không biết trước cụ thể). Mặt khác trong biểu diễn nhị phân, độ chính xác sẽ giảm khi tăng kích thước miền, do chiều dài nhị phân cố định cho trước. Hơn nữa với biểu diễn thực việc thiết kế các công cụ đặc biệt để xử lý các ràng buộc không tầm thường sẽ dễ hơn.

1.4.2.5. Các toán tử chuyên biệt hoá

Các toán tử ta sẽ sử dụng rất khác các toán tử cổ điển, vì chúng làm việc trong một không gian khác (có giá trị thực). Hơn nữa một vài toán tử không đồng bộ, nghĩa là hành động của chúng phụ thuộc vào tuổi của quần thể.

Nhóm toán tử đột biến: có nhóm đột biến đồng bộ, nhóm đột biến không

đồng bộ.

+ Đột biến đồng bộ: Đột biến đồng bộ được định nghĩa tương tự với định nghĩa của phiên bản cổ điển: nếu sv = là nhiễm sắc thể, thì mỗi phần tử vk có cơ hội trải qua tiến trình đột biến ngang nhau. Kết quả của một lần ứng dụng toán tử này là véc tơ st v = và v’k là giá trị ngẫu nhiên trong miền tham số tương ứng.

+ Đột biến không đồng bộ: Đột biến không đồng bộ là một trong những toán tử có nhiệm vụ về tìm độ chính xác của hệ thống. Nó được định nghĩa như sau: nếu st v = là nhiễm sắc thể và phần tử vk được chọn đột biến này (miền của vk là [lk ,uk ]), kết quả là một vectơ st+1 v = với k  [1,…, n] và

trong đó, hàm (t, y) trả về giá trị trong khoảng [0, y] sao cho xác suất của (t, y) gần bằng 0 sẽ tăng khi t tăng. Xác suất này buộc toán tử tìm kiếm không gian thoật đầu là đồng bộ (khi t nhỏ) và rất cục bộ ở những giai đoạn sau. Ta sử dụng hàm sau:

, với r là số ngẫu nhiên trong khoảng [0, 1], T là số thế hệ tối đa và b là tham số hệ thống xác định mức độ không đồng bộ. Hình biểu diễn giá trị của  đối với hai lần được chọn, hình này hiển thị rõ ràng cách ứng xử của toán tử.

(t, y)

(t, y)

y

y

t/T = 0.50, b=2

t/T = 0.90, b=2

r

r

1

1

24

Hinh 1. 3. Biểu diễn giá trị của  đối với hai lần được chọn

Hơn nữa ngoài cách áp dụng đột biến chuẩn ta có một số cơ chế mới: đột biến không đồng bộ cũng được áp dụng cho một vectơ lời giải thay vì chỉ một phần tử duy nhất của nó, khiến cho vectơ hơi trượt trong không gian lời giải.

Nhóm toán tử lai tạo: lai đơn giản, lai số học đơn, lai số học cục bộ.

+ Lai đơn giản:

v = và st

Phép lai đơn giản được xác định như sau:

v = và st

w = được lai ghép ở vị trí thứ k, w = ,

Nếu st thì kết quả là: st

+ Lai số học đơn:

Phép lai số học đơn được xác định như sau:

v = và st v = và st+1

w = được lai ghép thì kết quả là st+1 w =, ở đó 1  k  m, v’k = avk + (1 - a)vk và w’k = awk + (1 - a)wk, a là giá trị động được xác định theo véc tơ sv và sw. Chính xác hơn a được chọn trong phạm vi:

Nếu st

Trong đó:

 = (lk-wk)/(vk-wk),  = (uk-vk)/(wk-vk)

 = (lk-vk)/(wk-vk),  = (uk-wk)/(vk-wk)

+ Lai ghép số học toàn cục:

Lai ghép số học toàn cục là tổ hợp tuyến tính của hai véc tơ được xác định

như sau:

25

v = và st w = ast

v và st+1

w = được lai ghép thì kết quả là st+1 v v+(1- a)st

w, với a là một tham số tĩnh  [0, 1]

= ast Nếu st w+(1- a)st

1.5. Kết luận Chương 1

Trong chương này luận văn đã hệ thống được các kiến thức cơ bản sau:

- Tìm hiểu biến ngôn ngữ và mô hình mờ, ĐSGT.

- Phương pháp lập luận xấp xỉ mờ là cơ sở để phát triển phương pháp lập

luận mờ sử dụng ĐSGT.

- Giải thuật di truyền được dùng để tìm kiếm các tham số tối ưu của các

ĐSGT trong phương pháp lập luận mờ sử dụng ĐSGT.

26

CHƯƠNG 2: GIẢI PHÁP TỐI ƯU CÁC THAM SỐ ĐỊNH LƯỢNG NGỮ NGHĨA CHO PHƯƠNG PHÁP LẬP LUẬN MỜ DỰA TRÊN ĐẠI SỐ GIA TỬ

2.1. Phương pháp lập luận mờ sử dụng đại số gia tử

Cho mô hình mờ (1.2). Tư tưởng chính của phương pháp là từ mỗi mệnh đề “IF...THEN...” sẽ xác định một điểm trong không gian tích Decac Dom(X1)...Dom(Xm)Dom(Y), ở đây Dom(Xi), Dom(Y) là các miền ngôn ngữ tương ứng của các biến ngôn ngữ Xi và Y và chúng được xem như các ĐSGT. Vì vậy, các giả thiết của bài toán xác định một siêu mặt Cf trong không gian tích Decac này cho nên giải bài toán mô hình mờ đa điều kiện có nghĩa là chúng ta đi tìm giá trị B ứng với giá trị A = (A01, ..., A0m) bằng cách nội suy trên siêu mặt Cf.

Cụ thể chúng ta phải thực hiện các nội dung sau đây:

1) Xây dựng các ánh xạ ĐLNN Xi và Y , tức là các ánh xạ từ các ĐSGT Xi, Y vào [0,1]. Các ánh xạ này được xác định bởi độ đo mờ của các phần tử sinh nguyên thủy và của các gia tử, chúng đóng vai trò các tham số của phương pháp. Kết quả nội suy sẽ chịu ảnh hưởng từ cách chọn các tham số này.

2) Các ánh xạ ĐLNN trên sẽ chuyển siêu mặt Cf

trong Dom(X1)...Dom(Xm)Dom(Y) thành siêu mặt Cr,m+1 trong không gian thực [0, d1] ...  [0, dm][0, b] với [0, di], [0, b] là miền giá trị của các biến cơ sở của Xi và Y một cách tương ứng.

3) Sử dụng một phép kết nhập Agg ta sẽ chuyển được siêu mặt thực Cr,m+1trong bước 2) thành đường cong thực Cr,2 trong [0, a][0, b] với a = Agg(d1, ..., dm) bằng cách: với mỗi i cố định, i = 1, ..., n.

a) Tính các giá trị aij= Xj(Aij), j = 1, ..., m.

b) Kết nhập ai = Agg(ai1, ..., aim),

c) Tính bi = Y(Bi).

Từ các giá trị ai, bi dễ dàng xác định đường cong Cr,2. Cuối cùng, với các giá trị đầu vào A01, ..., A0m cho trước của các biến X1, ..., Xm, chúng ta sử dụng phương pháp nội suy tuyến tính thông thường để tính giá trị đầu ra b0 tương ứng với giá trị đầu vào a0 = Agg(X1(A01), ..., Xm(A0m)). Khi có giá trị b0 chúng ta sẽ xác định lại giá trị ngôn ngữ.

27

Theo tiếp cận của ĐSGT, Mô hình mờ (1.2) được xem như một tập hợp các “điểm mờ”, với việc sử dụng các ánh xạ ngữ nghĩa định lượng v mỗi điểm của mô hình mờ trên có thể được biểu diễn bằng một điểm của siêu mặt thực và tập các điểm thực cho ta một mô hình gọi là mô hình định lượng ngữ nghĩa. Sử dụng toán tử kết nhập để kết nhập các điều kiện trong mô hình mờ, khi đó ta có thể chuyển siêu mặt thực về đường cong thực trong mặt phẳng, đường cong này còn được gọi là đường cong định lượng ngữ nghĩa.

Do đó, bài toán lập luận ban đầu sẽ chuyển về bài toán nội suy kinh điển,

phương pháp này gọi là HAR, được thực hiện qua thuật toán sau:

Inputs:

Mô hình mờ (FAM) bao gồm các luật trong đó mỗi biến ngôn ngữ tương

ứng với một ĐSGT.

Outputs:

Giá trị đầu ra lập luận tương ứng với giá trị đầu vào.

Actions:

Step 1. Xây dựng các ĐSGT AXi cho các biến ngôn ngữ Xi và AY cho biến

ngôn ngữ Y.

Step 2. Sử dụng các ánh xạ ngữ nghĩa định lượng Xi và Y chuyển đổi mô

hình mờ về mô hình định lượng ngữ nghĩa (gọi là mô hình SAM ).

Step 3. Sử dụng một phép kết nhập đưa mô hình định lượng ngữ nghĩa về

đường cong Cr,2 gọi là đường cong định lượng ngữ nghĩa.

Step 4. Ứng với giá trị đầu vào thực hoặc mờ, xác định giá trị định lượng tương ứng, sử dụng phép kết nhập và xác định đầu ra tương ứng của phép nội suy tuyến tính trên cong Cr,2, việc giải định lượng đầu ra của phép nội suy sẽ cho kết quả lập luận.

Kết quả phương pháp lập luận mờ sử dụng ĐSGT phụ thuộc vào 3 yếu tố

chính. Cụ thể là:

i) Chọn các tham số của các đại số gia tử

Chúng ta biết rằng mô hình mờ (1.2) chứa m+1 biến ngôn ngữ, tương ứng với đó là m+1 ĐSGT trong phương pháp lập luận mờ sử dụng ĐSGT là AXi, i =1, .., m+1, trong đó AY = AXm+1, nên các các tham số của các ĐSGT gồm:

28

+ Độ đo tính mờ của các phần tử sinh:

fmAXi(c), fmAXi(c+) thỏa fmAXi(c) + fmAXi(c+) = 1

+ Độ đo tính mờ của các gia tử:

thỏa , ,  +  = 1

) = fm(ci

Thông thường ta hay sử dụng trực giác để chọn các tham số này, các tham +) = 0,5 và  =  = 0,5 trong quá trình lập luận

số được chọn là fm(ci sử dụng ĐSGT.

ii) Xác định phép kết nhập và phép nội suy

Các phương pháp lập luận mờ sử dụng ĐSGT thường sử dụng các phép kết nhập AND = “PRODUCT” hoặc AND = “MIN” hoặc phép tích hợp có trọng số để đưa mô hình ĐLNN về đường cong ngữ nghĩa định lượng, đầu ra được xác định dựa trên việc định lượng, kết nhập các đầu vào và nội suy tuyến tính trên đường cong này.

iii) Vấn đề định lượng đầu vào thực

Phép nội suy được xây dựng từ các mốc nội suy trong mô hình ĐLNN, nên đầu vào của nó phải là các giá trị định lượng, do đó không gặp khó khăn gì khi định lượng đầu vào mờ vì đã có hàm ĐLNN vAXi, với đầu vào là giá trị thực thì việc định lượng thường được thiết lập theo nguyên tắc sau:

Giả sử biến ngôn ngữ X thuộc khoảng thực [x0, x1] và các nhãn ngôn ngữ của nó nhận giá trị định lượng trong khoảng thực [s0, s1]. Khi đó giá trị thực x [x0, x1] được định lượng theo công thức (2.1).

(2.1)

Vấn đề giải định lượng được tiến hành ngược lại theo công thức (2.2):

(2.2)

Ta gọi (x0, x1) là khoảng xác định của biến X và (s0, s1) là khoảng ĐLNN

tương ứng.

29

2.2. Các giải pháp tối ưu các tham số định lượng ngữ nghĩa

Phương pháp lập luận mờ sử dụng ĐSGT (HAR) để giải bài toán lập luận xấp xỉ mờ đa điều kiện trước đây, các tham số của các ĐSGT được chọn bởi trực giác. Tuy nhiên việc chọn các tham số của ĐSGT bằng trực giác sẽ ảnh hưởng đến các kết quả lập luận, do vậy ta sử dụng lại phương pháp này nhưng với các tham số tối ưu, tức là các tham số ĐLNN sẽ được xác định bằng giải thuật di truyền.

Phân tích ảnh hưởng của các tham số trong việc định lượng:

Trước khi đi vào việc tối ưu các tham số, ta sẽ xét một số ví dụ để thấy rõ

hơn sự ảnh hưởng đến các giá trị định lượng của các tham số ĐLNN.

Ví dụ 2.1. Để minh họa cho quan hệ giữa ngữ nghĩa của các từ và độ đo tính mờ, chúng ta sẽ khảo sát miền ngôn ngữ của biến ngôn ngữ SPEED biểu thị cho vận tốc trong hai trường hợp sau: (i) Vận tốc của mô tô và (ii) Vận tốc của ô tô.

Trường hợp (i): Giả sử chúng ta đang xét ĐSGT tuyến tính của biến vận tốc SPEED, AX = (X, G, H, ), trong đó G = {0, slow, W, fast, 1}, H = {L, P} và H+ = {V, M}, với L, P, M và V thay thế cho Little, Possibly, More và Very, một cách tương ứng. Lấy miền tham chiếu của biến ngôn ngữ X là DS1 = [0, 125] tính theo km. Giả sử rằng vận tốc của mô tô không vượt quá 55 km/h được xem là chậm (với mức độ nào đó). Vì thế, fm(c) = 55/125 = 0.44 và do đó fm(c+) = 0.56. Chúng ta cũng giả sử rằng độ đo tính mờ của các gia tử là: (P) = 0.32, (L) = 0.20, (M) = 0.30 và (V) = 0.18. Do đó ta có  = 0.52 và  = 0.48. Theo Mệnh đề 1.1, chúng ta có thể tính được độ đo tính mờ của các giá trị ngôn ngữ trong miền ngôn ngữ X. Chẳng hạn một số độ đo tính mờ của các giá trị ngôn ngữ được tính dưới đây.

fm(Vfast) = (V)fm(c+) = 0.18  0.56 = 0.1008,

fm(Pfast) = (P)fm(c+) = 0.32  0.56 = 0.1792

fm(Lslow) = (L)fm(c) = 0.20  0.44 = 0.088,

fm(VLslow) = (V)(L)fm(c) = 0.18  0.088 = 0.01584.

Trường hợp (ii): Giả sử ĐSGT được xét trong trường hợp này hoàn toàn giống như trên nhưng miền tham chiếu là khác nhau, tức là DS2 = [0, 200]; Nếu xem vận tốc của xe ô tô không vượt quá 120 km/h là chậm thì fm(slow) =

30

120/200 = 0.6, và fm(fast) = 0.4; Để dễ dàng so sánh, độ đo tính mờ của các gia tử được chọn giống như Trường hợp 1, tức là (P) = 0.32, (L) = 0.20, (M) = 0.30 và (V) = 0.18. Khi đó ta có,

fm(Vfast) = (V)fm(c+) = 0.18  0.4 = 0.072,

fm(Pfast) = (P)fm(c+) = 0.32  0.4 = 0.128,

fm(Lslow) = (L)fm(c) = 0.20  0.6 = 0.12,

fm(VLslow) = (V)(L)fm(c) = 0.18  0.12 = 0.0216.

Trường hợp (ii) với 3 gia tử: Bây giờ chúng ta xét ĐSGT AX chỉ gồm 3 gia tử, trong đó tập các gia tử âm H = {P, L} và tập gia tử dương H+ = {V}. Vì (P) = 0.32 và (L) = 0.20, nên (V) =  = 0.48. Do vậy,

fm(Vfast) = (V)fm(c+) = 0.48  0.4 = 0.192,

fm(Pfast) = (P)fm(c+) = 0.32  0.4 = 0.128,

fm(Lfast) = (L)fm(c+) = 0.20  0.4 = 0.08.

(Lưu ý rằng, fm(Vfast) + fm(Pfast) + fm(Lfast) = fm(c+))

fm(Lslow) = (L)fm(c) = 0.20  0.6 = 0.12,

fm(VLslow) = (V)(L)fm(c) = 0.48  0.12 = 0.0576.

Qua các ví dụ trên ta thấy rằng độ đo tính mờ của các giá trị ngôn ngữ phụ thuộc rất nhiều vào cấu trúc ĐSGT, tức là phụ thuộc vào số lượng các gia tử, độ đo tính mờ các phần tử sinh và độ đo tính mờ của các gia tử. Điều này cũng lý giải tại sao các tham số của hàm ĐLNN cần được xác định phù hợp trong phương pháp nội suy gia tử.

Tiếp theo là ví dụ chứng tỏ sự ảnh hưởng của các tham số tới giá trị ĐLNN. Để thuận tiện cho việc biểu diễn ngữ nghĩa của các giá trị ngôn ngữ, chúng ta giả sử rằng miền tham chiếu thông thường của các biến ngôn ngữ là đoạn [a, b] còn miền tham chiếu ngữ nghĩa là đoạn [0,1]. Việc chuyển đổi tuyến tính từ [a, b] sang [0,1] được gọi là ngữ nghĩa hóa (semantization) còn việc chuyển ngược lại từ đoạn [0,1] sang [a, b] được gọi là giải nghĩa (desemantization).

Ví dụ 2.2. Chúng ta xét lại các ĐSGT trên của Ví dụ 2.1 và sử dụng hàm ĐLNN như trong Định nghĩa 1.4. Với mỗi phần tử x  X, ta ký hiệu r(x) là giá trị trong miền tham chiếu [a, b] tương ứng với x.

31

Trường hợp (i):

Ta có h–2 = L, h–1 = P, h1 = M, h2 = V.

(c) = fm(c) = 0.48  0.44 = 0.2112, (c+) =  + fm(c+) = 0.7312;

(Vc+) = (c+) + Sign(Vc+)

{fm(Mc+) + fm(Vc+) – 0.5[1 + Sign(Vc+)Sign(VVc+)( – )]fm(Vc+)} =

= 0.7312 + {0.1680 + 0,1008 – 0.5[2]  0.1008} = 0.951616;

r(Vfast) = (Vfast)  125 = 0.951616  125 = 118.952 (km).

Trường hợp (ii):

h–2 = L, h–1 = P, h1 = M, h2 = V.

(c) = fm(c) = 0.48  0.6 = 0.288, (c+) =  + fm(c+) = 0.808;

(Vc+) = (c+) + Sign(Vc+)

{fm(Mc+) + fm(Vc+) – 0.5[1 + Sign(Vc+)Sign(VVc+)( – )]fm(Vc+)} =

= 0.808 + {0.120 + 0,072 – 0.5[2]  0.072} = 0.96544;

r(Vfast) = (Vfast)  200 = 0.96544  200 = 193.088 (km).

Trường hợp (ii) với 3 gia tử: h–2 = L, h–1 = P, h1 = V.

(c) = fm(c) = 0.48  0.6 = 0.288, (c+) =  + fm(c+) = 0.808;

(Vfast) = (c+) + Sign(Vc+)

{fm(Vc+) – 0.5[1 + Sign(Vc+)Sign(VVc+)( – )]fm(Vc+)} =

= 0.808 + {0.192 – 0.5[2]  0.192} = 0.90784;

r(Vfast) = (Vfast)  200 = 0.90784  200 = 181.568 (km).

Tổng kết các trường hợp trên ta thu được bảng giá trị sau:

Bảng 2. 1. So sánh các giá trị ĐLNN

r(Vfast) (c) (c+) (Vfast)

Trường hợp (i): fm(c+) = 0.56,

(L) = 0.20, (P) = 0.32, 0.2112 0.7312 0.951616 118.952 km

(M) = 0.30, (V) = 0.18

32

Trường hợp (ii): fm(c+) = 0.4,

(P) = 0.32, (L) = 0.20, 0.2880 0.8080 0.965440 193.088 km

(M) = 0.30, (V) = 0.18

Trường hợp (ii) với 3 gia tử:

fm(c+) = 0.4, (P) = 0.32, 0.2880 0.8080 0.907840 181.568 km

(L) = 0.20, (V) = 0.48

Tóm lại, độ đo tính mờ của các gia tử và các phần tử sinh, số lượng gia tử trong ĐSGT sẽ quyết định giá trị ngữ nghĩa còn miền tham chiếu của các biến sẽ quyết định các giá trị trong miền thực.

Từ phân tích sự ảnh hưởng của các tham số ĐLNN của các ĐSGT ta đưa

ra giải pháp xác định các tham số ĐLNN tối ưu như sau:

i) Giải pháp 1: Tối ưu các tham số của các ĐSGT sử dụng giải thuật di

truyền (GA);

ii) Giải pháp 2: Lựa chọn các tham số của các ĐSGT bằng trực giác sau đó hiệu chỉnh lại các tham số ĐLNN (tức là xác định mô hình ĐLNN tối ưu) sử dụng giải thuật di truyền (GA).

2.3. Giải pháp xác định các tham số định lượng ngữ nghĩa tối ưu

2.3.1. Giải pháp tối ưu các tham số của đại số gia tử

Giả sử rằng tồn tại một tiêu chuẩn được xác định bởi hàm g(X1(A0,1), …, Xm(A0,m), Y(B0)) để đánh giá việc thực hiện phương pháp. Chẳng hạn, g(X1(A0,1), …, Xm(A0,m), Y(B0)) được xác định bởi độ đo gần nhau từ điểm (Agg(X1(A0,1), …, Xm(A0,m)), Y(B0)) tới đường cong thực Cr,2, đường cong này được xác định từ các dữ liệu thực nghiệm của ứng dụng được xét. Khi đó, bài toán tối ưu có thể được phát biểu như sau:

Bài toán tối ưu:

g(X1(A0,1), …, Xm(A0,m), Y(B0))  min

Thỏa các điều kiện sau:

j = 1, 2, …, m, và 0 <  < 1 0 < j < 1,

(2.3) , ji > 0, i = 1, 2, …, kj, j = 1, 2, …, m,

33

, i > 0, i = 1, 2, …, k,

, wj > 0, j = 1, 2, …, m.

Lưu ý rằng các tham số độ đo tính mờ của các phần tử sinh và các gia tử

sẽ giúp cho phương pháp lập luận thích nghi với nhiều ứng dụng.

Phương pháp tối ưu các tham số: Sử dụng GA để giải bài toán lập luận mờ đa điều kiện, gọi là thuật toán tối ưu tham số cho ĐSGT, viết tắt là OPHA(PAR1, f1), với f1 là hàm thích nghi, PAR1 các tham số của ĐSGT.

Phương pháp lập luận mờ sử dụng ĐSGT có nhiều tham số phụ thuộc vào số lượng các ĐSGT mà ta sử dụng hay số lượng biến ngôn ngữ và số lượng các gia tử của các đại số, giả sử rằng chúng ta có m ĐSGT AXj, j = 1,…, m, của m biến ngôn ngữ đầu vào Xj, j = 1,…, m, và một ĐSGT AY của biến ngôn ngữ đầu ra Y.

Tập tất cả các tham số của HA được biểu diễn bởi vectơ thực sau:

PAR1 = (11, 12, …, , 1; …; m1, m2, …, , m; 1, 2, …, k, ;

(2.4) w1, w2,…,wm)

các thành phần của vectơ phải thỏa mãn điều kiện ràng buộc (2.3). Vectơ

(2.4) được xem như một cá thể có (m + 2) nhiễm sắc thể:

– Nhiễm sắc thể (j1, j2,…, , j) gồm (kj + 1) gien tương ứng cho

ĐSGT AXj, j = 1,…, m;

– Nhiễm sắc thể (1, 2, …, k, ) gồm (k + 1) gien của ĐSGT AY,

– Nhiễm sắc thể (w1, w2, …, wm) gồm m gien biểu diễn cho các trọng số của toán tử kết nhập.

2.3.2. Giải pháp xác định mô hình định lượng ngữ nghĩa tối ưu

Xác định các giá trị ĐLNN bằng trực giác, sau đó dựa vào Định nghĩa 1.7 và Định lý 1.5 ta xác định các tham số hiệu chỉnh của mô hình ĐLNN. Để xác định mô hình ĐLNN tối ưu bằng cách hiệu chỉnh mô hình ĐLNN (SAM) gốc tức là hiệu chỉnh các tham số ĐLNN trong mô hình SAM.

2.3.2.1. Phân tích ảnh hưởng các tham số hiệu chỉnh

Để thấy rõ sự ảnh hưởng việc hiệu chỉnh giá trị định lượng nghĩa ta xét ví

dụ 2.3 cho hai trường hợp k=1 và k =2.

34

Ví dụ 2.3. Xét ĐSGT của biến ngôn ngữ tốc độ vòng quay của một mô tơ với:

c– = Slow, W = Medium và c+ = Fast; q = 1 và h-1 = Little; p = 1và h1 = Very;

Giả sử ta chọn các tham số của ĐSGT như sau:

fm(Slow) = 0.5 và fm(Fast) = 0.5;

(Little) = (Very) = 0.5

theo Mệnh đề 1.1 ta có  =  = 0.5 và theo Định nghĩa 1.7 ta xác định

được: v(Slow) =0.25; v(Medium) = 0.5; v(Fast) = 0.75;

Theo Định lý 1.5 ta có:

Với k = 1, 1 = min {fm(x)/2, fm(x)/2 | x X1} =

= min {fm(Slow)/2, fm(Slow)/2, fm(Fast)/2,

fm(Fast)/2} = min {0.125; 0.125; 0.125; 0.125} = 0.125

Với k = 2, 1= min {fm(x)/2, fm(x)/2 | x X2} =

= min {fm(LitleSlow)/2, fm(LitleSlow)/2, fm(VerySlow)/2, fm(VerySlow)/2, fm(LitleFast)/2, fm(LitleFast)/2, fm(VeryFast)/2, fm(VeryFast)/2} = 0.0625

2.3.2.2. Thuật toán xác định mô hình định lượng ngữ nghĩa tối ưu

Giả sử có mô hình ngữ nghĩa định lượng có m biến ngôn ngữ đầu vào Xj, j = 1,…, m và biến ngôn ngữ đầu ra Y, khi đó mỗi biến ngôn ngữ Xj (cố định j = 1, …,m) ta có n tham số hiệu chỉnh ĐLNN và n tham số hiệu chỉnh ĐLNN của biến ngôn ngữ Y và tổng quát như sau:

- Tham số hiệu chỉnh ĐLNN của biến ngôn ngữ Xj là: ((11,21,…,n1), (12,22,..,n2),…,(1m,2m,….,nm)

- Tham số hiệu chỉnh ĐLNN của biến ngôn ngữ Y là:

(1, 2, ….,n)

Bộ tham số hiệu chỉnh ĐLNN của các giá trị ngôn ngữ là:

(2.5) PAR2=((11,21,…,n1),(12,22,..,n2),…,(1m,2m,..,nm);(1,2,..,n))

với điều kiện ràng buộc:

(2.6) |ij|<Xj ;i =1,…, n; j = 1,…, m

|i | <Y ;i =1,…, n

35

Sử dụng giải thuật di truyền xác định tham số hiệu chỉnh ĐLNN của các giá trị ngôn ngữ: Giả sử tồn tại một mô hình sai số của phương pháp lập luận cho bởi hàm h(g,OPHA(PAR2))  0, trong đó g là mô hình thực mong muốn và OPHA(PAR2) là mô hình được xấp xỉ bằng OPHA. Khi đó bài toán xác định các tham số hiệu chỉnh ĐLNN được phát biểu như sau:

Tìm các tham số PAR2 sao cho h(g, OPHA(PAR2)) min

Đây là một bài toán tối ưu gồm nhiều biến có ràng buộc, do vậy sử dụng khả năng cực tiểu hóa hàm nhiều biến của giải thuật di truyền (GA) để xác định các giá trị hiệu chỉnh ĐLNN của các giá trị ngôn ngữ.

- Tập tất cả các tham số hiệu chỉnh ĐLNN được biểu diễn bởi vector thực sau:

((11,21,…,n1), (12,22,..,n2),…,(1m,2m,….,nm); (1,2,..,n))

Các thành phần của vector phải thỏa mãn điều kiện ràng buộc (2.6) và

vector (2.5) được xem như một cá thể có nhiễm sắc thể sau:

- Nhiễm sắc thể (1j,2j,..,nj) gồm n genes tương ứng cho ĐSGT AXj, j =1,…, m;

- Nhiễm sắc thể (1, 2,.., n ) gồm n genes tương ứng cho ĐSGT AY

Trên cơ sở bộ tham số hiệu chỉnh ĐLNN và hàm thích nghi được xác định, sử dụng giải thuật di truyền cổ điển với mã hóa nhị phân được đề cập trong chương 1, ta xác định được bộ tham số hiệu chỉnh ĐLNN theo thuật toán OPHA.

Thuật toán OPHA(PAR2, f) - Optimization Parameters of Hedge

Algebras

Gọi P là quần thể cần duy trì; Q là quần thể được tạo ra sau khi lai ghép

và R là quần thể được tạo ra sau khi đột biến.

Inputs:

- Mô hình mờ IF … THEN bao gồm các luật trong đó mỗi biến ngôn ngữ

tương ứng với một ĐSGT;

- f hàm thích nghi được xác định theo tiêu chuẩn g kết hợp với mô hình IF

… THEN;

Outputs: Bộ tham số tối ưu.

36

Actions:

Đặt t := 0;

Khởi tạo P(t); /* P(t): Quần thể ở thế hệ thứ t */

Tính độ thích nghi của các cá thể thuộc P(t);

While (t  T) do

t := t + 1;

Lai ghép Q(t) từ P(t - 1); /* Q(t) được tạo ra từ P(t - 1)*/

Đột biến R(t) từ P(t - 1); /* R(t) được tạo ra từ P(t - 1) */

Chọn lọc P(t) từ P(t - 1)  Q(t)  R(t) theo hàm thích nghi f;

EndWhile.

Return Cá thể có giá trị thích nghi nhất trong P(t);

End of OPHA.

2.4. Phương pháp lập luận mờ sử dụng đại số gia tử dựa trên các mô hình định lượng ngữ nghĩa tối ưu.

2.4.1. Vấn đề xác định giá trị định lượng ngữ nghĩa tối ưu

Với mục tiêu xây dựng phương pháp lập luận mờ sử dụng ĐSGT nhằm nâng cao hiệu quả của phương pháp lập luận xấp xỉ mờ dựa trên ĐSGT. Do đó việc xác định được các giá trị ĐLNN tốt sẽ làm cho phương pháp lập luận hợp lý hơn hoặc tốt hơn là tối ưu.

Với lý do trên, đề tài nghiên cứu một hướng khác đơn giản hơn so với các phương pháp lập luận trước là chấp nhận việc chọn các giá trị biến ngôn ngữ theo trực giác trên cơ sở ĐSGT của các biến ngôn ngữ và các giá trị ĐLNN là tương đối hợp lý nhưng chưa phải tối ưu. Do vậy, ta chỉ cần hiệu chỉnh các giá trị ĐLNN bằng trực giác trong một khoảng nào đấy để phương pháp lập luận là tối ưu.

Để hiệu chỉnh các giá trị ĐLNN ta cần ta cần phải xác định ngưỡng hiệu chỉnh tham số ĐLNN và phương pháp xác định tham số hiệu chỉnh ĐLNN tốt nhất.

37

2.4.2. Sử dụng tham số hiệu chỉnh tối ưu cho phương pháp lập luận mờ sử dụng đại số gia tử

Phương pháp lập luận mờ sử dụng ĐSGT theo tiếp cận hiệu chỉnh giá trị ĐLNN với ngưỡng khác với các phương pháp lập luận trong tài liệu [1, 11, 12, 13] ở bước xác định các giá trị ĐLNN của các giá trị ngôn ngữ, và ý tưởng của phương pháp lập luận như sau:

- Các tham số ĐSGT được chọn bằng trực giác, từ đó xác định các giá trị ĐLNN của các giá trị ngôn ngữ như phương pháp lập luận mờ sử dụng ĐSGT (HAR).

- Hiệu chỉnh bộ nhớ liên hợp định lượng (mô hình SAM gốc) bằng cách hiệu chỉnh các giá trị ĐLNN của các giá trị ngôn ngữ trong mô hình SAM gốc. Như vậy ta cố định các giá trị ĐLNN của các giá trị ngôn ngữ, tuy nhiên để các giá trị ĐLNN tốt hơn ta hiệu chỉnh giá trị ĐLNN bằng cách đưa vào các tham số hiệu chỉnh, các tham số này phải nhỏ hơn giá trị ngưỡng hiệu chỉnh tồn tại như trong Định lý 1.5 đã đề cập.

- Xây dựng phương pháp lập luận dựa trên cơ sở hiệu chỉnh các giá trị ĐLNN trong mô hình SAM gốc, phương pháp này gọi là phương pháp lập luận mờ sử dụng ĐSGT theo tiếp cận hiệu chỉnh giá trị ĐLNN với ngưỡng.

Theo đó phương pháp gồm các bước như sau:

Input: Mô hình mờ bao gồm các luật trong đó mỗi biến ngôn ngữ tương

ứng với một ĐSGT.

Output: Giá trị đầu ra tương ứng với giá trị đầu vào.

Action:

Bước 1. Xây dựng các ĐSGT AXj cho các biến ngôn ngữ Xj, và ĐSGT AY

cho biến ngôn ngữ Y.

Giả thiết ĐSGT AXj, và Aij (i = 1,…, n; j = 1,…, m) là các giá trị ngôn ngữ của biến ngôn ngữ Xj, tập giá trị ĐLNN của Xj là (Xj(A1j), Xj(A2j),…,Xj(Aij); ĐSGT AY, và Bi (i = 1,…,n) là các giá trị ngôn ngữ của biến ngôn ngữ Y, tập giá trị ĐLNN của Y là (Y(B1), Y(B2),…,Y(Bi)).

Bước 2. Sử dụng các ánh xạ ĐLNN xác định mô hình SAM gốc. Xây dựng mô hình hiệu chỉnh bộ nhớ liên hợp định lượng, tức là ta đưa các tham số hiệu chỉnh ĐLNN ((Xj(Aij) + ij), (Y(Bi)+ i)) vào mô hình SAM gốc, trong đó ij là

38

tham số hiệu chỉnh ĐLNN của Xj, i là tham số hiệu chỉnh ĐLNN của Y, thoả mãn điều kiện |ij| < Xj, |i | < Y với Xj, Y là ngưỡng hiệu chỉnh ĐLNN của các biến ngôn ngữ Xj và Y.

Bước 3. Xây dựng một phép nội suy tuyến tính trên cơ sở các mốc nội suy là các điểm của mô hình SAM có các tham số hiệu chỉnh ĐLNN, gọi là mô hình SAM(PAR2).

Bước 4. Ứng với giá trị đầu vào thực hoặc mờ, xác định đầu ra tương ứng

nhờ phép nội suy được xây dựng ở bước 3.

Để tiện theo dõi phương pháp lập luận mờ sử dụng ĐSGT theo tiếp cận hiệu chỉnh giá trị ĐLNN với ngưỡng, ký hiệu là GA_HAR. Cụ thể phương pháp thực hiện như sau:

- Sử dụng giải thuật di truyền để xác định bộ tham số hiệu chỉnh ĐLNN

(PAR2) của các giá trị ngôn ngữ trong ĐSGT.

Giả sử mô hình SAM gốc có m biến ngôn ngữ đầu vào Xj, j = 1,…, m, và biến ngôn ngữ đầu ra Y, khi đó mỗi biến ngôn ngữ Xj (cố định j = 1, …,m) ta có n tham số hiệu chỉnh ĐLNN, và n tham số hiệu chỉnh ĐLNN của biến ngôn ngữ Y, và tổng quát như sau:

- Tham số hiệu chỉnh ĐLNN của biến ngôn ngữ Xj là: ((11,21,…,n1), (12,22,..,n2),…,(1m,2m,….,nm)

- Tham số hiệu chỉnh ĐLNN của biến ngôn ngữ Y là:

(1, 2 , ….,n )

Bộ tham số hiệu chỉnh ĐLNN của các giá trị ngôn ngữ là:

PAR2=((11,21,…,n1),(12,22,..,n2),…,(1m,2m,..,nm);(1,2,..,n)) (2.7)

với điều kiện ràng buộc:

(2.8) |ij| < Xj ; i =1,…, n; j = 1,…, m

|i | < Y ; i =1,…, n

Giải pháp sử dụng giải thuật di truyền cho phương pháp GA_HAR:

Giả sử tồn tại một mô hình sai số của phương pháp lập luận cho bởi hàm h(g,OPHA(PAR2,f)) ≥ 0, trong đó g là mô hình thực mong muốn và OPHA(PAR2, f) là mô hình xác định bộ tham số (PAR2) của các ĐSGT. Khi đó

39

bài toán xác định bộ tham số của các ĐSGT được phát biểu như sau: Tìm các tham số PAR sao cho h(g,OPHA(PAR2,f))  min.

Đây là một bài toán tối ưu gồm nhiều biến có ràng buộc, do vậy sử dụng khả năng cực tiểu hóa hàm nhiều biến của giải thuật di truyền để xác định các giá trị hiệu chỉnh ĐLNN của các giá trị ngôn ngữ.

- Tập tất cả các tham số hiệu chỉnh ĐLNN được biểu diễn bởi vector thực sau:

((11,21,…,n1), (12,22,..,n2),…,(1m,2m,….,nm); (1,2,..,n))

Các thành phần của vector phải thỏa mãn điều kiện ràng buộc (2.8) và

vector (2.7) được xem như một cá thể có nhiễm sắc thể sau:

- Nhiễm sắc thể (1j,2j,..,nj) gồm n gien tương ứng cho ĐSGT AXj, j =1,…, m;

- Nhiễm sắc thể (1, 2,.., n ) gồm n gien tương ứng cho ĐSGT AY

Trên cơ sở bộ tham số hiệu chỉnh ĐLNN và hàm thích nghi được xác định, sử dụng giải thuật di truyền cổ điển với mã hóa nhị phân được đề cập trong chương 1 ta xác định được bộ tham số hiệu chỉnh ĐLNN.

Đây là một bài toán tối ưu gồm nhiều biến có ràng buộc, do vậy sử dụng khả năng cực tiểu hóa hàm nhiều biến của giải thuật di truyền để xác định các tham số của các ĐSGT.

2.5. Tổng kết Chương 2

Nội dung chương đã trình bày tổng quát phương pháp lập luận mờ dựa trên ĐSGT truyền thống (HAR). Trên cơ sở phân tích các yếu tố ảnh hưởng đến kết quả lập luận của phương pháp lập luận HAR, luận văn đưa ra giải pháp để nâng cao hiệu quả của phương pháp lập luận HAR, cụ thể: Tìm hiểu khả năng tính toán tối ưu các tham số của ĐSGT và các tham số hiệu chỉnh ĐLNN của các ĐSGT bằng giải thuật di truyền.

Trên cơ sở xác định tham số hiệu chỉnh ĐLNN, mô hình ĐLNN tối ưu xây dựng thuật toán cho phương pháp lập luận mờ dựa trên ĐSGT sử dụng tham số hiệu chỉnh tối ưu, gọi tắt là GA_HAR.

Kết quả Chương 2 có ý nghĩa rất quan trọng trong việc ứng dụng phương

pháp GA_HAR vào một số bài toán điều khiển mờ ở Chương 3.

40

CHƯƠNG 3: ỨNG DỤNG PHƯƠNG PHÁP LẬP LUẬN XẤP XỈ MỜ SỬ DỤNG ĐẠI SỐ GIA TỬ VỚI MÔ HÌNH ĐỊNH LƯỢNG NGỮ NGHĨA TỐI ƯU TRONG ĐIỀU KHIỂN

Trên cơ sở đó chúng ta có thể đưa ra một phương pháp ĐLNN miền ngôn ngữ. Nhờ các ánh xạ ngữ nghĩa như vậy sẽ dễ dàng xây dựng một phương pháp lập luận xấp xỉ để giải quyết bài toán lập luận mờ đa điều kiện, nhiều biến trong kỹ thuật.

Với phương pháp lập luận đã nêu trong Chương 2, có rất nhiều khả năng để ứng dụng. Tuy nhiên, nội dung luận văn chỉ chọn lĩnh vực điều khiển mờ vì như vậy sẽ dễ dàng cho việc đánh giá các kết quả thực hiện. Điều kiện để ứng dụng là các bài toán điều khiển mờ cần phải có tập luật xác định trước.

3.1. Mô tả một số bài toán điều khiển logic mờ

3.1.1. Bài toán 1: Xấp xỉ mô hình mờ EX1 của Cao-Kandel [9]

Cho mô hình gồm các luật (Bảng 3.1) thể hiện sự phụ thuộc của tốc độ

quay N vào cường độ dòng điện I;

Bảng 3. 1. Mô hình EX1 của Cao-Kandel

If I is ... Then N is ...

Null Large

Zero Large

Small Medium

Medium Small

Large Zero

VeryLarge Zero

Cho cường độ dòng điện I nhận giá trị trong đoạn [0, 10] và tốc độ quay

N của mô tơ nhận các giá trị trong đoạn [400, 2000]

Cần xác định tốc độ vòng quay ứng với các giá trị của cường độ dòng điện Cao-Kandel đã nghiên cứu các toán tử kéo theo và sử dụng chúng trong lập luận mờ để giải quyết bài toán trên, tác giả cũng đã đưa ra kết quả thực nghiệm thể hiện mối quan hệ giữa I và N thể hiện ở Hình 3.1 và gọi đây là đường cong thực nghiệm, sai số giữa mô hình xấp xỉ và mô hình thực nghiệm được xác định theo công thức sau:

41

Tác giả đã xác định được 5 toán tử kéo theo cho kết quả lập luận xấp xỉ

tốt nhất, kết quả thể hiện ở Bảng 3.2

Hình 3. 1. Đường cong thực nghiệm của mô hình EX1

Bảng 3. 2. Các kết quả xấp xỉ EX1 tốt nhất của Cao-Kandel [9]

Phương pháp Sai số lớn nhất của mô hình

EX1 PP của Cao-Kandel với toán tử kéo theo 5* 200

PP của Cao-Kandel với toán tử kéo theo 22* 200

PP của Cao-Kandel với toán tử kéo theo 8 300

PP của Cao-Kandel với toán tử kéo theo 25 300

PP của Cao-Kandel với toán tử kéo theo 31 300

3.1.2. Bài toán 2: Bài toán hệ con lắc ngược [8]

Bài toán điều khiển con lắc ngược là bài toán kinh điển với hệ được xét là một hệ phi tuyến (Hình 3.2). Mục đích của việc điều khiển là đưa con lắc về vị trí cân bằng. Phương trình vi phân mô tả hệ con lắc ngược được cho như sau:

(3.2)

42

d/dt

m

u

Trong đó m là khối lượng của vật ở đầu con lắc; l là chiều dài của con lắc;  là góc lệch so với phương thẳng đứng; u(t), giá trị điều khiển tại thời điểm t; g là hằng số gia tốc trọng trường.

Hình 3. 2. Mô tả hệ con lắc ngược

Giả sử rằng x1 =  và x2 = d/dt là các biến trạng thái. Trong trường hợp

góc lệch  nhỏ thì sin() = , với  được đo bằng radian.

Chọn chiều dài con lắc l = g và khối lượng m = 180/(π.g2), bằng cách tuyến tính hóa hệ ban đầu như trong [22], ta thu được hệ gồm hai phương trình tuyến tính rời rạc phi đơn vị.

(3.3) x1(k+1) = x1(k) + x2(k)

(3.4) x2(k+1) = x1(k) + x2(k) – u(k)

trong đó đơn vị đo của x1 là độ, đơn vị đo của x2 là dps (degree per second).

Yêu cầu bài toán: Tìm giá trị điều khiển u dựa trên các luật để điều khiển con lắc luôn giữ ở phương thẳng đứng, vị trí này còn gọi là vị trí ổn định tức là

x1 = 0 và x2 = 0.

Sai số cho hệ con lắc ngược: (3.5)

Hệ luật điều khiển con lắc ngược.

Trong [8], các nhãn ngôn ngữ của các biến X1, X2 và u như sau:

P(Positive), N (Negative),

Z (Zero), PB (Positive Big), NB (Negative Big).

Các luật điều khiển thiết kế cho quá trình điều khiển mờ được cho ở

Bảng 3.3 (mô hình FAM).

43

Bảng 3. 3. Mô hình FAM cho hệ con lắc ngược

X2 P Z N X1

P PB P Z

Z P Z N

N Z N NB

3.2. Ứng dụng phương pháp lập luận xấp xỉ mờ sử dụng đại số gia tử trong điều khiển

3.2.1. Phương pháp điều khiển logic mờ truyền thống

Mục này, tóm tắt các bước xây dựng phương pháp điều khiển mờ truyền

thống, ký hiệu là CFC (Conventional Fuzzy Control).

Về nguyên lý, hệ thống điều khiển CFC cũng không có gì khác với các hệ thống điều khiển khác. Sự khác biệt ở đây là bộ điều khiển CFC làm việc có tư duy như bộ não dưới dạng trí tuệ nhân tạo hay gọi là mô hình FAM.

Hệ thống điều khiển CFC làm việc dựa trên kinh nghiệm và phương pháp rút ra kết luận theo tư duy của con người, sau đó được cài đặt vào máy tính trên cơ sở của logic mờ.

Hệ thống điều khiển mờ được thiết kế như Hình 3.3 gồm các khâu sau:

- Giao diện đầu vào bao gồm khâu fuzzy hóa và các khâu phụ trợ thêm để

thực hiện các bài toán động như tích phân, vi phân…

- Thiết bị hợp thành là sự triển khai luật hợp thành được xây dựng trên cơ

sở luật điều khiển .

- Giao diện đầu ra gồm các khâu giải mờ và các khâu giao diện trực tiếp

với đối tượng.

44

Hình 3. 3. Sơ đồ phương pháp điều khiển CFC

Thông thường phương pháp điều khiển CFC sẽ bao gồm các bước chính

sau đây:

Bước 1: Xác định biến trạng thái (biến vào) và biến điều khiển (biến ra)

của đối tượng điều khiển và xác định tập nền của các biến.

Bước 2: Phân hoạch tập nền thành các phần tương ứng với các nhãn ngôn

ngữ.

Bước 3: Xây dựng các tập mờ cho các nhãn ngôn ngữ, tức là xác định

dạng hàm thuộc cho mỗi tập mờ.

Bước 4: Xây dựng quan hệ mờ giữa các tập mờ đầu vào, tập mờ trạng thái và tập mờ điều khiển tạo thành hệ luật điều khiển (bảng điều khiển trên cơ sở tri thức chuyên gia), gọi là mô hình FAM.

Bước 5: Giải bài toán lập luận xấp xỉ, xác định tập mờ đầu vào của biến

điều khiển theo từng luật (Phép hợp thành).

Bước 6: Kết nhập (aggregation) các giá trị đầu ra.

Bước 7: Giải mờ, tìm giá trị điều khiển rõ.

3.2.2. Phương pháp lập luận xấp xỉ mờ sử dụng đại số gia tử trong điều khiển

Mô hình mờ (1.2) trong điều khiển gọi là bộ nhớ kết hợp mờ FAM. Vì có

m biến đầu vào nên ta gọi FAM là mô hình m chiều.

Trong phương pháp này, xem miền giá trị ngôn ngữ của mỗi biến Xj

(j=1,…, m) là một ĐSGT.

Xác định các ĐSGT AXj= (Xj, Gj, Hj, j) cho các biến vật lý Xj (j=1,…, m) và đại số AY=(Y, G, H, ) cho biến Y. Với mỗi đại số ta cần xác định tập phần tử sinh, tập các gia tử và độ đo tính mờ của các gia tử.

45

Định lượng các giá trị ngôn ngữ trong FAM sang các giá trị thực trong đoạn [0,1] nhờ vào hàm ĐLNN : Xj(Aij), Y(Bi) (i = 1, ..., n, j = 1,..., m). Như vậy, với mỗi luật if–then sẽ tương ứng với một điểm trong không gian thực (m+1) chiều. Khi đó mô hình mờ sẽ tương ứng với đường cong thực Cr,m+1 trong không gian (m+1) chiều.

Chuyển mỗi điểm (X1(Ai1), X2(Ai2),…,Xm(Aim),Y(Bi)) trong không gian thực (m+1) chiều thành điểm Agg(Xj(Ai1), Xj(Ai2),…,Xj(Aim),Y(Bi)) trong không gian thực hai chiều với Agg là toán tử kết nhập. Đường cong Cr,m+1 trở thành đường cong thực C2 trong mặt phẳng. Từ bộ giá trị đầu vào (Ai1, Ai2,…, Aim) ta tính được giá trị thực.

a0 = Agg(X1(Ai1), X2(Ai2),…,Xm(Aim),Y(Bi))

Từ đây, giá trị thực đầu ra u0 = Noisuy(a0, C2) – là giá trị nội suy thu được từ đầu vào a0 trên đường cong thực C2. Như vậy, giá trị điều khiển được tính theo giá trị ngữ nghĩa u0 và không gian tham chiếu của biến điều khiển.

Dựa trên phương pháp lập luận mờ sử dụng ĐSGT [11] mô hình điều khiển mờ sử dụng ĐSGT, gọi tắt là FCHA (Fuzzy Control using Hedge Algebras) được mô tả như Hình 3.4.

Hình 3. 4. Sơ đồ phương pháp điều khiển FCHA

Thuật toán điều khiển gồm các bước chính sau:

Bước 1: Ngữ nghĩa hóa (Semantization).

- Như chúng ta đã biết, cơ sở tri thức của mỗi ứng dụng được cho ở dạng mô hình FAM chứa các giá trị ngôn ngữ trong miền ngôn ngữ Xj. Mỗi miền ngôn ngữ Xj sẽ tương ứng với một ĐSGT và một miền tham chiếu số thực [sj1, sj2], j = 1, …, m. Vì giá trị ngữ nghĩa được định lượng bởi hàm ĐLNN j của

46

các giá trị ngôn ngữ của biến Xj thuộc đoạn [0,1] nên trong quá trình tính toán chúng ta cần có ánh xạ để chuyển tuyến tính từ miền tham chiếu [sj1, sj2] sang miền ngữ nghĩa [0,1]. Việc chuyển này được gọi là ngữ nghĩa hóa. Các giá trị của hàm j được gọi là giá trị ĐLNN và biến tương ứng với Xj nhận các giá trị ngữ nghĩa được gọi là biến ngữ nghĩa, ký hiệu xsj.

- Vấn đề cốt yếu của quá trình là xác định các tham số như độ đo tính mờ của các phần tử sinh và độ đo tính mờ của các gia tử trong các ĐSGT của các biến Xj một cách thích hợp dựa trên phân tích ngữ nghĩa của miền ngôn ngữ. Chẳng hạn, các tham số của biến vận tốc SPEED sẽ không giống nhau giữa ô tô và tàu hỏa. Hay, vì Very và Little là đặc trưng hơn More và Possibly, nên chúng ta có thể giả sử rằng (More) > (Very) và (Possibly) > (Little). Đây là những tham số có thể hiệu chỉnh.

Bước 2: Xây dựng ánh xạ ĐLNN và cơ chế lập luận.

Dùng hàm ĐLNN với các tham số đã được xác định trong Bước 1, chuyển mô hình FAM sang bảng dữ liệu số m-chiều, gọi là mô hình SAM (Semantics Associative Memory). Lưu ý rằng, n ô của mô hình SAM sẽ xác định n điểm, mô tả một siêu mặt Cr,m+1 trong không gian thực (m+1) chiều. Kế tiếp, chúng ta chọn toán tử kết nhập Agg để tích hợp m thành phần của mô hình SAM, từ đó xây dựng được mô hình mới gọi là mô hình SAM. Từ n ô của mô hình SAM sẽ xác định n điểm trong không gian thực hai chiều và như vậy ta thu được đường cong thực Cr,2 trong không gian 2 chiều. Dùng phép nội suy tuyến tính trên đường cong thực Cr,2 để tính toán giá trị đầu ra cho mô hình (1.2).

Bước 3: Giải nghĩa (Desemantization).

Đơn giản là thiết lập một ánh xạ để gán mỗi giá trị ngữ nghĩa, tức là giá trị thực trong đoạn [0,1], với một giá trị thực của miền giá trị của biến điều khiển.

Trong các nghiên cứu gần đây [11] ta có cơ sở để tin rằng, phương pháp điều khiển gồm 3 bước trên như mô tả ở Hình 3.4 đơn giản và hiệu quả hơn so với phương pháp điều khiển dựa trên lý thuyết tập mờ. Căn cứ để thấy rõ tính hiệu quả của sơ đồ điều khiển là:

i) Thay vì xây dựng các hàm thuộc thì trong phương pháp này chỉ cần

xác định các tham số của hàm ĐLNN dựa vào Bước 1.

47

ii) Phương pháp lập luận xấp xỉ dựa trên phương pháp nội suy cổ điển với đường cong ngữ nghĩa định lượng là rất đơn giản, trực quan và cho kết quả đầu ra chính xác hơn.

iii) Sơ đồ điều khiển ở trên là rất linh hoạt vì có thể dễ dàng thay đổi các tham số của hàm ĐLNN để thích nghi với nhiều ứng dụng điều khiển khác nhau.

iv) Không cần thiết sử dụng phương pháp khử mờ.

v) Tránh được các vấn đề phức tạp, dễ dẫn đến sai sót như xây dựng các hàm thuộc, chọn toán tử kéo theo, hợp thành các luật và khử mờ.

3.2.3. Phương pháp lập luận xấp xỉ mờ sử dụng đại số gia tử với các mô hình định lượng ngữ nghĩa tối ưu trong điều khiển

Như ta đã biết, phương pháp GA_HAR đã đề xuất chương 2 cho kết quả rất khả quan. Do vậy, ta sử dụng phương pháp lập luận GA_HAR vào phương pháp điều khiển mờ. Phương pháp điều khiển mờ sử dụng phương pháp GA_HAR được gọi là phương pháp lập luận mờ dựa trên ĐSGT với mô hình ĐLNN tối ưu ứng dụng trong điều khiển, ký hiệu phương pháp điều khiển là FCOPHA (Fuzzy Control using Optimal Hedge Algebras).

Trước tiên, chúng ta nhận thấy rằng thông thường ý nghĩa của bài toán điều khiển là đưa được đối tượng điều khiển về vị trí cân bằng hoặc tối thiểu hàm mục tiêu trong toàn bộ quá trình điều khiển. Vì vậy, để tìm được các tham số tối ưu cho việc thiết kế phương pháp điều khiển cần thực hiện như sau:

i). Xác định các yếu tố, các ràng buộc cho trước

– Tập cơ sở luật (mô hình FAM) với các giá trị ngôn ngữ mô tả cho các tri

thức chuyên gia trong miền ứng dụng.

– Các quan hệ tính toán giữa các biến trạng thái và biến điều khiển (nếu có).

ii). Xác định các tham số hiệu chỉnh giá trị định lượng ngữ nghĩa

1. Xây dựng các ĐSGT cho các biến ngôn ngữ trong mô hình FAM.

2. Sử dụng các ánh xạ ngữ nghĩa định lượng vXj(Aij) và vY(Bi), chuyển đổi mô hình mờ FAM sang mô hình SAM gốc. Xác định các tham số hiệu , Y ; i=1,...,n, j =1,…,m} và các ngưỡng hiệu chỉnh ĐLNN PAR2 ={

chỉnh của các tham số tương ứng.

48

3. Xác định hàm sai số của điều khiển dựa trên phương pháp lập luận mờ sử dụng ĐSGT theo tiếp cận hiệu chỉnh ĐLNN với ngưỡng có hàm là h(g,OPHA(PAR2)).

4. Xác định các tham số PAR2 của các giá trị ngôn ngữ sao cho hàm h(g, OPHA(PAR2)) → min.

iii). Xây dựng thuật toán điều khiển CFOPHA. Trên cơ sở xác định được các yếu tố, các ràng buộc cho trước (i), và các tham số hiệu chỉnh ĐLNN (ii), ta xây dựng thuật toán điều khiển gồm các bước sau:

Bước 1. Xác định mô hình SAM(PAR2) và ngữ nghĩa hóa: Trong bước này, chúng ta xây dựng mô hình SAM(PAR2) trên cơ sở đã xác định các giá trị hiệu chỉnh ĐLNN.

Bước 2. Tính toán giá trị ngữ nghĩa điều khiển: Xác định siêu mặt thực Cr,m+1 từ mô hình SAM(PAR2). Áp dụng phương pháp nội suy để tính giá trị ngữ nghĩa điều khiển tương ứng với giá trị đầu vào.

Bước 3. Giải nghĩa giá trị đầu ra: Ngược với việc ngữ nghĩa hóa, bằng cách sử dụng công thức 2.3 ta chuyển các giá trị ngữ nghĩa trong [0, 1] sang miền tham chiếu ta tính được giá trị thực của biến điều khiển.

3.3. Ứng dụng

Để thấy được hiệu quả của phương pháp lập luận GA_HAR và thuận tiện cho việc so sánh, đánh giá hiệu quả phương pháp đề xuất với các phương pháp lập luận mờ sử dụng ĐSGT trong điều khiển mờ (CFOPHA), và các phương pháp điều khiển mờ khác hiện nay [8, 9, 11]. Sau đây, sử dụng phương pháp lập luận GA_HAR giải quyết một số bài toán điều khiển mờ gọi là phương pháp điều khiển CFOPHA cho bài toán mô hình mờ hình xấp xỉ EX1 của Cao Kandel [9] và bài toán điều khiển mờ hệ con lắc ngược [8] của Ross.

3.3.1. Bài toán 1

Sử dụng phương pháp điều khiển CFOPHA để xấp xỉ mô hình EX1 của Cao- Kandel.

Các bước được thực hiện như sau:

Bước 1: Xây dựng các ĐSGT cho các biến ngôn ngữ.

Xây dựng các ĐSGT AI cho biến I và AN cho biến N gồm:

- Tập các phần tử sinh: {Small, Medium, Lagre}

49

- Tập các gia tử: {Litle, Very}

Chuyển các giá trị ngôn ngữ trong mô hình mờ sang các giá trị ngôn ngữ

trong ĐSGT cho các biến I và N như sau.

- Đối với biến I:

Null →VeryVery Small; Zero → VerySmall;

Small → Small; Medium → Medium;

Large→ Large; VeryLarge → VeryLarge.

- Đối với biến N:

Zero→ VerySmall; Small→Small;

Medium→ Medium; Large→ Large;

VeryLarge→ VeryLarge.

Bước 2. Các tham số của ĐSGT này được xác định bằng trực giác như sau:

fmI(Small) = 0.5; fmN(Small) = 0.5;

N(Very) = 0.5; I(Very) = 0.5

Sử dụng hàm ĐLNN, ta có:

- Đối với biến I ta có:

I(VeryVerySmall) = 0.0625; I(VerySmall) = 0.125;

I(Small) = 0.25; I(Medium) = 0.5;

I(Large) = 0.75; I(VeryLarge) = 0.875

- Đối với biến N ta có:

N(VerySmall) = 0.125; N(Small) = 0.25; N(Medium) = 0.5;

N(Large) = 0.75; N(VeryLarge) = 0.875

Áp dụng Định lý 1.5 xác định ngưỡng hiệu chỉnh của các giá trị ngôn ngữ.

- Đối với biến I: có độ sâu k = 3, và ngưỡng hiệu chỉnh ĐLNN là I

= 0.03125

- Đối với biến N: có độ sâu k = 2, và ngưỡng hiệu chỉnh ĐLNN là

N = 0.0625

Chuyển đổi mô hình FAM sang mô hình SAM, Bảng 3.4.

50

Bảng 3. 4. Mô hình SAM gốc - xấp xỉ mô hình EX1

0.0625 0.125 0.25 0.5 0.75 0.875 Is

0.875 0.75 0.5 0.25 0.125 0.125 Ns

Như vậy có 11 tham số hiệu chỉnh khác nhau sẽ ảnh hưởng tới phương pháp lập luận mờ sử dụng ĐSGT trong bài toán này. Bộ tham số hiệu chỉnh giá trị ĐLNN là: PAR2 ={Ii, i =1,…,6; Ni , i =7,…,11}

với điều kiện: |Ii| < 0.03125 với i = 1,...,6 cho biến I

và |Ni| < 0.0625 với i = 7,...,11 cho biến N.

Mô hình SAM (PAR2) như trong Bảng 3.5.

Bảng 3. 5. Mô hình SAM (PAR2) – xấp xỉ mô hình EX1

Is 0.0625+I1 0.125+I2 0.5 + I4 0.75 + I5 0.875 +I6 0.25 +I3

Ns 0.875 +N7 0.75+N8 0.5+N9 0.25 +N10 0.125+N1 1 0.125+N1 1

Bước 3. Sử dụng mạng phép nội suy tuyến tính kinh điển trên bề mặt của

mô hình SAM(PAR2)

Bước 4. Xác định đầu ra

- Trước hết ta cho đầu vào các giá trị I từ 0 đến 10 với bước nhảy 0.5.

- Định lượng giá trị thực và giải định lượng được thực hiện theo Công

thức 2.1 và 2.2 với:

s0 = 0.0625+I1, s1 = 0.875 +I6 và x0 = 0, x1 = 10 cho biến I.

s0 = 0.875 +N7, s1 = 0.125+N11 và x0 = 2000, x1 =480 cho biến N.

Sử dụng giải thuật di truyền như đã đề cập ở chương 1, cực tiểu hàm e (Công thức 3.1) với số thế hệ bằng 300, xác suất lai ghép 0.80; xác suất đột biến 0.05; kích cỡ quần thể 40; kích thước cá thể 10.

Qua một số lần chạy thử trên MATLAB, ta xác định được PAR2 và kết

quả xấp xỉ mô hình EX1 của Cao-Kandel là:

PAR2={-0.031006;0.011455;0.028501;0.014205;-0.004979;

51

-0.031006;-0.059445;0.016312;0.061034;0.052969;-0.056024}

e(EX1, OPHA) = 37.901974 (3.6)

Trong khi đó phương pháp tối ưu các tham số tối ưu trong tài liệu [13] có

kết quả là:

e(EX1) = 62 (3.7)

Hình 3. 5. Kết quả xấp xỉ mô hình EX1 của Cao Kandel

Hình 3.5 là đường cong xấp xỉ mô hình EX1 của Cao-Kandel bằng

phương pháp lập luận với các tham số tối ưu [13] và phương pháp OPHA.

Bảng 3. 6. Sai số lớn nhất của các phương pháp trên mô hình EX1

Phương pháp

Sai số lớn nhất của mô hình EX1

Phương pháp của Cao-Kandel với toán tử kéo theo 5* [9] 200

Phương pháp của Cao-Kandel với toán tử kéo theo 22* [9] 300

Phương pháp của Cao-Kandel với toán tử kéo theo 8 [9] 300

Phương pháp của Cao-Kandel với toán tử kéo theo 25 [9] 300

Phương pháp của Cao-Kandel với toán tử kéo theo 31 [9] 300

Phương pháp lập luận mờ sử dụng ĐSGT (FCHA) [10] 292

52

Phương pháp điều khiển sử dụng tối ưu các tham số [10] 62

Phương pháp điều khiển mờ sử dụng FCOPHA) 37.901974

Nhận xét bài toán 1:

- Từ Hình 3.5 ta thấy phương pháp điều khiển FCOPHA bám rất sát đường

cong thực nghiệm của Cao – Kandel.

- Mặt khác từ Bảng 3.6, sai số lớn nhất của mô hình xấp xỉ EX1 sử dụng phương pháp điều khiển FCOPHA là nhỏ nhất so với phương pháp lập luận tối ưu các tham số [10] và các kết quả thử nghiệm của Cao – Kandel.

3.3.2. Bài toán 2

Sử dụng phương pháp FCOPHA cho bài toán điều khiển con lắc ngược.

Bước 1: Xây dựng các tham số của các ĐSGT

- Các nhãn ngôn ngữ được chuyển như trong Bảng 3.7 và 3.8.

Bảng 3. 7. Chuyển nhãn ngôn ngữ cho các biến X1, X2

P Z N

Large W Small

Trong đó: Biến trạng thái X1 có miền giá trị là [-4, +4], biến trạng thái X2

có miền giá trị là [-10, +10].

Bảng 3. 8. Nhãn ngôn ngữ cho biến u

NB N Z P PB

More Small Possibly Small W Possibly Large More Large

Trong đó: Biến trạng thái u có miền giá trị là [-16, +16].

Kết quả các giá trị ĐLNN của các biến ngôn ngữ X1, X2 và u như trong

Bảng 3.9, (gọi là mô hình SAM gốc hệ con lắc ngược).

Bảng 3. 9. Mô hình SAM gốc của hệ con lắc ngược

X2 L: 0.75 W : 0.5 S : 0.25 X1

53

L : 0.75 ML: 0.8 PL : 0.7 W : 0.5

W : 0.5 PL : 0.7 W : 0.5 PS : 0.3

S : 0.25 W : 0.5 PS : 0.3 MS: 0.2

Bước 2: Từ mô hình SAM gốc trong Bảng 3.9, xây dựng các biến ngôn

ngữ X1, X2 và u như sau;

- Biến ngôn ngữ X1 có các giá trị ngôn ngữ NSmall, PLarge, ZW, đây là các giá trị ngôn ngữ có độ sâu k = 1, theo Định lý 2.1 ngưỡng hiệu chỉnh là 0.125 và giá trị định lượng của các giá trị ngôn ngữ được xác định như sau: X1(Large) = 0.75+ X11; X1(W) = 0.5+ X12; X1(Small) = 0.25+X13

- Biến ngôn ngữ X2 có các giá trị ngôn ngữ NSmall, PLarge, ZW, đây là các giá trị ngôn ngữ có độ sâu k = 1, theo Định lý 2.1 ngưỡng hiệu chỉnh là 0.125 và giá trị định lượng của các giá trị ngôn ngữ được xác định như sau: X2(Large) = 0.75+ X24; X2(W) = 0.5+ X25; X2(Small) = 0.25+X26

- Biến ngôn ngữ u có các giá trị ngôn ngữ NBMoreSmall, NPossiblySmall, ZW, PPossiblyLarge, PBMoreLarge đây là các giá trị ngôn ngữ có độ sâu k = 2, theo Định lý 2.1 ngưỡng hiệu chỉnh là 0.0625 và giá trị định lượng của các giá trị ngôn ngữ được xác định như sau:

u( MoreLarge) = 0.875+ u7; u( PossiblyLarge) = 0.7+ u8; u(W) = 0.5+ u9, u( PossiblySmall) = 0.3+ u10 ; u( MoreSmall) = 0.2+u11

OpPAR = {X1i, i = 1,...,3; X2i, i = 4,...,6; ui, i = 7,...,10}; với điều kiện

|X1i |< 0.125, i = 1,...,3 cho biến X1

|X2i |< 0.125, i = 4,...,6 cho biến X2

|ui |< 0.0625, i = 7,...,10 cho biến u.

Khi đó mô hình SAM (PAR2) được xác định như trong Bảng 3.10.

Bảng 3. 10. Mô hình SAM(PAR2) của hệ con lắc ngược

X2s 0.75+X24 0.5+X25 0.25+X26 X1s

0.75+X11 0.8+u7 0.7+u8 0.5+u9

54

0.5+X12 0.7+u8 0.5+u9 0.3+u10

0.25+X13 0.5+u9 0.3+u10 0.2+u11

Bước 3. Sử dụng phép nội suy tuyến tính với phép kết nhập có trọng số. Xây dựng phép nội suy tuyến tính với phép kết nhập có trọng số agg =X1s*w1 + X2s*w2 các trọng số được xác định nhờ công cụ giải thuật di truyền.

Bước 4. Xác định đầu ra.

Áp dụng phương pháp CFOPHA cho hệ con lắc ngược với giá trị ban đầu

của các trạng thái là các giá trị rõ X1(1) = 1.00 và X2(1) = -4.

Sử dụng phép nội suy tuyến tính dựa trên các mốc trong mô hình SAM,

việc giải định lượng sẽ cho ta giá trị u tại chu kỳ đầu.

Tiếp tục tính toán cho các chu kỳ tiếp theo nhờ các phương trình 3.3, 3.4. Lặp lại quá trình tính cho đến khi hệ con lắc ngược về ví trị cân bằng, sai số e của hệ được xác định nhờ công thức 3.5.

Việc ngữ nghĩa hóa và giải nghĩa tiến hành theo công thức 2.3, 2.4 với:

- s0 = 0.75+X11, s1 = 0.25+X13 và x0 = 4, x1 = -4 cho biến X1

- s0 = 0.75+X24, s1 = 0.25+X26 và x0 = 4, x1 = -4 cho biến X2

- s0 = 0.8+u7, s1 = 0.2+u11 và x0 = 16, x1 = -16 cho biến u.

Sử dụng giải thuật di truyền cực tiểu hàm e với số thế hệ bằng 200, xác suất lai ghép 0.80; xác suất đột biến 0.05; kích cỡ quần thể 40; kích thước cá thể 10.

Qua một số lần chạy mô phỏng trên MATLAB, ta xác định OPHA và các

trọng số kết nhập là:

PAR2= {0.083456; 0.076369; -0.109360; -0.068060; -0.058040;

-0.056329; - 0.035618; 0.028409; 0.032319; 0.051259; 0.013991}

- Giá trị trọng số phép kết nhập: w1 = 0.222874 ; w2 = 0.777126

- Sai số điều khiển được so sánh trên Bảng 3.11

55

Bảng 3. 11. Sai số các phương pháp của hệ con lắc ngược

Phương pháp Sai số

Điều khiển

Phương pháp lập luận mờ sử dụng ĐSGT (FCHA) [10] 15.48957

Phương pháp lập luận mờ tối ưu các tham số của ĐSGT [10] 4.757936

Phương pháp điều khiển mờ sử dụng FCOPHA 4.643746

Với tiêu chuẩn so sánh này, qua đồ thị ở Hình 3.6 ta thấy phương pháp

FCOPHA cho kết quả tốt hơn so với các phương pháp trong [10].

Hình 3. 6. Đồ thị lỗi của hệ con lắc ngược

Nhận xét bài toán 2:

- Từ Bảng 3.11 ta thấy tổng sai số qua các chu kỳ điều khiển sử dụng phương pháp lập luận GA_HA (FCOPHA) là nhỏ nhất so với tổng sai số của các phương pháp lập luận mờ tối ưu các tham số [10] và phương pháp FCHA.

- Qua kết quả điều khiển trong Hình 3.5, phương pháp FCOPHA sau 2 chu kỳ con lắc ngược đã có xu hướng về vị trí cân bằng và hàm mục tiêu nhận giá trị nhỏ nhất.

3.4. Kết luận Chương 3

Trong Chương 3, đã ứng dụng phương pháp lập luận xấp xỉ mờ sử dụng ĐSGT trong điều khiển và cài đặt và thử nghiệm cho một số bài toán điều

56

khiển logic mờ, cụ thể là:

- Bài toán Xấp xỉ mô hình mờ EX1 của Cao-Kandel [9]

- Bài toán Hệ con lắc ngược [8]

Qua kết quả ta có thể khẳng định rằng; tính hiệu quả của phương pháp điều khiển mờ sử dụng GA_HAR và mở ra khả năng ứng dụng tốt vào các bài toán mô hình mờ phức tạp hơn.

57

KẾT LUẬN

Nghiên cứu về lý thuyết ĐSGT, tìm hiểu khả năng tính toán tối ưu các tham số của ĐSGT và các tham số hiệu chỉnh ĐLNN của các ĐSGT bằng giải thuật di truyền là một mảng rất rộng mà thế giới đang nghiên cứu và phát triển. Nếu tìm hiểu tất cả các vấn đề đó là lượng kiến thức khổng lồ. Trong luận văn học viên đã chú trọng nghiên cứu, trình bày những kiến thức cơ bản về biến ngôn ngữ và mô hình mờ, phương pháp lập luận xấp xỉ mờ là cơ sở để phát triển phương pháp lập luận mờ sử dụng ĐSGT và giải thuật di truyền từ đó áp dụng vào giải bài toán Xấp xỉ mô hình mờ EX1 của Cao-Kandel [9] và bài toán Hệ con lắc ngược [8]. Qua đó luận văn đã đạt được một số kết quả như sau:

Về lý thuyết: Tập trung nghiên cứu các kiến thức chung nhất về biến ngôn ngữ và mô hình mờ, ĐSGT, phương pháp lập luận xấp xỉ mờ sử dụng ĐSGT và giải thuật di truyền dùng để tìm kiếm các tham số tối ưu của các ĐSGT. Luận văn đã phân tích kỹ về phương pháp lập luận xấp xỉ mờ sử dụng ĐSGT.

Cụ thể:

- Tìm hiểu khả năng tính toán tối ưu các tham số của ĐSGT và các tham

số hiệu chỉnh ĐLNN của các ĐSGT bằng giải thuật di truyền.

- Sử dụng giải thuật di truyền để xác định bộ tham số hiệu chỉnh tối ưu

của các ĐSGT.

Về ứng dụng: Cài đặt phương pháp lập luận xấp xỉ mờ sử dụng ĐSGT với các mô hình ĐLNN tối ưu trong điều khiển cho bài toán Xấp xỉ mô hình EX1 của Cao-Kandel và bài toán Hệ con lắc ngược của Ross. Trên cơ sở kết quả cài đặt có so sánh và đánh giá kết quả cài đặt các phương pháp lập luận xấp xỉ mờ dựa trên ĐSGT - HAR.

Phạm vi và khả năng áp dụng: Luận văn là một tài liệu tham khảo tốt cho những người đang nghiên cứu về lý thuyết ĐSGT và ứng dụng nó trong các lĩnh vực khoa học kỹ thuật.

Hướng nghiên cứu tiếp theo: Hoàn thiện và tối ưu phương pháp lập luận xấp xỉ mờ dựa trên ĐSGT với các mô hình ĐLNN tối ưu trong điều khiển cho các bài toán điều khiển mờ phức tạp.

58

TÀI LIỆU THAM KHẢO

* Tiếng Việt

[1] Nguyễn Cát Hồ (2006), “Lý thuyết tập mờ và Công nghệ tính toán mềm”, Tuyển tập các bài giảng về Trường thu hệ mờ và ứng dụng, in lần thứ 2, tr. 51–92.

[2] Nguyễn Duy Minh (2012), Tiếp cận đại số gia tử trong điều khiển mờ,

Luận án tiến sĩ toán học, Viện Công nghệ thông tin.

[3] Đặng Thị Thu Hiền (2009), Bài toán nội suy và mạng nơron RBF, Luận án tiến sĩ chuyên ngành khoa học máy tính cấp nhà nước, Trường Đại học công nghệ, Đại học quốc gia Hà Nội...

[4] Trần Thái Sơn, Nguyễn Thế Dũng (2005), “Một phương pháp nội suy giải bài toán mô hình mờ trên cơ sở đại số gia tử”, Tạp chí Tin học và Điều khiển học, Tập 21(3), tr. 248–260.

[5] Hoàng Kiếm, Lê Hoàng Thái (2000), 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, Nhà xuất bản giáo dục.

[6] Nguyễn Duy Minh (2011), “Điều chỉnh ngữ nghĩa định lượng của giá trị ngôn ngữ trong đại số gia tử và ứng dụng”, Tạp chí khoa học và công nghệ, Viện Khoa học và Công nghệ Việt Nam, Tập 49(4), tr. 27-40.

[7] Nguyễn Cát Hồ, Vũ Như Lân, Phạm Thanh Hà (2007), “Xác định trọng số tối ưu cho phép tích hợp trong phương pháp điều khiển sử dụng đại số gia tử bằng giải thuật di truyền”, Tạp chí tin học và điều khiển học, Tập 23(3), tr. 1-10.

* Tiếng Anh

[8] Ross T. J. (2010), Fuzzy logic with Engineering Applications, Third

Edition, John Wiley & Sons.

[9] Cao Z. and Kandel A. (1989), “Applicability of some fuzzy implication

operators”, Fuzzy Sets and Systems , 31, pp. 151-186.

[10] Ho N. C., Lan V. N., Viet L. X. (2008), “Optimal hedge-algebras-based controller: Design and application”, Fuzzy Sets and Systems, 159(8), pp. 968–989.

[11] Zadeh L. A. (1975), “The concept of linguistic variable and its application

to approximate reasoning”, Inform. Sci. 8, pp. 199–249.

59

[12] Ho N. C., Wechler W. (1990), “Hedge algebra: An algebraic approach to structures of sets of linguistic truth values”, Fuzzy Sets and Systems 35, pp. 281–293.

[13] Ho N. C., Long N. V. (2007), “Fuzziness measure on complete hedge algebras and quantifying semantics of terms in linear hedge algebras”, Fuzzy Sets and Systems, 158(4), pp. 452–471.