Get in touch
or send us a question?
CONTACT

Ứng dụng Computer Vision trong thời đại COVID-19 (2): Giới thiệu phần mềm mô phỏng AnyLogic để quản lý và thiết kế sân bay, bến xe và các công trình đô thị

thumbnail

DISCLAIMER: About the License of softwares used in this article. I used the AnyLogic 8 Personal Learning Edition 8.7.2 Build: 8.7.2.202012242158 x64, therefore the article subjects to the License Agreement. This article is only for teaching and self-education purposes. A copy of the agreement can be found at https://www.anylogic.com/upload/license_agreements/software-licensing-agreement-for-anylogic.pdf

Personal Learning Edition – License and Restrictions. If Licensee was provided with the Personal Learning Edition of the Software, AnyLogic grants the Licensee, subject to the terms and conditions of this Agreement, a non-exclusive, non-transferable limited license for teaching or self-education purposes only. The right to use the Software, Model(s) or Model Output for any other purposes, including commercial purposes or research, is strictly prohibited. The number of computers where the Personal Learning Edition of the Software may be installed and used is not limited. With respect to the Personal Learning Edition of the Software, the following Sections of this Agreement do not apply: 6, 7, 9, and 22(h).

Thuật ngữ Digital Twin nói đến sự thành lập 1 “thực tại song song” với thế giới hiện thực mà ở đó, thông qua các tri thức được thu thập từ thế giới hiện thực, thế giới song song mô hình hóa và mô phỏng hóa các sự vật, hiện tượng ở thê giới thực. Ngược lại với các sự vật hiện tượng trong thế giới thực không thể bị thay đỏi hoặc tái hiện một khi đã xảy ra, già đi, mất đi, thì trong thế giới song song, mọi sự vật hiện tượng có thể được tái tạo, thay đỏi, lập trinh, điều khiển theo ý muôn của nhà phát triển. Nhờ vào các tri thức có được từ tương tác và thay đôi thế giới song song, các nhà hoạch định chinh sách, các nhà thiết kế trải nghiệm người dùng có thể tạo ra 1 thế giới song song để thử nghiệm các thiết kế ý tưởng trước khi đưa vào phát triển hoặc sản xuất đại trà. Các nhà kiến trúc có thể trải nghiệm thiết kế của minh trước khi quyết định đưa thiết kế nào vào thực thi trên công trình thực tiễn.

Giới thiệu về phát triển Digital Twin trong công trình đô thị

Hình 1. Mô hình phát triển hệ thống đô thị dựa trên Digital Twin: Dựa vào các thiết bị thông minh IoT gắn ở nhiều nơi trong thành phố và từ thông tin người dùng cung cấp lưu vào cơ sở dữ liệu (Database), AI model (có thể ở trên cloud hoặc trên edge) thực hiện mô phỏng lại không gian thực tế. Phần AI model và Database tạo thành một không gian thực tế ảo mà trên đó một thế giới tương tự với thế giới thực được giả lập. Dựa trên những mô phỏng trên thế giới ảo, các nhà hoạch định chính sách và các nhà phát triển xây dựng các hệ thống chẩn đoán, dự đoán, hiển thị, phân tích dữ liệu để nhhằm đưa ra chính sách và quy tắc phù hợp cho thế giới thực. Thế giới thực cung cấp thông tin để xây dựng thế giới ảo, còn thế giới ảo cung cấp tri thức (insights) mà kết quả cuối cùng là chính sách sẽ được áp dụng và ảnh hưởng đến thế giới thực. Sự tương tác qua lại giữa hai thế giới tạo nên Digital Twin (thế giới ảo song sinh). Nguồn ảnh: Neos Vietnam.

Khách hàng và thị trường. Như Hình 1, có thể hình dung vòng lặp của Digital Twin chinh là thu thập dữ liệu thực tế lưu vào CSDL, xây dựng mo hình trí tuệ nhân tạo dựa trên dữ liệu lớn, và cuói cùng là xây dựng ứng dụng Digital Twin giúp ích cho việc chẩn đoán, dự đoán và cảnh báo. Những khách hàng của Digital Twin là mọt nhóm người dùng số ít, nhưng đảm trách nhiệm vụ quan trọng ảnh hưởng lớn tới thế giới thực. Những trải nghiệm và tri thức tích lũy được của số ít này trong “hiện thực ảo” sẽ được sử dụng để đưa ra quyết sách áp dụng vào thế giới thực. Trí tuệ nhân tạo (mô hình AI) chinh là công cụ để tìm kiếm, trích xuất, mô hình hóa các tri thức thực tiễn. Các công cụ giả lập Digital Twin chinh là phương thức để nhôm số ít người dùng có thể thông qua đó để tiếp cận tri thức. Dựa vào đó họ đưa ra quyết định và chinh sách, áp dụng ngay vào thế giới thực (feedback). Vòng lặp này cho thấy, hiện thực ảo được xây dựng dựa trên dữ liệu lớn tri thức từ thế giới thực, nhưng tri thức có được từ hiện thực ảo lại là chinh sách của thế giới thực. Khách hàng chinh là những nhà hoạch định chinh sách, các kiến trúc sư, các nhà nghiên cứu trải nghiệm người dùng, các bác sỹ, … Thị trường chính là bệnh viện, chinh phủ, các cong ty sẩn xuất game, sản phẩm, …

Vấn đề và giải pháp. Digital Twin giải quyết khá nhiều bài tóan cho người dùng. Ví dụ, bạn là một nhà hoạch định chính sách cho thành phố thông minh. Bạn cần quyết định có nên nâng cấp tăng độ rộng làn đường của trục cao tốc chạy xuyên qua thanh phố. Đầu tiên bạn cần biết lưu lượng giao thông hiện tại đã khiến trục đường trở nên quá tải chưa? Với nguồn nhân lực ít ỏi của ban quản lý, bạn có thể phân công mỗi người ra đứng ở một góc của ngã tư và đếm số lượng phương tiện đi qua trong cả ngày, rồi tìm ra thời điểm là giờ cao điểm, và đanh giá rằng giờ cao điểm đã quá tải hay chưa? Tức là bạn cần đo được thời gian dịch vụ (service time) danh cho mỗi người dân tham gia giao thông đã vượt quá ngưỡng (threshold) cho phép chưa? Vậy bạn sẽ dùng sức người để làm việc này liên tục trong vòng 1 tháng? Thậm chí là 3 tháng, 6 tháng? Đây rõ ràng là một giải pháp không hợp lý và bền vững. Một giải pháp hợp lý hơn chinh lắp các sensor ở các vị trí thiết yếu và thu thập dữ liệu gửi về Server để xử lý. Dựa trên các tri thức này, các mô hình AI sẽ học được các phân bố về thời gian sử dụng dịch vụ, loại phương tiện, đặc điểm người tham gia giao thông và cuối cùng, sử dụng chinh các tham số này để tái tạo mô phỏng lại trên máy tính một mô hình giao thông. Đấy chính là vấn đề mà giải pháp Digital Twin hỗ trợ bạn. Giải pháp Digital Twin xây dựng dựa trên nền tảng trí tuệ nhân tạo và khối công nghệ phần mềm.


Các vấn đề của Digital Twin. Với một số lượng lớn dữ liệu từ hàng ngàn sensors khắp thành phố gửi về, có thể hàng triệu đến hàng tỷ byte mỗi giây, việc xử lý dữ liệu lớn để mô phỏng đung thực tại, khiến thực tại ảo trở nên chân thực hơn là vấn đề không thể tranh khỏi. Tốc độ xử lý realtime để tăng trải nghiệm người dùng và mô hình business để tăng lợi nhuận cũng là vấn đề lớn. Mô hình triển khai chung là trên cloud, nhưng mô hình B2B hay B2C cũng trở thành những cách tiếp cận khác nhau cho việc phổ biến dịch vụ. B2B thì sẽ có khách hàng như bệnh viện, chinh phủ hay các cty xây dựng, … Còn B2C thì có thể đi về các dịch vụ game, … Cuối cùng là vấn đề bảo mật và quyền riêng tư của người dùng. Ví dụ như ở trên, các sensor có thể thay bạn thu thập dữ liệu từ người tham gia giao thông, nhưng dữ liệu đó thuộc về ai? Có nên gửi về Server hay không, tức là có nên gửi dữ liệu cá nhân qua network không? Nếu gửi thì nên bảo vệ thế nào?

Giới thiệu về AnyLogic và các gói thư viện cơ bản trong mô phỏng nền tảng và nhân vật

AnyLogic là một phần mềm mô phỏng dựa trên mô hình và đối tượng. Mọi mô hình đều bao gồm đối tượng (Agent) và các quá trình tương tác (Excepriment). AnyLogic được viết bởi ngon ngữ Java và dựa trên nền tảng phát triển tích hợp Eclipse. Agent là phần cở bản nhất của mô hình trong AnyLogic. Agent có thể là người tham gia quá trinh như người đi bộ trong giao thông (pedestrian), nhân viên của công ty, … thiết bị, phương tiện giao thông, … hoặc thậm chí là sản phẩm, ý tưởng, đầu tư, tổ chức. Mỗi agent trong AnyLogic được đặc trưng bởi thuộc tính (attributes), hành vi (behavior) và tương tác (interface) với thế giới bên ngòai. Với các mô phỏng như mạng xã hội, các agents cố thể giao tiếp thông qua thủ tục gọi hàm.

Các phương pháp mô hình hóa trong AnyLogic:
a. Discrete Event Modeling (DEM)

Mô phỏng những sự kiện quan trọng nhất trong hệ thống. Ví dụ như sự kiện sự cố mất điện trong trung tâm dữ liệu hay sự kiện khách hàng ghé shop. Mọi quá trình hay hành vi trong phương pháp này sẽ được mô hình hóa bởi chỉ những sự kiện trong lifetime. Ví dụ việc mô hình hóa chuyển động của ô tô trên đường cao tốc sẽ chỉ bao gồm các sự kiện: bắt đầu vào màn hình, di chuyển và rời khỏi màn hình. Việc xuất hiện vào màn hình ở thời điểm nào được lên kế hoạch (scheduled) dựa trên phân bó có thể chọn. Điểm quan trọng cần nhớ là nếu nhiều sự kiện được lên kế hoạch để xảy ra cùng lúc, AnyLogic sẽ tạo hàng chờ để xuất hiện lần lượt các sự kiện.
b. System Dynamics Modeling (SDM)
Cũng như Discrete Event Modeling, đây cũng là phương pháp luận khá cũ, được đưa ra từ những năm 1960. Tuy nhiên, điểm khác biệt là: SDM thường hợp với các mô phỏng cấp chiến lược (strategy) thì DEM phù hợp với các mô phỏng cấp chiến thuật (tactical). Để thực hiện mô phỏng ở cấp chiến lược như vậy, các đối tượng trong SDM là các đầu mối của 1 đồ thị quan hệ có hướng. Mỗi đầu mối sẽ là 1 tập hợp các đơn vị cùng chức năng, mà tinh cá thể sẽ bị bỏ qua. Ví dụ như ở hình dưới, SDM mô hình hóa một chiến dịch marketing mà mỗi đầu mối có thể có nhiều cá thể nhưng đều gộp chung vào trong một block.
c. Agent Based Modeling (ABM)
Được phổ biến từ những năm 2000, ABM phù hợp cho cả cấp chiến lược lẫn chiến thuật và có thể bổ trợ cho cả DEM lẫn SDM. Ở 2 thí dụ thực thi bên dưới, chúng ta sẽ tập trung nhiều vào cấp chiến thuật chủ yếu sử dụng DEM và ABM.
Một ví dụ thường thấy trong giả thiết đặt ra cho DEM hay SDM đại loại như: “Cty có 120 nhân viên trong bộ phận R&D, và có thể thiết kế 20 sản phẩm 1 năm”. Trong DEM/SDM, công ty sẽ được nhìn dưới dạng tập các quy trinh (processes). Những cách tiếp cận này xem mọi cá thể là như nhau và vì vậy sự khác biệt giữa các cá thể sẽ không bao giờ được phản ánh trong mô hình. Điều này rất có hại vì trong cty có thể có nhiều dự án và các dự án lại cạnh tranh với nhau về mặt sử dụng tài nguyên và nhân lực, rồi năng lực các nhân viên có thể không đồng đều. Những hạn chế này được khắc phục với ABM bằng cách đưa khai niệm “agent” vào trong mô hình (bạn có thể nghĩ đến Reinforcement Learning, tiếc là phiên bản AnyLogic PLE không support tinh năng này, để sử dụng được bạn cần mua bản có phí). ABM quan tâm đến mô hình hóa đến từng cá thể riêng biệt và vì vậy tránh được những hạn chế kể trên. Tất nhiên việc này đi kèm là quy mô của mô phỏng sẽ lớn theo số lượng agent và tương tác.

Các thư viện và tinh năng chính. Có khá nhiều thư viện trong bản PLE rất thú vị. Chúng ta tập trung vào mô phỏng quy trinh trong giao thông hoặc cung ứng thì có thư viện Process Modeling Library (PML) hỗ trợ mô phỏng theo quy trinh (DEM/SDM). Thư viện Pedestrian Library (PL) hỗ trợ mô phỏng hanh vi của người đi bộ trên đường bộ hoặc trong các công trinh công cộng (shopping mall, building, …). Thư viện Road Traffic Library (RTL) như ở thí dụ 1 phục vụ mô phỏng các quy trinh giao thông

Thực thi: Mô phỏng chuyển động (2D/3D) của các phương tiện di chuyển trên đường cao tốc

Hình 2. Mô phỏng cảnh tắc đường trên đường cao tốc với 4 loại phương tiện (bao gồm cả phương tiện công cộng như xe buýt). Các hành vi dừng đón khách, tạt vào bãi đỗ xe hay ùn tắc trên cùng làn đường được mô tả bằng hệ thống số hóa của AnyLogic.

Chúng ta thực hiện mô phỏng lại giao thông xảy ra tại 1 điểm giao trên đường cao tốc. Trục đường chinh có 2 làn (Bắc-Nam, Nam-Bắc) và từ phía Đông có thêm 1 làn nhập vào. Trên đoạn gần ngã ba có 1 bãi đỗ xe (parking lot) mà các xe đi vào từ trục chính có thể đỗ lại. Trên đoạn cuối của trục chinh có 1 bến xe bus với tần suất vào bến là 10 phút/chuyến. Tỷ lệ rẽ vào trục đường phía Đông của xe đến từ phía Bắc là 70%, trong khi của xe đến từ hướng Nam là 30%. Chính vì vậy, như mô phỏng chúng ta xem trên ảnh gif bên trên, xác xuất xảy ra tắc đường do xe từ phía Bắc rẽ ngang là khá cao. Các xe đến từ phía Nam do vậy hay phải chờ. Có đèn giao thông đặt tại ngã 3 để điều phối. Mô hình được dựng lại ở dạng 3D.

Kết quả: Chúng ta nhận thấy với tỷ lệ rẽ ngang của lái xe từ phía Bắc đã cho, việc xảy ra ùn tắc trong làn Bắc-Nam là không tránh khỏi.

Thực thi: Ví dụ về mô phỏng thiết kế hệ thống phân phối chuỗi cung ứng hàng hóa

Hình 3. Mô phỏng chuỗi cung ứng hàng hóa với nhà máy sản xuất lắp ráp tại Hải Phòng.

Chúng ta mô phỏng lại chuỗi cung ứng hàng hóa theo Discrete Event Modeling. Nhà máy đặt tại Hải Phòng và có nhiều cửa hàng bán lẻ đặt tại các tỉnh như Hà Nội và Ninh Bình. Ngoài ra chuỗi cung ứng còn kéo dài sang Đông Âu và Tây Âu. Chúng ta cũng sử dụng ABM với các agents là nhà máy, xe tải chở hàng và cửa hàng bán lẻ. Xe tải chở hàng sẽ xuất kho với tần suất ngày 1 lần để đến các cửa hàng bán lẻ. Chúng ta model các sự kiện quan trọng nhất là Order của khách hàng thì mới trigger cho sự kiện xe tải xuất kho. Trigger là 1 khái niệm rất quan trọng trong Discrete Event Modeling. Ứng với 1 sự kiện quan trọng nhất định sẽ có trigger tương ứng để đáp ứng. Ngoài ra nội dung của hàm Action khi được Trigger có thể được định nghĩa bằng code Java như hình bên dưới.

Hình 4. Ứng với Trigger đã chọn, bạn có thể nhập 1 đoạn code hàm Java có sử dụng các đối tượng (class Java) như Order, Vehicle. Đừng quên check null vì trong Java khi code refer tới vật thể null (không tồn tại) sẽ xảy ra ngoại lệ.

Tổng kết

Chúng ta đã tìm hiểu sơ lược về Digital Twin và cơ bản của AnyLogic trong mô phỏng chiến lược và chiến thuật. Cùng hai ví dụ về mô phỏng tắc đường trên đường quốc lộ và chuỗi cung ứng của nhà máy sản xuất tại Hải Phòng, chúng ta đã làm quen với mô phỏngbằng AnyLogic.