Может ли scipy.optimize найти оптимальные входные значения, когда задействовано несколько продуктов?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Может ли scipy.optimize найти оптимальные входные значения, когда задействовано несколько продуктов?

Сообщение Anonymous »

Мне хотелось бы найти оптимальные значения входных данных А для продукта 1 и входных данных А для продукта 2 с целью максимизировать общий выпуск и с учетом заданного ограничения. Я пробовал использовать функцию минимизации Scipy Python, и она работает, если у меня есть только один продукт, но не работает для нескольких продуктов.
Можно scipy.optimize найти оптимальные входные значения, когда несколько продуктов Задействованы?
Вот что я попробовал, предполагая, что существует всего два продукта (на самом деле у меня несколько тысяч таких продуктов):

Код: Выделить всё

import numpy as np
import scipy
from scipy.optimize import minimize

Код: Выделить всё

Product1_InputB = np.array([0.5])
Product1_InputC = np.array([1])
Product1_InputD = np.array([1])
Product1_InputE = np.array([0.08])
Product1_InputF = np.array([20])

Product2_InputB = np.array([0.5])
Product2_InputC = np.array([1])
Product2_InputD = np.array([2])
Product2_InputE = np.array([0.1])
Product2_InputF = np.array([30])

Код: Выделить всё

def Neg_Product1_Output(Product1_InputA):
return -1 * ((2.71828**((Product1_InputA-Product1_InputB)*(0.5*Product1_InputC-1.5*Product1_InputD)))/(1+(2.71828**((Product1_InputA-Product1_InputB)*(0.5*Product1_InputC-1.5*Product1_InputD))))*(Product1_InputA-Product1_InputB))

def Neg_Product2_Output(Product2_InputA):
return -1 * ((2.71828**((Product2_InputA-Product2_InputB)*(0.5*Product2_InputC-1.5*Product2_InputD)))/(1+(2.71828**((Product2_InputA-Product2_InputB)*(0.5*Product2_InputC-1.5*Product2_InputD))))*(Product2_InputA-Product2_InputB))

def Neg_Total_Output(Product1_InputA,Product2_InputA):
return Neg_Product1_Output + Neg_Product2_Output

Код: Выделить всё

def constraint(Product1_InputA, Product2_InputA):
return (((Product1_InputA - Product1_InputE) * Neg_Product1_Output) + ((Product2_InputA - Product2_InputE) * Neg_Product2_Output)) / Neg_Total_Output - 2

con = {'type':'ineq', 'fun': constraint}

Product1_InputA_Initial_Guess = np.array([3])
Product1_InputA_Initial_Guess = np.asarray([3])
Product2_InputA_Initial_Guess = np.array([1])
Product2_InputA_Initial_Guess = np.asarray([1])
Product1_bound = [(0.3,4)]
Product2_bound = [(0.3,4)]

Код: Выделить всё

optimized_results = minimize(Neg_Total_Output,Product1_InputA_Initial_Guess,bounds=Product1_bound,constraints=con)

Код: Выделить всё

Product1_InputA_Optimal = optimized_results.x
Product1_InputA_Optimal
Когда я запускаю строку оптимизированный_результат = ..., я получаю следующую ошибку:

Код: Выделить всё

TypeError: constraint() missing 1 required positional argument: 'Product2_InputA'
Не знаю, как включить Product2 в функцию минимизации оптимизированных_результатов, описанную выше.

Подробнее здесь: https://stackoverflow.com/questions/785 ... e-involved
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Почему существует scipy.optimize.least_squares, когда scipy.optimize.minimize потенциально может использоваться для тех
    Anonymous » » в форуме Python
    0 Ответы
    131 Просмотры
    Последнее сообщение Anonymous
  • Почему существует scipy.optimize.least_squares, когда scipy.optimize.minimize потенциально может использоваться для тех
    Anonymous » » в форуме Python
    0 Ответы
    106 Просмотры
    Последнее сообщение Anonymous
  • Pip-установка scipy.optimize (или scipy правильно(?))
    Anonymous » » в форуме Python
    0 Ответы
    24 Просмотры
    Последнее сообщение Anonymous
  • Установка PIP Scipy.optimize (или Scipy правильно (?))
    Anonymous » » в форуме Python
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Работает ли MTLS, когда задействовано несколько служб?
    Anonymous » » в форуме C#
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»