3.3. Ngôn ngữ mô phỏng GPSS
3.3.9. Các bước phân tích và mô phỏng bài toán trên GPSS World
Trước hết ta cần khảo sát và nghiên cứu 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 các thông số của hệ thống như: số nguồn các yêu cầu, mỗi nguồn sinh các yêu cầu theo quy luật phân phối 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ắc ghi các yêu vào hàng đợ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í các yêu cầu, thời gian phục vụ theo quy luật phân phối ngẫu nhiên nào. Quy trình chung ứng dụng GPSS để mô phỏng một hệ thống hàng đợi như sau:
Bước 1: Xác định luật phân bố đầu vào (input) của các kênh phục vụ. Xác định các
biến số thời gian gắn liền với đầu vào của các sự kiện. Từ đó lựa chọn hàm phân bố tương ứng trong GPSS.
Bước 2: 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 GPSS.
Bước 3: Xây dựng chương trình với công cụ GPSS và chạy chương trình, đưa ra kết
quả mô phỏng.
Với mô hình 3 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.
Để mô phỏng hệ thống phục vụ đám đông bằng ngôn ngữ mô phỏng GPSS cần cài đặt một công cụ hỗ trợ ngôn ngữ này. Có nhiều phiên bản khác nhau GPSS World Personal Version, GPSS World Commercial Version, GPSS World Student Version… do công ty Minuteman software (http://www.minutemansoftware.com ) cung cấp [14]; trong đó phiên bản GPSS World Student Version là phiên bản được cung cấp miễn phí nhằm mục đích học tập và nghiên cứu. Trong đề tài này tôi đã sử dụng phiên bản này.
Sau khi tải phiên bản miễn phí GPSS World Student Version về, tiến hành cài đặt như các phần mềm thông thường.
Để mô phỏng một hệ thống phục vụ đám đông thực hiện như sau:
- Tạo một mô hình: vào menu File / New /Model /OK.
- Thực hiện viết code chương trình bằng ngôn ngữ GPSS cho hệ thống.
- Tạo mô phỏng mới: vào menu Command / Create Simulation. Và lúc này ở menu Simulation Window sẽ xuất hiện các chức năng như: Blocks Window, Facilities Window, Plot Window, Queues Window,… cho phép theo dõi quá trình mô phỏng và tính toán.
- Theo dõi và phân tích kết quả.
Để điều khiển quá trình mô phỏng người sử dụng có thể dùng các lệnh trong menu Command như: START, STEP, HALT, CONTINUE. Khi quá trình mô phỏng kết thúc, theo mặc định cửa sổ báo cáo kết quả REPORT sẽ xuất hiện.
Đây là một ví dụ mô phỏng đơn giản:
Hình 3.3. Mô hình một chương trình mô phỏng hệ thống hàng đợi đơn giản
GENERATE mô tả việc “yêu cầu” xuất hiện trong hệ thống.
SEIZE yêu cầu được phục vụ, nếu kênh phục vụ bận thì “yêu cầu” phải tiếp tục bị giữ ở trong hàng đợi, ngược lại thì “yêu cầu” sẽ được chuyển vào kênh phục vụ
DEPART biểu diễn việc “yêu cầu” được ra khỏi hàng đợi
ADVANCE mô tả việc “yêu cầu” được phục vụ ở kênh phục vụ (máy phục vụ).
RELEASE giải phóng kênh phục vụ
TERMINATE “yêu cầu” được giải phóng khỏi hệ thống.
Một chương trình mô phỏng trong GPSS World sẽ có dạng như hình 3.4:
Kết luận
Chương 3 trình bày nghiên cứu về ngôn ngữ mô phỏng GPSS - ngôn ngữ đặc tả liên quan đến bài toán hàng đợi.
Ngôn ngữ GPSS và công cụ GPSS World có những ưu điểm riêng biệt khi giải quyết các bài toán hàng đợi khi chúng làm việc với các giao tác, các khối dựa trên một giải thuật nào đó. Đồng thời tập trung làm rõ thao tác lệnh của ngôn ngữ GPSS, các lệnh tạo các khối, lệnh khai báo đối tượng, lệnh điều khiển, và lệnh vận hành. Các đối tượng trong ngôn ngữ GPSS được phân chia rõ ràng cũng như chỉ ra các đặc trưng của các giao tác và các khối làm việc với giao tác. Về bản chất, ngôn ngữ GPSS hướng đối tượng này làm việc dựa trên các giao tác, tạo ra, quản lý chúng dưới dạng giai đoạn hoặc các khối. Giao tác có thể được coi là một “yêu cầu” hay một “sự kiện” trong bài toán hàng đợi, chúng liên kết với nhau dưới dạng các chuỗi.
Cuối cùng, đưa ra tiến trình chung để tiến hành mô phỏng một hệ thống hàng đợi trên công cụ GPSS World, đó là cần trải qua các giai đoạn phân tích, lập sơ đồ giải thuật, viết mã nguồn, chạy chương trình, sửa lỗi, hiển thị kết quả, đánh giá kết quả.
Chương 4
ỨNG DỤNG CÔNG CỤ MÔ PHỎNG
VÀO MÔ PHỎNG HỆ THỐNG HÀNG ĐỢI THỰC TẾ
Chương này sẽ tập trung giải quyết bài toán trong thực tế để làm rõ khả năng áp dụng của ngôn ngữ mô phỏng GPSS vào bài toán kiểm soát XNC tại sân bay quốc tế Nội Bài.