Bachelor thesis, completing the bachelor of Pharmaceutical Sciences at VU Amsterdam.
Grade: 9.5
I am further pursuing the Pyrite project within the group of Daan Geerke together with David Poole.
Thesis abstract:
Pyrite is a new, open, extensible, and accessible, Python-based framework for molecular docking that aims to allow straightforward testing and development of existing and novel docking methods. We introduce (i) a grid-based binding pocket detection and scoring algorithm that guides searching to plausible binding sites, (ii) a crowding and niching strategy that enforces pose diversity, and (iii) seamless integration with existing biochemical tools and optimization suites such as rdkit, SciPy, and pygmo. Benchmarking on the 2024 PDBbind demo set shows that using the Pocket function accelerates searching 2-6 × compared to the Vina and Piecewise Linear Potential functions while maintaining, or in blind docking even surpassing, their accuracy. An example reference workflow — pocket + crowding for search with ant colony optimization, Piecewise Linear Potential for refinement — shows an accuracy of 37 ± 6 % of poses within 2 Å RMSD for autoboxed docking, and 16 ± 3 % in whole-protein mode. Error analysis reveals that most errors stem from searching errors, rather than scoring problems. Overly stringent pocket-depth filters and insufficient niching result in accuracy loss in the searching phase. Both problems are addressed in Pyrites development roadmap.