Trong giải thuật di truyền bƣớc đầu tiờn là mó hoỏ tham biến, khi đú cỏc tham biến của bài toỏn tối ƣu đƣợc ỏnh xạ sang một xõu với chiều dài hữu hạn.
Với mỗi tham biến thuộc vào khoảng [ UMin, UMax] sẽ dƣợc biểu diễn bởi một chuỗi nhị phõn cú chiều dài 1. Tham biến x đƣợc mó hoỏ ứng với giỏ trị thuộc khoảng [1,21] sẽ đƣợc ỏnh xạ lờn cỏc giỏ trị thuộc miền xỏc định [ UMin, UMax] với tỷ lệ co gión của ỏnh xạ đƣợc xỏc định nhƣ sau:
(2.20)
Khi đú x = UMin + Giỏ trị (chuỗi)*P. (2.21) Khi mó hoỏ một tập gồm m tham biến, ta chỉ việc kết nối chỳng lại thành một chuỗi nhƣ sau:
010. . . 10 100. . 00 . . . 110 . . .10 U1 U2 Um
Do cỏc tham số nằm trong cỏc khoảng khỏc nhau và cú yờu cầu về độ chớnh xỏc khỏc nhau, vỡ thế mà cỏc chuỗi (chuỗi con Ui, i = ,1,2,...,m) cú độ dài khỏc nhau. Muốn tớnh giỏ trị phự hợp của một cỏ thể ta chỉ việc cắt chuỗi thành cỏc chuỗi con giải mó tớnh lại cỏc tham số.
2.5.4. Bài toỏn tối ưu ràng buộc
Bài toỏn tối ƣu cú ràng buộc đƣợc phỏt biờu nhƣ sau:
g(x) Min (2.22) hi (x) 0,i = 1,n.
Bằng phƣơng phỏp hàm phạt ta đƣa bài toỏn về bài toỏn khụng cú ràng buộc.
Nhƣ vậy ta cú thể sử dụng giải thuật di truyền để giải bài toỏn tối ƣu cú ràng buộc. Ở đõy cần phải chỳ ý đến hệ số phạt r.
Số húa bởi Trung tõm Học liệu - Đại học Thỏi Nguyờn http://www.lrc-tnu.edu.vn
2.6. Mạng nơ ron Hopfield - giải thuật di truyền giải bài toỏn tối ƣu.
Nhƣ đó trỡnh bầy ở phần trờn giải thuật di truyền cú thể tỡm ra vựng xung quanh chứa cực trị toàn cục, song nú khụng cú khả năng leo lờn đến đỉnh cực trị đú. Núi theo cỏch khỏc là giải thuật di truyền khụng đảm bảo cho sự hội tụ toàn cục. Ngƣợc lại, mạng nơ ron Hopfield lại cú thể thực hiện đến bóo hoà nhƣng khả năng tỡm đến điểm cực trị toàn cục lại cú hạn. Vỡ vậy, kết hợp hai giải thuật trờn thành một giải thuật lai là việc cần thiất và thiết yếu. Cú hai cỏch lai ghộp hai giải thuật trờn với nhau là:
Đầu tiờn xuất phỏt bằng giải thuật di truyền. kết quả thu đƣợc của giải thuật di truyền là điểm xuất phỏt của mạng Hopfield, giải thuật này đƣợc lặp cho đến khi bóo hoà.
Mạng nơ ron Hopfield cú thể đƣợc thực hiện nhƣ một toỏn tử của giải thuật di truyền.
Trong phần này giải thuật lai đƣợc trỡnh bầy theo hƣớng thứ nhất. Khởi tạo giỏ trị bằng mạng Hopfield
Mó hoỏ tham biến theo kiểu di truyền
Tớnh cỏc giỏ trị phự hợp và thực hiện lựa chọn
Thực hiện lai ghộp và đột biến
Tớnh toỏn bằng mạng Hopfield
Kiểm tra ĐK
Kết quả
Số húa bởi Trung tõm Học liệu - Đại học Thỏi Nguyờn http://www.lrc-tnu.edu.vn
Ví dụ: Xột bài toỏn ngƣời du lịch
Phỏt biểu bài toỏn: Một ngƣời đi du lịch muốn đi thăm quan N thành phố, xuất phỏt từ một thành phố nào đú ngƣời du lịch muốn đi qua tất cả cỏc thành phố mỗi thành phố một lần rồi quay trở lại thành phố xuất phỏt. Hóy tỡm một hành trỡnh với tổng chi phớ là nhỏ nhất.
Ánh xạ bài toỏn lờn mạng Hopfield
Ta sử dụng cỏc biến nhị phõn để biểu diễn nghiệm của bài toỏn 1 nếu thành phố i là điểm dừng thứ k của hành trỡnh 0 nếu khỏc
Bài toỏn quy về cực tiểu hoỏ hàm f với
Trong đú dij là khoảng cỏch từ thành phố i đến thành phố j. Với cỏc ràng buộc. , i = 1,2,...,N (đối với mỗi thành phố)
,k = 1,2,...,N (đối với mỗi diểm dừng)
Nhƣ đó biết khụng cú phƣơng phỏp ỏnh xạ trực tiếp cỏc bài toỏn tối ƣu cú ràng buộc lờn mạng nơ ron. Vỡ vậy, trƣớc tiờn ta phải xử lý cỏc ràng buộc bằng phƣơng phỏp hàm phạt thu đƣợc hàm tối ƣu F sau đú ta đặt F = E (E là hàm năng lƣợng của mạng) nhƣ sau:
Trong đú là tham số dƣơng (hệ số phạt).
Từ đú suy ra phƣơng trỡnh động học của nơron Vik cho bài toỏn Traveling Salesman là: Min ) ( 2 1 1 , 1 1 , jk N i k j ki ijV V V d f N k ik V 1 1 N i ik V 1 1 N i N k ik N k N j ik k j N k j i k j ik ijV V V V V d F E 1 1 2 1 1 2 1 , 1 , , 1 , (1 ) (1 ) 2 ) ( 2 1 N k N i ik N k N i ik N k j k j k j ij ik A d V V B V V dt dU 1 1 1 1 1 , 1 , 1 , 1 1 ( Min (2.23) Vik =
Số húa bởi Trung tõm Học liệu - Đại học Thỏi Nguyờn http://www.lrc-tnu.edu.vn
Với mỗi điểm dừng k ta dựng N nơ ron để biểu diễn Vik là đầu ra của nơ ron thứ i với điểm dừng là k. Vớ dụ biểu diễn nơ ron của bài toỏn với N=4 cho bởi hỡnh (2.9). 1 2 3 4 1 2 3 4 Cỏc thành phố
Hỡnh 2.9:Vớ dụ về biểu diễn nơ ron của bài toỏn với N = 4
Biểu thức (2.23) là biểu thức hàm năng lƣợng của mạng Hopfield cho bài toỏn ngƣời du lịch. Trạng thỏi đầu vào của nơ ron biểu diễn hàng thứ i và cột thứ k đƣợc cập nhật bằng cỏch lấy đạo hàm riờng của hàm năng lƣợng theo Vik.
Chọn hàm kớch hoạt của cỏc nơ ron là hàm sigmoid
Trong đú là hằng số xỏc định độ nghiờng của hàm.
Nhƣ vậy , ta đó hoàn toàn ỏnh xạ bài toỏn ngƣời du lịch lờn mạng nơ ron Hopfield, việc cũn lại là cho mạng hoạt động, sau đú lấy đầu ra của mạng giải mó thành nghiệm của bài toỏn.
2.7. Kết luận
Chƣơng này đó trỡnh bày một cỏch tổng quan về mạng nơ ron, nơ ron hopfield bao gồm cấu trỳc, luật học và phạm vi ứng dụng của mạng. Giới thiệu về giải thuật di truyền, giải thuật di truyền đơn giản, cỏc cải tiến của giải thuật di truyền, giải thuật di truyền với bài toỏn tối ƣu. Đặc biệt đó trỡnh bày phƣơng phỏp lai mạng hopfield - giải thuật di truyền giải bài toỏn tối ƣu.
U e sigmoid 2 1 1 Cỏc điểm dừng
Số húa bởi Trung tõm Học liệu - Đại học Thỏi Nguyờn http://www.lrc-tnu.edu.vn
CHƢƠNG 3
ỨNG DỤNG THUẬT GIẢI DI TRUYỀN GIẢI BÀI TOÁN PHÂN CễNG NHIỆM VỤ
Chƣơng này tọ̃p trung nghiờn cƣ́u kờ́t quả áp dụng mới của thuọ̃t giải di truyền vào giải quyờ́t nhƣ̃ng vṍn đờ̀ phỏt sinh trong quá trình phõn cụng lịch giảng dạy tại cỏc trƣờng đại học . Cụ thể hơn, nội dung sẽ đờ̀ cọ̃p đờ́n v iợ̀c lƣ̣a chọn sinh viờn trong cỏc nhúm thực hành , làm sao đạt đƣợc kết quả tối ƣu , bởi vì các phòng thí nghiợ̀m thƣờng đƣợc trang bị thiờ́t bị và máy tính , và số lƣợng sinh viờn trong mụ̣t nhóm thƣ̣c hành cõn bằng hoặc ít hơ n sƣ́c chƣ́a của phũng thực hành (phũng thớ nghiệm ).
Ngoài ra, phƣơng phỏp cũng xem xét tới trƣờng hợp sinh viờn tƣ̣ sắp xờ́p mụ̣t danh sách rút gọn các nhóm thƣ̣c hành đƣợc ƣu tiờn , và nghiờn cứu số lƣợng sinh viờn hợp lí trong m ột nhúm thực hành . Viợ̀c nghiờn cƣ́u đƣợc tiờ́n hành trong điều kiện thực nghiệm khỏc nhau và nghiờn cứu thực tế tại trƣờng ĐH.
3.1. Giới thiợ̀u
Phõn lịch lý thuyờ́t và thƣ̣c hành tại các trƣờng đại học luụn là vṍn đờ̀ mà cỏc trƣờng Đ ại học phải đối mặt hàng năm . Vṍn đờ̀ này bao gụ̀m viợ̀c phõn cụng xen kẽ giữa các mụn học bắt buụ̣c và các kì thi đờ̉ sinh viờn có thờ̉ tham gia đõ̀y đủ . Trong nhƣ̃ng năm trƣớc đõy , khụ́i lƣợng cụng viợ̀c này vụ cùng lớn và mỗi trƣờng Đại học lại cú những đặc thự riờng biệt (thƣờng mụ̃i trƣờng lại cú những mụn học bắt buộc , cỏc kỳ thi và lớp học khỏc nhau ), do vọ̃y mụ̃i trƣờng có cỏc cỏch phõn cụng riờng .
Mụ̣t đặc điờ̉m thú vị khác của cụng viợ̀c ph õn cụng này là có rṍt nhiờ̀u vṍn đờ̀ phụ phát sinh , xung quanh viợ̀c phõn lịch sẽ phụ thuụ̣c vào tƣ̀ng trƣờng và địa điểm của trƣờng đú . Xem xét ví dụ vờ̀ các nhóm thƣ̣c hành . Tại đa số
Số húa bởi Trung tõm Học liệu - Đại học Thỏi Nguyờn http://www.lrc-tnu.edu.vn
cỏc trƣờng, mụ̣t khi viợ̀c sắp lịch lý t huyờ́t và thƣ̣c hành đã hoàn tṍt , thỡ sẽ nảy sinh lƣ̣a chọn sinh viờn nhƣ thờ́ nào vào các nhóm thƣ̣c hành đƣợc họ lƣ̣a
chọn trƣớc đú/ ƣu tiờn (trong trƣờng hợp có vài nhóm thƣ̣c hành cho mụ̣t mụn học).
Cú 2 vṍn đờ̀ nảy sinh tro ng viợ̀c phõn cụng và các vṍn đờ̀ khác liờn quan : thƣ́ nhṍt là áp lƣ̣c ảnh hƣởng tới tính khả thi của lịch lờn lớp sau khi xõy
dƣ̣ng, thƣ́ hai là vṍn đờ̀ tuy khụng ảnh hƣởng tới tính khả thi của giải pháp nhƣng đáp ƣ́ng mụ̣t sụ́ c hỉ tiờu định sẵn sẽ làm tăng tớnh khả thi (thƣờng đƣợc gọi là ỏp lực mềm ). Trong ví dụ vờ̀ viợ̀c lƣ̣a chọn sinh viờn vào các nhóm thƣ̣c hành: cụng suṍt tụ́i đa của phòng thí nghiợ̀m là áp lƣ̣c cƣ́ng , khụng ảnh hƣởng tới các giải phỏp khả thi. Mặt khác, sở thích của sinh viờn hay của giáo viờn là ỏp lực mềm, vỡ nú cú thể làm tăng hiệu quả của giải phỏp .
Nội dung tập trung nghiờn cƣ́u vờ̀ viợ̀c phõn cụng sinh viờn vào các nhúm thực hành (sau đõy gọi là ASLGP), nhƣng cũng xem xét tới yờ́u tụ́ ngoại vi là sự lựa chọn của chớnh sinh viờn và giảng viờn . Sụ́ lƣợng các nhóm thƣ̣c hành trong mụ̣t mụn học đƣợc quyờ́t định theo sƣ̣ phõn cụng của nhà trƣờng, của khoa hay sự lựa chọn của chớnh sinh viờn luụn phải phự hợp với điờ̀u kiợ̀n của phòng thí nghiợ̀m , để giảm tối đa ảnh hƣởng của cỏc yếu tố khỏch quan, đƣợc đánh giá hiợ̀u quả thụng qua kờ́t quả hoàn thành cụng viợ̀c cũng nhƣ sự hứng khởi của sinh viờn và giảng viờn [8].
Do các phòng thí nghiợ̀m (thƣ̣c hành) luụn đƣợc trang bị tụ́i đa thiờ́t bị và mỏy tớnh , nờn sụ́ lƣợng sinh viờn trong mụ́i nhóm chỉ nờn bằng hoặc ít hơn cụng suṍt của mụ̃i phòng . Đõy là nguyờn tắc cƣ́ng khụng thờ̉ vi phạm đƣợc . Vỡ thờ́ chỉ xem xét trƣờng hợp tṍt cả các nhóm thƣ̣c hành đờ̀u có sụ́ lƣợng sinh viờn nhƣ nhau (theo sƣ̣ phõn cụng của giáo viờn ).
Số húa bởi Trung tõm Học liệu - Đại học Thỏi Nguyờn http://www.lrc-tnu.edu.vn
3.2. Định nghĩa bài toán
Xem xét trƣờng hợp phụ̉ biờ́n trong thƣ̣c tờ́ là các mụn họ c tại các trƣờng Đại học luụn có phõ̀n lí thuyờ́t và thƣ̣c hành . Phõ̀n thƣ̣c hành học tại các phũng thực hành, khỏc thời gian và ngày giờ với phần lớ thuyết . Viợ̀c phõn cụng sinh viờn thành các nhóm thƣ̣c hành theo thời khóa biờ̉u của khóa học và sụ́ buụ̉i học cụ́ định đƣợc phép tại các phòng thực hành này. Bởi vì trong đa sụ́ các trƣ ờng hợp , sụ́ nhóm thƣ̣c hành tại các buụ̉i học khác nhau đƣợc nhà trƣờng và khoa quyờ́t định dƣ̣a trờn cụng suṍt tụ́i đa của phòng thí nghiợ̀m đú . Phần này nghiờn cƣ́u cụng suṍt của phòng thí nghiợ̀m với sƣ̣ lƣ̣a chọn của
sinh viờn và giỏo viờn .
Trƣớc tiờn nghiờn cƣ́u vṍn đờ̀ cơ bản là sƣ̣ lƣ̣a chọn của sinh viờn : Xột G = {g1, g2, …, gN} trong đú N là tập cỏc nhóm thƣ̣c hành trong mụ̣t mụn học.Mụ̃i nhóm gk sẽ đƣợc phõn cụng theo thời khúa biểu (cả ngày và giờ trong tuõ̀n khi phòng thực hành hoạt đụ̣ng ) và khả năng tối đa của phũng thực hành là Cg. Gọi S = {s1,s2,….,sM} trong đú M là tập cỏc sinh viờn đƣợc thƣ̣c hành trong phũng thớ nghiờm . Mụ̃i sinh viờn lại có mong muụ́n vào mụ̣t nhóm khỏc nhau phụ thuộc vào mụn học và quan điểm của sinh viờn . Giỏ trị của sở thớch là Psg cho mụ̃i sinh viờn s và nhóm g , sao cho 𝑁𝑔=1𝑃𝑠𝑔 = 100 cú nghĩa là mỗi sinh viờn phải đạt độ thớch thỳ tối đa P vào một nhúm hoặc vài nhúm mà họ đƣợc phõn cụng, giỏ trị nhỏ cho cỏc nhúm mà họ khụng thớch .
Ví dụ: Cú 4 nhúm thực hành , mụ̣t học sinh thích vào nhóm 2 và nhúm 4 (nhúm 2 thớch hơn nhúm 4 mụ̣t chút), nhƣng anh ta khụng thích nhóm 3 vỡ nú trựng ngày và giờ với mụn khác , và nhúm 1 thỡ thời gian vào buổi sỏng sớm . Do vọ̃y độ thích thú của sinh viờn này P s = {10, 50, 0, 40}. Đờ̉ định nghĩa đƣợc vṍn đờ̀ này, chỳng ta cần một ma trận nhị phõn X = M x N, trong đó mụ̃i giỏ trị xsg= 1 là sinh viờn s đƣợc phõn vào nhóm g (xsg = 0 là sinh viờn khụng đƣợc phõn cụng ). Tṍt nhiờn là mụ̃i sinh viờn phải đƣợc phõn vào mụ̣t hoặc
Số húa bởi Trung tõm Học liệu - Đại học Thỏi Nguyờn http://www.lrc-tnu.edu.vn
duy nhṍt mụ̣t nhóm ( 𝑥𝑔 𝑠𝑔 = 1, ∀𝑠) và tất cả cỏc sinh viờn đều đƣợc phõn nhúm ( 𝑥𝑠 𝑔 𝑠𝑔 = 𝑀).
Với cỏc định nghĩa nhƣ trờn , viợ̀c phõn cụng sinh viờn vào nhóm đƣợc phỏt biểu nhƣ sau (p1):
Tỡm X sao cho:
max( 𝑥𝑠 𝑔 𝑠𝑔.𝑝𝑠𝑔) (3.1) với ràng buộc
𝑥𝑠 𝑠𝑔 ≤ 𝐶𝑔, ∀𝑔. (3.2) Mụ̣t bổ sung nhỏ nƣ̃a là sự lƣ̣a chọn của giáo viờn bờn cạnh sở thích của sinh viờn. Xem xét biờ́n thể này trong trƣờng hợp sụ́ lƣợng sinh viờn trong các nhúm là nhƣ nhau chứ khụng phả i nhóm ít nhóm nhiờ̀u hoặc nhóm khụng có sinh viờn. Trong trƣờng hợp này , định nghĩa ASLPG nhƣ sau (P2):
max( 𝑥𝑠 𝑔 𝑠𝑔.𝑝𝑠𝑔 + 𝐾2. (1 − 𝛿 𝑡𝑜𝑙)), (3.3) với 𝛿 = ( 𝑥𝑠𝑖− 𝑀 𝑁) 𝑠 2 𝑁 𝑖=1 𝑁 (3.4) 𝑥𝑠 𝑠𝑔 ≤ 𝐶𝑔, ∀𝑔. (3.5) Chỳ ý rằng P 1 chỉ dành cho sở thích của sinh viờn , nờn mụ̣t nhóm có thờ̉
nhiờ̀u sinh viờn trong khi nhóm khác chỉ có 1 sinh viờn . P1 khụng có sƣ̣ can thiợ̀p của giáo viờn, do vọ̃y trong P 2 vấn đề này đƣợc điờ̀u chỉnh theo hàm s ố thớch nghi làm cõn bằng sụ́ sinh viờn trong mụ̃i nhóm . Điều này đƣợc thực hiện bởi biến 𝛿. Biờ́n tol là dung thứ của phƣơng sai làm cho thành phần thứ hai đúng gúp vào độ phự hợp.
3.3. Ứng dụng Thuật giải di truyền vào bài toỏn
Thuật giải di truyền là một dạng thuật toỏn đƣợc cải tiến để giải quyết cỏc vấn đề về lập nhúm trong đú số lƣợng sinh viờn đƣợc ấn định trong một
Số húa bởi Trung tõm Học liệu - Đại học Thỏi Nguyờn http://www.lrc-tnu.edu.vn
nhúm. Thuọ̃t toán này đƣợc Falkenauer (1992) đề xuất, ụng cho rằng các thuọ̃t toỏn truyền thống cú một số hạn chế khi chỳng đƣợc ứng dụng trong cỏc vấn đề phõn nhúm. Do vọ̃y, trong thuọ̃t toán này , viợ̀c sử dụng cỏc toỏn tử nhƣ mã húa, lai ghộp và đột biến của các th uọ̃t toán truyờ̀n thụ́ng cõ̀n đƣợc sƣ̉a đụ̉i đờ̉ đạt đƣợc mụ̣t thuọ̃t toán chặt chẽ , ứng dụng tốt trong việc giải quyết cỏc vấn đề về tổ hợp (nhúm). Thuọ̃t giải di truyền đƣợc ƣ́ng dụng thành cụng trong nhiờ̀u lĩnh vƣ̣c nhƣ viờ̃n th ụng, sản xuất, cơ khí cụng nghiợ̀p , …
Trong phõ̀n tiờ́p theo nhằm chỉ ra nhƣ̃ng đặc điờ̉m chính của thuật giải di truyền, trong đó tọ̃p trung vào viợ̀c mã hóa , toỏn tử di truyền , vào viợ̀c ƣ́ng dụng trong thực tiễn để nõng cao tớnh hiệu quả cho cỏc giải phỏp .
3.3.1. Mó húa:
Viợ̀c mã hóa đƣợc tiờ́n hành bằng viợ̀c tách các nhiờ̃m sắc thờ̉ thành 2 nhúm: đõ̀u tiờn là mã hóa các thành viờn và nhóm phõn cụng , sau đó là phõ̀n phõn nhóm . Núi chung , nờ́u nhƣ sụ́ lƣợng các nhóm khụng đƣợc xác định trƣớc, thỡ sẽ dễ dàng nhận thấy đõy là thuật toỏn chuỗi biến đổi . Phõ̀n tụ̉ hợp biờ́n đụ̉i tƣ̀ nhiờ̃m sắc thờ̉ này sang nhiờ̃m sắc thờ̉ khác . Tuy vọ̃y , trong phõn nhúm cỏc nhúm thực hành đƣợc cố định trƣớc , do vọ̃y trong trƣờng hợp này ,