Robotic Vacuum Algorithms Simulation (kulv05)

From Simulace.info
Revision as of 22:19, 25 January 2025 by Kulv05 (talk | contribs)
Jump to: navigation, search

Introduction 123

Problem definition

The primary objective of this simulation is to analyze and compare different movement algorithms for a robotic vacuum cleaner. The focus is on identifying the most efficient algorithm in terms of cleaning speed, power consumption, and overall performance.

Method

The simulation will be developed using NetLogo, an agent-based modeling platform. NetLogo is ideal for simulating complex systems with numerous interacting agents (in case of this simulation - a robot vacuum and pieces of trash).

Model

Для этой симуляции мною было использовано agent-model based simulation with the help of the NetLogo software. Для каждой алгоритма был создан свой малый метод. Для сбора мусора был создан метод collect-trash. Спаунится мусор Комната и мебель была создана с помощью патчей. Изначально я хотела сделать их с помощью агентов, однако после применения этого способа поняла, что чем делать каждую мебель агентами. Это было легче устроить из-за


RANDOM

Kulv05 randomwalk.gif



Wall-to-wall Данный алгоритм, если применять его для того, чтобы пропылесосить комнату не является эффективным если применять его в одиночку или же если применять его в его изначальной форме. Его траектория движения такова – робот пылесос пытается найти стену, а потом двигается вдоль стен. Это хорошо вычищает мусор в углах комнаты, однако не вычищает его в центре комнаты. Поэтому я бы не назвала этот алгоритм оптимальным в его чистом виде.



Wall-to-wall + Horizontal zigzag



Spiral Идет спиралью до того как доходит до стен комнаты. When the front bumper is triggered the robot cleaner stops the spiral algorithm and proceeds with another algorithm since starting the spiral algorithm when close to a wall is meaningless. (источник) Я решила попробовать сделать другим алгоритмом спираль, однако в обратную сторону. Обратная спираль, хотя и выглядит логически последовательной, на практике часто оказывается менее эффективной, особенно в случаях, когда робот начинает повторно покрывать области, которые уже очищены. Этот алгоритм может быть полезен в некоторых специфических условиях, но на моем реальном примере показало худший результат чем random-walk. Что говорит о том, что в реальных задачах он может уступать другим стратегиям.


Zigzag


A* Kulv05 astar.gif

Results

Conclusion

Citations

https://www.diva-portal.org/smash/get/diva2:1213349/FULLTEXT02.pdf https://ouster.com/insights/blog/introduction-to-slam-simultaneous-localization-and-mapping https://www.geeksforgeeks.org/a-search-algorithm/

Code