Kodomo

Пользователь

Учебная страница курса биоинформатики,
год поступления 2019

Дизайн

Навыки в этом практикуме:

У практикума есть 2 варианта, можно сделать любой из двух или оба. В обоих случаях выберите для работы одну запись PDB из списка. В этом практикуме можно взять одну и ту же структуру сразу нескольким студентам – ProteinMPNN не является детерминистским. Запись в таком случае позволит вам проще понять, кто еще взял ту же запись PDB, что позволит сделать бонусное задание по сравнению результатов.

Запись PDB это комплекс между белковым лекарством и белковым таргетом. Что может быть в роли лекарства – nanobody (однодоменное антитело), пучок из альфа-спиралей, DAPRin ("designed ankyrin repeat proteins"). Что у них общего – это все маленькие однодоменные стабильные белки, часть которых можно настроить на связывание с таргетом. Далее будем называть их "байндерами".

Вы можете предложить свою структуру для данного практикума – если есть идеи, напишите мне в ТГ.

Вариант 1

В этом варианте мы используем уже известный комплекс из PDB как игрушечную имитацию этапа в пайплайне вычислительного дизайна. А, именно, предположим, что это не структура из эксперимента, а созданный кем-то pdb файл, где взаиморасположение структуры таргета и какого-то взятого из коллекции байндера сгенерировано руками или алгоритмом. Это мог быть вообще левый байндер, на последовательность которого закрыли глаза и работали с ним чисто как с остовной структурой.

Теперь наша задача, стартуя с этой пары "таргет" – "остовная структура байндера", предложить сиквенс для интерфейса взаимодействия байндера с таргетом. Остальную часть последовательности для байндера можно оставить исходной, т.к. нет оснований считать, что она плохо выполняет свою функцию – поддержание стабильной третичной структуры.

Как это сделать?

Откройте запись PDB в PyMol, изучите. Удалите все небелковые части (remove hetatm). Если у таргета несколько доменов, а взаимодействие идет только с одним, то лишний домен можно удалить (сделайте выделение, затем remove это выделение). Сохраните стартовый сиквенс (save start.fasta). Сохраните структуру в формате pdb.

Зайдите на онлайн-реализацию ProteinMPNN. В поле Input Structure нажмите на File и загрузите ваш файл pdb. Во вкладке Settings укажите, какие цепи нужно дизайнить (хотя это не встретится в этом практикуме, подать можно и несколько цепей, через запятую) в Designed Chain. Укажите букву цепи, которую нужно оставить неизменной, в Fixed Chain. Выкрутите число генерируемых последовательностей на максимум (15). В самом низу можно задать ограничение на позиции байндера, которые не будут изменяться. Используйте по желанию. Например, так можно отразить наше понимание того, что часть байндера, выполняющая функцию поддержания стабильной структуры, уже выполняет ее хорошо, и нет смысла ее менять. Если хотите это использовать, можно подать в поле Fixed Positions строчку "not (within 10 of chain A)", если ваш таргет был цепью A.

После чего можно нажать Run. Через 3-5 минут работа будет завершена и вы получите список сиквенсов. Первым будет идти сиквенс из исходного PDB. Далее – 15 сгенерированных, каждый будет сопровождаться значением score. Чем выше скор, тем лучше. Найдите сиквенс с лучшим скором, это и будет ваш дизайн.

Время этот дизайн валидировать. Будем делать это через предсказание структуры комплекса с помощью AlphaFold. Внутри самого HuggingFace есть опция тут же засамбитить задачу для AlphaFold, однако, там идет урезанный запуск. В частности, не используются выравнивания, из-за чего предсказание получается в лучшем случае посредственным (а чаще всего две цепи будут просто висеть раздельно). Поэтому воспользуемся более полноценной версией, развернутой на GoogleColab. Зайдите на ColabFold. Все, что от нас нужно, это задать сиквенсы таргета и байндера через двоеточие в query_sequence. После чего можно оставить все остальные опции неизменными и выполнить весь ноутбук ("среда выполнения -> выполнить все" или Ctrl+F9).

ProteinMPNN не выдал сиквенс таргета, так как эта цепь была выбрана неизменной. Его скопируйте из подготовленного ранее файла start.fasta.

После запуска выполнения заварите себе чай, это будет дольше, чем ProteinMPNN. Примерно полчаса. Можно заняться другими делами, главное оставить вкладку браузера открытой. По завершении будет предложено скачать архив с результатами (либо он скачается автоматически, в зависимости от настроек вашего браузера). Внутри вы найдете pdb файлы предсказаний и служебную информацию.

Для выполнения практикума достаточно будет рассмотреть предсказание с лучшим скором. Его AlphaFold называет rank1. Откройте его в PyMol и изучите интерфейс взаимодействия. Дайте свой комментарий об успешности вашего проекта по дизайну терапевтического байндера – насколько хорошо получилось? Много ли взаимодействий? Каких? Сопроводите изображениями.

Бонусы

Вариант 2

Для начала прочтите вариант 1 =)

После чего, вот суть варианта 2: поиграйте в природу и "эволюционируйте" измененную версию таргета. Представьте, что волею случая таргет приобрел 2-5 мутаций на интерфейсе связывания (что, собственно, и происходило в новых вариантах Sars-COV-2). Каких – придумайте сами, главная просьба, чтобы они не были скучными. Что такое скучные – синонимические. Например, взаимозамены A, V, I, L не будут интересными. Не берите пары N и Q, D и E, S и T, F и Y. Отличный вариант, например, промутировать V на H.

Рассмотрите стартовую структуру в PyMol, выберите 2-5 позиций таргета, контактирующих с байндером, придумайте для них новые буквы. Отразите ваш выбор в отчете в формате V119H, т.е. в 119 позиции был валин, а появился гистидин. Воспользуйтесь инструментом PyMol mutagenesis для того, чтобы изменить эти остатки таргета. Wizard > mutagenesis > protein. В нижнем левом углу появится меню, где можно выбрать, на какую аминокислоту провести замену, в верхнем поле. По умолчанию там No Mutation, при нажатии ЛКМ откроется список вариантов. Выберите желаемый. После чего ЛКМ по остатку в белке превратит его в новый, что затем нужно закрепить, нажав в нижнем левом углу Apply. На этом этапе не обращайте внимание на то, как именно располагается новый остаток – нам это нужно только для того, чтобы ProteinMPNN получил нужную последовательность.

После завершения манипуляций с заменами, сохраните последовательности в фасту, и структуру комплекса в pdb. Остальная часть работы аналогична варианту 1, см. выше. Сгенерируйте для байндера 15 вариантов, отберите лучший, валидируйте с помощью AlphaFold. Ответьте на вопрос, удалось ли вам спасти человечество от мутировавшего варианта заразы, сопроводите картинками.

Бонусы

2019/7/task5 (последним исправлял пользователь alexander.zlobin 2022-11-23 16:09:49)