Tải bản đầy đủ (.pdf) (78 trang)

Nghiên cứu công cụ mô phỏng GPSS và petri net cho bài toán hệ thống hàng đợi

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.11 MB, 78 trang )

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

Lê Xuân Hiếu

NGHIÊN CỨU
CÔNG CỤ MÔ PHỎNG GPSS VÀ PETRI NET
CHO BÀI TOÁN HỆ THỐNG HÀNG ĐỢI

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

Thái Nguyên - 2013

Số hóa bởi Trung tâm Học liệu





ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

Lê Xuân Hiếu

NGHIÊN CỨU
CÔNG CỤ MÔ PHỎNG GPSS VÀ PETRI NET
CHO BÀI TOÁN HỆ THỐNG HÀNG ĐỢI
Chuyên ngành: Khoa học máy tính
Mã số: 60 48 01

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH



NGƯỜI HƯỚNG DẪN KHOA HỌC

TS. Lê Quang Minh

Thái Nguyên - 2013


LỜI CAM ĐOAN
Tôi xin cam đoan luận văn này là do tôi thực hiện được hoàn thành trên cơ
sở tìm kiếm, thu thập, nghiên cứu, tổng hợp phần lý thuyết và các phương pháp
kĩ thuật được trình bày bằng văn bản trong nước và trên thế giới. Mọi tài liệu
tham khảo đều được nêu ở phần cuối của luận văn. Luận văn này hoàn toàn
mới và không sao chép nguyên bản từ bất kì một nguồn tài liệu nào khác.
Nếu có gì sai sót, tôi xin chịu mọi trách nhiệm./.

HỌC VIÊN

Lê Xuân Hiếu


i
MỤC LỤC
ĐẶT VẤN ĐỀ ........................................................................................................ 1
Chương 1. TỔNG QUAN VỀ HỆ THỐNG HÀNG ĐỢI .................................. 3
1.1. Vai trò của hệ thống hàng đợi. ......................................................................... 3
1.2. Mô tả hệ thống hàng đợi................................................................................... 3
1.2.1. Mô hình hóa một hệ thống hàng đợi ..................................................... 5
1.2.2. Công thức Little ..................................................................................... 7
1.2.3. Hệ thống hàng đợi theo cách viết của Kendall và các phân phối liên

quan ................................................................................................................. 7
1.3. Các yếu tố của hệ thống hàng đợi. ................................................................. 10
1.3.1. Dòng yêu cầu đầu vào ......................................................................... 10
1.3.2. Hàng đợi .............................................................................................. 12
1.3.3. Kênh phục vụ ....................................................................................... 12
1.3.4. Dòng yêu cầu đầu ra ........................................................................... 13
1.3.5 Các quy luật hoạt động của hệ thống phục vụ ..................................... 13
1.4. Trạng thái hệ thống phục vụ........................................................................... 15
1.4.1. Định nghĩa về trạng thái của hệ thống phục vụ .................................. 15
1.4.2. Quá trình thay đổi trạng thái của hệ thống phục vụ .............................. 15
1.4.3. Sơ đồ trạng thái .................................................................................... 16
1.4.4. Qui tắc thiết lập hệ phương trình trạng thái ....................................... 16
Chương 2. CÁC CÔNG CỤ MÔ PHỎNG BÀI TOÁN HÀNG ĐỢI ............. 19
2.1. Quy trình chung của việc phân tích, mô phỏng hệ thống hàng đợi ............... 19
2.2. Một số ngôn ngữ lập trình bậc cao dùng để giải quyết bài toán hàng đợi ..... 20
2.2.1. Ngôn ngữ lập trình Matlab ................................................................. 20
2.2.2. Ngôn ngữ lập trình Java ..................................................................... 21
2.2.3. Ngôn ngữ lập trình C++ và bộ công cụ Visual Studio.net ................. 22
2.3. Ngôn ngữ mô phỏng GPSS và công cụ GPSS World .................................... 23
2.3.1. Giới thiệu về ngôn ngữ GPSS ............................................................... 23
2.3.2. Sự ra đời của ngôn ngữ GPSS ............................................................. 24


ii
2.3.3. Những ưu điểm của ngôn ngữ GPSS ..................................................... 25
2.3.4. Các ứng dụng của công cụ mô phỏng GPSS World .............................. 26
2.3.5. GPSS World Student Version .............................................................. 28
2.4. Các công cụ mô phỏng sử dụng ngôn ngữ đặc tả Petri-net............................ 29
2.4.1. Các khái niệm cơ bản về Petri-net ...................................................... 29
2.4.2. Mô tả toán học về Petri-net ................................................................. 31

2.4.3. Một số thuộc tính của Petri-net........................................................... 32
2.4.4. Một số công cụ sử dụng ngôn ngữ Petri-net ....................................... 33
2.4.5. Ứng dụng của mạng Petri-net ............................................................. 34
2.5. So sánh giữa P/T net và GPSS ...................................................................... 34
Chương 3. SỬ DỤNG GPSS VÀ PETRI NET ................................................. 36
TRONG BÀI TOÁN MÔ PHỎNG HỆ THỐNG HÀNG ĐỢI ....................... 36
3.1. Mô phỏng bài toán hàng đợi không ưu tiên ................................................... 36
3.1.1. Phát biểu bài toán. .............................................................................. 36
3.1.2. Phân tích bài toán ............................................................................... 37
3.1.3. Phân tích kết quả của bài toán bằng lý thuyết hàng đợi..................... 37
3.1.4. Mô phỏng bài toán bằng công cụ GPSS WORLD .............................. 39
3.1.5. Mô phỏng bài toán bằng mô hình mạng Petri .................................... 43
3.2. Mô phỏng bài toán hàng đợi có ưu tiên. ........................................................ 51
3.2.1 Phát biểu bài toán ............................................................................... 51
3.2.2. Phân tích bài toán ............................................................................... 52
3.2.3. Phân tích kết quả bài toán bằng lý thuyết hàng đợi ........................... 54
3.2.4. Mô phỏng bài toán bằng GPSS World ................................................ 55
3.2.5. Mô phỏng bài toán bằng mô hình mạng Petri .................................... 59
3.3. Đánh giá các kết quả mô phỏng ..................................................................... 64
KẾT LUẬN VÀ KIẾN NGHỊ ............................................................................ 66
TÀI LIỆU THAM KHẢO .................................................................................. 68


iii

DANH MỤC CÁC KÝ HIỆU, CHỮ VIẾT TẮT
Ký hiệu
CEC
GPSS
GPSS/PC

FEC
PABX
P/T net

Tiếng Anh
Current Event Chain
General Purpose Simulation
System
General Purpose Simulation
System/Personal Computer
Future Event Chain
Private Automatic Branch
Exchange
Place/ Transition Network

Giải thích theo tiếng Việt
Chuỗi sự kiện hiện tại
Ngôn ngữ mô phỏng hệ thống
GPSS
Môi trường lập trình cho ngôn
ngữ GPSS
Chuỗi sự kiện tương lai
Tổng đài liên lạc dành cho một
tổ chức, đơn vị độc lập
Một loại ngôn ngữ mô tả toán
học, dựa trên lý thuyết về tập
hợp


iv

DANH MỤC CÁC BẢNG BIỂU
Bảng 1.1 Các yếu tố cấu thành hàng đợi
Bảng 1.2 Các tham số đặc trưng trong hệ thống hàng đợi
Bảng 1.3 Các yếu tố theo quy tắc Kendall khi mô tả về hàng đợi
Bảng 1.4 Các phân phối xác suất liên quan đến A và B trong mô tả
Kendall
Bảng 1.5 Một số phương pháp phục vụ áp dụng trong lý thuyết hàng
đợi
Bảng 2.1 So sánh giữa Petri Net và GPSS
Bảng 3.1 Thời gian chờ T1 ở vị trí P1
Bảng 3.2 Thời gian chờ Tx-T8 ở vị trí P12
Bảng 3.3 Thời gian chờ T5 ở vị trí P7
Bảng 3.4 Thời gian chờ T5 ở vị trí P8
Bảng 3.5 Kết quả phân tích hàng chờ T
Bảng 3.6 Kết quả phân tích vị trí các đỉnh P
Bảng 3.7 Thời gian chờ T1 ở vị trí P1 (Khi T1 thay đổi)
Bảng 3.8 Thời gian chờ T5 ở vị trí P7 (Khi T5 thay đổi)
Bảng 3.9 Thời gian chờ T6 ở vị trí P8 (Khi T6 thay đổi)
Bảng 3.10 Kết quả phân tích hàng chờ T khi T1,T5,T6 thay đổi
Bảng 3.11 Kết quả phân tích vị trí các đỉnh P khi T1,T5,T6 thay đổi
Bảng 3.12 So sánh kết quả tính toán theo lý thuyết với tính toán
trong GPSS và Petri Net
Bảng 3.13 So sánh kết quả tính toán theo lý thuyết với tính toán
trong GPSS vớ
= 1.440 phút
Bảng 3.14 Thời gian chờ T1 ở vị trí P1
Bảng 3.15 Thời gian chờ T2 ở vị trí P2
Bảng 3.16 Kết quả phân tích hàng chờ T
Bảng 3.17 Kết quả phân tích vị trí các đỉnh P
Bảng 3.18 So sánh kết quả tính toán theo lý thuyết với tính toán

trong GPSS và Petri Net
Bảng 3.19 So sánh kết quả tính toán theo lý thuyết với tính toán
trong GPSS và Petri Net theo thời gian

Trang
4
6
8
9
14
34
45
45
46
46
47
47
48
49
49
50
50
51
58
60
61
62
62
63
64



v
DANH MỤC CÁC HÌNH VẼ
Trang
Hình 1.1 Mô hình cơ bản của hệ thống hàng đợi (hay hệ thống phục
vụ đám đông)

3

Hình 1.2 Mô hình hóa các yếu tố của một hệ thống hàng đợi

5

Hình 1.3 Mô tả hệ thống đợi

7

Hình 1.4 Sơ đồ trạng thái của hệ thống phục vụ

16

Hình 2.1 Minh họa công cụ Netlab tích hợp trên nền tảng Matlab

21

Hình 2.2 Minh họa Applet: The Petri - Net - Simulator chạy trên
nền Java

22


Hình 2.3 Minh họa công cụ YASPER phát triển trên công nghệ .Net

23

Hình 2.4 Minh họa cửa sổ làm việc của GPSS World

25

Hình 2.5 Ví dụ về một cửa sổ REPORT GPSS World Student
Version

29

Hình 2.6 Ví dụ Petri-net

30

Hình 2.7 Minh họa tính tiếp cận của Petri-net

32

Hình 2.8 Minh họa tính bất tử của Petri-net

33

Hình 2.9 Minh họa tính không có đường bao giới hạn của Petri-Net

33


Hình 2.10 Minh họa tính bảo thủ của Petri-net

33

Hình 3.1 Mô phỏng điều kiện bài toán xe cẩu trên thực tế

37

Hình 3.2 Mô phỏng điều kiện bài toán xe cẩu theo toán học

37

Hình 3.3 Sơ đồ khối thuật toán bài toán xe cẩu

39

Hình 3.4 Mô hình bài toán xe cẩu theo mạng Petri

43

Hình 3.5 Điều kiện bài toán mô phỏng mô hình hệ thống điều khiển
đường băng sân bay

52

Hình 3.6 Sơ đồ thuật toán bài toán mô phỏng mô hình hệ thống điều
khiển đường băng sân bay

53


Hình 3.7 Mô hình hàng đợi theo dạng M/M/1 bài toán mô phỏng
mô hình hệ thống điều khiển đường băng sân bay

54

Hình 3.8 Mô hình hóa bằng mạng Petri bài toán mô phỏng mô hình
hệ thống điều khiển đường băng sân bay

60


1
ĐẶT VẤN ĐỀ
Trong thực tế, chúng ta bắt gặp rất nhiều các hệ thống được thiết lập bởi các
yêu cầu (của khách hàng), trong đó các thời điểm xuất hiện được xem như một đại
lượng ngẫu nhiên, còn nhu cầu được đặc trưng bằng khối lượng các công việc phải
làm để phục vụ, thứ tự ưu tiên trước sau, thời gian hoàn thành công việc và toàn bộ
công việc. Đó là những hệ thống như: Xếp hàng mua vé vào rạp hát, xếp hàng thanh
toán tiền ở quầy thu ngân ở siêu thị, máy bay cất cánh (hạ cánh), mạng máy tính,
bãi đậu xe, phi trường… Những hệ thống này được gọi là hệ thống hàng đợi (hay
hệ thống phục vụ đám đông)[1],[3],[6],12].
Nhìn chung các hệ thống hàng đợi là các hệ thống phức tạp, việc vận hành và
tính toán các đặc trưng của hệ thống để tư vấn cho nhà quản lý là một vấn đề hết
sức cần thiết. Việc xây dựng mô hình toán học cho mỗi hệ thống là rất cần thiết để
giảm chi phí tối đa cho các hoạt động đặc tả nó. Việc đặc tả và tính toán một số đặc
điểm của hệ thống hàng đợi có thể đem lại các kết quả dự báo quan trọng cho hệ
thống. Khi đó tính chất đầy đủ của các mô hình mô phỏng cần đạt được việc mô
phỏng quá trình làm việc của mỗi phần tử trong hệ thống với việc đảm bảo các
logic, quy tắc của sự tương tác và phát triển của chúng cả trong không gian và trong
thời gian.

Để xây dựng mô hình mô phỏng bằng cách sử dụng các ngôn ngữ lập trình
truyền thống là khá phức tạp, khó khăn do khi lập trình, chúng ta phải quản lý các
sự kiện theo một mô hình nhiều sự kiện xảy ra đồng thời (song song) với việc xây
dựng các hàm tạo ngẫu nhiên các sự kiện (random) cũng không hề đơn giản, chính
vì vậy đã xuất hiện các ngôn ngữ mô phỏng chuyên dụng. Hiện nay có một số
phương pháp đánh giá, mô phỏng được sử dụng rộng rãi và có hiệu quả trên thực tế
là phương pháp mô hình hoá và các mô hình được sử dụng hiện nay là mô hình
hàng đợi, mạng Petri, General Purpose Simulation System (GPSS), đồ thị, và các
mô hình lai ghép... Trong đó mô hình hàng đợi là một mô hình đơn giản và tỏ ra có
hiệu quả trong thực tế.


2
Với nhu cầu cần mô phỏng hệ thống hàng đợi, việc áp dụng cách tiệp cận cũng
như công cụ mô phỏng nào là một vấn đề quan trọng do tính chất của hệ thống, quy
mô của hệ thống có thể là những yếu tố ảnh hưởng đến việc lựa chọn công cụ.
Chính vì vậy, yêu cầu lựa chọn, so sánh, đánh giá các công cụ mô phỏng là một đề
tài mang ý nghĩa khoa học và thực tiễn cao. Với lý do đó, tôi lựa chọn đề tài
“Nghiên cứu công cụ mô phỏng GPSS và Petri Net cho bài toán hệ thống hàng
đợi“ cho luận văn tốt nghiệp thạc sỹ của mình.
Luận văn gồm 3 chương với nội dung được mô tả tóm lược như sau:
Chương 1. Tổng quan về hệ thống hàng đợi: Nội dung chương 1 đưa ra vai
trò của hệ thống hàng đợi; tập trung vào cơ sở lý thuyết hàng đợi (lý thuyết phục vụ
đám đông) bao gồm các mô tả về một hệ thống hàng đợi nói chung như: Các yếu tố
của hệ thống hàng đợi (dòng vào, dòng ra, hàng chờ, kênh phục vụ), trạng thái của
hệ thống (quá trình thay đổi trạng thái của hệ thống phục vụ, sơ đồ trạng thái, quy
tắc thiết lập hệ phương trình trạng thái).
Chương 2. Các công cụ mô phỏng bài toán hàng đợi: Cách tiếp cận cho việc
mô phỏng bài toán hàng đợi bằng một số ngôn ngữ lập trình bậc cao như Java,
Matlab, C++… và các ngôn ngữ đặc tả ,công cụ mô phỏng chuyên dụng GPSS,

Petri Net.
Nghiên cứu kỹ cách áp dụng công cụ mô phỏng GPSS và Petri Net cho bài
toán hàng đợi.
Đưa ra so sánh đặc điểm, ứng dụng giữa công cụ GPSS và Petri Net.
Chương 3. Sử dụng GPSS và Petri Net trong bài toán mô phỏng hệ thống
hàng đợi: Áp dụng công cụ mô phỏng GPSS và Petri Net vào 2 bài toán hàng đợi
cụ thể: Bài toán hàng đợi không ưu tiên (bài toán mô phỏng điều khiển xe cẩu) và
bài toán hàng đợi có ưu tiên (bài toán mô phỏng hệ thống điều khiển hệ thống
đường băng sân bay).
So sánh kết quả tính toán theo lý thuyết với kết quả mô phỏng trên GPSS và
Petri Net theo thời gian. Từ các kết quả mô phỏng được trình bày trong luận văn
đưa ra so sánh, khuyến cáo khi sử dụng 2 công cụ mô phỏng GPSS và Petri Net khi
áp dụng vào bài toán cụ thể.
Kết luận: Tóm lược nội dung chính của luận văn và nêu định hướng phát triển
trong thời gian tới.


3
Chương 1. TỔNG QUAN VỀ HỆ THỐNG HÀNG ĐỢI
1.1. Vai trò của hệ thống hàng đợi
Lý thuyết hàng đợi (queuing theory) đã được nghiên cứu và ứng dụng rộng
rãi trên thế giới trong nhiều lĩnh vực ngành nghề khác nhau như bưu chính viễn
thông, hàng không, đường sắt, kiểm soá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, không lưu, bán vé …[3].
Trong nhiều hệ thống hàng đợi, các khách hàng (đối tượng cần được phục
vụ) 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ụ, việc nghiên cứu đảm bảo sự hiệu quả, tối ưu làm việc của hệ thống hàng
đợi chính là mục đích của lý thuyết hàng đợi.
1.2. Mô tả hệ thống hàng đợi
Chúng ta làm quen với một ví dụ về hệ thống hàng đợi [2,12,18] với mô hình được

mô tả ở hình 1.1

Hình 1.1: Mô hình cơ bản của hệ thống hàng đợi (hay hệ thống phục vụ đám đông)
Trong mô hình này, chúng ta quan sát thấy có yếu tố khách đến, khách bỏ đi
(do không có thời gian chờ đợi, hoặc các lý do khác), khách xếp hàng đợi tới lượt


4
mình được phục vụ, các máy phục vụ, và khách hàng đã được phục vụ xong, rời
khỏi hệ thống phục vụ trên.
Các yếu tố này có thể tóm lược sơ bộ gồm các thành phần trong bảng 1.1:
Bảng 1.1 Các yếu tố cấu thành một hệ thống hàng đợi
STT
1

Tên yếu tố

Giải thích

Dòng các yêu cầu

Khách hàng gọi điện thoại đến một tổng đài giải đáp

đầu vào

(Call Center), các xe ô tô đi vào bãi đậu xe, các máy
bay hạ cánh xuống một đường băng…

2


Hệ thống phục vụ

Là các máy phục vụ nhằm đáp ứng yêu cầu ứng với
từng loại đầu vào cụ thể ở trên, trong hệ thống phục
vụ có hàng đợi, tại đó, khách hàng xếp hàng đợi đến
lượt mình được phục vụ. Hệ thống phục vụ có các
máy phục vụ và chúng hoạt động theo những quy
luật, nguyên tắc phục vụ nào?

3

Các máy phục vụ

Các máy điện thoại bàn và nhân viên trong một Call
Center, đường băng tại sân bay, vị trí trong bãi đậu
xe…

4

Dòng các yêu cầu

Là các yêu cầu đã được phục vụ sau khi đi ra khỏi

đầu ra

hệ thống phục vụ ở trên

Về bản chất, khi xuất hiện các yêu cầu vượt quá khả năng đáp ứng của một dịch
vụ nào đó tại một thời điểm nào đó, hàng đợi sẽ xuất hiện.
Sự chờ đợi (nhanh hay chậm để được đáp ứng yêu cầu) phụ thuộc mạnh vào số

lượng kênh phục vụ của hệ thống, cũng như quy tắc phục vụ của hệ thống.
Chi tiết về hệ thống hàng đợi sẽ được trình bày cụ thể trong phần 1.2.1


5
Trong các hệ thống phục vụ, hàng đợi xuất hiện bất cứ lúc nào khi nhu cầu hiện
tại đối với dịch vụ vượt quá khả năng cung ứng dịch vụ tại thời điểm đó. Thời gian
một yêu cầu đến phải chờ đợi phụ thuộc vào một số yếu tố như: Số lượng giao dịch
trong hệ thống, số kênh giao dịch cung ứng dịch vụ tại thời điểm đó và thời gian
phục vụ cho mỗi yêu cầu đến.
1.2.1. Mô hình hóa một hệ thống hàng đợi
Chúng ta có thể mô hình hóa đơn giản cho một hệ thống hàng đợi trong hình
1.2 :

Hình 1.2 Mô hình hóa các yếu tố của một hệ thống hàng đợi
Các thông số mô tả liên quan đến hệ thống hàng đợi gồm có:


6
Bảng 1.2 Các tham số đặc trưng trong hệ thống hàng đợi
STT
1



Nội dung

hiệu
N(t)


2

λ

3

µ

4

Nq(t)

5

Wi

Số khách hàng ở trong hệ thống tại thời điểm t.
Dòng yêu cầu đầu vào, đặc trưng bởi tốc độ đến (arrival rate)
của khách hàng
Dòng yêu cầu đầu ra, là các yêu cầu đã được và không được
phục vụ, đặc trưng bởi tốc độ tối đa phục vụ. Lưu ý: λ < µ
Hàng đợi, đặc trưng bởi số lượng khe để phục vụ cho xếp hàng
Thời gian xếp hàng của khách hàng thứ i trong hàng đợi
Kênh phục vụ và các cách phục vụ, đặc trưng bởi số lượng

6

Ns(t)

kênh, cụ thể có c kênh, cũng có nghĩa là đang có c khách hàng

đang được phục vụ

7

τi

Thời gian phục vụ với khách hàng thứ i

8

τ

Thời gian phục vụ trên tất cả các máy phục vụ

9

T

Tổng thời gian phục vụ của toàn bộ hệ thống

Có nhiều nguyên tắc phục vụ, hoặc nguyên tắc xếp hàng. Chúng ta lấy ví dụ
đơn giản nhất khi xếp hàng là: Ai đến trước phục vụ trước – First In, First Out. Khi
đó, Tổng thời gian trễ Ti của khách hàng thứ i sẽ là tổng của thời gian xếp hàng Wi
và thời gian phục vụ τi. Chúng ta có:
Ti = Wi + τi

(1.1)


7

1.2.2. Công thức Little
Thời gian phục vụ là một đại lượng ngẫu nhiên, chúng ta khó có thể đo được.
Tuy nhiên, nhìn tổng thể, thời gian phục vụ trung bình là một yếu tố rất quan trọng,
đem lại nhiều ý nghĩa để đánh giá hiệu suất hoạt động của hệ thống hàng đợi.
Công thức Litte [2],[3] phát biểu rằng:
Hệ thống hàng đợi đạt được trạng thái dừng khi mà
Trung bình các khách hàng trong hệ thống bằng Tốc độ đến trung bình
nhân với Thời gian phục vụ trung bình trong hệ thống hàng đợi đó.
E[N(t)] = λtb E[T]

(1.2)

Khi đó, chúng ta suy ra các hệ quả sau:
E[Nq(t)] = λtb E[W]

(1.3)

Trung bình khách hàng chờ đợi và Thời gian chờ đợi trung bình
1- p0 = E[Ns(t)] = λtb E[τ]

(1.4)

( đây là xác suất trạng thái dừng của hệ thống khi có khách hàng)
Trung bình khách hàng đang được phục vụ tại thời điểm t và toàn bộ thời
gian phục vụ trung bình trên các máy phục vụ
ρ = λtb E[τ]/ c

(1.5)

(đây là hệ số sử dụng của một hệ phục vụ có c máy phục vụ)

1.2.3. Hệ thống hàng đợi theo cách viết của Kendall và các phân phối liên
quan

Hình 1.3: Mô tả hệ thống hàng đợi


8
Theo Kendall [10],[21] , mô tả ngắn gọn về hệ thống hàng đợi có dạng như sau:
(1.6)

A/B/m/K
Các ký hiệu trong mô tả Kendall được trình bày trong bảng 1.3:
Bảng 1.3 Các yếu tố theo quy tắc Kendall khi mô tả về hàng đợi
STT

Ý nghĩa


hiệu

1

A

Phân phối xác suất của thời gian đến

2

B


Phân phối xác suất của thời gian phục vụ.

3

m

Số lượng máy phục vụ.

4

K

Dung lượng của hệ thống, là số khách hàng lớn nhất có mặt mà
hệ thống phục vụ được, có tính đến cả khách hàng đang chờ

Chi tiết hơn, với ký hiệu X là biến ngẫu nhiên của phân phối xác suất và E[X]
là kỳ vọng , hoặc giá trị trung bình của X, chúng ta nói về các phân phối xác suất
liên quan đến yếu tố A và B trong bảng 1.4:


9
Bảng 1.4 Các phân phối xác suất liên quan đến A và B trong mô tả Kendall
STT Viết
tắt
1

M

Phân phối


Hàm phân phối

Ghi chú

xác suất
Phân phối mũ, X
F x
không nhớ, E[X]= 1/µ vọng

x

1 e

, µ là hệ số kỳ

(1.7)

và x ≥ 0
2

Ek

Phân phối Erlang k
pha, E[X] = k/ µ

k 1

F x

1


e

x

j 0

( x) j
, µ là
j!

(1.8)

hệ số kỳ vọng, k là pha, x ≥ 0,
3

Hk

Phân phối siêu lũy
thừa, E[X]
k

qj /

i

j 1

4


D

Phân phối tất định,
thời gian vào và thời
gian phục vụ là hằng
số

5

G

Phân phối tổng quát

6

GI

Phân phối tổng quát
với các thời gian vào
hệ thống hoặc thời
gian phục vụ độc lập
nhau.

7

PH Phân phối pha

k

F x


q j (1

e

jx

),x

(1.9)

j 1

>0,
và P[X]= qj
F(x) =1, nếu x ≥ a
F(x)= 0, nếu x ˂ a
a là một thời điểm nào đó cố định

Đặc trưng bởi xích Markov hoặc
quá trình Possion, sẽ trình bày kỹ
hơn về xích này sau

Đặc trưng bởi xích Markov, sẽ
trình bày kỹ hơn về xích này sau

(1.10)


10

1.3. Các yếu tố của hệ thống hàng đợi
Các yếu tố của hệ thống hàng đợi [1], gồm có: Dòng yêu cầu đầu vào, Hàng
đợi, Kênh phục vụ, dòng yêu cầu đầu ra, và các cách phục vụ (quy luật phục vụ ).
Chúng ta sẽ xét từng yếu tố cụ thể đã liệt kê trong bảng 1.1
Một hệ thống hàng đợi, dù ở qui mô nào, tính chất hoạt động ra sao, đều được
đặc trưng bởi các yếu tố chủ yếu sau:
1.3.1. Dòng yêu cầu đầu vào
Dòng yêu cầu đầu vào (gọi tắt là dòng vào) là dò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 rate), ký hiệu là λ.
Ví dụ: Khách hàng xếp hàng tại quầy bán vé xem phim, các container chờ để
được dỡ hàng, các xe ô tô chờ xếp hàng vào bãi, các máy bay chờ để cấ

Chúng ta thấy rằng, dò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 đó. Trong khóa luận này, chúng ta tập trung xét hai loại
dòng yêu cầu đầu vào thông dụng nhất là:
Dòng vào tiền định, đặc trưng bởi phân phối tất định D
Dòng vào Possion, tuân theo phân phối Possion
Dòng vào tiền định
Dòng vào tiền định là dò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.
Dò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) = 1, nếu x ≥ a
F(x) = 0, nếu x < a
Dòng vào Poisson

(1.11)



11
Dòng vào Poisson là dòng yêu cầu đi đến hệ thống, dòng vào này tuân theo
luật phân phối Poisson với N(t) là số các biến cố xảy ra trong khoảng thời gian [0, t]
N(t) là quá trình ngẫu nhiên liên tục, không giảm theo thời gian.
N(t) có phân phối Poission có kỳ vọng là λt, và có biểu diễn như sau:

P[ N (t )

( t )k
e
k!

k]

(1.12)

t

Dòng vào Poisson không dừng: Là dòng vào mà xác suất xuất hiện x yêu
cầu trong khoảng thời gian Dt, kể từ thời điểm t, phụ thuộc vào t, nghĩa là:
x( Dt )

e

a (t , t )

a t,

!


t

x

(1.13)

Trong đó a(t, Dt) là số trung bình các yêu cầu xuất hiện từ t đến Dt.
Dòng vào Poisson dừng: Là dòng vào mà xác suất trong khoảng thời gian
Dt, kể từ thời điểm t, có x yêu cầu xuất hiện, không phụ thuộc vào t, nghĩa
là:
x( Dt )

t

e

( . t)x

!

(1.14)

Trong đó, λo là số yêu cầu trung bình xuất hiện trong một đơn vị thời gian
(cường độ dòng yêu cầu). Nói cách khác là mật độ dòng yêu cầu không đổi.
Nếu t là khoảng thời gian giữa lần xuất hiện các yêu cầu liên tiếp, thì t là một
đại lượng ngẫu nhiên tuân theo luật chỉ số, nghĩa là t có hàm phân bố xác suất và hàm
mật độ như sau:

F t


f t

1

e
o

e

ot

ot

(1.15)
(1.16)


12
1.3.2. Hàng đợi
Hàng đợi (Queue) là tập hợp các yêu cầu sắp xếp theo một nguyên tắc nào đó
để chờ đợi đến lượt được vào phục vụ trong hệ thống. Trong hàng đợi ta có thể giới
hạn hoặc không giới hạn số lượng khách chờ. Phần dưới đây, chúng ta nói thêm về
các quy luật xếp hàng chờ đợi đến lượt phục vụ.
1.3.3. Kênh phục vụ
Thực tế, chúng ta thấy ngay một vài ví dụ về một số dạng kênh phục vụ như:
đường băng sân bay, kênh đường điện thoại, quầy bán vé…
Kênh phục vụ bao gồm con người cùng với các thiết bị kĩ thuật hoạt động tại
một vị trí nào đó trên bề mặt quả đất hoặc trong không gian. Tùy thuộc vào quy mô,
tính chất, mục tiêu hoạt động của hệ thống mà những nhà hoạch định, nhà quản lý

sẽ thiết lập nhân lực, vật lực, phương tiện, trang thiết bị cho hệ thống đó.
Đặc điểm quan trọng nhất của kênh phục vụ là thời gian phục vụ τi (xem bảng
1.2). Đó là thời gian mỗi kênh phải tiêu phí để phục vụ một yêu cầu. Nói dễ hiểu là
“Anh tốn bao nhiêu thời gian để phục vụ xong một khách hàng”.
Thời gian phục vụ cũng là một đại lượng ngẫu nhiên tuân theo một quy luật
xác suất nào đó bởi nó phụ thuộc rất mạnh vào thời gian đến của các yêu cầu. Các
dòng yêu cầu được phục vụ trong kênh phục vụ gọi là “dòng phục vụ”.
Khi dòng phục vụ là tối giản thì khoảng thời gian giữa các lần xuất hiện liên
tiếp các yêu cầu là một đại lượng ngẫu nhiên tuân theo luật chỉ số, nghĩa là đại
lượng ngẫu nhiên có phân bố xác suất và hàm mật độ xác suất giống hệt như dòng
vào Possion dừng ở phần trên.

F t

f t
Trong đó:

1
o

ot

e

e

ot

(1.17)
(1.18)



13
μo: là số yêu cầu được phục vụ trên mỗi kênh trong một đơn vị thời gian
(cường độ dòng phục vụ)
F(t): Hàm phân bố xác suất.
f(t): Hàm mật độ xác suất.
Khoảng thời gian giữa các lần xuất hiện liên tiếp các yêu cầu trong dòng phục
vụ của mỗi kênh chính là khoảng thời gian kênh đó phục vụ xong từng yêu cầu,
nghĩa là thời gian phục vụ của kênh.
Nếu dòng phục vụ trên mỗi kênh là dòng tối giản thì thời gian phục vụ của
kênh đó là đại lượng ngẫu nhiên tuân theo luật chỉ số, nghĩa là có hàm phân phối
xác suất và mật độ xác suất dạng (1.16) và (1.17)
1.3.4. Dòng yêu cầu đầu ra
Dòng yêu cầu đầu ra (gọi tắt là dòng ra) là dòng các yêu cầu đi ra khỏi hệ
thống. Có hai loại dòng ra:
Dòng yêu cầu ra đã được phục vụ xong: là các yêu cầu đã được phục vụ ở
mỗi kênh, nếu dòng đó là tối giản thì nó có một vai trò rất lớn trong hệ
thống phục vụ. Người ta đã chứng minh được rằng: nếu dòng vào là tối
giản thì dòng ra được phục vụ tại mỗi kênh sẽ là dòng xấp xỉ tối giản (như
đã trình bày ở phần 1.3.3)
Dòng yêu cầu ra không được phục vụ: là một phần các yêu cầu đến hệ
thống nhưng không được phục vụ vì một lí do nào đó.
1.3.5 Các quy luật hoạt động của hệ thống phục vụ
Một hệ thống phục vụ hoạt động theo những quy luật nào, nguyên tắc nào? Sự
hiệu quả của những quy luật đó ra sao? Ứng với loại dòng vào cụ thể, hệ thống
phục vụ phải chọn lựa ra cách thức phục vụ nào để tối ưu nhất?... Đó là một vài câu
hỏi đặt ra cho hệ thống phục vụ



14
Đặc điểm chung về các quy luật phục vụ
Như vậy, các quy luật phục vụ của hệ thống phục vụ là cách mà hệ thống tiếp
nhận các yêu cầu đầu vào, tiến hành phân loại, sắp xếp và phục vụ các yêu cầu đó
trong hệ thống, ngoài ra, các quy luật này còn thiết lập một số các quy định khác
đối với yêu cầu đầu vào. Nó chỉ ra:
Khi nào thì yêu cầu đáp ứng được các quy luật phục vụ và yêu cầu đó
được nhận vào phục vụ
Cách phân bổ các yêu cầu đó vào các kênh phục vụ
Khi nào thì yêu cầu bị từ chối hoặc phải chờ đợi trong hàng đợi
Cách bố trí hàng đợi tùy theo các loại yêu cầu
Một số phương pháp phục vụ
Bảng 1.5 Một số phương pháp phục vụ áp dụng trong lý thuyết hàng đợi
STT

Tên viết tắt – tên tiếng Anh của

Giải thích

phương pháp phục vụ
1

FCFS – First Come First Served

Ai đến trước phục vụ trước

2

LCFS – Last Come First Served


Ai đến cuối phục vụ trước

3

SIRO – Service In Random Order

Phục vụ theo thứ tự ngẫu nhiên

4

PS – Processor Shared

Phục vụ có chia sẻ chung bộ xử lý

5

IS – Infinitive Server

Phục vụ không xác định

6

Static priorities

Phục vụ ưu tiên các yếu tố tĩnh

7

Dynamic priorities


Phục vụ ưu tiên các yếu tố động

8

Preemption

Thiết lập chế độ ưu tiên

Tùy thuộc vào việc chúng ta chọn phương pháp phục vụ, hàng đợi sẽ được
điều chỉnh theo phương pháp đó sao cho có hiệu quả nhất.


15
1.4. Trạng thái hệ thống phục vụ
Phần này, chúng ta quan tâm đến trạng thái hoạt động của hệ thống phục vụ.
Làm thế nào để tìm hiểu xem hệ thống phục vụ với những yếu tố, các quy luật đã
trình bày ở trên, chúng ta tìm ra trạng thái hoạt động của nó? Trước hết, chúng ta
tìm hiểu về quá trình Markov.
1.4.1. Định nghĩa về trạng thái của hệ thống phục vụ
Trạng thái của hệ thống phục vụ, ký hiệu là xk(t), là khả năng kết hợp dòng vào và
dòng ra của hệ thống ở một thời điểm nhất định.
Theo nghĩa đó thì trạng thái của hệ thống phục vụ tại thời điểm t chính là tình
huống mà trong hệ thống có k yêu cầu được phục vụ, hay nói cách khác hệ thống
đang có k kênh phục vụ đang bận (đang làm việc) và do đó có (n-k) kênh được rỗi
(không làm việc).
Hệ thống phục vụ đang ở trạng thái nào đó là một quá trình ngẫu nhiên, quá trình
này tuân theo một luật phân phối xác suất nào đó. Nên khả năng xuất hiện một trong
các trạng thái xk(t) (k = 0,1,2,...) nào đó tại thời điểm t, có xác suất là một giá trị xác
định Pk(t).
1.4.2. Quá trình thay đổi trạng thái của hệ thống phục vụ

Trong quá trình hoạt động, hệ thống phục vụ chuyển từ trạng thái này sang
trạng thái khác dưới tác động của cường độ dòng vào và cường độ dòng phục vụ.
Xác suất của quá trình đó được gọi là xác suất chuyển trạng thái. Nguyên nhân gây ra
sự chuyển trạng thái là do tác động của cường độ dòng vào và cường độ dòng phục
vụ, số kênh bận và số yêu cầu trong hệ thống thay đổi, tức là dưới tác động của
cường độ dòng phục vụ μ(t) và cường độ dòng vào λi(t) tại thời điểm t, hệ thống sẽ
biến đổi từ trạng thái này sang trạng thái khác.


16
1.4.3. Sơ đồ trạng thái
Sơ đồ trạng thái của hệ thống được dùng để diễn tả quá trình thay đổi trạng
thái của hệ thống phục vụ. Sơ đồ trạng thái là tập hợp các mũi tên, hình vẽ, diễn tả quá
trình biến đổi trạng thái của hệ
trạng thái mô tả bước chuyển từ trạng thái này sang trạng thái khác, hình chữ nhật
biểu diễn trạng thái của hệ thống. Tham số ghi trên mũi tên biểu thị tác động của
cường độ dòng biến cố kéo trạng thái dịch chuyển theo hướng mũi tên.
Chúng ta ví dụ về một hệ thống có sự thay đổi trạng thái gồm bốn yếu tố, và sự
thay đổi trạng thái trong hệ thống được mô tả như hình vẽ 1.3
02

X0

01

12

X1

10


23

X2

X3
32

21

31

Hình 1.4: Sơ đồ trạng thái của hệ thống phục vụ
1.4.4. Qui tắc thiết lập hệ phương trình trạng thái
Căn cứ vào sơ đồ trạng thái, ta thiết lập quan hệ giữa xác suất xuất hiện trạng
thái xk(t)với xác suất xuất hiện là Pk(t), cùng các yếu tố gây ra sự biến đổi trạng thái
đó. Mối quan hệ đó được gọi là phương trình trạng thái của hệ thống.
Cách tìm phương trình trạng thái:
- Tính đạo hàm bậc nhất của xác suất Pk(t), chúng ta có dPk(t)/dt
Ta thấy dPk(t)/dt bằng tổng đại số của một số hữu hạn số hạng, số các số hạng
này bằng số mũi tên nối liền trạng thái xk(t), với trạng thái xj(t) khác.
Trong đó:
- Số số hạng mang dấu (+) tương ứng với số mũi tên đi từ xj(t) về xk(t)


×