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

Xây dựng hệ hỗ trợ ra quyết định xếp thời khóa biểu trường đại học cao đẳng

118 34 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 118
Dung lượng 8,33 MB

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

Nội dung

NHIỆM VỤ VÀ NỘI DUNG: Xây dựng phần mềm hệ hỗ trợ quyết định để xếp thời khóa biểu trường đại học – cao đẳng với tính năng và nội dung sau: - Dùng phối hợp ngôn ngữ lập trình Visual Bas

Trang 1

ĐẠI HỌC QUỐC GIA TP HCM

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

-

NGUYỄN THỊ GIANG

XÂY DỰNG HỆ HỖ TRỢ RA QUYẾT ĐỊNH

XẾP THỜI KHÓA BIỂU TRƯỜNG ĐẠI HỌC – CAO ĐẲNG

Chuyên ngành : Khoa học Máy tính

Mã số : 60.48.01

LUẬN VĂN THẠC SĨ

TP HỒ CHÍ MINH, tháng 11 năm 2013

Trang 2

CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐẠI HỌC QUỐC GIA TP.HCM

Cán bộ hướng dẫn khoa học : PGS TS LÊ VĂN DỰC

Cán bộ chấm nhận xét 1 : TS VÕ THỊ NGỌC CHÂU

Cán bộ chấm nhận xét 2 : TS PHẠM VĂN CHUNG

Luận văn thạc sĩ được bảo vệ tại trường Đại học Bách khoa, ĐHQG Tp.HCM , ngày 24 tháng 12 năm 2013

Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:

1 PGS TS DƯƠNG TUẤN ANH

2 TS VÕ THỊ NGỌC CHÂU

3 TS PHẠM VĂN CHUNG

4 PGS TS LÊ VĂN DỰC

5 TS HUỲNH TƯỜNG NGUYÊN

Xác nhận của Chủ tịch Hội đồng đánh giá LV và Bộ môn quản lý chuyên ngành

sau khi luận văn đã được sửa chữa (nếu có)

Trang 3

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

_

Tp HCM, ngày tháng 11 năm 2013

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

I TÊN ĐỀ TÀI:

XÂY DỰNG HỆ HỖ TRỢ RA QUYẾT ĐỊNH XẾP THỜI KHÓA BIỂU TRƯỜNG ĐẠI HỌC – CAO ĐẲNG

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

Xây dựng phần mềm hệ hỗ trợ quyết định để xếp thời khóa biểu trường đại học – cao đẳng với tính năng và nội dung sau:

- Dùng phối hợp ngôn ngữ lập trình Visual Basic (.NET), cơ sở dữ liệu

MS.Access và MS.Excel để xây dựng giao diện, giải bài toán tối ưu, lưu trữ dữ liệu và trình bày kết quả

- Dùng giải thuật tô màu đồ thị để chọn tất cả các môn học có thể xếp cùng nhau, phối hợp Heuristic bậc lớn nhất của đỉnh để chọn môn học nào cần xếp trước

- Dùng giải thuật tối ưu cục bộ từng bước để lựa chọn thứ tiết và phòng, với mục tiêu tối ưu chi phí quản lý, thỏa điều kiện về thời gian Giải thuật này cũng

Trang 4

được sử dụng để lựa chọn giáo viên giảng dạy theo 4 phương án: chi phí thấp nhất, rủi ro thấp nhất, rủi ro cao nhất, chất lượng tốt nhất

- Dùng giải thuật tối ưu đa mục tiêu – Giải thuật AHP để quyết định phương án chọn lựa

- Tiến hành thí nghiệm số, nhận xét kết quả

III NGÀY GIAO NHIỆM VỤ: 21/01/2013

IV NGÀY HOÀN THÀNH NHIỆM VỤ: 22/11/2013

V CÁN BỘ HƯỚNG DẪN: PGS TS Lê Văn Dực

Trang 5

i

LỜI CẢM ƠN

Tôi xin gửi lời cảm ơn chân thành và sâu sắc đến PGS.TS Lê Văn Dực, Thầy đã tận tình hướng dẫn và tạo mọi điều kiện để tôi có thể hoàn thành luận văn này

Tôi xin gởi lời cảm ơn đến Quí Thầy Cô, đặc biệt Thầy Cô trong Khoa Khoa Học & Kỹ Thuật Máy Tính, Trường Đại Học Bách Khoa – ĐHQG TP HCM đã tận tình chỉ bảo cho tôi trong suốt thời gian tôi học tập tại đây

Tôi cũng xin gởi lời cảm ơn đến gia đình, bạn bè và đồng nghiệp đã quan tâm, chia sẻ và giúp đỡ cho tôi trong suốt quá trình tôi học tập và làm luận văn tốt nghiệp

Trang 6

ii

TÓM TẮT

Bài toán xếp thời khóa biểu trong trường học nói chung và cho trường đại học – cao đẳng nói riêng là một trong những bài toán xếp lịch Đối với loại bài toán này cần phải tìm ra một phương án xếp lịch thỏa mãn tất cả các ràng buộc cũng như khai thác hiệu quả nguồn tài nguyên hiện có, giảm thiểu thời gian, chi phí thực hiện cũng như tư vấn cho người quản lý nhằm tạo ra một thời khóa biểu phù hợp với tình hình cụ thể của đơn vị

Bài toán xếp thời khóa biểu thuộc lớp các bài toán NP-đầy đủ Complete) Nó có đặc trưng nổi bật là chưa có một lời giải nhanh nào được tìm thấy(http://en.wikipedia.org/wiki/NP-complete) Đây là một bài toán không mới và

(NP-đã có nhiều giải thuật được đưa ra để giải quyết như giải thuật luyện kim, giải thuật

tô màu đồ thị, giải thuật di truyền Mỗi phương pháp có những ưu điểm và nhược điểm riêng Phương pháp được chọn ở đây là kết hợp giải thuật tô màu đồ thị với Heuristic bậc lớn nhất của đỉnh; giải thuật tham lam (Greedy) và bài toán tối ưu đơn mục tiêu; giải thuật AHP và bài toán tối ưu đa mục tiêu

Mục đích của đề tài này là xây dựng hệ hỗ trợ quyết định xếp thời khóa biểu các môn học theo học chế tín chỉ chotrường đại học – cao đẳng Mục tiêu là tìm ra phương án thoả mãn các ràng buộc xếp lịch, giảm chi phí phòng và tìm ra được một phương án xếp giáo viên giúp làm hài hòa giữa chi phí giảng dạy và chất lượng giáo viên Những kết quả mà luận văn đã đạtđược như sau:

- Về phương pháp: kết hợp thành cônggiải thuật tô màu đồ thị với Heuristic bậc lớn nhất của đỉnh để chọn môn học được xếp Kết hợp hiệu quảgiải thuật tham lam với bài toán tối ưu đơn mục tiêu trong việc chọn thứ tiết phòng và giáo viên cho môn học vừa kể trên Kết hợp hợp lý giữa phương pháp phân tích thứ bậc (Analytic Hierarchy Process) hay giải thuật AHP với bài toán tối ưu đa mục tiêu

để hỗ trợquyết định chọn lựa phương án tốt nhất

Trang 7

iii

-Về tính toán: Thiết kế và xây dựng hòan tất hệ hỗ trợ quyết định xếp thời khóa

biểu theo học chế tín chỉ cho trường đại học-cao đẳng, và đã tiến hành thử nghiệm số với kết quả hợp lý trên nhiều bộ dữ liệu khác nhau

Trang 8

iv

ABSTRACT

Problem on schedule arrangement for the school, in general, and for the university-college, in particular, is one of the scheduling problems For this problem, it is necessary to figure out a scheduling plan satisfies all the constraints

as well as the efficient exploitation of existing resources, reducing the time and cost

of implementation, supporting managerto create a schedule in accordance with the specific situation of the agency

Scheduling problem is in the class of NP-complete The most notable characteristic of NP-complete problems is that no fast solution to them is known

(http://en.wikipedia.org/wiki/NP-complete) This problem is not new, and there have been many algorithms given for solving as Annealing algorithm, Graph

Coloring algorithm, Genetic algorithm, etc Each method has its own advantages and disadvantages The method chosen here is the combination of the Graph

Coloring algorithm and the largest degree heuristic; the Greedy algorithm and single-objective optimization problem; the AHP algorithm and multi-objective optimization problem

The purpose of this thesis is to build a decision support system for scheduling credit courses at a university-college It aims to find a way to satisfy scheduling constraints, reduce classroom management costs and find out a way to schedule for teachers to harmonize between cost and quality of teaching staff The obtained results of the thesis are as follows:

- On method: the successful combination of the Graph Coloring algorithm and the

largest degree heuristic to choose a course scheduled The efficientcombination

of the Greedy algorithm and single-objective optimization to choose time slot, classroom and teacher for that course The reasonable combination of the AHP algorithm and multi-objective optimization to support for decision on the selection of best alternative

Trang 9

v

- In computation: Completely design and build a decision support system for

scheduling credit courses at a university-college and implementing the numerical

tests on various data sets with the reasonable results

Trang 10

Ngày 22 tháng 11 năm 2013

Nguyễn Thị Giang

Trang 11

vii

MỤC LỤC

LỜI CẢM ƠN i

TÓM TẮT ii

ABSTRACT iv

LỜI CAM ĐOAN vi

MỤC LỤC vii

DANH MỤC CÁC TỪ VIẾT TẮT xi

DANH MỤC BẢNG BIỂU xii

DANH MỤC HÌNH ẢNH xiii

Chương 1: TỔNG QUAN VỀ ĐỀ TÀI 1

1.1 Giới thiệu 1

1.2 Lý do chọn đề tài 1

1.3 Mục đích nghiên cứu 2

1.4 Phương pháp nghiên cứu 2

1.5 Đánh giá giải pháp 3

1.6 Cấu trúc luận văn 3

Chương 2: TỔNG QUAN CÁC CÔNG TRÌNH LIÊN QUAN 5

2.1 Các giải thuật xếp thời khóa biểu 5

2.1.1 Ứng dụng giải thuật tô màu đồ thị 5

2.1.2 Về quy hoạch toán học 5

2.1.3 Về lập trình ràng buộc 5

2.1.4 Meta-heuristic mô phỏng luyện kim 5

2.1.5 Meta-heuristic tìm kiếm Tabu 5

2.1.6 Meta-heuristic giải thuật di truyền 6

2.2 Các hệ hỗ trợ quyết định xếp thời khóa biểu 6 2.2.1 A GA-based decision support system for professional course scheduling at Ford Service Organisation, Ulrich Derigs and Olaf Jenal,

2005 6

Trang 12

viii

2.2.2 L.R Foulds, D.G Johnson, SlotManager: a microcomputer-based decision support system for university timetabling, Decision

Support Systems 27 (2000) 367 – 381 7

2.2.3 An Optimization-Based Decision Support System for a University Timetabling Problem: An Integrated Constraint and Binary Integer Programming Approach 8

2.2.4 Towards a Generic Object Oriented Decision Support System For University Timetabling: An Interactive Approach 9

2.3 Kết chương 9

Chương 3: CƠ SỞ LÝ THUYẾT 11

3.1 Hệ hỗ trợ quyết định (Decision Support System – DSS) 11

3.1.1 Khái niệm về DSS 11

3.1.2 Những lợi ích chính của DSS 11

3.1.3 Các thành phần của DSS 11

3.1.4 Các bước của quá trình ra quyết định 12

3.2 Giải thuật tô màu đồ thị 12

3.2.1 Giới thiệu giải thuật 12

3.2.2 Xây dựng heuristic bậc lớn nhất của đỉnh 13

3.2.3 Ứng dụng giải thuật tô màu và heuristic bậc lớn nhất của đỉnh13 3.3 Bài toán tối ưu 14

3.5.1 Giới thiệu bài toán tối ưu 14

3.5.2 Phân loại các bài toán tối ưu 14

3.5.3 Các giải thuật cho bài toán tối ưu 15

3.4 Giải thuật tham lam (Greedy) 15

3.4.1 Giới thiệu giải thuật 15

3.4.2 Ứng dụng giải thuật Greedy 18

3.5 Giải thuật tối ưu đa mục tiêu AHP (Analytic Hierachy Process) 19

3.5.1 Giới thiệu 19

3.5.2 Chức năng của AHP 19

3.5.3 Các bước thực hiện giải thuật AHP 19

3.5.4 Một ví dụ minh họa 20

Trang 13

ix

3.6 Kết chương 25

CHƯƠNG 4 MÔ HÌNH BÀI TOÁN 26

4.1 Mô hình bài toán 26

4.1.1. Giới thiệu .26

4.1.2 Các biến chỉ số 26

4.1.3 Các tham số 26

4.1.4 Các ràng buộc 29

4.1.5 Hàm mục tiêu 30

4.2 Các giai đoạn của quy trình xếp lịch 31

4.2.1 Giai đoạn 1 31

4.2.2 Giai đoạn 2 33

4.3 Giải thuật cho từng vấn đề của từng giai đoạn 34

4.3.1 Giai đoạn 1 34

4.3.2 Giai đoạn 2 38

4.4 Mô phỏng giải thuật dựa trên bộ dữ liệu mẫu 39

4.4.1 Cơ sở dữ liệu 39

4.4.2 Dữ liệu dẫn xuất 46

4.4.3 Xếp lịch 47

4.5 Nhận xét kết chương 69

Chương 5: HIỆN THỰC CHƯƠNG TRÌNH 71

5.1 Cơ sở dữ liệu (CSDL) 71

5.1.1 Mô hình quan hệ CSDL 71

5.1.2 Mô tả cơ sở dữ liệu 71

5.2 Hiện thực 74

5.2.1 Cập nhật CSDL 75

5.2.2 Xếp thời khoá biểu 80

5.2.3 Xem thời khóa biểu 83

5.2.4 In thời khoá biểu 85

Chương 6: KẾT QUẢ THỰC NGHIỆM 87

Trang 14

x

6.1 Thực nghiệm giai đoạn xếp lịch 87

6.2.1 Các tham số thực nghiệm 87

6.2.2 Dữ liệu thực nghiệm 87

6.2.3 Kết quả thực nghiệm 87

6.2.4 Nhận xét 89

6.2 Thực nghiệm giai đoạn hỗ trợ ra quyết định trường hợp 1 .89

6.2.1 Tham số thực nghiệm 89

6.2.2 Dữ liệu thực nghiệm 89

6.2.3 Kết quả thực nghiệm 90

6.2.4 Nhận xét 90

6.3 Thực nghiệm giai đoạn hỗ trợ ra quyết định trường hợp 2 90

6.3.1 Tham số thực nghiệm 91

6.3.2 Dữ liệu thực nghiệm 91

6.3.3 Kết quả thực nghiệm 92

6.3.4 Nhận xét 95

7.1 Kết quả đạt được 96

7.2 Hạn chế 96

7.3 Hướng phát triển 97

TÀI LIỆU THAM KHẢO xiii

LÝ LỊCH TRÍCH NGANG xvi

Trang 15

xi

DANH MỤC CÁC TỪ VIẾT TẮT

Cơ sở dữ liệu (CSDL)

Hệ hỗ trợ ra quyết định (Decision Support Systems – DSS)

Thời khóa biểu (TKB)

Giải thuật Analytic Hierachy Process (giải thuật AHP)

Phương án 1 (PA1)

Phương án 2 (PA2)

Phương án 3 (PA3)

Phương án 4 (PA4)

Phương án quyết định (PAqđ)

Lập trình ràng buộc (CSP: Constraint Satisfaction Programming)

Bài toán quy hoạch tuyến tính (BTQHTT)

Bài toán quy hoạch phi tuyến (BTQHPT)

Bài toán quy hoạch lồi (BTQHL)

Bài toán quy hoạch toàn phương (BTQHTP)

Trang 16

xii

DANH MỤC BẢNG BIỂU

Bảng 2 Dữ liệu phòng học 40

Bảng 3 Dữ liệu sinh viên 40

Bảng 4 Dữ liệu sinh viên đăng kí môn học 41

Bảng 5 Dữ liệu giáo viên 44

Bảng 6 Dữ liệu giáo viên – môn học 46

Bảng 7 Độ xung đột giữa các môn học 46

Bảng 8 Tổng sinh viên xung đột, sinh viên đăng kí, số tiết liên tục của từng môn 47 Bảng 9 Kết quả xếp lịch tại giai đoạn 1 .64

Bảng 10 Chi tiết chi phí, chất lượng rủi ro của giáo viên đối với từng môn học 65

Bảng 11 Kết quả sắp xếp giáo viên cho PA1, PA2 .67

Bảng 12 Kết quả sắp xếp giáo viên cho PA3, PA4 .67

Bảng 13 Kết quả tính toán của các phương án theo các tiêu chí 68

Bảng 14 Chuẩn hóa về thang 1 độ ưu tiên của từng phương án trên từng tiêu chí 68 Bảng 15 Ma trận độ ưu tiên của các phương án theo các tiêu chí 69

Bảng 16 Ma trận (3x1) độ ưu tiên của các tiêu chí 69

Bảng 17 Kết quả đánh giá độ ưu tiên của từng phương án 69

Bảng 18 Dữ liệu thực nghiệm thời gian chạy và chi phí phòng – ghế 87

Bảng 19 Kết quả thực nghiệm thời gian chạy và chi phí phòng – ghế 88

Bảng 20 Dữ liệu thực nghiệm chi phí giáo viên 89

Bảng 21 Kết quả thực nghiệm chi phí giáo viên 90

Bảng 22 Ma trận ưu tiên của các phương án theo các tiêu chí 91

Bảng 23 Các bộ giá trị tham số thực nghiệm cho từng tiêu chí .91

Bảng 24 Kết quả tính tóan độ ưu tiên cho trường hợp chi phí biến đổi 92

Bảng 25 Kết quả tính toán độ ưu tiên cho trường hợp chất lượng biến đổi 93

Bảng 26 Kết quả tính toán độ ưu tiên cho trường hợp rủi ro biến đổi 94

Trang 17

xiii

DANH MỤC HÌNH ẢNH

Hình 1 Cây phân cấp AHP 20

Hình 2 Luồng giải thuật của hệ thống 34

Hình 3 Mô hình quan hệ của CSDL 71

Hình 4 Cập nhật thông tin Giáo viên 76

Hình 5 Cập nhật thông tin Môn học 77

Hình 6.Cập nhật thông tin Sinh viên 78

Hình 7 Cập nhật thông tin Phòng 78

Hình 8 Tìm kiếm thông tin đăng ký môn học 79

Hình 9 Cập nhật giáo viên – môn học 80

Hình 10 Kết quả xếp lịch phòng toàn trường 81

Hình 11 Các phương án xếp lịch giáo viên 81

Hình 12.Định nghĩa mục tiêu 82

Hình 13 Đánh giá mục tiêu theo AHP 82

Hình 14 Kết quả đánh giá các phương án 83

Hình 15 Tìm kiếm và xem TKB theo môn học 83

Hình 16 Tìm kiếm và xem TKB theo phòng học 84

Hình 17 Tìm kiếm và xem TKB theo sinh viên 84

Hình 18 Tìm kiếm và xem TKB theo giáo viên 85

Hình 19 TKB chuyển sang Excel 86

Hình 20 Biểu đồ thời gian chạy theo số lớp-môn 88

Hình 21 Biểu đồ chi phí phòng_ghế theo số lớp môn .89

Hình 22 Biểu đồ chi phí giáo viên theo số lớp môn .90

Hình 23 Biểu đồ độ ưu tiên biến đổi theo chi phí 93

Hình 24 Biểu đồ độ ưu tiên biến đổi theo chất lượng 94

Hình 25 Biểu đồ độ ưu tiên biến đổi theo độ rủi ro 95

Trang 18

Trang 1

Chương 1: TỔNG QUAN VỀ ĐỀ TÀI

Chương này giới thiệu chung về đề tài, mục đích nghiên cứu và phương pháp nghiên cứu Cấu trúc nội dung của quyển luận văn được trình bày ở cuối chương

1.1 Giới thiệu

Ngày nay, công nghệ thông tin đã và đang đóng vai trò rất quan trọng trong đời sống kinh tế, xã hội của nhiều quốc gia trên thế giới, và là một phần không thể thiếu trong xã hội năng động, ngày càng hiện đại hóa Vì vậy, việc tin học hóa vào một số lĩnh vực ứng dụng là hoàn toàn phù hợp với xu hướng hiện nay, đặc biệt là

trong lĩnh vực giáo dục

Theo chương trình đào tạo học chế tín chỉ, vào đầu mỗi học kỳ, học viên đăng ký môn học (môn bắt buộc và môn tự chọn) Sau đó quản lý đào tạo sẽ xếp lịch học cho các lớp theo môn học ta gọi là lớp-môn Các lớp ở đây được hình thành từ tập hợp của các sinh viên cùng đăng kí chung mộtmôn học

Với một cơ sở dữ liệu lớn của trường đại học, cao đẳng như hiện nay thì việc xếp lịch bằng tay sẽ tốn rất nhiều sức lực, và tiền bạc Ngòai ra, việc tổ chức xếp lịch để sử dụng nguồn tài nguyên: cán bô giảng dạy và lớp học như thế thì chưa chắc đã đạt được hiệu quả Vì thế, trong luận văn này, sẽ tìm giải pháp khả dĩ giúp cho công việc xếp lịch được tự động và hợp lý hơn.

Vấn đề đặt ra ở đây là tạo ra công cụ hỗ trợ quyết định (DSS) nhằm giúpthực hiện xếp lịch học sao cho giảm thiểu chi phí quản lý, sử dụng hiệu quả nguồntài nguyên, mà chất lượng giảng dạy vẫn được đảm bảo

1.2 Lý do chọn đề tài

Sắp xếp được một thời khóa biểu hợp lý và hiệu quả luôn là một yêu cầu cấp thiết đối với tất cả các cơ sở đào tạo từ bậc tiểu học cho đến trung học, cao đẳng,

Trang 19

Trang 2

đại học Trước đây công việc xếp lịch này thường được thực hiện bằng tay do đó tốn rất nhiều tiền bạc và công sức, tuy nhiên chất lượng của lịch xếp lại không cao, nhiều khi thiên theo ý chủ quan của người xếp lịch, và đặc biệt là tính chất tối ưu của lịch xếp khó có thể đạt được

Hiện nay có không ít phần mềm xếp lịch đã được giới thiệu, tuy nhiên những phần mềm này chủ yếu tập trung vào việc xếp lịch sao cho đáp ứng được yêu cầu về thời gian và không gian mà chưa thật sự chú ý đến chi phí cũng như chất lượng của thời khóa biểu, và đặc biệt ít chú ý đến tính chất tư vấn cho người lập lịch nhằm tạo ra một thời khóa biểu phù hợp với tình hình cụ thể của đơn vị quản

Vì vậy, trong luận văn này sẽ tập trung nghiên cứu thực hiện đề tài : Xây dựng hệ hỗ trợ quyết định nhằm hỗ trợ cho công việc xếp thời khóa biểu trường đại học – cao đẳng

1.4 Phương pháp nghiên cứu

Thu thập, phân tích, nghiên cứu các tài liệu và dữ liệu liên quan đến đề tài

Áp dụng giải thuật tô màu đồ thị kết hợp với heuristic bậc lớn nhất của đỉnh

để xếp môn học

Áp dụng giải thuật tham lam để cố gắng chọn thứ tiết phòng sao cho hạn chế đến mức thấp nhất lịch phải xếp vào buổi tối, thứ 7 và chủ nhật Bên cạnh đó việc chọn phòng đảm bảo mật độ học viên phù hợp với dung lượng chứa của lớp, giảm

Trang 20

Sử dụng giải thuật AHP trong việc giải quyết bài toán tối ưu đa mục tiêu

Sử dụng phối hợp ngôn ngữ lập trình VB.Net, cơ sở dữ liệu MS Access, và

MS Excel để tạo lập chương trình

1.5 Đánh giá giải pháp

Phương pháp được sử dụng trong luận văn không chắc đạt được tối ưu toàn cục, nhưng cho phép người sử dụng có thể chọn lựa phương án xếp lịch khả dĩ gần với lời giải tối ưu

1.6 Cấu trúc luận văn

Nội dung luận văn được trình bày trong các chương sau:

CHƯƠNG 1 MỞ ĐẦU

Chương này giới thiệu về đề tài, mục đích của nghiên cứu và nêu phương pháp nghiên cứu

CHƯƠNG 2 TỔNG QUAN VỀ CÁC CÔNG TRÌNH LIÊN QUAN

Chương này sẽ nêu lên các công trình có liên quan đến đề tài và các nhận xét cá nhân

CHƯƠNG 3 CƠ SỞ LÝ THUYẾT

Chương này sẽ trình bày nội dung cơ sở lý thuyết để giải quyết bài toán: khái niệm liên quan đến hệ hỗ trợ ra quyết định; giải thuật tô màu đồ thị, heuristic bậc lớn nhất của đỉnh; bài toán tối ưu ; giải thuật tham lam; giải thuật AHP CHƯƠNG 4 MÔ HÌNH BÀI TOÁN

Trang 21

Trang 4

Chương này trình bày mô hình bài toán xếp lịch, bao gồm: nội dung bài toán, các ràng buộc, các tham số liên quan và giải thuật dùng để giải quyết bài toán

Mô phỏng giải thuật trên dữ liệu thực tế

CHƯƠNG 5 HIỆN THỰC CHƯƠNG TRÌNH

Chương này sẽ trình bày chi tiết phần hiện thực hệ thống xếp lịch

CHƯƠNG 6 KẾT QUẢ THỰC NGHIỆM

Chương này trình bày kết quả thực nghiệm và cácbiểu đồ dựatrên các tham số thực nghiệm Từ đó rút racác nhận xét và đánh giá

CHƯƠNG 7 TỔNG KẾT ĐÁNH GIÁ

Chương này tổng kết lại những gì đã làm được, những hạn chế và hướng phát triển

Trang 22

Trang 5

Chương 2: TỔNG QUAN CÁC CÔNG TRÌNH

LIÊN QUAN Chương này sẽ trình bày một số công trình liên quan và các nhận xét

2.1 Các giải thuật xếp thời khóa biểu

2.1.1 Ứng dụng giải thuật tô màu đồ thị

Tác giả Carter (1986) đã có một khảo sát về việc ứng dụng giải thuật tô màu

đồ thị để giải quyết bài toán xếp thời khóa biểu, trong đó đã nêu ra rất nhiều công trình của các tác giả khác nhau đã ứng dụng giải thuật tô màu đồ thị cho việc xếp lịch học và lịch thi [8]

2.1.2 Về quy hoạch toán học

Đã có rất nhiều tác giả đã xây dựng các công trình của mình trong đó sử dụng mô hình quy hoạch toán học như là: Birbas, Daskalaki & Housos (1997) [9], Tripathy (1984) [13], Tripathy (1992) [19] và Daskalaki, Birbas

& Housos (2004) [14]

2.1.3 Về lập trình ràng buộc

Omer S Benli & A Reha Botsalı (2004) [15] đã xây dựng một hệ hỗ trợ ra quyết định trong đó kết hợp cả lập trình ràng buộc và quy hoạch toán học để giải quyết bài toán xếp thời khóa biểu Ngoài ra SYLVAIN PIECHOWIAK, CHRISTOPHE KOLSKI (2003) [16] cũng đã sử dụng lập trình ràng buộc để xây dựng một hệ hỗ trợ ra quyết định cho vấn đề xếp thời khóa biểu

2.1.4 Meta-heuristic mô phỏng luyện kim

Johnson (1990) [22] đã sử dụng mô phỏng luyện kim cho mô hình của mình với một tập rất lớn các biến nhị phân để xếp lịch thi

2.1.5 Meta-heuristic tìm kiếm Tabu

Tác giả Quản Thành Thơ và Nguyễn Tuấn Anh của trường cao đẳng Nguyễn Tất Thành đã xây dựng một “HỆ THỐNG RA QUYẾT ĐỊNH SẮP THỜI KHÓA BIỂU THÔNG MINH” [3], ở đây tác giả đã ứng dụng giải thuật

Trang 23

Trang 6

Tabu để xây dựng một Module xếp thời khóa biểu thông minh và một kiến trúc cho phép tích hợp module này vào bất kì hệ thống có sẵn nào

2.1.6 Meta-heuristic giải thuật di truyền

Khi giải thuật di truyền ra đời thì đã có rất nhiều ứng dụng trong việc giải quyết các loại bài toán khác nhau, trong đó có thể áp dụng để giải quyết vấn

đề xếp thời khóa biểu Đã có rất nhiều công trình xếp thời khóa biểu ứng dụng giải thuật di truyền, ta có thể tìm thấy nó trong một khảo sát của các tác giả Corne, Ross & Fang (1994) [23] and Burke & Petrovic (2002) [6] Ngoài ra Ulrich Derigs and Olaf Jenal(2005) [18] cũng đã xây dựng một hệ

hỗ trợ quyết định sử dụng giải thuật di truyền cho vấn đề xếp thời khóa biểu

2.2 Các hệ hỗ trợ quyết định xếp thời khóa biểu

2.2.1 A GA-based decision support system for professional course scheduling at Ford Service Organisation, Ulrich Derigs and Olaf Jenal,

tiếp với web được thực hiện thông qua Internet

 Phương pháp GA có ý nghĩa quan trọng với DSS, nó cho phép người lập lịch có thể tạo ra một lịch (gần) tối ưu, và DSS cũng cho phép anh ta thực hiện được những phân tích What-if và tìm kiếm mục tiêu mà không phải mất

Trang 24

microcomputer- Bài báo này, tác giả giới thiệu một DSS xếp thời khóa biểu trường học với giao diện thân thiện, menu xổ xuống [17] Điều đặc biệt là hệ thống được viết bằng MS Access, môi trường Windows Hệ thống đã cung cấp những tính năng tiện dụng, quan trọng vàcó những ứng dụng theo hướng hệ hỗ trợ

raquyết định

 Mặc dù là DSS chuyên dụng nhưng cũng dễ dàng trở nên phổ dụng vì nó có thể tự do thay đổi những yêu cầu khác nhau cho phù hợpnhu cầu

Slotmanager được chia làm 3 thành phần chính của hệ hỗ trợ ra quyết định:

 Giao diện người dùng

 Cơ sở mô hình

 Cơ sở dữ liệu

 Slotmanager được hiện thực với mạng cục bộ cung cấp truy cập tới các tập tin cơ sở dữ liệu lưu trữ ở trung tâm DSS được phát triển bằng cách xây dựng các prototype ( các phiên bản dạng như là bản nháp, làm ra chỉ để thử nghiệm, sau đó sẽ bỏ đi, cứ tiếp tục như thế và phát triển dần cho đến khi hoàn chỉnh) Đây là cách phổ biến nhất trong quy trình xây dựng một DSS Các yêu cầu thêm vào, các chỉnh sửa được hoàn thiện dần tại mỗi giai đoạn Bằng cách phát triển dần từ các prototype, người dùng thử nghiệm có thể đưa ra được các phản hồi có giá trị đối với việc hoàn thiện DSS

 Hướng tiếp cận của tác giả không phải là việc tạo tự động một thời khóa biểu mà nỗ lực để làm thỏa tất cả các ràng buộc và loại bỏ những phiền toái

đã tồn tại Hơn thế nữa, mục đích của DSS là hỗ trợ người lập lịch tạo ra một thời khóa biểu từ thời điểm ban đầu hoặc hiệu chỉnh thời khóa biểu đã tồn tại, kiểm tra độ xung đột của nó Và một điều quan trọng nữa là DSS hoàn

Trang 25

hỗ trợ tất cả các giai đoạn ra quyết định Nó kết hợp cơ sở dữ liệu, cơ sở mô hình và các kỹ thuật trình bày kết quả Nó chú trọng đến tính năng dễ sử dụng, giao diện thân thiện: dễ dàng điều khiển, linh hoạt và thích nghi Có thể tương tác khádễ dàng với các hệ thống máy tính khác để thực hiện công việc download và upload thông tin

2.2.3 An Optimization-Based Decision Support System for a University Timetabling Problem: An Integrated Constraint and Binary Integer Programming Approach

 Omer S Benli và A Reha Botsalı [15] đã xây dựng một hệ hỗ trợ quyết định xếp thời khóa biểu dựa trên lập trình ràng buộc (CSP) và quy hoạch nguyên nhị phân

 Cấu trúc của bài toán CSP gồm có: tập các biến, mỗi biến có một miền trị tương ứng với nó, tập các ràng buộc trên các biến

 Vì bài toán xếp thời khóa biểu thuộc lớp NP-Complete, khi kích thước của bài toán tăng thì thời gian tính toán tăng nhanh và rất khó để tìm ra lời giải trong thời gian có thể chấp nhận được Để khắc phục vấn đề này, tập những ràng buộc sẽ được chia nhỏ thành những tập con Bấy giờ bài toán xếp thời khóa biểu là sự tổ hợp của những bài toán con để giải quyết vấn đề xếp giờ học cho mỗi ngày, sau đó thực hiện việc xếp phòng học cho giờ học tương ứng Bài toán được giải quyết qua ba giai đoạn: 2 giai đoạn đầu là xây dựng

mô hình cho bài toán và giải quyết việc xếp giờ học cho các môn học bằng lập trình ràng buộc, giai đoạn 3 là xếp phòng học cho lớp học đã xếp bằng quy hoạch nguyên nhị phân

 Hệ thống có 3 thành phần chính đó là:

 Cơ sở mô hình

Trang 26

Trang 9

 Cơ sở dữ liệu

 Giao diện người dùng

 Quan điểm hệ hỗ trợ quyết định nằm ở chỗ: người lập lịch có thể thêm vào hay loại bỏ các ràng buộc từ đó có thể đạt được những thời khóa biểu khác nhau và có thể so sánh chúng để chọn ra thời khóa biểu thích hợp

2.2.4 Towards a Generic Object Oriented Decision Support System For University Timetabling: An Interactive Approach

 Tác giả SYLVAIN PIECHOWIAK và CHRISTOPHE KOLSKI [16] đã sử

dụng lập trình ràng buộc để xây dựng hệ thống Hệ thống là một hệ hỗ trợ ra quyết định đểquản lý thời khóa biểu cho trường đại học với 3 tiêu chí: tiêu chí thứ nhất là xây dựng một công cụ rõ ràng, có thể phát triển trong nhiều cách khác nhau, để đạt được điều này tác giả xây dựng theo hướng tiếp cận hướng đối tượng, định nghĩa những đối tượng chỉ định cho thời khóa biểu; tiêu chí thứ hai là phải xây dựng một mô hìnhcấu trúc tốt cho thời khóa biểu; tiêu chí cuối cùng là tính dễ sử dụng đối vớinhiều đối tượng người dùng khác nhau

 Các bước để xây dựng hệ hỗ trợ ra quyết định gồm: thu thập yêu cầu; phân tích yêu cầu cần thiết cho hệ thống; xây dựng mô hình; mô tả hệ ràng buộc;

 Quan điểm hỗ trợ quyết định của hệ thống theo tác giả nằm ở chỗ: hệ thống được xây dựng phảicó khả năng tương thích cao Nghĩa là người lập lịch vẫn có thể sử dụng thời khóa biểu đã tồn tại ở thời điểm bắt đầu, còn hệ thống chỉ hỗ trợ người lập lịch trong giai đoạn ra quyết định mà thôi Vì thế mà hệ thống này rất linh hoạt, dễ tương thích, hướng mở, giao diên thân thiện và chứa đựng khánhiều thông tin Mục tiêu việc lưu trữ nhiều thông tin là để giữ cho chúng luôn đượcmạch lạc, rõ ràng và cũng được dùngđể giải thích cho những thành phần nhập nhằng ngay khi chúng xuất hiện Những thuộc tính nêu trên cũng chính là những đặc trưng cơ bản của một công cụ hỗ trợ ra quyết định

2.3 Kết chương

 Các hệ hỗ trợ quyết định trên đây chưa đề cập tới vấn đề xếp được lịch ban ngày và vào các thứ trong tuần tránh xếp vào ngày nghỉ, chưa quan tâm tới vấn đề tối thiểu chi phí phòng học

Trang 27

Trang 10

 Chưa quan tâm tới việc tư vấn cho người quản lý để chọn ra một phương án xếp lịch sao cho phù hợp với tình hình tài chính của đơn vị mà vẫn đảm bảo chất lượng giảng dạy

 Chưa kết hợp được vấn đề đơn mục tiêu và đa mục tiêu

Vì vậy mà luận văn này được thực hiện với mong muốn sẽ giải quyết được những vấn đề nêu trên

 Sử dụng giải thuật tô màu đồ thị để chọn những môn có thể xếp cùng giờ với nhau; sử dụng heuristic bậc lớn nhất của đỉnh để chọn ra môn học được xếp trước tránh càng nhiều xung đột càng tốt Sử dụng giải thuật tham lam trong việc chọn phòng, thứ tiết Giải thuật này cũng được sử dụng khi chọn giáo viên nhằm tối ưu mục tiêu theo từng phương án xếp Cuối cùng giải thuật tối

ưu đa mục tiêu AHP được sử dụng để quyết định một phương án

Trang 28

Trang 11

Chương 3: CƠ SỞ LÝ THUYẾT

Chương này sẽ trình bày nội dung cơ sở lý thuyết để giải quyết bài toán: khái niệm liên quan đến hệ hỗ trợ ra quyết định; giải thuật tô màu đồ thị, heuristic

bậc lớn nhất của đỉnh; bài toán tối ưu ; giải thuật tham lam; giải thuật AHP

3.1 Hệ hỗ trợ quyết định (Decision Support System – DSS)

3.1.1 Khái niệm về DSS

DSS là một hệ thống thông tin trên nền máy tính giao tiếp, được phát triển

để hỗ trợ việc giải quyết các vấn đề không có tính cấu trúc nhằm nâng cao hiệu quả của việc thực hiện quyết định

3.1.2 Những lợi ích chính của DSS

- Khả năng hỗ trợ giải quyết các vấn đề phức tạp

- Đáp ứng nhanh với sự thay đổi của vấn đề

- Sự giao tiếp tiện lợi

- Nâng cao hiệu quả công việc

- Tiết kiệm chi phí

3.1.3 Các thành phần của DSS

- Hệ thống con quản lý dữ liệu: bao gồm cơ sở dữ liệu, hệ quản trị cơ sở

dữ liệu, thư mục dữ liệu

- Hệ thống con quản lý mô hình: là một gói phần mềm bao gồm những mô hình tài chính, thống kê, khoa học quản lý, các mô hình định lượng khác nhằm cung cấp khả năng phân tích của hệ thống, và một sự quản lý phần mềm tích hợp

- Hệ thống con quản lý kiến thức: là thành phần dùng để cung cấp những khả năng chuyên môn cần thiết để giải quyết một số khía cạnh của vấn đề

và cung cấp tri thức để nâng cao sự điều hành của các thành phần DSS khác

Trang 29

Trang 12

- Hệ thống giao tiếp người dùng : cung cấp giao diện người dùng và giao tiếp với người sử dụng, bao gồm menu, lệnh, biểu mẫu, ngôn ngữ tự nhiên, thao tác trên đối tượng đồ họa

- Người sử dụng: là nhà quản lý hay người ra quyết định

3.1.4 Các bước của quá trình ra quyết định

- Có hai hướng để giải quyết: hoặc là dùng phương pháp định tính hoặc là dùng phương pháp định lượng Chỉ sử dụng phương pháp định tính để ra quyết định, khi người giải quyết tin tưởng vào quyết định của mình hoặc kinh nghiệm giải quyết các bài toán tương tự trong quá khứ Trong vài trường hợp thì phương pháp này là thích hợp, tuy nhiên trong nhiều trường hợp ta dùng phương pháp định lượng để phục vụ cho quá trình quyết định

- Người ra quyết định dùng phương pháp định lượng khi họ cảm thấy các bài toán đó có thể được giải quyết bởi các kỹ thuật có sẵn đã được xây dựng và áp dụng cho các bài toán tương tự, khi một bài toán lặp lại hoặc khi bài toán rất phức tạp liên quan đến nhiều biến

- Kỹ năng phân tích định lượng thường phải dùng công cụ toán học, cả lý thuyết lẫn ứng dụng, và kinh nghiệm nghề nghiệp Kỹ thuật tối ưu được ứng dụng trong đời sống thực và thường thấy trong các bài toán quản lý phức tạp

- Một bài toán có nhiều kết quả khác nhau và quá trình tìm kết quả tốt nhất được gọi là tối ưu

Toàn bộ thông tin trên đây được tham khảo từ [2]

3.2 Giải thuật tô màu đồ thị

3.2.1 Giới thiệu giải thuật

Input: Đồ thị G(V,E) Trong đó V: là tập hợp các đỉnh của đồ thị G, E là tập hợp các cạnh của đồ thị E

Output: đồ thị G(V,E) có các đỉnh đã được gán màu

Các bước:

Trang 30

(4) Loại khỏi E’ các đỉnh đã tô màu Sắp xếp lại các đỉnh trong É theo thứ tự bậc giảm dần Đặt i := i + 1 và quay lại bước (2)

3.2.2 Xây dựng heuristic bậc lớn nhất của đỉnh

Chúng ta gọi bậc của đỉnh v trong đồ thị vô hướng là số cạnh liên thuộc với

nó và sẽ kí hiệu là d(v)

Các đỉnh được sắp xếp theo bậc Chúng ta sẽ duyệt hết danh sách các đỉnh,

tô càng nhiều đỉnh có thể được vào màu đầu tiên càng tốt, ta loại bỏ đỉnh đó khỏi danh sách, tính toán lại bậc của các đỉnh và sắp xếp lại danh sách, sau đó trở về đầu danh sách tiếp tục cho màu thứ hai, và cứ như vậy cho đến khi tất cả các đỉnh

đều được duyệt hết [4], [5]

3.2.3 Ứng dụng giải thuật tô màu và heuristic bậc lớn nhất của đỉnh

- Ánh xạ bài toán tô màu đồ thị xuống bài toán xếp thời khóa biểu như sau:

 Bậc của đỉnh i: tổng tất cả các trọng số trên cạnh nối giữa đỉnh i đến các đỉnh liền kề với i Ta gọi là tổng_xung _đột(i)

Trang 31

Trang 14

- Thực hiện:

 Bước 1: Chọn môn i mà có tổng_xung_đột(i) là lớn nhất để xếp Tìm thứ l tiết bắt đầu k thích hợp cho i Xếp i vào thứ l, tiết bắt đầu k Cập nhật tổng_xung_đột cho tất cả các môn liền kề với i

 Bước 2: Duyệt tất cả các môn học không liền kề với các môn i đã xếp, để xếp vào thứ l và tiết bắt đầu k (xếp càng nhiều càng tốt nếu có thể), trong quá trình chọn môn học để xếp vào cùng thứ tiết này cũng phải đảm bảo môn được chọn xếp trước phải có tổng_xung_đột lớn nhất Chú ý là sau mỗi môn được xếp lịch thì phải cập nhật

tổng_xung_đột cho tất cả các môn liền kề với môn vừa xếp

 Bước 3: Nếu các môn đã được xếp hết thì giải thuật kết thúc, ngược lại thì sang bước 4:

 Bước 4: Loại tất cả những môn đã được xếp ra khỏi danh sách cần xếp, quay lại Bước 1

Chú ý rằng, thực chất giải thuật tô màu đồ thị cũng dựa trên giải thuật tham lam

3.3 Bài toán tối ưu

3.5.1 Giới thiệu bài toán tối ưu

Tối ưu hóa là một trong những lĩnh vực kinh điển của toán học có ảnh hưởng đến hầu hết các lĩnh vực khoa học – công nghệ và kinh tế – xã hội Trong thực tế, việc tìm giải pháp tối ưu cho một vấn đề nào đó chiếm một vai trò hết sức quan trọng Phương án tối ưu là phương án hợp lý nhất, tốt nhất, tiết kiệm chi phí, tài

nguyên, nguồn lực mà lại cho hiệu quả cao [1]

3.5.2 Phân loại các bài toán tối ưu

Các bài toán tối ưu, cũng còn được gọi là các bài toán quy hoạch toán học, được chia ra thành các lớp sau [1]:

 Bài toán quy hoạch tuyến tính (BTQHTT)

Trang 32

Trang 15

 Bài toán tối ưu phi tuyến hay còn gọi là bài toán quy hoạch phi tuyến (BTQHPT), bao gồm cả bài toán quy hoạch lồi (BTQHL) và bài toán quy hoạch toàn phương (BTQHTP),

 Bài toán tối ưu rời rạc, bài toán tối ưu nguyên và hỗn hợp nguyên

 Bài toán quy hoạch động

 Bài toán quy hoạch đa mục tiêu: không phải chỉ có 1 mục tiêu duy nhất

mà có một số mục tiêu không tương thích với nhau (nghĩa là không có lời giải nào tối ưu theo mọi mục tiêu) cho nên cần dung hòa các mục tiêu theo cách nào hợp lý và hữu hiệu nhất

 Bài toán quy hoạch ngẫu nhiên/mờ

3.5.3 Các giải thuật cho bài toán tối ưu

Các cách tiếp cận cổ điển giải bài toán tối ưu đa mục tiêu được phát triển từ các giải thuật để giải bài toán tối ưu đơn mục tiêu như: Tìm kiếm ngẫu nhiên; Tham lam; Nhánh và cận; Quy hoạch động; Giải thuật di truyền; Mô phỏng luyện kim; Tìm kiếm Tabu, thì bài toán tối ưu đa mục tiêu vẫn còn các phương pháp khác như: phương pháp ràng buộc, phương pháp đo lường trọng số của các ưu tiên ra quyết định (Analytic Hierachy Process), Ở lĩnh vực này vẫn còn rất nhiều vấn đề mở đang được nghiên cứu và phát triển

3.4 Giải thuật tham lam (Greedy)

3.4.1 Giới thiệu giải thuật

Giải thuật tham lam [25] là một thuật toán giải quyết một bài toán để tìm

kiếm lựa chọn tối ưu địa phương ở mỗi bước đi với hy vọng tìm được tối ưu toàn cục Chẳng hạn áp dụng giải thuật tham lam với bài toán hành trình của người bán hàng ta có giải thuật sau: "Ở mỗi bước hãy đi đến thành phố gần thành phố hiện tại nhất"

Tính chất tham lam thể hiện ở chổ : Chúng ta có thể lựa chọn giải pháp nào được cho là tốt nhất (phụ thuộc vào hàm đánh giá) ở thời điểm hiện tại và sau

đó giải bài toán con nảy sinh từ việc thực hiện lựa chọn vừa rồi Thuật toán tiến

Trang 33

Trang 16

triển theo kiểu thực hiện các chọn lựa theo một vòng lặp, cùng lúc đó thu nhỏ bài toán đã cho về một bài toán con nhỏ hơn Đây là sự khác biệt giữa giải thuật tham lam và giải thuật quy hoạch động Giải thuật quy hoạch động duyệt hết các trường hợp và luôn đảm bảo tìm thấy lời giải tối ưu tòan cục Tại mỗi bước của thuật toán, quy hoạch động đưa ra quyết định dựa trên các quyết định của bước trước, và có thể xét lại đường đi của bước trước hướng tới lời giải Trong khi

đó, giải thuật tham lam quyết định sớm và chọn đường đi thuật toán theo quyết định đó, và không bao giờ xét lại các quyết định cũ

Ví dụ: Xét không gian trạng thái được biểu diễn bởi đồ thị sau:

Tìm đường đi ngắn nhất với trạng thái ban đầu là A, trạng thái kết thúc là B Giá trị của hàm đánh giá là các số ghi ở mỗi đỉnh, chỉ được phép đi cùng chiều với cạnh nối 2 đỉnh

Quá trình tìm kiếm Greedy diễn ra như sau:

 Đầu tiên phát triển đỉnh A sinh ra các đỉnh kề là C, D và E Trong ba đỉnh này, đỉnh D có giá trị hàm đánh giá nhỏ nhất, nó được chọn

 Từ D ta có thể phát triển theo F, I Trong hai đỉnh này, đỉnh I có giá trị hàm đánh giá nhỏ nhất, nó được chọn

 Từ I, ta có thể phát triển sang đỉnh B là đích

 Vậy kết quả như sau: A-D-I-B, với tổng giá trị hàm mục tiêu là 20+6+8+0 =

34 Lời giải này không chắc là lời giải tối ưu tòan cục

Trang 34

Trang 17

Còn đối với phương pháp quy họach động [4], [26], thì ta phải triển khai hết tất cả các khả năng có thể có, như sau:

Ta gọi đường đi ngắn nhất đến 1 đỉnh là SP(Shorted Path)

Như vậy để đến đích B từ đỉnh xuất phát A ta có: SP(AB) = min{SP(AF)+0; SP(AI)+0; SP(AG)+0; SP(AH)+0}

Bây giờ ta đi tính đường đi ngắn nhất cho từng bài toán con:

Như vậy trong 4 cấu trúc con ở trên thì SP(AG) được chọn: đường đi ngắn nhất từ A đến B là A >E >G >B có tổng giá trị hàm mục tiêu = 32

SP(AD)+8=20+6+8=34 > Được chọn

SP(AI)+5=34+5=39 SP(AE)+5=20+7+5=32 > Được chọn

SP(AG)+3=32+3=35 > Được chọn

Chọn

Trang 35

Trang 18

Và đáp án là A-E-G-B, với tổng giá trị cực tiểu của hàm mục tiêu là 32 < lời giải của giải thuật tham lam (34), chính là đáp án của phương pháp quy họach động Lời giải này là lời giải tối ưu (cực tiểu) tòan cục

3.4.2 Ứng dụng giải thuật Greedy

 Tại giai đoạn 1 của quá trình xếp lịch, ta xếp môn vào thứ, tiết phòng, với mỗi môn học được chọn xếp ta cứ cố gắng chọn các tiết học ban ngày và các thứ được chọn cũng cố gắng chọn từ thứ 2 đến thứ 6 > chọn thứ l và tiết bắt đầu k tốt nhất trong những tiết còn trống Tiếp theo là việc chọn phòng ta cũng cố gắng chọn những phòng có đủ sức chứa tổng số sinh viên đăng kí học mà có chi phí phòng thấp nhất và số ghế trống trong phòng cũng là ít nhất > đây cũng là phòng “tốt” nhất trong những phòng còn trống

 Tại giai đoạn 2 của quá trình xếp lịch, ứng với 4 phương án xếp giáo viên là phương án 1 – chi phí thấp nhất, phương án 2 – rủi ro thấp nhất, phương án

3 – rủi ro cao nhất, phương án 4 – chất lượng tốt nhất Với mỗi môn học đã được xếp vào phòng thứ tiết tại giai đoạn 1, ta chọn giáo viên sao cho sự lựa chọn đó là tốt nhất Ví dụ, với phương án 1 thì ta chọn giáo viên có khả năng giảng dạy môn học này, đang rãnh vào thời điểm này và có chi phí phải trả cho giáo viên là thấp nhất

 Những mục tiêu mà ta cố gắng để đạt tới cũng chính là giá trị hàm đánh giá

để lựa chọn thứ tự xếp lịch cho các môn học

Giải thuật được minh họa rõ ở phần mô phỏng tại chương 4

Trang 36

- AHP được viết tắt từ Analytic Hierarchy Process ( tiến trình phân tích phân cấp) là một kỹ thuật có cấu trúc dùng để tổ chức và phân tích các quyết định phức tạp Giải pháp này hỗ trợ đa mục tiêu bằng cách tính toán các tiêu chí thành các EigenVector kèm theo việc sử dụng phương pháp phân tích Pairwise matrix để chuyển đổi so sánh định tính thành định lượng

3.5.2 Chức năng của AHP

Bằng cách tổ chức và đánh giá các khả năng theo cấu trúc phân cấp các mục tiêu cần phải thỏa mãn, giải thuật AHP cung cấp một công cụ hiệu quả và được kiểm chứng giúp giải quyếtcác quyết định phức tạp

3.5.3 Các bước thực hiện giải thuật AHP

- Mô hình bài toán thành một cây phân cấp chứa các mục tiêu quyết định, các giải pháp thực hiện và các tiêu chí đánh giá các giải pháp này

- Một cây phân cấp là một hệ thống phân tầng của việc xếp hạng và tổ chức người, vật, các ý tưởng,… trong đó mỗi thành phần của hệ thống phụ thuộc vào một hoặc nhiều các thành phần khác ngoại trừ nút gốc

- Cây phân cấp AHP gồm một mục tiêu tổng quát, một nhóm các lựa chọn hoặc giải pháp để đạt được mục tiêu đó và một nhóm các nhân tố hay tiêu chí liên quan tới các khả năng dẫn đến đích Hơn nữa, các tiêu chí có thể được phân rã ra thành các tiêu chí nhỏ hơn và các tiêu chí nhỏ hơn này có thể được phân rã thành tiêu chí nhỏ hơn nữa,… thành nhiều cấp độ mà vấn

đề yêu cầu Cấp bậc cuối cùng thường bao gồm các phương án có thể lựa chọn

Trang 37

Trang 20

Hình 1 Cây phân cấp AHP

- Khởi tạo giá trị ưu tiên của các nhân tố trong cây phân cấp bằng cách đưa ra một chuỗi đánh giá dựa trên các so sánh đối xứng từng cặp

- Một khi cây phân cấp được hình thành thì những người tham gia phân tích

nó thông qua một chuỗi các so sánh ma trận đối xứng mà dẫn xuất từ các độ

đo bằng số thập phân trên các nút Các tiêu chí được so sánh đối xứng với các tiêu chí tham khảo

- Giải thuật Eigenvector được sử dụng để tính toán trọng số từ ma trận đối xứng, sau đó chuẩn hóa nó

- Nhiệm vụ quan trọng của người ra quyết định là cho trọng số ban đầu của mỗi tiêu chí lựa chọn

- Tổng hợp các đánh giá thành một độ ưu tiên tổng quan cây phân cấp

- Kiểm tra tính chặt chẽ của các đánh giá

- Đi đến quyết định cuối cùng

3.5.4 Một ví dụ minh họa

Quyết định mua một chiếc xe hơi mới dựa trên các tiêu chí: kiểu dáng, độ tin cậy và mức độ tiết kiệm nhiên liệu Ở đây các phương án có thể lựa chọn là : CIVIC COUPLE, SATURN COUPLE, FORD ESCORT, MAZDA MIATA

Trang 38

Trang 21

Đầu tiên AHP đánh giá mức độ ưu tiên của mỗi tiêu chí trên thang điểm

từ 1 đến 9, trong đó 1 là ưu tiên thấp nhất và 9 là ưu tiên cao nhất

(2) Tìm Eigenvector bằng cách tính tổng các dòng rồi sau đó chuẩn hóa

về thang 1 Tức là tính tổng mỗi dòng, lấy tổng mỗi dòng / tổng các dòng cho ta giá trị Eigenvector (chú ý rằng tổng giá trị của Eigenvector bằng 1)

(3) Lặp lại 2 bước trên cho đến khi khác biệt giữa Eigenvector của 2 lần tính toán nhỏ hơn một mức sai số cho phép

Ma trận đầu tiên tương đương với ma trận:

Trang 39

Tính tổng từng dòng ma trận trên ta thu được vector:

Chuẩn hóa vector này (quy đổi về thang 1) bằng cách lấy từng dòng chia cho tổng tất cả các dòng ta thu được Eigenvector sau:

Lặp lại bình phương ma trận mới:

Tiếp tục tính tổng trọng số các dòng và chuẩn hóa để tìm Eigenvector:

0.3194

0.5595

0.1211

72.5000 48.3316

27.6659 15.8336

27.6669 126.6656 10.5551 6.0416 27.6661

115.9995

202.6641

44.2628

0.3196 0.5584 0.1220

Trang 40

Trang 23

Sai số giữa Eigenvector của lần lặp trước với lần lặp này là:

Giả sử mức sai số cho phép là nhỏ hơn 0.0001 thì ta lại tiếp tục thực hiện các bước bình phương ma trận và tính toán Eigenvector và tính lại sai số cho đến khi sai số này nhỏ hơn 0.0001 thì dừng Nhưng thật là may mắn bởi sau một lần lặp nữa ta thấy kết quả đã hội tụ, Eigenvector cuối cùng thu được sẽ cho ta thứ hạng ưu tiên tương đối giữa các tiêu chí

Từ đó ta thu được một cây phân cấp với các trọng số tiêu chí như sau:

Bây giờ ta xét trong từng tiêu chí, ta lại tiếp tục thực hiện phương pháp so sánh từng cặp các phương án để xếp thứ hạng ưu tiên của các phương án tương

tự như đã làm đối với tiêu chí và công việc này được thực hiện dựa vào việc khảo sát thực tế những người có hiểu biết về những dòng xe này dựa trên 3 tiêu

Kiểu dáng 0.3196 > Ưu tiên thứ nhì

Độ tin cậy 0.5584 > Ưu tiên cao nhất

Tiết kiệm nhiên liệu 0.1220 > Ưu tiên thấp nhất

0.3194

0.5595

0.1211

0.3196 0.5584 0.1220

- 0.0002 0.0011

- 0.0009

Ngày đăng: 27/01/2021, 13:09

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