Mô phỏng là một hình thức bắt chước hoạt động của một quá trình hoặc hệ thống;[1] thể hiện hoạt động của nó theo thời gian.
Mô phỏng được sử dụng trong nhiều bối cảnh, chẳng hạn như mô phỏng công nghệ để điều chỉnh hiệu suất hoặc tối ưu hóa, kỹ thuật an toàn, thử nghiệm, đào tạo, giáo dục và trò chơi video. Thông thường, các thí nghiệm máy tính được sử dụng để nghiên cứu các mô hình mô phỏng. Mô phỏng cũng được sử dụng với mô hình khoa học về các hệ thống tự nhiên hoặc hệ thống của con người để hiểu rõ hơn về chức năng của chúng,[2] như trong kinh tế học. Mô phỏng có thể được sử dụng để hiển thị các hiệu ứng thực tế cuối cùng của các điều kiện thay thế và các khóa học hành động. Mô phỏng cũng được sử dụng khi hệ thống thực không thể được tham gia, bởi vì nó có thể không truy cập được, hoặc có thể nguy hiểm hoặc không thể chấp nhận được, hoặc nó đang được thiết kế nhưng chưa được xây dựng, hoặc đơn giản là nó không tồn tại.[3]
Các vấn đề chính trong mô phỏng bao gồm việc thu thập các nguồn thông tin hợp lệ về việc lựa chọn các đặc điểm và hành vi chính có liên quan, việc sử dụng đơn giản hóa các xấp xỉ và giả định trong mô phỏng, và tính trung thực và tính hợp lệ của các kết quả mô phỏng. Các thủ tục và giao thức để xác minh và xác nhận mô hình là một lĩnh vực liên tục của nghiên cứu học thuật, sàng lọc, nghiên cứu và phát triển trong công nghệ mô phỏng hoặc thực hành, đặc biệt là trong công việc mô phỏng máy tính.
Trong lịch sử, các mô phỏng được sử dụng trong các lĩnh vực khác nhau đã phát triển độc lập, nhưng các nghiên cứu về lý thuyết hệ thống và điều khiển học thế kỷ 20 kết hợp với việc sử dụng máy tính trên tất cả các lĩnh vực đó đã dẫn đến một sự thống nhất và một cách nhìn có hệ thống hơn về khái niệm này.
Mô phỏng vật lý đề cập đến mô phỏng trong đó các đối tượng vật lý được thay thế cho vật thật (một số vòng tròn sử dụng thuật ngữ mô phỏng máy tính mô hình hóa các định luật vật lý được chọn, nhưng bài viết này thì không). Những đối tượng vật lý này thường được chọn vì chúng nhỏ hơn hoặc rẻ hơn so với đối tượng hoặc hệ thống thực tế.
Mô phỏng tương tác là một loại mô phỏng vật lý đặc biệt, thường được gọi là mô phỏng con người trong vòng lặp, trong đó mô phỏng vật lý bao gồm các toán tử người, như trong chương trình mô phỏng bay, giả lập thuyền buồm hoặc mô phỏng lái xe.
Mô phỏng liên tục là một mô phỏng dựa trên thời gian liên tục, thay vì các bước thời gian rời rạc, sử dụng tích hợp số của phương trình vi phân.[4]
Mô phỏng sự kiện rời rạc là một mô phỏng dựa trên các bước thời gian riêng biệt, được chọn để thể hiện các thời điểm quan trọng, trong khi các giá trị của các biến trong mỗi giai đoạn can thiệp không liên quan.[5]
Mô phỏng ngẫu nhiên là một mô phỏng trong đó một số biến hoặc quá trình có thể thay đổi ngẫu nhiên và được chiếu bằng các kỹ thuật Monte Carlo sử dụng các số giả ngẫu nhiên. Do đó, các lần chạy được nhân rộng với cùng điều kiện biên sẽ tạo ra kết quả khác nhau trong một dải tin cậy cụ thể.[4]
Mô phỏng xác định là một mô phỏng không ngẫu nhiên: do đó các biến được điều chỉnh bởi các thuật toán xác định. Vì vậy, sao chép chạy từ cùng điều kiện biên luôn tạo ra kết quả giống hệt nhau.
Mô phỏng lai tạo (đôi khi được gọi là mô phỏng kết hợp) tương ứng với sự pha trộn giữa mô phỏng sự kiện liên tục và rời rạc và kết quả là tích hợp các phương trình vi phân giữa hai sự kiện liên tiếp để giảm số lần gián đoạn.[6]
Một mô phỏng độc lập là một mô phỏng chạy trên một máy trạm duy nhất của chính nó.
Mô phỏng thời gian thực là một mô phỏng có thể thực thi với tốc độ tương tự như thời gian thực trên đồng hồ treo tường thực tế.[7]
Mô phỏng phân tán là một mô phỏng sử dụng đồng thời nhiều máy tính để đảm bảo quyền truy cập từ / đến các tài nguyên khác nhau (ví dụ: nhiều người dùng vận hành các hệ thống khác nhau hoặc các bộ dữ liệu phân tán); một ví dụ cổ điển là Mô phỏng tương tác phân tán (DIS - Distributed Interactive Simulation).[8]
Mô phỏng song song thường được thực hiện trên nhiều bộ xử lý để phân phối khối lượng công việc tính toán như đang diễn ra trong các máy tính hiệu suất cao [9]
Mô phỏng hoạt động lẫn nhau là mô phỏng trong đó nhiều mô hình, mô phỏng (thường được xác định là Liên kết) hoạt động cục bộ, được phân phối qua mạng; một ví dụ cổ điển là High Level Architecture.[10][11]
Mô hình hóa & mô phỏng như một dịch vụ trong đó mô phỏng được truy cập như một dịch vụ trên web.[12]