[Из песочницы] Симплекс-метод

Преамбула Собственно, зачем. Когда-то мои поиски качественного описания симплекс-метода заняли уйму времени. Для того, чтобы прочие не страдали, я постараюсь изложить более полную информацию о решении задач данным способом. Кому-то, возможно, эта тема покажется далекой от IT, однако она полезней, чем подумают многие. Скажем даже больше, до наступления эры квантовых компьютеров оптимизация будет играть ключевую роль в работе настоящих программистов. Статья довольно тяжелая, но при надобности можно и потерпеть.Постановка Крайне важную нишу в методах оптимизации занимают задачи линейного программирования (ЛП). Они заключаются в минимизации (или максимизации) целевого линейного функционала на многомерном пространстве при наличии ограничений, заданных в виде линейных неравенств. Формально каноническая задача ЛП выглядит следующим образом: Требуется найти 08349c483ae4d0b4fd163ced8fa630af.jpg при заданных ограничениях b501376c0857b88d16b4a46268d5058c.jpg. Для ясности: x — вектор переменных, C — вектор коэффициентов (C^T[N]*x[N] и задает линейный функционал). Матрица А является матрицей полного ранга, иначе говоря rang A[M, N] = min (M, N). Приведем тривиальный пример. Допустим, мы ищем bb8c032260e9830c2eea5caeea298ca4.jpg при условиях: 856b72949feda93ebf5e7d93ed4741fa.jpg Для лучшего представления прикладываю график множества ограничений: fd0681bc0a1645bdbad741f9312d26ef.jpgЧитать дальше →

© Habrahabr.ru