Quy trỡnh chung của việc phõn tớch hệ thống hàng đợi

Một phần của tài liệu Nghiên cứu một số kỹ thuật giải bài toán hàng đợi và ứng dụng mô phỏng hệ thống giao dịch ngân hàng (Trang 45 - 87)

Khảo sỏt, nghiờn cứu một hệ thống; Qua đú đưa ra mụ hỡnh toỏn học cho hệ thống cần mụ phỏng. Ở bước này cần xỏc định được thụng số của hệ thống như: số nguồn yờu cầu, mỗi nguồn sinh yờu cầu theo quy luật phõn bố ngẫu nhiờn nào, cú thứ tự ưu tiờn giữa cỏc nguồn hay khụng; Kớch thước hàng đợi

và quy tắ ợi cũng như lấy chỳng ra từ hàng đợi;

Số kờnh phục vụ và quy tắc xử lớ yờu cầu, thời gian phục vụ theo quy luật phõn bố ngẫu nhiờn nào. Một quy trỡnh chung cho việc phõn tớch một hệ thống hàng đợi được đề xuất như sau [1]:

t2 t1 s m P1 P2 P3 P4 t3

Quy trỡnh chung thực hiện theo cỏc bước trong lưu đồ sau (Hỡnh 2.14):

Hỡnh 2.14: Lưu đồ quy trỡnh chung của việc phõn tớch hệ thống hàng đợi Bước 1: Phõn tớch hệ thống, chủ yếu là phõn tớch bản chất yếu tố dũng đầu vào (dũng yờu cầu hệ thống), tớn hiệu đến và cỏc trạng thỏi của hệ thống.

Cụ thể ở bước này cần xỏc định luật phõn bố đầu vào (input) của kờnh phục vụ. Xỏc định biến số thời gian gắn liền với đầu vào của sự kiện.

Bước 2: Thiết lập hệ phương trỡnh trạng thỏi cho cỏc xỏc suất trạng thỏi (xỏc suất hệ thống ở một trạng thỏi nào đú ở thời điểm thời gian t).

Để mụ phỏng hệ thống, cần xỏc định luật phục vụ đối với kờnh phục vụ: Theo ưu tiờn hay khụng ưu tiờn. Thời gian phục vụ đối với từng bài toỏn. Từ đõy xỏc định hàm phục vụ trong cỏc cụng cụ mụ phỏng cụ thể

Bước 3: Giải hệ phương trỡnh trạng thỏi để tỡm ra cỏc xỏc suất trạng thỏi đối với mụ hỡnh phõn tớch dựa trờn lý thuyết hàng đợi. Từ đú thiết lập cỏc mối quan hệ giữa cỏc chỉ tiờu cần đỏnh giỏ

Phõn tớch hệ thống

Giải phương trỡnh trạng thỏi Thiết lập phương trỡnh trang thỏi

Tớnh toỏn, so sỏnh, phõn tớch kết quả Đầu vào

Để mụ phỏng cần xõy dựng chương trỡnh với cụng cụ mụ phỏng và chạy chương trỡnh, đưa ra kết quả mụ phỏng.

Bước 4: Tớnh toỏn, so sỏnh, phõn tớch cỏc kết quả tớnh toỏn và kết quả mụ phỏng, từ đú đưa ra cỏc kết luận, kiến nghị về hành vi của hệ thống.

Với mụ hỡnh 4 bước này, mấu chốt để mụ phỏng thành cụng một hệ thống chớnh là bước 1, ở đõy phải xỏc định được đỳng dạng định luật phõn bố của đầu vào để xỏc định xõy dựng hệ thống.

2.3. Cỏc bƣớc giải bài toỏn hàng đợi dựa trờn Petri Nets

Để giải quyết bài toỏn hàng đợi dựa trờn Petri Nets thực hiện theo cỏc bước trong lưu đồ sau (Hỡnh 2.15):

Hỡnh 2.15: Lưu đồ giải bài toỏn hàng đợi dựa trờn Petri Nets

Bản tin

Hệ thống hàng đợi được thiết lập bài toỏn

Xõy dựng mạng Petri

Phõn tớch bài toỏn dưới cơ sở lý thuyết hàng đợi

Thiết lập cỏc mụ phỏng cho Petri Nets

Mụ phỏng, so sỏnh đỏnh giỏ kết quả Đầu vào

Khảo sỏt, nghiờn cứu một hệ thống, qua đú đưa ra mụ hỡnh toỏn học cho hệ thống cần mụ phỏng. Ở bước này cần xỏc định được thụng số của hệ thống như: Số nguồn yờu cầu, mỗi nguồn sinh yờu cầu theo quy luật phõn bố ngẫu nhiờn nào, cú thứ tự ưu tiờn giữa cỏc nguồn hay khụng; Kớch thước hàng đợi

và quy tắ ợi cũng như lấy chỳng ra từ hàng đợi;

Số kờnh phục vụ và quy tắc xử lớ yờu cầu, thời gian phục vụ theo quy luật phõn bố ngẫu nhiờn nào. Một quy trỡnh giải quyết bài toỏn hàng đợi dựa trờn Petri Nets được đưa ra như sau:

Bước 1: Hệ thống hàng đợi dựa trờn thiết lập bài toỏn: Được xỏc định luật phõn bố đầu vào (input) của kờnh phục vụ. Xỏc định biến số thời gian gắn liền với đầu vào của sự kiện. Từ đú lựa chọn hàm phõn bố tương ứng.

Bước 2: Phõn tớch bài toỏn dưới cơ sở lý thuyết hàng đợi: Xỏc định luật phục vụ đối với kờnh phục vụ theo ưu tiờn hay khụng ưu tiờn. Thời gian phục vụ đối với từng bài toỏn. Từ đõy xỏc định cỏc hàm phục vụ.

Bước 3: Xõy dựng mạng Petri: Chọn cỏc nỳt mạng, chọn cỏc transition T, cỏc hàm phõn phối place P. (adsbygoogle = window.adsbygoogle || []).push({});

Bước 4: Thiết lập cỏc mụ phỏng cho Petri Nets theo hàm phõn bố Input, Output và theo thời gian.

Bước 5: Chạy chương trỡnh mụ phỏng, so sỏnh, đỏnh giỏ kết quả.

Với mụ hỡnh 5 bước này, mấu chốt để mụ phỏng thành cụng một hệ thống chớnh là bước 1, ở đõy phải xỏc định được đỳng dạng định luật phõn bố của đầu vào để xỏc định xõy dựng hệ thống.

2.4. Cụng cụ mụ phỏng bài toỏn hàng đợi

2.4.1. Cụng cụ mụ phỏng

[7,15,17], (cũn gọi là Place/Transition-net, hoặc Petri Nets

hệ thống phõn tỏn. -

Petri Nets cung cấp cỏc chỳ thớch đồ họa để tiện cho người sử dụng, thiết lập cỏc lựa chọn, cỏc quy tắc để mụ hỡnh húa sự kiện một cỏch tốt nhất.

Điểm đặc biệt của Petri Nets

triển lý thuyết toỏn học cho quỏ trỡnh phõn tớch.

2.4.2. Cỏc thành phần cơ bản

Petri Nets gồm ba thành phần cơ bản: Place, Transition và Directed Arc.

Hỡnh 2.16: Vớ dụ về Petri-net

Place Là cỏc vị trớ, biểu thị bởi hỡnh trũn, kớ hiệu là vị trớ P

Transition Là trạng thỏi và sự nhảy trạng thỏi, biểu thị bởi hỡnh chữ nhật

hoặc ụ vuụng, kớ hiệu là trạng thỏi T

Directed Arc Là cỏc đường dẫn trực tiếp liờn kết giữa cỏc vị trớ P và cỏc

trạng thỏi T

Token Là cỏc mó thụng bỏo, nú biểu hiện cho đặc trưng của Place,

biểu thị bởi chấm trũn đen nằm trong Place

Marking Sự phõn bố cỏc Token trờn cỏc Place

Cỏc đường nối (Arc) sẽ liờn kết từ P sang T hoặc ngược lại từ T về P, khụng bao giờ được nối Arc giữa T với T, hoặc P với P. Trong hỡnh trờn, ta thấy P1 được coi là Place đầu vào vỡ nú chứa đường nối nhảy tới trạng thỏi T1. Cũn P4 được coi là Place đầu ra từ trạng thỏi T2.

Cỏc Place cú chứa một số tự nhiờn cỏc mó thụng bỏo (Tokens) nào đú. Sự sắp xếp, phõn bố cỏc Token này trờn cỏc Place thỡ được biết đến với thuật ngữ là Marking, tức là cỏc mặt nạ.

Một trạng thỏi trong hệ Petri-net được gọi là Fire (chỏy) khi xuất hiện Token trờn toàn bộ cỏc đường dẫn liờn kết đầu vào (Arc đầu vào). Chỳng ta thấy rằng: Việc thực thi trong toàn hệ thống Petri-net là một quỏ trỡnh khụng thể xỏc định rừ ràng, khi cú rất nhiều trạng thỏi Transition cựng xảy ra tại một thời điểm, trong số cỏc Transition đú, tồn tại một số Transition bị chỏy.

Vỡ vậy, Petri Nets là một ngụn ngữ mụ tả thớch hợp khi mụ hỡnh húa thúi quen hoạt động của hệ thống phõn tỏn. Petri-net cú ứng dụng trong hệ thống hàng đợi.

2.4.3. Mụ tả toỏn học

Thuần tỳy về toỏn học [7,15,17], chỳng ta định nghĩa: S là tập hợp xỏc định cỏc Place

T là tập hợp xỏc định cỏc Transition F là cỏc quan hệ kết nối Flow Relations

.Net là một tổ hợp ba yếu tố N = (S, T, F)

Net thỏa món cỏc điều kiện sau: (adsbygoogle = window.adsbygoogle || []).push({});

S T = ỉ , S T ≠ ỉ S và T rời nhau, hợp của S và T khỏc rỗng F (S x T) U (T x S) F là tập con

dom(F) ran(T) = S T Trong đú:

Dom(F) = Là tập hợp cỏc giỏ trị x thỏa món {x S T: (x,y) F,

Ran(F) = Là tập hợp cỏc giỏ trị y thỏa món {y S T : (x,y) F cho một số giỏ trị x S T} SN là cỏc thành phần cú thuộc tớnh trong tập hợp S TN là cỏc thành phần cú thuộc tớnh trong tập hợp T XN là cỏc thành phần cú thuộc tớnh trong tập hợp S T FN là cỏc thành phần cú thuộc tớnh trong tập hợp F

Như vậy, một Petri Nets là một đồ thị trực tiếp kết nối tay đụi, trong Petri-net khụng tồn tại cực. Marked-net là tập hợp gồm cỏc yếu tố (S, T, F, k, w, m0) Trong đú: - S, T, F đó định nghĩa ở 2.2.2 - k: S  {1, 2, 3,..} {∞} là ỏnh xạ giới hạn khả năng cục bộ - w: F  {1, 2, 3,..} là hàm trọng lượng - m0: F  {0, 1, 2, 3,..} là một mặt nạ (marking) thỏa món ) ( ) ( ) ( :k s m0 s k s S s , m0 là mặt nạ kớch hoạt 2.4.4. Một số thuộc tớnh

Từ cỏc khỏi niệm căn bản mụ tả trờn lý thuyết tập hợp, chỳng ta phỏt triển mụ hỡnh Petri-net với cỏc đặc tớnh toỏn học, bao gồm:

- Đặc tớnh tiếp cận (Reachability)

Mặt nạ Marking M cú thuộc tớnh tiếp cận từ mặt nạ M0 nếu tồn tại một chuỗi Firing σ = (M1 t1 , M2 t2 , M3 t3 ,… Mk tk) chuyển dịch từ M0 đến M.

Vớ dụ với M = (1,0,1,0) và M0 = (1,1,0,0), chỳng ta thấy tồn tại chuỗi chuyển dịch Firing như hỡnh vẽ:

Hỡnh 2.17: Minh họa tớnh tiếp cận của Petri Nets

- Tớnh bất tử (Liveness)

Bất kỳ mặt nạ Marking nào đú, bất kỳ chuyển dịch Transition nào đú, chỳng đều cú thể trở thành đối tượng cú khả năng Firing.

Hỡnh 2.18: Minh họa tớnh bất tử của Petri Nets

- Tớnh khụng cú đường bao giới hạn (Boundedness)

Điều này xảy ra khi một số lượng Token trong bất kỳ Place nào đú khụng thể lớn lờn một cỏch khụng xỏc định

Hỡnh 2.19: Minh họa tớnh khụng cú đường bao giới hạn của Petri-net

- Tớnh bảo thủ (Conservation)

Hỡnh 2.20: Minh họa tớnh bảo thủ của Petri Nets

2.5. So sỏnh một số cụng cụ của Petri Nets

Do những ưu điểm vượt trội của Petri Nets đó cú rất nhiều cụng cụ mụ hỡnh húa hệ thống được xõy dựng dựa trờn lý thuyết Petri Nets. Mỗi một cụng cụ cú một số đặc điểm vượt trội riờng được tổng hợp trong bảng sau [20]:

Bảng 2.4: So sỏnh một số cụng cụ Petri Nets Cụng cụ Đặc điểm Mụi trƣờng Hỗ trợ PN Thành phần ALPHA/Sim Cỏc Petri Nets mức cao

Cỏc Petri Nets với thời gian

Soạn thảo đồ họa Mụ phỏng nhanh

Phõn tớch hiệu năng đơn giản SumOS Solaris MS Windows NT F-net

Cỏc Petri Nets ngẫu nhiờn

Cỏc Petri Nets với thời gian

Soạn thảo đồ họa Mụ phỏng nhanh

Phõn tớch hiệu năng đơn giản

Khụng gian trạng thỏi Phõn tớch cấu trỳc

Phõn tớch hiệu năng đơn giản Phõn tớch hiệu năng năng cao MS Windows OS/2 GreatSPN Cỏc Petri Nets mức cao (adsbygoogle = window.adsbygoogle || []).push({});

Cỏc Petri Nets ngẫu nhiờn

Cỏc Petri Nets với thời gian

Soạn thảo đồ họa Mụ phỏng nhanh Khụng gian trạng thỏi Phõn tớch cấu trỳc Phõn tớch hiệu năng năng cao Sun Linux Petri.Net Simulator Cỏc mạng Place/Transition Cỏc Petri Nets với

Trỡnh soạn thảo đồ họa Mụ phỏng nhanh

Phõn tớch hiệu năng đơn

PC, MS Windows 98 PC, MS

thời gian giản Cỏc khối hệ thống con Windows NT PC, MS Windows 2000 PC, MS Windows XP Platform Independent Petri Net Editor 2 Cỏc mạng Place/Transition

Trỡnh soạn thảo đồ họa Mụ phỏng nhanh Cỏc khụng gian trạng thỏi. Phõn tớch cấu trỳc Cỏc định dạng tệp và cỏc module phõn tớch mở rộng. TimeNet Cỏc Petri Nets mức cao Cỏc mạng Place/Transition Cỏc Petri Nets ngẫu nhiờn

Cỏc Petri Nets với thời gian

Trỡnh soạn thảo đồ họa Mụ phỏng nhanh Phõn tớch cấu trỳc

Phõn tớch hiệu năng đơn giản Phõn tớch hiệu năng nõng cao PC, Linux PC, MS Windows XP WoPeD Cỏc mạng Place/Transition Cỏc mạng Workflow

Trỡnh soạn thảo đồ họa Trỡnh soạn thảo nguồn lực (cỏc vai trũ và cỏc nhúm) Hỗ trợ tiến trỡnh con Phõn tớch ngữ nghĩa Phõn tớch định lượng Java Yasper Cỏc mạng Place/Transition Petri Nets ngẫu nhiờn Cỏc Petri Nets với thời gian

Trỡnh soạn thảo đồ họa Mụ phỏng nhanh Cỏc sự rỳt gọn mạng Phõn tớch hiệu năng đơn giản

PC, MS

Windows 2000 PC, MS

Windows XP

Ngoài ra cũn cú rất nhiều cỏc cụng cụ Petri Nets khỏc. Trong phạm vi của luận văn khụng thể trỡnh bày hết. Luận văn chỉ tập trung nghiờn cứu về TNET (một phiờn bản của FNET) và ứng dụng cụng cụ này vào mụ phỏng cỏc bài toỏn thực tế. Đõy là cụng cụ được hiện thực dựa trờn lý thuyết Petri Nets hỗ trợ cỏc mạng Petri ngẫu nhiờn và cỏc mạng Petri thời gian. Cụng cụ cung cấp một số cỏc tớnh năng vượt trội như:

- Tạo và chỉnh sửa mụ hỡnh mụ phỏng Petri Nets trong chế độ đồ họa sử dụng chuột và cỏc thành phần đồ họa đó cung cấp sẵn.

- Lưu cỏc mụ hỡnh như cỏc tệp và tải cỏc mụ hỡnh đó lưu trước đú từ cỏc tệp trờn đĩa.

- Mụ phỏng TNET trong cơ chế tự động, nhanh. - Cung cấp cỏc bỏo cỏo kết quả mụ phỏng.

2.6. Cỏc lĩnh vực hoạt động của Petri Nets

Petri Nets [3,8,12,18] là một cụng cụ mụ hỡnh đồ họa và toỏn học cú khả năng ỏp dụng cho nhiều hệ thống. Nú là một cụng cụ đầy hứa hẹn cho việc mụ tả và nghiờn cứu cỏc hệ thống xử lý thụng tin đồng thời, khụng đồng bộ, phõn tỏn, song song, ngẫu nhiờn. Như một cụng cụ đồ họa, Petri Nets sử dụng cỏc biểu đồ luồng, cỏc sơ đồ khối và cỏc mạng để mụ tả. Thờm vào đú, cỏc thẻ bài (token) được sử dụng trong cỏc mạng để mụ phỏng cỏc hoạt động đồng thời và động của hệ thống. Như một cụng cụ toỏn học, nú cú thể thiết lập cỏc phương trỡnh trạng thỏi, phương trỡnh đại số, và cỏc mụ hỡnh toỏn học khỏc chi phối hành vi của hệ thống. Lý thuyết của Petri Nets cú nguồn gốc từ luận ỏn tiến sĩ của Carl Adam Petri vào năm 1962. Kể từ đú, ngụn ngữ hỡnh thức của Petri Nets đó được phỏt triển và được sử dụng trong nhiều lĩnh vực lý thuyết cũng như ứng dụng.

Mạng Petri (Petri Nets-PN) là một cụng cụ đồ họa dựng để mụ tả hỡnh thức luồng cỏc hoạt động trong cỏc hệ thống phức tạp bằng kỹ thuật đồ họa (như sơ đồ khối hoặc cõy logic), PN đặc biệt phự hợp để mụ tả một cỏch tự nhiờn tương tỏc logic giữa cỏc bộ phận hoặc cỏc hoạt động trong một hệ thống. Như hệ thống đồng bộ, tuần tự, đồng thời, tương tranh. Mạng Petri được ứng dụng nhiều trong cỏc lĩnh vực như:

- Đỏnh giỏ hiệu quả hoạt động của hệ thống - Cỏc giao thức truyền thụng

- Cỏc hệ thống phần mềm - phõn tỏn - Cỏc hệ thống cơ sở dữ liệu phõn tỏn - Cỏc chương trỡnh đồng bộ và song song - Cỏc hệ thống điều khiển cụng nghiệp

- Cỏc hệ thống sự kiện rời rạc - Cỏc hệ thống bộ nhớ đa xử lý

- Cỏc hệ thống điện toỏn luồng dữ liệu - Cỏc hệ thống chịu lỗi…

2.7. Cỏc bƣớc tạo một mụ phỏng trờn TNET

Để tạo một mụ phỏng trờn TNET ta thực hiện theo cỏc bước như sau: Bước 1: Tạo một tệp mụ hỡnh mới

Vào Файлы, chọn Новый Bước 2: Vẽ mụ hỡnh mạng Petri (adsbygoogle = window.adsbygoogle || []).push({});

- Sử dụng cỏc hỡnh được cung cấp trờn thanh cụng cụ để vẽ places, transitions, acrs - Thiết lập cỏc thụng số cho Pi, Ti bằng cỏch nhỏy đỳp chuột vào đối tượng cần đặt thụng số. Hộp thoại mới sẽ hiển thị cho phộp nhập cỏc thụng số.

- Đặt chế độ hiển thị và chế độ mụ phỏng

Моделирование => Режим, chọn По времени: đặt thời gian mụ phỏng

Bước 3: Thực hiện mụ phỏng

Моделирование => Запустить F9 Bước 4: Xem kết quả mụ phỏng

Моделировние => Статистика

- Để hiển thị kết quả phõn tớch trờn cỏc Pi , chọn: Моделировние => Статистика => Позиции - Để hiển thị kết quả phõn tớch trờn cỏc Тi , chọn:

Моделировние => Статистика => Переходы

Ngoài ra, TNET cũn cung cấp cỏc trợ giỳp trong Подсказка => Содержание Khi cần mở lại cỏc mụ hỡnh đó tạo, chọn:

Kết luận chƣơng 2

Trong chương này nờu rừ cỏc kỹ thuật để giải quyết bài toỏn hàng đợi cơ bản với mụ hỡnh M/M/1, M/M/1/K, M/M/m, M/M/m/K.

So sỏnh cỏc cụng cụ của Petri Nets để thấy được ưu điểm vượt trội của Petri Nets đó cú rất nhiều cụng cụ mụ hỡnh húa hệ thống của Petri Nets. Mỗi một cụng cụ cú một số đặc điểm vượt trội riờng.

Tuy nhiờn, để vận dụng lý thuyết hàng đợi vào cỏc bài toỏn về hệ thống hàng đợi trong thực tế với rất nhiều cỏc ràng buộc là rất khú khăn. Ngày nay, với sự phỏt triển của khoa học mỏy tớnh, với ưu thế của sự tớch hợp cỏc phõn phối xỏc suất toỏn học vào trong cỏc phần mềm mụ phỏng thỡ việc xõy dựng, thiết lập cỏc mụ hỡnh sẽ đơn giản hơn rất nhiều, khắc phục được những hạn chế của phương phỏp toỏn học thuần tỳy trong giải quyết bài toỏn hàng đợi.

Một phần của tài liệu Nghiên cứu một số kỹ thuật giải bài toán hàng đợi và ứng dụng mô phỏng hệ thống giao dịch ngân hàng (Trang 45 - 87)