Bài tập này yêu cầu chúng ta tạo ra một cái tổ ở trung tâm của thế giới
Cái tổ này bao phủ 9 patches (ô vuông) Chúng ta sẽ tô màu da cam cho nó
Ta chuyển sang phần code, việc đầu tiên là thêm vào một biến cho con rùa
Ta viết thêm vào trong ngoặc return-to-nest? (quay về tổ?)
GIờ ta sẽ tạo thêm một biến patch, bạn gõ patch-own [nest?]
Ta cần viết thêm lệnh cho phần setup, bạn đưa trỏ chuột vào phần lệnh ask turtles
set return-to-nest? false Nếu ta không viết thêm dòng này
Netlogo sẽ tự động để giá trị true cho bất kỳ biến mới nào
Ta thêm một dòng nữa ở sau phần grow-food set-up-nest, đây là một phần lệnh mới
Để phần lệnh mới đó chạy được, ta cần viết thêm to set-up-nest sau đó ask patches
thêm dấu [ để mở môi trường patches sau đó set nest? (distancexy 0 0) < 2
Lệnh này nghĩa là giá trị nest? sẽ nhảy về true nếu khoảng cách đến cái tổ bé hơn 2
Tiếp: if nest? [set pcolor orange] Nếu nest?=true thì pcolor đổi sang da cam
Sau đó ta gõ end để kết thúc phần lệnh set-up-nest. Bạn ấn Check để kiểm tra
Netlogo báo lỗi: thừa ra một ngoặc mở mà không có ngoặc đóng lại
Tôi quên mất cái ngoặc này, giờ tôi sẽ gõ thêm vào, Check lại xem nào
Mọi thứ đều ổn, ta quay lại phần Interface ấn setup, và ta có thể nhìn thấy
Hơi khó để hình dung là ta có 9 patches ở đây, nhưng ta đã có một cái tổ da cam
Tiếp theo ta cần viết code cho đám kiến bò về tổ sau khi chúng kiếm ăn
rồi mới bò ra đi kiếm ăn tiếp. Có rất nhiều cách để viết
Tôi sẽ viết như thế này, nhưng tôi muốn đơn giản hóa phần lệnh go đi một chút
tôi sẽ tạo ra một phần lệnh mới chuyên chỉ đạo kiến đi tìm thức ăn
Tôi sẽ tách phần code này ra để viết hẳn một phần lệnh mới cho nó
to look-for-food sau đó dán phần lệnh vừa cắt vào
Giờ tôi quay lại lệnh go để ra lệnh: nếu return-to-nest? là false thì đi kiếm ăn
ifelse return-to-nest? false [look-for-food]
còn nếu return-to-nest? là true thì chúng sẽ quay về tổ
[return-to-nest], lưu ý là phần lệnh return-to-nest này chưa được viết
Trước khi ta viết phần lệnh đó, tôi sẽ ấn Check để xem đã phát sinh lỗi gì chưa
Bạn thấy là Netlogo báo lỗi: chưa có lệnh return-to-nest
À tôi cũng quên một dấu bằng ở đây tôi sẽ chèn thêm vào trước chữ false
Giờ ta viết lệnh return-to-nest to return-to-nest
face patch 0 0 fd 1 (bất kỳ con kiến nào đang ở sát tổ sẽ tiến thêm 1 bước)
if pcolor = orange (nếu con kiến đã về nhà)
[set return-to-nest? false] (vì con kiến đã về nhà rồi)
gõ end để kết thúc lệnh. Giờ ta cần sửa lệnh để bảo lũ kiến khi nào thì quay về
Ta sửa lệnh ở trong phần kiếm ăn, sau khi lũ kiến đã ăn ta sẽ bảo chúng về nhà
set return-to-nest? true Ấn Check để kiểm tra code
Ổn rồi, giờ ta quay lại phần Interface, ấn setup sau đó go
Ôi có nhiều kiến quá, không nhìn rõ chúng đang làm gì, tôi sẽ giảm lượng kiến đi
Kéo thanh trượt dân số sau đó bắt đầu lại. Kéo thanh trượt tốc độ cho chậm lại.
Bạn có thể khó quan sát được lũ kiến kiếm ăn xong, về nhà rồi lại ra ngoài
Chúng ta có thể đổi màu lũ kiến để dễ theo dõi hơn, nhưng đó là bài tập khác.