Project reference: 1612
Virtual screening is a computational technique used in drug discovery to search libraries of small molecules in order to identify those compounds, which are most likely to bind to a drug target, typically a protein. A protein family is a group of evolutionarily-related proteins. When screening for drug candidates to identify inhibitors for a specific protein, the inhibitor should be very specific for the protein of interest and should not inhibit other proteins within the protein family. For example the Activin-Like Kinases (ALK1-7) or the PI3K isoforms (PI3K alpha, beta, gamma, delta) have a high homology but perform different functions. Therefore, we would like our candidate drug to be selective for the protein of interest and not for other homologs or isoforms of the protein family, because inhibiting other members of the protein family may lead to undesirable side effects. In this context, we perform computational (virtual) screening not only for the protein of interest but also for other proteins of the same family. The output of the virtual screening is the prediction of the free energy of binding of the compound for the protein measured in kcal/mol, which is the compound score. Then, for the selection of compounds that will be tested in biological assays we would like to choose compounds that have a high score (predicted free energy of binding) for the protein of interest and low for proteins of the same family. In other words, we select compounds that score high for the protein of interest and at the same time “screen out” or remove compounds that score high for unwanted proteins of the same family. In this project, you will be required to create an algorithm that will re-rank virtual screening results based on their score, so that compounds that score high for the protein of interest (reference) do not rank high for other proteins of the same family. The datasets may be given to you or they could be also created within the project. The algorithm will also have an interface for the visualization of the results.
Project Mentor: Dr. Zoe Cournia
Site Co-ordinator: Ioannis Liabotis
Student: Juan Eiros Zamora
Algorithm development for use with drug design projects. Students will be exposed in computer-aided drug design techniques.
Student Prerequisites (compulsory):
Background in computer science. The student needs to be proficient in programming. The programming language can be chosen by the student, but it should be open source.
Student Prerequisites (desirable):
College-level knowledge of chemistry, physics, biology.
Week 1. Familiarize with the system to study and the concept. Create the datasets or take them from the host lab.
Week 2. Start coding the algorithm, find selection criteria , e.g. Ask the user to provide two different cutoffs for the final selection of compounds: a) ranked compounds should have at least XXXX ranks difference to be selected, b) ranked compounds should have at least X kcal/mol difference to be selected. Create tabulated lists of virtual screening results for the list of proteins used.
Week 3. Work Plan. Create a scoring function that weighs the results based on the differences on the ranks and the docking score.
Week 4. Re-rank the virtual screening results taking as reference the protein of interest (for high scoring compounds). Work on the visual interface.
Week 5. Provide the re-ranked list based on the reference structure (e.g. compounds that score high for ALK2 and low for ALK1, ALK5, p38). Work on the visual interface.
Week 6. Provide a user manual for your program
Week 7. Test the program
Week 8. Write the final report.
Final Product Description:
An algorithm will be developed for meta-analysis of virtual screening results, widely used in computer-aided drug design. PRACE could have a live demo of the product in conferences.
Adapting the Project: Increasing the Difficulty:
The scoring function that weighs the results based on the differences on the ranks and the docking score can be refined with increasing difficulty from the student.
The student will need to have access to a workstation and the programming language and compilers that he/she will choose. We can provide access to open source software/programs and we also provide a desktop computer.