Skip to content

Commit

Permalink
[ Version 1 ] : Implemented Catcher the non-coorperative agents in ros (
Browse files Browse the repository at this point in the history
#1)

* [ Essentials ]: Adds gitignore for ros_setup

* [ Initial Commit ]

* Adds a pic of note

* [ Buildable ]: Launch files are now buildable

* [ Minor Changes ] : One turtlebot can be controlled independently

* [ Turtlebot Addition ] : Adds another turtlebot and all three are now independent from each other

* [Cooking]

* [ Minor Changes ] : changed scripts/ to src/

* [Debugging]: converts some np.arrays to tuples

* [ Debugging ] : Mathematical and formatting errors

* [ Debugging ] : Counters addition

* [Debugging] : Using while not rospy.is_shutdown

* [Debugging] : Minimum cost coordinates not yet reflecting

* [Initial release with bug] : Debugging for normal cases done

* [ Finally done ]

* [ Minor Corrections ] : Corrections in the prediction functions

* [ New Python path ] : Path according to mambaforge env (will not work for anybody)
  • Loading branch information
aPR0T0 authored Sep 16, 2023
1 parent b6ab6ba commit 6906e43
Show file tree
Hide file tree
Showing 17 changed files with 2,938 additions and 0 deletions.
193 changes: 193 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,193 @@
# Created by https://www.gitignore.io/api/c
# Edit at https://www.gitignore.io/?templates=c

.vscode
### C ###
# Prerequisites
*.d

# Object files
*.o
*.ko
*.obj
*.elf

# Linker output
*.ilk
*.map
*.exp

# Precompiled Headers
*.gch
*.pch

# Libraries
*.lib
*.a
*.la
*.lo

# Shared objects (inc. Windows DLLs)
*.dll
*.so
*.so.*
*.dylib

# Executables
*.exe
*.out
*.app
*.i*86
*.x86_64
*.hex

# Debug files
*.dSYM/
*.su
*.idb
*.pdb

# Kernel Module Compile Results
*.mod*
*.cmd
.tmp_versions/
modules.order
Module.symvers
Mkfile.old
dkms.conf

#build files test
*/build

# End of https://www.gitignore.io/api/c

=======
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# C extensions
*.so

# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
pip-wheel-metadata/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.pytest_cache/

# Translations
*.mo
*.pot

# Django stuff:
*.log
local_settings.py
db.sqlite3
db.sqlite3-journal

# Flask stuff:
instance/
.webassets-cache

# Scrapy stuff:
.scrapy

# Sphinx documentation
docs/_build/

# PyBuilder
target/

# Jupyter Notebook
.ipynb_checkpoints

# IPython
profile_default/
ipython_config.py

# pyenv
.python-version

# pipenv
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
# However, in case of collaboration, if having platform-specific dependencies or dependencies
# having no cross-platform support, pipenv may install dependencies that don't work, or not
# install all needed dependencies.
#Pipfile.lock

# PEP 582; used by e.g. github.com/David-OConnor/pyflow
__pypackages__/

# Celery stuff
celerybeat-schedule
celerybeat.pid

# SageMath parsed files
*.sage.py

# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# mkdocs documentation
/site

# mypy
.mypy_cache/
.dmypy.json
dmypy.json

# Pyre type checker
.pyre/
17 changes: 17 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
## Catching the non-cooperative agent

This project is built upon the current implementation of the [Teaming Heterogeneous Ground and Micro-Aerial Robots for Following
of Non-Cooperative Agents](https://raaslab.org/icra2023-hmrs/assets/contributed_papers/Ori_A_Miller_et_al.pdf)

Targets:
- [ ] Improving the prediction usiing kalman predictor
- [ ] Using Fuel contraints to gain the optimal path that a UAV and UGV should follow
- [ ] It is not necessary that UAV and UGV should follow same number of points they should be nearly independent

![img](https://lh3.googleusercontent.com/8UXw1B8W2pv5L7X4VIjYxJCW99FevBTlxePC9rCUy8Wum401uCN7g5U9q6hapnJf-_HcGprfS4pObYFPwv_4PTFEXgSJl2U-eCagH7KHOYqMj-Eghug_qRIink8FoR7KFIYikL04n4a_u4wM2bc_wMVfI7L8r_8OBLTjzWU2-Y4dLRBUZja81R_rCE7Z0d_HNXUf1dWyX0SJXA3Zcr8mukAELd3DZNEH8A901ivj-TNbhZ1v_eIwIEW_VVQjIQLnbDgGGXOgpmHgZfi4Lklh34S6rKhcfrv_aHCM6IvXGT4zD52oobiUHbHAqGWHesDhDUqdfj1bysOnItPeVaRAScFlFd7Mz4zt1s3Z6BA0bY9a4NAPh881vGUTe4T4ufZB98XQm3OqVV8p4eckag70f19TgJNzdICD-UoY53ZGaREwgS4rU0tDK6rpvLnuO_myRvRaCXo5snw3EJb59vr23HDpcvdUgUwyovID1flbrrtsw4Y1xqP-DkKJJf6KmD6p4M5i4ubRsXLmtAtboXLcpS3zPLbAb9yfpDb15kwpRZjONn-S8hWimfeSVW90iRpQyRN_p8OBzxgsyN3R1T7ZQId5K5gAGVEW8I-_kD5EuAJdWzuOsgXMi7vPGPfCHWBdmegugRZM09bfK-w1vFCnSgF_LZ_TiB5VYXkpG3kYGC7uMnZTE5yLCkLK91VkM6y4kjSym64Nb05Xzck11FxaqopMeQpHEj0CNvgrBcjuSBeppB3YfiBwYGvaL05ts0Wi93VNLyp9Eqkt0pcsGXjEJAs9j9sPO8PH_ZuqYTdjix-Pk4fZJSl7VcemGy0ZRmzMg8P5XZlqszRyR-PZM5-scR349lsvHdLC-Wfmsg4veUlNAEfTlwifTEZKxXmvFnwZDceir9Fft8zTERWJlpabWnGUbkgO9cSebbfyoYoq1x3nFCcCSqZlvoyVLhA-aR-_BeHuAIRMWHLqwVt-cUESpnKh0WRUP0XBrxnFJiRxGpWJGWoyas9QgDI=w1024-h1366-s-no?authuser=0)

### Setup

Environment is free from obstacles (as of now), there are 3 turtlebots one of them is a non-cooperative agent and other two resembles UAV and UGV

![turtlebot_spawned](https://github.com/aPR0T0/Catching-the-non-cooperative-agent/assets/97826285/72ce76dd-7516-4b29-85f5-5dfbc58ab701)
Empty file added turtlebots/,
Empty file.
Loading

0 comments on commit 6906e43

Please sign in to comment.