1. Học hỏi
  2. /
  3. Khoa Học
  4. /
  5. Mô phỏng Sự kiện Rời rạc bằng Python

Connected

Bài tập

Lấy mẫu Monte Carlo cho mô hình sự kiện rời rạc với SimPy

Giờ hãy xây dựng lại phân tích lấy mẫu Monte Carlo dùng phiên bản mô hình viết bằng SimPy. Mô hình SimPy có một generator tên là manufacturing_process, mô phỏng các quy trình khác nhau, và một hàm run_monte_carlo chạy mô hình nhiều lần, lưu thông tin vào mảng NumPy có tên time_record.

Đoạn mã vẽ kết quả tương tự như bài tập trước, nhưng đã được chuyển vào một hàm tên plot_results() như bên dưới.

def plot_results():

    df_disc = pd.DataFrame({cNam[0]: process_line_space, cNam[1]: time_record})
    fig = sns.lineplot(data=df_disc, x=cNam[0], y=cNam[1], marker="o")
    fig.set(xlim=(0, len(processes) + 1))
    plt.plot() 

Vòng lặp lấy mẫu Monte Carlo sẽ tạo ra một loạt quỹ đạo quy trình có thể xảy ra, như trong hình minh họa. Monte Carlo trajectories for different process scenario.

Hướng dẫn

100 XP
  • Ghi nhận thời lượng bằng cách clock-in và yield process_duration.
  • Lưu thời gian hiện tại vào time_record.
  • Chạy vòng lặp for cho n_trajectories mẫu với biến giả t.
  • Tạo môi trường SimPy, thêm các quy trình và chạy mô hình.