Mục tiêu nghiên cứu Luận văn tập trung nghiên cứu “ Lý thuyết hàng đợi” với mục tiêu chính là hiểu được các thành phần cơ bản của một hệ thống hàng đợi, một số mô hình hàng đợi ứng dụng
Trang 1BO GIAO DUC VA DAO TAO DAI HOC HUE
TRUONG DAI HOC KHOA HOC
MAI KHANH NGUYEN
UNG DUNG LY THUYET HANG DOI VAO VIEC MO PHONG MOT SO MO HINH
HOAT DONG PHUC VU
LUAN VAN THAC SI KHOA HOC
CONG NGHE THONG TIN
Thira Thién Hué, 2020
Trang 2
quan lý các sự kiện theo một mô hình nhiều sự kiện Xảy ra đồng thời và chúng
ta cũng phải xây dựng các hàm ngẫu nhiên sinh các sự kiện Chính vì vậy, đã xuất hiện các công cụ và ngôn ngữ mô phỏng chuyên dụng như GPSS (General
Purpose Simulation System), Petri Nets, MatLab Từ các nhận xét ở trên, Luận
văn được thực hiện để tìm hiểu một số công cụ mô phỏng giúp giải quyết
các bài toán thực tế trên cũng như phục vụ cho mục đích nghiên cứu học tập
về các mô hình hàng đợi Luận văn xin nghiên cứu lý thuyết hàng đợi và ứng dụng vào mô phỏng một số bài toán kiêm soát lưu lượng trong hệ thống phục
vụ, dựa trên một số công cụ mô phỏng Đề tài vì vậy có tên “ỨNG DỤNG LÝ
THUYÉT HÀNG ĐỢI VÀO VIỆC MÔ PHỎNG MỘT SÓ MƠ HÌNH
HOẠT ĐỌNG PHỤC VỤ”
Mục tiêu nghiên cứu
Luận văn tập trung nghiên cứu “ Lý thuyết hàng đợi” với mục tiêu chính
là hiểu được các thành phần cơ bản của một hệ thống hàng đợi, một số mô hình hàng đợi ứng dụng trong thực tế Từ đó, sử dụng cơng cụ tốn học và công cụ mô để đánh giá hoạt động của một số mô hình hàng đợi trong hệ thống phục vụ thực tế
Đối tượng nghiên cứu - Các mô hình hàng đợi
- Mô hình hoạt động trong hệ thống phục vụ
- Công cụ mô phỏng hệ thống hàng đợi
Phương pháp nghiên cứu
- Phương pháp phân tích, tổng hợp: nghiên cứu các tài liệu về hệ thống hàng đợi và tìm hiểu các công cụ mô phỏng hệ thống hàng đợi (như GPSS, Petri
Nets, MatLab) Từ đó, đưa ra các đánh giá hiệu quả của việc sử dụng công cụ
Trang 3LOI CAM DOAN
Tôi xin cam đoan bản luận văn này là công trình nghiên cứu riêng của tôi Tất cả số liệu, kết quả nghiên cứu trong luận văn là trung thực, các kết quả nêu trong luận văn có nguồn gốc rõ ràng và được trích dẫn đầy đủ Tôi xin chịu hoàn toàn trách
nhiệm về Luận văn này
Tác giả
Trang 4LOI CAM ON
Dé hoàn thành luận văn này, tôi xin chân thành cám ơn sự hướng dẫn tận tình
của TS ĐẶNG THANH CHƯƠNG, Khoa Công nghệ thông tin - Dai hoc Khoa hoc Huế, đã tận tình hướng dẫn, giúp đỡ tôi trong suốt thời gian thực hiện và hoàn thành Luận văn tốt nghiệp
Xin chân thành cảm ơn Ban Giám Hiệu, Phòng Quản lý sau đại học, Khoa Công
nghệ Thông tin — Trường Đại học Khoa học - Đại học Huế cùng quý Thầy Cô giảng dạy ngành Khoa học máy tính Trường Đại Học Khoa Học Huế đã truyền đạt những kiến thức bổ ích trong quá trình học tap
Sau cùng tôi xin gởi lời cảm ơn đến lãnh đạo cơ quan, đồng nghiệp, người thân
và bạn bè đã giúp đỡ, khích lệ và hỗ trợ cho tơi hồn thành luận văn này
Thừa Thiên Huế, tháng 5 năm 2020
Tác giả
Mai Khánh Nguyên
Trang 5MUC LUC Trang 9090.69.00 i LOT CAM ON ooo iio coo cooec sees eee seee eet tt ttt tteteveteeeeeeseeteneeeeeteeees ii MỤC LỤC SH HH HH HH HH HH Hiệp ul DANH MỤC CÁC BẢNG 22 22221222112211211121122221222222222 re Vv DANH MỤC CÁC HÌNH VẼ VÀ ĐÒ THỊ 2222 222222122212221221222.2 xe vi DANH MỤC CÁC TỪ VIẾT TẮT -222222225222122211211221122122122.2 e6 vii MỞ ĐẦU 522222 222222121121122112211222222221222222 2222 eeree 1 CHƯƠNG 1 TONG QUAN VE LY THUYET HANG ĐỢI 2-5552 4 1.1 KHAINIEM CHUNG VE HE THONG HANG DOI 0.00 ocsccescesecesteeteees 4 1.2 CAC THANH PHAN CHÍNH CỦA HỆ THÓNG HÀNG ĐỢI 4 1.3 CÁC YÊU TỔ CỦA HỆ THÓNG HÀNG ĐỢI 2222222 2222225222522222e2 5
1.3.1 Luồng yêu cầu đầu vào -©22-22222222221122121122112212212222 ae 6
1.3.2 Hàng đợi 22 2S 21 2221221122112211221122112211211221222222 ae §
1.3.3 Kênh phục VỤ - c2 Sn SH nh HH HH Hà HH Hà HH Hee 8
1.3.4 Luồng yêu cầu đầu ra 22-222 2221222121121121121122112222 2e 8
1.3.5 Các quy luật hoạt động của hệ thống PhỤC Wũxesieeeeeesrrrrrsrrrnrnserernsonrl 8
1.4 KÝ HIỆU KENDALL VÀ CÁC HÀM PHÂN PHÓI -2-522222s2scc2 9
1.5 ĐỊNH LÝ LITTILE ©2-S2212212221221122112212212112212211212122ee 12
1.6 CÁC THÔNG SÓ ĐỘ ĐO HIỆU NĂNG CÂN KHẢO SÁT 13 1⁄7 MỘT SÓ MƠ HÌNH HÀNG ĐỢI CƠ BẢN 2222222222222 2e 14
Lif Hang dot Markov M/ Mythos scccsccsrernevsesrnersnrerenmnetensnnem ness meseesnnees 14 1.7.2 Hàng doi cO Markov M/M/n/01 ou cccececececeeeececeeeneeteeenseneeneeseneenees 15 1.7.3 Hé théng tré Erlang M/M/n — delay va céng thire Erlang C 18
Trang 6TERMINATE OVERLOAD TERMINATE 0 GENERATE V$Time_work ; Thời gian mô phỏng là 8x60x60 giây TERMINATE1 START1 Các bước mơ phỏng bài tốn trên GPSS World: Bước 1: Xác định vẫn đề
Mục đích là xác định được mục tiêu và phạm vi mô phỏng, các yếu tố khác liên
quan đến bài toán Xây dựng yêu cầu đầu vào cho bài toán Xác định cách thức thu
thập dữ liệu và kiểm tra đữ liệu Bước 2: Thiết lập đối tượng
Mục đích thiết lập đanh sách các đối tượng sẽ sử đụng trong mô phỏng dựa trên
đầu vào được xác định ở bước I
Bước 3: Khái niệm hóa và thu thập dữ liệu
Mục đích thiết kế các khái niệm đầu vào và đầu ra của bài toán làm tiêu chuẩn
cho bước xác nhận mô hình sau này Các khái niệm trong quá trình mô phỏng như
tập các đối tượng, thực thể, khối sẽ được định nghĩa trước khi xây dựng mô phỏng Mục đích của quả trình thu thập dữ liệu nhằm thu thập và phân tích dữ liệu đầu vào và đầu ra trong thực tế Từ đó thống kê, phân tích dé lay được số liệu, xác
định hàm phân phối xác suất Trong đó 2 tham số quan trọng cần xác đỉnh được trong bước này:
- Xác định luật phân bố đầu vào (inpuf) của các kênh phục vụ, các yêu cầu theo
quy luật phân phối ngẫu nhiên nào Xác định các biến thời gian gắn liền với đầu vào của các sự kiện Từ đó lựa chọn hàm phân bố tương ứng sử dụng trong chương trình mô phỏng
- Xác định hàm phân phối thời gian phục vụ từ đữ liệu thống kê
Trang 7có phân phối Poisson với lưu lượng xảy đến ø = 5 Từ dữ liệu ban đầu ta có trong 2
năm (tính từ tháng 5 năm 2017 đến hết tháng 4 năm 2019) có 35.520 lượt bệnh nhân
— 48,65 và số ngày điều trị của bệnh nhân trung bình là
đến nhập viện tức  =
8.5 ngày tức = = Trong 2 năm (tính từ tháng 5 năm 2017 đến tháng 4 năm 2019)
có 35.520 lượt bệnh nhân đến nhập viện và số ngày điều trị của bệnh nhân trung bình là 8.5 ngày 3.1.5 Phân tích các biến trong bài toán Tham số vào/ra: - Dòng bệnh nhân trên lộ trình I vào Khu A voi tốc độ trung bình là â¡; = 4,476 (bệnh nhân/ngày): Dòng phục vụ trên lộ trình 1 là tị = 5,80 - Dòng bệnh nhân trên lộ trình 2 vào Khu B với tốc độ trung bình là 2, = 30,101 (bệnh nhân/ngày) Dòng phục vụ trên lộ trình 2 là HM, = 4,59
- Dòng bệnh nhân trén 16 trinh 3 vao Khu C voi tốc độ trung bình la A; = 12,347 (bénh nhan/ngay) Dong phuc vu trén 16 trinh 3 la Hạ = 5,81
- Dòng bệnh nhân trên lộ trình 4 vào Khu D với tốc độ trung bình là 2, = 0,123 (bệnh nhân/ngày) Dòng phục vụ trên lộ trình 4 là tu = 8,65
- Dòng bệnh nhân trên lộ trình 5 vào Khu A sau chuyền sang Khu D với tốc độ trung bình là 4; = 0,098 (bệnh nhân/ngày) Dòng phục vụ trên lộ trình 5 là H, = 8,65
- Dòng bệnh nhân trên lộ trình 6 vào Khu A sau chuyên sang Khu D điều
trị khi bệnh ổn định chuyển về lại Khu A với tốc độ trung bình là 4¿ = 0,117
(bệnh nhân/ngày) Dòng phục vụ trên lộ trình 6 là „ = 8,65
- Dòng bệnh nhân trên lộ trình 7 vào Khu B sau chuyền sang Khu D với tốc
độ trung bình là 4; = 0,098 (bệnh nhân/ngày) Dòng phục vụ trên lộ trình 7 là
Trang 8DANH MỤC CÁC HÌNH VẼ VÀ ĐÒ THỊ
Trang
Hình 1.1 Hệ thống hàng đợi 1 kênh phụC:VỤ szzzszsơisogsarotegnaythttosithopsisnopai 4
Hình 1.2 Mô tả tổng quát hệ thống hàng đợi - 222222 222223222112112122222-e2 5
Hình 1.3 Chuỗi Markov của hàng đợi M/M/1 -52222< 2222222222222 15
Hình 1.4 Mô hình hàng đợi M /M /T/T 55552 SES heo 16
Hình 1.5 Chuỗi Markov của hàng đợi M /M/n/m 55-555252cc2zcSzcxe2 16
Hình 1.6 Lược đồ chuyển trạng thái của hệ thống trễ M/M/n — delay 18 Hình 1.7 Mô hình tổng quát của hàng đợi retrial 22222 c2212221222122122ee 21 Hình 1.8 Mô hình hàng đợi cô điển và mô hình hàng đợi retrial - 22
Hình:2.L dMinh:họa mộf:scgsmenf::.«.‹:s::eoscszsccrcsesoritssEsrsitsonirrsroomiinerrtrrtitiasgat noel 34
Hình 2.2 Mơ hình một chương trình mô phỏng hệ thống hàng đợi đơn giản 40
Hinh 3.1 Dinh ly Little ap dụng cho các bệnh nhân ở bệnh viện 47 Hình 3.2 Thống kê các lộ trình của bệnh nhân . - - + 2-2 ++22£c+szccssssz 48
Hình 3.3 Mô hình mạng hàng đợi của luồng bệnh nhân 2222222222222 51
Hinh 3.4 Luu dé khéi m6 phong ooo cece cece see eseeeeeeesettee eee teteteseceseteteeeteeees 54
Hình 3.5 Biểu đồ tắc nghẽn khi tăng số giường khu điều tri A từ 20 đến 24
giường, B tăng từ 113 đến 116 giường, C từ 55 đến 58 giường, D từ 12 đến l5 giường 222 2222221221122112211221222222 are 55 Hình 3.6 Biểu đồ tắc nghẽn các Khu A, B, C, D khi thay đổi 210 56 Hình 3.7 Biểu đồ tắc nghẽn các Khu A, B, C, D khi thay đổi 211 56
Hình 3.8 Biểu đồ so sánh xác suất tắc nghẽn tinh theo lý thuyết và mô phỏng 58
Hình 3.9 Mơ hình bài tốn một cửa tại trung tâm cccccsissiseirsrerreres 60 Hình 3.10 Mô hình bài toán tại cửa số Ì - 2 22121 2121111211115121 525 yxe 61
Hình 3.11 Lưu đỗ giả thuật hoạt động trung tâm hành chính công 63
Hình 3.12 Lưu để giả thuật hoạt động cửa phục vụ -.-scccccisieierreeree 64
Hình 3.13 Biểu đồ so sánh hiệu suất 222 nnnerrrrrrrie 65
Hình 3.14 Biểu đồ so sánh hệ số sử dụng hệ thống snenuniii geciatonnivessiineanenaesisymencuneiie sesame 66
Hinh 3.15 Biéu dé str dung hé thống khi thay đổi thời gian xử lý hồ sơ 67
Trang 9DANH MUC CAC TU VIET TAT
Từ viết tắt Từ đầy đủ
CEC Current Event Chain
FCFS First Come First Served
FEC Future Event Chain
GPSS General Purpose Simulation System
LCFS Last Come First Served
PS Processor Shared
Trang 10MO DAU
Ly do chon dé tai
Lý thuyết về hệ thống hàng đợi là lý thuyết được nghiên cứu rộng rãi từ
thé ki 20 va duoc ứng dụng trong nhiều lĩnh vực như bưu chính viễn thông,
hàng không, đường sắt, trạm xe buýt, ngân hàng, một cửa điện tử hành chính cơng, kiểm sốt lưu lượng giao thông, đánh giá hiệu năng hệ thống máy tính,
y tế và chăm sóc sức khỏe, kinh doanh mua bán Hàng đợi được hình thành
khi tông số khách hàng (người hoặc đối tượng) yêu cầu địch vụ lớn hơn số lượng địch vụ của nhà cung cấp Trong nhiều hệ thống phục vụ, khách hàng phải dùng chung tài nguyên, phải chờ để được phục vụ và đôi khi bị từ chối phục vụ Lý thuyết hệ thống hàng đợi giúp xác định và tìm các phương án tối
ưu để hệ thống phục vụ tốt nhất và lợi nhuận cao nhất từ đó tính toán tìm giải
pháp phát triển hệ thống đề có thể vừa nâng cao dịch vụ vả vừa tránh lãng phí
do dau tư chưa hợp lý
Trong các hệ thống hàng đợi thường xuyên điễn ra hai quá trình: quá trình phát sinh yêu cầu và quá trình phục vụ yêu cầu ấy Trong quá trình phục vụ của hệ thống, do nhiều nguyên nhân khác nhau, thường xảy ra các tình trạng sau: quá trình phục vụ không đáp ứng được các yêu cầu đặt ra do đó dẫn đến nhiều
yêu cầu phải đợi để được phục vụ; ngược lại, có thé xay ra tinh trang kha nang phuc vu cua hé thống vượt quá yêu cầu sử dụng dịch vụ, kết quả là hệ thống
không được sử dụng hết phương tiện phục vụ dẫn đến lãng phí
Trang 11quan lý các sự kiện theo một mô hình nhiều sự kiện Xảy ra đồng thời và chúng
ta cũng phải xây dựng các hàm ngẫu nhiên sinh các sự kiện Chính vì vậy, đã xuất hiện các công cụ và ngôn ngữ mô phỏng chuyên dụng như GPSS (General
Purpose Simulation System), Petri Nets, MatLab Từ các nhận xét ở trên, Luận
văn được thực hiện để tìm hiểu một số công cụ mô phỏng giúp giải quyết
các bài toán thực tế trên cũng như phục vụ cho mục đích nghiên cứu học tập
về các mô hình hàng đợi Luận văn xin nghiên cứu lý thuyết hàng đợi và ứng dụng vào mô phỏng một số bài toán kiêm soát lưu lượng trong hệ thống phục
vụ, dựa trên một số công cụ mô phỏng Đề tài vì vậy có tên “ỨNG DỤNG LÝ
THUYÉT HÀNG ĐỢI VÀO VIỆC MÔ PHỎNG MỘT SĨ MƠ HÌNH
HOẠT ĐỌNG PHỤC VỤ”
Mục tiêu nghiên cứu
Luận văn tập trung nghiên cứu “ Lý thuyết hàng đợi” với mục tiêu chính
là hiểu được các thành phần cơ bản của một hệ thống hàng đợi, một số mô hình hàng đợi ứng dụng trong thực tế Từ đó, sử dụng cơng cụ tốn học và công cụ mô để đánh giá hoạt động của một số mô hình hàng đợi trong hệ thống phục vụ thực tế
Đối tượng nghiên cứu - Các mô hình hàng đợi
- Mô hình hoạt động trong hệ thống phục vụ
- Công cụ mô phỏng hệ thống hàng đợi
Phương pháp nghiên cứu
- Phương pháp phân tích, tổng hợp: nghiên cứu các tài liệu về hệ thống hàng đợi và tìm hiểu các công cụ mô phỏng hệ thống hàng đợi (như GPSS, Petri
Nets, MatLab) Từ đó, đưa ra các đánh giá hiệu quả của việc sử dụng công cụ
Trang 12- Phương pháp giải tích: Mô hình hóa các mô hình phục vụ thành các mô
hình hàng đợi
- Phương pháp mô phỏng: Cài đặt và chạy mơ phỏng bài tốn dịch vụ dựa trên công cụ mô phỏng
Phạm vi nghiên cứu
Nghiên cứu mơ hình bài tốn kiểm soát lưu lượng trong hệ thống phục vụ trên công cụ mô phỏng
Bồ cục luận văn
Chuong 1: TONG QUAN VE LY THUYET HANG DOI
Chương 1 sé giới thiệu lý thuyết về hệ thống hàng đợi, bao gồm: Vai trò của ly thuyết hàng đợi; Khái niệm chung vé hé théng hang doi (Queuing System) ; Cac
thanh phan chính của hệ thống hàng đợi; Đặc trưng cho hàng đợi; Các tham số đặc trưng cho một hệ thống hàng đợi; Một số phân phối xác suất quan trọng; Một số mô
hình hàng đợi cơ bản
Chương 2: CÔNG CỤ MO PHONG HE THONG HANG DOI
Chương 2 tìm hiểu lý thuyết về công cụ mô phỏng hàng đợi
Chuong 3: MO PHONG HOAT DONG TRONG HE THONG PHUC VU
Phát biểu bài toán và phân tích bài tốn Mơ hình hóa các mô hình phục vụ thành các mô hình hàng đợi Từ bải toán cụ thê mơ phỏng bài tốn bằng công cụ mô phỏng sau đó dánh giá kết quả phân tích và kết quả mô phỏng
Trang 13Chuong 1 TONG QUAN VE LY THUYET HANG DOI
1.1 KHAI NIEM CHUNG VE HE THONG HANG DOI
Trong nhiều hoạt động sản xuất kinh doanh cũng như trong đời sống chúng ta áp dụng các hệ dịch vụ đám đông hay hệ phục vụ công cộng Chúng có tên gọi chung là hé théng hang doi (Queueing model) Chang han cac xi nghiệp sửa chữa máy móc,
các cửa hàng, các bến xe, bến cảng, trạm tổng đài, các hệ thống điện tử viễn thông, dịch vụ Internet, là các ví dụ về hệ thống hàng đợi
Hệ thống hàng đợi là hệ thống có các bộ phận phục vu (services) va cac khach
hang di dén hé théng (Arriving Customers) dé duoc phuc vu, lý thuyết toán học để khảo sát các hệ thống hàng đợi được gọi là lý thuyết phục vụ đám đông (các khách hàng được coi là một đám đông được phục vụ) Trong hệ thống hàng đợi khách hàng
là sự kiện gián đoạn xảy ra tại các thời điểm ngẫu nhiên, vì vậy hệ thống hàng đợi thuộc loại hệ các sự kiện gián đoạn
1.2 CAC THANH PHAN CHÍNH CUA HE THONG HANG DOI +~O OOO oOo fs] oO Khách hàng Khách hàng Khách hàng Kênh phục vụ Khách hàng rời trong hàng đợi được phục vụ khỏi hệ thống Hình 1.1 Hệ thống hàng đợi 1 kênh phục vụ
Trong thực tế có rất nhiều hệ thống có thể được xem là hệ thống hàng đợi Mô
phỏng hệ thống hàng đợi nhằm đánh giá năng lực làm việc của hệ thống, khả năng mắt khách hàng đo phải chờ đợi lâu hoặc không có chỗ đề xếp hàng đợi đến lượt phục
vụ Trên cơ sở những phân tích như vậy, người ta thiết kế hệ thống, chọn số kênh phục vụ, năng suất phục vụ, kích thước hàng đợi v.v nhằm đạt được hiệu quả tối
Trang 14Bang 1.1 Một sé hệ thống hàng đợi thông dụng Hệ thống Kênh phục vụ Khách hàng Ngân hàng Nhân viên ngân hàng Khách hàng Bệnh viện Bác sỹ, y tá Bệnh nhân Hệ thống máy tính CPU, thiết bị vào ra Dữ liệu
Dây chuyền sản xuất Công nhân, máy móc Sản phâm
Cảng hàng không Đường băng, trạm kiểm
soát Máy bay, hành khách Hệ thống liên lạc Đường dây, nhân viên Khách hàng Siêu thị Quay hang, quay trả tiền Khach hang
1.3 CAC YEU TO CUA HE THONG HANG DOI
Hệ thống hàng đợi tổng quát được minh họa trong Hình 1.2
Luỗng lưu lượng đến
(Input Traffic)
=>
Luéng lwu Iwong di
(Output Traffic)
Hình 1.2 Mô ta tổng quát hệ thống hàng đợi
Các yếu tố cơ bản của hệ thống hàng đợi bao gồm [1]: luồng yêu cầu đầu vào, hàng đợi, kênh phục vụ, luồng yêu cầu đầu ra, và các nguyên tắc phục vụ (quy luật
Trang 151.3.1 Luỗồng yêu cầu đầu vào
Luông yêu cầu đầu vào (gọi tắt là dòng vào) là luồng các yêu cầu đến hệ thống
phục vụ, đòi hỏi được thỏa mãn một yêu cầu nào đó Đặc trưng rõ nét nhất của dòng vào là tốc độ đến (arrival rafe), ký hiệu là Â
Luỗng lưu lượng đầu vào, thông thường chúng ta giả sử rằng số yêu cầu đến trong vòng một khoảng thời gian nào đó được ấn định trước (1 phút, 3 phút, 5 phút, 30 phút, .) tuân theo luat phan phéi Poisson P(A)
Ví dụ 1.1 số khách vào siêu thị (trung bình) là 100 người trong 1 giờ Có nghĩa là, số khách vào siêu thị là biến ngẫu nhiên X có phân phối Poisson voi A = 100
Luồng các yêu cầu đầu vào là một yếu tố xuất hiện ngẫu nhiên, chúng có thể ít, có thể nhiều tùy theo thời điểm đến, nó có đặc trưng bởi một số phân bố xác suất nào đó, có hai loại dòng yêu cầu đầu vào thông dụng nhất là:
- Luéng vao tiền định, đặc trưng bởi phân phối tất định D - Luông vào Possion, tuân theo phân phối Possion
Luông vào tiền định
Luỗồng vào tiền định là đòng vào trong đó các yêu cầu đến hệ thống phục vụ tại các thời điểm cách đều nhau một khoảng a
Luỗng vào tiền định là một đại lượng ngẫu nhiên có hàm phân bố xác suất theo
phân phối D
F(x) fh mB S
Onéux<a (1.1)
Luéng vao Poisson
Trang 16(At) a
P[N(t) =k] = me (1.2)
Phan phối Poisson (Poisson distribution)
Là phân phối thường gặp nhất trong các mô hình hàng đợi phân phối Poisson
[10] được đặc trưng cho những quá trình đến và phục vụ hoản toàn ngẫu nhiên, độc
lập Một biến phân phối Poisson X với tham số có phân phối
PŒ =n) = Met, n= 0,1,2,
Trong do:
- P(X =n) la xac suat dé trong khoảng thời gian r có n yêu cầu xuất hiện; - n là số yêu cầu xuất hiện trong khoảng thời gian quan sát r;
- „ là số yêu cầu trung bình xuất hiện trong từng khoảng thời gian quan sát + Phân phối Poisson ta có:
1
Dữ) =e© 69, EQW)=ø”W)=m, =e
Biến ngẫu nhiên tuân có phân phối Poisson khi dòng đến có đủ các đặc điểm của quá trình Poisson Quá trình Poisson có 3 tính chất sau:
- Tính không hậu quả: Dòng yêu cầu có tính không hậu quả có nghĩa là: nếu xác suất xuất hiện một số yêu cầu nào đó trong một khoảng thời gian nhất định không phụ thuộc vào việc đã có bao nhiêu yêu cầu xuất hiện trước khoảng thời gian đó Hay nói khác, số yêu cầu xuất hiện trước và sau thời điểm £ạ nào đó không chịu ảnh hưởng
qua lại lẫn nhau
- Tính đơn nhất Dòng yêu cầu có tính chất đơn nhất có nghĩa là: nếu xét trong khoảng thời gian khá bé thì biến cố “có nhiều hơn một yêu cầu xuất hiện” hầu như không xây ra Về mặt thời gian, chúng ta có thể xem dòng yêu cầu có tính chất đơn nhất nếu thời điểm xuất hiện các yêu cầu không trùng nhau
Trang 17vào giá trị của + và của k chứ không phụ thuộc vào việc khoảng thời gian z này nằm ở vị trí nào trên dòng thời gian Điều này có nghĩa là với những khoảng thời gian + dài bằng nhau thì xác suất xuất hiện k yêu cầu như nhau
1.3.2 Hàng đợi
Hàng đợi (Queue): là nơi mà khách hàng đến mà chưa được phục vụ sẽ được
đưa vào hàng đợi để chờ đến lượt phục vụ Tùy theo số khách hàng đến nhiêu hay ít
(cường độ 2 lớn hay bé), khả năng phục vụ (số kênh phục vụ, thời gian phục vụ) mà
số khách hàng phải đợi trong hàng đợi nhiều hay ít Vì vậy độ dài hàng đợi cũng là một biến ngẫu nhiên
1.3.3 Kênh phục vụ
Là các bộ phận để phục vụ khách hàng, thực hiện các yêu cầu của khách hàng Đặc
điểm quan trọng nhất của kênh phục vụ là thời gian phục vụ 7; và khoảng thời gian giữa các lần phục vụ là những biến ngẫu nhiên Tùy theo hệ thống có một hay nhiều điểm
phục vụ mà người ta gọi là hệ thống một hoặc nhiều kênh phục vụ Đặc trưng cho kênh phục vụ là dòng phục vụ với cường độ phục vụ là (đơn vị thời gian) Cường độ phục vụ là số khách hàng được phục vụ xong trên một đơn vị thời gian
1.3.4 Luồng yêu cầu đầu ra
Luỗồng yêu cầu đầu ra (gọi tắt là đòng ra) là luồng các yêu cầu đi ra khỏi hệ thống, ký hiệu H Có hai loai luéng ra:
- Luồng yêu cầu ra đã được phục vụ xong - Luồng yêu cầu ra không được phục vụ
1.3.5 Các quy luật hoạt động của hệ thống phục vụ
Nguyên tắc phục vụ (hay phương pháp) của hệ thống là cách thức nhận các yêu cầu vào các kênh phục vụ Nguyên tắc phục vụ cho biết trường hợp nào thì yêu cầu
được nhận vào phục vụ và cách thức phân bố các yêu cầu vào các kênh như thế nảo
Đồng thời nguyên tắc phục vụ cũng cho biết trong trường hợp nào yêu cầu bị từ chối
Trang 18Một số nguyên tắc phục vụ thường được áp dụng trong các hệ thống hàng đợi la FIFO FCFS (First Come First Served), LCFS (Last Come First Served), SIRO (Service In Random Order), cO uu tién (Static priorities, Dynamic priorities, Preemption),
1.4 KY HIEU KENDALL VA CAC HAM PHAN PHOI
Một mô hình cơ bản của hệ phục vụ được chỉ ra trong Hình 1.2 Các khách hang đến hệ thống theo một cách ngau nhién Hé théng phuc vu co thé có một hoặc một vài server, mỗi server có khả năng phục vụ một khách hàng tại một thời điểm, thời
gian cần đề phục vụ cho mỗi khách hàng cũng được mô hình như các biến ngẫu nhiên
Theo đó, một số giả thiết như sau:
- Mật độ khách hàng có kích thước không hạn chế, khách hàng thứ Œ„ đến tại
thời điểm r„ Thời gian giữa các lần đến (erarrival time) t„ giữa hai khách hàng
được xác định bằng:
tạ — Tạ — Tạ—1 (1.3)
Giả thiết các thời gian này thường là các biến ngẫu nhiên độc lập và được phân bé déng nhat iid (Independent and Identically destributed) v6i ham phan bé:
A(t) = Prit, < t] q4)
Hàm mật độ xác suất (pdf) la:
_ aA(t) T (1.5)
a(t)
Thời gian phục vụ x„ đối với mỗi khách hàng Œ„ cũng là các biến ngẫu nhiên
iid với hàm phân bố B(£) và hàm pđf tương ứng là b(£)
Các hệ thống hàng đợi không chỉ khác nhau ở các phân bồ thời gian giữa các
lần đến và thời gian phục vụ, mà còn ở các chỉ số như số server, kích thước hàng đợi
Trang 19theo thứ tự: A/S/n/K/B/SD Ý nghĩa của các ký hiệu trong mô tả Kendall được trình bay trong Bảng 1.2 Bảng 1.2 Các thành phần trong ký hiệu Kendall STT | Kýhiệu Ÿ nghĩa
1 A Kí hiệu cho A(£) - hàm phân bố thời gian quá trình đến
2 S Kí hiệu cho S(#) - hàm phân bồ thời gian phục vu
3 n Số lượng kênh phục vụ
3 z Tổng công suất (capacity) của hệ thống hay chỉ là kích thước bộ đệm (số vị trí trong hàng đợi)
5 B Quy mô mật độ: số lượng các công việc đến tại hàng đợi
Nguyên tắc phục vụ: thứ tự mà theo đó các công việc trong hàng xếp được phục vụ Các quy tắc phổ biến nhất là đến trước phục vụ
6 SD trudc FCFS (First Come First Served), dén sau phục vụ trước
LCFS (Last Come First Served), theo vong tron RR(Round
Robin)
Các hàm phân phối xác suất của A va S duoc trình bày ở Bảng 1.3:
Bảng 1.3 Một số hàm phân phối xác suất trong ký hiệu Kendall Viet , 3 STT z Phân phối xác suất Hàm phân phối tắt
Quá trình mũ (là quá A(t) = 1—e7*§ va a(t) = Âe~*!, tham số
Trang 20Qua trinh Erlang bac k as (kut)! A@) =1—e-te 3 Ey = F tham số > 0 4 G_ | Quá trình tổng quát Phân phối tổng quát với | Đặc trưng bởi chuỗi Markov hoặc quá 4 các thời gian vào hệ trình Possion GI Z thông hoặc thời gian phục vụ độc lập nhau Phân phối siêu lũy thừa 7 A@ = À q/Œ— "9 k = AQ =) ai/A 5 Hy, j=i Trong đó: H; > 0,q; >0,j€ {1 k} k 31 j=l Một số hàng đợi cơ bản:
©_ M/M/1 là hàng đợi có quá trình đến theo phân phối Poisson, thời gian phục
vụ theo phân phối hàm mũ, I kênh phục vụ
o M/G/m la hang doi cé m kênh phục vụ, quá trình đến theo phân phối Poisson với thời gian phục vụ phân phối tổng quát
öo_ M/M/r/K/n là hàng đợi có giới hạn số khách hàng đến là n, khoảng thời
gian giữa các lần đến và thời gian phục vụ theo hàm mũ, có r kênh phục vụ và công suất của hệ thống là K
o M/G/8/50/3000/FIFO la hang đợi có quá trình đến theo phân phối
Poisson và thời gian phục vụ theo phân phối hàm mũ, có 8 kênh phục vụ, công suất
Trang 21cua hé théng là 50 (8 đang được phục vụ và 42 trong hang đợi), hệ thống phục vụ
được tối đa là 3000 yêu cầu, nguyên tắc phục vụ là FIFO 1.5 ĐỊNH LÝ LITTLE
Định lý Little là đã được chứng minh là đúng với tất cả các hệ thống hàng đợi
Nó thiết lập mối quan hệ giữa số khách hàng trung bình trong hệ thống, tốc độ đến trung bình và thời gian tồn tại trung bình của khách hàng trong hệ thống trong trạng
thái cân bằng (ổn định)
Chúng ta xem xét một hệ thống hàng đợi, ở đó các khách hàng đến theo một
quá trình ngẫu nhiên Các khách hàng đến hệ thống ở các thời điểm ngẫu nhiên và
chờ được phục vụ, sau khi được phục vụ thì khách hàng sẽ rời khỏi hệ thống
Dat N(t) là số khách hàng trong hệ thống tại thời điểm t, A(t) là số khách hàng
đến trong hệ thống trong khoảng thời gian [0, £], D(£) là số khách hàng rời đi khỏi
hệ thống trong khoảng thời gian [0, £], và T; là thời gian của khách hàng thứ i trong
hệ thống (thời gian phục vụ) Khi đó NŒ) = A(Œ) — D(t) (giả thiết hệ thống trống
tại thời điểm £ = 0 Số khách hàng đến trung binh (average number of arrivals) trong
khoảng thời gian [0, £] là A(t) = ao va gia thiét A = lim A(t) la t6n tai va gidi hạn
Số khách hàng trung bình trong hệ thống được xác định bởi ÑŒ) = nh N(u)du va giả thiét N = lim N(t) cũng tồn tại Tương tự, ta có thời gian trung bình của khách hàng trong hệ thống là T(t) = nan T;
Ta co dinh ly Little nhu sau [8]:
Ñ=AT (16)
Một dạng khác của dinh ly Little có thé xảy ra khi chúng ta giả thiết Ñ = E[N]
(với N là biến ngẫu nhiên trạng thái cân bằng xác định số khách hàng trong hệ thống), va T = E[T], do la:
Trang 22Một dạng tương tự của định lý Little liên quan đến số khách hàng trung bình
trong hàng đợi, được xác định bởi No (N là biến ngau nhiên xác định số khách hàng
trong hàng đợi) và thời gian chờ đợi trung bình W (tức là khoảng thời gian giữa thời điểm khách hàng đến và thời điểm bắt đầu được phục vụ) Trong trường hợp này, dinh ly Little co dang:
No =AW (1.8)
Hoặc giá trị trung bình:
E|No| = AE[W] (1.9) 1.6 CAC THONG SO DO DO HIEU NANG CAN KHAO SAT
Đối với một hệ thống hàng đợi, cần tìm cách để đánh giá được các chỉ số Sau:
- Tốc độ lưu lượng đến (4zrvai rate): tốc độ luồng lưu lượng đến hay số khách hàng đến trung bình trong một khoảng thời gian
- Tốc độ phuc vu (Service rate): tốc độ phục vụ hay số khách hàng trung bình được phục vụ trên một đơn vị thời gian
- Số lượng trung bình của khách hàng trong hệ thống E[N] - Số lượng trung bình của khách hàng trong hàng đợi E[No]
- Thời gian trung bình trong hệ thống E[T]: bao gồm 2 khoảng thời gian: thời gian đợi và thời gian phục vụ Tính toán các tham số hiệu năng này đòi hỏi những giả
thiết thêm dựa trên đặc tính của hệ thống hàng đợi, như: quy tắc phục vụ khách hàng
(giả sử là FCFS), phân bố trạng thái ổn định 7„,k = 0,1, (cũng giống như phân bố xác suất của số lượng khách hàng trong hệ thống)
- Thời gian trung bình trong hàng đợi (thời gian đợi để được phục vụ) E[T|: bằng thời gian trung bình hệ thống trừ đi thời gian phục vụ
- Phân bố của số lượng khách hàng trong hàng đợi, phân bố của số lượng khách hàng trong hệ thống
Trang 23- Xác suất tắc nghẽn PB: Xác suất hệ thống bận hay còn gọi là hệ số sử dụng ctia toan hé théng (Utilization factor)
Lưu ý: Các cách tiếp cận đã trình bày được sử dụng đề phân tích bất kỳ một hệ thống hàng đợi đều phải có các giả thiết sau:
- Quá trình đến là quá trình Poisson, có nghĩa là khoảng thời gian đến được phân bố theo hàm mũ
- Quá trình đến với tốc độ đến thay đôi
- Hệ thống có một hoặc nhiều server
- Thời gian phục vụ có đạng phân bố hàm mũ
- Quá trình đến là độc lập với các quá trình phục vụ và ngược lại - Có hữu hạn (hoặc vô hạn) các vị trí đợi hữu hạn trong hệ thống
Tất cả các giả thiết tạo thành lớp đơn giản nhất của hệ thống hàng đợi
1.7 MỘT SỐ MƠ HÌNH HÀNG ĐỢI CƠ BẢN
1.7.1 Hàng đợi Markov M/M/1
Mô hình hàng đợi 1 kênh phục vụ thỏa mãn: luồng lưu lượng đến có phân bố Poisson (thời gian giữa các lần đến theo phân bố mã) với tốc độ đến y, thời gian phục
vụ có phân bố mũ (tốc độ phục vụ theo tham số H) kích thước hàng đợi không giới
Trang 24Luoc dé trang thai: “ NT ““ (a) NCT” sử (2) NÓ sỬ (3) eee Mee i) (+) Na _`¬ ees ue ow “Wes ` H ụ ụ 8 Hình 1.3 Chuỗi Markov của hàng đợi M/M/1 Tất cả các tốc độ đến và tốc độ phục vụ đều là y và u, một cách tương ứng
Tr„: Xác suất trạng thái Ổn định của hệ thống trong trạng thái m (n € Ñ), được xác định 7r„ := lim P,(t), trong dé P,(t) là xác suất (time-dependent) có n khách hàng trong hệ thống tại thời điểm t n Ty = (9) Ty = p"Mo (1.11) Do 7r„ là xác suât nên ta có điêu kiện chuân hóa: = = = rẻ" > y\" 1 >> ` " = > (5 = Ty 7 = = = H "+ 1-Ƒ n=0 n=1 n=1 n=0 ụ
Do đó, 7rạ = 1 — =1-p: Xac suất Ổn định trạng thái 0
p: Mat do (tai) luu luong p = y/u
Tóm lại, ta có các xác suất trạng thái cân bằng của chuỗi Markov M/M/1 là: Tl, = (1—p)p” n= 1,2,
(1.12)
7ạ = (1— p)
1.7.2 Hang doi c6 Markov M/M/n/n
Là hàng đợi có quá trình đến Poisson với tốc độ Â, thời gian phục vụ có phân
phối mũ tốc độ phục vụ H với t server và trạng thái hệ thống (kích thước bộ đệm) bị
giới hạn bởi số lượng ïn
Trang 25Queueing System Servers Input Source oO 9000 oS 6580 Ø Queue Oo QO O00) Arrive 2 Depart CÓO OR 1 OOOOCOOOOOOOOI——>» 0 2000) 200090 H—3_—] 90009 : O Loa
Hình 1.4 Mô hình hang doi M/M/n/n
Luu long xay dén (offered traffic): p = 2
Luu long duge mang (carried traffic): bang p.(1 — PB), trong dé PB la xac suất tắc nghẽn của hệ thống Lưu lượng tran (overflow traffic): con được gọi là lưu luong mat (Jost traffic) cé thể được tính như sau:
Lưu lượng mất = Lưu lượng đến — lưu lượng được mang
Do đó, đối với mơ hình M/M/nđn, lưu lượng tràn bằng: Ptr =p — p.(1— PB) = p.PB Lược đồ chuyền trạng thái và hệ phương trình trạng thái cân bằng: Ap " ac Ww et An Đụ 3 Ca KTS TS SntMt Km”
Hình 1.5 Chuỗi Markov của hàng đợi M/M/n/n
Trang 26ngược lại, khi một khách hàng hoàn thành phục vụ của nó và rời khỏi hệ thống, trạng
thai i sé được chuyên về trạng thai i — 1
Dat P = Po, Po, ., P, la xac suat trang thai can bang cua hé théng, voi P; la xac suất trạng thái ổn định (steady-state) cua trang thai i (0 <i< n) Theo lược đỗ trạng
thái như Hình 1.5, ta có hệ phương trình trạng thái cân bằng sau:
Ao
P, — „10
MP; = ÂoPo _ AoAy
2uP2 + ApPy = (Ay +Ho) Pt Po = 22 Po
3uPs + ÄA+P = (Â;+2u )P; Jig ays (1.13) wa 3 — "21,3 T0 3! u3 An—1P 1 = nuP, # vay — ÂgÂ1¿ Ân_ lạ =————— Lọ ml Với ràng buộc: n y P.=1 (1.14) i=0 Kết hợp (1.13) và (1.14), ta có công thức tổng quát sau: ÂoÂ1Â; ¡_¡ (1.15) A= Tae Pe i= 1,2,3, ,n Trong d6 Py dugc tinh nhu sau:
Ag AgAy AgAqAy toca} (1.16)
P.=l1+— fh + " + 2u2 feet mi O——- —-—— niạm
Khi xem các tốc độ đến là như nhau, bằng A, ta co cac gia tri:
pi er (1.17)
P-Py , 1=1,2,3,.4n vớLPụ »
L:
Trang 27Khi đó, xác suất tắc nghẽn được tính theo công thức Erlzng — B như sau: (1.18)
PB = E(n,p)=Pạ=—.— ,i=123, ,n
í=0 TT
1.7.3 Hệ thống trễ Erlang M/M/n — delay và công thức Erlang €
Xét hệ thống hàng đợi M/M/n (n > 1) với quả trình đến Poisson (M), thời
gian phục vụ theo phân bố hàm mũ (M), số server là n, và không giới hạn vị trí trong hàng đợi Trạng thái của hệ thống được xác định là tổng số khách hàng trong hệ thống (có thé đang được phục vụ hoặc đợi trong hàng đợi) Chúng †a cũng sẽ xem xét đến các xác suất trạng thái cân bằng của hệ thống, ta thiết lập lược đồ chuyên trạng thái
như ở Hình 1.6
6) Z m— | (“1u ` m 2)
Hình 1.6 Lược đồ chuyên trạng thái của hệ thống trễ M/M/n — delay
Với p = y/u là lưu lượng xây dén (offered traffic), ta coError! Reference
Trang 28Gia tri 7ạ thu được:
mì " ¬] ø<1 (120)
=0
Từ (1.19) và (1.20) ta có được giá trị của các xác suất trạng thái cân bằng 7r;,í > 0
Quá trình Poisson đến ổn định (sfafionary) là độc lập với trạng thái của hệ thống,
và do đó xác suất mà một khách hàng đến bất kỳ phải đợi trong hàng đợi là bằng với tỷ lệ thời gian mà tất cả các server đã bị chiếm giữ (PASTA-property: Poisson Arrivals See Time Averages) Thoi gian doi trung binh (mean waiting time) là một
bién ngau nhién, ky hiéu W, ta co xac suất dé bién W > 0 là: E (ø) = PIW >0) =3: = 2n\P — _ An nŸm - mm, =m- a itn n—p (1.21) a Công thức Erlang C (1917): a n mỊ Ex nlp) = A — = ae Ú <n (1.22) 1+ 5+ a+ +G@opt aap
Xác suất trễ chi phụ thuộc theo ø = a không phụ thuộc riêng lẻ các giá trị y va w Công thức Erlang C còn được gọi là công thức Erlang đối với hệ thống
Một khách hàng khi đến hệ thống có thể được phục vụ ngay hoặc được đưa
vào hàng đợi Công thức Erlang C cho biết xác suất mà một khách hàng đến hệ
thống bị xếp vào hàng đợi (do số kênh phục vụ bị giới hạn và đã bị chiếm giữ hết),
còn được ký hiệu là C(n, ø) Xác suất mà một khách hàng được phục vụ ngay do đó có giả trị là:
Šụ„ = 1— Ezu(0) = Trọ + TH + +! + yy
Trang 29Lưu lượng được mang Y (carried traffic) bang lwong xay dén (offered traffic) p và không có khách hàng nào bị từ chối:
n co n co co
y=) iem+t yy m1 » "tia =) my
i=1 i=n+1 mY isn , ¡=0 (123)
Y
Y=—-= Lu p
Độ dài hàng đợi là biến ngẫu nhiên L Xác suất mà có một khách hàng trong
hàng đợi tại một thời điểm ngẫu nhiên là: 3 p P(L>0}= ) m=m: ne 1-8 i=n+1 n p p L0 0n T3 Tm = >" Eon(p), (1.24) ở đây ta có sử dụng công thức (1.22)
1.8 MO HINH HANG DOI RETRIAL
Các mô hình tốn thất (bao gồm mô hình tôn thất Erlang) cho rằng một khách
hàng đến khu vực dịch vụ có thể sẽ bị tắc nghẽn hoàn toàn và mất mãi mãi Mặt khác, trong các mô hình có khả năng chờ vô hạn, một khách hàng chờ đợi cho đến khi được
phục vụ Tuy nhiên, có nhiều tình huống khác nhau trong cuộc sống hàng ngày của chúng ta và trong các hệ thống khác nhau nơi khách hàng bị tắc nghẽn không sẵn
sang cho doi va ho tạm thời rời khỏi khu vực dịch vụ trong một thời gian nhưng sẽ
thử lại sau một thời gian ngẫu nhiên Một khách hàng bị tắc nghẽn được cho là đang ở trong một phòng chờ ảo gọi là orbi trước khi thử lại để sử dụng lại máy chủ Những tình huống này được gọi là mô hình hàng đợi Retrial [5]
Trang 30retrial (hay ta cũng có thể gọi là hàng đợi với khách hàng trở lại hoặc yêu cau lai dịch vụ) được ra đời để giải quyết những hạn chế này orbit Khác hàng quay lai dén dich vu Tram phục vụ | Hàng ®
- |J_ đợi Khách hàng rời khỏi hệ thống
Hệ thống Rol sau khi được phục vụ
bận
Đến dịch vụ
Hình 1.7 Mô hình tổng quát của hàng đợi retrial
Từ Hình 1.7 ta có thể thấy rằng hàng đợi Retrial có thể xem như một dạng đặc
biệt của hệ thống các mô hình hàng đợi Đặc trưng hàng đợi Retrial được mô tả như sau: Một khách hàng đến nhận dịch vụ và nhận thấy tất cả các trạm phục vụ đều đang bận, khách hàng này sẽ tạm thời rời khỏi khu dịch vụ nhưng sau đó một khoảng thời
gian ngẫu nhiên sẽ quay trở lại để yêu cầu được phục vụ Hàng đợi retrial là một đạng mô hình hàng đợi với khu vực dành riêng cho các khách hàng sau khi xảy ra tắc nghẽn
ma ta sé gọi là orbit, ở đây ta cũng có thể xem orbit như là một hàng đợi, khác với
mô hình hàng đợi thông thường mỗi khách hàng trong orbit là độc lập với các khách hàng khác còn lại trong orbit Ngoài ra, một đặc điểm quan trọng mà chúng ta thường hay xét đến trong các bài toán đó là tính kiên nhẫn của khách hàng (/mpaiem), khi
một khách hàng mới đến hệ thống lần đầu hoặc quay tro lai tu orbit va nhan thay hé
thống tắc nghẽn khi đó sẽ quay lai orbit voi xác suat 1 — pim(0 < Pim <1) hodc sẽ
roi khoi hé thong mai mi voi xac suat Pin
Trang 31Khu vực hàng đợi fon / y2 Hế NG Khách hàng đến Nhận địch vụ| \ Khách hàng rời đi ( Khách hàng Ƒ———> — — — š | —————ờy NN / \ Khu vực địch vụ Mô hình hàng đợi cổ điển “mm XS Khách hàng 5 Orbit 4 quay lai hệ /⁄⁄ ^——— thông Z TNG A N | Z7 Khách hàng đến | Khách hàng rời đi (Khách hàng ———————>' | : | a —*> |Khach hang roi di mãi mãi | Khu vực địch vụ
Mô hình hàng đợi retrial
Hình 1.8 Mô hình hàng đợi cô điển và mô hình hàng đợi retrial
1.9 MẠNG HÀNG ĐỢI
Trong thực tế, nhiều hệ thống không được mô hình hóa bằng các hệ thống hàng đợi đơn mà phải mô hình hóa bằng một tập hợp gồm nhiều hệ thống hàng đợi Một
ví dụ cụ thể nhất chính là mạng Internet, nơi mà các bộ định tuyến Và các tuyến truyền
dẫn có thê được mô hình hóa bằng các hệ thống hàng đợi đơn và mạng sẽ là tập hợp
của nhiều hàng đợi đơn Mạng hàng đợi có thể coi là một tập hợp của nhiều nút, mỗi nút có thể coi như một hệ thống hàng đợi đơn, mỗi hàng đợi đơn này có thể có một
hay nhiều trạm phục vụ Các yêu cầu đi vào hệ thống mạng hàng đợi đơn này có thé
có một số nút xác định và đi ra ở một nút khác
Trong trường hợp tổng quát nhất, các yêu cầu sẽ đến hệ thống và được phục vụ ở một trạm nào đó Sau đó được phục vụ xong thì các yêu cầu này có thể chuyển sang
nút khác để được phục vụ tiếp, hoặc cũng có thể quay lại chính nút vừa rồi để được phục vụ lại, hoặc rời khói hệ thống mạng hàng đợi này
Trang 32Chúng ta sẽ xem xét các hệ thống mạng hàng đợi thỏa mãn điều kiện sau: - Tiến trình đến nút í từ bên ngoài tuân theo luật phân phối Poisson với tốc độ
đến la yi
- Tại mỗi nút i, tốc độ phục vụ của các trạm không phụ thuộc nhau và tuân theo
phân bố mũ với tốc độ là mu
- Xác suất để một yêu cầu sau khi được phục vụ xong tại nut i và chuyển sang nút j là 7r;; Xác suất này 7; ¡ không phụ thuộc vào trạng thái của hệ thống mạng hàng
đợi Trong đó í = 1,2,3, -::.k, j = 0,1,-::, k và Tr¡o là xác suất để một yêu cầu sau khi được phục vụ tại nút í rời khỏi hệ thống
Hệ thống mạng hàng đợi, khi thỏa mản các điều kiện trên được gọi là mạng
Jackson Người ta phân biệt mạng hàng đợi thành hai loại: mạng Jackson mở và mạng Jackson dong Mang Jackson đóng là mạng có các giá trị ÿ¿ = 0 và 7r;o = 0, nghĩa là hệ thống mạng hàng đợi này không có yêu cầu nào đi vào và cũng không có yêu cầu nào đi ra khỏi hệ thống Ngược lại mạng Jackson đóng là mạng có các giá trị y; # 0 va Tig # 0, nghia là có thể có các yêu cầu đi vào hệ thống và rời khỏi hệ thống
1.10 TIỂU KẾT CHƯƠNG 1
Chương 1 nêu lên các khái niệm chung về hàng đợi, các thành phần chính của hệ thống hàng đợi, các yếu tổ của hệ thống hàng đợi, ký hiệu Kendall cùng với công thức Little để đánh giá thời gian phục vụ trung bình của hệ thống hàng đợi Các thông số đo hiệu năng cần khảo sát, tìm hiểu một số mô hình hàng đợi M/M/1., M/M/n/n M/M/n, M/M/c voi yéu té retrial, tim hiéu mang hang doi Day chinh la cdc kién
thức cơ sở để Luận văn thực hiện các Chương 2 và Chương 3
Trang 33Chuong 2 CONG CU MO PHONG HE THONG HANG DOI
Mô phỏng cho phép nghiên cứu và thử nghiệm các tương tác của một hệ thống phức tạp (hoặc một hệ thống con) [3] Những thay đổi về thông tin, tổ chức và môi trường có thê được mô phỏng và những thay đổi đối với hành hoạt của mô hình có thê được quan sát Kiến quả thu được bằng cách nghiên cứu mô hình có thê có giá trị lớn và có thể dùng cải tiến hệ thống đang được mô phỏng Thay đổi đầu vào mô phỏng có thể giúp hiểu cách các thành phần nhất định của hệ thống tương tác
Một số ưu, nhược điểm của mô phỏng sau:
Ưu điểm: Có thể kiểm tra quy trình vận hành, luồng thông tin, các quy tắc mà
không làm gián đoạn hoạt động liên tục của một hệ thống thực; Thiết kế phan cứng mới, hệ thống vật lý, hệ thống vận hành có thể kiểm tra được mà không cần đến tài
nguyên hệ thống thực; Có thê đưa ra các giả thiết cách thức và lý do cho một số hiện tượng có thể kiểm tra tính khả thi; có cái nhìn sâu rộng tầm quan trọng các tham số
và các biến; Mô phỏng có thể giúp hiểu được cách thức một hệ thống hoạt động,
Nhược điểm: Xây dựng mô hình đòi hỏi thiết kế mô phỏng phức tạp; Kết quả mô phỏng có thể khó diễn giải; Mô hình hóa và phân tích có thể tốn thời gian và tốn kém; Mô phỏng đôi khi được sử dụng khi các mô hình phân tích có sẵn và thậm chí
tốt hơn
Trang 34Trong phần tiếp theo của Chương này, luận văn sẽ giới thiệu ngôn ngữ mô phỏng GPSS, là một trong các ngôn ngữ mô phỏng hàng đợi thông dụng và sẽ được sử dụng trong Chương 3 của Luận văn này
2.1 NGON NGU MO PHONG GPSS
2.1.1 Giới thiệu về ngôn ngữ GPSS
GPSS (General Purpose Simulafion Sysfem) [7j thuộc loại ngôn ngữ lập trình hướng đổi tượng, một ngôn ngữ mô phỏng các hệ thống phức tạp rời rac, được nhận
định là hiệu quả nhất hiện nay GPSS dự đoán các hành vi trong tương lai của các hệ
thống hàng đợi Các đối tượng của ngôn ngữ này được sử đụng tương tự như các
thành phan chuẩn của một hệ thống hàng đợi, như là các yêu cầu, các thiết bị phục
vụ, hàng đợi Với tập hợp đầy đủ các thành phần như vậy cho phép xây dựng các mô phỏng phức tạp mà vẫn đảm bảo tính logic hệ thống hàng đợi
Khoảng thập niên 1960, Geoffrey Gordon ở hãng IBM đã phát triển ngôn ngữ GPSS Sự ra đời của GPSS đã góp phần đưa ra các khái niệm quan trọng cho tất cả các ngôn ngữ mô phỏng, là loại ngôn ngữ mô phỏng các sự kiện rời rạc [2].[7] GPSS World là một dạng khác của GPSS dành cho máy tính cá nhân (GPSS/PC personal computer)
GPSS/PC là phiên bản cài đặt đầu tiên cho máy tính cá nhân được giới thiệu
vào năm 1984 và GPSS World là một hậu duệ trực tiếp của GPSS/PC Hiện nay,
GPSS World chạy trên môi trường Windows và đã được mở rộng khả năng của nó trong môi trường liên mạng Internet toàn cầu
GPSS World còn tích hợp một hàm thư viện các hàm phân phối xác suất, đem
lại sự tiện dụng cho người viết chương trình mô phỏng Điểm mạnh của GPSS World là trong suốt và cung cấp hình ảnh động trực quan giúp người sử dụng có thể nhận biết được sự thay đổi của hệ thống theo thời gian và cung cấp các công cụ ngắt để có thê dừng mô phỏng tại bất kỳ thời điểm nào nhằm ghi nhận lại các chỉ số cần thiết của mô phỏng
Trang 352.1.1.1 Những điểm nỗi bật của ngôn ngữ GPSS
- Là ngôn ngữ hướng đối tượng, bao gồm các đối tượng: Model Objects, Simulation Objects, Report Objects, Text Objects, chạy được trên nhiều nên tảng hệ
điều hành khác nhau như Windows, Linux
- Hình ảnh hóa các mô hình, từ đó giúp người dùng hiểu rõ, nắm bắt mô hình
tốt nhất có thể, đồng thời sao lưu lại dưới dạng hình ảnh thống kê dễ hiểu
- Khả năng tương tác của nó giúp người dùng dễ dàng tìm hiểu và vận hành các bài tốn mơ phỏng nhờ giao diện thân thiện
- Tích hợp các cơ sở phân tích đữ liệu để tính toán các thành phần trong hệ thống
một cách trực quan
- Là công cụ có thể làm nhiều việc khác nhau tại một thời điểm (multitask)
và hoạt động trên cơ sở sử dụng bộ nhớ ảo, do đó không tốn kém tải nguyên của máy tính
2.1.1.2 Các ứng dụng của công cụ mô phỏng GP.SS World
- Các hệ thống chăm sóc khách hàng như Call Center, dịch vụ 1080, 1900,
- Công nghệ máy tính, mạng: sắp xếp và xử lý các câu lệnh trong máy tính, thiết kế các trung tâm điều phối dữ liệu mạng,
- Thương mại: các hệ thống bán hàng tự động, các quây thanh toán tiền trong
siêu thị
- Thực tế đời sống: bãi đậu xe ô tô, quản lý bay tại sân bay,
2.1.2 Các thực thể trong GPSS
GPSS được xây dựng xung quanh các khái niệm trừu tượng gọi là các thực thể
(Entities) Cac thuc thé GPSS la những đối tượng trừu tượng tổn tại trong một mô phỏng Một mô phỏng là tập hợp tất cả các thực thể Các loại thực thể nổi bật nhất là
Trang 36Các thực thể GPSS được đánh số, GPSS World thường gán một giá trị số duy nhất lớn hơn hoặc bằng 10.000 vào tên của thực thể Khi ta gọi tên của thực thể, giá trị số được gán với thực thể sẽ được sử dụng để tìm ra thực thể Thông thường, chúng
ta không tự động gán số cho tên thực thê Tuy nhiên, lệnh EQU có thể giúp chúng ta
thực hiện diéu này
Hầu hết các thực thể GPSS được tạo ra tự động khi cần thiết Tuy nhiên, một số thực thể phải được khai báo cụ thể trước khi sử dụng chúng như: các biến, các thực
thé lưu trữ, ma trận, bảng, các hàm vì đối tượng mô phỏng phải biết trước kích thước của các biến này đề cấp phát bộ nhớ tương ứng
Trong GPSS, các đối tượng có thể được phân chia ra 6 kiểu: Các thực thể động, các thực thể khối, các thực thể thiết bị, các thực thể tĩnh, các thực thể tính toán, các thực thể lưu trữ và các thực thể nhóm
2.1.2.1 Các thực thể động
Các thực thể động là các giao tác (Transacfions) có thể xem như là một “yêu cẩu”,
hay một “sự kién” trong hé théng phuc vu dam đông Trong quá trình mô phỏng, các giao tác duoc “tao ra” (ing với loại “yêu cầu đến”) và “kết thúc” (ứng với loại “yêu cầu di)” Méi giao tac trong qua trình mô phỏng luôn thuộc vào một khối (BLOCK) xác định nào đó, nhưng hầu hết các khối đều có thể chứa cùng lúc nhiều giao tác khác
nhau Mỗi giao tac dich chuyén vào một khối, sau đó đến khối tiếp theo, cứ thế cho
đến khi nó bị xóa bỏ, tức là rơi vào trạng thái TERAINATED hoặc quá trình mô phỏng dừng Các giao tác hiếm khi phải nằm đợi trong một khối để chờ thỏa mãn các điều kiện để chuyển sang khối tiếp theo Thời gian giao tác lưu lại trong mỗi khối là đại lượng ngẫu nhiên, được xác định bởi tính chất của hệ thống và trong GPSS cho phép sinh ra các đại lượng này theo các quy luật khác nhau
2.1.2.2 Các thực thể khối
Các thực thể khéi (Block Entities) 1a thành phần cấu trúc cơ bản của một chương
trình mô phỏng GPSS Chúng ta có thể coi một mô hình GPSS là một sơ đồ của các khối,
Trang 37mỗi loại khối tương ứng với một hành động trong mô phỏng Mỗi giao tac trong mô hình chỉ nằm trong một khối, nhưng hầu hết các khối có thê chứa nhiều giao tác
2.1.2.3 Các thực thể thiết bị
Một thiết bị là một thực thể có một số thuộc tính, trong đó quan trọng nhất là thuộc tính trạng thái của thiết bị, đó là quyền sở hữu Các thực thể thuộc về thiết bị (Facility Entities) tương tự như các máy phục vụ và các thiết bị khác của hệ thống thực Một thiết
bị có thể được sở hữu bởi một giao tác duy nhất, trong trường hợp này thiết bị ở trạng
thái là “bẩn”, ngược lại thiết bị đó không được sở hữu bởi một giao tác nào thì nó ở trạng
thái là “ranh” Khong giống như thực thể lưu trit (Storage Entities), một thiết bị không thé được giải phóng bởi một giao tác mà không sở hữu nó Giao tác có quyển sở hữu một
thiết bị bằng cách nhập vào thành công khối SEIZE hoặc khối PREEMPT Nếu một
giao tác không được cấp quyền sở hữu, nó sẽ được chuyên đến vị trí cuối cùng trên chuỗi giao tac thiét bi (Facility Transaction Chain)
Mỗi thiết bị có một vài dòng chờ cho các giao tác đang chờ một thiết bị, đó là:
PENDING chuỗi đang treo chờ quyết định: là danh sách các giao tác chờ
CHAIN đợi đến khi có lệnh PREEMPTY thiết bị, trong chế độ ngất
(Interrupt Mode)
INTERRUPT chuỗi ngắt: là danh sách các giao tác đã chiếm được quyền sở
CHAIN hữu thiết bị đó
DELAY chuỗi trễ: là chuối ưu tiên của các giao tác đang chờ quyển sở
CHAIN hữu thiết bị đó
RETRY chuỗi thử lại: là danh sách các giao tác đang chờ đợi sự thay
CHAIN đổi trạng thái trên thiết bị
Có thê sử dụng một số khối với thực thể thiết bị như:
e Khối SEIZE chiếm quyền sở hữu của thiết bị
Trang 38e Khối PREEMPT chiếm quyền sở hữu của thiết bị, có thé thay thế có chủ sở
hữu hiện tại
e Khối RETURN giải phóng quyền sở hữu của thiết bị
e Khối FAVAIL đặt thiết bị ở trạng thái rảnh e Khối FƯNAVAIL đặt thiết bị ở trạng thái bận 2.1.2.4 Các thực thể tĩnh
Các thực thể tĩnh được sử dụng để thu thập và xử lý các dữ liệu thống kê về hoạt
động của mô hình, gồm có:
- Các thực thể hang doi (Queue Entities) méi déi trong kiéu hang doi dam bao
việc thu thập và xử lý dữ liệu về các giao tác được giữ lại tại một điểm nào đó trong mô
hình, ví dụ trước khi vào thiết bị đơn kênh
- Các thực thể bảng (7aBïe Emities): được sử dụng đê nhận các phân phối xác suất
của các đại lượng ngẫu nhiên, ví dụ lưu lại thời gian chờ đợi của các giao tác trong mô
hình mô phỏng
2.1.2.5 Các thực thể tính toán
Các thực thể tính toán bao gồm:
- Cac bién (Variable Entities): sé hoc và logic
- Cac ham (Function Entities) dang để tính toán các đại lượng nào đó được cho bởi
các biêu thức số học hay logic hoặc ở dạng bảng
- Thực thể ma trận là một mảng các phan tử, mỗi phan tử chứa giá trị Kích
thước của mảng bị giới hạn bởi yêu cầu bộ nhớ tối đa trong trang mô phỏng khi thiết lập mô hình
2.1.2.6 Các thực thể lưu trữ và các thực thể nhóm
Các thực thể lưu trữ đảm bảo việc lưu trữ trong bộ nhớ của máy tính các đại lượng
riêng biệt được sử dụng trong mô hình Các đối tượng kiêu này gồm có các thực thể giá trị lưu (Savevalue Eifies), các thực thé ma tran (Matrix Entities)
Trang 39Các đối tượng thuộc nhóm gồm có:
Numeric Group Entities — là tập hợp các giá trị số, các khối có thể sử dụng khi
làm việc với các thực thể nhóm số gồm có: JOIN đưa một giả trị vào một Numeric Group;
REMOVE lấy một giá trị ra
Transaction Group Entities — cac thực thé nhom giao tac, cac thuc thể chuỗi
người sử dụng (Userehain Enfifies) Trong đó, các thực thê chuỗi người sử dụng được dùng để thiết lập các hàng đợi với các quy tắc khác nhau, nêu như không sử dụng quy tic co ban FIFO
2.1.3 Cấu trúc lệnh khi lập trình GPSS
Cấu trúc lệnh trên công cụ GPSS Word có dạng tổng quát như sau:
Label BlockType Operands ; Comment
Trong do:
Label — Nhin: cac lénh riéng 1é trong chương trình có thể có nhãn để các lệnh khác có thể tham chiếu đến Nếu trong chương trình không có những tham chiếu này thì thành phần nhãn này của câu lệnh không nhất thiết phải có
BlockType — Kiêu khối: chứa từ khóa (tên của câu lệnh) chỉ một chức năng hay
một hàm cụ thể nào đó mà câu lệnh này sẽ thực hiện Đây là thành phần bắt buộc của một câu lệnh
Operands — Các toán hạng: Từ khóa Blockfype sẽ quy định các tham số, các toán hạng thực thi tương ứng Những trường toán hạng này tùy thuộc vào kiêu của
hàm hay lệnh mà có thể chứa đến 7 toán hạng sắp xếp theo một trình tự nhất định và được kí hiệu bởi những chữ cái đầu tiên trong bang chit cai Latin A, B, C, D, E, F, G
Các tốn hạng này khơng nhất thiết phải thiết lập, việc thiết lập giá trị của chúng có
thể theo mặc định và phụ thuộc vào từng lệnh cụ thể
Trang 40Vi du 2.1: Chương trình mô phỏng hàng đợi M/M/n
Server STORAGE4; có 4 server phục vụ
GENERATE (Exponential (1,0,0.25)) ; phát sinh luồng sự kiện đơn giản nhất có
;giá trị thời gian trung bình bằng 0.25 s⁄sự kiện
QUEUE Queuel ; sự kiện đến được đưa vào hàng đợi có tên “Queue17 ENTER Server ; sw kién đến chiếm một trong các server
DEPART Queue1 ; đánh đấu thời điểm chùm đi ra khỏi hàng doi “Queue1” ADVANCE (Exponential (1,0,0.2)); gian xt ly transact của thiết bị theo luật phân ;bố Poisson với tốc độ phục vụ là 0.2 s/⁄sự kiện
LEAVE Server ; giai phóng một trong các server sau khi kiện đã rời khỏi TERMINATE ; đưa kiện ra khỏi mô hình và giảm bộ đếm hoàn thành GENERATE 300; khởi động chạy mô hình với 300s
TERMINATE 1; kết thúc
START 1; khởi động chạy mô phỏng
2.1.4 Các khối cơ bản trong GPSS
Tập hợp các câu lệnh khối (Block) được sử dụng trong GPSS World có thể chia thành 4 nhóm với hơn 50 câu lệnh:
- Nhóm các khối liên quan đến các giao tác (Transacfions)
- Nhóm các khối liên quan đến các đối tượng thuộc về thiết bị (Facilities)
- Nhóm các khối dé thu thập dữ liệu tĩnh
- Nhóm các khối đề điều chỉnh “đường dịch chuyên” của các giao tác trong mô hình mô phỏng
Sau đây sẽ trình bày chi tiết về một số khối cơ bản trong mỗi nhóm: