Mã hoá nhiễm sắc thể

Một phần của tài liệu Điều khiển dự báo cho hệ mimo trên cơ sở hệ logic mờ (Trang 33)

Mục đích của bài toán điều khiển theo mô hình dự báo xác định được chuỗi tín hiệu điều khiển trong phạm vi điều khiển. Ở đây, mỗi cá thể trong quần thể sẽ biểu diễn một chuỗi tín hiệu điều khiển:

Trong đó, Npop là số lượng nhiễm săc thể trong quần thể. HC là phạm vi điều khiển.

Đểđơn giản, ta sử dụng phương pháp mã hoá nhị phân. Tức là: mỗi phần tử

trong chuỗi tín hiệu điều khiển hoặc biến thiến tín hiệu điều khiển được mã hoá bằng một chuỗi nhị phân có độ dài là n bits. Như thế, mỗi cá thể sẽ có độ dài là

. C

n H bits, với n được xác định dựa vào khoảng bị chặn của tín hiệu điều khiển và độ chính xác của nghiệm cần tìm.

Giả sử Du t( )Î D= [ ]a b, Ì R, cần m số lẻđối với giá trị của các Du, như

vậy miền giới hạn D phải được chia thành (b a- ).10m phần bằng nhau. n là số

nguyên nhỏ nhất thoả bất đẳng thức sau:

(b a- ).10m < 2n- 1 (3.3) Việc biểu diễn như vậy rõ ràng là bảo đảm được độ chính xác yêu cầu. Công thức quy đổi từ chuỗi nhị phân sang giá trị thập phân (Decoding):

(1001...01 )2 2n 1 b a u a decimal - D = + - (3.4) 3.1.2. Khởi tạo quần thể.

Để khởi tạo quần thể ta có thể thực hiện đơn giản là tạo pop-size nhiễm sắc thể ngẫu nhiên theo từng bit. Một cách đơn giản hơn, ta có thể vận dụng xác suất về phân phối để khởi tạo quần thể ban đầu thì tốt hơn.

3.1.3. Xây dựng hàm thích nghi.

Trong bài toán tối ưu MPC thì hàm thích nghi được xây dựng dựa vào giá trị của hàm mục tiêu (hàm chi phí). $ [ ] 1 2 2 1 ( ) ( ) ( | ) ( | ) ( ) ( 1 | ) Hp k n Hc k J u k y t k t t k t k u t k t D d w l D = = é ù = êë + - + úû + + - å å (3.5) n1 là giới hạn dưới của miền dự báo; H Hc, p là phạm vi điều khiển và

có nhiều phương pháp xây dựng hàm thích nghi. Để đơn giản ta sẽ xây dựng hàm thích nghi có tương quan tỉ lệ nghịch với hàm chi phí:

1 ( ) ( ) = + f u J u D D e (3.6) e được bổ sung để tránh khả năng f →∞

3.1.4. Các phép toán của thuật toán di truyền.

1. Tái sinh.

Tái sinh là quá trình chọn quần thể mới thoả mãn phân bố xác suất dựa trên

độ thích nghi. Độ thích nghi là một hàm gán một giá trị thực cho nhiễm sắc thể

hay cá thể trong quần thể. Các cá thể có độ thích nghi lớn sẽ có nhiều bản sao trong thế hệ mới. Hàm thích nghi có thể không tuyến tính, không tồn tại đạo hàm, không lien tục bởi vì thuật toán di truyền chỉ cần liên kết hàm thích nghi với các chuỗi số. Quá trình này được thực hiện dựa trên bánh xe quay roulette (bánh xe sổ xố) với các rãnh được định kích thước theo độ thích nghi. Kỹ thuật này được gọi là lựa chọn cha mẹ theo bánh xe roulette. Bánh xe roulette được xây dựng như sau (giả định rằng, các độ thích nghi đều dương, trong trường hợp ngược lại thì ta có thể dung một vài phép biến đổi tương ứng để định lại tỷ

lệ sao cho các độ thích nghi đều dương).

- Tính độ thích nghi ,fi i= ÷1 n của mỗi nhiễm sắc thể trong quần thể

hiện hành, với n là kích thước của quần thể (số nhiễm sắc thể trong quần thể).

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

1 n i i f F = =∑ - Tính xác suất chọn pi cho mỗi nhiễm sắc thể: Ffi pi = - Tính vị trí xác suất qi của mỗi nhiễm sắc thể: 1 i i j j p q = =∑

Hình 3.1. Bánh xe quay Roulette

Tiến trình chọn lọc được thực hiện bằng cách quay bánh xe roulette n 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 (quay bánh xe roulette) trong khoảng [0÷1]

- Nếu r q< 1 thì chọn nhiễm sắc thể đầu tiên; ngược lại thì chọn nhiễm sắc thể thứi sao cho: qi−1 < ≤r q1

Kết quả của quá trình này là các cá thể có độ thích nghi cao thì có nhiều khả

năng sống sót và được nhân bản. Còn các cá thể kém thích nghi ít có cơ hội sống hơn và được loại bỏ bớt khỏi quá trình tiến hoá. Điều này thực sự cũng phù hợp với tiến hoá của tự nhiên.

2. Lai ghép.

Phép lai là quá trình hình thành nhiễm sắc thể mới trên cơ sở các nhiễm sắc thể cha - mẹ, bằng cách ghép một hay nhiều đoạn gen của hai (hay nhiều) nhiễm sắc thể cha - mẹ với nhau. Phép lai xảy ra với xác xuất Pc , được thực hiện như sau:

- Ghép đôi các nhiễm sắc thể đã chọn được 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 [0÷m-1] (m là tổng chiều dài của một nhiễm sắc thể - tổng số gen). Sốpos cho biết vị trícủa điểm lai. Điều này được minh hoạ như sau: 1 2... +1... = pos pos m b b b b b b 1 2... +1 = pos pos m c c c c c c

Như vậy phép lai này tạo ra hai chuỗi mới, mỗi chuỗi đều được thừa hưởng những đặc tính lấy từ cha và mẹ chúng.

Trên đây là sơ đồ lai ghép tại một điểm. Tuy nhiên còn có kiểu lai ghép phức tạp hơn là: lai ghép tại đa điểm (thông thường là hai điểm).

Mặc dù phép lai ghép sử dụng lựa chọn ngẫu nhiên, nhưng nó không được xem như là một lối đi ngẫu nhiên qua không gian tìm kiếm. Sự kết hợp giữa tái sinh và lai ghép làm cho thuật toán di truyền hướng việc tìm kiếm đến những vùng tốt hơn.

3. Đột biến.

Đột biến là hiện tượng cá thể con mang một (số) tính trạng không có trong mã di truyền của cha mẹ. Phép đột biến xảy ra với xác suất pm, nhỏ hơn rất nhiều so với xác suất pc. Mỗi gen trong tất cả các nhiễm sắc thể có cơ hội bị đột biến như nhau, nghĩa là đối với mỗi nhiễm sắc thể trong quần thể hiện hành (sau khi lai) và đối với mỗi gen trong nhiễm sắc thể, quá trình đột biến

được thực hiện như sau:

- Phát sinh ngẫu nhiên một sốr trong khoảng [0÷1] - Nếu r< pm, thì đột biến gen đó.

Đột biến đưa thêm thông tin mới vào quần thể, làm tăng khả năng tìm được lời giải gần tối ưu của thuật toán di truyền. Đột biến không được sử dụng thường xuyên vì nó là phép toán tìm kiếm ngẫu nhiên, với tỉ lệ đột biến cao, thuật toán di truyền sẽ còn xấu hơn phương pháp tìm kiếm ngẫu nhiên.

Sau quá trình tái sinh, lai và đột biến, quần thể mới tiếp tục được tính toán các giá trị thích nghi, sự tính toán này được dung để xây dựng phân bố xác suất (cho tiến trình tái sinh tiếp theo), nghĩa là, để xây dựng lại bánh xe roulette 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 thuật toán di truyền chỉ là sự lặp lại chu trình của những bước trên.

3.1.5. Cấu trúc của thuật toán di truyền tổng quát.

Thuật toán di truyền bao gồm các bước sau: - Bước 1: Khởi tạo quần thể các nhiễm sắc thể.

- Bước 2: Xác định giá trị thích nghi của từng nhiễm sắc thể.

- Bước 3: Sao chép lại các nhiễm sắc thể dựa vào giá trị thích nghi của chúng và tạo ra những nhiễm sắc thể mới bằng các phép toán di truyền. - Bước 4: Loại bỏ những thành viên không thích nghi trong quần thể. - Bước 5: Chèn những nhiễm sắc thể mới vào quần thểđể hình thành một

quần thể mới.

- Bước 6: Nếu mục tiêu tìm kiếm đạt được thì dừng lại, nếu không trở lại bước 3.

Hình 3.2. Sơđồ thực thi giải thuật di truyền Định nghĩa hàm đánh giá; chọn các biến; thông số di truyền Khởi tạo quần thể ban đầu Giải mã nhiễm sắc thể Tính độ thích nghi Tái sinh Lai ghép Đột biến Bắtđầu Số thế hệ = Max ? Kết thúc N Y

3.2. Phương pháp rẽ nhánh và giới hạn (Branch and Bound). 3.2.1. Nguyên lý hoạt động.

Rẽ nhánh và giới hạn - B&B - là một thuật toán tìm lời giải tối ưu rời rạc cho bài toán tối ưu phiếm hàm mục tiêu, đặc biệt là trong bài toán Điều khiển dự báo hệ phi tuyến. Tư tưởng chính của thuật toán này là: chia không gian tìm kiếm thành những không gian nhỏ, sử dụng cấu trúc cây và dựa trên nguyên lý: chỉ một số nhỏ các không gian con là có khả năng chứa nghiệm tối ưu, trong khi các miền khác có thể loại bỏ khỏi quá trình tìm kiếm nhờ các giá trị chặn, ví dụ các giá trị giới hạn trên và các giá trị giới hạn dưới của hàm chi phí. Từ đó sẽ quyết định nhánh nào của cây sẽđược phép tiếp tục tìm kiếm.

B= U1´ ...´ Uni

U1= {ui,min,...ui m, ax} (3.7) N1 là số phần tử của tập U1. Thông thường thì N1, giá trị này trải đều trong miền (ui,min,ui m, ax).

i= 1, 2...,Hp để ký hiệu cho tầng thứi của cây (i=0 là tầng 0, tức gốc của cây) và j= 1,...,N là nhánh thứj, tương ứng với tín hiệu điều khiển Bj.

Tại tầng i của cây, có Nni phương án của giá trị tín hiệu điều khiển, tương

ứng với Nni nhánh cây có thểđược mọc them. Rõ rang, nếu chỉ đơn thuần sử

dụng phương pháp rẽ nhánh để tìm kiếm toàn bộ cây thì có ( )ni HC

N khả năng phải xét đến. Điều đó đồng nghĩa với việc khối lượng tính toán có thể là rất lớn, và mất nhiều thời gian (trừ trường hợp bài toán nhỏ). Trong khi mmột phần của không gian tìm kiếm có thểđược loại bỏ nhờ sử dụng các giá trị chặn trên và dưới của phiếm hàm mục tiêu.

Một nhánh j tại tầng i sẽ đựơc tìm kiếm tiếp nếu chi phí J(j) tích luỹ khi

đi từ gốc tới tần hiện tại: 2 2 1 1 ˆ r(k + m) ( ) || || ( 1) || ( ) i Pm i Qm m m y k m u k m J i = = - + + l D + - = å P å (3.8)

cộng với chi phí đi từ tầng cuối cùng Hp của cây nhỏ hơn giá trị chặn trên Ju

của hàm chi phí. Nói chung, chi phí đi từ nốt i đến Hplà khó xác định, nhưng có thể diễn đạt thành hai thành phần. Thành phần thứ nhất là ( )J ij , do việc chuyển trạng thái x k( +1)= f x k B( ( ), j). Thành phần còn lại là giá trị chặn dưới J iL( +1), ước lượng chi phí tối thiểu để đi nốt các tầng còn lại

1

i+ ,…,Hp. Do đó, điều kiện để một nhánh được phép tìm kiếm tiếp là:

J i( )+ J ij( )+ J iL( + 1)< JU (3.9) Chú ý rằng sẽ không có sự phân nhánh kể từ nốt i> Hc- 1 (ngoài phạm vi điều khiển), tức là tín hiệu điều khiển không thay đổi cho đến tầng cuối

cùng.

Hiệu quả của thuật toán phụ thuộc vào việc ước lượng các giá trị chặn trên và chặn dưới này. Giá trị chặn trên càng nhỏ càng tốt, giá trị chặn dưới càng lớn càng tốt, để giảm số lượng nhánh mới được sinh ra.

Tuy nhiên, trong trường hợp nếu không có cách xác định giá trị chặn trên thì ta có thể khởi tạo bằng giá trị rất lớn (¥ ). Khi tín hiệu đặt là hằng số hoặc thay đổi chậm, J H( P) trong nhiều trường hợp là giá trị tối ưu hoặc gần với giá trị chặn trên của nó. JU được đặt bằng chính giá trị này, tức là JU = J H( P). Nếu sau này, trong quá trình tìm kiếm mà J H( P)'< JU thì giá trị JU được thay thế bằng J H( P)'. Nếu không thể ước lượng giá trị chặn dưới thì ta có thể bỏ

qua giá trị này, tức là J iL( )= 0 với i=1,2,…, Hc- 1. Kinh nghiệm cho thấy thậm chí ngay cả trong trường hợp đó thì thuật toán cũng có thể tránh được việc tìm kiếm trong cả không gian rộng lớn.

3.2.2. Ưu, nhược điểm của phương pháp và hướng khắc phục. 3.2.2.1. Ưu nhược điểm của phương pháp. 3.2.2.1. Ưu nhược điểm của phương pháp.

Qua phân tích nguyên lý của phương pháp Branch and Bound, ta có thể

thấy rõ một sốưu điểm như sau:

1. Lời giải tối ưu luôn tìm được (bản chất của phương pháp B&B). Đây là

ưu điểm quan trọng của thuật toán, nó đảm bảo cho bộđiều khiển luôn tìm

được lời giải tối ưu trong không gian rời rạc của tín hiệu điều khiển mà không phải giả thiết về dạng của phiếm hàm mục tiêu.

2. Thuật toán không cần dựđoán các giá trị khởi tạo, do đó phép lặp không bị ảnh hưởng bởi sự kiện “xấu”.

điều khiện ràng buộc càng chặt làm cho không gian tìm kiếm càng thu hẹp, càng nhanh chóng thu được lời giải tối ưu.

Tuy nhiên, thuật toán này cũng thể hiện một số nhược điểm:

1. Khối lượng tính toán là rất lớn. Nó tăng theo quan hệ hàm mũ với phạm vi dự báo điều khiển và số điểm rời rạc trong không gian tìm kiếm. Ví dụ đối với hệ 2×2 MIMO, Hc = 5, rời rạc giải tín hiệu vào là n= 10 mức, số khả

năng phải xét là ( (5))2 10

10 = 10 trường hợp. Điều này có nghĩa là phương pháp B&B thường không thích hợp đối với hệ lớn (nhiều tín hiệu vào, dải

đầu vào lớn…) kết hợp với phạm vi dự báo điều khiển lớn.

2. Các khả năng của tín hiệu điều khiển bị hạn chế bởi tập giá trị rời rạc của nó. Nếu chia không gian tìm kiếm thành nhiều mức thì việc xấp xỉ là tốt, tuy nhiên việc tìm kiếm là rất chậm, nếu chia ít mức độ thì độ chính xác của lời giải bị giảm đi. Hiện tượng thường xảy ra đó là hệ thống tồn tại dao

động nhỏ khi tiến gần đến giá trị đặt do tín hiệu điều khiển dao động xung quanh hai mức rời rạc liên tiếp của nó.

3.2.2.2. Phương pháp khắc phục các nhược điểm.

Bài luận văn xin đề xuất phương án khắc phục nhược điểm của Branch and Buond là phương pháp lưới chia động như sau:

Phương pháp lưới chia động được Joao Migel Costa de Sousa đề xuất dựa trên phương pháp lọc kích thước lưới lặp. Tư tưởng chính của phương pháp này là: Thu hẹp không gian tìm kiếm khi hệ thống tiến dần tới giá trị đặt trước,

tức là khi hệ thống tiến dần đến trạng thái xác lập thì tín hiệu đièu khiển không cần thay đổi manh, do đó không cần thiết phải tìm kiếm trong cả không gian rời rạc của tín hiệu điều khiển.

Nội dung của phương pháp gồm hai phần là tập giá trị thích nghi của tín hiệu điều khiển và hệ số tỉ lệ g.

Tại thời điểm thứ (k- 1): u k( - 1)Î U = [umin,umax] (3.10) Tại thời điểm k: u k( )= u k( - 1)+ Du k( ) (3.11) Giá trị trặn trên và dưới của biến thiên tín hiệu điều khiển sẽ là:

uk+ = umax- u k( - 1),uk- = umin - u k( - 1) (3.12) l1 có thể thay đổi chứ không cố định (thong thường là tuyến tính hoặc theo quy luật hàm mũ). Như vậy, thay vì chọn Dutrong tập giá trị cốđịnh như

trên thì ởđây, tập W* luôn thay đổi theo giá trị của tín hiệu điều khiển ở chu ký trước. Tham số l xác định số khả năng thay đổi của tín hiệu điều khiển. Với các đối tượng nhanh thì chọn l nhỏ, thậmchí một số trường hợp có thể chọn

đơn giản l=1, tức là tín hiệu điều khiển chỉ có thể tăng, giữ nguyên, hoặc là giảm.

b) Hệ số tỉ lệ g

Để thu hẹp miền tìm kiếm, tập giá trị thích nghi của biến thiên tín hiệu

Một phần của tài liệu Điều khiển dự báo cho hệ mimo trên cơ sở hệ logic mờ (Trang 33)

Tải bản đầy đủ (PDF)

(96 trang)