This project implements a multi-agent system where robotic agents navigate a 3D environment to collect and deliver objects, utilizing computer vision for object detection and autonomous navigation capabilities.
link to project https://drive.google.com/drive/folders/1eZmVEiWsTU47vPOiCX8_LJxLp49Hh7Fd?usp=sharing
Complete view of the dungeon environment where the robots operate
The simulation features five robot agents tasked with organizing objects in a structured environment. Each robot uses:
- Computer vision (YOLO v5) for object detection
- Autonomous navigation with NavMesh
- Real-time metrics tracking
- 3D graphics and animations in Unity
The robot agents working together in the environment
- Agent Type: Robot Agent
- Capabilities:
- NavMeshAgent-based movement (15 units speed)
- Collision detection and handling
- Object manipulation (pick/drop)
- Inter-agent communication
- Obstacle jumping (jumpForce = 5f)
- Animated movement
Demonstration of the collision avoidance system
Robot performing object collection tasks
-
NavMesh-defined navigation space NavMesh configuration for autonomous navigation
-
Two distinct zones:
-
Environmental challenges: Various obstacles and terrain challenges
-
Dungeon environment: ~120 x 25 x 180 units
-
10 randomly distributed cubes in red zone
Example of dynamic lighting implementation in the environment
The system tracks:
- Cubes Delivered
- Total Distance Traveled
- Efficiency Ratio (cubes/distance)
- Delivery Rate (cubes/minute)
Real-time performance metrics visualization
Detailed performance analytics and agent efficiency tracking
Located in /codes/
:
h45.cs
: Individual robot prefab controllerrobotWorld2.cs
: World controller script Features:- Material and texture mapping
- Walking/running animations
- Basic collision detection
- Dynamic lighting
Located in /pycodes/
:
- YOLO v5 implementation
- Real-time UDP camera stream processing
- Object recognition system
YOLO v5 object detection in action
Located in /robot-dashboard/
:
- Real-time visualization of robot performance metrics
- Interactive charts and graphs
- Agent status monitoring
βββ codes/
β βββ h45.cs
β βββ robotWorld2.cs
β βββ [other Unity scripts]
βββ pycodes/
β βββ CameraController.py
β βββ Controller2.py
β βββ [other Python vision processing scripts]
βββ robot-dashboard/
β βββ src/
β βββ package.json
β βββ [other web dashboard files]
βββ images/
β βββ dungeon.png
β βββ robots.png
β βββ metricas.png
β βββ metricas2.png
β βββ luces.png
β βββ yolo.png
β βββ EvitColizion.png
β βββ Navmesh.png
β βββ obstaculos.png
β βββ recolecting.png
β βββ zonaA.png
β βββ zonaB.png
βββ Documentation.pdf
βββ demo.mp4
βββ project.unitypackage
[El resto del contenido continΓΊa igual hasta la licencia]
Copyright (c) 2024 AarΓ³n HernΓ‘ndez JimΓ©nez
All rights reserved.
This software and associated documentation files (the "Software") are protected by copyright law. No part of this Software may be reproduced, distributed, or transmitted in any form or by any means, including photocopying, recording, or other electronic or mechanical methods, without the prior written permission of the copyright holders.
Permission Restrictions:
- The Software may not be used, copied, modified, merged, published, distributed, sublicensed, and/or sold without explicit written permission from the copyright holders.
- Any unauthorized use, reproduction, or distribution of the Software may result in severe civil and criminal penalties, and will be prosecuted to the maximum extent possible under law.
To request permission for usage:
- Contact:
- AarΓ³n HernΓ‘ndez JimΓ©nez - A01642529@tec.mx
- Required Information for Request:
- Intended use
- Scope of usage
- Duration of usage
- User/Organization information
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- AarΓ³n HernΓ‘ndez JimΓ©nez (A01642529)