Answer
t.me/python_tesstОтвет:
Объяснение:
Мы можем продемонстрировать, как использовать линейный поиск с простой одномерной целевой функцией и её производной. Во-первых, мы можем определить целевую функцию. Здесь поработаем с одномерной целевой функцией, а именно со сдвинутой на небольшую величину от нуля функцией x^2. Это выпуклая функция, она была выбрана потому, что её легко понять, а также легко вычислить первую производную.
- objective(x) = (-5 + x)^2.
Программа вычисляет входные значения (x) в диапазоне от -10 до 20 и создаёт график, показывающий знакомую U-образную форму параболы. Оптимум функции, по-видимому, находится в точке x=5,0, целевое значение — 0,0.
Код:
# plot a convex objective function from numpy import arange from matplotlib import pyplot # objective function def objective(x): return (-5.0 + x)**2.0 # gradient for the objective function def gradient(x): return 2.0 * (-5.0 + x) # define range r_min, r_max = -10.0, 20.0 # prepare inputs inputs = arange(r_min, r_max, 0.1) # compute targets targets = [objective(x) for x in inputs] # plot inputs vs objective pyplot.plot(inputs, targets, '-', label='objective') pyplot.legend() pyplot.show()