Tự chỉnh bộ điều khiển mờ giữ cân bằng hệ con lắc ngược quay dùng giải thuật di truyền Bài báo trình bày giải thuật di truyền tự chỉnh bộ điều khiển mờ giữ cân bằng hệ con lắc ngược quay. Khác với đa số các giải thuật quen thuộc, chúng tôi đề xuất phương pháp tự chỉnh bộ điều khiển mở qua hai bước: bước 1
TỰ CHỈNH BỘ ĐIỀU KHIỂN MỜ GIỮ CÂN BẰNG HỆ CON LẮC NGƯC QUAY DÙNG GIẢI THUẬT DI TRUYỀN SELF TURNING OF A FUZZY CONTROLLER FOR BALANCING A ROTARY INVERTED PENDULUM USING GENETIC ALGORITHMS Huỳnh Thái Hoàng * , Nguyễn Minh Luân ** * Khoa Điện – Điện Tử, Đại học Bách Khoa TP.HCM Email: hthoang@hcmut.edu.vn ** Khoa Công Nghệ Thông Tin, Đại học Cần Thơ TÓM TẮT Bài báo trình bày giải thuật di truyền tự chỉnh bộ điều khiển mờ giữ cân bằng hệ con lắc ngược quay. Khác với đa số các giải thuật quen thuộc, chúng tôi đề xuất phương pháp tự chỉnh bộ điều khiển mờ qua hai bước: bước một chỉnh hệ qui tắc, bước hai chỉnh hàm liên thuộc. Bằng cách sử dụng tính đối xứng, tính đầy đủ và tính liên tục của hệ qui tắc chúng tôi đưa ra sơ đồ mã hóa hiệu quả rút ngắn đáng kể chiều dài chuổi nhiễm sắc thể, nhờ đó thuật toán hội tụ rất nhanh. Kết quả mô phỏng cho thấy bộ điều khiển mờ sau khi chỉnh bằng giải thuật di truyền đề xuất điều khiển rất tốt đối tượng với chất lượng tối ưu. ABSTRACT The paper represents genetic algorithms for self-tuning a fuzzy controller to balance a rotary inverted pendulum. Difference from most of familiar algorithms, we propose a tuning procedure consist of two steps: the first step is to tune fuzzy rules and the second one is to tune membership functions. By using the symmetry, completeness and continuity properties of fuzzy rules we introduce an effective coding scheme that considerably shortens the length of chromosomes. As a result, the genetic algorithms converge very fast. Simulation results show that the fuzzy controller after being tuned by the suggested genetic algorithms controls the plant very well with optimal performance. 1. GIỚI THIỆU Điều khiển mờ là một phương pháp điều khiển thông minh phỏng theo quá trình xử lý thông tin không rõ ràng và ra quyết đònh điều khiển của con người. Phương pháp này rất thích hợp để điều khiển các đối tượng phức tạp, không xác đònh được mô hình toán và các đối tượng phi tuyến. Tuy nhiên, bộ điều khiển mờ thường được thiết kế bởi quan điểm, cách nhìn riêng của người thiết kế. Người thiết kế biến sự hiểu biết, kinh nghiệm của mình về quá trình cần điều khiển thành các biến ngôn ngữ và các qui tắc mờ mô tả mối quan hệ giữa chúng. Do đó công việc thiết kế thườøng mang nặng tính “thử sai”, khi gặp các đối tượng phức tạp người thiết kế sẽ mất rất nhiều thời gian mà kết quả có được có thể sẽ không tối ưu. Vấn đề tự chỉnh bộ điều khiển mờ là một trong những vấn đề đã được quan tâm nghiên cứu rất nhiều từ khi điều khiển mờ khẳng đònh được là một phương pháp hiệu quả để điều khiển các đối tượng phức tạp. Trong các phương pháp tự chỉnh đã được biết đến hiện nay, tự chỉnh dùng giải thuật di truyền (GA – Genetic Algorithm) có thể nói là phương pháp tự nhiên nhất và cũng hiệu quả nhất. GA là giải thuật tìm lời giải tối ưu phỏng theo sự tiến hoá của sinh vật trong tự nhiên. Thuyết tiến hoá Darwin đã khẳng đònh rằng các loài tồn tại và phát triển tuân theo qui luật chọn lọc tự nhiên, lai ghép và đột biến. Những khái niệm này của thuyết tiến hoá được chuyển thành giải thuật tìm kiếm lời giải tối ưu của bài toán. Trước tiên, một số lời giải có thể có của bài toán được đưa ra, sau đó chất lượng của từng lời giải được đánh giá và trong những lời giải đó chỉ chọn những lời giải tốt, những lời giải còn lại bò loại bỏ (sự chọn lọc tự nhiên). Những lời giải tốt còn lại qua quá trình lai ghép và đột biến để tạo ra các lời giải mới tốt hơn. Quá trình tạo ra các lời giải mới như trên tiếp tục đến khi nào có sự hội tụ. Để có thể sử dụng GA tự chỉnh bộ điều khiển mờ cần mã hóa bộ điều khiển mờ thành các nhiễm sắc thể (NST) và đònh nghóa một hàm thích nghi để đánh giá các NST. Có rất nhiều bài báo đã công bố đề cập đến vấn đề này, tuy nhiên ở mỗi phương pháp đều có cách tiếp cận khác nhau. Karr [4] là một trong những người đầu tiên ứng dụng giải thuật di truyền để thiết kế hệ mờ, trong bài báo tác giả dùng GA để xác đònh thông số của các hàm liên thuộc của một hệ qui tắc mờ đã đònh trước. Lee & Takagi [6] đã cải tiến phương pháp của Karr bằng cách cho phép xác đònh hệ qui tắc dựa vào GA thay vì đònh trước bởi người thiết kế. Mỗi hàm liên thuộc được mã hóa thành một đoạn gien gồm 3 byte, nên chiều dài chuỗi NST dùng để mã hóa cả hệ qui tắc là 3(Σm i +Πm i ), với m i là số hàm liên thuộc của mỗi biến vào. Rõ ràng phương pháp này không khả thi với hệ phức tạp vì không gian tìm kiếm quá lớn. F. Herrera, et al [3] đưa ra phương pháp tự chỉnh tập luật mờ khá chi tiết và có cải tiến hơn. Thay vì mã hóa dạng chuỗi nhò phân họ mã hóa bằng số thực, các hàm liên thuộc của một biến mờ có mối liên hệ với nhau do đó giảm được chiều dài của NST. Tuy nhiên, họ chưa sử dụng một số tính chất của hệ mờ để giảm đi không gian lời giải, cũng vì lý do đó phương pháp này chỉ có thể áp dụng để chỉnh hệ qui tắc có qui mô nhỏ. Một cách mã hóa khác như của J. Kinzel et al [5], các tác giả mã hóa các qui tắc thành một ma trận, mỗi phần tử trong ma trận sẽ là một kết luận của ngõ ra, tuy nhiên phương pháp này cũng chỉ phù hợp khi số ngõ vào ít và tập luật mờ được mô tả ở dạng bảng. Trong bài báo này chúng tôi tiếp cận vấn đề theo một hướng khác. Thay vì tìm cách mã hóa bộ điều khiển mờ tổng quát như [6], chúng tôi đưa ra phương pháp mã hóa không tổng quát bằng nhưng lại hiệu quả hơn trong một số trường hợp. Kinh nghiệm cho thấy hệ mờ thường có các tính chất như tính đầy đủ, tính đối xứng và tính liên tục, chúng tôi sử dụng các tính chất này để đưa ra một phương pháp mã hóa cải tiến nhằm rút ngắn chiều dài NST, nhờ đó giảm đi không gian tìm kiếm lời giải. Kết quả là giải thuật cần ít bộ nhớ hơn, hội tụ nhanh hơn và xác suất tìm được lời giải tối ưu cũng tăng lên. Hiệu quả của giải thuật đề xuất được minh họa qua ứng dụng tự chỉnh bộ điều khiển mờ giữ cân bằng hệ con lắc ngược quay. 2. GIẢI THUẬT DI TRUYỀN Lưu đồ GA được trình bày ở hình 1. Để áp dụng GA giải bài toán tối ưu trước hết phải mã hóa lời giải của bài toán thành chuỗi NST. Tùy theo phương pháp mã hóa mà chuỗi NST có thể là chuỗi số nhò phân, chuỗi số thập phân, chuỗi số tự nhiên hay chuỗi số thực. Mỗi NST đại diện cho một cá thể trong quần thể. Để đánh giá các cá thể phải đònh nghóa một hàm thích nghi, thường chính là hàm cần tìm cực trò. Qua quá trình chọn lọc tự nhiên những cá thể thích nghi nhất với môi trường sống mới tồn tại và có cơ hội sinh sản để tạo ra thế hệ con có xu hướng thích nghi với môi trường sống tốt hơn thế hệ bố mẹ. Cá thể nào có độ thích nghi càng cao thì càng có nhiều cơ hội để tồn tại và bắt cặp với một cá thể khác để sinh ra thế hệ con. Nhờ quá trình lai ghép mà các đặc tính tốt của thế hệ trước được truyền lại cho thế hệ sau. Đôi khi do lỗi trong quá trình di truyền trong tự nhiên xảy ra hiện tượng đột biến với xác suất rất thấp. Hiện tượng đột biến có thể tạo ra những cá thể có độ thích nghi rất kém nhưng cũng có thể tạo ra những cá thể có độ thích nghi rất tốt, vượt trội hơn hẳn so với các cá thể còn lại trong quần thể. Chọn lọc tự nhiên sẽ loại bỏ những cá thể kém thích nghi, kết quả là qua quá trình tiến hóa được lặp lại từ thế hệ này sang thế hệ khác, thế hệ sau có xu hướng thích nghi với môi trường sống tốt hơn thế hệ trước, điều đó có nghóa là lời giải của bài toán tiến dần đến lời giải tối ưu. 2.1 Chọn lọc tự nhiên Phép toán chọn lọc tự nhiên nhằm tăng độ thích nghi trung bình của quần thể bằng cách cho các cá thể có độ thích nghi cao có xác suất được sao chép vào thế hệ kế tiếp cao hơn. Phương pháp chọn lọc kinh điển nhất là chọn lọc tỉ lệ, theo phương pháp này xác suất chọn lọc của mỗi cá thể tỉ lệ với độ thích nghi của nó. Phương pháp chọn lọc tỉ lệ có ưu điểm là đơn giản, tuy nhiên khi độ thích nghi của cá thể tốt nhất và cá thể xấu nhất trong quần thể gần bằng nhau thì xác suất chọn lọc của chúng gần bằng nhau, điều đó làm cho thuật toán chậm hội tụ. Trong nghiên cứu này, chúng tôi áp dụng phương pháp chọn lọc sắp hạng Hình 1: Giải thuật di truyền lũy thừa để khắc phục khuyết điểm trên. Trước tiên các NST được sắp xếp theo thứ tự tăng dần độ thích nghi, sau đó xác suất chọc lọc của NST thứ i xác đònh như sau: () ( ) ∑ = −− = N j jNiN i ccp 1 ( Ni ,1= ) (1) trong đó N là số NST trong quần thể, c là hệ số lũy thừa ( 10 << c ). 2.2. Lai ghép Lai ghép là sự kết hợp hai NST bố mẹ được chọn ngẫu nhiên để tạo ra hai NST con, mỗi NST con được thừa hưởng một phần gien của bố mẹ. Chúng tôi sử dụng phép lai ghép hai điểm (hình 2a) để tạo ra thế hệ con. Lai ghép hai điểm cải thiện được tốc độ hội tụ của thuật toán di truyền so với lai ghép một điểm; lai ghép nhiều điểm hơn làm cho các đoạn gien tốt bò chia cắt quá nhỏ, do đó làm giảm chất lượng của GA. Xác suất lai ghép thường chọn khoảng 0.8–0.9. (a) Lai ghép (b) Đột biến Hình 3: Các phép toán di truyền 2.3 Đột biến Phép toán đột biến áp dụng cho mỗi NST con sau khi qua quá trình lai ghép. Qua phép toán đột biến, gien tại điểm đột biến sẽ bò thay đổi ngẫu nhiên (hình 2b). Xác suất xảy ra đột biến thường rất nhỏ. Nếu hiện tượng đột biến xảy ra quá thường xuyên, GA sẽ trở thành giải thuật tìm kiếm ngẫu nhiên. Ngược lại nếu xác suất đột biến quá thấp, lời giải của bài toán tối ưu dễ rơi vào cực trò cục bộ. Theo kinh nghiệm, nên chọn xác xuất đột biến nằm trong khoảng 0.01–0.05 là thích hợp. 3. TỰ CHỈNH BỘ ĐIỀU KHIỂN MỜ DÙNG GIẢI THUẬT DI TRUYỀN 3.1 Điều khiển mờ hệ con lắc ngược quay Hệ con lắc ngược quay gồm hai phần: cánh tay gắn vào động cơ DC quay quanh trục thẳng đứng và con lắc gắn vào trục quay ở cuối cánh tay quay tự do trong mặt phẳng vuông góc với cánh tay (hình 3a). Con lắc không ổn đònh, nó luôn ngã xuống trừ khi có lực tác động thích hợp vào phần cánh tay. Bài toán đặt ra là điều khiển cánh tay để giữ cho con lắc cân bằng ở vò trí thẳng đứng. Hệ con lắc ngược quay là một phiên bản cải tiến của hệ xe-con lắc ngược đề cập đến trong các bài báo [2], [3], [4] nhằm tiết kiệm không gian và loại bỏ yếu tố bão hòa do giới hạn đường chạy của xe. Hệ con lắc ngược quay là hệ phi tuyến không ổn đònh rất khó điều khiển. Đặt α và β là góc quay của cánh tay và con lắc (hình 3b), u là điện áp cấp cho động cơ DC. Mô hình toán của hệ con lắc ngược quay như sau ([1]): 22 1 22 )cos()sin( )sin2sin 2 1 (cos)2sin( ββ βββαββββαα α cfba hCbccbdeuf −+ −+−−−−− = & & && && && (2) 22 2 1 22 )cos()sin( cos)sin2sin()sin2sin 2 )(sin( ββ βββββααβββαβ β cfba ccbdeuhC b ba −+ −−−++−+ = && && & & && (3) trong đó các hệ số a, b, c, d, e, f phụ thuộc vào thông số phần cứng của hệ con lắc ngược quay như chiều dài cánh tay, con lắc; moment quán tính cánh tay, con lắc; thông số động cơ,… Hình 3: Hệ con lắc ngược quay (a) Hình dạng bên ngoài (b) Hệ tọa độ Sơ đồ khối hệ thống điều khiển mờ hệ con lắc ngược quay như hình 4, các biến vào của bộ điều khiển là α , ∆ α , β , ∆ β , tương ứng với mỗi biến vào ta đònh nghóa 3 giá trò ngôn ngữ là NE, ZE và PO; biến ra là điện áp u, đònh nghóa 9 giá trò ngôn ngữ cho biến u là N4, N3, N2, N1, ZE, P1, P2, P3, P4 (hình 5). Thường các qui tắc điều khiển mờ được rút ra từ kinh nghiệm, hệ mờ đầy đủ gồm 81 qui tắc, qui tắc thứ i có dạng: Nếu ( α là A i1 ) và ( ∆ α là A i2 ) và ( β là A i3 ) và ( ∆ β là A i4 ) thì (u là B i ) (4) Hình 4: Sơ đồ điều khiển mờ hệ con lắc ngược quay Hình 5: Các tập mờ của các biến vào, ra 3.2. Giải thuật di truyền chỉnh bộ điều khiển mờ Thiết kế bộ điều khiển mờ bằng phương pháp thử sai dựa vào kinh nghiệm mất rất nhiều thời gian mà kết quả lại không tối ưu. Trong phần này chúng ta sử dụng GA để chỉnh bộ điều khiển mờ, xem sơ đồ khối ở hình 6. Như đã trình bày ở mục 1, các nghiên cứu ứng dụng GA tự chỉnh bộ điều khiển mờ đều nhằm vào việc giải quyết hai vấn đề: chọn hàm thích nghi và cách mã hoá. Mục này sẽ trình bày các đề xuất giải quyết hai vấn đề trên. • •• • Hàm thích nghi Hàm thích nghi dùng để đánh giá chất lượng các bộ điều khiển mờ, là cơ sở để thực hiện phép toán chọn lọc tự nhiên. Hàm thích nghi phải phản ánh được chất lượng của hệ thống điều khiển trong quá trình quá độ và ở xác lập. Trong nghiên cứu này chúng tôi sử dụng hàm thích nghi có dạng: 1 ][ − = sw T J (5) trong đó [] T uuu mmmsss σσσ βαβαβα ,,,,,,,,=s với α s , β s , u s tương ứng là tổng bình phương của góc lệch α , góc lệch β , và điện áp điều khiển u trong khoảng thời gian từ 0=t đến qd Tt = ( qd T là thời gian quá độ của hệ thống); α m , β m , u m tương ứng là giá trò trung bình của góc lệch α , góc lệch β , và điện áp điều khiển u trong khoảng thời gian từ qd Tt = đến qd Tt 2= ; α σ , β σ , u σ tương ứng là độ lệch chuẩn của góc lệch α , góc lệch β , và điện áp điều khiển u trong khoảng thời gian từ qd Tt = đến qd Tt 2= và [] T www 921 , .,,=w là vector trọng số do người thiết kế xác đònh. Rõ ràng với cách chọn hàm thích nghi như trên thì bộ điều khiển có chất lượng càng cao thì giá trò hàm thích nghi lớn, do đó bộ điều khiển mờ tối ưu mà GA phải tìm chính là bộ điều khiển làm cho J đạt cực đại. • •• • Mã hóa Khó khăn cơ bản khi áp dụng GA để chỉnh bộ điều khiển mờ là tốc độ hội tụ của giải thuật, nếu chuỗi NST càng dài thì không gian tìm kiếm càng lớn, giải thuật càng chậm hội tụ. Mục tiêu nghiên cứu của chúng tôi trong bài báo này là đề xuất sơ đồ mã hóa cho phép rút ngắn chiều dài chuỗi NST để giải thuật tự chỉnh bộ điều khiển mờ chạy nhanh hơn. Như đã biết, đặc tính của một bộ điều khiển mờ chòu ảnh hưởng quyết đònh bởi hệ qui tắc; hình dạng, vò trí của các tập mờ mô tả các giá trò ngôn ngữ không đóng vai trò quan trọng. Theo kinh nghiệm của chúng tôi, khi chỉnh bộ điều khiển mờ bằng phương pháp thử sai đầu tiên phải chọn trước các tập mờ mô tả các giá trò ngôn ngữ, thường các tập mờ này có dạng đơn giản như dạng tam giác và được phân chia đều trên miền xác đònh của biến ngôn ngữ. Sau đó bằng cách dựa (a) (b) Hình 6: Tự chỉnh bộ điều khiển mờ dùng GA vào kinh nghiệm, cố gắng đưa ra một hệ qui tắc có thể điều khiển được đối tượng. Cuối cùng tinh chỉnh thông số và hình dạng của các hàm liên thuộc (nếu cần) để được bộ điều khiển có chất lượng tốt nhất. Rõ ràng nếu hệ qui tắc không đúng, điều đó có nghóa là kinh nghiệm chuyên gia trong việc điều khiển đối tượng là sai thì dù có chỉnh thông số và hình dạng của các hàm liên thuộc như thế nào đi nữa thì bộ điều khiển cũng sẽ không làm việc được. Trên cơ sở nhận xét trên, chúng tôi đưa ra giải thuật chỉnh bộ điều khiển mờ qua 2 bước: bước 1 chỉnh hệ qui tắc, bước 2 chỉnh các tập mờ mô tả các giá trò ngôn ngữ. Bước 1: Chỉnh hệ qui tắc Chúng ta thiết kế một hệ qui tắc đầy đủ, nghóa là gồm tất cả các qui tắc có thể có. Trong trường hợp này mệnh đề điều kiện của hệ qui tắc hoàn toàn xác đònh, do đó chỉ cần gán tương ứng với mỗi mệnh đề điều kiện một mệnh đề kết luận để hoàn chỉnh hệ qui tắc. Ký hiệu các giá trò ngôn ngữ của mệnh đề kết luận bằng các số nguyên như bảng 1, khi đó hệ qui tắc mờ có thể được mã hóa thành chuỗi NST gồm 81 gene như hình 6a, trong hình vẽ B i là mệnh đề kết luận của qui tắc thứ i. Để đơn giản ký hiệu cách mã hóa này là NST81. Giá trò ngôn ngữ N4 N3 N2 N1 ZE P1 P2 P3 P4 Giá trò của gene 1 2 3 4 5 6 7 8 9 Bảng 1: Bộ gien dùng để mã hóa hệ qui tắc Hình 6: Cấu trúc của nhiễm sắc thể tương ứng với các cách mã hóa hệ qui tắc Cách mã hóa NST81 khá linh hoạt, có thể áp dụng để chỉnh hệ qui tắc mờ trong nhiều bài toán điều khiển khác nhau. Tuy nhiên, đối với hệ con lắc ngược ta thấy không cần thiết phải mã hóa linh hoạt như vậy. Để ý rằng bài toán giữ cân bằng hệ con lắc ngược quay có tính chất đối xứng, nếu sử dụng tính chất này chúng ta chỉ cần mã hóa các qui tắc từ 1 đến 40 (hình 6b), qui tắc 42 đến 81 đối xứng với 40 qui tắc đầu, qui tắc thứ 41 chọn cố đònh là “Nếu ( α là ZE) và ( ∆ α là ZE) và ( β là ZE) và ( ∆ β là ZE) thì (u là ZE)” để con lắc có thể cân bằng. Với cách mã hóa như trên, chiều dài chuỗi NST rút ngắn còn 40 gene. Một tính chất nữa thường gặp ở hệ qui tắc mờ là tính liên tục, một hệ qui tắc được gọi là liên tục nếu mệnh đề điều kiện kề nhau thì mệnh đề kết luận phải kề nhau. Tính chất liên tục của hệ qui tắc xuất phát từ đặc điểm suy luận của bộ não con người: nếu mệnh đề điều kiện biến thiên ít thì mệnh đề kết luận biến thiên ít. Áp dụng tính chất này, chỉ cần mã hóa 13 qui tắc có thứ tự là 2, 5, 8, …, 34, 37. Các qui tắc còn lại được suy ra 13 qui tắc trên, thí dụ qui tắc 1 và 3 suy ra từ qui tắc 2 do tính kề nhau, qui tắc 79, 80, 81 suy ra từ các qui tắc 3, 2, 1 do tính đối xứng. Bằng cách mã hóa như trên chuỗi NST được rút ngắn đáng kể, chỉ còn 13 gene (hình 6c). Bước 2: Chỉnh hàm liên thuộc của các tập mờ Sau khi chỉnh được hệ qui tắc, chúng ta trở về bài toán chỉnh thông số hàm liên thuộc như Karr đã giải trong [4]. Trong bài báo này, một lần nữa tính đối xứng được sử dụng để rút ngắn chiều dài NST. Hàm liên thuộc của các biến vào: Dạng hàm liên thuộc là tam giác như ở hình 5a, hàm này có 3 thông số để chỉnh là a, b và c. Tuy nhiên, ta thấy giá trò ngôn ngữ ZE có b = 0 và do tính chất đối xứng ac −= , vì vậy để mã hóa giá trò ngôn ngữ ZE ta chỉ cần đưa vào NST giá trò của a. Thêm vào đó, do sự phân hoạch mờ nên các giá trò ngôn ngữ còn lại NE và PO có có các thông số đặc trưng cũng chính là các thông số của ZE. Do đó mỗi biến ngôn ngữ ở ngõ vào ta chỉ cần thay đổi giá trò của một thông số, và thông số này sẽ được mã hóa vào cấu trúc của NST. Hàm liên thuộc của biến ra: Đối với biến ngõ ra ta phân hoạch mờ theo các hàm liên thuộc dạng vạch đơn như hình 5b. Ta thấy có sự đối xứng qua vạch ZE. Như vậy để chỉnh lại các thông số hàm liên thuộc (a) (b) (c) ngõ ra ta sẽ mã hóa 4 thông số d 1 , d 2 , d 3 và d 4 vào nhiễm sắc thể, một điểm cần lưu ý là các giá trò của các thông số có sự ràng buộc lẫn nhau để bảo toàn ý nghóa ngôn ngữ của các tập mờ: 0< d 1 < d 2 < d 3 < d 4 . Do các tham số của hàm liên thuộc có giá trò là số thực nên không thể sử dụng phương pháp lai ghép và đột biến đã trình bày ở mục 2 mà phải dùng các phiên bản dùng với cách mã hóa số thực. Hình 7: Cấu trúc nhiễm sắc thể mã hóa thông số của các hàm liên thuộc 3.3. Kết quả mô phỏng Để so sánh hệ qui tắc mờ được mã hóa bằng 2 cách NST40 và NST13 vừa trình bày ở trên, hàm thích nghi sử dụng để đánh giá các NST cho bởi biểu thức (5), các phép toán chọn lọc tự nhiên, lai ghép, đột biến như trình bày ở mục 2 với các tham số: hệ số chọn lọc lũy thừa là 0.6, xác suất lai ghép là 0.8, xác suất đột biến là 0.1. Do giới hạn chiều dài bài báo chúng tôi chỉ trình bày ở đây một số kết quả điển hình. Hình 8a cho thấy nếu mã hóa hệ qui tắc bằng cách NST40 thì tốc độ hội tụ của giải thuật khá chậm; trong khi đó nếu mã hóa bằng cách NST13 thì giải thuật hội tụ nhanh hơn rất nhiều, hơn nữa cách mã hóa NST13 lời giải hội tụ đến giá trò hàm thích nghi cao hơn, nghóa là hệ qui tắc chỉnh được có chất lượng cao hơn. Hình 8b và 8c tương ứng là đáp ứng của hệ thống sau khi chỉnh hệ qui tắc bằng phương pháp mã hóa NST40 và NST13, hai hình trên cho thấy sau khi chạy GA bước 1 chúng ta có được hệ qui tắc có thể giữ cân bằng hệ con lắc ngược quay, tuy nhiên chất lượng điều khiển chưa tốt lắm. Đáp ứng sẽ cải thiện hơn sau khi chạy GA bước 2 chỉnh hàm liên thuộc, kết quả điều khiển minh họa ở hình 8d. (a) (b) (c) (d) Hình 8: Kết quả chạy GA chỉnh bộ điều khiển mờ 4. KẾT LUẬN Bài báo đưa ra một hướng tiếp cận mới để giải bài toán tự chỉnh bộ điều khiển mờ dùng GA. Khác với các giải thuật đã quen thuộc, giải thuật đề xuất trong bài báo này chỉnh bộ điều khiển mờ qua hai bước. Ở mỗi bước, bằng cách sử dụng triệt để các tính chất thường gặp của hệ mờ, chúng tôi đã đưa ra sơ đồ mã hóa rất hiệu quả, chiều dài của chuỗi NST được rút ngắn rất nhiều, kết quả là giải thuật chạy nhanh hơn. Điều này có nghóa là sự kết hợp thông tin đặc thù của bài toán vào cấu trúc dữ liệu của các NST làm cho GA hoạt động có hiệu quả rất cao. Bài báo đưa ra thí dụ minh họa chỉnh bộ điều khiển mờ cho hệ con lắc ngược quay, tuy nhiên phương pháp đề xuất có thể áp dụng cho các hệ thống điều khiển khác có tính chất tương tự; nghóa là có tính chất đầy đủ, đối xứng và liên tục. Các kết quả đạt được của bài báo đã phần nào đóng góp một phương pháp mới, một hướng tiếp cận mới nhằm giảm nhẹ công việc thử sai của quá trình thiết kế bộ điều khiển mờ, đồng thời cho ta thấy được khả năng tiềm tàng to lớn và tính ưu việt của GA trong vấn đề tìm kiếm lời giải tối ưu cho nhiều dạng bài toán điều khiển khác nhau. TÀI LIỆU THAM KHẢO 1. CHYE T.K & T. C. SANG. “Rotary Inverted Pendulum”, Final year project report presented to Nanyang Technology University, April 1999. 2. COOPER M.G. & J. J. VIDAL, “Genetic design of Fuzzy Controllers”, The 2 nd International Conference on Fuzzy Theory and Technology, Durham, NC, Octorber, 1993. 3. HERRERA F., M. LOZANO, J. L. VERDEGAY. “A Learning Process for Fuzzy Control Rules using Genetic Algorithms”, Fuzzy Sets and Systems, 100, pp. 143-158, 1998. 4. KARR C. L., “Design of a Cart-Pole Balancing Fuzzy Logic Controller Using a Genetic Algorithms”, Proceedings of the SPIE Conference on the Applications of Artificial Intelligence, 1991. 5. KINZEL J., F. KLAWONN, R. KRUSE. “Modifications of Genetic Algorithms for Designing and Optimizing Fuzzy Controllers”, Department of Computer Science Technical University of Braunschweig. D-38106 Braunschweig, Germany. 6. LEE M.A., & H. TAKAGI, “Integrating Design Stages of Fuzzy Systems using Genetic Algoritms”, Proceeding of the 2 nd IEEE International Conference on Fuzzy Systems. NewYork, pp 612-617, 1991. . 0.01–0.05 là thích hợp. 3. TỰ CHỈNH BỘ ĐIỀU KHIỂN MỜ DÙNG GIẢI THUẬT DI TRUYỀN 3.1 Điều khiển mờ hệ con lắc ngược quay Hệ con lắc ngược quay gồm hai phần: cánh. đồ điều khiển mờ hệ con lắc ngược quay Hình 5: Các tập mờ của các biến vào, ra 3.2. Giải thuật di truyền chỉnh bộ điều khiển mờ Thiết kế bộ điều khiển mờ