Giới thiệu mô phỏng sự kiện rời rạc

Mô phỏng Sự kiện Rời rạc bằng Python

Diogo Costa (PhD, MSc)

Adjunct Professor, University of Saskatchewan, Canada & CEO of ImpactBLUE-Scientific

Mô hình sự kiện rời rạc vs. mô hình liên tục

Mô hình liên tục

  • Chạy theo bước thời gian cố định

  • Thời gian là biến giả

    • Thời gian không được cập nhật bên trong vòng lặp
  • Dùng vòng lặp for theo thời gian

    for t in range(time_range):
    

Mô hình sự kiện rời rạc

  • Chạy theo bước thời gian biến đổi

    • Chạy/Lên lịch các sự kiện rời rạc có thời lượng khác nhau theo thời gian
  • Thời gian là biến trạng thái

    • Thời gian được cập nhật trong vòng lặp while
    • Thời gian không phải biến giả
  • Thường dùng vòng lặp while

    while (time < 365):
    time += process_duration
    
Mô phỏng Sự kiện Rời rạc bằng Python

Thành phần của mô hình sự kiện rời rạc

  • Biến trạng thái
  • Đồng hồ
  • Danh sách sự kiện (hoặc Danh sách quy trình)
  • Điều kiện kết thúc
Mô phỏng Sự kiện Rời rạc bằng Python

Thành phần mô hình

Ví dụ: mô hình hãng taxi

while (time < 10):

    # Process 1
    time_duration_1 = manage_requests()
    time += time_duration_1

    # Process 2
    time_duration_2 = dispatch_taxi()
    time += time_duration_2

Điều kiện kết thúc

while (time < 10)
  • Điều kiện chấm dứt mô phỏng
Mô phỏng Sự kiện Rời rạc bằng Python

Thành phần mô hình

Ví dụ: mô hình hãng taxi

while (time < 10):

    # Process 1
    time_duration_1 = manage_requests()
    time += time_duration_1

    # Process 2
    time_duration_2 = dispatch_taxi()
    time += time_duration_2

Đồng hồ

time += time_duration_1
time += time_duration_2
  • time theo dõi thời gian mô phỏng hiện tại
  • Đồng hồ nhảy đến thời điểm bắt đầu sự kiện kế tiếp khi mô phỏng tiến triển
  • Thời gian “nhảy cóc” vì sự kiện diễn ra tức thời
Mô phỏng Sự kiện Rời rạc bằng Python

Thành phần mô hình

Ví dụ: mô hình hãng taxi

while (time < 10):

    # Process 1
    time_duration_1 = manage_requests()
    time += time_duration_1

    # Process 2
    time_duration_2 = dispatch_taxi()
    time += time_duration_2

Biến trạng thái

time
  • Giảm thời gian từ lúc khách gọi đến khi được trả xuống

  • Các biến đặc trưng đầu ra và hiệu suất hệ thống

Mô phỏng Sự kiện Rời rạc bằng Python

Ayo berlatih!

Mô phỏng Sự kiện Rời rạc bằng Python

Preparing Video For Download...