Rapid Online Metaheuristic-based Mission Planner (ROMP) for solving UAV Charging Scheduling Problem (CSP). Please see more details in our paper. If the code is useful, please feel free to cite our paper:
@misc{qian2023practical,
title={Practical Mission Planning for Optimized UAV-Sensor Wireless Recharging},
author={Qiuchen Qian and James O'Keeffe and Yanran Wang and David Boyle},
year={2023},
eprint={2203.04595},
archivePrefix={arXiv},
primaryClass={cs.RO}}
Prerequisites
The source code has been tested on Ubuntu 20.04 LTS. The dependence are listed below:
- Google OR-Tools (or-tools_x86_64_Ubuntu-20.04_cpp_v9.5.2237)
- Bazel (6.0.0)
- MPICH (mpiexec (OpenRTE) 4.0.3)
- GCC 9 (gcc & g++ 9.4.0)
- Python3 (3.8.10)
Instructions
- Follow the guidance of how to configure the environment.
- Create directory as below:
ROMP/
|1---->| inp/ # Store needed input files
|1---->| out/ # Store output files
|1---->| fig/ # Store visualized figures
|1---->| init_solver/ # Store binary executable file of initial solver
|2-------->| cpp_ortools
|1---->| opt_solver/ # Store binary executable file of optimization solver
|2-------->| cpp_bha
|1---->| fastromp/ # Store binary executable file of ROMP
|2-------->| cpp_fastromp
- Extract example inputs to
inp/
directory:
|1------->| inp/ # Store needed input files
|2------------>| case0.csv # Sensor node data
|2------------>| grid_info.txt # Wind grid data
|2------------>| wind_vector.csv # Time-vary wind vector data
- Run a bash script under
CSP/
cd CSP/
./simple_demo.sh
- Users may refer to parameter setting of Initial Solver & Optimization Solver, and ROMP.
- Obtain results at
out/
directory and visualized figures atfig/
directory.
Mr. Qiuchen Qian - qiuchen.qian19@imperial.ac.uk
Dr. David Boyle - david.boyle@imperial.ac.uk