ComeçarComece de graça

Encontre o ótimo global

Você recebeu o seguinte problema de maximização de lucro e precisa encontrar o máximo global.

\(\Pi= -\frac{1}{4}q^4 + 11q^3 - 160q^2 + 900q\)

\(0\) é um limite inferior natural para a quantidade e você observou que em \(q=30\) o lucro é negativo, então \(30\) é um bom candidato a limite superior.

Encontre o ótimo global para este problema.

basinhopping já foi importado para você.

Este exercício faz parte do curso

Introdução à Otimização em Python

Ver curso

Instruções do exercício

  • Defina o dicionário kwargs de argumentos nomeados, com limites \(0\) e \(30\).
  • Execute basinhopping, com o objetivo como o negativo de profit e passando o palpite inicial x0 para minimizer via kwargs.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

def profit(q): 
	return -q**4 / 4 + 11 * q**3 - 160 * q**2 + 900 * q
  
x0 = 0

# Define the keyword arguments for bounds
kwargs = {"bounds": [(____, ____)]} 

# Run basinhopping to find the optimal quantity
result = basinhopping(____ q: -profit(q), ____, ____=kwargs)

print(f"{result.message}")
print(f"The maximum according to basinhopping(x0={x0}) is at {result.x[0]:.2f}\n")
Editar e executar o código