Введение
С появлением библиотеки SymPy для решения математических задач появились дополнительные возможности, позволяющие отображать результаты в символьной форме.
Подробное описание использования символьных вычислений приведено в публикации [1] под названием «Введение в научный Python» в разделе «Символьные вычисления».
Расширение области применения символьных вычислений на решение отдельных задач нелинейного программирования надеюсь будет способствовать популяризации Python в том числе и как альтернатива дорогостоящих математических пакетов.
Постановка задачи
Привести примеры символьных вычислений для безусловного экстремума дифференцируемой нелинейной функции цели с определением достаточных условий существования экстремума по матрице Гессе. Рассмотреть так же задачу условного нелинейного программирования с линейными ограничениями при помощи множетелей Лагранжа.
Для того, чтобы определиться с терминологией приведу следующее определение [2]. Задачей нелинейного программирования (задачей НП) называется задача нахождения максимума (минимума) нелинейной функции многих переменных, когда на переменные имеются (не имеются) ограничения типа равенств или неравенств.
Символьное вычисление безусловного экстремума дифференцируемой функции трёх переменных
Несмотря на сложность решаемых задач при символьном решении всё становится простым и наглядным. Рассмотрим листинг первого примера.Читать полностью »