Завистливое разрезание торта

Завистливое разрезание торта — вид справедливого разрезания торта. Это разрезание неоднородного ресурса («торта») с удовлетворением критерия отсутствия зависти, а именно, что любой участник обладает чувством, что выделенная ему часть (по его собственной субъективной оценке) не меньше кусков, отданных другим участникам.

Если имеется только два участника, задача проста и была решена ещё в библейские времена протоколом «Дели-и-выбирай». Если имеется три или более участников, задача становится существенно более трудной.

Изучались два главных варианта задачи:
 связные куски, например, в случае одномерного отрезка каждый участник должен получить отдельный подынтервал. Если имеется три  участника, нужно всего  разрезов.
 куски общего вида, например, в случае одномерного отрезка каждый участник должен получить объединение непересекающихся подотрезков.

Краткая история 
Современные исследования по задаче справедливого разрезания торта начались в 1940-х годах. Первым критерием справедливости был пропорциональный делёж и процедура для n участников вскоре была найдена.

Более строгий критерий отсутствия зависти ввели в задачу разрезания торта Георгий Гамов и Марвин Штерн в 1950-х годах.

Процедура для трёх участников и общего вида кусков была найдена в 1960 году. Процедура для трёх участников и связных кусков была найдена лишь в 1980 году.

Завистливый делёж для четырёх и более лиц был открытой проблемой до 1990-х годов, когда были опубликованы три процедуры для общего вида кусков и процедура для связных кусков. Все эти процедуры неограниченны — они могут требовать число шагов, которое заранее не ограничено. Процедура для связных кусков может даже требовать бесконечного числа шагов.

Две нижние границы сложности по времени работы задачи завистливого дележа были опубликованы в 2000-х годах:
 для кусков общего вида нижняя граница равна ;
 для связных кусков нижняя граница равна бесконечности — возможно, нет конечного протокола для трёх и более участников.

В 2010-х годах были опубликованы некоторые аппроксимационные процедуры и процедуры для специальных случаев. Вопрос, существуют ли процедуры с ограниченным временем работы для кусков общего вида, оставался открытым долгое время. Проблема окончательно была решена в 2016 году. Харис Азиз и Саймон Макке́нзи предложили дискретный протокол завистливого дележа, который требует не более  запросов. До сих пор существует огромная пропасть между нижней границей и значением, даваемым процедурой. К августу 2016 точная временная сложность задачи завистливого дележа оставалась неизвестной.

Для случая связных кусков было замечено, что результат по трудности предполагает, что весь кусок должен быть разделён. Если это требование заменяется более слабым требованием, что любой участник получает пропорциональное значение (по меньшей мере  всего куска согласно его собственной оценке), то ограниченная процедура для трёх участников известна, но всё ещё остаётся открытым вопрос, существуют ли процедуры с ограниченным временем работы для четырёх и более участников.

Связные куски

Доказательство существования 
Завистливый делёж n агентов со связными кусками всегда существует при следующих допущениях.
 никакой агент не предпочитает пустой кусок (пустое множество точек) непустому куску;
 предпочтения агентов непрерывны.

Не требуется, чтобы предпочтения агентов были представлены .

Основной концепцией доказательства является симплекс разбиений. Предположим, что торт является отрезком [0;1]. Каждое разбиение со связными кусками может быть единственным образом представлено n−1 числом в отрезке [0;1], каждое число представляет место разреза. Объединение всех разбиений является симплексом.

Для любого разбиения любой агент имеет один и более кусков, которые они предпочитают. Например, для разбиения, представленного числами «0,3;0,5» один агент может предпочитать кусок № 1 (отрезок [0;0,3]), в то время как другой агент может предпочитать кусок № 2 (отрезок [0,3;0,5]), а третий агент предпочитает оба куска № 1 и № 2 (что означает, по его мнению, что разницы между ними нет, но они лучше, чем кусок № 3).

Для любого агента симплекс разбиений накрыт n частями, возможно накрывающих друг друга по их границам, так что для всех разбиений в части i агент предпочитает кусок i. Во внутренности части i агент предпочитает только кусок i, хотя на границе части i, агент предпочитает и другие куски. Таким образом, для любого i имеется определённая область в симплексе разбиений, в которой по меньшей мере один агент предпочитает только кусок i. Назовём эту область . При использовании некоторой топологической леммы (которая аналогична ), можно доказать, что пересечение всех Ui непусто. Следовательно, существует разбиение, в котором каждый кусок является единственным, который предпочитает агент. Поскольку число кусков равно числу агентов, мы можем распределить каждый кусок агенту, который его предпочитает и получим распределение без зависти.

Процедуры 
Для трёх агентов разбиение без зависти может быть найдено с помощью нескольких различных процедур:
 процедура «Движущийся нож» Стромквиста использует четыре одновременно движущихся ножа — один нож движет рефери, а остальные три — по одному на каждого агента;
 процедура «Движущийся нож» Барбанеля — Брамса использует два одновременно движущихся ножа;
 процедура «Движущийся нож» Робертсона — Уэбба может быть использована, когда торт двумерен, и используется только один движущийся нож.

Есть непрерывные процедуры — они опираются на непрерывные и одновременные движения ножей человеком. Эти процедуры нельзя выполнить за конечное число дискретных шагов.

Для n участников разбиение без зависти может быть найдено протоколом разрезания торта Симмонса — Су. Протокол использует симплекс разбиения, аналогичный используемому в доказательстве существования Стромквиста. Протокол образует последовательность разбиений, которая сходится к разбиению без зависти. Схождение может потребовать бесконечно много шагов.

Не случайно, что все эти алгоритмы требуют бесконечного числа запросов. Как мы покажем в следующей подсекции, может быть невозможно найти разрезания торта без зависти со связными кусками с конечным числом запросов.

Результаты по сложности 
Разбиение без зависти со связными кусками для 3 и более агентами не может быть найдено конечным протоколом. Причина этого результата не противоречит упомянутым выше алгоритмам, поскольку они не конечны в математическом смысле.

Доказательство невозможности использует систему жёсткой меры (, RMS) — система n мер оценок, для которых разбиение без зависти должно разрезать торт в очень специфичных местах. Тогда поиск разбиения без зависти сводится к поиску этих специфичных мест. При предположении, что торт из себя представляет вещественный отрезок [0;1], поиск разбиения без зависти с помощью запросов участникам эквивалентен поиску вещественных чисел на отрезке [0;1] с помощью вопросов да/нет. Это может потребовать бесконечного числа вопросов.

RMS для трёх участников может быть построен следующим образом. Пусть x, y, s и t будут параметрами, удовлетворяющими условиям
 
 
 

Построим множество трёх мер с двумя свойствами:
 плотность каждой меры строго между  и  (так что для заданного куска оценки агентов отличаются не более чем вдвое);
 значения кусков, определяемых числами x и y, приведены в таблице:

Тогда любое разбиение без зависти между Алисой, Бобом и Карлом должно иметь разрезы в x и y (имеется ровно два таких разбиения), поскольку любые другие места приведут к зависти:
 если разрезы сделаны слева от x и справа от y, то Алиса и Боб будут настаивать на среднем куске;
 если разрезы сделаны справа от x и слева от y, ни один из участников не захочет взять средний кусок;
 если разрезы сделаны справа от x и справа от y (скажем, в точках x*>x и y*>y), то и Алиса, и Карл будут предпочитать левые куски правым, так что Боб должен будет согласиться взять самый правый кусок. Это значит, что Боб должен оценивать кусок [x;x*] по меньшей мере вдвое больше, чем [y;y*]. Но ввиду ограничения на плотность цены это означает, что и у Алисы, и у Карла оценка [x;x*] больше, чем [y;y*], так что они будут настаивать на левых кусках;
 четвёртый случай (разрез слева от x и слева от y) аналогичен предыдущему.

Для любой RMS, любого агента i и любой константы  существует чуть другая RMS со следующими свойствами:
 новая мера оценок агента i полностью идентична его старой мере оценок;
 новые меры оценок других двух агентов идентичны их старым мерам везде, за исключением  окрестностей точек x и y.

Это означает, что если запрос отвечает как-то на вопрос вне окрестностей x и y, у агента i нет способа узнать, была ли это старая RMS, или новая RMS.

Обладая этим знанием, можно запутать любой протокол завистливого дележа, чтобы он длился бесконечно:
 начнём с любой RMS, например с параметров ;
 если протокол делает разрезы вне точек x и y, просто продолжим;
 когда протокол спрашивает участника i сделать разрез в x или y, переключаемся на другую RMS с  и , удостоверившись, что значения будут теми же, что и для предыдущих разрезов.

Этот протокол не может никогда сделать разрез в правильных точках x и y, которые требуются для разбиения без зависти.

Аппроксимации 
Поскольку разрезание торта без зависти со связными кусками не может быть осуществлён за конечное время, разрезающие торт должны как-то пытаться обойти эту проблему.

Один из подходов заключается в поиске разделений, которые лишь аппроксимационно свободны от зависти. Имеется два способа определить аппроксимацию — в единицах длины или в единицах оценки.

Основанная на длине аппроксимация использует следующие определения.
 Разбиение торта представляется n длинами отрезков, которые разбиение создаёт. Таким образом, (0,2;0,5;0,3) является разбиением единичного отрезка на три подынтервала с длинами 0,2, 0,5 и 0,3 (разбиение образуется разрезанием единичного отрезка в точках 0,2 и 0,7).
 Мультиразбиение — это множество нескольких различных разбиений. Мультиразбиение X называется свободным от зависти, если существует перестановка участников, при которой для любого i существует элемент из X, такой что i-й участник предпочитает i-й сегмент. -мультиразбиение — это мультиразбиение, в котором для каждой пары разбиений разность между их координатами не превосходит . Например: {(0,2+;0,5;0,3), (0,2;0,5+;0,3), (0,2;0,5;0,3+)}.

Параметр  представляет терпимость участников в единицах длины. Например, если делится участок земли и участники согласны, что отклонение в 0,01 метр границы не имеет для них значения, то имеет смысл посмотреть на свободное от зависти 0,01-мультиразбиение. Денг, Ки и Сабери предложили модификацию протокола разрезания торта Симмонса, в которой находится свободное от зависти -мультиразбиение с помощью  запросов. Более того, они доказали нижнюю границу в  запросов. Даже когда функции полезности заданы явно алгоритмами полиномиального времени, разрезание торта без зависти является  задачей.

Основанная на значениях аппроксимация использует следующие обозначения:
 разбиение X называется -свободным от зависти, если существует перестановка участников, при которой для любого i значение i-го куска плюс  не меньше значения любого другого куска: ;
 мера оценки называется непрерывной по Липшицу, если существует константа K, такая что для любой пары отрезков разница их значений не превосходит K-кратной длины их симметрической разности .

Если все меры оценок непрерывны по Липшицу, то два определения аппроксимации связаны. Пусть . Тогда любое разбиение в -мультиразбиении без зависти является -свободным от зависти. Следовательно, результаты Денга, Ки и Сабери доказывают, что если все участники имеют непрерывные по Липшицу оценки, -свободное от зависти разбиение можно найти с помощью  запросов.

Автономные вычисления является вторым обходным путём, который находит распределение совершенно без зависти, но только для ограниченного класса оценок. Если все меры оценок являются полиномами степени, не превосходящей d, существует алгоритм, полиномиальный от n и d. Если d задано, алгоритм запрашивает у агентов d+1 запросов оценки, что даёт d+1 точек на графике меры оценки. Известно, что d+1 точек достаточно для интерполяции многочлена степени d. Следовательно, алгоритм может интерполировать все меры оценок всех агентов и найти распределение без зависти автономно. Число требующихся запросов равно .

Отбрасывание является третьим обходным путём, который сохраняет требование полного отсутствия зависти в полученном разрезании и работает для всех мер оценок, но требование, что должен быть разделён весь торт, в этом случае опускается. То есть разрешается разделить подмножество торта и выбросить остаток. Без дополнительных требований проблема тривиальна, поскольку решается выбрасыванием всего тора без выделения кусков агентам. Таким образом, настоящей целью является дать каждому агенту строго положительное значение. Каждое распределение торта можно охарактеризовать уровнем пропорциональности, который является значением наименее удачливого агента. Разбиение всего торта без зависти является также пропорциональным дележом и уровень пропорциональности в этом случае не меньше , лучшее возможное значение. Но в случае, когда отбрасывание позволено, распределение без зависти может иметь меньший уровень пропорциональности и целью является поиск разбиения без зависти с максимальной возможной пропорциональностью. На настоящее время известны границы:
 для 3 агентов пропорциональность равна , то есть, завистливый делёж и пропорциональный делёж достижимы за ограниченное время;
 для 4 агентов пропорциональность равна ;
 для n агентов пропорциональность равна .
Неизвестно, существует ли ограниченная по времени пропорциональная процедура дележа без зависти для четырёх и более участников для случая связных кусков.

Варианты 
Большинство процедур разрезания торта со связными кусками предполагают, что торт является одномерным отрезком, а куски являются подынтервалами. Часто желательно, чтобы куски имели определённую геометрическую форму, такую как квадрат. Имея такое ограничение может оказаться невозможным разделить весь торт (например, квадрат нельзя разделить на два квадрата), так что должны оставаться нераспределённые куски. Как объяснено выше, когда разрешены нераспределённые куски, процедуры измеряются по их уровню пропорциональности — значению, которое они гарантируют каждому участнику. В настоящее время известно следующее:
 для двух участников при делении квадратного торта и желании получить квадратные куски пропорциональность равна  и это лучшее, что можно гарантировать даже без зависти;
 для трёх участников при делении квадратного торта и желании получить квадратные куски пропорциональность равна . Лучшее, что можно гарантировать при отсутствии зависти — .

Несвязные куски

Процедуры 
Для трёх участников дискретная процедура Селфриджа — Конвея осуществляет завистливый делёж не более чем с 5 разрезами. Другие процедуры, использующие движущиеся ножи, требуют меньшего числа разрезов:
 процедура «Движущийся нож» Левмора — Кук требует максимум 4 разреза;
 процедура вращающихся ножей Брамса — Тейлора — Цвикера для разрезания торта требует не более 3 разрезов (это результат для трёх связных кусков, когда торт представляет собой окружность, но в случае торта в виде отрезка будет четыре куска);
 с помощью процедуры «Движущийся нож» Остина для двух участников можно получить разделение без зависти для 3 участников с не более чем 3 разрезами. Эту идею приписывают Вильяму Уэббу.

Для четырёх участников процедура Брамса — Тейлора — Цвикера осуществляет разделение без зависти не более чем 11 разрезами. Для пяти участников процедура Сабери и Ванга делает деление без зависти ограниченным числом разрезов. Обе эти процедуры используют процедуру Остина для двух участников и общими делениями как на начальном шаге. Следовательно, эти процедуры следует считать бесконечными — их нельзя выполнить за конечное число шагов.

Для четырёх и более участников существует три алгоритма, которые конечны, но не ограничены — не существует фиксированной границы числа требуемых разрезов. Имеется три таких алгоритма:
 процедура Брамса — Тейлора, впервые опубликованная в статье 1995 года, а затем в книге 1996 года;
 протокол Робертсона — Уэбба, впервые опубликованная в статье 1997 года, а затем в книге 1998 года;
 протокол Пихурко опубликован в 2000.

Хотя протоколы отличаются, основная их идея остаётся похожей — делим торт на конечное, но не ограниченное число «крошек», каждая из которых настолько мала, что её значением все участники пренебрегают. Затем комбинируем крошки изощрённым способом, чтобы получить желаемый делёж. Вильям Гасар сравнил три неограниченных алгоритма с помощью порядковых чисел.

Вопрос, можно ли осуществить разрезание торта без зависти за ограниченное время для четырёх и более участников, оставался открытой проблемой многие годы. Она была окончательно решена в 2016 году Харизом Азизом и Саймоном Маккензи. Первоначально они разрабатывали алгоритм ограниченного времени для четырёх участников. Затем они распространили свой алгоритм для работы с любым числом участников. Их алгоритм требует не более  запросов. Хотя число ограничено, оно очень далеко от нижней границы . Так что вопрос, сколько вопросов требуется для разрезания торта без зависти остаётся открытым.

Аппроксимации и частичные решения 
Замкнутый вариант протокола последнего понижающего находит аддитивную аппроксимацию разбиения без зависти за ограниченное время. В частности, для любой константы  алгоритм возвращает разбиение, в котором значение каждого участника не менее наибольшего значения минус , за время .

Если все меры кусочно линейны, существует полиномиальный от размера представления функций оценок алгоритм . Число его запросов равно , где  равно числу разрывов в производных функций плотности оценок.

Результаты по сложности 
Любая процедура завистливого дележа для n человек требует по меньшей мере  запросов. Доказательство опирается на тщательный анализ количества информации, которое алгоритм имеет от каждого участника.

Предположим, что торт является одномерным отрезком [0;1], и что значение всего торта для каждого из участников нормализовано до 1. На каждом шаге алгоритм спрашивает определённого участника либо оценить определённый интервал, содержащийся в [0;1], Либо пометить интервал специфичным значением. В обоих случаях алгоритм собирает информацию только о интервалах, конечные точки которых были упомянуты в запросе или в ответе. Будем называть эти конечные точки вехами. Первоначально вехами для i являются только 0 и 1, поскольку алгоритм знает об участнике i только то, что . Если алгоритм спрашивает участника i оценить [0,2;1], то после ответа вехами для i являются {0;0,2;1}. Алгоритм может вычислить , но не любого интервала, конечная точка которого отличается от 0,2. Число вех увеличивается максимум на 2 с каждым вопросом. В частности, значение отрезка [0;0,2] может концентрироваться рядом с 0, или рядом с 0,2, или где-то между этими значениями.

Интервал между двумя последовательными вехами для участника i называется интервалом вех участника i, Когда алгоритм решает выделить кусок торта участнику i, он должен выделить кусок, полная оценка которого для i не меньше любого интервала вех участника i. Доказательство от противного — предположим, что есть определённый интервал вех J, значение которого для i больше, чем актуальное значение, выделенное для участника i. Некоторый другой участник, скажем j, обязательно получит некоторую часть интервала вех J. Согласно пункту A есть возможность, что всё значение интервала J концентрируется внутри куска, выделенного участнику j. Тогда i будет завидовать j и разбиение будет не свободно от зависти.

Предположим, что все участники ответили на все вопросы как если бы их оценки были однородными (то есть значение интервала равно его длине). Согласно пункту B алгоритм может выделить кусок участнику i только если он длиннее всех интервалов вех для участника i. По меньшей мере  участников должны получить интервал длиной, не превосходящей 2/n. Следовательно, все их интервалы вех должны иметь длины, не превосходящие 2/n. Следовательно, они должны иметь по меньшей мере  интервалов вех, а следовательно и число вех у них должно быть не менее .

Каждый вопрос, на который ответил участник i, вводит максимум две новые конечные точки, так что число вех для участника i увеличивается не более чем на 2. Следовательно, в случае, описанном в пункте C, алгоритм должен опросить каждого из  участников, задав по меньшей мере n/4 вопросов. Полное число вопросов тогда будет не меньше .

Остаётся открытым вопрос, существует ли ограниченный алгоритм для произвольных функций оценок. Таким образом, имеется огромная пропасть между нижней границей  и лучшим известным на настоящее время алгоритмом, который конечен, но не ограничен.

Доказательства существования и варианты 
Вдобавок к доказательствам существования в общем виде, вытекающим из описанных выше алгоритмов, есть доказательства существования разбиений без зависти с дополнительными свойствами:
 существует точный делёж, который, в частности, свободен от зависти (теоремы Дубинса — Спеньера);
 существует свободное от зависти распределение, которое является также эффективным по Парето (теорема Веллера).

Оба доказательства работают только для аддитивных неатомарных мер оценок и опираются на возможность выделить каждому участнику большое число несвязных кусочков.

Завистливый делёж с различными долями 
Обобщением критерия отсутствия зависти является разрешение каждому участнику иметь различные доли. То есть, для любого участника i имеется вес , описывающий долю торта, которую ему приписывается предоставить (сумма все долей wi равна 1). Тогда взвешенное свободное от зависти разбиение определяются следующим образом. Для любого агента i с мерой оценок  и для любого другого агента k:То есть, любой участник считает, что выделенная им доля, соответствующая его предполагаемой доле, не меньше выделенной доли, соответствующей предполагаемой доле других участников.

Когда все веса все те же самые (и равны ), это определение сводится к стандартному определению отсутствия зависти.

Если куски могут быть несвязными, взвешенное разбиение без зависти всегда существует и может быть найдено по протоколу Робертсона — Уэбба для любого набора весов. Зенг предложил альтернативный алгоритм для приближённого взвешенного разбиения без зависти, которое требует малого числа разрезов.

Но когда куски должны быть связными, взвешенное разбиение без зависти может не существовать. Чтобы это понять, заметим, что любое взвешенное разбиение без зависти является также взвешенно пропорциональным с тем же вектором весов. Это означает, что любой агент i с мерой оценок Vi:Известно, что взвешенно-пропорциональное распределение со связными кусками может не существовать: см. , например.

Заметим, что существует альтернативное определение взвешенного распределения без зависти, где веса назначены кускам, а не агентам. Для этого определения известно, что взвешенное распределение без зависти существует в следующих случаях (каждый случай обобщает предыдущий случай):
 аддитивные функции оценок, одномерный торт (отрезок), куски должны быть связными отрезками;
 аддитивные функции оценок, многомерный торт в виде симплекса, куски должны быть симплексами. Доказательство использует , , лемму о покрытии Гейла и лемму Ки Фана о ;
 неаддитивные функции оценок, многомерный торт в виде симплекса, куски должны быть многогранниками.

Деление «плохого» торта 

В некоторых случаях требующий дележа «торт» имеет отрицательное значение. Например, это может быть кусок лужайки, которую следует выкосить, или кусок пустоши, которую следует очистить. В этом случае торт является «неоднородным худом», а не «неоднородным благом».

Некоторые процедуры для разрезания торта без зависти могут быть приспособлены для таких «худых тортов», но зачастую адаптация нетривиальна.

Итоговые таблицы 

Итоговая таблица по числу участников и типу кусков:

См. также 
 Свободный от зависти делёж обязанностей
 Завистливое распределение объектов
 Задача справедливого разрезания пирога
 Отсутствие групповой зависти
 Пропорциональное деление торта

Примечания

Литература

Ссылки 
 Fair Division Calculator — Апплет вычисления свободного от зависти дележа для тортов, обязанностей, уборки помещений и ренты.

Справедливый делёж
Математические головоломки и досуг
Математические задачи