Meta graph convolutional neural network-assisted resilient swarm communications

Overview

Resilient UAV Swarm Communications with Graph Convolutional Neural Network

This repository contains the source codes of

Resilient UAV Swarm Communications with Graph Convolutional Neural Network

Zhiyu Mou, Feifei Gao, Jun Liu, and Qihui Wu

Fei-Lab

Problem Descriptions

In this paper, we study the self-healing of communication connectivity (SCC) problem of unmanned aerial vehicle (UAV) swarm network (USNET) that is required to quickly rebuild the communication connectivity under unpredictable external destructions (UEDs). Firstly, to cope with the one-off UEDs, we propose a graph convolutional neural network (GCN) and find the recovery topology of the USNET in an on-line manner. Secondly, to cope with general UEDs, we develop a GCN based trajectory planning algorithm that can make UAVs rebuild the communication connectivity during the self-healing process. We also design a meta learning scheme to facilitate the on-line executions of the GCN. Numerical results show that the proposed algorithms can rebuild the communication connectivity of the USNET more quickly than the existing algorithms under both one-off UEDs and general UEDs. The simulation results also show that the meta learning scheme can not only enhance the performance of the GCN but also reduce the time complexity of the on-line executions.

Display of Main Results Demo

One-off UEDs

randomly destruct 150 UAVs                             randomly destruct 100 UAVs

150 100

General UEDs

general UEDs with global information           general UEDs with monitoring mechanism

general_global_info general

Note: these are gifs. It may take a few seconds to display. You can refresh the page if they cannot display normally. Or you can view them in ./video.

Environment Requirements

pytorch==1.6.0
torchvision==0.7.0
numpy==1.18.5
matplotlib==3.2.2
pandas==1.0.5
seaborn==0.10.1
cuda supports and GPU acceleration

Note: other versions of the required packages may also work.

The machine we use

CPU: Intel(R) Core(TM) i7-10700K CPU @ 3.80GHz
GPU: NVIDIA GeForce RTX 3090

Necessary Supplementary Downloads

As some of the necessary configuration files, including .xlsx and .npy files can not be uploaded to the github, we upload these files to the clouds. Anyone trying to run these codes need to download the necessary files.

Download initial UAV positions (necessary)

To make the codes reproducible, you need to download the initial positions of UAVs we used in the experiment from https://cloud.tsinghua.edu.cn/f/c18807be55634378b30f/ or https://drive.google.com/file/d/1q1J-F2OAY_VDaNd1DWCfy_N2loN7o1XV/view?usp=sharing. Upzip the download files to ./Configurations/.

Download Trained Meta Parameters (alternative, but if using meta learning without training again, then necessary)

Since the total size of meta parameters is about 1.2GB, we have uploaded the meta parameters to https://cloud.tsinghua.edu.cn/f/2cb28934bd9f4bf1bdd7/ and https://drive.google.com/file/d/1QPipenDZi_JctNH3oyHwUXsO7QwNnLOz/view?usp=sharing. You need to download the file from either two links and unzip them to ./Meta_Learning_Results/meta_parameters/if you want to use the trained meta parameters. Otherwise, you need to train the meta parameters again (directly run Meta-learning_all.py)

Download Meta Learning Loss Functions Pictures (alternative)

The loss function pictures of meta learning are available on https://cloud.tsinghua.edu.cn/f/fc0d84f2c6374e29bcbe/ and https://drive.google.com/file/d/1cdceleZWyXcD1GxOPCYlLsRVTwNRWPBy/view?usp=sharing. You can store them in ./Meta_Learning_Results/meta_loss_pic/

Quick Start

Simulate SCC under one-off UEDs

directly run ./Experiment_One_off_UED.py

python Experiment_One_off_UED.py

Simulate meta learning process

directly run ./Meta-learning_all.py

python Meta-learning_all.py

Simulate SCC under general UEDs

directly run ./Experiment_General_UED.py

python Experiment_General_UED.py

File and Directory Explanations

  • ./Configurations/

the initial positions of 200 UAVs

  • ./Drawing/

the drawing functions

  • ./Experiment_Fig/

the experiment figures and the drawing source codes

  • ./Main_algorithm_GCN/

the proposed algorithms in the paper

  • ./Main_algorithm_GCN/CR_MGC.py

the CR-MGC algorithm (Algorithm 2 in the paper)

  • ./Main_algorithm_GCN/GCO.py

the GCO algorithm

  • ./Main_algorithm_GCN/Smallest_d_algorithm.py

algorithm of finding the smallest distance to make the RUAV graph a CCN (Algorithm 1 in the paper)

  • ./Meta_Learning_Results/

the results of meta learning

  • ./Meta_Learning_Results/meta_loss_pic

the loss function pictures of 199 mGCNs

  • ./Meta_Learning_Results/meta_parameters

the meta parameters (Since the total size of meta parameters is about 1.2GB, we have uploaded the meta parameters to https://cloud.tsinghua.edu.cn/f/2cb28934bd9f4bf1bdd7/ or https://drive.google.com/file/d/1QPipenDZi_JctNH3oyHwUXsO7QwNnLOz/view?usp=sharing)

  • ./Traditional_Algorithm/

the implementations of traditional algorithms

  • ./video/

the gif files of one-off UEDs

  • ./Configurations.py

the simulation parameters

  • ./Environment.py

the Environment generating UEDs

  • ./Experiment_General_UED.py/

the simulation under general UEDs

  • ./Experiment_One_off_UED.py/

the simulation under one-off UEDs

  • ./Experiment_One_off_UED_draw_Fig_12_d.py/

draw the Fig. 12(d) in the simulation under one-off UEDs

  • ./Meta-learning_all.py/

the meta learning

  • ./Swarm.py/

the integration of algorithms under one-off UEDs

  • ./Swarm_general.py/

the integration of algorithms under general UEDs

  • ./Utils.py/

the utility functions

Note that some unnecessary drawing codes used in the paper are not uploaded to this responsitory.

Weak-supervised Visual Geo-localization via Attention-based Knowledge Distillation

Weak-supervised Visual Geo-localization via Attention-based Knowledge Distillation Introduction WAKD is a PyTorch implementation for our ICPR-2022 pap

2 Oct 20, 2022
The official PyTorch implementation of the paper: *Xili Dai, Xiaojun Yuan, Haigang Gong, Yi Ma. "Fully Convolutional Line Parsing." *.

F-Clip — Fully Convolutional Line Parsing This repository contains the official PyTorch implementation of the paper: *Xili Dai, Xiaojun Yuan, Haigang

Xili Dai 115 Dec 28, 2022
RoboDesk A Multi-Task Reinforcement Learning Benchmark

RoboDesk A Multi-Task Reinforcement Learning Benchmark If you find this open source release useful, please reference in your paper: @misc{kannan2021ro

Google Research 66 Oct 07, 2022
PyTorch implementation of MuseMorphose, a Transformer-based model for music style transfer.

MuseMorphose This repository contains the official implementation of the following paper: Shih-Lun Wu, Yi-Hsuan Yang MuseMorphose: Full-Song and Fine-

Yating Music, Taiwan AI Labs 142 Jan 08, 2023
How will electric vehicles affect traffic congestion and energy consumption: an integrated modelling approach

EV-charging-impact This repository contains the code that has been used for the Queue modelling for the paper "How will electric vehicles affect traff

7 Nov 30, 2022
Try out deep learning models online on Google Colab

Try out deep learning models online on Google Colab

Erdene-Ochir Tuguldur 1.5k Dec 27, 2022
MoCoPnet - Deformable 3D Convolution for Video Super-Resolution

MoCoPnet: Exploring Local Motion and Contrast Priors for Infrared Small Target Super-Resolution Pytorch implementation of local motion and contrast pr

Xinyi Ying 28 Dec 15, 2022
A simple Tensorflow based library for deep and/or denoising AutoEncoder.

libsdae - deep-Autoencoder & denoising autoencoder A simple Tensorflow based library for Deep autoencoder and denoising AE. Library follows sklearn st

Rajarshee Mitra 147 Nov 18, 2022
From a body shape, infer the anatomic skeleton.

OSSO: Obtaining Skeletal Shape from Outside (CVPR 2022) This repository contains the official implementation of the skeleton inference from: OSSO: Obt

Marilyn Keller 166 Dec 28, 2022
一个目标检测的通用框架(不需要cuda编译),支持Yolo全系列(v2~v5)、EfficientDet、RetinaNet、Cascade-RCNN等SOTA网络。

一个目标检测的通用框架(不需要cuda编译),支持Yolo全系列(v2~v5)、EfficientDet、RetinaNet、Cascade-RCNN等SOTA网络。

Haoyu Xu 203 Jan 03, 2023
The dataset of tweets pulling from Twitters with keyword: Hydroxychloroquine, location: US, Time: 2020

HCQ_Tweet_Dataset: FREE to Download. Keywords: HCQ, hydroxychloroquine, tweet, twitter, COVID-19 This dataset is associated with the paper "Understand

2 Mar 16, 2022
MolRep: A Deep Representation Learning Library for Molecular Property Prediction

MolRep: A Deep Representation Learning Library for Molecular Property Prediction Summary MolRep is a Python package for fairly measuring algorithmic p

AI-Health @NSCC-gz 83 Dec 24, 2022
Fast Style Transfer in TensorFlow

Fast Style Transfer in TensorFlow Add styles from famous paintings to any photo in a fraction of a second! You can even style videos! It takes 100ms o

Jefferson 5 Oct 24, 2021
HNN: Human (Hollywood) Neural Network

HNN: Human (Hollywood) Neural Network Learn the top 1000 actors on IMDB with your very own low cost, highly parallel, CUDAless biological neural netwo

Madhava Jay 0 Dec 21, 2021
PyTorch implementation of Rethinking Positional Encoding in Language Pre-training

TUPE PyTorch implementation of Rethinking Positional Encoding in Language Pre-training. Quickstart Clone this repository. git clone https://github.com

Jake Tae 5 Jan 27, 2022
AttGAN: Facial Attribute Editing by Only Changing What You Want (IEEE TIP 2019)

News 11 Jan 2020: We clean up the code to make it more readable! The old version is here: v1. AttGAN TIP Nov. 2019, arXiv Nov. 2017 TensorFlow impleme

Zhenliang He 568 Dec 14, 2022
Training Certifiably Robust Neural Networks with Efficient Local Lipschitz Bounds (Local-Lip)

Training Certifiably Robust Neural Networks with Efficient Local Lipschitz Bounds (Local-Lip) Introduction TL;DR: We propose an efficient and trainabl

17 Dec 01, 2022
Official codebase for ICLR oral paper Unsupervised Vision-Language Grammar Induction with Shared Structure Modeling

CLIORA This is the official codebase for ICLR oral paper: Unsupervised Vision-Language Grammar Induction with Shared Structure Modeling. We introduce

Bo Wan 32 Dec 23, 2022
The code for the NSDI'21 paper "BMC: Accelerating Memcached using Safe In-kernel Caching and Pre-stack Processing".

BMC The code for the NSDI'21 paper "BMC: Accelerating Memcached using Safe In-kernel Caching and Pre-stack Processing". BibTex entry available here. B

Orange 383 Dec 16, 2022
🏃‍♀️ A curated list about human motion capture, analysis and synthesis.

Awesome Human Motion 🏃‍♀️ A curated list about human motion capture, analysis and synthesis. Contents Introduction Human Models Datasets Data Process

Dennis Wittchen 274 Dec 14, 2022