https://github.com/willyfh/uav-trajectory-planning
The first unofficial implementation of a paper with the title of "UAV Trajectory Planning for Data Collection from Time-Constrained IoT Devices" (IEEE Transactions on Wireless Communications 2019)
https://github.com/willyfh/uav-trajectory-planning
convex-optimization optimization path-planning resource-allocation trajectory-planning uav
Last synced: 3 months ago
JSON representation
The first unofficial implementation of a paper with the title of "UAV Trajectory Planning for Data Collection from Time-Constrained IoT Devices" (IEEE Transactions on Wireless Communications 2019)
- Host: GitHub
- URL: https://github.com/willyfh/uav-trajectory-planning
- Owner: willyfh
- License: mit
- Created: 2023-01-01T09:22:44.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-09-06T07:38:39.000Z (almost 3 years ago)
- Last Synced: 2025-04-02T15:38:32.862Z (about 1 year ago)
- Topics: convex-optimization, optimization, path-planning, resource-allocation, trajectory-planning, uav
- Language: MATLAB
- Homepage: https://ieeexplore.ieee.org/document/8842600
- Size: 804 KB
- Stars: 78
- Watchers: 2
- Forks: 14
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Reproducing "UAV Trajectory Planning for Data Collection from Time-Constrained IoT Devices"
The first unofficial implementation of a paper with the titled "UAV Trajectory Planning for Data Collection from Time-Constrained IoT Devices". In this repository, I implemented a sub-optimal algorithm based on successive convex approximation (SCA) as introduced by Samir et al. (2019). Specifically, I reproduced the Figure 3 in the paper, where the goal is to optimize the UAV trajectory and allocation of resources to maximize the total number of served IoT devices within a flight mission duration based on a given set of target time constraints.

**Paper**: M. Samir, S. Sharafeddine, C. M. Assi, T. M. Nguyen and A. Ghrayeb, "UAV Trajectory Planning for Data Collection from Time-Constrained IoT Devices," in IEEE Transactions on Wireless Communications, vol. 19, no. 1, pp. 34-46, Jan. 2020, doi: 10.1109/TWC.2019.2940447. > https://ieeexplore.ieee.org/document/8842600
## Summary
I summarize the paper and the implementation in this [slides](https://github.com/willyfh/uav-trajectory-planning/blob/main/doc/Summary%20-%20UAV%20Trajectory%20Planning%20for%20Data%20Collection%20from%20Time-Constrained%20IoT%20Devices%20.pdf)

## How to execute the code
1. Install CVX on MATLAB : http://cvxr.com/cvx/download/
2. Change `rician` variable in the `main.m` to `true` or `false` as needed
2. Execute the matlab code, i.e., `main.m`
If the plot is not displayed after the iteration is completed, please execute this in the command window:
```bash
hold on; scatter(X, Y, 10, 'b');scatter(device_X, device_Y,50, 'r'); xlim([0 800]);ylim([0 800]); text(device_X, device_Y, split(num2str(deadline))); hold off
```
## Reproduced Results
### Rician Channel

### Path-loss Channel
