Применение программирования ограничений для выравнивания/анализа последовательностей

Моя магистерская программа ориентирована на формальные методы, такие как решение SAT и программирование в ограничениях. Я заинтересован в применении таких методов к проблемам выравнивания последовательностей и анализа последовательностей, областей, в которых доминируют статистические методы.

Итак, можете ли вы привести примеры некоторых исследовательских задач, подходящих для решения задач удовлетворения ограничений?

Примечание. К программированию с ограничениями я также отношу более гибкие парадигмы, такие как программирование с взвешенными ограничениями , где решение может нарушать некоторые ограничения.

Вы имеете в виду оптимизацию? В любом случае, я думаю, вы должны четко указать свою проблему и то, что вы хотите сделать. Тем более, что этот вопрос не совсем подходит для этого форума. Это можно спросить в CS-SE.
Я имею в виду проблему, которую можно смоделировать, задав набор ограничений и задав отношения между этими ограничениями. Оптимизация является частным случаем и больше связана с проблемой взвешенных ограничений (тогда мы оптимизируем для минимального веса нарушения)
Что касается вопроса об этом в CS-SE: я не согласен, мой вопрос не о программировании с ограничениями. Речь идет о том, какие проблемы в биоинформатике (в частности, выравнивание последовательностей) можно решать как проблему ограничений. Лучше всего об этом знают люди, работающие в области биологии.

Ответы (1)

Сначала прочитайте, чем локальное и глобальное выравнивание отличаются друг от друга. Затем определите целевую функцию, т.е. как измерить сходство между двумя последовательностями? Может быть, использовать расстояние Хэмминга? Или расстояние Левенштейна? После этого часть оптимизации, вероятно, выходит вполне естественно.

Обязательно проверьте существующее программное обеспечение. Простые вещи уже опробованы. (И кстати, биологи почему-то называют n-граммы k-мерами . )

Что ж, я нахожусь в середине проекта по использованию HMM для выравнивания и прочитал основы. Но проблемы, о которых я читал (выравнивание двух последовательностей для функционального анализа и возможность вставки/удаления нуклеотидов), похоже, не подходят для моделирования с ограничениями. Поэтому я прошу посмотреть, есть ли другие проблемы, которые могли бы лучше подойти для этого.
Самое близкое, что я видел, что может подойти для подхода с ограничениями, - это использование трансформационной грамматики для зависимостей на большом расстоянии. Но даже там я не очень уверен, что это может быть оформлено как CSP.
Попробуйте прочитать эту статью: plosone.org/article/… Любая помощь?
Спасибо, может быть. Нужно будет взглянуть на системы/инструменты, упомянутые в статье, чтобы увидеть, есть ли какие-либо, которые основаны на ограничениях (а не на основе статистики) или, по крайней мере, каким-то образом включают ограничения. Если да, то это был бы хороший кандидат для проект программирования ограничений.