Metodo di ricerca esaustiva
Hai applicato la funzione obiettivo e visualizzato il risultato; tuttavia, dal grafico potevi solo stimare a occhio il valore ottimale. Un modo più preciso per trovarlo è il metodo di ricerca esaustiva.
Stai di nuovo lavorando per una media company che pubblica e stampa riviste, ma questa volta scoprirai come massimizzare il profitto invece di minimizzare il costo. Ricorda che le unità di profitto e quantità sono in migliaia, quindi un q di 1 equivale a 1000 riviste e un profitto di 5 equivale a $5000.
Ti sono stati forniti lo stesso array quantity dell'esercizio precedente e una funzione profit() da ottimizzare.
numpy è già stato importato come np.
Questo esercizio fa parte del corso
Introduzione all'ottimizzazione in Python
Istruzioni dell'esercizio
- Calcola il profitto per ogni quantità usando la funzione
profit()fornita, salvando inprofits. - Trova il profitto massimo con il metodo appropriato dell'array, salvandolo in
max_profit. - Trova la quantità ottimale che massimizza il profitto salvando l'indice del profitto massimo come
max_index, quindi usalo per sottoinsiemarequantity. - Stampa i risultati completando l'f-string, ricordando di moltiplicare profitto e quantità per
1000.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Calculate the profit for every quantity
profits = ____
# Find the maximum profit
max_profit = ____
# Find the optimal quantity
max_profit_ind = ____
optimal_quantity = ____
# Print the results
print(f"You need to print {____} magazines to make the maximum profit of ${____}.")