Cỏc lĩnh vực hoạt động của PetriNets

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 55 - 87)

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

- 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.

Chương này đó giới thiệu về ngụn ngữ mụ phỏng Petri Nets. Ngụn ngữ mụ tả toỏn học Petri Nets là một ngụn ngữ mạnh để mụ tả cỏc hệ thống song song và hệ thống phõn tỏn trong thực tế đời sống xó hội.

CHƢƠNG 3

SỬ DỤNG PETRI NETS TRONG BÀI TOÁN Mễ PHỎNG HỆ THỐNG PHỤC VỤ GIAO DỊCH NGÂN HÀNG

Trong chương này thiết lập bài toỏn, sau đú phõn tớch bài toỏn thực tế, giải bài toỏn bằng lý thuyết hàng đợi, tạo mụ hỡnh Petri Nets của hệ thống phục vụ giao dịch ngõn hàng. Đỏnh giỏ và so sỏnh cỏc kết quả mụ phỏng trờn TNET. Mụ phỏng cỏc trường hợp khỏc nhau để thấy được kết quả tiện ớch nhất.

3.1. Thiết lập bài toỏn hàng đợi khụng ƣu tiờn

Một điểm giao dịch của một ngõn hàng được tổ chức gồm: Một bàn tiếp nhận cỏc yờu cầu giao dịch và hai bàn xử lý yờu cầu. Tại bàn tiếp nhận yờu cầu cú một nhõn viờn tiếp nhận cỏc yờu cầu giao dịch của cỏc khỏch hàng đến với thời gian trung bỡnh của một yờu cầu là 5±4 phỳt. Sau đú, phõn bổ mỗi yờu cầu này đến một trong hai bàn xử lý yờu cầu theo nguyờn tắc FIFO với xỏc suất 0.5 (khụng cú cơ chế ưu tiờn), nếu bàn đú “rảnh” thỡ sẽ xử lý yờu cầu giao dịch, cũn ngược lại đơn hàng sẽ được chuyển đến bàn cũn lại và cứ thế nhõn viờn nhận yờu cầu liờn tục kiểm tra tỡnh trạng hai bàn xử lý yờu cầu cho đến khi cú bàn “rảnh” để thực hiện yờu cầu giao dịch đú. Mỗi lần kiểm tra nhõn viờn tiếp nhận hồ sơ sẽ mất đỳng 1 phỳt. Nhõn viờn tiếp nhận cú thể nhận đến 5 yờu cầu giao dịch một lỳc, sau đú nếu tiếp tục cú cỏc yờu cầu giao dịch tiếp theo thỡ khỏch hàng sẽ bị từ chối. Mỗi yờu cầu giao dịch được nhõn viờn tại bàn xử lý yờu cầu thực hiện trong thời gian 12±8 phỳt (Hỡnh 3.2).



Hỡnh 3.1: Hỡnh minh họa bài toỏn giao dịch ngõn hàng

Để cú được cỏi nhỡn tổng quan về hệ thống và đỏnh giỏ được hiệu suất sử dụng của hệ thống, từ đú cú thể vạch ra được cỏc chiến lược phỏt triển đỳng đắn và kịp thời. Đặt ra một yờu cầu cấp thiết là cần mụ hỡnh húa hệ thống. Khụng mất tớnh tổng quỏt ở đõy chỳng ta chỉ mụ hỡnh hoạt động của điểm giao dịch của ngõn hàng trong thời gian 60 giờ đồng hồ liờn tục và đưa ra được số yờu cầu giao dịch của khỏch hàng thực hiện thành cụng, số yờu cầu giao dịch bị từ chối. Từ đú, chỉ ra được hệ số sử dụng của mỗi bàn xử lý.

3.2. Phõn tớch bài toỏn hàng đợi

3.2.1. Phõn tớch cỏc yờu cầu của bài toỏn

Điều kiện bài toỏn được trỡnh bày trong sơ đồ trờn hỡnh 3.1.

Hỡnh 3.2: Mụ tả cỏc điều kiện bài toỏn

Bàn tiếp nhận (nhõn viờn kiểm

tra 1 phỳt) 5± 4 phỳt một

yờu cầu giao dịch đến Bàn xử lý 1 (thời gian xử lý 12±8) Bàn xử lý 2 (thời gian xử lý 12±8) P=0,5 P=0,5 Bàn Tiếp Nhận (Nhõn viờn tiếp) nhận) Bàn Xử lý 1  

Yờu cầu giao dịch đến Bàn

Xử lý 2

Từ phõn tớch cỏc điều kiện bài toỏn trờn ta cú sơ đồ thuật toỏn sau:

Số yc trong queue(q):= 0 Số yc đến(r) :=0; t: = 0 Số yc bị từ chối lost: = 0

Yờu cầu đến (r=r+1) (thời gian 5 ± 4), tăng t

Tăng số yc trong queue q:= q + 1

q <5 ?

Từ chối yờu cầu lost:= lost +1 Lost: = Lost + 1 Kiểm tra tỡnh trạng bàn xử lý (1 phỳt), t:=t+1 Cú bàn xử lý “rảnh” ? Xử lý yờu cầu (12±8); q=q- 1;tăng t 12±8 phỳt t =3600 phỳt ? End Begin Sai Đỳng cú Khụng g đỳng sai

Bài toỏn yờu cầu tớnh số yờu cầu giao dịch thực hiện thành cụng và số yờu cầu giao dịch bị từ chối trong thời gian 60 giờ liờn tục. Từ đú, chỉ ra được hệ số sử dụng của mỗi bàn xử lý.

3.2.2. Phõn tớch kết quả của bài toỏn bằng lý thuyết hàng đợi

Qua phõn tớch bài toỏn cho thấy bài toỏn thuộc mụ hỡnh hàng đợi M/M/m/K, với số kờnh phục vụ m=2 và K=2+5=7. Mụ hỡnh hệ thống được mụ tả như sau:

Hỡnh 3.4: Mụ hỡnh M/M/2/7

:

λ: tốc độ trung bỡnh nhận cỏc yờu cầu giao dịch trong hệ thống μ

Theo cỏc cụng thức đó cú trong chương 2, xỏc suất hệ thống trong trạng thỏi nghỉ P0 (khụng cú khỏch hàng trong hệ thống) và xỏc suất từ chối Ptc:

Với m=2, K=7 và tốc độ trung bỡnh nhận cỏc yờu cầu giao dịch trong hệ thống λ =1/5, thời gian trung bỡnh xử lý mỗi yờu cầu à=1/12. Thay vào cỏc cụng thức trờn ta cú:

- Xỏc suất hệ thống ở trạng thỏi nghỉ: P0 = 0,03125. - Xỏc suất yờu cầu giao dịch bị từ chối: P tc= 0,224.

μ

3.3. Ứng dụng Petri Nets mụ phỏng bài toỏn hệ thống giao dịch ngõn hàng

3.3.1 Mụ hỡnh Petri Nets

Dựa vào thuật toỏn trong hỡnh 3.3 trờn, mụ hỡnh mạng Petri của bài toỏn như sau:

Hỡnh 3.5:

Mạng Petri đƣợc xõy dựng nhƣ sau: PN=(P,T,F,W,M0) Trong đú: - Tập cỏc place P={p1,p2,p3,…,p17}

- Tập cỏc transition T={t1,t2,t3,…, t12}

- Tập cỏc cung (Arcs) F ={(p1,t1);(t1,p13);(t1,p3);(p5,t2) ;(p3,t2);(t2,p2); (p3,t3); (p6,t3);(t3,p2);(p3,t4);(t4;p4); (p7;t5); (t5,p10); (t5,p11); (p8,t6); (t6,p9); (t6,p11); (p11,t7); (p2,t7); (t7,p16); (t7,P17); (t7,p12); (p12,t8);

(t8,p7); (t8,p8); (p14,t9); (p15,t9); (t9,p15); (p15,t10); (p17,t10); (t10,p6);(t10,p15); (p7,t11); (t11,p12); (p8,t12); (t12,p12)}

- Hàm trọng số W: F→ 1

- Marking khởi tạo M0=( m1,m2,m3,…,m17), trong đú m1=1000, m5=5 (điều kiện hàng đợi cú tối đa 5 yờu cầu giao dịch) , m11=2 (cú hai bàn xử lý yờu cầu), m14=1(điều kiện cần để kớch hoạt t9), cỏc mi =0 ( i=1..17 và i 1, i 5, i 11, i 14 )

Để dễ hiểu cú thể cú thể thấy mối liờn hệ tương ứng như sau:

Cỏc token

- Сỏc token trong cỏc place đại diện cho cỏc khỏch hàng.

Cỏc place

- p1: là điều kiện đầu vào của hệ thống (Customer population). - p4: lưu số yờu cầu giao dịch bị từ chối

- p9: lưu số yờu cầu giao dịch “Bàn xử lý 1” thực hiện - p10: lưu số yờu cầu giao dịch “Bàn xử lý 2” thực hiện. - p13: tổng số yờu cầu giao dịch đến hệ thống.

- Cỏc pi cũn lại cú vai trũ như là điều kiện đầu vào, đầu ra của cỏc transition tj.

Cỏc transition

- t1: đại diện cho bộ sinh sự kiện khỏch hàng đến hệ thống.

- t8: đảm nhiệm cụng việc như “nhõn viờn tiếp nhận yờu cầu”, phõn phối cỏc yờu cầu giao dịch đến một trong hai bàn xử lý ( mất 1 phỳt để kiểm tra trạng thỏi của mỗi bàn làm việc “rảnh” hay “bận”). Transition t8 thuộc loại TX cú nghĩa là transition ngay lập tức (immediate transition), khụng cú thời gian trễ.

- t5, t6 đúng vai trũ như cỏc “bàn xử lý”, mỗi yờu cầu được giữ lại 12±8 phỳt (tương ứng với thời gian xử lý một yờu cầu giao dịch). Vỡ hai cụng viờc diễn ra song song nờn tham số đầu vào của t5 và t6 giống nhau.

- t2, t3, t4, t7, t9, t10, t12: khụng thiết lập tham số thời gian, đúng vai trũ bộ chuyển trung gian.

Mụ tả hoạt động chƣơng trỡnh theo mạng Petri:

Để hiểu được hoạt động của mạng theo thiết kế hỡnh 4.4, chỳng ta cần hiểu luật transition (firing) sau:

1) Một transition t được kớch hoạt, nếu place đầu vào p của t được đỏnh dấu với ớt nhất w(p,t) tokens, trong đú w(p,t) là trọng số của cung từ p tới t.

2) Một trasition hoạt động (sự kiện xảy ra) là sự di chuyển w(p,t) tokens

tại mỗi place đầu vào p và đặt w(t,p’) tokens tới mỗi place đầu ra p’, trong đú w(p,t) là trọng số của cung từ p tới t, trong đú w(t, p’) là trọng số của cung từ t tới p’.

3) Khi cú nhiều transition được kớch hoạt thỡ transition cú ưu tiờn cao hơn sẽ hoạt động trước.

Như vậy, hoạt động của mạng này như sau:

Yờu cầu xuất hiện từ đỉnh p1 và đi vào hệ thống trong thời gian mụ phỏng là 3600 đơn vị thời gian (đặt giỏ trị khởi đầu 1000 tokens). Khoảng thời gian trung bỡnh giữa cỏc lần sinh sự kiện khỏch hàng đến (firing) của t1 là 5±4 đơn vị thời gian theo một xỏc xuất cụ thể được cho trong tham số đầu vào của t1. Khi t1 hoạt động sẽ lấy đi một token trong p1 và đặt trờn mỗi place đầu ra p3, p13 một token. Sau đú, t2 và t4 được kớch hoạt. Nhưng t2 cú độ ưu tiờn cao hơn (do cú chỉ số nhỏ hơn) nờn t2 được hoạt động sẽ lấy một token trong p5 và một token trong p3, đặt một token vào p2. Trasition t2 sẽ chỉ cú cỏc yờu cầu đi qua đỳng 5 lần vỡ thụng số đầu vào p5 là 5 tokens. Cỏc ti cũn

lại hoạt động theo luật firing nờu trờn .

Nhúm cỏc đỉnh p14, p15, p16, p17 và t9 sẽ ngăn chặn hoạt động của t3 trong khi t2 cú thể làm việc. Bộ chuyển dịch (transition) t3 thực hiện cụng việc đưa yờu cầu vào hàng đợi p2, chỉ cú thể hoạt động trong trường hợp cú một yờu cầu đi ra khỏi hàng đợi p2, khi đú lại cú một yờu cầu khỏc xuất hiện (tối đa 5 yờu cầu). Nếu hết chỗ trong hàng đợi p2 (yờu cầu bị từ chối), khi đú yờu cầu sẽ đến đỉnh p4 qua bộ dịch chuyển t4. Vỡ vậy, p4 sẽ là nơi lưu trữ cỏc yờu cầu bị từ chối.

Trong marking khởi tạo p11 thiết lập giỏ trị là 2 (tokens), điều này để đảm bảo đồng thời cả 2 bàn xử lý (t5, t6) cựng ở trạng thỏi sẵn sàng làm việc. Nếu giỏ trị của p11 là M(p11) ≤1 (cú nghĩa là cú ớt nhất 1 bàn xử lý “rảnh”, chờ phục vụ), khi đú t7 sẽ được phộp kớch hoạt và dịch chuyển yờu cầu vào. Từ t7, yờu cầu sẽ được đưa vào p12, tại đõy yờu cầu sẽ được đi xuống tiếp với xỏc xuất 0.5-0.5 cho 2 đỉnh p7, p8 (t8 là điều khiển dịch chuyển với xỏc xuất 0.5). Nếu yờu cầu đi vào p7, ở đú nếu t5 bận (bàn xử lý 1 đang phục vụ), khi đú yờu cầu sẽ đi qua t11 và quay ngược lại p12. Nếu tại p7, yờu cầu được phục vụ (t5 rảnh), sau khoảng thời gian 12 ±8 phỳt yờu cầu được phục vụ xong sẽ đi xuống p10 và đưa thụng bỏo (token) vào p11 bỏo hiệu t5 đang ở trạng thỏi sẵn sàng phục vụ. Tương tự như vậy với nhỏnh p8, t6, t12.

Cỏc yờu cầu được “bàn xử lý 01” (hay t5) phục vụ sẽ được lưu lại ở đỉnh p10, cỏc yờu cầu được “bàn xử lý 02” (hay t6) phục vụ sẽ được lưu lại ở đỉnh p9. Để cú cỏc kết quả so sỏnh, tụi đó thực hiện cỏc thực nghiệm khỏc nhau trờn cỏc tham số đầu vào như sau:

Trƣờng hợp 1: Cho cỏc tham số đầu vào như sau: - Truyền cỏc giỏ trị cho cỏc tham số đầu vào của t1 là:

Bảng 3.1: Cỏc giỏ trị tham số đầu vào của t1

1 Đầu vào p1

2 Đầu ra p3, p13

3 Thời gian xuất hiện ngẫu nhiờn của khỏch hàng đến (5±4) theo phõn bố gần đều. 1 phỳt. – với xỏc suất 0.110 9 phỳt. – với xỏc suất 0.110 2 phỳt. – với xỏc suất 0.110 8 phỳt. – với xỏc suất 0.110 7 phỳt. – với xỏc suất 0.110 3 phỳt. – với xỏc suất 0.110 6 phỳt. – với xỏc suất 0.110 4 phỳt. – với xỏc suất 0.110 5 phỳt. – với xỏc suất 0.120

- Truyền cỏc giỏ trị cho cỏc tham số đầu vào của t8 là:

Bảng 3.2: Cỏc giỏ trị tham số đầu vào của t8

1 Đầu vào p12

2 Đầu ra p7 – với xỏc suất 0.500

p8 – với xỏc suất 0.500 3 Thời gian để điều khiển (giỏ trị mặc định là 1 phỳt)

Cỏc yờu cầu trong p7, p8 sẽ đi vào t5, t6 để được phục vụ tại cỏc “bàn xử lý” với thời gian 12±8 phỳt, nếu cỏc bàn này “rảnh”. Vỡ 2 cụng việc diễn ra song song nờn tham số t5 cũng giống t6.

- Truyền cỏc giỏ trị cho cỏc tham số đầu vào của t5 là:

Bảng 3.3: Cỏc giỏ trị tham số đầu vào của t5

1 Đầu vào p7

2 Đầu ra p10, p11

3 Chi phớ thời gian ngẫu nhiờn của “bàn xử lý 1” để thực hiện xong một yờu cầu giao dịch với cỏc xỏc suất. 4 phỳt. – với xỏc suất 0.110 20 phỳt. – với xỏc suất 0.110 6 phỳt. – với xỏc suất 0.110 18 phỳt. – với xỏc suất 0.110 8 phỳt. – với xỏc suất 0.100 14 phỳt. – với xỏc suất 0.110 10 phỳt. – với xỏc suất 0.110 16 phỳt. – với xỏc suất 0.110 12 phỳt. – với xỏc suất 0.120 - Truyền cỏc giỏ trị cho cỏc tham số đầu vào của t6 là:

Bảng 3.4: Cỏc giỏ trị tham số đầu vào của t6

1 Đầu vào p7

2 Đầu ra p9, p11

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 55 - 87)