Что в таком случае делать Зое?
А если три женщины предоставят идентичные списки?
Да, видимо, Зою ждет немало проблем…
Теперь предположим, что у нас 10 мужчин и 10 женщин. Что лучше: свести как можно больше людей с их фаворитами или по крайней мере с теми, кто занял в их списках «второе место»? Или свести как можно меньше людей с теми, кому они отвели «последние места»?
На этот вопрос нет однозначных ответов.
Впрочем, Зоя – женщина практичная. Она знает: блаженства всем никто не обещал – и ставит себе гораздо более скромную цель. Ее задача – создать стабильные пары, в которых супруги не будут изменять друг другу.
Что это значит в практическом смысле? Итак, для того чтобы предотвратить измены, Зоя должна убедиться в том, что в ее парах никого не влечет сверх меры к кому-либо помимо супруга или супруги. Рассмотрим такие пары: Пол и Нина, Рон и Джина. Итак, Пол женат на Нине, но, предположим, Джина нравится ему больше;
Кстати, если Пола больше влечет к Джине и это взаимно, а Рон при этом предпочитает Нину, что тоже взаимно, все решается очень легко. Нужно только разорвать старые пары (Пол и Нина, Рон и Джина) и создать две новые и намного более счастливые: Рон и Нина, Пол и Джина.
В 1962 г. Ллойд Шепли – признанный американский математик и обладатель Нобелевской премии 2012 г. по экономике – и покойный американский математик и экономист Дэвид Гейл (мы с ним встречались в главе про игру «Хрум!») продемонстрировали, как можно сочетать парами любые равные группы мужчин и женщин и избежать измен. Очень важно понять: этот алгоритм не гарантирует счастья, только стабильность. Очень возможно, что Нина, выйдя замуж за Пола, будет мечтать о Джоне, но алгоритм гарантирует, что Джон любит свою жену больше, чем Нину. Это не значит, что Джон счастлив в браке, и, может быть, он даже грезит о другой женщине – но, если так, алгоритм убеждает в том, что эта женщина предпочитает Джону своего мужа. И так далее…
Алгоритм Гейла – Шепли довольно прост и состоит из конечного числа итераций (раундов). Посмотрим, как он работает, на примере четверки мужчин (Брэд Питт, Джордж Клуни, Рассел Кроу и Дэнни де Вито) и четырех женщин (Скарлетт Йоханссон, Рианна, Кира Найтли и Адриана Лима). Алгоритм будет работать точно так же при любом равном количестве мужчин и женщин.
В таблице, приведенной ниже, представлены предпочтения мужчин:
А предпочтения женщин таковы:
Вместо того чтобы объяснять алгоритм, позвольте показать, как он работает на практике. В первом раунде каждый мужчина делает предложение своей фаворитке. Так, Брэд и Рассел претендуют на внимание Скарлетт, Дэнни выбирает Рианну, а Джордж взывает к Адриане.
После этого каждая женщина выбирает мужчину, занявшего более высокое место в ее списке, – в том случае, если кавалеров больше одного. Если к ней обращается только один кавалер, он и становится ее спутником, даже если стоит на низком месте в ее «перечне желаний». А если к ней никто не подходит, она в этом раунде остается одна. Именно поэтому Скарлетт выбирает Брэда, которого поставила выше Рассела.
Посмотрим на пары, которые у нас уже сформировались. Помните, это временно – они только помолвлены, но еще не женаты.
В следующем раунде мужчины, у которых еще нет спутницы, делают предложение той женщине, которая еще их не отвергла и занимает самое высокое место в их списках. Единственным, кто не нашел себе спутницу, сейчас остается Рассел (кстати, именно он играл Джона Форбса Нэша, нобелевского лауреата, в фильме Рона Ховарда), и он предлагает Адриане принять его в спутники.
Желание Адрианы быть с Расселом сильнее, нежели ее влечение к Джорджу, и потому она отзывает помолвку с Джорджем и объявляет о помолвке с Расселом. Теперь наши пары выглядят так:
Единственным одиноким мужчиной теперь остается Джордж (