Научная статья на тему 'Производящие функции для процедуры выбора комитетов'

Производящие функции для процедуры выбора комитетов Текст научной статьи по специальности «Математика»

CC BY
102
35
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПРОИЗВОДЯЩАЯ ФУНКЦИЯ / ПРОЦЕДУРА МИНИМАКСА / ПРОЦЕДУРА МИНИСУММЫ / GENERATION FUNCTION / MINIMAX PROCEDURE / MINISUM PROCEDURE
i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Производящие функции для процедуры выбора комитетов»

УДК 518.9 ББКВ18

ПРОИЗВОДЯЩИЕ ФУНКЦИИ ДЛЯ ПРОЦЕДУРЫ ВЫБОРА КОМИТЕТОВ1

Калугина А.М.2

(Забайкальский государственный гуманитарно-педагогический университет имени Н.Г. Чернышевского, Чита)

В статье описаны процедуры минисуммы и минимакса для выбора комитета, предложенные в [2]. Представлен метод производящих функций для этих процедур, открывающий возможность использования в решении задачи большой размерности пакет символьных вычислений Mathematica.

Ключевые слова: производящая функция, процедура минимакса, процедура минисуммы.

Введение

Процедура принятия решений выборным органом обычно происходит путем голосования. Процедура голосования применяется также и при выборе комитета. Комитеты могут избираться как в выборных органах, так и в административном аппарате различных учреждений; например, выборы совета факультета, выборы аудиторской комиссии и др. В [2] были предложены процедуры минисуммы и минимакса для выбора комитета. Рассмотрим их.

1. Процедуры минисуммы и минимакса для выбора комитета

Пусть дано n избирателей и k кандидатов. Каждый избиратель в своем бюллетене может проголосовать за стольких кан-

1 Текст приводится в соответствии с изданием «Математическая теория игр и ее приложения. - 2009. - Т. 1. № 4. - С. 31-40».

2 Анастасия Михайловна Калугина, кандидат физикоматематических наук ([email protected]).

дидатов, сколько соответствуют его предпочтениям. Такой вид голосования называется голосованием одобрения. При голосовании одобрения каждый избирательный бюллетень - это бинарный к-вектор, (р 1,... ,'Ри), где pi равно 0 или 1. Эти бинарные вектора указывают одобрение или неодобрение каждого кандидата избирателем. Для обозначения выбранных комитетов мы будем пользоваться подобными бинарными векторами.

Чтобы упростить запись, мы запишем избирательный бюллетень такой, как, например, (1,1,0), в виде 110. Это означает, что избиратель одобряет первого и второго кандидата и не одобряет третьего.

Число различных избирательных бюллетеней или, что тоже самое, число возможных результатов выбора, равно 2к.

Пример 1. Пусть ц = 2 и 4 избирателя заполняют бюллетени для трех кандидатов следующим образом:

1 избиратель: 100

1 избиратель: 110

2 избирателя: 101

Видно, что кандидат № 1 получил одобрение от всех 4-х избирателей, кандидат № 2 - от 1-го, и кандидат № 3 - от 2-х. То есть кандидаты № 1 и № 3 избраны, а № 2 - нет. •

Определение 1. Расстоянием Хемминга между двумя избирательными бюллетенями р и ц называется число б,(р, ц), равное количеству компонент, которыми они отличаются.

Например, для избирательного бюллетеня 110 расстояния Хемминга будут следующими (табл. 1):

Таблица 1.

Избирательный бюллетень й = 0 й = 1 й = 2 й = 3

110 110 100 010 111 000 101 011 001

Теперь обратим внимание не на индивидуальные избирательные бюллетени, а на различные избирательные бюллетени и чис-

ло раз, которое каждый из них был учтен. Например, комитеты 100 и 101 минимизируют сумму расстояний Хемминга для всех избирателей в нашем примере, это эквивалентно тому, что сумма расстояний Хемминга всех различных избирательных бюллетеней имеет вес числа избирателей, заполнивших каждый из них.

Определение 2. Индексным весом бюллетеня называется число его повторений.

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

Таблица 2 показывает индексные веса бюллетеней примера 1 во всех восьми возможных случаях создания комитета (* отмечены минимальные значения).

Таблица 2.

Бюллетень 100 110 101 Сумма Максимум

Число повторов 1 1 2

000 1 2 4 7 4

100 0 1 2 3* 2*

010 2 1 6 9 6

001 2 3 2 7 3

110 1 0 4 5 4

101 1 2 0 3* 2*

011 3 2 4 9 4

111 2 1 2 5 2*

Ясно, что здесь два комитета-победителя: 100 и 101, чьи суммы минимизируют сумму расстояний Хемминга. В нашем примере такой комитет всегда содержит кандидата № 1, и может содержать или не содержать кандидата № 3.

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

избирательным бюллетеням, найдем комитет(ы), который(е) ми-нимизирует(ют) максимум индексных весов. В нашем примере это три комитета: 100, 101 и 111.

Помимо индексного веса, каждый бюллетень обладает весом близости.

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

Определение 3. Вес близости избирательного бюллетеня десть

мл т-

(1) = —--------------,

£ тН(1(д-, дн) н= 1

где т- - число избирателей, заполнивших избирательный бюллетень д3 = (д-,... ,дП) и £ - число различных заполненных избирательных бюллетеней. Знаменатель дроби - сумма расстояний Хемминга между избирательным бюллетенем ] и всеми остальными избирательными бюллетенями (включая ]).

Процедуру минисуммы с весами близости проиллюстрируем на примере 1. Расстояние Хемминга избирательного бюллетеня 100 с ним самим, с 110 и с 101 равно 0, 1 и 1, соответственно. Поскольку эти избирательные бюллетени заполнены одним, одним и двумя избирателями, то избирательный бюллетень имеет вес

1 1

[(1 ■ 0) + (1 ■ 1) + (2 ■ 1)] 3

Числитель здесь отражает тот факт, что один избиратель заполнил этот избирательный бюллетень.

Точно также, избирательные бюллетени 110 и 101 имеют веса

1 и 2 • 5 й 3-

1 1

[(1 ■ 1) + (0 ■ 1) + (2 ■ 2)] 5’

2 _ 2

[(1 ■ 1) + (2 ■ 1) + (0 ■ 2)] = 3 •

Избавимся для удобства от знаменателей, умножив их на 15; получим, что веса близости бюллетеней равны 5, 3, и 10, соответственно.

Таким образом, получим табл. 3, отличающуюся от предыдущей тем, что она основана на весах близости, а не на индексных весах.

Таблица 3.

Бюллетень 100 110 101 Сумма Максимум

Вес близости 5 3 10

000 5 6 20 31 20

100 0 3 10 13 10

010 10 3 30 43 30

001 10 9 10 29 10

110 5 0 20 25 20

101 5 6 0 11* 6*

011 15 6 20 41 20

111 10 3 10 23 10

Заметим, что только комитет 101 минимизирует и сумму и максимум весов близости, в то время, как комитет 101 - также один из комитетов, выделенных критериями минисуммы и минимакса, основанных на индексных весах. Это совпадение не обязательно будет нормой. В [2] показано, что результаты разных процедур могут быть антиподами.

2. Производящие функции для процедур минисуммы и минимакса

Пусть п избирателей голосуют за к кандидатов; избиратели заполняют п бюллетеней. Некоторые заполненные бюллетени могут повторяться. Пусть А = [йг }^=1 4 ,£ ^ п - множество

заполненных избирательных бюллетеней. Пусть и = и(аг) число

ь

повторов избирательного бюллетеня аг, ^ иг = п.

г=1

Используем для обозначения кандидатов метки 73, 3 = 1,..., к. Метки могут быть сокращены, если одновременно находятся в числителе и знаменателе одной дроби. Так, в примере 1 запись 7173 означает комитет 101, а 1 соответствует комитету

000.

Опишем процедуру выбора комитета в терминах производящих функций.

Составим последовательность всевозможных бюллетеней

(2) [00^, 10^_0,..., 1..Л}.

к раз к раз к раз Последовательности бюллетеней (2) поставим в соответствие последовательность меток

(3) [1,71,... ,7к,7172,... ,71.. .7к}.

Разобьем последовательность (3) на группы по количеству меток. То есть

;•

Каждой такой группе можно поставить в соответствие последовательность меток

К3 —— І І /V і=1

или

(4) Кз — Щ 7* }?*, Є 1,к

[[1}, [71,..., 7к}, [7172,..., 7к-17к},..., [71 ... 7к}}

Для последовательности групп (4) составим производящую функцию:

к

(5) С(х) = ^ кзх3 = 1 + (71 + ... + 7к)х+

3=0

к

+ (7172 + ... + 7к-17к)х2 + ... + 7172 ... 7кхк = ^|(1 + 7?х).

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

з=1

Далее, для каждого избирательного бюллетеня аг € A найдем

(6) ам = ^.

аг

После раскрытия скобок и сокращения получим сумму дробей. Составим последовательность, в которую по порядку запишем все элементы суммы (6).

к

(7) , 1 71Х 72Х 71... 7кхк

. 7ьх ... 7ь; 7ьх ... 7Ь 7ьх ... 7Ь 7ьх ... 7ь

Каждому элементу Ьг, г = 1,..., 2к последовательности (7) поставим в соответствие число д(Ьг), равное числу меток в Ьг. Это число определяет расстояние Хемминга между избирательными бюллетенями, находящимися в числителе и знаменателе дроби. Получим последовательности чисел

(8) д = [дг1,...,дг2к}.

Теперь составим новую последовательность, умножив все элементы последовательности (8) для бюллетеня аг на иг - индексный вес этого бюллетеня.

(9) дгиг = [д^и*,... ,д*2=иг}.

Для процедуры минисуммы составим последовательность ^

- сумму последовательностей вида (9) для всех аг € А.

ь

(10) ^ = [^2 дгз иг}2=1.

г=1

Для процедуры минимакса сравним поэлементно последовательности вида (9), и из максимумов составим последовательность М.

оА;

(11) М = [тах дгз иг}7=1.

Определим для последовательностей ^ и М процедуру МтЖо([с}) = (ст; [т}), где ст - значение минимального элемента последовательности, [т} - последовательность порядковых номеров элемента.

После применения этой процедуры мы, определив эле-мент(ы) с номером т из (5), получим обозначение комитета-победителя выборов.

Вернемся к примеру 1.

Количество кандидатов к = 3, избирателей п = 4, различных избирательных бюллетеней Ь = 3, й1 = 100, и1 = 1, й2 = 110, и2 = 1, а3 = 101, и3 = 2.

Составим производящую функцию.

С = (1 + 71х)(1 + 72х)(1 + 7зх) = 1+ 71 х + 72х + 7зх + 7172х2+

2 2 3

+ 717зх2 + 727зх2 + 71727зх3.

Определим последовательности расстояний Хемминга и последовательности индексных весов для а1, а2, а3.

С = — + х + — х + — х + 72х2 + 7зх2 + х2 + 727зх3,

71 71 71 71 71

д1 = [1, 0, 2, 2,1,1, 3, 2},и1д1 = [1, 0, 2, 2,1,1, 3, 2}.

С 1 , 1 , 1 ,73 2 , 73 2 , 73 2 , 3

— +----х +----х +-----х + х2 +---х2 +-------х2 + 73х3,

7172 7172 72 71 7172 72 71

#2 = {2,1,1, 3, 0, 2, 2,1},и2#2 = {2,1,1, 3, 0, 2, 2,1}.

^ 1 1 72 1 72 2 2 72 2 3

- +---х + +—— х +----------------х + — х2 + х2 + — х2 + 72ж3,

7173 7173 73 7173 71 73 71

д3 = [2,1, 3,1, 2, 0, 2,1},и3#3 = [4, 2, 6, 2, 4, 0, 4, 2}.

Тогда,

W = [7, 3, 9, 7, 5, 3, 9, 5}, М = [4, 2, 6, 3, 4, 2, 4, 2}.

МтЖо(^) = (3; 2, 6), то есть комитеты 100 и 101.

МтЖо(М) = (2; 2, 6, 8), то есть комитеты 100, 101 и 111.

Теперь рассмотрим процедуры минисуммы и минимакса, основанные на весах близости.

Разобьем С(х) на две части: С(х) = С'(х) + С"(х) - где С'(х) состоит из слагаемых, соответствующих бюллетеням из А, а С/;(х) содержит все остальные.

Для определения веса близости бюллетеней будем действовать таким же образом, что и для определения индексного веса, 270

С'(ж)

а именно: найдем ——, составим последовательности из слага-

аг

емых и далее определим последовательности д* так же, как и последовательности (11).

Теперь найдем веса близости, используя формулу (1):

(12) ш*

г

Е 4 иі І=1

Определив веса близости, так же, как ив [2], избавимся для удобства от знаменателя, переобозначив веса близости через и'. Далее действуем по вышеописанному алгоритму, используя вместо индексных весов щ веса близости и'. Найдем последовательность Ш' путем поэлементного суммирования последовательностей типа (9). Последовательность Ы' определим путем поэлементного сравнения последовательностей типа (9) и определения максимума. Применим к Ш1 и Ы1 процедуру ЫтЖо и определим комитеты-победители выборов.

Проиллюстрируем этот алгоритм на примере 1.

С'(ж) = 7іж + 7172Ж2 + 7і7зж2.

Сіх) 2 2 , и1 1

------= ж + 72Ж + 7зж , ^1 = {0,1,1}, -Ші = —----------= -.

7і А , 3

І=1

С'(ж) 1 2 7з 2 , ^ и2 1

---— = — Ж + Ж2 +---------Ж2, #2 = {1, 0, 2}, Ш2 = --------- = 7.

7172 72 72 А , 5

Е 52і иі І=1

С(ж) 1 72 2 2 , и3 2

------= — ж +-------Ж + ж , £з = {1, 2, 0}, Шз = —-----------= -.

7173 7з 7з А , 3

Е

=1 з

Избавившись от знаменателей, получим = 5, =

3, и'з = 10.

Далее, иІ01 = {5,0,10,10, 5, 5,15,10}, ^>#2 =

{6, 3, 3, 9, 0, 6, 6, 3}, и'з#з = {20,10, 30,10, 20, 0, 20,10}.

W' = {31,13,43,29,25,11,41,23}, M' =

{20,10,30,10, 20, 6, 20,10}.

MmNo(W') = (11;6), MmNo(M') = (6;6). Обе процедуры указывают на комитет 101.

Литература

1. BILBAO J.M., FERNANDEZ J.R., JIMENES A., LOPEZ J.J.

Generating functions for computing power indices efficiently // Top. - 2000. - Vol. 8, № 2. - P. 191-213.

2. BRAMS S.F., STEVEN J., MARC KILGOUR D., REMZI SANVER M. A Minimax Procedure for Negotiating Multirateral Treaties // In Matti Wiberg (ed.), Reasoned Choices: Essays in Honor of Hannu Nurmi. Turku, Finland: Finnish Political Science Association. - 2004. - P. 255-274.

METHOD OF GENERATING FUNCTIONS FOR PROCEDURE OF COMMITTEE’ ELECTING

Anastasiya Kalugina, Zabaikalsky State Humanitarian Pedagogical University named after N. Tchernishevsky, Chita, Cand. Sc. ([email protected]).

Abstract: In this paper we consider the minimax and minisum procedures for electing committee. These procedures were proposed by S.F. Brams et al. We introduce the method of generating functions for these procedures. This method can be used for electing with a large number of candidates. The "Mathematica" symbolic calculus software can be used to implement our method.

Keywords: generation function, minimax procedure, minisum procedure.

Статья представлена к публикации членом редакционной коллегии В. В. Мазаловым

i Надоели баннеры? Вы всегда можете отключить рекламу.