1. Trang chủ
  2. » Luận Văn - Báo Cáo

Ứng dụng các giải thuật trong điều độ time tabling để xây dựng lịch biểu giảng dạy, áp dụng cho trường fpt polytechnic tp hcm

98 49 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 98
Dung lượng 1,78 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA LÊ PHẠM TUẤN KIỆT ỨNG DỤNG CÁC GIẢI THUẬT TRONG ĐIỀU ĐỘ TIME TABLING ĐỂ XÂY DỰNG LỊCH BIỂU GIẢNG DẠY, ÁP DỤNG CHO TRƯỜNG

Trang 1

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC BÁCH KHOA

LÊ PHẠM TUẤN KIỆT

ỨNG DỤNG CÁC GIẢI THUẬT TRONG ĐIỀU ĐỘ TIME TABLING ĐỂ XÂY DỰNG LỊCH BIỂU GIẢNG DẠY, ÁP DỤNG CHO TRƯỜNG FPT POLYTECHNIC TP.HCM

Chuyên ngành: KỸ THUẬT CÔNG NGHIỆP

Mã số: 60520117

LUẬN VĂN THẠC SĨ

THÀNH PHỐ HỒ CHÍ MINH, THÁNG 06 NĂM 2014

Trang 2

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC BÁCH KHOA

LÊ PHẠM TUẤN KIỆT

ỨNG DỤNG CÁC GIẢI THUẬT TRONG ĐIỀU ĐỘ TIME

TABLING ĐỂ XÂY DỰNG LỊCH BIỂU GIẢNG DẠY, ÁP

DỤNG CHO TRƯỜNG FPT POLYTECHNIC TP.HCM

Chuyên ngành: KỸ THUẬT CÔNG NGHIỆP

Mã số: 60520117

LUẬN VĂN THẠC SĨ

THÀNH PHỐ HỒ CHÍ MINH, THÁNG 06 NĂM 2014

Trang 3

CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI

TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐHQG - HCM

Cán bộ hướng dẫn khoa học :

(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Cán bộ chấm nhận xét 1 :

(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Cán bộ chấm nhận xét 2 :

(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Luận văn thạc sĩ được bảo vệ tại Trường Đại học Bách Khoa - ĐHQG - HCM ngày tháng năm

Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm: (Ghi rõ họ, tên, học hàm, học vị của Hội đồng chấm bảo vệ luận văn thạc sĩ) 1

2

3

4

5

Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên ngành sau khi luận văn đã được sửa chữa (nếu có)

CHỦ TỊCH HỘI ĐỒNG TRƯỞNG KHOA………

Trang 4

ĐẠI HỌC QUỐC GIA TP.HCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC BÁCH KHOA Độc lập - Tự do - Hạnh phúc

NHIỆM VỤ LUẬN VĂN THẠC SĨ

Họ tên học viên: LÊ PHẠM TUẤN KIỆT MSHV: 12270707

Ngày, tháng, năm sinh: 17/09/1975 Nơi sinh: Đà Nẵng Chuyên ngành: KỸ THUẬT CÔNG NGHIỆP Mã số: 60520117

I TÊN ĐỀ TÀI : ỨNG DỤNG CÁC GIẢI THUẬT TRONG ĐIỀU ĐỘ TIME

TABLING ĐỂ XÂY DỰNG LỊCH BIỂU GIẢNG DẠY, ÁP DỤNG CHO TRƯỜNG FPT POLYTECHNIC TP.HCM

II NHIỆM VỤ VÀ NỘI DUNG:

Nhiệm vụ: Xây dựng lịch biểu giảng dạy dùng giải thuật Local và Tabu

search ứng dụng cho trường FPT Polytechic Tp.HCM

Nội dung: Tìm hiểu về giải thuật Local và Tabu search Tìm hiểu về trường,

phòng đào tạo Xây dựng bài toán sắp lịch biểu cho trường dùng giải thuật trên, phân tích kết quả, kết luận

III NGÀY GIAO NHIỆM VỤ : 10 – 02 – 2014

IV NGÀY HOÀN THÀNH NHIỆM VỤ: 20 – 06 – 2014

IV CÁN BỘ HƯỚNG DẪN: PGS.TS HỒ THANH PHONG

Trang 5

PHẦN LÝ LỊCH TRÍCH NGANG

Họ và tên: Lê Phạm Tuấn Kiệt Giới tính: Nam

Ngày, tháng, năm sinh: 17/09/1975 Nơi sinh: Đà Nẵng

Địa chỉ liên lạc : 68/119 Trần Quang Khải, P.Tân Định, Q.1, Tp.HCM

QUÁ TRÌNH ĐÀO TẠO

- Từ năm 1993 đến 1997 : Học Đại Học Ngành Công Nghệ Thông Tin tại Trường

Đại Học Mở Bán Công TP.HCM

- Từ năm 2012 đến 2013 : Học Cao Học Ngành Kỹ Thuật Hệ Thống Công Nghiệp

thuộc Khoa Cơ Khí – Trường Đại Học Bách Khoa TP.HCM

Công Nghệ Thông Tin

10/2001 – 10/2009 Công Ty Chấn Nguyên, Công Ty

TNHH Tin Học Tân Thiên Vũ, Công Ty TNHH Tin Học Nguyễn Sương

IT Manager

11/2009 đến

07/2011

Công Ty cổ phần chứng khoán Thăng Long (TLS)

Trưởng phòng kỹ thuật

08/2012 đến nay Trường Đại học FPT Giảng viên CNTT

Trang 6

LỜI CẢM ƠN

Lời đầu tiên, tôi xin chân thành cám ơn Thầy Hồ Thanh Phong đã tận tình hướng dẫn tôi thực hiện và hoàn thành luận văn này Tôi cũng xin cám ơn thầy Đỗ Ngọc Hiền, thầy Nguyễn Tuấn Anh, cô Lê Ngọc Quỳnh Lam và các thầy cô trong

Bộ môn Kỹ Thuật Hệ Thống Công Nghiệp đã tận tâm truyền đạt kiến thức, kinh

nghiệm trong suốt hơn quãng thời gian học cao học

Xin chân thành cám ơn bạn bè, đồng nghiệp phòng Đào Tạo trường FPT Polytechnic đã tạo điều kiện thuận lợi cho tôi trong quá trình thực hiện đề tài này

Và cuối cùng tôi xin chân thành cám ơn Ba Mẹ, gia đình và người thân đã động viên khuyến khích và là nguồn động lực vững chắc cho tôi vượt qua những khó khăn trong suốt quá trình học để cuối cùng hoàn thành luận văn này

Dù đã rất cố gắng để hoàn thành đề tài nhưng vẫn còn nhiều thiếu sót không thể tránh khỏi, tôi rất mong nhận được sự đóng góp ý kiến từ quý thầy, cô, bạn bè

và đồng nghiệp để phát triển đề tài ngày một tốt hơn

Trân trọng

Tp.HCM, Ngày 20 tháng 06 năm 2014

Lê Phạm Tuấn Kiệt

Trang 7

TÓM TẮT LUẬN VĂN

Ngày nay, điều độ là hoạt động không thể thiếu trong mọi lĩnh vực sản xuất, kinh doanh, dịch vụ của các doanh nghiệp Trong đó, ngành giáo dục cũng không ngoại lệ, việc sắp xếp thời khoá biểu giảng dạy đã thật sự là vấn đề khó khăn đối với cán bộ công nhân viên phòng đào tạo của các trường đại học, cao đẳng cũng như bậc phổ thông

Nhiều thập niên gần đây đã có rất nhiều tài liệu nghiên cứu về các giải thuật trong điều độ lịch biểu (Time Tabling) giúp cho việc sắp xếp thời khoá biểu giảng dạy được tự động hoá, nhanh chóng và hiệu quả cao Trong luận văn này ta sẽ nghiên cứu giải bài toán điều độ lịch biểu giảng dạy dùng giải thuật Local Search và Tabu Search áp dụng cho trường cao đẳng FPT Polytechnic Thành Phố Hồ Chí Minh

Trang 8

MỤC LỤC

Chương I: GIỚI THIỆU ĐỀ TÀI 1

1.1 ĐẶT VẤN ĐỀ 1

1.2 NỘI DUNG 3

1.3 MỤC TIÊU 4

1.4 GIỚI HẠN VÀ PHẠM VI ĐỀ TÀI 4

Chương II: CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN 5

2.1 ĐIỀU ĐỘ TIME TABLING 5

2.1.1 Giới thiệu kỹ thuật điều độ 5

2.1.2 Mô hình tổng quát của bài toán Time Tabling 5

2.1.3 Các giải thuật lập lịch biểu (Time tabling) 7

2.2 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG THÔNG TIN 15

2.3 NGÔN NGỮ LẬP TRÌNH C# VÀ SQL SERVER 17

2.4 CÁC NGHIÊN CỨU LIÊN QUAN 19

Chương III: PHƯƠNG PHÁP LUẬN 21

3.1 PHƯƠNG PHÁP NGHIÊN CỨU 21

3.2 PHƯƠNG PHÁP LUẬN 22

3.2.1 Nghiên cứu về Time Tabling 23

3.2.2 Thu thập số liệu & phân tích tình trạng sắp lịch biểu giảng dạy 23

3.2.3 Phân tích và thiết kế hệ thống 23

3.2.4 Lựa chọn thuật giải điều độ và viết code cho ứng dụng 23

3.2.5 Triển khai ứng dụng và kiểm thử 24

3.2.6 Kết luận 24

Chương IV: XÂY DỰNG LỊCH BIỂU GIẢNG DẠY, ÁP DỤNG CHO TRƯỜNG FPT POLYTECHNIC TP.HCM 25

4.1 GIỚI THIỆU TRƯỜNG FPT POLYTECHNIC 25

4.2 THỰC TRẠNG SẮP XẾP LỊCH BIỂU TẠI TRƯỜNG FPT POLYTECHNIC TP.HCM 26

4.2.1 Phòng học 27

Trang 9

4.2.2 Ca học 28

4.2.3 Lớp học 28

4.2.4 Điều kiện và quy trình thực hiện sắp xếp lịch biểu 29

4.2.5 Số lượng giảng viên: 29

4.2.6 Thời gian thực hiện sắp xếp lịch biểu hiện tại: 29

4.3 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG XÂY DỰNG LỊCH BIỂU GIẢNG DẠY 30

4.3.1 Yêu cầu của bài toán 30

4.3.2 Quy trình sắp xếp lịch biểu 30

4.3.3 Thiết kế cơ sở dữ liệu và triển khai cao sở dữ liệu trên SQL Server 31

4.4 GIẢI QUYẾT BÀI TOÁN BẰNG KỸ THUẬT ĐIỀU ĐỘ 32

4.4.1 Định nghĩa bài toán: 33

4.4.2 Định nghĩa các ràng buộc 35

4.4.3 Giải bài toán với ràng buộc cứng 36

4.4.4 Giải bài toán với ràng buộc mềm 45

4.5 SỬ DỤNG NGÔN NGỮ C# XÂY DỰNG ỨNG DỤNG LỊCH BIỂU GIẢNG DẠY 50

4.6 KẾT QUẢ THỰC NGHIỆM 52

Chương V: KẾT LUẬN VÀ KIẾN NGHỊ 54

5.1 KẾT LUẬN 54

5.1.1 Kết quả đạt được 54

5.1.2 Hạn chế 54

5.2 KIẾN NGHỊ 55 TÀI LIỆU THAM KHẢO

PHỤ LỤC A - SỐ LIỆU THỰC TẾ TẠI FPOLY

PHỤ LỤC B - CODE C# CỦA LỚP TIMETABLING

Trang 10

DANH MỤC HÌNH

Hình 2.1: Giải thuật Hill-Climbing 8

Hình 2.2: Giải thuật Min-Conflict Random Walk 9

Hình 2.3: Giải thuật SimulatedAnnealing 10

Hình 2.4: Giải thuật di truyền (Genetic Algorithm) 11

Hình 2.5: Giải thuật Tabu Search 13

Hình 2.6: Pseudo-code Tabu Search 14

Hình 3.1: Quy trình nghiên cứu 22

Hình 4.1: Sơ đồ tổng thể giải bài toán TimeTabling cho FPOLY 32

Hình 4.2: Cluster đụng độ 34

Hình 4.3: Giải thuật Backtracking-free kết hợp Local Search và Look-Ahead 37

Hình 4 4: Giải thuật sắp xếp thứ tự meeting 40

Hình 4 5: Giải thuật sắp xếp thứ tự giảng viên 40

Hình 4.6: Giải thuật chọn biến 41

Hình 4.7: Giải thuật chọn trị phòng 42

Hình 4.8: Giải thuật chọn trị giảng viên 43

Hình 4.9: Giải thuật SolveConflict dùng IterativeSearch 44

Hình 4.10: Hàm đánh giá vi phạm ràng buộc mềm 46

Hình 4.11: Mô tả giải thuật Local Repair – Tabu Mechanism 47

Hình 4.12: Giải thuật repair_constraint 49

Hình 4.13: Giao diện đăng nhập ứng dụng 50

Hình 4.14: Giao diện màn hình làm việc chính 51

Hình 4.15: Giao diện hiển thị thời khóa biểu 51

Hình 4.16: Kết quả sắp xếp học kỳ Spring 2014 52

Hình 4.17: Kết quả sắp xếp học kỳ Summer 2014 53

Trang 11

Chương I: GIỚI THIỆU ĐỀ TÀI 1.1 ĐẶT VẤN ĐỀ

Ngành giáo dục đóng vai trò rất quan trọng trong việc tạo ra nguồn nhân lực chất lượng cao phục vụ cho nền kinh tế cũng như chính trị xã hội của đất nước Hiện nay, ngành giáo Việt Nam cần có nhiều thay đổi để đào tạo ra nguồn nhân lực đồi dào, chất lượng cao góp phần xây dựng đất nước hùng mạnh

Ngay từ năm 1999, nhận thấy nhu cầu nguồn nhân lực chất lượng cao là yếu

tố sống còn của việc phát triển Tập đoàn và ngành công nghiệp CNTT, FPT đã phối hợp với tập đoàn đào tạo CNTT hàng đầu thế giới Aptech Ấn độ triển khai hệ thống các trung tâm đào tạo Lập trình viên Quốc tế Aptech và Mỹ thuật đa phương tiện Arena tại Việt nam

Ngày 08/09/2006, Chính phủ đã có Quyết định số 208/2006/QĐ-TTg cho phép chính thức thành lập Trường Đại học Tư thục FPT Trường Đại học FPT xây dựng mô hình của một trường Đại học thế hệ mới, có triết lý giáo dục hiện đại, gắn liền đào tạo với thực tiễn cuộc sống và nhu cầu nhân lực của đất nước, góp phần đưa ngành CNTT Việt nam lên ngang tầm các nước tiên tiến trên thế giới

Sự khác biệt của Trường Đại học FPT so với các trường đại học khác là đào tạo kỹ sư công nghiệp, nghĩa là đào tạo theo hình thức liên kết chặt chẽ với các doanh nghiệp CNTT, gắn đào tạo với thực tiễn, với nghiên cứu - triển khai và các công nghệ hiện đại nhất Triết lý và phương pháp giáo dục hiện đại; Đào tạo con người toàn diện, hài hòa; Chương trình luôn được cập nhật và tuân thủ các chuẩn công nghệ quốc tế; Đặc biệt chú trọng kỹ năng ngoại ngữ; Tăng cường đào tạo quy trình tổ chức sản xuất, kỹ năng làm việc theo nhóm và các kỹ năng cá nhân khác là những điểm sẽ đảm bảo cho sinh viên tốt nghiệp có những cơ hội việc làm tốt nhất tại tập đoàn FPT và các doanh nghiệp hàng đầu khác

Trang 12

Ngày 13/07/2010, trường cao đẳng thực hành FPT (FPT Polytechnic), trực thuộc đại học FPT, được thành lập với sứ mệnh cung cấp dịch vụ đào tạo tốt trên các tiêu chí: phù hợp với năng lực học tập của sinh viên; đáp ứng nhu cầu lớn của doanh nghiệp; và cung cấp dịch vụ đào tạo chuẩn mực dựa trên các chuẩn đã được công nhận

Với nhận định Việt Nam có hàng trăm nghìn doanh nghiệp, các chuyên ngành đào tạo của FPT Polytechnic đều nhắm tới nhu cầu xã hội lớn như: mỗi doanh nghiệp đều cần có nhân viên kế toán, nhân viên tiếp thị và bán hàng; các doanh nghiệp đều cần có website quảng bá sản phẩm và giao dịch do đó đều cần một nhân viên thiết kế, quản trị website; các doanh nghiệp có hệ thống máy tính đều cần nhân viên lập trình để xây dựng các ứng dụng hữu ích và đảm bảo hệ thống được vận hành hiệu quả

Chương trình đào tạo của FPT Polytechnic tuân theo chuẩn khung chương trình của BTEC, Vương quốc Anh Sách giáo trình, tài liệu học tập được chuyển ngữ sang Tiếng Việt từ các bộ sách uy tín của các NXB lớn trên thế giới như Pearson, Cengage, Mc-Graw Hills, … Học liệu được các cán bộ có uy tín của Trường Đại học FPT thiết kế, biên tập và chuyển tải trên việc áp dụng hệ thống công nghệ thông tin hiện đại

Hiện nay, hệ thống FPT Polytechnic đã được thành lập tại 06 thành phố lớn trên cả nước như:

 FPT Polytechnic Hà Nội

 FPT Polytechnic Đà Nẵng

 FPT Polytechnic TP Hồ Chí Minh

 FPT Polytechnic Quảng Ninh

 FPT Polytechnic Thanh Hóa

 FPT Polytechnic Đắk Lắk

Trang 13

Với sự thành công của hệ thống FPT Polytechnic cùng với đội ngũ giảng viên giàu kinh nghiệm và nhiệt tình, số lượng sinh viên ngày càng tăng mạnh, trong tương lai FPT Polytechnic sẽ mở thêm nhiều cơ sở khác tại các tỉnh thành, đó là chiến lược phát triển của hệ thống FPT Polytechnic

Là thành viên trong hệ thống FPT Polytechnic, FPT Polytechnic TP Hồ Chí Minh cũng đã phát triển rất nhanh, chiếm tỷ trọng tăng trưởng cao nhất hệ thống năm 2012 Với số lượng sinh viên (trên 4000SV), lớp học, giảng viên ngày càng tăng mạnh, Phòng Đào Tạo gặp khó khăn trong vấn đề sắp xếp lịch biểu học và giảng dạy cho sinh viên cũng như giảng viên Hiện tại có 2 nhân viên làm lịch biểu cho mỗi học kỳ và trung bình khoảng mất từ 15 đến 20 ngày Nguyên nhân chính là hiện tại Phòng Đào Tạo dùng cách sắp xếp lịch đơn giản bằng phương pháp thủ công, sử dụng kinh nghiệm và dùng phần mềm Excel để nhập lịch biểu

Do đó, vấn đề này đang được Trường FPT Polytechnic TP Hồ Chí Minh quan tâm Từ đó việc xây dựng một phần mềm sắp xếp lịch biểu cho Trường FPT Polytechnic TP Hồ Chí Minh là việc cần thiết cho trường hiện nay Với kinh nghiệm về lập trình và các kỹ thuật điều độ được học trong lớp cao học ISE – 2012, tôi chọn đề tài: “ỨNG DỤNG CÁC GIẢI THUẬT TRONG ĐIỀU ĐỘ TIME TABLING ĐỂ XÂY DỰNG LỊCH BIỂU GIẢNG DẠY, ÁP DỤNG CHO TRƯỜNG FPT POLYTECHNIC TP.HCM” làm luận văn thạc sĩ

1.2 NỘI DUNG

 Tìm hiểu kỹ thuật điều độ trong sản xuất và dịch vụ, kỹ thuật điều độ lịch biểu, từ đó chọn thuật toán sắp xếp lịch biểu đa mục tiêu hợp lý cho mục tiêu của đề tài

 Tìm hiểu quy trình sắp xếp lịch biểu tại Phòng Đào Tạo - Trường FPT Polytechnic TP Hồ Chí Minh

 Thu thập thông tin về lớp học, môn học, giảng viên cơ hữu, giảng viên thỉnh giảng, các ràng buộc cứng và mềm…

Trang 14

 Tổng hợp, phân tích và thiết kế hệ thống thông tin (Thiết kế giao diện, cơ

sở dữ liệu, xây dựng phần mềm, tài liệu hướng dẫn…)

 Đánh giá kết quả phần mềm và đưa kiến nghị phát triển phần mềm

1.3 MỤC TIÊU

Xây dựng phần mềm sắp xếp lịch biểu giảng dạy tại Trường FPT Polytechnic

TP Hồ Chí Minh với 03 chỉ số đánh giá:

 Giảm thời gian lên lịch

 Tối ưu việc sử dụng phòng học

 Tối ưu việc sắp xếp giảng viên

1.4 GIỚI HẠN VÀ PHẠM VI ĐỀ TÀI

Phần mềm sắp xếp lịch biểu giảng dạy tự động cho Trường FPT Polytechnic với 2 chức năng chính:

 Sắp xếp phòng học cho các lớp

 Sắp xếp giảng viên theo môn học cho các lớp

Do hạn chế về thời gian và nhằm đảm bảo tính hiệu quả của đề tài nên nội dung đề tài chỉ tập trung vào nghiên cứu và xây dựng phần mềm sắp xếp lịch biểu với hai chức năng chính trên, trong tương lai sẽ phát triển thêm nhiều tính năng nữa

Dữ liệu mẫu sử dụng của học kỳ Spring 2014 và Summer 2014 (Phụ lục đính kèm)

Trang 15

Chương II: CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU

LIÊN QUAN

2.1 ĐIỀU ĐỘ TIME TABLING

2.1.1 Giới thiệu kỹ thuật điều độ

Điều độ là một quá trình ra quyết định đóng vai trò rất quan trọng trong hầu hết các hoạt động, các ngành công nghiệp sản xuất và dịch vụ Chức năng điều độ trong một công ty là sử dụng các kỹ thuật toán học hay một số phương pháp định lượng khác để phân phối hợp lý nguồn tài nguyên có hạn phục vụ công việc Sự phân phối nguồn tài nguyên thích hợp sẽ cho phép công ty đạt được mục tiêu tối ưu mong muốn như: cực tiểu thời gian hoàn thành, cực tiểu các công việc trễ hạn… Ví dụ: dự án lắp đặt hệ thống máy tính, chế tạo động cơ, dây chuyền lắp ráp ôtô, hệ thống đặt chỗ thuê xe trước, điều độ y tá trong bệnh viện… đều cần đến kỹ thuật điều độ nhầm đạt được mục tiêu tối ưu mong muốn

Chức năng điều độ trong một hệ thống sản xuất hay một tổ chức dịch vụ phải tương tác với nhiều chức năng khác Các sư tương tác này thường thông qua mạng máy tính, nhưng trong nhiều tình huống, sự tương tác giữa điều độ và các chức năng

ra quyết định khác xảy ra trong các buổi họp hay thư báo

2.1.2 Mô hình tổng quát của bài toán Time Tabling

Bài toán Time tabling có hai giai đoạn để giải quyết là giai đoạn thỏa mãn ràng buộc cứng (CSP) và tối ưu ràng buộc mềm (COP)

CSP • Thỏa mãn ràng buộc cứng

COP • Tối ưu hóa ràng buộc mềm

Trang 16

 Bài toán thỏa mãn ràng buộc (Contraint Satisfaction Prolem - CSP) Bài toán CSP được định nghĩa bao gồm:

Lời giải của bài toán là một hàm f (hàm gán trị) quy định cách gán trị

cho toàn bộ các biến sao cho:

- Với mỗi biến v  V, f(v)  Dv

- Với mỗi ràng buộc ((w1,…,wk),Q) thì (f(w1),…, f(wk))  Q

Để giải bài toán thỏa mãn ràng buộc ta có rất nhiều thật toán tìm kiếm, ở đây

ta dùng các giải thuật Local Search

- W= (w 1 ,…,w k ) là một bộ các biến từ tập V

- Q i là các ràng buộc

Miền trị D

Trang 17

 Bài toán tối ưu tổ hợp (Combinatorial Optimization Problem - COP) Bài toán COP được định nghĩa bao gồm bộ 03 tập (S, F, f), trong đó:

- S: tập hữu hạn các lời giải

- F: tập lời giải khả thi

- f: hàm mục tiêu đánh giá chất lượng lời giải

Giải quyết bài toán tối ưu tổ hợp là tìm một lời giải tối ưu toàn cục

ưu bằng các thuật toán tìm kiếm trình bày bên dưới

2.1.3 Các giải thuật lập lịch biểu (Time tabling)

Có rất nhiều giải thuật chuyên về lập lịch biểu giảng dạy đã được nghiên cứu

và phát triển trong nhiều thập kỷ qua, điển hình là các giải thuật:

Tìm kiếm cục bộ (Local Search) dựa vào một ý tưởng tổng quát và đơn

giản Gọi P là một bài toán tối ưu tổ hợp cần giải, và s là lời giải hiện hành giả sử là một lời giải khả thi của P, và có hàm chi phí f(s) Miền lân cận N(s) được định nghĩa cho s, là tập những lời giải láng giềng khả thi s’ của s sao cho từ s ta có thể đạt tới s’ nhờ vào một bước chuyển m Bước chuyển có tác dụng biến đổi s thành ra một lời giải láng giềng Thao tác biến đổi này được lặp cho đến khi hội tụ về một lời giải tốt Lời giải này là lời giải cận tối ưu, mà trong một số bài toán thực tế, không sai biệt gì nhiều với lời giải tối ưu

Trang 18

 Thuật giải leo đồi (Hill-climbing)

Thuật giải leo đồi chính là nền tảng cơ sở của các kỹ thuật tìm kiếm cục bộ Mặc dù đây là Thuật giải đơn giản nhưng lại nó lại rất mạnh và hiệu quả trong việc giải quyết các bài toán CSP lớn Thuật ngữ “leo đồi” (hill-climbing) xuất phát từ cơ chế

“tu chỉnh lập”: ở mỗi bước của việc tìm kiếm, chúng ta sẽ chọn một bước chuyển

mà nó cải thiện giá trị hàm mục tiêu để thực hiện Trong Thuật giải leo đồi, chỉ những bước chuyển cải thiện được hàm chi phí hoặc không làm cho hàm chi phí thay đổi mới được chọn vì vậy việc tìm kiếm sẽ liên tục bước lên vị trí cao hơn cho đến khi nó gặp điều kiện dừng

Hình 2.1: Giải thuật Hill-Climbing

Trang 19

Xung đột tối thiểu (Min-conflict)

Thuật giải xung đột tối thiểu, viết tắt là MC đã được dùng khá phổ biến để giải hệ ràng buộc quá mức Thuật giải MC chọn ngẫu nhiên một biến nào đó dính líu đến một ràng buộc bị vi phạm và rồi chọn một trị từ miền trị của biến này sao

cho tối thiểu hoá số lượng những vị phạm ràng buộc có thể xảy ra Thuật giải conflict thuần túy có thể không thoát ra được điểm tối ưu cục bộ, Thuật giải thường

Min-kết hợp với một chiến lược bước ra ngẫu nhiên (random walk) Với một biến nào đó được chọn, chiến lược bước ra ngẫu nhiên lấy ngẫu nhiên một trị từ miền trị của biến này với xác xuất p, và áp dụng theo Thuật giải MC với xác xuất 1- p Giá trị của thông số p có ảnh hưởng lên hiệu quả của Thuật giải Thuật giải này được gọi là Min-Conflict Random Walk

Hình 2.2: Giải thuật Min-Conflict Random Walk

Procedure MCRD (Min-Conflict Random Walk)

Begin

generate a random configuration s

nb_moves = 0

while f(s) > 0 and nb_moves < max_moves do

if probability p verified then

choose randomly a variable V in conflict choose randomly a variable v’ for V

else

choose randomly a variable V in conflict choose a variable v’ that minimises the number of conflict for V (the current value is chosen only if all the other value increase the number of violated constraints)

end if

if v’ is different from the current value of v then

assign v’ to V nb_moves = nb_moves + 1

end if end while

output(s)

end

Trang 20

 Thuật giải mô phỏng luyện kim (Simulated Annealing)

Mô phỏng luyện kim (SA) là một kỹ thuật tìm kiếm ngẫu nhiên (stochastic

search) mà tỏ ra rất hữu hiệu cho những bài toán tối ưu hóa qui mô lớn Trong kỹ thuật này, nhiệt độ là biến được khởi tạo ở một giá trị cao và dần dần giảm dần xuống trong quá trình tìm kiếm Tại những trị nhiệt độ cao, các bước chuyển được chấp nhận một cách ngẫu nhiên bất luận chúng là bước chuyển có cải thiện hàm chi phí của lời giải hay không Khi nhiệt độ được giảm xuống, xác xuất để chấp nhận một lời giải có cải thiện sẽ tăng lên và xác xuất để chấp nhận một lời giải không cải thiện sẽ giảm xuống Có một số cách thức giảm nhiệt độ dần xuống được dùng

trong một Thuật giải SA, được gọi là lịch biểu làm nguội (cooling schedule)

Hình 2.3: Giải thuật SimulatedAnnealing

Procedure SimulatedAnnealing

Begin

Chọn lời giải ban đầu s0;

Chọn nhiệt độ ban đầu t0 <0;

Chọn hàm thu giảm nhiệt độ α;

repeat

Chọn ngẫu nhiên s N(s); /* s là lời giải láng giềng của s0 */

 = f(s) – F(s0); /* tính sự thay đổi của hàm chi phí */

until số_lần_lặp = nrep; /* nrep: số lần lặp lại ở mỗi nhiệt độ t */

return s0

end

Trang 21

 Thuật giải di truyền (Genetic Algorithm)

Thuật giải di truyền (GA) (Goldberg, 1989) đã tỏ ra khá thành công trong một số những áp dụng GA mượn ý tưởng trong quá trình tiến hóa của sinh vật Ý

tưởng chính của Thuật giải là duy trì một quần thể các lời giải ứng viên Các lời giải ứng viên này sẽ được cho cơ hội riêng lẻ để sản sinh ra con cái tùy thuộc vào độ thích nghi (fitness) của chúng Độ thích nghi được đo bằng một hàm mục tiêu Thuật giải GA đã được áp dụng vào việc giải hệ ràng buộc Việc dùng Thuật giải

GA vào các bài toán tối ưu hóa có ràng buộc làm phát sinh nhiều vấn đề mà các nhà nghiên cứu phải quan tâm giải quyết Một trong những vấn đề quan trọng là làm thế nào để đưa các ràng buộc vào các hàm thích nghi (fitness function) để điều khiển quá trình tìm kiếm một cách đóng đắn

Hình 2.4: Giải thuật di truyền (Genetic Algorithm)

Giải thuật di truyền:

◦ Tạo các cá thể mới bằng cách kết hợp giữa các cá thể trong quần thể

hiện tại bằng cơ chế lai tạo và đột biến

◦ Duy trì số lượng cá thể N cho thế hệ tiếp theo bằng cách loại bỏ một số

Trang 22

 Tìm kiếm Tabu (Tabu Search)

Tìm kiếm Tabu được đề xuất bởi Glover năm 1986 Phương pháp dò tìm

trong không gian lời giải bằng cách di chuyển từ một lời giải s tại lượt lặp t về một lời giải tốt nhất s’ trong tập con N* của miền lân cận N(s) Vì s’ không nhất thiết cải thiện chi phí của s, một cơ chế được đặt ra để ngăn chặn quá trình khỏi lặp vòng

trên một chuỗi các lời giải Một cách để tránh sự lặp vòng là cấm quá trình tìm kiếm quay về những lời giải đã gặp rồi, nhưng làm như vậy đòi hỏi phải lưu trữ khá nhiều thông tin Thay vì làm thế, chỉ một vài thuộc tính của những lời giải đã gặp sẽ được lưu trong danh sách tabu (tabu list) và bất kỳ lời giải nào sở hữu những thuộc tính này sẽ không được xét đến trong  lần lặp Cơ chế này thường được gọi là bộ nhớ ngắn hạn và  được gọi là kỳ hạn tabu Tìm kiếm tabu được phát triển thành nhiều dạng cải tiến như tìm kiếm tabu thích nghi (reactive tabu search) và tìm kiếm tabu với hai danh sách tabu: bộ nhớ ngắn hạn và bộ nhớ dài hạn

Trang 23

Hình 2.5: Giải thuật Tabu Search

Giải thuật Tabu Search:

 Đưa 2 phần từ vừa được điều độ lên vị trí đầu tiên của tabu-list

 Đẩy các phần tử khác trong tabu-list xuống 1 vị trí

 Xóa phần tử cuối cùng của tabu-list

◦ Nếu F(Sc) tốt hơn F(Sbest) thì gán Sbest = Sc

◦ Di chuyển đến Bước 3

Bước 3

◦ k = k+1 ;

◦ Nếu điều kiện dừng = true thì STOP

◦ Ngược lại di chuyển đến Bước 2

Trang 24

Hình 2.6: Pseudo-code Tabu Search

Pseudo-code: Tabu Search

7: if (not containsTabuElements(sCandidate, tabuList))

Trang 25

2.2 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG THÔNG TIN

Phân tích và thiết kế hệ thống thông tin là quá trình tìm hiểu về hệ thống thông tin, từ đó sẽ phân tích các quy trình nghiệp vụ của hệ thống thông tin, xây dựng các thực thể trong hệ thống, thiết kế cơ sở dữ liệu, thiết kế giao diện và cuối cùng là viết phần mềm ứng dụng cho hệ thống

Theo quan điểm của hệ thống thì một hệ thống thông tin quản lý thường có 3 thành phần:

 Thành phần quyết định: thực hiện chức năng ra quyết định

 Thành phần thông tin: thực hiện chức năng tiếp nhận, xử lý, truyền tin và lưu trữ thông tin trong hệ thống

 Thành phần tác nghiệp: là thành phần bảo đảm các hoạt động cơ sở của một

tổ chức

Ví dụ: hệ thống thông tin quản lý trong một xí nghiệp có thành phần quyết định là Ban Giám đốc, thành phần thông tin là các phòng ban chức năng, thành phần tác nghiệp là các phân xưởng, cơ sở sản xuất

Bây giờ chúng ta đi đến một định nghĩa có tính chất mô tả của một hệ thống thông tin:

Hệ thống thông tin của một tổ chức là tập hợp các phương tiện, nhân lực, thông tin và phương pháp xử lý tin nhằm cung cấp các thông tin cho quá trình ra quyết định đúng thời hạn và đủ độ tin cậy

Trong đó:

 Tổ chức: có thể là cơ quan, xí nghiệp, trường học

 Phương tiện (phần cứng-phần mềm): cơ sở vật chất dùng để thu nhập, xử lý, lưu trữ, chuyển tải thông tin trong hệ thống như máy tính, máy in, điện thoại

Trang 26

 Nhân lực: bao gồm tập thể, cá nhân tham gia vào việc thu thập dữ liệu, xử lý, truyền tin, những người phát triển và duy trì hệ thống

 Thông tin (dữ liệu): Các thông tin được sử dụng trong hệ thống, các thông tin

từ môi trường bên ngoài vào hệ thống, các thông tin từ hệ thống ra môi trường bên ngoài Tuy nhiên, khi nói đến thông tin phải nói đến các yếu tố kèm theo nó như:

o Giá mang thông tin: là các phương tiện lưu trữ tin như giấy, đĩa từ, âm thanh

o Kiểu thông tin: thông tin văn bản, âm thanh, hình ảnh, tri thức

o Qui tắc tiếp nhận và hành trình của thông tin

o Vai trò của thông tin trong hoạt động tác nghiệp, trong việc đưa ra quyết định

 Phương pháp xử lý tin: là các tài nguyên phi vật chất như các mô hình toán học, các thuật toán, tri thức của con người trong hệ thống, các phần mềm tin học

Tóm lại, hệ thống thông tin được cấu thành từ 4 yếu tố chính: thông tin, phương pháp xử lý tin, con người và phương tiện

Các tính năng của một HTTT

Thời gian trả lời: được tính bằng khoảng thời gian từ khi thông tin được hệ thống tiếp nhận đến khi hệ thống tác nghiệp nhận được quyết định tương ứng với thông tin đến

 Bản chất của quyết định thuộc loại tự động hóa được hay không

 Kiểu sản phẩm của hệ thống tác nghiệp

 Khối lượng thông tin được xử lý

 Độ phức tạp của dữ liệu

 Độ phức tạp của xử lý

Trang 27

Yêu cầu đối với một phương pháp phân tích thiết kế HTTT

 Quan điểm tiếp cận tổng thể: bằng cách xem mọi bộ phận, dữ liệu, chức năng

là các phần tử trong hệ thống là các đối tượng phải được nghiên cứu Do đó hiểu biết tất cả những điều đó là cần thiết cho phát triển của hệ thống

 Quan điểm top-down: là quan điểm phân tích từ trên xuống theo hướng từ tiếp cận tổng thể đến riêng biệt

 Nhận dạng được các mức trừu tượng và bất biến của hệ thống ứng với chu trình phát triển hệ thống

 Nhận dạng được các thành phần dữ liệu và xử lý của hệ thống

 Định ra được các kết quả cần đạt được cho từng giai đoạn phát triển hệ thống

và các thủ tục cần thiết trong mỗi giai đoạn

2.3 NGÔN NGỮ LẬP TRÌNH C# VÀ SQL SERVER

Ngôn ngữ lập trình C# dựa trên nền tảng của C và C++, C# được tích hợp trong bộ trọn gói Microsoft Visual Studio và được phát triển bởi Microsoft Hiện nay được nhiều lập trình viên chuyên nghiệp sử dụng lập trình vì nó có nhiều đặc tính sau:

 C# là ngôn ngữ đơn giản, ít từ khóa

Trang 28

 C# là ngôn ngữ hiện đại

 C# là ngôn ngữ hướng đối tượng

 C# là ngôn ngữ mạnh mẽ và mềm dẻo

C# là ngôn ngữ lập trình hướng đối tượng thuần túy, nó có các tính năng cơ bản như:

 Kiểm tra an toàn kiểu dữ liệu

 Thu gom rác tự động, giảm gánh nặng cho lập trình viê trong việc viết code thực hiện cấp phát và giải phóng bộ nhớ

 Hỗ trợ các chuẩn hóa theo tổ chức ECMA (European Computer Manufactures Association)

 Hỗ trợ các phương thức và các kiểu dữ liệu chung

 Có khả năng chuyển đổi dễ dàng giữa các ngôn ngữ (Cross Language Support)

 Hỗ trợ giao thức Internet chung

Trang 29

lý do đó, hệ quản trị cơ sở dữ liệu SQL Server cũng được tích hợp trong Microsoft Visual Studio giúp lập trình viên lập trình và quản lý dữ liệu tốt hơn

2.4 CÁC NGHIÊN CỨU LIÊN QUAN

“Công cụ tối ưu hóa xác suất sắp xếp lịch biểu cho trường đại học” của

P Pongcharoen, W Promtet, P Yenradee và C Hicks, tạp chí Elsevier tháng 7 năm 2007: Bài báo nghiên cứu dùng giải thuật di truyền (GA), mô phỏng luyện kim (SA)

và tìm kiếm ngẫu nhiên để viết chương trình sắp xếp lịch biểu Đáp ứng nhu cầu theo sở thích giảng viên, phòng học không bị xung đột So sánh tối ưu giữa hai thuật toán từ đó cho thấy GA hiệu quả hơn SA

Qua bài báo tôi tìm hiểu được phương pháp sử dụng thuật toán GA trong bài toán sắp xếp lịch biểu

 “Sắp xếp lịch biểu đa mục tiêu: kết hợp các sở thích của giảng viên cho

các khóa học và thời gian” của Masood A Badri, Donald L Davis, Donna F

Davis và John Hollingsworth, tạp chí Pergamon tháng 7 năm 1997:

Bài báo nghiên cứu một kỹ thuật sắp xếp giảng viên đa mục tiêu cho lớp học theo thứ tự ưu tiên và thời gian Mô hình sử dụng thủ tục đánh số đơn giản, cốt lõi của thủ tục được hình thành bởi một ma trận, đối với mỗi giảng viên, thứ tự ưu tiên của lớp học được đưa ra trong hàng Ví dụ, nếu một lớp học xuất hiện ở hàng đầu tiên, tất nhiên là có ưu tiên hàng đầu Trong khi đó, nếu một lớp học xuất hiện ở hàng thứ hai, lớp học được gán ưu tiên thứ hai Nó có thể được nhìn thấy từ các bảng có ba hàng cho mỗi lớp học chỉ ra ba mức ưu tiên Thời gian khối ưu tiên được chỉ định bằng cách sử dụng các chữ cái Ví dụ, ưu tiên đầu tiên được ký hiệu bằng chữ "a"; ưu tiên thứ hai được ký hiệu bằng cách sử dụng chữ "b", và các ưu tiên thứ

ba được ký hiệu bằng chữ "c" Một lần nữa, có ba cấp độ ưu tiên cho từng thời gian khối

Qua bài báo tôi tìm hiểu được phương pháp đánh số thứ tự ưu tiên sắp xếp giảng viên và lớp học trong bài toán sắp xếp lịch biểu

Trang 30

“Thiết kế và thực hiện một hệ thống lập lịch sử dụng Tabu Search” của

Ramon Alvarez-Valdes, Enric Crespo, Jose M Tamar , tạp chí Elsevier tháng 1 năm 2001:

Bài báo nghiên cứu kỹ thuật sử dụng Tabu Search để xây dựng một hệ thống lịch biểu giảng dạy qua ba giai đoạn:

- Giai đoạn I: Xây dựng một thời gian biểu ban đầu

- Giai đoạn II: Cải thiện thời gian biểu được xây dựng trong giai đoạn I

- Giai đoạn III: Cải thiện sự phân công phòng

Thuật toán Tabu Search sử dụng ở giai đoạn II là phần quan trọng nhất của nghiên cứu vì nó tối ưu hóa lời giải ban đầu về các ràng buộc mềm

Qua bài báo này, tôi tìm hiểu nhiều về Tabu Search và sử dụng nó cho đề tài của luận văn này

Trang 31

Chương III: PHƯƠNG PHÁP LUẬN 3.1 PHƯƠNG PHÁP NGHIÊN CỨU

Có rất nhiều phường pháp nghiên cứu khoa học: Phương pháp quy nạp (inductive), phương pháp suy diễn (deductive), phương pháp phân tích hệ thống…

Phương pháp quy nạp không yêu cầu lý thuyết trước nghiên cứu, thay vào đó

lý thuyết được phát triển và đúc kết từ nghiên cứu Bất lợi trong cách này là việc bắt đầu tập hợp dữ liệu trong lĩnh vực mới nơi mà chưa có lý thuyết để bắt đầu, bắt đầu nghiên cứu với suy nghĩ mở và không bị ảnh hưởng của các lý thuyết trước đó

Phương pháp suy diễn là phương pháp kiểm tra các giả thuyết, các giả thuyết này được kiểm tra trong số liệu thực tế và có sự lựa chọn để áp dụng lý thuyết vào một mô hình thực tế Phương pháp này thường dùng trong định lượng, có các số liệu như: qua số liệu nhu cầu qua các năm có thể lựa chọn một mô hình dự báo với sai số thấp để áp dụng cho chuỗi dữ liệu

Phương pháp phân tích hệ thống áp dụng phương pháp phân tích từ trên xuống (Top – Down) để tiến hành phân tích hệ thống Chúng ta dùng phương pháp phân tích hệ thống để phân tích các thành phần, yếu tố liên quan đến quá trình hoạt động của toàn thể của một hệ thống Để thực hiện phân tích hệ thống từ trên xuống chúng ta cần thực hiện các công việc sau:

 Phải xác định được mục tiêu chung của hệ thống là gì? Qua đó tiến hành tìm hiểu về tính chất, cách thức hoạt động của các bộ phận có liên quan trong hệ thống, mối quan hệ thực chất giữa các bộ phận cấu thành nên hệ thống là gì, diễn ra như thế nào…

 Thu thập những thông tin và số liệu liên quan đến từng bộ phận để sử dụng trong việc mô phỏng về sau

 Thống kê lại các loại thông tin và dữ liệu đã sử dụng để có thể bổ sung, điều chỉnh khi cần thiết

Trang 32

3.2 PHƯƠNG PHÁP LUẬN

Trong luận văn này, phương pháp luận được chọn là phương pháp phân tích

hệ thống, áp dụng phương pháp phân tích từ trên xuống (Top – Down) để tiến hành phân tích hệ thống Tôi dùng phương pháp phân tích hệ thống để phân tích các thành phần, yếu tố liên quan đến quá trình hoạt động sắp xếp lịch biểu giảng dạy

Theo phương pháp luận này, quy trình nghiên cứu theo các bước sau:

Hình 3.1: Quy trình nghiên cứu

1 NGHIÊN CỨU VỀ TIME TABLING

2 THU THẬP SỐ LIỆU & PHÂN TÍCH TÌNH TRẠNG SẮP LỊCH BIỂU GIẢNG DẠY

4 PHÂN TÍCH & THIẾT KẾ HỆ THỐNG THÔNG

Trang 33

3.2.1 Nghiên cứu về Time Tabling

Trong bước này, cần thiết phải nghiên cứu nhiều tài liệu, các bài báo nghiên cứu khoa học liên quan đến Time Tabling, các giải thuật tìm kiếm Local Search, Tabu Search, Di truyền nhằm tìm kiếm nhiều phương pháp hay trong sắp xếp lịch biểu

3.2.2 Thu thập số liệu & phân tích tình trạng sắp lịch biểu giảng dạy

Việc thu thập số liệu thực tế tại trường cao đẳng thực hành FPT Polytechnic

về sinh viên, giảng viên, phòng họp, lớp học, qui trình sắp xếp lịch biểu… là rất cần thiết cho việc phân tích hiện trạng cũng như phân tích hệ thống thông tin ở bước sau

3.2.3 Lựa chọn thuật giải điều độ

Từ những nghiên cứu về Time Tabling và phân tích thiết kế hệ thống thông tin ở các bước trên, ta lựa chọn thuật giải tối ưu cho từng giai đoạn sắp xếp lịch biểu

3.2.4 Phân tích và thiết kế hệ thống

Sau khi có thông tin từ việc thu thập số liệu thực tế, ta cần thực hiện phân tích hệ thống thông tin một cách chính xác để xây dựng các quy trình nghiệp vụ chính xác, các thực thể trong quy trình, xây dựng mô hình quan hệ dữ liệu, thiết kế

cơ sở dữ liệu cũng như thiết kế các giao diện chính của ứng dụng

3.2.5 Viết code cho ứng dụng

Thực hiện viết code cho ứng dụng sử dụng ngôn ngữ lập trình C# giải quyết các bài toán theo yêu cầu thuật giải đã chọn

Trang 34

3.2.6 Triển khai ứng dụng và kiểm thử

Cài đặt ứng dụng và cho chạy thử với số liệu thu thập được và kiểm tra kết quả, so sánh Sửa chữa ứng dụng nếu có lỗi

3.2.7 Kết luận

Phần cuối của luận văn tôi sẽ đưa ra kết luận về đề tài nghiên cứu, đánh giá điểm mạnh và yếu của ứng dụng từ đó đưa ra các kiến nghị cho tương lai

Trang 35

Chương IV: XÂY DỰNG LỊCH BIỂU GIẢNG DẠY, ÁP DỤNG

CHO TRƯỜNG FPT POLYTECHNIC TP.HCM

4.1 GIỚI THIỆU TRƯỜNG FPT POLYTECHNIC

Ngày 13/07/2010, trường cao đẳng thực hành FPT (FPT Polytechnic), trực thuộc đại học FPT, được thành lập với sứ mệnh cung cấp dịch vụ đào tạo tốt trên các tiêu chí: phù hợp với năng lực học tập của sinh viên; đáp ứng nhu cầu lớn của doanh nghiệp; và cung cấp dịch vụ đào tạo chuẩn mực dựa trên các chuẩn đã được công nhận

Hiện nay, hệ thống FPT Polytechnic đã được thành lập tại 06 thành phố lớn trên cả nước như:

Trang 36

 FPT Polytechnic Quảng Ninh

 FPT Polytechnic Thanh Hóa

Trang 37

giảng dạy cho sinh viên cũng như giảng viên Nguyên nhân chính là hiện tại Phòng Đào Tạo dùng cách sắp xếp lịch đơn giản bằng phương pháp thủ công, sử dụng kinh nghiệm và dùng phần mềm Excel để nhập lịch biểu

Số liệu thực tế thu thập được tại trường FPT Polytechnic TP Hồ Chí Minh sẽ được trình bày bên dưới

Trang 38

Lớp học được phân chia theo 02 nhóm ngành: ngành Kế toán – Kinh tế (Mã

lớp bắt đầu là PBxxyy) và ngành CNTT (Mã lớp bắt đầu là PTxxyy) trong đó:

 xx: là 2 số chỉ khóa học Mỗi năm sẽ có 3 học kỳ (Spring, Summer và Fall), mỗi học kỳ khoảng 4 tháng, nên tuyển sinh được 3 khóa chia ra x.1, x.2 và x.3 Khóa 8.1 là khóa đầu tiên của Fpoly HCM khai giảng tháng 01 năm 2012

 yy: là 2 số chỉ số thứ tự lớp học của khóa xx trong học kỳ sắp thời khóa biểu

Trang 39

4.2.4 Điều kiện và quy trình thực hiện sắp xếp lịch biểu

 Sinh viên phải đóng học phí và mua sách đầy đủ mới được xếp lớp Ưu tiên xếp lớp cho sinh viên đóng học phí đúng hạn (sinh viên có quyền đăng ký Ca học)

 Lớp học tối đa 40 sinh viên và được sắp xếp cố định (không phân nhóm)

 Nếu trên 40 sinh viên phải mở thêm lớp mới, và những sinh viên đóng học phí trễ sẽ không có quyền chọn Ca nữa, phải học theo sự sắp xếp của trường

 Xếp thời khóa biểu dựa vào tài nguyên phòng học

 Xếp thời khóa biểu theo môn và dựa vào số giờ Lý Thuyết và Thực Hành (Sylabus) của môn đó

 Chủ nhiệm bộ môn phân công giảng viên vào các môn của các lớp dựa vào các tiêu chí sau:

o Thời gian đăng ký giảng dạy của giảng viên

o Môn học đăng ký giảng dạy của giảng viên

4.2.5 Số lượng giảng viên:

Theo danh sách đính kèm trong phụ lục A (64 giảng viên), việc sắp xếp giảng việc được xếp bằng tay dẫn đến tình trạng thường xuyên bị đụng giờ do sai

xót của phòng đào tạo và giảng viên báo lịch bận không chính xác

4.2.6 Thời gian thực hiện sắp xếp lịch biểu hiện tại:

Từ 15 – 20 ngày

Trang 40

4.3 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG XÂY DỰNG LỊCH BIỂU GIẢNG DẠY

4.3.1 Yêu cầu của bài toán

Bài toán dùng kỹ thuật điều độ Time Tabling, cụ thể dùng giải thuật chính là Local Search và Tabu Search, nhằm sắp xếp tự động lịch biểu giảng dạy cho trường Fpoly Hồ Chí Minh với các chức năng chính sau:

 Quản lý tài khoản đăng nhập sử dụng

 Quản lý danh mục giảng viên, lớp học, phòng học, môn học, bộ môn, ngành học…

 Bàn làm việc cho phép chuẩn bị thông tin cho học kỳ trước khi sắp xếp thời khóa biểu

 Thực hiện sắp xếp lịch biểu tự động và thủ công (Sắp xếp phòng học cho Lớp-Môn Học và sắp xếp giảng viên vào Lớp-Môn Học)

 Hiển thị lịch biểu

4.3.2 Quy trình sắp xếp lịch biểu

Việc thực hiện sắp xếp lịch biểu theo quy trình như sau:

 Chuẩn bị dữ liệu cho học kỳ bao gồm: chương trình đào tạo, các lớp học theo ngành, định nghĩa các ràng buộc…

 Thực hiện sắp xếp lịch biểu tự động dùng giải thuật Local Search và Tabu Search:

o Sắp xếp Lớp-Môn Học vào phòng sao cho thỏa các ràng buộc

o Sắp xếp Giảng Viên vào Lớp-Môn Học cho thỏa các ràng buộc

 Hiển thị kết quả của lịch biểu

Ngày đăng: 27/01/2021, 10:16

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w