All Projects → nobodymx → resilient-swarm-communications-with-meta-graph-convolutional-networks

nobodymx / resilient-swarm-communications-with-meta-graph-convolutional-networks

Licence: MIT License
Meta graph convolutional neural network-assisted resilient swarm communications

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to resilient-swarm-communications-with-meta-graph-convolutional-networks

PhD
My PhD Papers and Presentations
Stars: ✭ 24 (-51.02%)
Mutual labels:  research-paper
ML4Sec-papers
Research papers on ML for security
Stars: ✭ 27 (-44.9%)
Mutual labels:  research-paper
rl implementations
No description or website provided.
Stars: ✭ 40 (-18.37%)
Mutual labels:  meta-learning
CS330-Stanford-Deep-Multi-Task-and-Meta-Learning
My notes and assignment solutions for Stanford CS330 (Fall 2019 & 2020) Deep Multi-Task and Meta Learning
Stars: ✭ 34 (-30.61%)
Mutual labels:  meta-learning
Learning2AdaptForStereo
Code for: "Learning To Adapt For Stereo" accepted at CVPR2019
Stars: ✭ 73 (+48.98%)
Mutual labels:  meta-learning
MeTAL
Official PyTorch implementation of "Meta-Learning with Task-Adaptive Loss Function for Few-Shot Learning" (ICCV2021 Oral)
Stars: ✭ 24 (-51.02%)
Mutual labels:  meta-learning
mliis
Code for meta-learning initializations for image segmentation
Stars: ✭ 21 (-57.14%)
Mutual labels:  meta-learning
dropclass speaker
DropClass and DropAdapt - repository for the paper accepted to Speaker Odyssey 2020
Stars: ✭ 20 (-59.18%)
Mutual labels:  meta-learning
maml-tensorflow
This repository implements the paper, Model-Agnostic Meta-Leanring for Fast Adaptation of Deep Networks.
Stars: ✭ 17 (-65.31%)
Mutual labels:  meta-learning
Open-L2O
Open-L2O: A Comprehensive and Reproducible Benchmark for Learning to Optimize Algorithms
Stars: ✭ 108 (+120.41%)
Mutual labels:  meta-learning
MetaLifelongLanguage
Repository containing code for the paper "Meta-Learning with Sparse Experience Replay for Lifelong Language Learning".
Stars: ✭ 21 (-57.14%)
Mutual labels:  meta-learning
NALU-Keras
A keras implementation of [Neural Arithmetic Logic Units](https://arxiv.org/pdf/1808.00508.pdf) by Andrew et. al.
Stars: ✭ 14 (-71.43%)
Mutual labels:  research-paper
maml-rl-tf2
Implementation of Model-Agnostic Meta-Learning (MAML) applied on Reinforcement Learning problems in TensorFlow 2.
Stars: ✭ 16 (-67.35%)
Mutual labels:  meta-learning
metagenrl
MetaGenRL, a novel meta reinforcement learning algorithm. Unlike prior work, MetaGenRL can generalize to new environments that are entirely different from those used for meta-training.
Stars: ✭ 50 (+2.04%)
Mutual labels:  meta-learning
PAML
Personalizing Dialogue Agents via Meta-Learning
Stars: ✭ 114 (+132.65%)
Mutual labels:  meta-learning
paper-survey
Summary of machine learning papers
Stars: ✭ 26 (-46.94%)
Mutual labels:  research-paper
Meta-TTS
Official repository of https://arxiv.org/abs/2111.04040v1
Stars: ✭ 69 (+40.82%)
Mutual labels:  meta-learning
Meta-SelfLearning
Meta Self-learning for Multi-Source Domain Adaptation: A Benchmark
Stars: ✭ 157 (+220.41%)
Mutual labels:  meta-learning
CDFSL-ATA
[IJCAI 2021] Cross-Domain Few-Shot Classification via Adversarial Task Augmentation
Stars: ✭ 21 (-57.14%)
Mutual labels:  meta-learning
letter-2-reviewers-LaTeX-template
A LaTeX template to write response letters for journal revisions
Stars: ✭ 32 (-34.69%)
Mutual labels:  research-paper

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

This work propose a meta GCN algorithm to realize the fast connectivity restore of initially connected robotic networks (RNs) with random nodes destroyed afterwards. Specifically, we first propose a GCO to heal the connectivity of the RNs and prove its convergence with contracting mapping. We then extend the GCO to a GCN with a carefully designed Lagrange-form loss function. The GCN is trained to find the healing topology of the RNs. Thirdly, we utilize the meta learninig scheme to find potential parameters for GCN, which can speed up its on-line training. In addition, we also consider the general destructions to the RNs and propose an efficient algorithm to restore the connectivity of RNs based on the proposed meta GCN.

Display of Main Results Demo

One-off UEDs

randomly destruct 150 robots (e.g. UAVs)                             randomly destruct 100 robots (e.g.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.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].