НачатьНачать бесплатно

Метод полного перебора

Вы применили целевую функцию и визуализировали результат, однако определить оптимальное значение можно было только приблизительно — по графику. Более точный способ найти это значение — метод полного перебора.

Вы снова работаете в медиакомпании, которая издаёт и печатает журналы, но на этот раз ваша задача — максимизировать прибыль, а не минимизировать затраты. Напомним, что прибыль и количество выражены в тысячах: значение q, равное 1, соответствует 1000 журналов, а прибыль 5 — 5000 долларов.

Массив quantity из предыдущего упражнения уже доступен вам, а также функция profit(), которую необходимо оптимизировать.

numpy импортирован как np.

Это упражнение является частью курса

Введение в оптимизацию на Python

Посмотреть курс

Инструкции к упражнению

  • Вычислите прибыль для каждого значения количества с помощью функции profit() и сохраните результат в переменную profits.
  • Найдите максимальную прибыль с помощью подходящего метода массива и сохраните результат в переменную max_profit.
  • Найдите оптимальное количество, максимизирующее прибыль: сохраните индекс максимальной прибыли в переменную max_index, а затем используйте его для обращения к элементу массива quantity.
  • Выведите результаты, дополнив f-строку — не забудьте умножить прибыль и количество на 1000.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# 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 ${____}.")
Редактировать и запускать код