Exhaustieve zoekmethode
Je hebt de doelfunctie toegepast en het resultaat gevisualiseerd; je kon de optimale waarde echter alleen op het oog bepalen via de plot. Een nauwkeurigere manier om deze waarde te vinden is met de exhaustieve zoekmethode.
Je werkt weer voor een mediabedrijf dat tijdschriften uitgeeft en drukt, maar dit keer ga je uitzoeken hoe je de winst maximaliseert in plaats van de kosten te minimaliseren. Onthoud dat de winst- en hoeveelheidseenheden in duizenden zijn, dus een q van 1 is 1000 tijdschriften en een winst van 5 is $5000.
Dezelfde quantity-array uit de vorige oefening is voor je beschikbaar gesteld, samen met een te optimaliseren functie profit().
numpy is voor je geïmporteerd als np.
Deze oefening maakt deel uit van de cursus
Introductie tot optimalisatie in Python
Oefeninstructies
- Bereken de winst voor elke hoeveelheid met de meegeleverde functie
profit(), en sla dit op alsprofits. - Vind de maximale winst met de juiste arraymethode, en sla dit op als
max_profit. - Vind de optimale hoeveelheid om de winst te maximaliseren door de index van de maximale winst op te slaan als
max_index, en gebruik deze vervolgens omquantityte subselecteren. - Print de resultaten door de f-string aan te vullen; vergeet niet de winst en hoeveelheid met
1000te vermenigvuldigen.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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 ${____}.")