Simulasi adalah suatu teknik untuk mempelajari interaksi internal sistem yang kompleks dengan membuat model matematika dari sistem tersebut dan mengevaluasi model tersebut. Langkah-langkah dalam simulasi meliputi pengembangan model, pengumpulan data, verifikasi dan validasi model, serta penggunaan model untuk mengestimasi karakteristik yang diharapkan dari sistem. Kondisi yang memerlukan simulasi antara lain ketika sistem yang akan dipelajari terlalu kompleks, ketika sistem tersebut belum pernah ada sebelumnya, atau ketika sistem tersebut terlalu mahal untuk diuji secara fisik. Namun, simulasi tidak selalu diperlukan dalam suatu proyek. Kondisi yang tidak memerlukan simulasi antara lain ketika sistem yang akan dipelajari sudah cukup sederhana, ketika data yang diperlukan sudah tersedia, atau ketika biaya simulasi dianggap terlalu mahal. Dalam membuat model simulasi, sifat-sifat relevant dari sistem harus ditetapkan dalam suatu cara yang praktis dan dinyatakan dalam suatu set deskripsi