Đề tài : PHƯƠNG PHÁP LUẬN NGHIÊN CỨU KHOA HỌC ỨNG DỤNG THUẬT GIẢI DI TRUYỀN XẾP THỜI KHOÁ BIỂU CHO CÁC TRƯỜNG ĐẠI HỌC Trong xu hướng phát triển của xã hội ngày nay, có rất nhiều ngành khoa học mới ra đời. Trong đó có một số ngành khoa học ra đời trên cơ sở phân lập từ các ngành khoa học cổ điển, và một số ngành do sự tích hợp các khoa học. Thuật giải di truyền là một trong những ngành khoa học mới ra đời từ sự tích hợp giữa sinh học và máy tính. Trong những năm 70, mạng nơron nhân tạo, logic mờ, cùng với thuật giải di truyền đã được nghiên cứu và áp dụng thành công trong việc giải quyết các trường hợp phức tạp.
Trang 1PHẦN I PHƯƠNG PHÁP LUẬN NGHIÊN CỨU KHOA HỌC
I Khoa học và Nghiên cứu khoa học:
1.1 Khoa học:
1.1.1 Các định nghĩa và khái niệm:
- Khoa học là hệ thống tri thức về mọi loại qui luật của vật chất và sự vậnđộng của vật chất, những qui luật của tự nhiên, xã hội và tư duy (Pierre Auger –Tendences actuelles de la recherche scientifique, UNESCO, Paris, 1961)
- Khoa học là một hoạt động xã hội nhằm tìm tòi, phát hiện qui luật của vậtchất, hiện tượng và vận dụng những qui luật ấy để sáng tạo ra nguyên lý các giảipháp tác động vào các sự vật hoặc hiện tượng, nhằm biến đổi trạng thái của chúng
- Theo quan điểm của Marx, khoa học còn được hiểu là một hình thái ý thức
xã hội, tồn tại độc lập tương đối với các hình thái ý thức xã hội khác
- Các tiêu chí nhận biết một bộ môn khoa học:
1 Có một đối tượng nghiên cứu
2 Có một hệ thống lý thuyết
3 Có một hệ thống phương pháp luận
4 Có mục đích sử dụng
1.1.2 Phân loại: Các quan điểm tiếp cận phân loại khoa học:
- Theo nguồn gốc: Khoa học thuần túy (sciences pures), lý thuyết (sciences
theorique), thực nghiệm (sciences experimentales), thực chứng (sciencespositives), qui nạp (sciences inductives), diễn dịch (sciences deductives)…
- Theo mục đích ứng dụng: Khoa học mô tả, phân tích, tổng hợp, ứng dụng,
hành động, sáng tạo…
- Theo mức độ khái quát: Cụ thể, trừu tượng, tổng quát…
- Theo tính tương liên giữa các khoa học: Liên ngành, đa ngành…
- Theo cơ cấu hệ thống tri thức: Cơ sở, cơ bản, chuyên ngành…
Trang 2- Theo đối tượng nghiên cứu: Tự nhiên, kỹ thuật, xã hội nhân văn, công
nghệ, nông nghiệp, y học…
1.2 Nghiên cứu khoa học
Nhằm thỏa mãn nhu cầu nhận thức và cải tạo thế giới:
* Khám phá những thuộc tính bản chất của sự vật hoặc hiện tượng
* Phát hiện qui luật vận động của sự vật
* Vận dụng qui luật để sáng tạo giải pháp tác động vào sự vật
1.2.1 Các chức năng cơ bản của nghiên cứu khoa học
- Mô tả: là trình bày bằng ngôn ngữ hình ảnh chung nhất của sự vật, cấu trúc,
trạng thái, sự vận động của sự vật Sự mô tả bao gồm định tính và định lượng
- Giải thích: là làm rõ nguyên nhân sự hình thành và qui luật chi phối quá
trình vận động của sự vật nhằm đưa ra những thông tin về thuộc tính bản chất của
sự vật
- Dự đoán: nhìn trước quá trình hình thành, sự tiêu vong, sự vận động và
những biểu hiện của sự vật trong tương lai
- Sáng tạo: làm ra sự vật mới chưa từng tồn tại Khoa học không bao giờ
dừng lại ở ở chức năng mô tả, giải thích và dự đóan Sứ mệnh lớn lao của khoahọc là sáng tạo các giải pháp cải tạo thế giới
1.2.2 Các đặc điểm của nghiên cứu khoa học
- Tính mới: NCKH là quá trình thâm nhập vào thế giới của sự vật mà con
người chưa biết, hướng tới những phát hiện mới hoặc những sáng tạo Đây là đặcđiểm quan trọng nhất
- Tính tin cậy: Kết quả nghiên cứu phải có khả năng kiểm chứng lại nhiều lần
do nhiều người khác nhau trong điều kiện giống nhau Do đó, một nguyên tắcmang tính phương pháp luận của NCKH là khi trình bày một kết quả nghiên cứu,người nghiên cứu cần chỉ rõ điều kiện, những nhân tố và phương tiện thực hiện
- Tính thông tin: là những thông tin về qui luật vận động của sự vật hoặc hiện
tượng, thông tin về qui trình công nghệ và các tham số đi kèm qui trình đó
Trang 3- Tính khách quan: vừa là một đặc điểm của NCKH vừa là tiêu chuẩn của
người NCKH Để đảm bảo tính khách quan, người NCKH cần phải tự trắc nghiệmlại những kết luận tưởng như đã hoàn toàn được xác nhận
- Tính rủi ro: Một nghiên cứu có thể thành công, có thể thất bại Thất bại có
thể do nhiều nguyên nhân nhưng trong khoa học thất bại cũng được xem là mộtkết quả và mang ý nghĩa về một kết luận của NCKH và được lưu giữ, tổng kết lạinhư một tài liệu khoa học nghiêm túc để tránh cho người đi sau không dẫm chânlên lối mòn, tránh lãng phí các nguồn lực nghiên cứu
- Tính kế thừa: Có ý nghĩa quan trọng về mặt phương pháp luận nghiên cứu.
Ngày nay không có một NCKH nào bắt đầu từ chỗ hòan tòan trống không về kiếnthức, phải kế thừa các kết quả nghiên cứu của các lĩnh vực khoa học khác nhau
- Tính cá nhân: vai trò của cá nhân trong sáng tạo mang tính quyết định, thể
hiện trong tư duy cá nhân và chủ kiến riêng của các nhân
- Tính phi kinh tế: Lao động NCKH hầu như không thể định mức, thiết bị
chuyên dụng dùng trong NCKH hầu như không thể khấu hao, hiệu quả kinh tế củaNCKH hầu như không thể xác định
1.2.3 Các lọai hình NCKH:
- Nghiên cứu cơ bản: nhằm phát hiện bản chất, qui luật của sự vật hoặc hiện
tượng trong tự nhiên, xã hội, con người, có thể thực hiện trên cơ sở những nghiêncứu thuần túy lý thuyết hoặc trên cơ sở những quan sát, thí nghiệm Sản phẩm làcác phát kiến, công thức, phát minh Chia làm 2 lọai:
Nghiên cứu cơ bản thuần túy và định hướng UNESCO chia nghiên cứu cơbản định hướng thành nghiên cứu nền tảng và chuyên đề
- Nghiên cứu ứng dụng: là sự vận dụng các qui luật từ nghiên cứu cơ bản để
đưa ra nguyên lý về các giải pháp có thể bao gồm công nghệ, sản phẩm, vậtliệu, Sáng chếlà giải pháp kỹ thuật có tính mới và áp dụng được
- Nghiên cứu triển khai (R & D): là sự vận dụng các qui luật, các nguyên lý
để đưa ra các hình mẫu với những tham số có tính khả thi về kỹ thuật, có thể chialàm các lọai hình: triển khai trong phòng, bán đại trà,
Trang 41.2.4 Các bước NCKH:
- Xác lập vấn đề nghiên cứu: Vấn đề nghiên cứu là những điều chưa biết
hoặc chưa biết thấu đáo về bản chất sự vật hoặc hiện tượng, cần được làm rõ trongquá trình nghiên cứu Khi vấn đề nghiên cứu được chọn và cụ thể hóa thành 1 đềtài nghiên cứu, người nghiên cứu cần xác định cơ sở lý thuyết cho nghiên cứu vàtìm hiểu lịch sử vấn đề
- Chuẩn bị nghiên cứu: Xây dựng đề cương nghiên cứu (lý do chọn đề tài,
xác định đối tượng và phạm vi nghiên cứu, xác định mục tiêu và nhiệm vụ nghiêncứu, đặt tên đề tài, ), xây dựng kế hoạch nghiên cứu (tiến độ, nhân lực, dự toán,
…), chuẩn bị phương tiện nghiên cứu, lập danh mục tư liệu,
- Lựa chọn và nghiên cứu thông tin: thu thập và xử lý thông tin, nghiên cứu
tư liệu, thâm nhập thực tế, tiếp xúc cá nhân, xử lý thông tin,
- Nghiên cứu: xây dựng giả thuyết, lựa chọn phương pháp nghiên cứu,
nghiên cứu và kiểm chứng giả thuyết
- Hoàn tất nghiên cứu: đề xuất và xử lý thông tin, xây dựng kết luận và
khuyến nghị, viết báo cáo hoàn tất, hoàn tất và áp dụng kết quả
II Phương pháp Nghiên cứu khoa học:
2.1 Phương pháp chung trong NCKH:
2.1.1 Phương pháp nghiên cứu lý thuyết:
Được sử dụng trong cả khoa học tự nhiên, khoa học xã hội và các khoa họckhác, bao gồm nhiều nội dung khác nhau như: nghiên cứu tư liệu, xây dựng kháiniệm, phạm trù, thực hiện các phán đoán, suy luận,.v.v… và không có bất cứ quansát hoặc thực nghiệm nào được tiến hành
2.1.2 Phương pháp nghiên cứu thực nghiệm:
Nghiên cứu thực nghiệm là những nghiên cứu được thực hiện bởi nhữngquan sát các sự vật hoặc hiện tượng diễn ra trong những điều kiện có gây biến đổiđối tượng nghiên cứu một cách có chủ định Nghiên cứu thực hiện có thể đượcthực hiện trên đối tượng thực hoặc trên các mô hìnhdo người nghiên cứu tạo ra với
Trang 5Nghiên cứu thực nghiệm được áp dụng phổ biến không những trong khoahọc tự nhiên, khoa học kỹ thuật và công nghệ, y học, mà cả trong khoa học xã hội
và các lĩnh vực khoa học khác
2.1.3 Phương pháp nghiên cứu phi thực nghiệm:
Là một phương pháp nghiên cứu dựa trên sự quan sát, quan trắc những sựkiện đã hoặc đang tồn tại, hoặc thu thập những số liệu thống kê đã tích lũy trên cơ
sở đó phát hiện qui luật của sự vật hoặc hiện tượng Trong phương pháp này ngườinghiên cứu chỉ quan sát những gì đã và đang tồn tại, không có bất cứ sự can thiệpnào gây biến đổi trạng thái của đối tượng nghiên cứu
2.2 Phương pháp giải quyết vấn đề theo khoa học về phát minh, sáng chế:
13 Nguyên lý đảo ngược
14 Nguyên lý cầu (tròn) hóa
15 Nguyên lý năng động
16 Nguyên lý tác động bộ phận và dư thừa
17 Nguyên lý bộ xung chiều khác
18 Sự dao động cơ học
Trang 619 Nguyên lý tác đông theo chu kỳ
20 Nguyên lý tác đông liên tục hữu hiệu
21 Nguyên lý vượt nhanh
22 Nguyên lý chuyển hại thành thắng
23 Nguyên lý quan hệ phản hồi
24 Nguyên lý sử dụng trung gian
25 Nguyên lý tự phục vụ
26 Nguyên lý sao chép (copy)
27 Nguyên lý rẻ thay cho đắt
28 Nguyên lý thay thế sơ đồ cơ học
29 Nguyên lý sử dụng các kết cấu thủy và khí
30 Sử dụng bao mềm dẻo và mềm mỏng
31 Sử dụng vật liệu nhiều lỗ
32 Nguyên lý đổi màu
33 Nguyên lý đồng nhất
34 Nguyên lý loại bỏ và tái sinh từng phần
35 Đổi các thông số hóa lý của đối tượng
Trang 7PHẦN II GIỚI THIỆU MỘT SỐ NGHIÊN CỨU KHOA HỌC CỤ
THỂ
I ỨNG DỤNG THUẬT GIẢI DI TRUYỀN XẾP THỜI KHOÁ BIỂU CHO CÁC TRƯỜNG ĐẠI HỌC
1 GIỚI THIỆU ĐỀ TÀI
Trong xu hướng phát triển của xã hội ngày nay, có rất nhiều ngành khoahọc mới ra đời Trong đó có một số ngành khoa học ra đời trên cơ sở phân lập
từ các ngành khoa học cổ điển, và một số ngành do sự tích hợp các khoa học.Thuật giải di truyền là một trong những ngành khoa học mới ra đời từ sựtích hợp giữa sinh học và máy tính
Trong những năm 70, mạng nơron nhân tạo, logic mờ, cùng với thuật giải ditruyền đã được nghiên cứu và áp dụng thành công trong việc giải quyết các trườnghợp phức tạp
Thuật giải di truyền đã được phát minh ra để bắt chước quá trình phát triển tựnhiên trong điều kiện quy định sẵn của môi trường Các đặc điểm của quá trìnhnày đã thu hút sự chú ý của John Holand (ở đại học Michigan) ngay từ những năm
1970 Holand tin rằng sự gắn kết thích hợp trong thuật giải máy tính có thể tạo ramột kỹ thuật giúp giải quyết các vấn đề khó khăn giống như trong tự nhiên đã diễnra-thông qua quá trình tiến hóa
Trên thế giới hiện nay, Thuật Giải Di Truyền kết hợp với Công nghệthông tin được ứng dụng để giải quyết những vấn đề phức tạp trong hệ thốngđiện một cách rất hiệu quả Nhưng trong đề tài này, chúng ta nghiên cứu ứngdụng Thuật Giải Di Truyền xếp Thời khoá biểu các trường Đại học
Trang 8áp dụng thuật giải di truyền vào máy tính là phương pháp ứng dụng trí tuệnhân tạo vào việc giải quyết các bài toán phức tạp Thông qua tính di truyền, sự laighép, đột biến ngẫu nhiên từ những cá thể có các tính năng, ưu điểm khác nhau.Sau nhiều lần chọn lọc qua nhiều thế hệ, thế hệ cuối cùng sẽ là giống cây, con vậtmong muốn Vấn đề đặt ra là chi phí thực hiện và kết quả đạt được Thông thườngkết quả đạt được tương đối tốt, cũng có thể là tốt nhất, đặc biệt đối với những vấn
đề nan giải, các thuật toán thông thường không thể giải quyết được
Việc xếp lịch học bằng phương pháp ứng dụng thuật giải di truyền là mộtvấn đề mới, chưa được áp dụng trước đây Đây coi như là một thử nghiệm cho mộtgiải pháp mới
I.1 THUẬT GIẢI DI TRUYỀN
I.1.1 Đặc điểm, đặc trưng
Các thuật giải di truyền là những kỹ thuật tối ưu dựa trên những khái niệmchọn lọc tự nhiên và di truyền Trong cách tiếp cận này, lời giải của bài toán đượctrình bày như các gen trong nhiễm sắc thể Thuật giải di truyền mô tả một nhómcác lời giải có thể ứng cử (quần thể) trên bề mặt đáp ứng Qua tiến hóa và chọn lọc
tự nhiên các nhiễm sắc thể với độ thích nghi tốt hơn xuất hiện Chọn lọc tự nhiênđảm bảo cho nhiễm sắc thể có độ thích nghi tốt nhất sẽ được truyền cho nhữngquần thể tương lai
Những đăc trưng của thuật giải di truyền như sau:
Thuật giải di truyền làm việc với một mã hóa của tập hợp tham số chứ không phải với một tham số.
Thuật giải di truyền tìm từ một quần thể các điểm chứ không phải một điểm.
Thuật giải di truyền đánh giá thông tin (với hàm mục tiêu), chứ không đưa vào đạo hàm hoặc tri thức bổ sung khác
Trang 9Thuật giải di truyền sử dụng các luật biến đổi theo xác suất, không sử dụng luật quyết định.
Trang 10Chúng ta cĩ thể mơ tả phần đặc tả của tồn bộ thuật giải di truyền như sau
6 Kiểm tra điều kiện dừng (các giới hạn: số thế hệ, độ thích nghi, thời gian )
7 kết thúc quá trình và trả về cá thể tốt nhất.
Trang 11I.1.2 Các thành phần của thuật giải di truyền
a Khởi động quần thể ban đầu
Tạo quần thể đầu tiên trong thuật giải, là nơi xuất phát quá trình tiến hóa,bao gồm tất cả các giá trị thô ban đầu Tùy theo vấn đề của bài toán mà cócách khởi động khác nhau Trước một bài toán áp dụng thuật giải di truyền, tacần phải xác định rõ nhiễm sắc thể và cá thể cho vấn đề, và thông thường đó sẽkết quả cuối cùng Việc phân tích sẽ dựa trên kết quả là cơ bản nhất
Theo thuyết tiến hóa của Darwin, nhiễm sắc thể tốt nhất sẽ tồn tại và tạo
ra các cá thể con mới Có nhiều phương pháp để chọn các nhiễm sắc thể tốtnhất
1) Chọn lọc Roulette (Roulette Wheel Selection)
2) Chọn lọc xếp hạng (Rank Selection)
3) Chọn lọc cạnh tranh (Tournament Selection)
I.1.2.1 Toán tử lai ghépLai ghép nhằm nâng cao kết quả cá thể, do đó, toán tử lai ghép sẽ tạo điềukiện cho tiến trình hội tụ nhanh hay chậm Còn tùy thuộc vào cách tổ chức vàphân bố các nhiễm sắc thể mà chúng ta có xác suất lai ghép nhanh hay chậm.Sau đây là vài phương pháp lai ghép thông dụng trong kỹ thuật di truyền:
Trang 121) Lai ghép ánh xạ từng phần (PMX Partial Mapped Crossover)
2) Lai ghép có trật tự (OX Order Crossover)
3) Lai ghép dựa trên vị trí (Position Based Crossover)
4) Lai ghép dựa trên thứ tự (Order Base Crossover)
5) Lai ghép có chu trình (CX Cycle Crossover)
6) Lai ghép thứ tự tuyến tính (LOX Linear Order Crossover)
c Toán tử đột biến
Cũng giống như lai ghép, toán tử đột biến làm tăng nhanh quá trình hội
tụ, nhưng tăng một cách đột ngột, cũng có khi sẽ không gây tác dụng gì mộtkhi không thành công Không ai có thể đánh giá được phương pháp đột biếnnào tốt hơn, do đó có một vài phương pháp đơn giản, cũng có vài trường hợpkhá phức tạp Người ta thường chọn một trong những phương pháp sau :
1) Đột biến đảo ngược (Inversion Mutation)
2) Đột biến chèn (Insertion Mutation)
3) Đột biến thay thế (Displacement Mutation)
4) Đột biến tương hỗ (Reciprocal Exchange Mutation)
5) Đột biến chuyển dịch (Shift Mutation)
d Điều kiện kết thúc
Thoát ra quá trình tiến hóa quần thể, dựa vào bài toán mà có các cách kếtthúc vấn đề khác nhau, một khi đã đạt đến mức yêu cầu Một vài trường hợpthông thường như sau:
-Kết thúc theo kết quả: một khi đạt đến mức giá trị yêu cầu thì chấm dứtngay quá trình thực hiện
Trang 13-Kết thúc dựa vào số thế hệ: chọn số thế hệ, quá trình sẽ dừng đúng ngay
số thế hệ đã qui định trước, không cần biết kết quả như thế nào
-Tính theo thời gian: không cần biết đã bao nhiêu thế hệ hay kết quả nào,chỉ dựa vào số giờ qui định mà kết thúc
-Tổ hợp: dùng nhiều phương án khác nhau cho vấn đề, chẳng hạn như :chạy theo số thế hệ xong sau đó đánh giá cho chạy theo kết quả, hoặc ngượclại
Trang 14II MÔ HÌNH BÀI TOÁN XẾP THỜI KHOÁ BIỂU CHO TRƯỜNG ĐẠI HỌC
II.1 Giới thiệu bài toán
Bài toán đặt ra là vấn đề xếp thời khóa biểu cho một trường đại học, vớinhiều cở sở khác nhau Cần có sự sắp xếp lịch học cho các lớp tại các phòng ởmỗi địa điểm, sao cho vừa hợp lý lại vừa tiện dụng nhất
II.2 Dữ liệu bài toán
Như đã nói ở trên, thông tin sẽ phát sinh từ các đối tượng chính trong bàitoán Do đó, các dữ liệu luôn có mối liên hệ với nhau, phần lớn vì nhu cầunghiệp vụ mà dữ liệu xuất hiện tương đối nhiều Trong bài toán xếp thời khóabiểu của một trường đại học, cụ thể sẽ đòi hỏi các thông tin sau:
Danh sách môn học và số tiết học
Bảng phân công giáo viên giảng dạy tại các lớp
Bảng yêu cầu ràng buộc của giáo viên với lịch dạy
Bảng yêu cầu ràng buộc của lớp với lịch học