Дифференцирование в пиомо

Как мы можем дифференцировать ограничения, определенные в pyomo, относительно конкретных переменных, и умножить эти выражения на другой компонент модели pyomo. Я хочу создать ограничение, которое включает в себя производную других ограничений, а именно: l1*dg1/dz + l2*dg2/dz = 0, где l1 и l2 - переменные pyomo, g1 и g2 - другие ограничения в модели. Пожалуйста, помогите мне. Спасибо.

1 ответ

Посмотрите на differentiate функция в pyomo.core.base.symbolic, В конвейере есть несколько более быстрых реализаций, но это должно дать вам то, что вам нужно. В качестве примера использования вы можете взглянуть на код решателя GDPopt.

Другие вопросы по тегам