Наибольшее и наименьшее значение функции 🏔️
Любая осмысленная задача про деньги, время или ресурсы рано или поздно звучит одинаково: какой вариант лучший. Какую цену поставить, чтобы выручка была максимальной. С какой скоростью гнать фуру, чтобы рейс обошёлся дешевле всего. Какого размера вырезать уголки у листа картона, чтобы коробка вышла самой вместительной. Сколько эпох учить нейросеть, чтобы ошибка на валидации оказалась минимальной.
Во всех этих вопросах есть общая математическая начинка: есть функция, есть множество допустимых значений аргумента, и нужно найти на этом множестве самое большое или самое маленькое значение. Не «локально хорошее», не «лучше соседей», а лучшее из всех вообще.
И вот здесь начинается тонкость, ради которой существует этот урок. В уроке 141 мы научились находить точки экстремума — точки, которые лучше своих соседей. Кажется, что дело сделано: нашёл максимумы, выбрал самый высокий, готово. Но это неверно сразу с двух сторон. Локальный максимум может оказаться ниже значения на конце отрезка — тогда «самая высокая вершина» проиграет краю. А глобальный максимум может достигаться в точке, где производная вообще не равна нулю, — и тогда поиск по критическим точкам его просто не заметит.
Давай разберёмся, как устроен правильный поиск. Он на удивление короткий: у него всего один рабочий приём — составить конечный список чисел-кандидатов и сравнить их. Вся математика урока уходит на два вопроса: кто попадает в этот список и в каких случаях он вообще гарантированно даёт ответ.
🎯 Ты узнаешь:
- Чем глобальный экстремум отличается от локального и почему одно не сводится к другому
- Теорему Вейерштрасса — единственную гарантию существования наибольшего значения — и три контрпримера, показывающие, что в ней ни одно слово не лишнее
- В чём разница между супремумом и максимумом, и почему «верхняя граница есть, а максимума нет» — не парадокс
- Алгоритм для отрезка, в котором не нужна таблица знаков: только вычисления и сравнение чисел
- Что делать на интервале, полупрямой или всей числовой прямой, где гарантий нет
- Полную схему решения прикладной задачи на оптимум — от «ввести переменную» до «проверить, что ответ имеет смысл»
- Почему обучение ML-модели — это задача минимизации, почему уравнение $\nabla L = 0$ почти никогда не решают аналитически и в каком единственном классическом случае его всё-таки решают
История: откуда это взялось?
Первая задача на максимум, дошедшая до нас, — легенда о царице Дидоне: ей разрешили взять столько земли, сколько охватит воловья шкура, она разрезала шкуру на тонкие ремни и охватила ими территорию будущего Карфагена. Математическая суть — изопериметрическая задача: какая фигура заданного периметра имеет наибольшую площадь. Ответ (круг) греки знали, но строго доказали его только в XIX веке.
Первым, кто нащупал именно дифференциальный признак оптимума, был Иоганн Кеплер. В 1615 году он издал «Новую стереометрию винных бочек» — книгу, которая началась с бытового возмущения: продавец мерил объём бочки одной палкой, вставленной наискось, и Кеплеру показалось, что его обманывают. Разбираясь, Кеплер заметил удивительное: у бочки оптимальных пропорций объём при небольшом изменении размеров почти не меняется. Это и есть первое наблюдение того факта, что вблизи максимума функция ведёт себя как горизонтальная, то есть её производная равна нулю.
Через двадцать лет, около 1636 года, Пьер Ферма превратил наблюдение в метод. В работе «Methodus ad disquirendam maximam et minimam» он предложил приравнять $f(x)$ и $f(x+e)$, сократить на $e$, а затем положить $e = 0$ — приём, который он называл «адекватированием». Это буквально условие $f'(x) = 0$ за полвека до Ньютона и Лейбница, и именно поэтому необходимое условие экстремума носит имя Ферма (урок 141). Позже Леонард Эйлер в трактате 1744 года сформулировал почти философский тезис: в мире не происходит ничего, в чём не был бы виден смысл какого-нибудь максимума или минимума.
А вот вопрос «существует ли наибольшее значение вообще» оказался куда более коварным и был закрыт последним. Бернард Больцано в рукописи «Учение о функциях» (около 1830 года, опубликована лишь в 1930-м) первым доказал, что непрерывная на отрезке функция ограничена и достигает своих граней. Работа пролежала в архиве почти сто лет, и независимо от неё теорему доказал и ввёл в оборот Карл Вейерштрасс в своих берлинских лекциях 1860-х годов — отсюда привычное название. Мостик в сегодняшний день короткий: в 1847 году Огюстен Коши, считая орбиты небесных тел, предложил спускаться к минимуму функции многих переменных маленькими шагами против направления роста. Этот метод сегодня называется градиентным спуском и крутится внутри каждой обучающейся нейросети.
Локальный экстремум против глобального: разница, которую путают чаще всего
Интуиция: холм в низине
Представь горный хребет. Есть вершина холма посреди долины — со всех сторон от неё дорога идёт вниз, значит это локальный максимум: точка лучше своих соседей. А теперь представь, что весь хребет заканчивается обрывом плато на высоте вдвое большей. Холм в долине по-прежнему лучше своих соседей, но «самой высокой точкой маршрута» он не является и близко.
Локальность — это про окрестность. Глобальность — про всё множество сразу. Из «лучше соседей» никак не следует «лучше всех».
Определение: Число $M$ называется наибольшим значением функции $f$ на множестве $D$, если $M = f(x_0)$ для некоторой точки $x_0 \in D$ и $f(x) \le M$ для всех $x \in D$. Обозначение: $M = \max\limits_{D} f$. Аналогично, $m$ — наименьшее значение, если $m = f(x_1)$ для некоторой $x_1 \in D$ и $f(x) \ge m$ для всех $x \in D$; обозначение $m = \min\limits_{D} f$.
Наибольшее значение называют ещё глобальным максимумом, а точку $x_0$ — точкой глобального максимума. Два требования в определении одинаково важны: значение должно быть верхней границей для всех значений функции и должно реально достигаться в какой-то точке множества.
Сразу зафиксируем разницу в словах, потому что на ней теряют баллы:
- Точка максимума — это $x_0$, аргумент.
- Максимум (наибольшее значение) — это $f(x_0)$, значение функции.
Вопрос «найдите наибольшее значение» требует в ответе число $f(x_0)$, а не точку. Вопрос «в какой точке достигается» — наоборот.
Пример 1 (простой): локальный максимум проигрывает концу отрезка
Возьмём $f(x) = x^3 - 3x$ на отрезке $[-2;\,3]$.
Производная: $f'(x) = 3x^2 - 3 = 3(x-1)(x+1)$, критические точки $x = -1$ и $x = 1$, обе внутри отрезка. Из урока 141 мы знаем: $x = -1$ — точка локального максимума (производная меняет знак с плюса на минус), $x = 1$ — точка локального минимума.
Считаем значения:
- $f(-1) = -1 + 3 = 2$ — локальный максимум
- $f(3) = 27 - 9 = 18$ — значение на правом конце
Локальный максимум равен $2$, а на конце отрезка функция дотягивает до $18$. Наибольшее значение на отрезке — это $18$, и достигается оно в точке $x = 3$, где производная равна $f'(3) = 24 \ne 0$. То есть точка глобального максимума не является критической точкой. Никакой поиск «по нулям производной» её не найдёт.
Пример 2 (средний): глобального экстремума может не быть вовсе
Возьмём ту же функцию $f(x) = x^3 - 3x$, но на всей числовой прямой.
Критические точки те же, локальные экстремумы те же: локальный максимум $2$ при $x=-1$, локальный минимум $-2$ при $x=1$. Но при $x \to +\infty$ значения растут неограниченно, а при $x \to -\infty$ уходят в минус бесконечность. Значит, ни наибольшего, ни наименьшего значения у этой функции на $\mathbb{R}$ не существует — при том что оба локальных экстремума на месте.
Отсюда мораль: наличие локальных экстремумов ничего не говорит о существовании глобальных. Это разные вопросы.
Пример 3 (сложный): экстремумов нет, а наибольшее значение есть
Возьмём $f(x) = e^x$ на отрезке $[0;\,1]$.
Производная $f'(x) = e^x > 0$ всюду, критических точек нет ни одной, локальных экстремумов нет тоже — функция строго возрастает. Тем не менее наибольшее значение существует: $f(1) = e$, а наименьшее равно $f(0) = 1$. Оба достигаются на концах.
Три примера вместе дают полную картину: локальные экстремумы и глобальные значения — это две независимые истории. Могут быть локальные экстремумы без глобальных (пример 2), глобальные без локальных (пример 3), и могут быть оба, но в разных точках (пример 1).
Почему это важно
В машинном обучении эта разница — не academic curiosity, а ежедневная боль. Функция потерь глубокой сети имеет огромное количество локальных минимумов, и градиентный спуск умеет находить только их: он смотрит исключительно на окрестность текущей точки, ровно как определение локального экстремума. Заявление «модель сошлась» означает буквально «мы приехали в точку, которая лучше своих соседей», и ничего не говорит о том, есть ли где-то в пространстве параметров точка получше. Именно поэтому одну и ту же сеть запускают с разных случайных инициализаций и сравнивают результаты: это ручной перебор кандидатов на глобальный минимум — та же самая идея «составь список и сравни», которой посвящён весь этот урок.
Теорема Вейерштрасса: когда наибольшее значение вообще существует
Интуиция: замкнутая дорога и конечный подъём
Представь, что ты идёшь по тропе. Чтобы у маршрута гарантированно была самая высокая точка, нужны три вещи: тропа не должна обрываться (непрерывность), она должна иметь начало и конец (отрезок, а не бесконечная дорога), и эти начало с концом должны в маршрут входить (концы включены). Убери любое из трёх — и высшей точки может не оказаться, хотя высота будет ограничена сверху.
Теорема (Вейерштрасса): Если функция $f$ непрерывна на отрезке $[a;\,b]$, то она ограничена на нём и достигает своих наибольшего и наименьшего значений: существуют точки $x_0, x_1 \in [a;\,b]$ такие, что $f(x_1) \le f(x) \le f(x_0)$ для всех $x \in [a;\,b]$.
Эта теорема — фундамент всего урока. Она не говорит, где находятся эти точки, и не даёт способа их найти. Она говорит только, что искать не бессмысленно: ответ существует. И вот три контрпримера, каждый из которых убирает ровно одно слово из формулировки.
Контрпример 1: убираем непрерывность. Возьмём на отрезке $[0;\,1]$ функцию
$$f(x) = \begin{cases} x, & 0 \le x < 1,\\ 0, & x = 1.\end{cases}$$Отрезок на месте, функция ограничена (все значения меньше $1$), но наибольшего значения нет. Значения подбираются к единице как угодно близко — $0{,}9$, $0{,}99$, $0{,}999$, — но саму единицу не принимают: в точке $x=1$ функция резко падает в ноль. Разрыв в одной-единственной точке убил максимум.
Контрпример 2: убираем замкнутость (отрезок → интервал). Возьмём $f(x) = x$ на интервале $(0;\,1)$. Функция непрерывна, ограничена, но ни наибольшего, ни наименьшего значения нет: для любого $x \in (0;1)$ найдётся $x' \in (0;1)$ и больше, и меньше. Точки $0$ и $1$, где значения были бы достигнуты, в множество не входят.
Контрпример 3: убираем ограниченность промежутка. Возьмём $f(x) = \operatorname{arctg} x$ на луче $[0;+\infty)$. Функция непрерывна, возрастает, ограничена сверху числом $\frac{\pi}{2}$. Наименьшее значение есть — это $f(0) = 0$. А наибольшего нет: $\operatorname{arctg} x < \frac{\pi}{2}$ при любом конечном $x$, значение $\frac{\pi}{2}$ достигается только «в бесконечности», которой на числовой прямой нет.
Супремум и максимум: чем «граница» отличается от «значения»
Во всех трёх контрпримерах ситуация одинаковая: точная верхняя граница есть, а максимума нет. У этой границы есть имя.
Определение: Супремум множества значений функции ($\sup f$) — это наименьшая из всех верхних границ: число, которое не меньше любого значения функции, но при этом любое меньшее число уже какое-то значение функции превосходит. Симметрично, инфимум ($\inf f$) — наибольшая из нижних границ.
По-человечески: супремум — это «планка, к которой функция подбирается вплотную». Максимум — это «планка, которой функция реально касается». Если касание есть, супремум и максимум — одно и то же число. Если касания нет, супремум существует, а максимума нет.
В контрпримере 2 $\sup f = 1$, $\inf f = 0$, ни то ни другое не достигается. В контрпримере 3 $\sup f = \frac{\pi}{2}$ (не достигается), $\inf f = \min f = 0$ (достигается). Аккуратный ответ в задаче звучит так: «наибольшего значения не существует, значения приближаются к $\frac{\pi}{2}$, не достигая её». Написать «$\max = \frac{\pi}{2}$» — ошибка.
Почему это важно
Проверка условий теоремы — это первое, что нужно сделать в любой задаче, прежде чем считать производные. Если функция непрерывна на отрезке — ответ гарантированно есть, и алгоритм из следующего раздела его найдёт. Если хоть одно условие нарушено — гарантии нет, и вопрос «существует ли ответ» становится частью задачи.
В оптимизации это отражено в самой постановке задач: методы ищут минимум на компактном множестве (замкнутом и ограниченном), потому что иначе минимум может убежать на бесконечность. Практический эквивалент в ML — регуляризация: добавка $\lambda\|w\|^2$ к лоссу штрафует большие веса и не даёт решению уехать в бесконечность, фактически возвращая задачу в «ограниченную область», где минимум обязан существовать.
Алгоритм для отрезка: сравнить конечный список чисел
Интуиция: где может прятаться рекорд
Функция непрерывна на $[a;\,b]$. По теореме Вейерштрасса наибольшее значение достигается в какой-то точке $x_0$. Где эта точка может находиться?
Вариант первый: внутри отрезка. Тогда $x_0$ — точка локального максимума (она лучше всех точек отрезка, значит и лучше своих соседей), и по теореме Ферма из урока 141 в ней либо $f'(x_0)=0$, либо производной не существует. То есть $x_0$ — критическая точка.
Вариант второй: на конце отрезка, то есть $x_0 = a$ или $x_0 = b$. Никаких условий на производную здесь нет — функция просто не может продолжиться дальше.
Других вариантов нет. Значит, полный список подозреваемых конечен: критические точки внутри отрезка плюс два конца.
Алгоритм. Чтобы найти наибольшее и наименьшее значения непрерывной функции $f$ на отрезке $[a;\,b]$:
- Найти $f'(x)$ и все критические точки: где $f'(x) = 0$ и где $f'$ не существует.
- Отобрать из них те, что лежат внутри отрезка, то есть в $(a;\,b)$.
- Вычислить $f$ в каждой отобранной точке и в обоих концах $a$ и $b$.
- Наибольшее из полученных чисел — это $\max\limits_{[a;b]} f$, наименьшее — $\min\limits_{[a;b]} f$.
Обрати внимание на главное методическое отличие от урока 141: таблица знаков здесь не нужна. Нам всё равно, максимум это, минимум или вообще не экстремум: мы просто вычисляем значения и сравниваем числа. Определять характер каждой критической точки — лишняя работа, которая ничего не добавляет к ответу. Это огромная экономия времени: там, где исследование на экстремум требует анализа знаков на пяти промежутках, поиск наибольшего значения требует пяти арифметических подстановок.
Второе важное замечание: критические точки вне отрезка полностью игнорируются. Функция за пределами $[a;b]$ нас не касается, даже если там у неё что-то интересное.
Пример 1 (простой): многочлен
Найти наибольшее и наименьшее значения $f(x) = x^3 - 3x^2 - 9x + 5$ на $[-2;\,4]$.
Шаг 1. $f'(x) = 3x^2 - 6x - 9 = 3(x^2 - 2x - 3) = 3(x-3)(x+1)$.
Шаг 2. $f'(x) = 0$ при $x = -1$ и $x = 3$. Обе точки лежат внутри $(-2;\,4)$ — берём обе. Производная существует всюду, других критических точек нет.
Шаг 3. Считаем четыре значения:
- $f(-2) = -8 - 12 + 18 + 5 = 3$
- $f(-1) = -1 - 3 + 9 + 5 = 10$
- $f(3) = 27 - 27 - 27 + 5 = -22$
- $f(4) = 64 - 48 - 36 + 5 = -15$
Шаг 4. Сравниваем: $\{3,\ 10,\ -22,\ -15\}$.
Ответ: $\max\limits_{[-2;4]} f = 10$ при $x = -1$; $\min\limits_{[-2;4]} f = -22$ при $x = 3$.
Заметь: правый конец $x=4$ дал $-15$, что хуже минимума, но лучше не бывает — конец отрезка вовсе не обязан быть рекордсменом. Он просто обязан быть в списке.
Пример 2 (средний): дробь с выколотой точкой
Найти наибольшее и наименьшее значения $f(x) = \dfrac{x^2 - 3x + 3}{x - 1}$ на отрезке $\left[\dfrac{3}{2};\,4\right]$.
Шаг 0 (обязательный для дробей). Область определения: $x \ne 1$. Точка разрыва $x=1$ лежит левее нашего отрезка, значит на $\left[\frac32;4\right]$ функция непрерывна и теорема Вейерштрасса работает. Если бы точка разрыва попала внутрь отрезка, весь алгоритм был бы неприменим.
Шаг 1. По правилу производной частного (урок 136):
$$f'(x) = \frac{(2x-3)(x-1) - (x^2-3x+3)\cdot 1}{(x-1)^2} = \frac{2x^2 - 5x + 3 - x^2 + 3x - 3}{(x-1)^2} = \frac{x^2 - 2x}{(x-1)^2} = \frac{x(x-2)}{(x-1)^2}.$$Шаг 2. $f'(x) = 0$ при $x = 0$ и $x = 2$. Точка $x=0$ вне отрезка — выбрасываем. Остаётся $x = 2$.
Шаг 3. Значения:
- $f\left(\frac32\right) = \dfrac{2{,}25 - 4{,}5 + 3}{0{,}5} = \dfrac{0{,}75}{0{,}5} = 1{,}5$
- $f(2) = \dfrac{4 - 6 + 3}{1} = 1$
- $f(4) = \dfrac{16 - 12 + 3}{3} = \dfrac{7}{3} \approx 2{,}33$
Ответ: $\max = \dfrac{7}{3}$ при $x = 4$; $\min = 1$ при $x = 2$.
Пример 3 (сложный): показательная функция
Найти наибольшее и наименьшее значения $f(x) = (x-2)e^{x}$ на $[0;\,3]$.
Шаг 1. Правило произведения плюс таблица производных (уроки 136 и 138):
$$f'(x) = 1\cdot e^x + (x-2)e^x = e^x\big(1 + x - 2\big) = e^x(x-1).$$Шаг 2. Множитель $e^x$ положителен всегда, поэтому $f'(x) = 0$ только при $x = 1$ — точка внутри отрезка.
Шаг 3. Значения:
- $f(0) = (0-2)\cdot e^0 = -2$
- $f(1) = (1-2)\cdot e = -e \approx -2{,}718$
- $f(3) = (3-2)\cdot e^3 = e^3 \approx 20{,}09$
Шаг 4. Наибольшее — $e^3$, наименьшее — $-e$.
Ответ: $\max = e^3$ при $x=3$; $\min = -e$ при $x=1$.
Полезная деталь: ответ оставляют в точном виде ($e^3$, а не $20{,}09$), а приближение пишут рядом для понимания масштаба. В задачах с $\ln$, $e$ и корнями точный ответ — это норма.
Почему это важно
Этот алгоритм — самый надёжный инструмент во всём разделе: он не требует ни рассуждений о характере точек, ни построения графика, ни оценки поведения на бесконечности. Пять строчек арифметики — и ответ гарантирован теоремой. Именно поэтому он лежит в основе почти всех прикладных задач: как только удаётся свести задачу к «функция на отрезке», дальше идёт чистая механика.
В вычислительной практике его прямой аналог — перебор по сетке: если нужно найти минимум функции, которую нельзя продифференцировать (например, качество модели как функция гиперпараметра), берут конечный список кандидатов и сравнивают значения. Идея та же самая, меняется только способ составления списка.
Промежуток не отрезок: когда гарантий нет
Интуиция: дорога без конца
Если множество — интервал $(a;b)$, луч $[a;+\infty)$ или вся прямая, теорема Вейерштрасса молчит. Наибольшее значение может существовать, а может и нет, и определить это можно только посмотрев, что происходит на краях — там, где сама точка в множество не входит.
Схема работы такая:
- Найти область определения и критические точки внутри промежутка.
- Вычислить $f$ в критических точках.
- Выяснить поведение $f$ на краях промежутка: пределы при $x\to a^{+}$, $x \to b^{-}$, $x \to \pm\infty$ — либо просто оценить, куда идут значения.
- Сравнить: если какой-то край «перебивает» все критические значения, то соответствующего экстремума нет.
Есть очень удобный практический признак, который закрывает большинство задач:
Признак единственной критической точки. Пусть $f$ непрерывна на промежутке $I$ и имеет внутри него ровно одну критическую точку $x_0$. Если $x_0$ — точка локального минимума, то $f(x_0)$ — наименьшее значение $f$ на всём $I$. Если $x_0$ — точка локального максимума, то $f(x_0)$ — наибольшее значение на всём $I$.
Почему так: критическая точка одна, значит на каждом из двух кусков промежутка — слева и справа от $x_0$ — производная знака не меняет. Значит, по теореме о монотонности (урок 140) слева функция монотонна и справа монотонна. Если $x_0$ — локальный минимум, то слева функция убывает, справа возрастает, то есть от $x_0$ она только растёт в обе стороны — и меньше $f(x_0)$ нигде не станет. Это рассуждение работает на любом промежутке: на отрезке, на интервале, на луче и на всей прямой.
Пример 1 (простой): $f(x) = x + \dfrac{1}{x}$ при $x > 0$
Шаг 1. $f'(x) = 1 - \dfrac{1}{x^2} = \dfrac{x^2-1}{x^2}$. На промежутке $x>0$ корень один: $x = 1$ (корень $x=-1$ в область не входит).
Шаг 2. Знак: при $0
Шаг 3. Края: при $x \to 0^{+}$ слагаемое $\frac1x \to +\infty$, при $x \to +\infty$ слагаемое $x \to +\infty$. Значит функция неограничена сверху.
Ответ: $\min\limits_{x>0} f = 2$ при $x=1$; наибольшего значения нет.
Кстати, это классическое неравенство $x + \frac1x \ge 2$ для положительных $x$, которое обычно доказывают через $(\sqrt{x}-\frac{1}{\sqrt x})^2 \ge 0$. Производная даёт его в три строчки и заодно показывает, что $2$ — не просто оценка, а именно достигаемое наименьшее значение.
Пример 2 (средний): $f(x) = x e^{-x}$ при $x \ge 0$
Шаг 1. $f'(x) = e^{-x} + x\cdot(-e^{-x}) = e^{-x}(1-x)$. Множитель $e^{-x}>0$, значит знак определяет $(1-x)$: при $x<1$ производная положительна, при $x>1$ отрицательна. Единственная критическая точка $x=1$ — локальный максимум.
Шаг 2. По признаку это глобальный максимум на луче: $f(1) = \dfrac{1}{e} \approx 0{,}368$.
Шаг 3. Наименьшее: на левом конце $f(0) = 0$, и этот конец входит в промежуток. При $x>0$ имеем $f(x)>0$, а при $x\to+\infty$ значения убывают к нулю сверху, не достигая его. Значит, наименьшее значение равно $0$ и достигается ровно в точке $x=0$.
Ответ: $\max\limits_{x\ge 0} f = \frac1e$ при $x=1$; $\min\limits_{x \ge 0} f = 0$ при $x=0$.
Эта функция — не абстракция: $xe^{-x}$ с точностью до масштаба описывает и распределение времени жизни, и типичную кривую «доход от рекламного канала при росте вложений», где после точки $x=1$ начинается насыщение.
Пример 3 (сложный): $f(x) = \dfrac{\ln x}{x}$ при $x>0$
Шаг 1. Область определения — $x>0$. Производная по правилу частного:
$$f'(x) = \frac{\frac1x \cdot x - \ln x \cdot 1}{x^2} = \frac{1 - \ln x}{x^2}.$$Шаг 2. $f'(x)=0$ при $\ln x = 1$, то есть $x = e$. Знак: при $x
Шаг 3. Края. При $x \to 0^{+}$: $\ln x \to -\infty$, а $\frac1x \to +\infty$, произведение уходит в $-\infty$. Значит функция неограничена снизу. При $x\to+\infty$ значения убывают и приближаются к нулю сверху.
Ответ: $\max\limits_{x>0} f = \frac1e$ при $x=e$; наименьшего значения нет, $\inf f = -\infty$.
Из этого примера, между прочим, следует красивый факт: неравенство $\frac{\ln x}{x} \le \frac1e$ равносильно $x^{e} \le e^{x}$ для всех $x>0$. Подставь $x = \pi$ — получишь, что $\pi^e < e^{\pi}$, без всякого калькулятора.
Почему это важно
Большинство реальных задач ставится именно на промежутке без правого конца: «сколько денег вложить» (от нуля и сколько угодно), «какую цену назначить» (любая положительная), «сколько слоёв в сети» (любое натуральное). Умение сказать «минимум существует и вот он» или «оптимума нет, чем больше — тем лучше» — это ровно то, что отличает осмысленный ответ от формального. Признак единственной критической точки — самый частый рабочий инструмент в таких задачах, и он же неявно используется в ML: если лосс имеет единственную стационарную точку (как у линейной регрессии), то найденная точка автоматически глобальный минимум, и никакие рестарты не нужны.
Прикладные задачи на оптимум: полная схема
Это главный практический блок урока. Прикладная задача отличается от учебной тем, что функции в условии нет — её надо построить самому. И именно на построении теряется больше всего решений: производную все считают правильно, а вот переменную вводят неудачно или забывают про область допустимых значений.
Схема решения задачи на оптимум:
- Ввести переменную. Обозначить буквой ту величину, которой ты реально управляешь, и явно записать, что она означает (со единицами измерения).
- Выразить целевую величину через эту переменную — получить функцию $f(x)$. Если в задаче появляются лишние неизвестные, их выражают через $x$ с помощью условий связи (периметр, объём, бюджет).
- Найти область допустимых значений — реальные ограничения: длина неотрицательна, количество не превышает запаса, цена не выше той, при которой спрос обнуляется.
- Продифференцировать и найти критические точки, отобрать попавшие в ОДЗ.
- Сравнить значения — по алгоритму для отрезка или по признаку единственной критической точки.
- Вернуться к вопросу задачи. Спрашивали цену — дай цену, спрашивали максимальную выручку — дай выручку. И проверь ответ на здравый смысл.
Задача 1 (геометрия): забор вдоль реки
Фермер огораживает прямоугольный участок, примыкающий к прямому берегу реки. Со стороны реки забор не нужен, а на остальные три стороны есть $120$ метров сетки. Какие размеры дают наибольшую площадь?
Переменная. Пусть $x$ — длина стороны, перпендикулярной реке (метры). Таких сторон две, значит на сторону вдоль реки остаётся $120 - 2x$ метров.
Целевая функция. $S(x) = x(120-2x) = 120x - 2x^2$.
ОДЗ. Обе стороны положительны: $x>0$ и $120-2x>0$, то есть $x \in (0;\,60)$. Формально можно замкнуть до $[0;60]$ — на концах площадь равна нулю, вырожденные прямоугольники не мешают.
Производная. $S'(x) = 120 - 4x = 0 \Rightarrow x = 30$. Единственная критическая точка; слева производная положительна, справа отрицательна — локальный, а значит и глобальный максимум.
Ответ. $x = 30$ м, сторона вдоль реки $120 - 60 = 60$ м, наибольшая площадь $S = 30\cdot 60 = 1800$ м².
Обрати внимание на красивую закономерность: на забор перпендикулярных сторон ушло $60$ м и на параллельную тоже $60$ м — ровно половина на половину. Это общее свойство таких задач, удобная проверка ответа.
Задача 2 (геометрия): коробка из листа картона
Из прямоугольного листа картона $30 \times 48$ см вырезают по углам четыре одинаковых квадрата со стороной $x$ и загибают борта, получая открытую коробку. При каком $x$ объём наибольший?
Переменная и функция. После вырезания дно имеет размеры $(30-2x)$ на $(48-2x)$, высота равна $x$:
$$V(x) = x(30-2x)(48-2x).$$ОДЗ. Обе стороны дна положительны: $x < 15$ и $x<24$; плюс $x>0$. Итого $x \in (0;\,15)$.
Раскрываем скобки, чтобы удобно дифференцировать:
$$(30-2x)(48-2x) = 1440 - 60x - 96x + 4x^2 = 4x^2 - 156x + 1440,$$$$V(x) = 4x^3 - 156x^2 + 1440x.$$
Производная. $V'(x) = 12x^2 - 312x + 1440 = 12(x^2 - 26x + 120) = 12(x-6)(x-20)$.
Критические точки. $x = 6$ и $x=20$. Вторая вне ОДЗ — выбрасываем. Остаётся $x=6$: слева от неё $(x-6)<0$ и $(x-20)<0$, произведение положительно (объём растёт), справа — отрицательно (убывает). Максимум.
Значение. $V(6) = 6 \cdot 18 \cdot 36 = 3888$ см³.
Ответ. Вырезать квадраты со стороной $6$ см, наибольший объём $3888$ см³ (коробка $18\times36\times6$).
Проверка здравым смыслом: при $x\to 0$ коробка плоская, объём стремится к нулю; при $x \to 15$ дно вырождается в полоску, объём тоже стремится к нулю. Максимум обязан быть где-то посередине — он и нашёлся.
Задача 3 (экономика): цена при линейном спросе
Магазин продаёт товар по $1000$ ₽ и берут $500$ штук в месяц. Наблюдение маркетологов: каждое повышение цены на $50$ ₽ уменьшает спрос на $20$ штук (и наоборот). Какую цену поставить, чтобы выручка была наибольшей?
Переменная. $p$ — цена в рублях.
Модель спроса. Отклонение цены от базовой равно $(p-1000)$; на каждые $50$ ₽ отклонения спрос меняется на $20$ штук:
$$q(p) = 500 - 20\cdot\frac{p-1000}{50} = 500 - 0{,}4(p - 1000) = 900 - 0{,}4p.$$Целевая функция — выручка:
$$R(p) = p\cdot q(p) = 900p - 0{,}4p^2.$$ОДЗ. Спрос неотрицателен: $900 - 0{,}4p \ge 0 \Rightarrow p \le 2250$. Цена неотрицательна: $p \ge 0$. Получили отрезок $[0;\,2250]$ — теорема Вейерштрасса гарантирует ответ.
Производная. $R'(p) = 900 - 0{,}8p = 0 \Rightarrow p = 1125$.
Сравнение. $R(0) = 0$, $R(2250) = 0$, $R(1125) = 1125\cdot(900-450) = 1125\cdot 450 = 506\,250$ ₽.
Ответ. Цена $1125$ ₽, спрос $450$ шт., наибольшая выручка $506\,250$ ₽ (против $500\,000$ ₽ при старой цене).
А теперь важное продолжение. Пусть себестоимость единицы товара равна $600$ ₽, и магазин хочет максимум прибыли, а не выручки:
$$P(p) = (p - 600)\cdot q(p) = (p-600)(900 - 0{,}4p) = -0{,}4p^2 + 1140p - 540\,000.$$$$P'(p) = -0{,}8p + 1140 = 0 \Rightarrow p = 1425.$$$q(1425) = 900 - 570 = 330$ шт., прибыль $= 825 \cdot 330 = 272\,250$ ₽.
Цена максимальной прибыли ($1425$ ₽) заметно выше цены максимальной выручки ($1125$ ₽) — и это не случайность, а правило: как только у товара появляется себестоимость, оптимальная цена сдвигается вверх, продавать много дёшево становится невыгодно. Отсюда практический вывод: всегда уточняй, что именно максимизируют. Ответ на «максимум выручки» и на «максимум прибыли» — разные числа.
Задача 4 (логистика): оптимальная скорость фуры
Фура едет $240$ км. Расход топлива зависит от скорости: при скорости $v$ км/ч она сжигает $\left(5 + \dfrac{v^2}{480}\right)$ литров в час. Солярка стоит $60$ ₽/л, работа водителя — $500$ ₽/ч. Разрешённый диапазон скорости — от $40$ до $90$ км/ч. При какой скорости рейс обойдётся дешевле всего?
Переменная. $v$ — скорость, км/ч, $v\in[40;\,90]$.
Целевая функция. Время рейса $t = \dfrac{240}{v}$ часов. Затраты за час: топливо $60\left(5+\frac{v^2}{480}\right) = 300 + \frac{v^2}{8}$ рублей плюс зарплата $500$ ₽. Итого
$$C(v) = \frac{240}{v}\left(800 + \frac{v^2}{8}\right) = \frac{192\,000}{v} + 30v.$$Производная. $C'(v) = -\dfrac{192\,000}{v^2} + 30 = 0 \Rightarrow v^2 = 6400 \Rightarrow v = 80$ км/ч (отрицательный корень отбрасываем).
Сравнение на отрезке $[40;90]$:
- $C(40) = 4800 + 1200 = 6000$ ₽
- $C(80) = 2400 + 2400 = 4800$ ₽
- $C(90) \approx 2133 + 2700 = 4833$ ₽
Ответ. Оптимальная скорость $80$ км/ч, минимальные затраты $4800$ ₽.
Обрати внимание на структуру ответа: в точке оптимума $\frac{192000}{v} = 30v$, то есть «повременная» часть затрат сравнялась с «скоростной». Это общее свойство функций вида $\frac{A}{v}+Bv$: минимум там, где слагаемые равны, и он равен $2\sqrt{AB}$. Проверим: $2\sqrt{192000\cdot 30} = 2\sqrt{5\,760\,000} = 2\cdot 2400 = 4800$ ✅.
Задача 5 (геометрия и данные): ближайшая точка кривой
Найти точку параболы $y = x^2$, ближайшую к точке $A(3;\,0)$, и это наименьшее расстояние.
Переменная. Любая точка параболы имеет вид $M(x;\,x^2)$, так что переменная — $x$, и она пробегает всю числовую прямую.
Целевая функция. Расстояние: $d(x) = \sqrt{(x-3)^2 + x^4}$. Дифференцировать корень неприятно, поэтому применим стандартный трюк: минимизируем квадрат расстояния. Функция $t \mapsto \sqrt{t}$ строго возрастает, значит минимум $d$ и минимум $d^2$ достигаются в одной и той же точке.
$$g(x) = d^2(x) = (x-3)^2 + x^4.$$Производная. $g'(x) = 2(x-3) + 4x^3 = 4x^3 + 2x - 6 = 2(2x^3 + x - 3)$.
Подбираем корень: $x=1$ даёт $2+1-3=0$ ✅. Делим: $2x^3+x-3 = (x-1)(2x^2+2x+3)$. У квадратного трёхчлена дискриминант $4 - 24 = -20 < 0$ — вещественных корней нет. Значит критическая точка ровно одна: $x=1$.
Характер точки. Множитель $(2x^2+2x+3)$ положителен всегда, значит знак $g'$ совпадает со знаком $(x-1)$: слева убывание, справа возрастание. Единственная критическая точка — минимум, а по признаку единственной критической точки — глобальный минимум на всей прямой. (Что минимум обязан существовать, видно и так: при $|x|\to\infty$ расстояние растёт неограниченно.)
Значение. $g(1) = (1-3)^2 + 1 = 4+1 = 5$, значит $d = \sqrt5 \approx 2{,}236$.
Ответ. Ближайшая точка — $M(1;\,1)$, расстояние $\sqrt5$.
Красивая проверка. В точке минимума отрезок $MA$ должен быть перпендикулярен касательной к параболе. Касательная в $x=1$ имеет угловой коэффициент $y'=2x=2$, направляющий вектор $(1;\,2)$. Вектор $\overrightarrow{MA} = (3-1;\,0-1) = (2;\,-1)$. Скалярное произведение: $1\cdot 2 + 2\cdot(-1) = 0$ ✅ — перпендикулярны, ответ верный.
Задача «ближайшая точка кривой» — это, между прочим, ровно то, что делает алгоритм проецирования данных: найти на многообразии (кривой, поверхности, линейном подпространстве) точку, ближайшую к наблюдению. Метод наименьших квадратов из следующего раздела — тот же самый вопрос, только кривая — прямая, а расстояний много.
Почему это важно
Прикладная задача на оптимум — это самая честная проверка того, понял ли ты тему. Здесь нельзя действовать по шаблону: сначала нужно превратить текст в функцию, а это уже моделирование. Ровно этим занимается data scientist, когда формулирует бизнес-задачу как задачу оптимизации: «максимизировать удержание» превращается в конкретный функционал от конкретных управляемых параметров, с явно выписанными ограничениями. Половина ошибок в реальных проектах — не в математике, а в неверно выбранной целевой функции или в забытом ограничении.
Обучение модели как задача минимизации
Лосс — это функция, а веса — её аргументы
Обучение любой модели машинного обучения формулируется одинаково: есть функция потерь $L(w)$, которая по набору параметров $w$ выдаёт число «насколько модель ошибается на обучающих данных», и нужно найти $w$, при котором это число наименьшее.
$$w^{*} = \arg\min\limits_{w} L(w).$$Запись $\arg\min$ означает «тот аргумент, при котором достигается минимум» — то есть точка минимума, а не само значение. Разница ровно та же, что между «точкой максимума» и «наибольшим значением» из начала урока, и в ML её различают педантично: $\min L$ — это величина ошибки, $\arg\min L$ — это обученная модель.
Почему $\nabla L = 0$ почти никогда не решают
В одномерном случае необходимое условие минимума — $L'(w)=0$. В многомерном оно превращается в систему: градиент $\nabla L(w)$ — вектор из частных производных по каждому параметру — должен быть нулевым.
Казалось бы, вот и решение: составь систему $\nabla L(w) = 0$ и реши её. На практике так почти никогда не делают, и причин ровно четыре:
- Уравнения нелинейные и не решаются в формулах. Как только в модели появляется $\sigma(\cdot)$, ReLU или softmax, система $\nabla L = 0$ становится трансцендентной. Аналитического решения у неё нет — не потому что его не нашли, а потому что его не существует в элементарных функциях.
- Размерность. У современной модели $10^9$ и больше параметров, то есть система из миллиарда уравнений с миллиардом неизвестных. Даже если бы она была линейной, точное решение потребовало бы порядка $10^{27}$ операций.
- Стационарных точек слишком много. Уравнение $\nabla L = 0$ выполняется в минимумах, максимумах, сёдлах и на плато. В многомерном пространстве сёдел на порядки больше, чем минимумов, так что найти корень системы — ещё не значит найти минимум.
- Сама $L$ известна только по данным. Она задана суммой по миллионам объектов и меняется при каждом изменении выборки; «решить уравнение» для такого объекта — сомнительная идея, а посчитать градиент на случайном мини-батче — дёшево.
Поэтому реальный алгоритм — итеративный: градиентный спуск $w \leftarrow w - \eta\nabla L(w)$, тот самый метод Коши 1847 года. Он не решает уравнение, а спускается по склону маленькими шагами, ровно как ты спускался бы с горы в тумане, ощупывая наклон под ногами.
Единственное исключение: линейная регрессия с MSE
Есть один классический случай, где уравнение $\nabla L = 0$ решается точно и красиво — линейная регрессия с квадратичной ошибкой. Там получается нормальное уравнение
$$w = (X^{T}X)^{-1}X^{T}y,$$и это не магия, а буквально «приравняли производную к нулю». Разберём одномерный случай честно, руками.
Пусть модель $\hat y = wx$ (одна фича, без свободного члена), данные — пары $(x_i, y_i)$, $i=1,\dots,n$, а ошибка — сумма квадратов отклонений:
$$L(w) = \sum_{i=1}^{n}(w x_i - y_i)^2.$$Раскроем скобки и соберём по степеням $w$:
$$L(w) = \sum_i \big(w^2x_i^2 - 2wx_iy_i + y_i^2\big) = w^2\underbrace{\sum_i x_i^2}_{A} - 2w\underbrace{\sum_i x_iy_i}_{B} + \underbrace{\sum_i y_i^2}_{C}.$$Это обычная квадратичная функция от $w$: парабола с коэффициентом $A = \sum x_i^2 > 0$ (если хоть один $x_i \ne 0$), то есть ветви вверх. У такой параболы ровно один минимум, и он глобальный — школьный факт, никаких дополнительных инструментов не требуется.
Дифференцируем по $w$:
$$L'(w) = 2Aw - 2B = 0 \quad\Longrightarrow\quad w = \frac{B}{A} = \frac{\sum_i x_iy_i}{\sum_i x_i^2}.$$Вот это и есть одномерное нормальное уравнение. В многомерном виде $A$ превращается в матрицу $X^{T}X$, $B$ — в вектор $X^{T}y$, а деление — в умножение на обратную матрицу: $w = (X^TX)^{-1}X^Ty$. Структура формулы буквально та же.
Численный разбор. Возьмём четыре точки: $x = (1,\,2,\,3,\,4)$, $y = (3,\,5,\,5,\,8)$.
$$A = \sum x_i^2 = 1+4+9+16 = 30,\qquad B = \sum x_iy_i = 3 + 10 + 15 + 32 = 60.$$Значит $w = \frac{60}{30} = 2$. Функция потерь: $L(w) = 30w^2 - 120w + 123$ (здесь $C = 9+25+25+64=123$), и $L(2) = 120 - 240 + 123 = 3$.
Проверим, что это действительно минимум, подставив соседние значения: $L(1{,}9) = 30\cdot 3{,}61 - 228 + 123 = 3{,}3$, $L(2{,}1) = 30\cdot 4{,}41 - 252 + 123 = 3{,}3$. Оба больше $3$ ✅.
Есть и элегантная проверка через остатки $r_i = wx_i - y_i$: при $w=2$ получаем $r = (-1,\,-1,\,+1,\,0)$, и условие $L'(w)=0$ означает в точности $\sum_i x_i r_i = 0$. Считаем: $1\cdot(-1) + 2\cdot(-1) + 3\cdot 1 + 4\cdot 0 = 0$ ✅. Геометрически это и есть та самая перпендикулярность из задачи о ближайшей точке: вектор остатков ортогонален вектору признака. Метод наименьших квадратов — это проекция.
Подбор гиперпараметра — одномерная оптимизация без формул
Learning rate, коэффициент регуляризации $\lambda$, глубина дерева, размер батча — это не параметры, которые учит модель, а гиперпараметры, которые выбирает человек. Для каждого значения гиперпараметра модель обучают заново и измеряют качество на валидации. Получается функция «гиперпараметр → качество», у которой нет ни формулы, ни производной: каждое её значение стоит одного полного обучения.
Что делают в этой ситуации? Ровно то же, что в алгоритме для отрезка: составляют конечный список кандидатов и сравнивают числа. Обычно кандидатов берут по логарифмической сетке ($10^{-4}, 10^{-3}, 10^{-2}, \dots$), потому что важен порядок величины, а не десятые доли. Отличие только в том, что список составляется не по критическим точкам, а по здравому смыслу, а сравнение — по зашумлённым измерениям.
Ранняя остановка — поиск минимума валидационной кривой
Во время обучения ошибка на обучающей выборке обычно падает монотонно, а ошибка на валидации сначала падает, потом достигает минимума и начинает расти — модель переходит к запоминанию обучающих данных. Это и есть переобучение.
Ранняя остановка (early stopping) — это буквально поиск минимума функции «номер эпохи → валидационный лосс». Аргумент дискретный (эпохи $1, 2, 3, \dots$), поэтому производных нет — есть конечный список значений, из которого выбирают наименьшее. На практике добавляют терпение (patience): останавливаются не сразу, а после $k$ эпох без улучшения, потому что кривая шумная и один плохой замер ещё не значит, что минимум пройден. Это ровно защита от той ошибки, о которой говорит весь урок: локальное ухудшение — не доказательство, что глобальный минимум найден.
Bias-variance: компромисс с минимумом внутри
Ошибку модели на новых данных раскладывают на три части:
$$\text{Ошибка} = \text{смещение}^2 + \text{разброс} + \text{шум}.$$Смещение (bias) — систематическая ошибка от того, что модель слишком проста, чтобы уловить зависимость. Разброс (variance) — нестабильность: слишком гибкая модель подстраивается под конкретную выборку и на другой выборке даёт другой ответ. С ростом сложности модели смещение падает, разброс растёт. Сумма двух функций — одна убывающая, другая возрастающая — имеет минимум внутри, и «оптимальная сложность» находится в этой точке.
Игрушечная модель: пусть суммарная ошибка при сложности $k>0$ равна
$$E(k) = \frac{16}{k} + k$$(первое слагаемое — смещение, падающее с ростом сложности, второе — разброс). Тогда $E'(k) = -\frac{16}{k^2} + 1 = 0$ при $k = 4$, и это единственная критическая точка на луче $k>0$: слева производная отрицательна, справа положительна. По признаку единственной критической точки $E(4) = 4 + 4 = 8$ — глобальный минимум. Обрати внимание на ту же структуру $\frac{A}{k} + Bk$, что и в задаче про скорость фуры: минимум там, где слагаемые сравнялись.
Ровно поэтому «взять модель побольше» — не универсальный рецепт: кривая ошибки имеет внутренний минимум, а не убывает вечно.
Почему это важно
Весь ML — это прикладная задача на оптимум, только переменных миллиард, а целевая функция задана данными. Но словарь и логика те же самые: целевая функция, область допустимых значений, стационарные точки, локальный минимум против глобального, существование минимума. Человек, который уверенно решает задачу про коробку из картона, понимает, что происходит внутри model.fit(), — а человек, который знает только заклинание model.fit(), не понимает даже, почему у него не сходится обучение.
Практика: 30 заданий
Базовые (задания 1-10)
Задание 1: Найди наибольшее и наименьшее значения функции $f(x)=x^2-6x+5$ на отрезке $[0;\,5]$.
Задание 2: Найди наибольшее и наименьшее значения функции $f(x) = -x^2+4x+1$ на отрезке $[0;\,3]$.
Задание 3: Найди наибольшее и наименьшее значения функции $f(x)=x^3-3x$ на отрезке $[-2;\,2]$.
Задание 4: Найди наибольшее и наименьшее значения функции $f(x)=x^3-6x^2+9x$ на отрезке $[0;\,5]$.
Задание 5: Найди наибольшее и наименьшее значения функции $f(x)=x^4-2x^2+3$ на отрезке $[-2;\,2]$.
Задание 6: Найди наибольшее и наименьшее значения функции $f(x)=2x^3-3x^2-12x+1$ на отрезке $[-2;\,3]$.
Задание 7: Найди наибольшее и наименьшее значения функции $f(x)=\sqrt{x}-x$ на отрезке $[0;\,4]$.
Задание 8: Найди наибольшее и наименьшее значения функции $f(x)=x+\dfrac4x$ на отрезке $[1;\,4]$.
Задание 9: Найди наибольшее и наименьшее значения функции $f(x)=e^{x}-x$ на отрезке $[-1;\,1]$.
Задание 10: Найди наибольшее и наименьшее значения функции $f(x)=x^3+3x+2$ на отрезке $[-1;\,2]$.
Средние (задания 11-20)
Задание 11: Найди наибольшее и наименьшее значения функции $f(x)=x+\dfrac9x$ на промежутке $x>0$.
Задание 12: Найди наибольшее и наименьшее значения функции потерь $L(w)=w^4-8w^2+3$ на всей числовой прямой.
Задание 13: Найди наибольшее и наименьшее значения функции $f(x)=xe^{-2x}$ на луче $[0;+\infty)$.
Задание 14: Найди наибольшее и наименьшее значения функции $f(x)=\ln x - x$ на её области определения.
Задание 15: Найди наибольшее и наименьшее значения функции $f(x)=x^2\ln x$ на её области определения.
Задание 16: Найди наибольшее и наименьшее значения функции $f(x)=\dfrac{\ln x}{x}$ на отрезке $[1;\,e^2]$.
Задание 17: Найди наибольшее и наименьшее значения функции $f(x)=x\sqrt{4-x^2}$.
Задание 18: Найди наибольшее и наименьшее значения функции $f(x)=\dfrac{e^{x}}{x}$ при $x>0$.
Задание 19: Найди наибольшее и наименьшее значения функции $f(x)=x-2\sqrt{x}$ на отрезке $[0;\,9]$.
Задание 20: Найди наибольшее и наименьшее значения функции $f(x)=\dfrac{x^2-2x+2}{x-1}$ на промежутке $x>1$.
Продвинутые (задания 21-30)
Задание 21: Открытая сверху коробка с квадратным дном должна иметь объём $32$ дм³. При каких размерах на неё уйдёт наименьшее количество материала?
Задание 22: Окно имеет форму прямоугольника, увенчанного полукругом (диаметр полукруга равен ширине прямоугольника). Периметр окна равен $6$ м. При каком радиусе полукруга площадь окна наибольшая, и чему она равна?
Задание 23: Магазин продаёт товар по цене $800$ ₽ и продаёт $300$ штук в месяц. Каждое снижение цены на $20$ ₽ увеличивает продажи на $15$ штук. Какую цену назначить для наибольшей выручки?
Задание 24: Тот же магазин, та же зависимость спроса $q(p)=900-0{,}75p$, но себестоимость единицы товара равна $400$ ₽. Какая цена даёт наибольшую прибыль и чему она равна?
Задание 25: Остров находится в $3$ км от прямого берега. На берегу в $8$ км от ближайшей к острову точки $P$ стоит электростанция $A$. Кабель по суше стоит $3$ млн ₽/км, по дну — $5$ млн ₽/км. В какой точке берега свернуть в воду, чтобы соединить $A$ с островом дешевле всего?
Задание 26: Судно проходит рейс длиной $600$ км. Расход топлива в час равен $\left(2 + \dfrac{v^3}{1000}\right)$ тонн при скорости $v$ км/ч, топливо стоит $40\,000$ ₽ за тонну. При какой скорости стоимость рейса минимальна?
Задание 27: Найди точку графика $y=\sqrt{x}$, ближайшую к точке $A\left(\dfrac32;\,0\right)$, и это наименьшее расстояние.
Задание 28: Для функции $f(x)=x^2-2ax+3$ найди наименьшее значение $m(a)$ на отрезке $[0;\,2]$ как функцию параметра $a$. При каком $a$ выполняется $m(a)=2$?
Задание 29: Дана выборка: $x = (2,\,4,\,6)$, $y = (4,\,7,\,8)$. Найди значение $w$, минимизирующее ошибку $L(w)=\sum\limits_{i}(wx_i-y_i)^2$, и само минимальное значение ошибки. Проверь ответ.
Задание 30: Классификатор проверили на выборке из $100$ объектов, среди которых $20$ положительных. Для пяти порогов получены такие результаты (TP — верно найденные положительные, FP — ложные срабатывания, FN — пропущенные положительные):
| Порог | TP | FP | FN |
|---|---|---|---|
| $0{,}3$ | 19 | 31 | 1 |
| $0{,}4$ | 18 | 18 | 2 |
| $0{,}5$ | 16 | 8 | 4 |
| $0{,}6$ | 13 | 4 | 7 |
| $0{,}7$ | 9 | 1 | 11 |
Какой порог даёт наибольшее значение $F_1$-меры?
Частые ошибки
❌ Ошибка 1: забыли посчитать значения на концах отрезка
Неправильно: для $f(x)=x^3-3x$ на $[-2;3]$ найти критические точки $x=\pm1$, получить $f(-1)=2$, $f(1)=-2$ и написать «$\max=2$, $\min=-2$».
Правильно: добавить концы: $f(-2)=-2$, $f(3)=18$. Тогда $\max = 18$ при $x=3$, $\min = -2$ (при $x=-2$ и $x=1$).
💡 Почему важно: это ошибка номер один во всей теме. Наибольшее значение достигается либо в критической точке, либо на конце — и второй вариант встречается ничуть не реже первого. В прикладных задачах он вообще типичен: «максимальная прибыль при максимально допустимой цене» означает ровно упор в границу. Механическая привычка: сначала выписать концы отрезка в список кандидатов, только потом искать критические точки.
❌ Ошибка 2: взяли критическую точку, лежащую вне отрезка
Неправильно: для $f(x)=x+\frac4x$ на $[1;4]$ решить $f'(x)=0$, получить $x=\pm2$ и посчитать в том числе $f(-2)=-4$, объявив это наименьшим значением.
Правильно: точка $x=-2$ не принадлежит отрезку $[1;4]$ и не рассматривается вообще. Кандидаты: $x=1$, $x=2$, $x=4$; ответ $\min = 4$, $\max = 5$.
💡 Почему важно: функция вне отрезка нас не касается — там она может принимать какие угодно значения, включая более выгодные. Отбор корней по принадлежности промежутку — обязательный шаг алгоритма, а не формальность. В прикладной задаче та же ошибка выглядит как «оптимальная цена $-500$ ₽» или «вырезать квадрат со стороной $20$ см из листа шириной $30$ см».
❌ Ошибка 3: строят таблицу знаков там, где она не нужна
Неправильно: для поиска наибольшего значения на отрезке расписывать знаки производной на всех промежутках, определять характер каждой критической точки и только потом считать значения.
Правильно: просто вычислить $f$ в критических точках и на концах и сравнить числа. Характер точек значения не имеет.
💡 Почему важно: это не ошибка в ответе, а потеря времени и лишний источник описок. Таблица знаков — инструмент уроков 140 и 141 (монотонность и экстремумы). Для наибольшего значения на отрезке достаточно арифметики. Обратное тоже верно: если спрашивают именно точки экстремума, одним сравнением значений не отделаешься.
❌ Ошибка 4: применили алгоритм отрезка к промежутку без концов
Неправильно: для $f(x)=\frac{\ln x}{x}$ на $(0;+\infty)$ найти критическую точку $x=e$ и написать «$\max = \frac1e$, $\min = f(0) = $ ...» — подставляя ноль, который в область определения не входит.
Правильно: на промежутке без концов подставлять нечего, нужно исследовать поведение: при $x\to0^{+}$ значения уходят в $-\infty$, значит наименьшего значения нет. Ответ: $\max = \frac1e$ при $x=e$, наименьшего значения не существует.
💡 Почему важно: теорема Вейерштрасса требует именно отрезка. На интервале или луче гарантий нет, и корректный ответ иногда звучит как «экстремума не существует». Формулировка «минимум равен $-\infty$» неверна: $-\infty$ — не число и не значение функции.
❌ Ошибка 5: путают наибольшее значение и точку, где оно достигается
Неправильно: «наибольшее значение функции $f(x)=x^2-6x+5$ на $[0;5]$ равно $0$, потому что максимум в точке $x=0$».
Правильно: точка $x=0$, наибольшее значение $f(0)=5$.
💡 Почему важно: это разные объекты: точка — аргумент, значение — результат. В задачах ЕГЭ формулировка «найдите наибольшее значение» требует именно $f(x_0)$, и ответ «$x_0$» засчитан не будет. В ML эту же пару различают явно: $\min L$ — величина ошибки, $\arg\min L$ — набор весов обученной модели.
❌ Ошибка 6: проигнорировали область определения
Неправильно: искать наибольшее значение $f(x)=x\sqrt{4-x^2}$, решая $f'(x)=0$ и подставляя корень $x=3$ из какого-нибудь промежуточного уравнения.
Правильно: сначала область определения: $4-x^2\ge0 \Rightarrow x\in[-2;2]$. Значения вне этого отрезка функция не принимает вовсе.
💡 Почему важно: производная считается формально и часто «не знает» об ограничениях: выражение $\frac{4-2x^2}{\sqrt{4-x^2}}$ можно приравнять к нулю и не заметить, что за пределами $[-2;2]$ функции просто нет. Область определения ищется до дифференцирования, всегда. Отдельно проверь точки разрыва: если точка разрыва попала внутрь отрезка, теорема Вейерштрасса неприменима и задачу надо разбивать на части.
❌ Ошибка 7: считают наибольшее значение существующим просто потому, что функция ограничена
Неправильно: «$\operatorname{arctg} x < \frac\pi2$ при всех $x$, значит наибольшее значение равно $\frac\pi2$».
Правильно: $\frac\pi2$ — это супремум, точная верхняя граница, но ни при каком $x$ значение $\frac\pi2$ не достигается. Наибольшего значения нет.
💡 Почему важно: ограниченность и достижимость — разные свойства. Разница выглядит педантичной, но именно она стоит за фразой «оптимум не достигается, решение уходит на границу области» в задачах оптимизации: алгоритм будет вечно улучшать ответ на десятые доли процента и никогда не остановится. Лечится это добавлением ограничений или регуляризации — то есть возвращением задачи в компакт.
❌ Ошибка 8: в прикладной задаче забыли ограничения или ответили не на тот вопрос
Неправильно: в задаче про коробку из листа $30\times48$ найти корни $x=6$ и $x=20$, взять $x=20$ (объём «больше по формуле») и получить отрицательные размеры дна.
Правильно: ОДЗ $x\in(0;15)$ — корень $x=20$ отбрасывается; ответ $x=6$, $V=3888$ см³.
💡 Почему важно: формула, полученная из условия, работает только внутри реальных ограничений; за их пределами она описывает несуществующую геометрию. И второй слой той же ошибки — ответить не на заданный вопрос: спросили «при каком $x$» — дай $x$, спросили «чему равен наибольший объём» — дай объём. Полезная привычка: закончив вычисления, перечитать последнюю фразу условия.
Главное запомнить
📝 Ключевые понятия
✅ Наибольшее значение: число $M=f(x_0)$, для которого $f(x)\le M$ на всём множестве, причём значение $M$ реально достигается. Синоним — глобальный максимум. Различай: точка максимума — это $x_0$, наибольшее значение — это $f(x_0)$.
✅ Локальное ≠ глобальное: локальный максимум может быть меньше значения на конце отрезка, а глобальный максимум может достигаться в некритической точке (на границе). Из «лучше соседей» не следует «лучше всех».
✅ Теорема Вейерштрасса: непрерывная на отрезке функция обязательно достигает наибольшего и наименьшего значений. Все три слова обязательны: разрыв, открытый конец или бесконечный промежуток — и гарантии нет.
✅ Супремум против максимума: супремум — наименьшая верхняя граница («планка, к которой подбираются»), максимум — достигаемое значение («планка, которой касаются»). У $\operatorname{arctg} x$ на $[0;+\infty)$ супремум $\frac\pi2$ есть, максимума нет.
✅ Алгоритм для отрезка: критические точки внутри $(a;b)$ → вычислить $f$ в них и в обоих концах $a$, $b$ → выбрать наибольшее и наименьшее из конечного списка чисел.
✅ Таблица знаков не нужна. В задаче на наибольшее значение характер критических точек не исследуется — только сравниваются числа. Это главное отличие от урока 141.
✅ Критические точки вне отрезка выбрасываются сразу, без вычисления значений.
✅ Признак единственной критической точки: если на промежутке ровно одна критическая точка и она локальный минимум, то это глобальный минимум на всём промежутке (аналогично для максимума). Работает на интервале, луче и всей прямой.
✅ На промежутке без концов обязателен анализ поведения на краях: пределы при $x\to a^{+}$, $x\to b^{-}$ или $x\to\pm\infty$. Корректный ответ может звучать как «наибольшего значения не существует».
✅ Схема прикладной задачи: ввести переменную → выразить целевую величину → выписать ОДЗ → продифференцировать → сравнить значения → вернуться к вопросу задачи и проверить смысл ответа.
✅ Полезный шаблон: функция вида $\frac{A}{x}+Bx$ при $x>0$ имеет минимум $2\sqrt{AB}$ в точке $x=\sqrt{A/B}$, то есть там, где слагаемые сравнялись. Он всплывает в задачах про скорость, запасы, размеры коробки и в bias-variance.
✅ Расстояние удобнее минимизировать в квадрате: точка минимума у $d$ и $d^2$ одна и та же, а производная считается втрое проще.
✅ ML-словарь: $\arg\min L$ — обученная модель, $\min L$ — величина ошибки; уравнение $\nabla L=0$ решается аналитически практически только для линейной регрессии с MSE, где $w=(X^TX)^{-1}X^Ty$, а в одномерном случае $w=\frac{\sum x_iy_i}{\sum x_i^2}$.
Связь с другими темами курса
Что нужно было знать до этого урока:
- Урок 132, непрерывность функции — прямой фундамент: теорема Вейерштрасса формулируется именно для непрерывных функций, а все три контрпримера построены на нарушении непрерывности или замкнутости.
- Урок 136-138, правила дифференцирования и таблица производных — без них не посчитать $f'$ ни для дроби, ни для $e^x$, ни для $\ln x$, ни для корня.
- Урок 139, применение производной к исследованию функций — оттуда взяты понятие критической точки и связка «знак $f'$ ↔ поведение функции».
- Урок 140, возрастание и убывание — теорема о монотонности используется в обосновании признака единственной критической точки.
- Урок 141, точки экстремума — теорема Ферма (в точке внутреннего экстремума производная равна нулю или не существует) — это ровно то, что превращает бесконечный поиск в конечный список кандидатов.
Что изучить дальше:
- Урок 143, выпуклость и точки перегиба — вторая производная даст ещё один способ отличать минимум от максимума и объяснит, почему у выпуклой функции локальный минимум автоматически глобальный (то самое свойство, ради которого в ML любят выпуклые лоссы).
- Урок 144, построение графиков — там все инструменты блока соберутся в одну схему, и наибольшее значение станет одной из строк «анкеты функции».
- Уроки 145-150, первообразная и интеграл — обратная операция к дифференцированию; появятся задачи, где оптимизируют не число, а целую функцию.
- Университетский блок — частные производные и градиент (210-212), условный экстремум и метод множителей Лагранжа (214), выпуклая оптимизация и численные методы поиска минимума.
- ML-блок — градиентный спуск и его модификации, регуляризация, подбор гиперпараметров, ранняя остановка: всё это прикладные версии того, что ты сейчас разобрал на одномерных функциях.
Где это нужно в жизни:
💻 В программировании: подбор размера буфера или кэша (слишком мал — много промахов, слишком велик — расход памяти), выбор степени параллелизма, оптимизация числа шардов, задача «сколько ретраев делать».
🤖 В ML/AI: обучение модели как минимизация лосса, подбор learning rate и коэффициента регуляризации, ранняя остановка по валидационной кривой, выбор порога классификации по максимуму $F_1$, компромисс bias-variance, поиск ближайшей точки при проецировании данных.
📊 В Data Science и бизнесе: оптимальная цена (максимум выручки и максимум прибыли — разные точки!), размер партии заказа, точка окупаемости, распределение рекламного бюджета между каналами с насыщением.
🔬 В науке и инженерии: минимум энергии как принцип, определяющий форму мыльной плёнки и траекторию света (закон Снеллиуса — задача 25 этого урока), оптимальные пропорции конструкций, минимум сопротивления, режим наименьшего расхода топлива.
💰 В финансах и логистике: оптимальная скорость судна и грузовика, размер партии при закупке (модель Уилсона — та же функция $\frac{A}{x}+Bx$), выбор момента продажи, соотношение риска и доходности в портфеле.
Интересные факты
💡 Бочки Кеплера и «плоскость» вблизи максимума. Разбираясь с обмером винных бочек в 1615 году, Кеплер заметил: у бочки оптимальной формы объём почти не меняется при небольшом изменении размеров. Это интуитивное открытие того, что производная в точке максимума равна нулю, — и очень практичное наблюдение: рядом с оптимумом можно ошибиться в параметре на несколько процентов и почти ничего не потерять в результате. В ML это называется «плоским минимумом» и считается признаком модели, которая хорошо обобщается.
💡 Свет решает задачу на минимум. Закон преломления Снеллиуса ($\frac{\sin\alpha_1}{\sin\alpha_2}$ = отношение скоростей) выводится ровно как задача 25 этого урока про кабель: свет выбирает путь наименьшего времени. Ферма сформулировал этот принцип в 1662 году, применив свой же метод максимумов и минимумов, — и получил закон, который до того знали только эмпирически.
💡 Теорема, которая пролежала в столе сто лет. Больцано доказал теорему о достижении наибольшего значения примерно в 1830 году, но его «Учение о функциях» опубликовали лишь в 1930-м. Всё это время теорема носила и носит имя Вейерштрасса, который получил её независимо тридцатью годами позже. Похожая история с теоремой о промежуточном значении: Больцано доказал её в 1817-м, и там его приоритет всё-таки признали.
💡 Метод градиентного спуска старше компьютеров на сто лет. Коши предложил его в 1847 году в короткой заметке для Академии наук, решая задачу об орбитах небесных тел. Он рассуждал в точности как современный ML-инженер: систему уравнений $\nabla f = 0$ решить нельзя, значит будем спускаться шагами против направления роста. Ни компьютеров, ни нейросетей тогда не было — была та же самая математическая нужда.
Лайфхаки и полезные трюки
🔧 Приём 1: сначала выпиши концы, потом ищи критические точки. Механическая привычка, которая закрывает самую частую ошибку темы. Заведи лист кандидатов и первым делом впиши туда $a$ и $b$, а уже потом добавляй корни $f'(x)=0$.
Пример: для $f(x)=x^3-3x^2-9x+5$ на $[-2;4]$ список начинается как $\{-2;\ 4\}$ и дополняется до $\{-2;\ -1;\ 3;\ 4\}$. Забыть конец физически труднее.
🔧 Приём 2: минимизируй квадрат расстояния, а не расстояние. Функция $t\mapsto\sqrt t$ строго возрастает, поэтому точка минимума у $d(x)$ и $d^2(x)$ одна и та же, а дифференцировать многочлен вместо корня в разы приятнее.
Пример: вместо $d=\sqrt{(x-3)^2+x^4}$ работаем с $g=(x-3)^2+x^4$, получаем $g'=4x^3+2x-6$ и корень $x=1$ без единого корня в выкладках. Тот же приём работает для любой строго возрастающей обёртки: логарифм в правдоподобии максимизируют по этой же причине.
🔧 Приём 3: шаблон $\dfrac{A}{x}+Bx$. Если целевая функция свелась к такому виду при $x>0$, ответ известен заранее: минимум равен $2\sqrt{AB}$ и достигается при $x=\sqrt{A/B}$ — там, где слагаемые равны.
Пример: $C(v)=\frac{192000}{v}+30v$ даёт $v=\sqrt{6400}=80$ и $C=2\sqrt{192000\cdot30}=4800$ — ответ за десять секунд, а производная нужна только для оформления. Этот же шаблон — модель оптимального размера заказа и грубая модель bias-variance.
🔧 Приём 4: проверяй ответ поведением на краях. Если по смыслу задачи целевая величина стремится к нулю (или к бесконечности) на обоих концах ОДЗ, максимум (минимум) обязан быть внутри — и найденная критическая точка почти наверняка та самая.
Пример: в задаче про коробку $V\to0$ и при $x\to0$, и при $x\to15$. Значит корень $x=6$ внутри интервала — искомый максимум, а второй корень $x=20$ можно отбрасывать не задумываясь.
🔧 Приём 5: в геометрической задаче проверяй ответ пропорцией. У оптимальных конструкций почти всегда получается красивое соотношение размеров — это отличный индикатор, что решение верное.
Примеры: прямоугольник наибольшей площади при заданном периметре — квадрат; загон у реки — половина сетки на сторону вдоль воды; открытая коробка минимальной площади — высота вдвое меньше стороны дна; окно с полукругом — высота прямоугольника равна радиусу. Получилось некрасивое соотношение — перепроверь выкладки.
🔧 Приём 6: для параболы можно вообще без производной. У $f(x)=ax^2+bx+c$ вершина в $x_0=-\frac{b}{2a}$. Если $x_0$ попала в отрезок — считаешь три значения, если нет — только два конца, и знак $a$ подсказывает, какой из них больше.
Пример: $R(p)=900p-0{,}75p^2$ — вершина при $p=\frac{900}{1{,}5}=600$, ответ получен мгновенно. В задачах на выручку и прибыль с линейным спросом целевая функция всегда квадратичная, так что приём работает почти всегда.
🔧 Приём 7: прикидка численной проверкой. Нашёл критическую точку — подставь два соседних значения, отступив на $0{,}1$ в обе стороны. Если оба значения хуже найденного, ответ почти наверняка верен; если одно лучше — где-то арифметическая ошибка.
Пример: для $L(w)=56w^2-168w+129$ и $w=1{,}5$ считаем $L(1{,}4)=3{,}56$ и $L(1{,}6)=3{,}56$ против $L(1{,}5)=3$ — сходится ✅. Тридцать секунд арифметики экономят полчаса поиска ошибки.
Всё, что ты сегодня разобрал, держится на одной простой мысли: бесконечный вопрос «какое значение лучшее среди всех» сводится к конечному списку кандидатов. Критические точки плюс концы — и дальше обычное сравнение чисел. Красота этой идеи в том, что она масштабируется: ровно так же перебирают пороги классификации, гиперпараметры и эпохи обучения, просто список составляют не производной, а экспериментом.
И ещё одно. Прикладные задачи на оптимум — это первое место в школьном курсе, где математика перестаёт быть упражнением и начинает отвечать на вопросы, которые люди реально задают: какую цену поставить, с какой скоростью ехать, где свернуть в воду. Если ты уверенно превращаешь такой текст в функцию с областью определения — ты уже умеешь главное, что делает аналитик. Дальше меняется только количество переменных.
В следующем уроке добавим второй этаж: производную от производной. Она расскажет, куда изогнут график, даст ещё один способ отличить минимум от максимума и объяснит, почему выпуклые задачи в оптимизации считаются «решёнными», а невыпуклые — нет. А потом соберём всё в одну схему и научимся строить графики целиком. Погнали 🚀
Понял тему? Закрепи в боте! 🚀
Попрактикуйся на задачах и получи персональные рекомендации от AI
💪 Начать тренировку