Professional Documents
Culture Documents
2. Bài toán xác định vị trí cơ sở Log tối ưu (Green Field Analysis)
❖ Mục tiêu
❖ Một chút cơ sở lý thuyết
❖ Thực hành
➢ GFA cho cơ sở dịch vụ mới
➢ Xác định các thông số và cơ cấu SC
➢ Thử nghiệm với GFA mới
➢ Mô phỏng thử nghiệm với GFA mới
➢ Phân tích thử nghiệm
3. Tối ưu hóa mạng lưới và tối ưu hóa vận tải
4. Các chính sách sản xuất (producing), tìm nguồn cung ứng (sourcing) trong chuỗi nhiều cấp
5. Phân tích rủi ro trong SC, hiệu ứng bullwhip (roi da) và hiệu ứng ripple (lan tỏa)
❑ Phát triển các kỹ năng kỹ thuật bạn cần thiết sử dụng AnyLogic nhằm tạo mô hình chuỗi
cung ứng hai giai đoạn, thực hiện thử nghiệm và đo lường hiệu quả
❑ Hiểu được sự đánh đổi (trade-off) chính trong việc quy hoạch vị trí cơ sở ảnh hưởng đến số
lượng địa điểm, thời gian thực hiện và sự không chắc chắn về nhu cầu
2. Bài toán xác định vị trí cơ sở Log tối ưu (Green Field Analysis)
❖ Mục tiêu
❖ Một chút cơ sở lý thuyết
❖ Thực hành
➢ GFA cho cơ sở dịch vụ mới
➢ Xác định các thông số và cơ cấu SC
➢ Thử nghiệm với GFA mới
➢ Mô phỏng thử nghiệm với GFA mới
➢ Phân tích thử nghiệm
3. Tối ưu hóa mạng lưới và tối ưu hóa vận tải
4. Các chính sách sản xuất (producing), tìm nguồn cung ứng (sourcing) trong chuỗi nhiều cấp
5. Phân tích rủi ro trong SC, hiệu ứng bullwhip (roi da) và hiệu ứng ripple (lan tỏa)
❑ Có thể thấy tổng chi phí vận chuyển Z phụ thuộc vào tọa độ px và py của các kho hàng tiềm năng
và khoảng cách. Do đó, cần xác định khoảng cách d((px;py); (xi;yi)) giữa địa điểm của khách hàng
thứ i và kho hàng để tính chi phí vận chuyển.
❑ Nguyên tắc là thay đổi px, py để tìm kiếm vị trí mà ở đó Z nhỏ nhất
2. Bài toán xác định vị trí cơ sở Log tối ưu (Green Field Analysis)
❖ Mục tiêu
❖ Một chút cơ sở lý thuyết
❖ Thực hành
➢ GFA cho cơ sở dịch vụ mới
➢ Xác định các thông số và cơ cấu SC
➢ Thử nghiệm với GFA mới
➢ Mô phỏng thử nghiệm với GFA mới
➢ Phân tích thử nghiệm
3. Tối ưu hóa mạng lưới và tối ưu hóa vận tải
4. Các chính sách sản xuất (producing), tìm nguồn cung ứng (sourcing) trong chuỗi nhiều cấp
5. Phân tích rủi ro trong SC, hiệu ứng bullwhip (roi da) và hiệu ứng ripple (lan tỏa)
1. Tạo kịch bản và xác định cấu trúc cũng như các thông số của chuỗi cung ứng (trình bày sau)
2. Xác định nhu cầu khách hàng trong SC, xác định chính sách vận chuyển và tìm nguồn cung
ứng của SC
3. Tham số hóa (gán các tham số) các khu vực (khách hàng và DCs) và tham số hóa các chính
sách
4. Thực hiện thử nghiệm phân tích GFA để xác định vị trí tốt nhất cho một hoặc nhiều nhà kho
5. Tạo bảng thông tin (dash board) KPI và thu thập số liệu thống kê về năng lực (performance)
của chuỗi cung ứng
6. Mô phỏng thiết kế chuỗi cung ứng với các địa điểm mới và xác định tác động của các địa
điểm đó
2
3
Projects: Hiển thị/cho phép truy cập vào mô hình AnyLogic Simulation experiment (mô
đang được mở trong không gian làm việc workspace phỏng)
Palette: Bao gồm tất cả các thành phần đồ họa có thể thêm
hoặc chỉnh sửa bằng thao tác kéo-thả
Nguyen Van Truong 14 October 2023 Slide 19
Đưa GIS vào workspace
1 Chọn Palette
Sau bước (3), trình
khởi tạo Agent mới sẽ
3 Click chọn Agent và 4 được hiển thị
kéo thả vào main
workspace
2 Click Agent để
hiển thị menu
Agent
Chọn Next
6 9
Sau khi click “Finish,” agent sẽ xuất hiện ở 1 điểm nào đó trong
Main diagram
Có một số cách để xác định hoặc điều chỉnh vị trí của agent
(xem slide tiếp theo)
Nguyen Van Truong 14 October 2023 Slide 27
Mục tiêu: Kết nối trung tâm PP vào 1 điểm
Kết nối trung tâm PP vừa tạo với GIS trên GIS
Click chọn distributor đặt trong
main workspace. Sau bước này cửa sổ
thuộc tính của distributor sẽ hiển thị như
bên phải màn hình
Kéo GIS 3
Point và thả Tại Initial
vào 1 điểm location, chọn
mong muốn “in the node”
trong GIS 2 4
Map
5
1
Tại Node, chọn
Click để mở “gisPoint”
Space
Markup
2 3
Click vào
Agent
4 Trong cửa sổ tiếp
1 theo, chọn “I want to
create new agent
type”.
5 Chọn Next
Chọn “Create
the agent type
from scratch”
7
9
Sau khi kết thúc, retailor
xuất hiện trong không gian
làm việc Main workspace
8
Click Kết thúc
Kéo và thả
GIS Point
vào vị trí
mong
muốn
trong GIS 2
1 5
Chọn đặt Retailer
Click chọn tại node
Hiển thị 4
Retailer1
Space
Markup 6
Đặt tên cho điểm
GIS Point vừa thả Trogn danh sách kéo xuống
3
tên là …R1 (để của Node, chọn gisPointR1 (để
nhớ đó là điểm gán Retailer1 vào vị trí của
đặt của Retailer1) gisPointR1)
Kéo Agent
và thả vào
cửa sổ
Main 2
3 Chọn
workspace
Population
of agents
Hiển thị 1
Agent 4 Chọn I
want to
create a
new agent
type
6 9
Đặt tên agent, ví Chọn cách hiển
dụ, Vehicle thị phương tiện
7 10
Chọn phương
Lựa chọn phương án này tiện là xe tải
(để sử dụng flowchart làm
mô hình mô tả quá trình
trong SC)
8 11
13
Nhập số lượng xe tải cần
Bỏ qua bước
thiết cho DC để vận
này. Click Next
chuyển. Ví dụ 25
12
14
Sau khi hoàn thành bước 14, không gian workspace xuất hiện phương
tiện và agent vehicles.
Click chọn 1
agent Chọn vị trí
vehicles đặt đoàn
2 PT
3
Ví dụ, muốn
1 chỉnh kích
thước của PT,
double click 3
vào agent
vehicles
Kéo ra/vào
điều chỉnh
kích thước
của phương
tiện
1-1
Double click
vào agent 1-2
Vehicle trong Hoặc Double
tab Projects click vào agent
Vehicle trong
không gian
workspace
11
9
Có 2 cách để vẽ dòng chuyển
trạng thái: 10
Định nghĩa thuộc tính của trạng thái chuyển động của PT trong cửa
1. Kéo transition và thả vào
sổ Properties:
Vehicle diagram
Dùng chuột kéo để kết
2. Double click vào transition
nối trạng thái Striggered by: Chuyển động của PT được kích hoạt theo yếu tố nào:
(để kích hoạt trạng thái
transition vào 2 trạng - Time out: Kết thúc thời gian chờ
vẽ/đồ họa) → vẽ mũi tên từ
thái cần kết nối. 2 điểm - Rate: Theo tỷ lệ xuất hiện
AtDistributor đến
màu xanh lá hiển thị - Condition: Theo điều kiện
MovingToRetailer (tương tự
cho trạng thái đã được -…
như trong MS Office)
kết nối đúng. Trong T/H này ta chọn Rate = 1 xe/hr (Mỗi xe sẽ chuyển động từ DC
đến nhà bán lẻ theo tần suất 1 xe/1hr
12 14
13
2
Click vào danh sách kéo xuống
của nút “Run” trên thanh công
cụ sẽ thấy mô hình hiện hành
đang hiển thị → click vào tên
mô hình đó thể thực hiện Run
simulation
Chọn
Agent 1
9 10
6
Tại bước này thông tin
Chọn add new Đặt tên Parameter, ví dụ: (cần có) của đơn hàng
để tạo 1 “Amount” (Khối lượng) đã định nghĩa xong.
trường thông Chọn kiểu dữ liệu, ví dụ,
tin mới “int” (số nguyên) Bước tiếp theo sẽ định
nghĩa thông tin cần lưu
trữ của Retailer
13
Chọn add new
để tạo 1
12
trường thông
tin mới
3 Retailer
diagram
sẽ mở ra
Double
2
click
Click 4
6
6
Kéo, thả
Event vào
5 Retailer
diagram 1. Name: Đặt tên của Event
Click tùy ý, ví dụ,
Delivery_Request
2. Trigger type: Chọn kiểu
kích hoạt đặt hàng là
Rate
3. Chọn mỗi ngày yêu cầu 1
lần
Sau các bước này, mỗi
Retailer được định nghĩa sẽ
yêu cầu hàng được chuyển
mỗi ngày 1 lần.
Nguyen Van Truong 14 October 2023 Slide 51
Tạo sự kiện phát sinh yêu cầu hàng hóa
7
Product_Order order = new
Product_Order(uniform_discr(10, 20), this);
Vehicle truck =
Trong khung Action gõ các dòng lệnh
getNearestAgentByRoute(filter(main.vehicles, v
này vào để cho AnyLogic biết cần
-> v.inState(Vehicle.AtDistributor))); phải làm gì để yêu cầu đặt hàng.
send(order, truck);
❑ send(order, truck);
→ Gửi yêu cầu (order) vừa tạo tới phương tiện (truck) được lọc trong số quần thể PT để đặt hàng
→ Công việc tiếp theo là phải lưu thông tin về đơn hàng vào phương tiện (agent vehicle)
Drag Variable
2 vào màn hình
Vehicle diagram 6
Double click để
mở diagram
5
Vehicle
Chọn hiển
thị Agent
1
Chọn hiển
thị Project 4
5 3
2
Triggered by: chọn Message
Double click để Thực hiện tương tự bước 1-4 Message type: chọn Product_Order
mở diagram đối với transition này
Vehicle Action: nhập vào lệnh
2
Click vào danh sách kéo xuống 3
của nút “Run” trên thanh công Một màn hình mô phỏng hiện
cụ sẽ thấy mô hình hiện hành ra mô phỏng hoạt động vận
đang hiển thị → click vào tên chuyển/phân phối từ DC đến
mô hình đó thể thực hiện Run các nhà bán lẻ (retailer)
simulation
Nguyen Van Truong 14 October 2023 Slide 56
Khởi chạy mô hình mô phỏng vừa tạo để kiểm tra và “chơi” để hiểu
hơn mô hình
▪ Ta sẽ “chơi” với mô hình vừa tạo bằng cách thay đổi một số thông số của mô hình.
▪ Đầu tiên ta sẽ điều chỉnh các thông số của đoàn xe. Thực hiện như dưới đây:
send(order, truck);
if (truck != null)
send(order, truck);