Дихотомия
Дихотоми́я последовательное деление на две части, более связанные внутри, чем между собой. Способ логического деления класса на подклассы, который состоит в том, что делимое понятие полностью делится на два взаимоисключающих понятия. Дихотомическое деление в математике, философии, логике и лингвистике является способом образования подразделов одного понятия или термина и служит для образования классификации элементов.
Преимущества и недостатки
Дихотомическое деление привлекательно своей простотой. Действительно, при дихотомии мы всегда имеем дело лишь с двумя классами, которые исчерпывают объём делимого понятия. Таким образом, дихотомическое деление всегда соразмерно; члены деления дополняют друг друга, так как каждый объект делимого множества попадает только в один из классов а или не а; деление проводится по одному основанию — наличие или отсутствие некоторого признака. Обозначив делимое понятие буквой а и выделив в его объёме некоторый вид, скажем, b, можно разделить объём а на две части — b и не b.
Дихотомическое деление имеет недостаток: при делении объёма понятия на два понятия каждый раз остаётся крайне неопределённой та его часть, к которой относится частица «не». Если разделить учёных на историков и не историков, то вторая группа оказывается весьма неясной. Кроме того, если в начале дихотомического деления обычно довольно легко установить наличие противоречащего понятия, то по мере удаления от первой пары понятий найти его становится всё труднее.
Применение
Дихотомия обычно используется как вспомогательный приём при установлении классификации.
Она известна также благодаря достаточно широко используемому методу поиска, так называемому методу дихотомии. Он применяется для нахождения значений действительно-значной функции, определяемых по какому-либо критерию (это может быть сравнение на минимум, максимум или конкретное число). Рассмотрим метод дихотомии условной одномерной оптимизации (для определённости минимизации).
Метод дихотомии
Метод дихотомии несколько схож с методом бисекции, однако отличается от него критерием отбрасывания концов.
Пусть задана функция [math]\displaystyle{ f(x):\;[a,\;b]\to\mathrm{R},\;f(x)\in\mathrm{C}([a,\;b]) }[/math].
Разобьём мысленно заданный отрезок пополам и возьмём две симметричные относительно центра точки [math]\displaystyle{ x_1 }[/math] и [math]\displaystyle{ x_2 }[/math] так, что:
- [math]\displaystyle{ \begin{array}{ccc} x_1 &=& \frac{a+b}{2}-\delta,\\ x_2 &=& \frac{a+b}{2}+\delta, \end{array} }[/math]
где [math]\displaystyle{ \delta }[/math] — некоторое число в интервале [math]\displaystyle{ \left(0,\;\frac{b-a}{2}\right) }[/math].
Вычислим два значения функции [math]\displaystyle{ f(x) }[/math] в двух новых точках. Сравнением определим в какой из двух новых точек значение функции [math]\displaystyle{ f(x) }[/math] максимально. Отбросим тот из концов изначального отрезка, к которому точка с максимальным значением функции оказалась ближе (напомним, мы ищем минимум), то есть:
- Если [math]\displaystyle{ f(x_1)\gt f(x_2) }[/math], то берётся отрезок [math]\displaystyle{ [x_1,\;b] }[/math], а отрезок [math]\displaystyle{ [a,\;x_1] }[/math] отбрасывается.
- Иначе берётся зеркальный относительно середины отрезок [math]\displaystyle{ [a,\;x_2] }[/math], а отбрасывается [math]\displaystyle{ [x_2,\;b] }[/math].
Процедура повторяется, пока не будет достигнута заданная точность, к примеру, пока длина отрезка не достигнет удвоенного значения заданной погрешности.
На каждой итерации приходится вычислять новые точки. Можно добиться того, чтобы на очередной итерации было необходимо высчитывать лишь одну новую точку, что заметно способствовало бы оптимизации процедуры. Это достигается путём зеркального деления отрезка в золотом сечении, в этом смысле метод золотого сечения можно рассматривать, как улучшение метода дихотомии с параметром [math]\displaystyle{ \delta=(b-a)\left(\frac{1}{\Phi}-\frac{1}{2}\right) }[/math], где [math]\displaystyle{ \Phi\! = \frac{ \sqrt{5}+1}{2} \approx 1{,}6180339887\dots }[/math] — золотое сечение.