Максимальный вес «честного» соответствия

9

Меня интересует вариант соответствия максимального веса на графике, который я называю «Максимальное соответствие соответствия».

Предположим, что график заполнен (т.е. E=V×V), Имеет четное число вершин, и что вес задается функцией прибыль . Для совпадающего обозначим через прибыль ребра которой сопоставляется.p:(V2)NMM(v)v

Соответствующее является точным совпадающим, если для любых двух вершин : Mu,vV

(wV:  p({w,v})p({w,u}))M(v)M(u)

То есть, если для любой вершины сопоставление с вершиной дает большую прибыль, чем сопоставление ее с вершиной , справедливого сопоставления должно хватить .wVwvuM(v)M(u)

Можем ли мы найти максимальное соответствие по весу?


Интересный случай, когда график является двудольным, и справедливость применяется только к одной стороне, то есть предположим, что , и нам дана функция прибыли .G=(LR,L×R)p:L×RN

Ярмарка Двудольные соответствия является соответствие в такое , что для любых двух вершин : Gu,vL

(wR:  p({v,w})p({u,w}))M(v)M(u)

Насколько быстро мы сможем найти подходящее двудольное соответствие с максимальным весом?


Мотивация для этой проблемы исходит из двудольного частного случая. Предположим, у вас есть работников и задач, и работник может приносить прибыль от работы . Проблема здесь заключается в том, чтобы разработать разумное решение (в каком-то смысле работники не будут чувствовать себя «оторванным»), в то же время максимизируя общие выплаты (здесь существует компромисс между силой механизма назначения и социальной выгодой).nmipi,jj

Если мы определим социальное обеспечение (или прибыль предприятия) от назначения рабочих мест на работу в качестве суммы прибыли.

Глядя на различные сценарии для силы назначителя работы, мы получаем следующие результаты:

  • Если нам разрешено назначать любого работника на любую работу, мы можем эффективно оптимизировать фабрику (просто найти соответствие по максимальному весу).

  • Если каждый работник выбирает задачу самостоятельно, предполагая, что его работа будет выбрана (для каждой работы может быть выбрана только одна работа), если он будет самым квалифицированным работником, который выбрал задачу, рабочие превратятся в «жадных» равновесие. Причина в том, что работник, который мог заработать больше всего ( ), выберет наиболее выгодную работу и так далее. По скорости аппроксимации жадного алгоритма сопоставления это должно дать 2-аппроксимацию максимально возможного социального благосостояния.i=argmaximaxjpi,j

Я ищу что-то промежуточное. Предположим, мы могли бы назначить рабочих на рабочие места, но должны пообещать им, что ни один «менее квалифицированный» работник не зарабатывает больше, чем они.

Как мы можем найти максимальный вес, соответствующий обещающей «справедливости» сотрудникам эффективно?

RB
источник
Тангенциально, для второго (двухстороннего) случая, кажется, легко построить примеры, где каждое «справедливое» совпадение дает прибыль первого рабочего 1, а остальные ноль, даже если существуют «несправедливые» совпадения, дающие прибыль первого рабочего и все остальные получают прибыль . Аналогично, примеры, в которых справедливое сопоставление с максимальным весом дает каждому работнику прибыль , даже если существуют несправедливые сопоставления, дающие прибыль каждого работника в . 12ϵ1ϵ2/n{1ϵ,12ϵ}
Нил Янг
@NealYoung - правильно ли я предположить, что эти сценарии не могут существовать, если прибыль различна?
RB
Это кажется стандартной проблемой в теории игр, когда неспособность различать альтернативы значительно снижает социальное благосостояние.
РБ
Ой, я забираю свой комментарий - я не уверен, что эти примеры в конце концов осуществимы!
Нил Янг

Ответы:

1

Я полагаю, что «максимальное соответствие нормального двудольного веса», как вы определили, является NP-трудным. Более того, определить наличие справедливого двустороннего сопоставления сложно с точки зрения NP.

Перед тем, как дать интуитивно понятный набросок, рассмотрим следующий небольшой пример. Возьмем где , . Возьмем , что для и , а для и . Тогда и эквивалентны в том смысле, что для всех , поэтому любое справедливое сопоставление должно давать и одинаковую прибыль. Следовательно, единственные честные совпадения либо совпадаютG=(L,R,E=L×R)L={a,b}R={c,d,e,f}pp(u,w)=0uLw{c,d}p(u,w)=1uLw{e,f}abp(a,w)=p(b,w)wRaba и к и , или они соответствуют и к и . Используя этот вид гаджета, мы можем форсировать координацию ребер при сопоставлении. Это основа сокращения.bcdabef

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

Лемма 1. Учитывая и как описано в задаче, определение, содержит ли справедливое совпадение, равно NP -жесткий.G=(L,R,E=L×R)p:ER+G

Эскиз доказательства. Доказательством является сокращение от Независимого множества в кубических графах. Пусть - заданный экземпляр Независимого множества, где - кубический граф (каждая вершина имеет степень 3). Мы опишем, как построить граф и функцию прибыли , чтобы имел справедливое двустороннее соответствие, если и только если имеет независимый набор размера .(G=(V,E),k)GG=(L,R,E=L×R)p:ER+GGk

Вершины в будут приходить парами, называемыми партнерами . Аналогично для вершин в . Для каждой вершины обозначим партнера . Каждая вершина и ее партнер будут эквивалентны , что означает, что мы сделаем Следовательно, любое честное сопоставление должно присваивать одинаковую прибыль и . В дальнейшем мы будем использовать для обозначения значения .LRvLRvvLL

p(,r)=p(,r) for all rR.
π(,r)p(,r)=p(,r)

Кроме того, для каждой пары в и каждой пары партнеров в либо мы делаем либо мы делаем В первом случае мы говорим, что допускаем сопоставление и с и (поскольку при этом присваивается и такая же прибыль , как требуется). В последнем случае мы говорим, что мы предотвращаем и (обоих) с иLr,rR

π(,r)=π(,r)
π(,r)π(,r).
rr rr (потому что при этом не будет присваиваться одинаковая прибыль и ).

Поскольку данный граф кубический, он удовлетворяет условиюи любое независимое множество размера в инцидентно ровно ребер. Для простоты обозначения предположим, что .G=(V,E)3|V|=2|E|IkG3kV={1,2,,n}

Для каждого ребра сделайте следующее.{i,j}E

  1. Добавьте пару партнеров вершин для . r({i,j}),r({i,j})R

  2. Для конечной точки , добавить пару вершин партнера в . Установите позволяя и сопоставляться с и . i(i,j),(i,j)L

    π((i,j),r({i,j}))=π((i,j),r({i,j}))=i,
    (i,j)(i,j)r({i,j})r({i,j})
  3. Симметрично для другой конечной точки : добавьте еще одну пару вершин-партнеров в и установите что позволяет и быть сопоставленным с и .j(j,i),(j,i)L

    π((j,i),r({i,j})=π((j,i),r({i,j}))=j,
    (j,i)(j,i)r({i,j})r({i,j})

Для всех и добавленных до сих пор, если пара явно не разрешена (см. Выше) для сопоставления с , тогда предотвратите совпадение, назначив и каждый по своему уникальному числу.LrR,r,rπ(,r)π(,r)

Далее, добавьте пар наполнителя вершин . Для каждой вершины-заполнителя и каждой установите .3(|V|k)Rr(i,j)Lπ((i,j),r)=0

Наконец, добавьте две вершины и (партнеров) в , наряду с двумя вершинами и (также партнеров) в . Установите , позволяя сопоставлять и с и . Для любой другой вершины установите на некоторое уникальное число. (Следовательно, любое честное соответствие должно соответствовать и с и .) Для каждогоL0L0LR0R0Rπ(L0,R0)=π(L0,R0)=1L0L0R0R0rRπ(L0,r)L0L0R0R0iV, для каждого инцидентного ребра , установите и .{i,j}Eπ((i,j),R0)=iπ((i,j),R0)=|V|i+1

Это завершает сокращение. Чтобы закончить, мы докажем, что это правильно.


Сначала рассмотрим, для каких пар вершин последний доминирует над первым, т. (i,j),(i,j)L

(rR) π((i,j),r)π((i,j),r).

С учетом прибыли, назначенной ребрам, падающим на и , это условие может быть выполнено только в том случае, если , и, проверяя определение для остальных ребер, условие является достаточным. Следовательно, сопоставление справедливо , если и только если она присваивает и к и , а также, для каждого , дает одинаковую прибыль для всех вершин в R0R0i=iπi=iL0L0R0R0iV

N(i)={(i,j):{i,j}E}{(i,j):{i,j}E}.

Сначала предположим, что имеет независимое множество размера . Получить справедливое соответствие для из следующим образом. GIkGI

Сопоставьте и с и .L0L0R0R0

Для каждой вершины пусть это три ее инцидентных ребра. Для каждого ребра сопоставьте вершину и ее партнера с и . Это дает всем вершинам в прибыль .iI{i,j1},{i,j2},{i,j3}{i,jh}(i,jh)(i,jh)r({i,jh})r({i,jh})N(i)i

Для каждой из вершин для каждого из трех ребер инцидентных , сопоставим и его партнера некоторой уникальной паре вершин-заполнителей и ее партнера . Это дает всем вершинам в прибыль .|V|kiVI{i,j}i(i,j)(i,j)rrN(i)0

Следовательно, это соответствие справедливо.


Далее предположим , что имеет справедливое соответствия .GM

M должны соответствовать и к и . Для каждого соответствие должно давать каждой из вершин в одинаковую прибыль. Для каждого его партнер также находится в . Таким образом, при проверке редукции прибыль каждой такой вершины должна быть либо (в этом случае все шесть вершин в соответствуют вершинам и их партнерам), либо нулю (в этом случае все шесть вершин из сопоставляются с вершинами-заполнителями в ). ПозволятьL0L0R0R0iVN(i)(i,j)N(i)(i,j)N(i)iN(i)r({i,j})N(i)RI буду множеством вершин, для которых верен первый случай. Для каждого ребра каждая вершина и ее партнер совпадают с одной вершиной. Отсюда следует, что является независимым множеством. Поскольку число вершин-заполнителей равно , размер должен быть не менее .{i,j}r({i,j})I6(|V|k)Ik

КЭД (?)


Я думаю, что это в основном правильно, если немного запутанно. Дайте мне знать, если вы видите какие-либо ошибки или способ упростить доказательство.

Вышеуказанное сокращение предполагает, что можно взять, Если это нежелательно, то я думаю, что мы можем дополнить с помощьювершины-заполнители, присваивая прибыль 0 всем их ребрам, кроме ребер, и . Мы можем назначить прибыль последним ребрам, чтобы гарантировать, что вершины-заполнители не доминируют (или не доминируют) в любой другой вершине.|R|>|L|L|R||L|R0R0

Нил Янг
источник