Các bƣớc trong mô phỏng một hệ thống

Một phần của tài liệu NGHIÊN cứu mô PHỎNG và TÍNH GIÁ THÀNH (Trang 49 - 51)

Khi sử dụng mô phỏng để nghiên cứu, đánh giá một hệ thống, cần phải trải qua các bƣớc sau:

a) Xác định rõ bài toán mô phỏng

Trƣớc khi thực hiện xây dựng mô hình của bất cứ hệ thống nào, cần nắm rõ hoạt động cũng nhƣ mối quan hệ bên trong của hệ thống đó. Cũng cần phải xác định rõ các mục tiêu cần đạt đƣợc của thực hiện mô phỏng.

b) Xây dựng mô hình

Sau khi xác định rõ đƣợc bài toán, bƣớc tiếp theo là xây dựng nên mô hình mô phỏng. Bƣớc này chỉ là xây dựng nên các mối quan hệ logic giữa các phần tử trong mô hình, đầu vào và đầu ra của mô hình. Cần phải xác định đƣợc mô hình cần chi tiết đến mức độ nào, phần nào của hệ thống phải trừu tƣợng hóa. Trong thực tế, không mô hình nào biểu diễn chính xác toàn bộ hoạt động của hệ thống, mà thƣờng sẽ chỉ xấp xỷ chính xác với một số thực thể cần nghiên cứu của hệ thống. Hay nói cách khác, ta cần phải đƣa các điều kiện ràng buộc ban đầu vào mô hình mô phỏng.

c) Thu thập dữ liệu cho mô hình

Để thực hiện mô phỏng, có thể lấy các dữ liệu cho đầu vào từ các giá trị đầu vào đo đƣợc của một hệ thống thật (lấy mẫu), hoặc sử dụng các biến ngẫu nhiên. Việc tạo nên các con số ngẫu nhiên đầu vào này đóng vai trò rất quan trọng vì thông thƣờng chỉ sử dụng các con số giả ngẫu nhiên, rất dễ lặp lại và dẫn đến kết quả không chính xác. Thƣờng gặp nhất là khi mô phỏng các sự kiện ít xảy ra, ví dụ nhƣ

50

lỗi bit trên kênh truyền chất lƣợng tốt, do đó thời gian mô phỏng rất lâu, sử dụng chuỗi các con số ngẫu nhiên rất lớn nên việc lặp lại chuỗi ngẫu nhiên là dễ xảy ra.

d) Biên dịch mô hình

Đây chính là quá trình lập trình, xây dựng nên phần mềm biểu diễn mô hình mô phỏng. Có thể sử dụng các ngôn ngữ lập trình bậc cao nhƣ C, C++ hoặc sử dụng kết hợp với các công cụ mô phỏng là các phần mềm sẵn có nhƣ OPNET, NS-2, OMNET++, SIMGRID…để xây dựng nên mô hình.

e) Kiểm tra (verification)

Để đảm bảo quá trình lập trình biên dịch mô hình là chính xác. Thực ra bƣớc này giống nhƣ quá trình tìm lỗi (debug), dựa trên các đầu vào khác nhau, dựa trên lƣu đồ của mô hình để kiểm tra tính chính xác của quá trình biên dịch mô hình sang chƣơng trình phần mềm. Ngoài hậu quả là làm sai kết quả, việc biên dịch không tốt có thể dẫn đến thời gian thực hiện mô phỏng sẽ là rất lâu, không khả thi để thực hiện.

f) Xác minh tính chính xác của mô hình (validation)

Để đảm bảo mô hình đã xây dựng hoạt động giống với hệ thống thật, từ đó có thể tin tƣởng vào kết quả của mô phỏng trên mô hình đó. Đây là bƣớc rất quan trọng vì các số liệu đạt đƣợc từ mô phỏng sẽ không có ý nghĩa gì nếu nó không phản ánh đúng kết quả của hệ thống thật. Phƣơng pháp thƣờng dùng hơn là so sánh với dữ liệu lấy đƣợc từ hệ thống thật. Nếu hệ thống thật cần so sánh chƣa tồn tại, có thể đơn giản hóa các điều kiện ràng buộc về tham số đầu vào để có thể so sánh kết quả mô phỏng với kết quả có đƣợc thông qua phân tích tính toán (thƣờng là các khoản giới hạn dƣới hoặc trên).

g) Thử nghiệm trên mô hình

Ở bƣớc này cần xác định tập các tham số cần đánh giá trong mỗi lần thử nghiệm. Đối với các tham số, cũng cần xác định phạm vi thay đổi cũng nhƣ tham số

51

nào cố định, tham số nào thay đổi. Mục đích của bƣớc này là thu đƣợc càng nhiều thông tin cần thiết mà phải thực hiện càng ít lần chạy mô phỏng càng tốt

h) Phân tích kết quả thu đƣợc

Thông qua mô phỏng, ta có thể có đƣợc giá trị thống kê (trung bình, phƣơng sai), phạm vi biến thiên…của các tham số trên. Nếu sử dụng các phần mềm mô phỏng nhƣ OPNET, OMNET++…, việc phân tích một số kết quả cơ bản đã đƣợc tích hợp sẵn. Nếu chƣơng trình mô phỏng đƣợc xây dựng trên ngôn ngữ lập trình C, C++.., thì từ kết quả thu đƣợc, có thể phải sử dụng thêm các phần mềm nhƣ Excel để hỗ trợ vẽ kết quả, đánh giá xu hƣớng tăng, giảm…Một vấn đề rất cần chú ý trong phần này là xác định mức độ chính xác, ổn định của kết quả.

Một phần của tài liệu NGHIÊN cứu mô PHỎNG và TÍNH GIÁ THÀNH (Trang 49 - 51)