Skip to content

Machine learning accelerated Branch and Bound for Joint beamforming and antenna selection

Notifications You must be signed in to change notification settings

XiaoFuLab/Antenna-Selection-and-Beamforming-with-BandB-and-ML

Repository files navigation

Optimal Solutions for Joint Beamforming and Antenna Selection: From Branch and Bound to Machine Learning

Implementation of the paper "Optimal Solutions for Joint Beamforming and Antenna Selection: From Branch and Bound to Graph Neural Imitation Learning", published in IEEE Transactions on signal processing. Also, see a shorter version in this ICASSP Paper.

Beamforming and Antenna Selection Problem

Image description

Image description

Proposed Solution

Image description

Results

Image description Image description

Setup

Make sure that you have pip installed.

If you are on linux. Run the following command

./initial_setup.bash

Else, manually create the following directories

antenna_selection/data_bf/data
antenna_selection/data_rbf/data

antenna_selection/data_bf/trained_models
antenna_selection/data_rbf/trained_models

And run

pip install -r requirements.txt

Executing the Code

On the base directory run the following to make sure that the repo is added to PATH and PYTHONPATH environment variables

source activate_env.bash

Finally, you can run the proposed B&B procedure by running the following

python antenna_selection/bb_unified.py 

You can train node classifier with the following

python models/dagger_multiprocess.py

Change the parameters in models/setting.py and on the individual file that you are running.

About

Machine learning accelerated Branch and Bound for Joint beamforming and antenna selection

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published