алгоритм оптимизации

Отменен
Заказ
6147473
Раздел
Математические дисциплины
Предмет
Методы оптимизации
Тип работы
Антиплагиат
Не указан
Срок сдачи
5 Июн в 21:55
Цена
2 500 ₽
Блокировка
10 дней
Размещен
3 Июн в 20:00
Просмотров
56
Описание работы

Заранее известны матрицы A, B, CM, DM, вектора x, s, s*, cm, dm, u0, все элементы неотрицательные, число epsilon для точности. u-вектор с неизвестными элементами известной размерности p. 

CM-матрица правых частей, cm-вектор левых частей ограничения CM*(A*x+B*u-s)<=cv (1) . 

DM-матрица правых частей, dm-вектор левых частей ограничения DM*u<=dv (2) . 

Из исходных данных строится функция, зависящая от u, евклидовой нормы вектора A*x+B*u-s-s*, а также градиент этой функции. 

1)Для точки u0 выбираются активные и неактивные ограничения из (1) и (2) . 

2)Находится вектор направления d решением задачи линейного математического программирования симплекс-методом, где целевая функция - найденный ранее градиент в точке u0 умноженный на вектор d(d имеет размерность градиента), а ограничения строятся, как матрица правых частей активных ограничений * d<= вектор левых частей активных ограничений, а также дополнительное ограничение 0<=d<=1

3)Если в найденном d целевая функция по модулю меньше epsilon, алгоритм заканчивается, выводится u0, xt=A*x+B*u0-s-s*, значение функции, заданной евклидовой нормой выше в точке u0. 

4)В противном случае выбирается новая точка uk по правилу uk=u0+l*d, где l - число. Строится функция F(l), полученная подстановкой uk в функцию, найденной ранее через евклидову норму. l ищется методом равномерного поиска минимизации F(l) с ограничением 0<=l<=l_max. l_max=min(bi/mi), где bi-элементы вектора b: b=вектор правых частей неактивных ограничений-матрица левых частей неактивных ограничений*u0, mi-элементы вектора m: m=матрица левых частей неактивных ограничений*d.

5) вместо точки u0 берëм uk и повторяем алгоритм с шага 1 (переопределяем активные и неактивные ограничения, вектор направления, при необходимости ищем новую точку) пока в каком-то d целевая функция по модулю не будет меньше epsilon


нужно реализовать решение данного алгоритма на языке python

Нужна такая же работа?
  • Разместите заказ
  • Выберите исполнителя
  • Получите результат
Гарантия на работу 1 год
Средний балл 4.96
Стоимость Назначаете сами
Эксперт Выбираете сами
Уникальность работы от 70%
Предыдущий заказ
Следующий заказ
Нужна аналогичная работа?
Оформи быстрый заказ и узнай стоимость
Гарантированные бесплатные доработки
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Темы журнала
Показать ещё
Прямой эфир