Hiển thị màn hình nhập thơng số khởi chạy mơ phỏng
67
Hiển thị kết quả của lần chạy gần nhất Lưu lại thay đổi của file
Dừng lại khung hình đang chạy Tiếp tục phát khung hình
Quay lại chạy từ khung hình đầu tiên
68
CHƯƠNG 5: KẾT QUẢ VÀ ĐÁNH GIÁ 5.1. Tiến hành mô phỏng sản phẩm trên nền tảng website 5.1. Tiến hành mô phỏng sản phẩm trên nền tảng website
Sau khi người dùng đăng nhập hệ thống, ta tiến hành upload source code dự án dưới dạng file nén như khi ta tiến hành mô phỏng ở gama desktop.
Hình 5.1: Hình ảnh màn hình đăng nhập
Sau khi upload xong người dùng có thể thêm sửa xố các file, nội dung file ngay trên giao diện người dùng.
69
Người dùng có thể tiến hành chạy mơ phỏng chỉ cần thông qua những thao tác đơn giản, khi tiến hành bắt đầu mơ phỏng nguời dùng có thể thiết lập các tham số tuỳ chỉnh.
Hình 5.3: Người dùng nhập các tham số mơ phỏng
70
Hình 5.4: Hình ảnh kết quả đầu ra màn hình Main_display
71
Hình 5.6: Hình ảnh kết quả đầu ra màn hình CFI_comparison
72
Hình 5.8: Hình ảnh kết quả đầu ra màn hình Weight_display
73
Hình 5.10: Hình ảnh kết quả đầu ra màn hình Pig_display
Người dùng có thể tải kết quả mơ phỏng về máy dưới dạng video mp4 với tuỳ chọn fps.
Hình 5.11: Màn hình tải về kết quả mô phỏng
74
5.2. Kết quả và so sánh:
So sánh tốc độ mơ phỏng, hiệu năng tiêu thụ giữa mơ hình thực thi trên ứng dụng GAMA và mơ hình thực thi trên ứng dụng điện tốn đám mây,tơi đưa ra các tiêu chí đánh giá:
- Đánh giá qua 2 mơ hình mơ phỏng khác nhau: Mô phỏng đơn cá thể lợn: 5070.gaml
Mô phỏng máng lợn cho đàn lợn: Emulator.gaml
- Đánh giá sẽ được tính kết quả trung bình qua 3 lần, mỗi lần cách nhau 5 phút. Đối với mô phỏng qua ứng dụng điện toán đám mây, kết quả sẽ được đi kèm với tốc độ mạng ngay trước khi tiến hành mô phỏng. Tốc độ mạng được đo bởi công cụ https://www.speedtest.net/
- Thông số cấu hình khi tiến hành mơ phỏng trên ứng dụng đám mây: framerate: 1
cycle: 1 ( với mô phỏng đơn cá thể), 100 ( với mô phỏng máng lợn)
75
Hình 5.14: Cấu hình phục vụ kiểm thử hiệu năng đối với máng lợn thông minh
Kết quả:
So sánh thời gian:
Lần 1 Lần 2 Lần 3
Gama Web Gama Web Gama Web
Mô phỏng đơn cá thể 2s 51.85mbps 5.93s 2s 42.65Mbps 8.61s 2s 42.31Mbps 7.42s Mô phỏng máng lợn 174s 52.71Mbps 102s 182s 45.15Mbps 102s 175s 50.13Mbps 102s
Có thể thấy rõ ràng tốc độ khi mơ phỏng qua website có tốc độ chậm hơn đáng kể. Ví dụ như với mơ phỏng chỉ có 1 khung hình thì khi chạy mô phỏng trên máy kết quả được cho ra tức thì chỉ khoảng 1 đến 2 giây. Tuy nhiên với cùng cấu hình khi thực
76
thi qua ứng dụng website thì với mơ hình đơn giản lại mất trung bình từ 6 đến 8 giây. Đối với mơ hình phức tạp với 100 khung hình thì mơ phỏng trên máy chỉ mất khoảng 1 đến 2 giây để mã nguồn được biên dịch còn thời gian còn lại là thời gian hiển thị kết quả theo từng khung hình từ số 1 đến 100, suy ra tổng thời gian trung bình khoảng 102s là đã hiển thị hết quá trình mơ phỏng. Kết quả thu được khi chạy trên nền tảng website là trung bình 175 giây ( chưa bao gồm 100 giây để hiển thị chạy tuần tự 100 khung hình ).
So sánh tiêu thụ tài nguyên ( chỉ xét với trường hợp mô phỏng với thời gian dài, ở đây là trường hợp mô phỏng cả đàn lợn )
77
Hình 5.16: Hình ảnh đo đạc tài nguyên máy chủ khi chạy ứng dụng web
Nhận xét:
Khi tiến hành mô phỏng trên cả GAMA desktop và website, mức tiêu thụ CPU cao nhất khoảng đều đạt khoảng trên 90%, tuy nhiên với GAMA desktop hiệu năng tối đa của CPU chỉ kéo dài khoảng 5 giây trong khi với mơ phỏng qua website thì thời gian này tương ứng là 15 giây. Mức tiêu thụ RAM khi mơ phỏng GAMA desktop thì cao hơn với mô phỏng qua website khoảng 10%.
Kết luận chung: Nếu so sánh về cả hiệu năng và tài nguyên tiêu thụ, dễ dàng thấy rằng mô phỏng trên ứng dụng GAMA cho ra tốc độ nhanh và quản lý tài nguyên đều tốt hơn khi chạy mô phỏng qua ứng dụng web, mà về bản chất là thực thi qua GAMA headless.
5.3. Thử nghiệm mở rộng khả năng mô phỏng với các mã nguồn khác:
Để kiểm tra tính khả thi có thể dễ dàng tương thích với nhiều mã nguồn mô phỏng dựa trên nền tảng GAMA của hệ thống, tôi đưa ra phương án kiểm thử: Tải lên mã nguồn mơ hình lan toả dịch bệnh tả lợn châu phi do các thành viên trong nhóm nghiên cứu của TS. Phạm Mạnh Linh nghiên cứu. Tiến hành mô phỏng trên nền tảng website và nhìn nhận kết quả.
78
Hình 5.17: Hình ảnh mã nguồn mơ phỏng dịch tả lợn Châu Phi được upload thành cơng
79
Hình 5.19: Kết quả màn hình myDisplay mơ phỏng dịch bệnh
80
Hình 5.21: Kết quả màn hình myDisplay1 mơ phỏng phần trăm trang trại bị nhiễm bệnh
Kết luận:
Đối với 1 mã nguồn mới, hệ thống vẫn có thể xử lý và thực hiện được q trình mơ phỏng tương tự với mơ phỏng máng lợn thông minh. Với 1 mã nguồn mới người dùng có thể khơng nắm được logic cũng như các tham số nhưng hệ thống đã có tính năng tự động quét và tìm ra các tham số cũng như tên của mô phỏng giúp tạo điều kiện thuận lợi cho người sử dụng khi tiếp xúc với 1 mã nguồn mới hoặc tránh các lỗi sai chính tả dẫn đến lỗi hệ thống.
81
CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
Chúng ta có thể khẳng định rằng kỹ thuật chăn ni chính xác là một công cụ ngày càng quan trọng hỗ trợ người nông dân trong việc quản lý tất cả các khâu chăn nuôi. Nhu cầu đối với các sản phẩm có nguồn gốc động vật sẽ tiếp tục tăng theo sự gia tăng dân số thế giới, vì lý do này, các nghiên cứu sâu hơn sẽ là cần thiết để cải thiện chức năng của các cảm biến có trong trang trại. Trên thực tế, trong những năm gần đây, nhiều sự phát triển đã được thực hiện đối với các hệ thống hiện có nhờ sự phát triển của cơng nghệ và các nghiên cứu được thực hiện bởi các nhà nghiên cứu từ khắp nơi trên thế giới, làm cho các hệ thống này ngày càng chính xác và đáng tin cậy
Trong đồ án này, tôi đã phát triển một ứng dụng giả lập hệ thống máng ăn chính xác sử dụng nền tảng mơ phỏng GAMA, ứng dụng có giao diện thân thiện, thuận tiện cho người dùng, chạy được mơ phỏng với khả năng tối ưu hóa cao giúp cho mọi người hiểu về cách thức hệ thống máng ăn hoạt động. Trực quan hoá được các kết quả đầu ra, đầu vào, dễ dàng so sánh giữa các cá thể. Bên cạnh đó tơi cũng phát triển thêm hệ thống website cho phép người dùng có thể dễ dàng truy cập, sử dụng, xem lại kết quả mô phỏng mà không cần cài đặt ứng dụng hay yêu cầu gì đặc biệt.
Ưu điểm:
- Chương trình giả lập triển khai với tốc độ và hiệu năng tốt. Kết quả đầu ra trực quan và dễ so sánh.
- Ứng dụng đám mây thân thiện, dễ sử dụng, thuận tiện để sử dụng ở bất kỳ nơi đâu và không bị giới hạn bởi phần cứng từ máy cá nhân.
- Có thể xem kết quả mô phỏng gần nhất thay vì chạy đi chạy lại nhiều lần với cùng một tham số đầu vào.
- Có thể tải về kết quả file mô phỏng dưới dạng video, điều mà Gama desktop chưa có.
- Ứng dụng đám mây tương thích hầu hết với các mã nguồn GAMA, điều này cho phép không chỉ mã nguồn mô phỏng máng lợn có thể truy cập từ website mà các dự án khác được xây dựng cùng trên nền tảng GAMA thì đều có thể sử dụng.
Nhược điểm:
Đối với chương trình mơ phỏng :
- Thời gian và kinh nghiệm còn hạn chế nên kết quà chưa được đầy đủ, ứng dụng cần được duy trì và nâng cấp hoàn thiện để hệ thống được sử dụng rộng rãi.
82
- Khả năng chạy model chưa được tối ưu hóa một cách cao nhất - Chưa giải quyết được các vấn đề bên trên (Bộ nhớ cịn trống ít, ….) - Chưa mở rộng thêm được quy mô chuồng trại.
Đối với ứng dụng điện toán đám mây:
- Do thời gian và kinh nghiệm còn hạn chế nên ứng dụng vẫn còn chưa tối ưu, thời gian mô phỏng tốn nhiều thời gian.
- Vì dựa trên Headless mode của Gama, nên khơng thể can thiệp vào q trình mơ phỏng, người dùng phải chờ đến khi mơ phỏng chạy xong thì mới xem được kết quả.
- Ứng dụng vẫn chưa cung cấp đủ tính năng như Gamma desktop, nên quá trình phát triển mơ hình sẽ khó khăn hơn (ví dụ như hiển thị lỗi, debug, đưa ra cảnh báo, format code ….. )
Hướng phát triển:
Đối với chương trình mơ phỏng : - Mở rộng nguồn dữ liệu đầu vào
- Cải tiến giao diện chuồng trại cũng như các cá thể lợn bằng hình ảnh thực hơn thay vì các chấm hoặc hình chữ nhật khó quan sát và nhận biết
- Tìm ra cách đánh giá được đường cung mục tiêu CFI (Target CFI) để cho hiệu suất chăn nuôi lợn ngày càng cao
- Có thêm hệ thống phát hiện bệnh lý của từng con lợn để xử lý.
- Lợn sẽ được thêm các chức năng khác như ngủ, nghỉ ngơi, được tiêm phòng và đem đi cách ly trong chuồng cách ly, ....
Đối với ứng dụng điện toán đám mây:
- Có thể can thiệp vào q trình mơ phỏng, trả về kết quả nhanh mà khơng cần đợi lâu.
- Tối ưu khả năng phục vụ đa người dùng, tối ưu hóa thời gian trả về của API.
- Khả năng chia sẻ kết quả mô phỏng đến các tài khoản khác, cung cấp thông tin kịp thời để đưa ra các dự đốn chính xác về dịch bệnh.
- Nâng cấp giao diện để thân thiện với người dùng, ví dụ như tiệm cận với 1 IDE giúp người dùng dễ dàng sửa, thêm các nội dung trên file.
83
TÀI LIỆU THAM KHẢO Tài liệu các công nghệ, lý thuyết sử dụng:
[1] https://vi.tr2tr.wiki/wiki/Agent-based_model [2] https://gama-platform.org/wiki/Home [3] https://gama-platform.github.io/wiki/LearnGAMLStepByStep [4] https://laravel.com/docs/9.x [5] https://docs.docker.com/reference/ [6] https://docs.oracle.com/en-us/iaas/mysql-database/doc/getting-started.html [7] https://aws.amazon.com/getting-started/?ref=docs_gateway/index.html [8] https://docs.aws.amazon.com/s3/index.html [9] https://reactjs.org/docs/getting-started.html
Các bài báo tham khảo:
[10] https://suinicoltura.edagricole.it/tecnica/zootecnia-di-precisione-le-ultime-novita/ [11] https://www.cambridge.org/core/journals/animal/article/procedure-to-quantify- thefeed-intake-response-of-growing-pigs- toperturbations/99C20AFB65921C1CF245FD2EC6978CF4 [12] https://www.cambridge.org/core/journals/animal/article/modelling-the-feed- intakeresponse-of-growing-pigs-to-diets-contaminated-with- mycotoxins/88AFFBE974077DBB330E02F63CE7ED4B Đường dẫn các mã nguồn:
[13]. Back-end gitlab: https://gitlab.com/namtranpt00/gamabe [14]. Pig_CFI gitlab: https://gitlab.com/namtranpt00/PigCFI [15]. Front-end github: https://github.com/leanhduc123/gamma_fe