mở đầu luận văn, ODD được kiểm duyệt và cập nhật qua nhiều phiên bản. Phiên bản ODD được trình bày trong chương là phiên bản cập nhật mới nhất năm 2020 [17]. Nội dung ba mục đầu sẽ trình bày thay đổi của nội dung tương ứng giữa các phiên bản của ODD. Mục bốn của chương này sẽ là một số thảo luận về giao thức ODD.
Nội dung thảo luận bao gồm ưu điểm, nhược điểm của giao thức; tầm nhìn của những nhà phát 15 triển giao thức, và một số khuyến nghị thêm khi sử dụng ODD. Việc hiểu và nắm rõ những thông tin trên sẽ giúp giảm thiểu mất mát thông tin khi truyền tải lại nội dung của giao thức ODD. Các thành phần của giao thức ODD Tên gốc Việt hóa Overview (Tổng quan) Purpose & patterns Mục đích & mẫu hình Entities, state variables & scales Thực thể, trạng thái & thang đo Process overview & scheduling Tổng quan tiến trình & lập lịch Design concepts (Ý tưởng thiết kế) Basic principles Nguyên lý cơ bản Emergence Tính hợp trội Adaptation Tính thích nghi Objectives Mục tiêu tối ưu Learning Tính học hỏi Prediction Tính dự đoán Sensing Tính cảm biến Interaction Tính tương tác Stochasticity Tính ngẫu nhiên Collectives Tính tập thể Observation Sự quan sát Details (Chi tiết) Initialization Quá trình khởi tạo Input data Dữ liệu ngoại cảnh Submodels Mô hình con 1.1 Tổng quan Tổng quan là phần giúp người đọc dễ dàng nhận biết về ý tưởng của mô hình, mục đích mô hình được đưa ra, điều mà mô hình tập trung vào, độ phân giải và độ phức tạp của mô hình. Về mặt lập trình, khi đọc xong Tổng quan, người đọc có thể nghĩ ra được khung chương trình mô phỏng và tên các hàm cần được cài đặt.
Phần Tổng quan nên được viết dưới dạng văn xuôi.1 Mục đích và mẫu hình Mục đích là nội dung cần được nói đầu tiên khi mô tả mô hình. Các mô hình đều phải bắt đầu từ một câu hỏi, một vấn đề hay giả thiết nào đó. Câu hỏi này sẽ cung cấp văn cảnh cho việc tại sao mô hình này được cần tới. Không có mục đích, người đọc sẽ không hiểu được các lý do đằng sau các quyết định xây dựng mô hình, nguyên nhân một số mặt của thực tế được cân nhắc, trong khi một số mặt khác lại được bỏ qua.
Khi nói về mục đích, những khái niệm gây nhầm lẫn hoặc chưa rõ ràng nên được giải thích. Ví dụ, một mô hình với mục đích “đánh giá ảnh hưởng bởi bão” có thể mang nghĩa “đánh giá thương vong”, “đánh giá thiệt hại tài sản”, hay “đánh giá giao thông sẽ bị đình trệ như thế nào do bão”. Tại bản cập nhật 2010, thành phần này chỉ bao gồm “mục đích” [24]. Phiên bản cập nhật 2020 [17] đã đưa thêm “mẫu hình” để giúp những nhà mô hình hóa có định hướng hơn khi thiết kế mô hình của mình.
Mẫu hình là tiêu chí mà được sử dụng để đánh giá xem mô hình có tốt cho mục đích đã chọn hay có đủ thực tế hay không. Nếu mô hình có thể tạo ra một mẫu hình nào đó, ta có thể coi nó “đủ thực tế” cho một mục đích được đưa ra. Ngược lại, việc mô hình không thể tạo ra quan sát hợp với mẫu hình gợi ý rằng: một thành phần nào đó ở thế giới thực đã bị khuyết ở trong mô hình hoặc chưa được mô hình hóa đủ tốt, khiến cho hiện tượng trong thực tế không thể được mô phỏng lại. Khi lựa chọn mẫu hình, mẫu hình nên được chọn sao cho quan sát của mô phỏng có thể dễ dàng đối chiếu với chúng; vì quá trình này xảy ra rất thường xuyên khi mô hình hóa.
Ngoài ra, người viết cần nêu cơ sở của mẫu hình và liên hệ của mẫu hình tới mục đích xây dựng mô hình. Nếu cơ sở của mẫu hình dài, nó có thể được trình bày ở một phần khác của tài liệu và được trích dẫn tới ở trong ODD. Tài liệu [16] cũng gợi ý rằng mẫu hình nên có tính định tính và khuyến cáo về việc dùng xác suất cho mẫu hình. Yếu tố mẫu hình có quan hệ mật thiết tới chiến lược “xây dựng mô hình sử dụng mẫu hình–Pattern Oriented Modelling (POM)”.
Chiến lược này đã được nhắc tới trong nghiên cứu [15] năm 1999 và được trình bày chi tiết hơn trong tài liệu [8] năm 2019. Chỉ tới năm 2020, “mẫu hình” mới được đưa vào như một phần của giao thức ODD [17].2 Thực thể, trạng thái và thang đo Thành phần Thực thể, trạng thái và thang đo bao gồm ba ý nhỏ liên hệ mật thiết với nhau. Chúng nêu ra các loại thực thể trong mô hình, trạng thái của chúng, và biểu diễn không gian/thời gian trong mô hình. Đầu tiên, danh sách những loại thực thể tham gia vào trong mô hình nên được đưa ra.
Sau đó, lý do tại sao lại có sự lựa chọn về việc thành phần này được tham gia vào mô hình trong khi những thành phần khác thì không nên được nêu rõ; bởi đây là một lựa chọn vô cùng quan trọng trong quá trình mô hình hóa và có liên hệ mật thiết với lý do xây dựng mô hình. Việc đưa ra lý do trên sẽ giúp mô hình đáng tin hơn. Trong các nghiên cứu xây dựng ABM, một số loại thực thể thường được sử dụng/mô tả là: • các đơn vị môi trường, ví dụ như ô lưới (nếu là môi trường lưới), tòa nhà hay các vùng đất (sử dụng hệ thống thông tin địa lý); • các cá thể hoặc cá nhân, ví dụ như hổ, báo, lợn, gà (mô phỏng sinh thái), hoặc con người; • các quần thể hoặc tập thể, ví dụ như bầy chim, đàn cá, hoặc các tổ chức xã hội con người; • thực thể toàn cục, là thực thế thường được dùng để lưu các biến số toàn cục, ví dụ như thời gian mô phỏng hoặc các biến số liên quan tới môi trường; kể cả khi không biểu diễn một thành phần trong thế giới thực, thực thể này có thể được đưa vào phần “thực thể” nhằm đơn giản hóa việc diễn giải mô hình. Khi trình bày các thực thể, các quần thể hay tập thể chỉ nên được mô tả như một thực thể riêng biệt nếu chúng có trạng thái và hành vi riêng ở trong mô hình.
Mỗi thực thể đều gắn với các trạng thái riêng. Trạng thái là những đại lượng được dùng để phân biệt các tác tử trong cùng một loại thực thể với nhau. Ví dụ, khi mô phỏng hệ sinh thái của một loài, tuổi và giới tính có thể là trạng thái của những tác tử loài đó. Việc trạng thái có tính phân biệt giữa các tác tử hay không cũng tùy thuộc vào bài toán.
Ví dụ, nếu mô hình chỉ mô phỏng những tác tử cái, thì giới tính của tác tử không mang tính phân biệt, vì mọi tác tử đều có giới tính như nhau; khi đó, “giới tính” sẽ không phải là trạng thái của tác tử. Trạng thái phải mang tính độc lập, không thể được 18 tính toán từ các trạng thái khác. Ví dụ, một thực thể có “tuổi” và các “giai đoạn tuổi”, nhưng “giai đoạn tuổi” trong mô hình được chia rõ ràng theo các ngưỡng tuổi khác nhau; khi đó “giai đoạn tuổi” không phải là một trạng thái, vì có thể tính toán được “giai đoạn tuổi” của tác tử từ thông tin “tuổi” của chúng. Trạng thái của tác tử có thể thay đổi theo thời gian hoặc không.
Trong bản cập nhật 2010, các tác giả đã chỉ ra rằng nhiều nghiên cứu liệt kê thiếu một số trạng thái vì chúng không đổi theo thời gian (tên của thành phần trong tiếng Anh có chữ variable, nghĩa là biến số) [24]. Do đó, trong bản dịch tiếng Việt, luận văn chỉ để tên thành phần là trạng thái, vừa để ngắn gọn và vừa để tránh hiểu nhầm. Khi liệt kê trạng thái của các thực thể, một số thông tin như sau cũng nên được đưa ra: Mỗi trạng thái thể hiện điều gì, đơn vị của chúng là gì? Mỗi trạng thái có thay đổi theo thời gian hay không? Mỗi trạng thái có kiểu dữ liệu gì (số nguyên, số thực, giá trị Bool. ), nhận giá trị ở trong miền nào? Trong các nghiên cứu, thông tin về thực thể và trạng thái của chúng thường được trộn với nhau và được trình bày bằng bảng.
Các nghiên cứu về ODD cũng khuyến khích cách trình này. Ngoài ra, nghiên cứu [17, 24] lưu ý thêm một số nhầm lẫn khác thường gặp khi trình bày về thực thể và trạng thái, đó là: • Nói về vai trò của các trạng thái trong hành vi của tác tử (vì đây là nội dung của một thành phần khác trong ODD); • Nhầm lần giữa tham số mô hình và trạng thái (tham số mô hình không có tính phân biệt giữa các tác tử); • Liệt kê các trạng thái mang tính kỹ thuật (ví dụ trong các ABM thường có trạng thái ID để phân biệt giữa các tác tử), đây là một liệt kê thừa và không cần được trình bày. Sau khi liệt kê thực thể và trạng thái, mô tả mô hình cần nêu ra các thang đo về thời gian và không gian. Thang đo được hiểu đơn giản là cách mà mô hình biểu diễn không gian và thời gian.
Những thông tin cần cung cấp về thang đo là: • thang đo rời rạc hay liên tục; • đại lượng tổng cộng và đại lượng mức chia của thang đó là bao nhiêu; 19 • tại sao thang đo này lại được chọn, nó phục vụ như thế nào cho mục đích của mô hình. Những thông tin này cần được cung cấp với mỗi loại thang đo không gian và thời gian. Mô tả có thể cung cấp thêm thông tin về các loại thang đo khác trong phần này nếu mô hình có sử dụng tới chúng. Mô tả của thang đo có thể rất ngắn và đơn giản, ví dụ như: “Thời gian trong mô hình được biểu diễn rời rạc, mỗi bước thời gian ứng với năm phút trong thực tế, và mô phỏng kéo dài ba giờ (2160 bước).
Không gian trong mô hình được biểu diễn rời rạc thành một lưới với 1000 × 1000 ô. Việc lựa chọn thang đo bé như vậy phù hợp với các thay đổi ở mức độ nhỏ trong môi trường. Thang đo là lựa chọn quan trọng trong việc mô hình hóa, bởi thang đo sẽ ảnh hưởng trực tiếp tới khả năng biểu diễn thế giới thực của mô hình.