Bắt đầu ngayBắt đầu miễn phí

Sản xuất may mặc: Nhiều công đoạn và tính mô-đun

Bạn được giao tạo một mô hình sự kiện rời rạc để hỗ trợ tối ưu hóa một nhà máy sản xuất may mặc ở thành phố Milan (Ý), được mệnh danh là kinh đô thời trang.

Bạn rất hào hứng và muốn bảo đảm mình xây dựng một mô hình hữu ích, có thể mở rộng, vì bạn biết ngành may mặc phức tạp, liên quan đến nhiều công đoạn và nguồn lực mà bạn vẫn đang làm quen.

Bạn đã nghiên cứu và lập ra danh sách quy trình như trong bảng bên dưới. Bạn cũng cẩn thận tạo một hàm riêng cho từng quy trình để mô hình có tính mô-đun và có thể mở rộng theo cách kiểm soát được.

Giờ đây, sau khi nhận phản hồi từ quản lý, bạn được yêu cầu bổ sung một quy trình mới vào mô hình để tính đến "Spot cleaning and laundry" (làm sạch điểm và giặt), quy trình này cần đặt giữa bước 8 và 9 (xem hàng trong bảng được tô đỏ). Các gói randomsimpy đã được import.

Table with process names, respective functions, and information about whether the process has been incorporated in the model.

Bài tập này là một phần của khóa học

Mô phỏng Sự kiện Rời rạc bằng Python

Xem khóa học

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Create a function for the new process
def ____(gen_type=None, gauss_mean=None, gauss_std=None, unif_start=None, unif_end=None):
  if gen_type == "gauss":
    duration = random.gauss(gauss_mean, gauss_std)
  elif gen_type == "uniform":
    duration = random.uniform(unif_start, unif_end)
  return duration

def all_processes(env, prod_line):

  with prod_line.request() as request:
    yield request

    t1 = fabric_relaxing(gen_type="gauss", gauss_mean=2*60, gauss_std=15)
    t2 = spread_form_layout(gen_type="gauss", gauss_mean=6, gauss_std=1)
    t3 = laying_paper_pattern(gen_type="uniform", unif_start=3, unif_end=0.5)
    t4 = marking(gen_type="gauss", gauss_mean=6, gauss_std=1)
    t5 = cutting(gen_type="gauss", gauss_mean=5, gauss_std=0.5)
    t6 = embroidery_screen_and_printing(gen_type="uniform", unif_start=10, unif_end=2)
    t7 = sewing(gen_type="gauss", gauss_mean=15, gauss_std=3)
    t8 = checking(gen_type="gauss", gauss_mean=2, gauss_std=0.5)

    # Add the new process
    tnew = ____

    # Account for the new process duration in the entire process duration
    total_duration = sum([t1, t2, t3, t4, t5, t6, t7, t8, ____, t9, t10])

    yield env.timeout(total_duration)
Chỉnh sửa và Chạy Mã