Skip to content

Tutorial 4 Multistate predictions

LucaChiesa edited this page Nov 21, 2023 · 3 revisions

Introduction

One of the limits of AlphaFold is its inability to model different conformational states. This limits its application to targets with a conformational landscape characterized by the existance of distinct states. GPCRs in particular present two biologically relevant conformations: an active state, and an inactive state.

Currently multiple methods have been proposed to model specific conformational states of a target protein, with a particular focus on GPCRs. Some of these proposed methods are implemented in LIT-AlphaFold:

In this tutorial you will try to model different conformational states of CXCR4. To do so the results from Tutorial 1 (CXCR4.pkl) and Tutorial 2 (CXCR4_active_state.pkl, and CXCR4_inactive_state.pkl) will be used.

AlphaFold-Multistate

AlphaFold-Multistate generates structures in a specific conformational states in GPCRs by forcing AlphaFold to use only state specific templates and a modified MSA for predition. In the MSA all positions already covered by at least one template are replaced by a spacer (-) character. Removing the coevolutionary information in that postion forces AlphaFold to relay more on the templates structure information.

In LIT-AlphaFold the same outcome is obtained by using input monomer files containing only templates in a specific activation state, as CXCR4_active_state.pkl and CXCR4_inactive_state.pkl. The MSA information already covered by the templates is removed using the command remove_msa_templates in the input file or by setting the argument remove_template_msa to True in the run_multimer_jobs.py script.

NOTE: AlphaFold is formed by five different models, however only two of them use tempalte information for prediction. To save time LIT-AlphaFold allows to only use those two models realying on templates for calculation. To do so the argument only_template in run_multimer_jobs.py has to be set to True.

The same results is obtained using the two different methods:

  • By removing MSA information only from specific targets
CXCR4_active_state remove_msa_templates
CXCR4_inactive_state remove_msa_templates
python $LITAF/run_multimer_jobs.py --mode custom \
--output_path test_structure \
--monomer_objects_dir ../tutorial_1_2/protein_features_mmseqs2 \
--input_file monomer_multistate.in \
--data_dir $AFDATA \
--only_template=True

This approach is more flexible, allowing to evalaute multiple methods in a single input file. In the example below calculations are performed using AlphaFold-Multistate and by using inputs with state specific templates.

CXCR4_active_state remove_msa_templates
CXCR4_inactive_state remove_msa_templates
CXCR4_active_state
CXCR4_inactive_state
  • By applying the change to ALL the entries in the input file
CXCR4_active_state
CXCR4_inactive_state
python $LITAF/run_multimer_jobs.py --mode custom \
--output_path test_structure \
--monomer_objects_dir ../tutorial_1_2/protein_features_mmseqs2 \
--input_file monomer_annotated.in \
--data_dir $AFDATA \
--only_template=True \
--remove_template_msa=True

This method is more indicated if you want to predict multiple structures using the same method.

REFERENCE: HEO, Lim; FEIG, Michael. Multi‐state modeling of G‐protein coupled receptors at experimental accuracy. Proteins: Structure, Function, and Bioinformatics, 2022, 90.11: 1873-1885.doi: 10.1002/prot.26382

af2_conformations

af2_conformations aims at exploring a larger conformational space by subsampling the MSA at inference time. In this way each time calculations are run a different part of the MSA is used for prediction, leading to more diversity between the predicted structures. Both active and inactive state structures could be generated this way, however the method is not deterministic and it is not possible to specify the desired activation state beforehand.

Based on the results from Del Alamo et al. the best results were obtained with a 8:16 or 16:32, MSA:extra_MSA sequences values. The input does not require objects with annotated templates as in monomer_CXCR4.in.

By using af2_conformations it is recomended to run the calculations multiple time to increase the probability of obtaining the desired results. In the example calculations are repeated 5 times.

CXCR4
python $LITAF/run_multimer_jobs.py --mode custom \
--output_path test_structure \
--monomer_objects_dir ../tutorial_1_2/protein_features_mmseqs2 \
--input_file monomer_CXCR4.in \
--data_dir $AFDATA \
--max_seq=8 \
--max_extra_seq=16 \
--num_predictions_per_model=5

REFERENCE: DEL ALAMO, Diego; SALA, Davide; MCHAOURAB, Hassane S; MEILER, Jens Sampling alternative conformational states of transporters and receptors with AlphaFold2 eLife 11:e75751, 2022 doi: 10.7554/eLife.75751

AF2_GPCR_Kinase

AF2_GPCRs_kinases combines elements from both AlphaFold-Multistate and af2_conformations. The method relays on state specific templates to bias the generated structures towards a specific target, and on MSA subsampling to limit the influence of the MSA, instead of completely or partially removing it.

In this case the input is formed by monomers with annotated tempates as in monomer_annotated.in

CXCR4_active_state
CXCR4_inactive_state
python $LITAF/run_multimer_jobs.py --mode custom \
--output_path test_structure \
--monomer_objects_dir ../tutorial_1_2/protein_features_mmseqs2 \
--input_file monomer_annotated.in \
--data_dir $AFDATA \
--only_template=True \
--max_seq=8 \
--max_extra_seq=16

REFERENCE: SALA Davide; HILDEBRAND Peter W.; and MEILER Jens Biasing AlphaFold2 to predict GPCRs and kinases with user-defined functional or structural properties. Frontiers Molecular Biosciences, 2023, 10:1121962.doi: 10.3389/fmolb.2023.1121962

SPEACH_AF

NOTE: This method has not been tested on CXCR4 and it is reported only as an example, the mutations should not influence the conformational state of the monomer.

SPEACH_AF relays on in silico mutations in the MSA to force AlphaFold to explore alternative conformations of the target protein. By mutating residue at the interfece of a contact surface between two different domains of the protein, it is possible to obtain a new relative conformation for the two domains.

Acceptable mutations are the uppercase one letter code for aminoacids ACDEFGHIKLMNPQRSTVWY and the - indicating a spacer.

LIT-AF allows to apply mutations to specific proteins in the input file using the keyword mutate_msa, or by passing to run_multimer_jobs.py a file containing the mutations using the argument mutate_msa_file, in this case all target proteins are mutated in those positions.

  • Monomer specific mutations The mutations are specified in the input file for each monomer
CXCR4 mutate_msa=1:A,250:-,300:D

In this case the MSA will be mutated setting all residues in position 1 to alanine, 250 to the spacer character, and 300 to aspartic acid. Calculations can then be run normally as in Tutorial 3.

  • Global mutations A file describing the mutations is given to the script and mutations are performed on ALL monomers in the input file. The mutation file mutations.yaml is written as:
1: 'A'
250: '-'
300: 'D'
python $LITAF/run_multimer_jobs.py --mode custom \
--output_path test_structure \
--monomer_objects_dir ../tutorial_1_2/protein_features_mmseqs2 \
--input_file monomer_simple.in \
--data_dir $AFDATA \
--mutate_msa_file mutations.yaml

Calculations can then be run normally as in Tutorial 3.

REFERENCE: STEIN, Richard A.; MCHAOURAB, Hassane S. SPEACH_AF: Sampling protein ensembles and conformational heterogeneity with Alphafold2. PLOS Computational Biology, 2022, 18.8: e1010483. doi: 10.1371/journal.pcbi.1010483

Conclusion

In this tutorial you have learned how to run multistate monomer predictions using LIT-AF.

Clone this wiki locally