Site menu:

PSOVina - Fast Protein-Ligand Docking Tool based on PSO and AutoDock Vina 

Studying phase transition temperature of pentadecane using MD simulations

A fast docking tool based on the efficient optimization algorithm of Particle Swarm Intelligence and the framework of AutoDock Vina. In our rigorous docking tests using the PDBBind data set and the virtual screening experiments using the DUD data set, PSOVina achieves a 51-60% time reduction in execution without compromising the prediction accuracies of Vina. This improvement in time efficiency makes PSOVina a better choice of a docking tool in large-scale protein-ligand docking applications.

Version 1.1 (06 Jun 2017)

Release note


(Freely available for academic use only, please read our Open Source License) 

Required Software

For successful compilation, please install Boost (version 1.59 or above). For preparing molecules for docking,  please install AutoDockTools (ADT).


The installation basically follows the installation of AutoDock Vina:
a. unpack the files
b. cd psovina-1.x/build/<your-platform>/release
c. modify Makefile to suit your system setting
d. type "make" to compile

The binary psovina will be generated at the current directory. You can copy this binary to a directory in your PATH e.g. /usr/local/bin, or add the path of the current directory to your PATH.

Running PSOVina

You can run psovina as the way you run vina but additional three parameters (optional) are used to specify how the PSO algorithm perform searching:
--num_particles arg (=8) Number of particles
--w arg (=0.36) Inertia weight
--c1 arg (=0.99) Cognitive weight
--c2 arg (=0.99) Social weight

For example, docking Kifunensine in the Mannosidase enzyme (PDBID 1ps3 from the PDBbind v2012 dataset) using PSOVina with default PSO parameters in a 8-core computer and obtain the lowest energy prediction:

% <path-to-AutoDockTools>/ -l 1ps3_ligand.mol2 -o 1ps3_ligand.pdbqt -A 'hydrogens' -U 'nphs_lps_waters'

% <path-to-AutoDockTools>/ -r 1ps3_protein.pdb -o 1ps3_protein.pdbqt -A 'hydrogens' -U 'nphs_lps_waters'

% <path-to-psovina>/psovina --receptor 1ps3_protein.pdbqt --ligand 1ps3_ligand.pdbqt  --center_x  31.951 --center_y 65.5053 --center_z 7.63888 --size_x  33.452 --size_y 27.612  --size_z  35.136  --num_modes 1 --cpu 8

   More test cases can be available soon.

Develop PSOVina

If you are interested in the source code of PSOVina for any academic purposes, please note that the following files were newly developedin our work or modified based on Vina:


Please cite our paper if you have used PSOVina. It would also be nice to let us know that you found PSOVina useful by sending us an email:
Marcus C. K. Ng, Simon Fong, and Shirley W. I. Siu*
PSOVina: The Hybrid Particle Swarm Optimization Algorithm for Protein-Ligand Docking
Journal of Bioinformatics and Computational Biology (JBCB) 13 (3), 1541007, 2015.

Contact Us

Developer: Marcus C. K. Ng   marcus.ckng_[at]_gmail_[dot]_com
Giotto Tain19931225_[at]yahoo_[dot]_com_[dot]_hk
Project P.I.: Shirley W. I. Siu shirley_siu_[at]_umac_[dot]_mo
(please remove all underscores)