Transcript PPT

CPE 332
Computer Engineering
Mathematics II
Week 7
Part II, Chapter 6
Queuing System Continue
Extra: PRNG
Topics
• Single Server, M/M/1
• Kendal Notation
• Applications
Queuing System Case 3: Delay System
Limited Server=N; With Unlimited Queue
<
 
x
1
p0 ; 0  x  N
N

N 1 k


N


x!
k  px  
; p0  
 
x
N
e
 N !( N   ) k 0 k!  P[T  t ]  et / Ts ; Ts  1
P[k ] 
 N    p0 ; x  N

k!
 N !  N 
Departure Rate = 
Arrival Rate = 
System, N Server
Customer
1.
2.
3.
4.
5.
6.
Customer
สมมุตวิ า่ Customer แต่ละคนทีเ่ ข ้ามาเป็ น Poisson และได ้รับการ Service จากระบบทันที
้
เวลาทีใ่ ชในการ
Service เป็ น Random สมมุตวิ า่ เป็ น Exponential ด ้วยเวลาเฉลีย
่ T
ระบบสามารถรับ Customer ได ้ไม่จากัด แต่จะ Service ได ้สูงสุด N พร ้อมๆกัน
ถ ้าทุก Server เต็ม Customer ใหม่จะต ้องรอใน Queue ในกรณีนจ
ี้ ะเกิด Queuing Delay
ระบบนีเ้ รียก M/M/N หรือ M/M/N/ แสดงได ้ด ้วย Simple Markov Model
State Probability จะมีการกระจายแบบ Second Erlang (Erlang C) Distribution
0
1
2
N
p i Pij  p j Pji
N+1

Queuing System Case 3: Delay System
Server=1; With Unlimited Queue; M/M/1
<
1
P[k ] 
 

p0  
 1  1  
 (1   ) 
p x   x (1   )
k e  
k!
Arrival Rate = 
Departure Rate = 
System, 1 Server
Customer
1.
2.
3.
4.
5.
6.
P[T  t ]  et / Ts ; Ts  1

Customer
สมมุตวิ า่ Customer แต่ละคนทีเ่ ข ้ามาเป็ น Poisson และได ้รับการ Service จากระบบทันที
้
เวลาทีใ่ ชในการ
Service เป็ น Random สมมุตวิ า่ เป็ น Exponential ด ้วยเวลาเฉลีย
่ T
ระบบสามารถรับ Customer ได ้ไม่จากัด แต่จะ Service ได ้ครัง้ ละคน
ถ ้าทุก Server เต็ม Customer ใหม่จะต ้องรอใน Queue ในกรณีนจ
ี้ ะเกิด Queuing Delay
ระบบนีเ้ รียก M/M/1 หรือ M/M/1/ แสดงได ้ด ้วย Simple Markov Model
State Probability จะมีการกระจายแบบ Second Erlang (Erlang C) Distribution
0
1
2
i
p i Pij  p j Pji
j

M/M/1: Summary

S
=1/Ts
Arrival = Poisson, 
Inter Arrival Time = Exponential, 1/
Service Rate, 
Service Time, Ts (1/) = Exponential
Queue = FIFO
1 Server
Queuing Model(1 Server);
M/M/1
Queue = 0, No Delay
Queue = Delay
0
Server ว่าง
arrival rate

1
N+1
N+2
X
Server Busy
1/Ts = service rate
For each server
  1 / Ts
การทางานของ M/M/1
State = 0
No Q Delay
Queue Empty
State = 1
State = x; Queue = infinity
Delay
Customer Wait in Q
State = x; x = Q+1
กรณีท ี่ Queue มีขนาดจากัด = Q
Severe Delay
Queue Overflow (Full)
Congestion
Packet Lost
Kendal Notation
Kendal Notation
Kendal Notation
Analysis ของ M/M/1
• สมมุตต
ิ อนแรกว่า Queue มีขนาดไม่จากัด
• ใช ้ M/M/1 ในการ Model แต่ละ Port ของ Router (หรือ
Switch L3)
• Arrival คือจานวน Packet ทีเ่ ข ้ามาในชว่ งเวลาหนึง่ ปกติ
วัดเป็ น pps
• ขนาดของ Packet สมมุตวิ า่ ไม่แน่นอน แต่มก
ี ารกระจาย
แบบ Exponential
– Service Time ของแต่ละ Packet จะเป็ น Exponential ด ้วย ทัง้ นี้
ขึน
้ อยูก
่ บ
ั ค่า Link Speed ของ Output Port
• ค่า Server Utilization เท่ากับอัตราสว่ นของ Arrival
Rate หารด ้วย Service Rate จะบ่งบอกอัตราสว่ นที่
Server จะ Busy และคือ Link Utilization ของ Output
Port ด ้วย
  /
Queuing in Communication
NW and M/M/1
Arrival Rate
Service Rate = 1/Service Time
  1/ Ts

   /   Ts
Example
• Router ได ้รับ Packet เฉลีย
่ 8 pps
– ความยาวของ Packet มีการกระจายแบบ Exponential
ด ้วยความยาวเฉลีย
่ 500 Octet
– Link ทีจ
่ ะสง่ ออกไป มีความเร็ว 64 kbps
• 1. Arrival Rate, = 8 pps
• 2. ความยาวเฉลีย
่ ของ Packet = 4000 bit
• 3. ความเร็ว Link = 64 k ดังนัน
้ Service Time, Ts
ของแต่ละ Packet = 4000/64k = 1/16
• 4. Service Rate() = 16 pps
• 5. Server Utilization = 8/16 =0.5 = 50%
Assumption
• 1. อย่าลืมว่า Packet ทีเ่ ข ้ามา ต ้องเป็ น
Independent และ Random มันจึงเป็ น
Poisson
• 2. ความยาวของ Packet จะสมมุตวิ า่ เป็ น
Exponential ดังนัน
้ Service Time จะเป็ น
Exponential ด ้วย แม ้ว่าสมมุตฐิ านนีจ
้ ะไม่
ถูกต ้องนัก
• 3. มี Output Link เดียว คือเป็ น Single
Server
• 4. ดังนีแ
้ ล ้ว จึงจะเป็ น M/M/1
Utilization
• Utilization บอกอัตราสว่ นที่ Server จะ
ั พันธ์กบ
Busy และสม
ั Probability ที่
Queue จะว่าง
– Probability ที่ Server ว่าง
1 
• ใน Network คือคือ Probability ที่
Output Link จะ Busy ด ้วย
   /   Ts
Arrival Rate
• เนือ
่ งจาก Arrival Rate มีการกระจายแบบ
Poisson ดังนัน
้ ถ ้าให ้  เป็ นอัตราเฉลีย
่
ของ Customer (Packet) ทีเ่ ข ้ามาใน
ชว่ งเวลา 1 วินาที
– Probability ทีจ
่ ะมี k customer (Packet) เข ้า
มาในชว่ งเวลา T วินาทีจะหาได ้จาก
(  T ) k e  T
p( X  k )  p(k ) 
k!
p(0)  e T
Service Time
• Ts เป็ น Service Time เฉลีย
่ และ Service
Rate หาได ้จาก   1/ Ts
• เนือ
่ งจาก Service Time เป็ น Random
Variable ทีม
่ ก
ี ารกระจายแบบ Exponential
ดังนัน
้ Probability ที่ Service Time จะมี
ค่าน ้อยกว่า T จะเป็ น
p(t  T )  1  e
T / Ts
Queue Distribution
• การกระจายของ Customer (State Probability)
สามารถคานวณได ้จาก Probability ที่ ระบบ จะมี
k Packet อยูด
่ งั นี้
pk  p0 (Ts ) k
• โดยที่ p0 คือ Probability ที่ ระบบ จะว่าง
p0  1    1  Ts
k
k
p

(
1


T
)(

T
)

(
1


)

• ดังนัน
้ เราได ้
k
s
s
• กล่าวคือ การกระจายของ Customer ในระบบ
หรือค่า State Probability จะเป็ น Geometric
Distribution
ค่าเฉลี่ย Customer ในระบบ, N คือค่าเฉลี่ย
ของ State, 𝐸[𝑋]
จาก 𝑃 𝑋 = 𝑥 = 𝑝𝑥 = 1 − 𝜌 𝜌 𝑥 เราได ้
∞
𝑥
𝐸𝑋 = ∞
𝑥
𝑝
=
(1
−
𝜌)
𝑥𝜌
𝑥
𝑥=0
𝑥=0
แต่จาก (CPE231)
∞
𝑥−1
𝑥𝜌
𝑥=0
ดังนัน
้
𝑋 = 1−𝜌 𝜌
∞
𝑥−1
𝑥𝜌
𝑥=0
1
= (1−𝜌)
2
=
𝜌
1−𝜌
Queuing Delay
• จาก Geometric Distribution ค่าเฉลีย
่
คือจานวน Customer เฉลีย
่ คือจานวน
Packet เฉลีย
่ ในระบบ จะหาได ้จาก
N

1 
• ถ ้าคิดเฉพาะจานวน Customer เฉลีย
่ ใน
Queue เราจะได ้

2
NQ  N   
 
1 
1 
Queuing Delay
• สาหรับ Network ค่าเฉลีย
่ จานวน Packet
เฉลีย
่ ใน ระบบ และใน Queue จะหาได ้จาก

2
N
NQ 
1 
1 
้
• ถ ้าแต่ละ Packet ต ้องใชเวลาเฉลี
ย
่ ในการ
Service Ts ดังนัน
้ ค่า Queuing Delay
จะเป็ น
Ts

W

1    
System Delay
้
• แต่ละ Packet ต ้องใชเวลาเฉลี
ย
่ ในการ
Service Ts ดังนัน
้ ค่า Queuing Delay
จะเป็ น
T

W
s
1 

 
• และเวลาเฉลีย
่ ทัง้ หมดทีล
่ ก
ู ค ้าจะต ้องรอใน
ระบบทัง้ หมดจะเป็ น

1
1
T  W  Ts 
 
    
Little’s Theorem
• ถ ้า T เป็ นเวลาเฉลีย
่ ทีล
่ ก
ู ค ้าอยูใ่ นระบบ และ
เป็ น Arrival Rate ดังนัน
้ จานวนลูกค ้า
เฉลีย
่ ในระบบจะเท่ากับ
N  T
N Q  W
สรุ ป M/M/1
สรุ ป M/M/1
สรุ ป M/M/1
M/M/1 Example 1
5
4
3
2
1
=?
S
=?
6
M/M/1 Example 1
M/M/1 Example 1
M/M/1 Example 1
M/M/1 Example 1
M/M/1 Example 2
=?
=?
M/M/1 Example 2
่ ่งกีที
่ (รวมที
่
่ ่งตอนใช้บริการ)เพือจะ
่
4.ธนาคารต้องจ ัดทีนั
นั
ให้แน่ ใจว่าอย่างน้อย 80% ของผู ท
้ เข้
ี่ ามาจะได้น่งั
่ ่งกีที
่ (รวมที
่
่ ่งตอนใช้บริการ)เพือจะ
่
4.ธนาคารต้องจ ัดทีนั
นั
ให้แน่ ใจว่าอย่างน้อย 80% ของผู ท
้ เข้
ี่ ามาจะได้น่งั
𝑥=9
M/M/1 Example 3
M/M/1 Example 3
M/M/1 Example 3
End of Chapter 6
• HW6 Due Monday Noon
– สง่ ทีพ
่ ห
ี่ นึง่ เท่านั น
้ ก่อนเทีย
่ ง จันทร์ 29 ก.พ.
่ ะกร ้า หน ้าโต๊ะ Counter อย่าสง่ ผิดที่
– ใสต
– เฉลยจะประกาศวันถัดไปบน Web
• Next
– Random Number Generator
– Preparation for Midterm Exam
Topics
•
•
•
•
Random Number and Properties
Random Number Test
Pseudo Random Number Generator
MT Exam Preparation
Random Number
• Random Number เป็ น Set ของตัวเลขที่
่ ขึน
สุม
้ มาแบบอิสระ(Random) และไม่ขน
ึ้ ต่อ
กัน (Independent) โดยมีคา่ การกระจาย
(Distribution) ของชุดตัวเลข ตามที่
กาหนดแบบใดแบบหนึง่
ั พันธ์
• เลขแต่ละตัวทีส
่ ม
ุ่ จะต ้องไม่มค
ี วามสม
กัน ทดสอบได ้จากค่า Correlation
การใช้ งาน Random Number
•
•
•
•
•
•
Gambling
Statistical Sampling
Simulation
Cryptography
Computer Games
Hash Algorithm/Searching Algorithm
Random Number Generation
้ นตัวกาเนิดชุดของตัวเลข
• เป็ นอุปกรณ์ทใี่ ชเป็
Random ทีต
่ ้องการ
– True Random Number Generator(TRNG)
• ประกอบด ้วยอุปกรณ์ทาง Physic ทีใ่ ชก้ าเนิดตัวเลข
• มักจะได ้จากแหล่งกาเนิดของ Noise ทีเ่ กิดตาม
ธรรมชาติ
– Thermal Noise/Shot Noise/Radioactive
• หรือใช ้ Roulette Wheel
– Pseudo Random Number Generator(PRNG)
• Computational Algorithm จากสมการทาง
คณิตศาสตร์ โดยเริม
่ จากตัวเลข “Seed”
• มีคณ
ุ สมบติเหมือนกับเป็ น Random แต่ม ี Period และ
สามารถคานวณล่วงหน ้าตามสมการได ้
PRNG: Pseudo Random Number Generator:
Linear Congruential Generator
• เริม
่ จาก “Seed”, 𝑋0 และคานวณ Series
𝑋1 , 𝑋2 , 𝑋3 , … จากสมการ Recurrence
𝑋𝑛+1 = 𝑎𝑋𝑛 + 𝑏 𝑚𝑜𝑑 𝑚
–
a, b และ m เป็ น Integer ปกติจะมีขนาดใหญ่; จานวนเลขสูงสุด
ทีไ่ ม่ซ้ากันจะถูกกาหนดด ้วยค่า Modulus m
•
•
•
•
•
–
Sequence ทีไ่ ด ้จะมีคา่ ระหว่าง [0,m) หรือ 0 ≤ 𝑋 < 𝑚
Seed 𝑋0 ; 0 ≤ 𝑋0 < 𝑚
Multiplier 𝑎; 0 < 𝑎 < 𝑚
Increment 𝑏; 0 ≤ 𝑏 < 𝑚
ถ ้า b = 0 เราเรียก Multiplicative Congruential Generator หรือ Lehmer
Generator มิฉะนัน
้ แล ้วเราเรียก Mixed Congruential Generator
ตัวเลขทีไ่ ด ้จะมีการกระจายแบบ Uniform ถ ้าต ้องการการกระจาย
้
แบบอืน
่ จะใชการ
Transformation
– Algorithm นีเ้ รียก LCG หรือ Linear Congruential
Generator เป็ นวิธท
ี งี่ า่ ยในการสร ้าง PRN
Period of LCG
• Period มีคา่ ได ้สูงสุดคือ m เรียก Full
Period
– บางกรณีจะได ้น ้อยกว่านัน
้ ขึน
้ อยูก
่ บ
ั การเลือกค่า
‘a’ และในกรณีท ี่ b=0
• Generator จะมี Full Period ก็ตอ
่ เมือ
่
(Hull-Dobell Theorem)
– 1. b และ m เป็ น Relative Prime
– 2. a-1 จะต ้องสามารถหารได ้ด ้วยทุกๆ factor
ทีเ่ ป็ นค่า prime ของ m
– 3. a-1 จะต ้องหารได ้ด ้วย 4 ถ ้า m หารได ้ด ้วย 4
Parameters used
• สว่ นใหญ่จะใช ้ LCG ที่ m มีคา่ เป็ นกาลังของ
2 ทีน
่ ย
ิ มมากสุดคือ 232 และ 264
– MS Visual C++ ใช ้ m=232,
a=214013,b=2531011
– MS Visual Basic 6 ใช ้ m=224,
a=1140671485,b=12820163
คุณสมบัติ LCG
• มีข ้อดีคอ
ื คานวณได ้ง่าย แต่ให ้ Series ของ
Random Number ทีม
่ ค
ี ณ
ุ สมบัตพ
ิ อประมาณ
เท่านัน
้ เพราะให ้ค่า Serial Correlation สูง
้ Monte Carlo
– ไม่เหมาะกับการนาไปใชใน
Simulation
้ Cryptography
– ไม่เหมาะกับการนาไปใชใน
• สามารถสร ้างได ้จากวงจร Linear Feedback
Shift Register(LFSR)
– ปกติวงจรนีจ
้ ะผลิต Stream ของ bit
• ได ้ Uniform Distributed PRNG
PRNG อื่นๆ เช่น
•
•
•
•
•
•
•
Blum Blum Shub
Wichmann-Hill
Multiply with Carry
Mersenne Twister (นิยมมากสุด)
Park-Miller
RC4
Rule 30
Randomness Test
• เพือ
่ หา Pattern ในชุด หรือ Series ของตัวเลข
– ซงึ่ ไม่ควรจะมีอยูถ
่ ้าชุดตัวเลขเป็ น Random และ
Independent อย่างแท ้จริง
้
• ใชในการทดสอบ
และเปรียบเทียบ Algorithm ต่างๆ
้ ต PRNG โดยใชพื
้ น
ทีใ่ ชผลิ
้ ฐานจาก
– Statistical Test ทดสอบจากคุณสมบัตท
ิ างสถิต ิ
• Diehard Tests ประกอบด ้วยชุดของ Test
• TestU01 library ประกอบด ้วย utilities สาหรับ
statistical testing ของ uniform RNG
– Transform ดูคณ
ุ สมบัตเิ มือ
่ Transform
• Hadamard Transform(Generalized FT)
ั ซอนของตั
้
– Complexity ความซบ
วเลข
• Kolmogorov complexity
Midterm Preparation
็ ต์
• เก็บ 35 เปอร์เซน
• ไม่มก
ี าร Make Up
• สอบ 3 ชวั่ โมง บทที่ 1-6
– Monday 7 March; 13:30 – 16:30
้ อ
• ต ้องใชเครื
่ งคิดเลข
– รุน
่ ตามทีค
่ ณะประกาศเท่านั น
้ ห ้ามใชอุ้ ปกรณ์อน
ื่ ๆ
• สมการทีส
่ าคัญจะให ้มา ไม่ต ้องจา
• 6 ข้อ บทละ 1 ข้อ รวม 6 ข้อ เลือกทำ 5 ข้อ
– 5 ข้อ 50 คะแนน คิดเป็น 35 %
สมกำรทีใ่ ห้
ในกำรสอบ MT
Review หัวข้ อออกสอบ
• Chapter 1: Vector
–
–
–
–
–
Magnitude/Direction/Unit Vector
Direction Cosine
Component Vector/Position Vector
Dot/Cross Product and Properties
Equation of Line and Plane, Angle of Vectors
• Chapter 2: Matrices
–
–
–
–
–
Types of Matrices, Minor, Cofactor, Diagonal
Determinant by Expansion
Inverse of Matrix
Rank/Reduced Matrix (Process of Elimination)
Homogeneous/Non Homogeneous Linear Eq.
Review หัวข้ อออกสอบ
• Chapter 3: Eigen Value/Vector/Diag
–
–
–
–
Eigenvalues
Eigenvectors
Diagonalization
Symmetric/Orthogonal Matrix
• Chapter 4: Probability
–
–
–
–
–
–
Conditional Probability/Bayes Rule
Random Variable
CDF/PDF/PMF; Poisson/Exponential Distribution
Expectation Concept
Mean, Mean Square, Variance
Joint Random Variable, Correlation/Covariance
Review หัวข้ อออกสอบ
• Chapter 5: Random Process
–
–
–
–
–
Stationary/Ergodic
Autocorrelation/Cross Correlation
Counting/Poisson Process/Birth and Death Process
MarKov Model; Global Balanced Equation
Simple MarKov Model; Detail Balanced Equation
• Chapter 6: Queuing System
–
–
–
–
–
M/M/1 Concept
Arrival Rate/Inter Arrival Time
Departure Rate/Service Time
Utilization, P[X=k], P[X<=k]
Average Customer(System/Q), Time(System/Q)