Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Специальные главы математики множества, графы, комбинаторика. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
где он был членом Петербургской академии наук. Так, задача о Кёниг­сбергских мостах (ныне г. Калининград) – можно ли обойти мосты в Кёнигсберге так, чтобы не побывать дважды на одном и том же мо­сту – послужила основой для развития топологии и теории графов.
Работы Паскаля, Ферма, Лейбница и Эйлера позволили говорить о комбинаторике как о самостоятельной ветви математики, тесно свя­занной с другими областями науки, такими как теория вероятностей, учение о рядах [2].
► Приведем некоторые приложения комбинаторных методов.
Шифры. Дипломаты, стремясь к тайне переписки, изобретали сложные шифры, а секретные службы других государств пытались эти шифры разгадать. Применялись шифры, основанные на комбинатор­ных
принципах, например, на различных перестановках букв, заменах
букв с использованием ключевых слов и т. д.
Иероглифы и клинопись. Навыки в разгадке сложных шрифтов по­могли ученым в расшифровке древних письменностей и клинописных надписей. Это был успех комбинаторного метода в чтении забытых письменностей, основанного на наблюдениях над текстом, на сопо­ставлении повторяемости
комбинаций слов и грамматических форм в сочетании с соображениями, связанными с назначением надписи, вре­менем и условиями ее составления и т. д.
Химия. 17 февраля 1869 года был открыт периодический закон хи­мических элементов. Это открытие было сделано Дмитрием Иванови­чем Менделеевым, профессором Петербургского университета. Готовя курс лекций по общей химии, он
задумался над порядком, в котором следовало рассказывать об элементах. Он стал группировать друг с дру­гом похожие элементы. Далее Менделеев попробовал расположить в правильном порядке и сами группы. Как писал позднее Дмитрий Ивано­вич: «Искать же чего-нибудь, хотя бы грибов, или какую-нибудь зави­симость, нельзя иначе, как смотря
и пробуя». Для того чтобы «смотреть и пробовать», он стал подбирать, написав на отдельных карточках эле­менты с их атомными весами и коренными свойствами, сходные эле­менты и близкие атомные веса. В результате ученый после напряжен­ных размышлений нашел правильное расположение элементов.
Но не только в открытии периодической системы элементов оказа лась полезна комбинаторика. Как известно, среди органических соеди­нений встречаются изомеры, т. е. соединения, имеющие один и тот же состав, но разное строение. Комбинаторика дала возможность пере­числить изомеры данного состава.
61
-
В биологии комбинаторика успешно использовалась при изучении передачи генетической информации у бактерий, при расшифровке строения дезоксирибонуклеиновой кислоты (ДНК, 1953 г.). В физике комбинаторика используется при изучении свойств кристаллов, описа­нии модели ферромагнетизма.
► На протяжении двух с половиной столетий в изучении природы широко применялся математический анализ – дифференциальное и интегральное исчисления, дифференциальные уравнения
математиче­ской физики, вариационное исчисление и другое. Процессы, имевшие атомистическую (прерывную, дискретную) природу, заменялись не­прерывными, чтобы можно было применять к ним развитый аппарат бесконечно малых величин. Дискретная математика долгое время име­ла ограниченное применение.
С появлением быстродействующих ЭВМ ситуация изменилась. Та­кие абстрактные области математики, как математическая логика, об щая алгебра, стали прикладными – для составления алгоритмических языков, на которых пишут программы для машин, нужны специалисты именно в этих областях математики. Важную роль стали играть раз­ностные схемы, исследования решеток и их свойств. Приложения к экономике поставили перед математиками новые типы проблем, отно­сящиеся к математическому программированию и, в частности,
к це­лочисленному программированию (если при решении задачи окажется, что самым экономичным будет грузить на платформу по 3,5 автома­шины, то решение придется пересматривать).
Изменилось и положение области дискретной математики – ком­бинаторики. Из области, интересовавшей большей частью составите­лей занимательных задач и находившей основные применения в коди­ровании и расшифровке древних письменностей
, она превратилась в область, находящуюся на магистральном пути развития науки. Стали выходить журналы по комбинаторике и книги. С помощью ЭВМ стало возможно делать переборы, ранее требовавшие сотен и тысяч лет.
-
► Определим термин «комбинаторика» следующим образом. Ком-
бинаторика является разделом дискретной математики, содержанием
которого является решение задач выбора и расположения
элементов некоторого множества в соответствии с заданными правилами и огра­ничениями. Каждое такое правило определяет способ построения не­которой комбинаторной конфигурации. Поэтому комбинаторный ана­лиз (комбинаторика) занимается изучением свойств этих конфигура-
62
ций, условиями их существования, алгоритмами построения и оптими­зацией этих алгоритмов.
Комбинаторика связана с такими разделами математики, как тео­рия множеств, теория графов, теория вероятностей, теория чисел и др. Комбинаторные методы применяются в теории случайных процессов, статистике, математическом программировании, вычислительной ма­тематике, планировании экспериментов.
3.2. Задачи и проблемы комбинаторики
С точки зрения теории множеств комбинаторика изучает подмно­жества конечных множеств, их объединения и пересечения, а также различные способы упорядочивания этих подмножеств [2]. Первую задачу комбинаторики можно сформулировать так.
1. Найти конфигурацию элементов, обладающую заранее задан-
ными свойствами.
В некоторых случаях такую конфигурацию удается найти сразу. Например, требуется расположить 10 точек и 5 отрезков каждом отрезке было по 4 точки. Примером такой конфигурации является пятиконечная звезда (рис. 3.1).
Бывает, что искомая конфигурация не складывает­ся. Так, шахматист, рассчитывающий комбинацию, или специалист по шифрам, придумывающий новый код с заранее заданными свойствами, не знают заранее, существует ли то, что они ищут.
Таким образом, возникает вторая
задача комбинаторики.
2. Доказать существование или отсутствие конфигурации с за-
данными свойствами.
Во многих случаях, однако, бывает недостаточно найти одну кон­фигурацию с заданными свойствами, а требуется описать все такие конфигурации и найти их число. Например, можно потребовать найти не одно, а все возможные расположения 10 точек на 5 отрезках, при которых на
каждом отрезке лежат по 4 точки. Можно доказать, что кроме изображенной пятиконечной звезды есть еще пять расположе­ний с таким свойством (рис. 3.2). Любое другое расположение с требу­емыми свойствами отличается от одного из указанных шести лишь размерами отрезков, но не их взаимным расположением.
В результате можно сформулировать две проблемы комбинатори-
ки [2],
которые в XVIII и XIX вв. исчерпывали все содержание этой
науки.
63
так, чтобы на
Рис. 3.1
Рис. 3.2
3. Найти общее число конфигураций с заданными свойствами.
4. Описать все способы решения данной комбинаторной задачи,
дать алгоритм их перечисления.
Развитие экономических приложений математики привело к воз­никновению и изучению обширного и важного класса комбинаторных задач – задач на оптимизацию.
5. Из всех решений данной комбинаторной задачи выбрать опти-
мальное решение по
тем или иным параметрам.
Например, существует очень много способов прикрепить потреби­телей каменного угля к шахтам. Экономист будет искать способ, при котором транспортные расходы окажутся минимальными.
Одной из классических оптимизационных задач является «задача о коммивояжёре». Требуется наметить путь торговца, объезжающего заданные n городов, причем он должен по одному разу побывать
в
каждом городе и проделать весь путь за наименьшее время.
3.3. Основные понятия и теоремы комбинаторики
Размещения с повторениями. Рассмотрим задачу: сколько разных
5-разрядных чисел можно составить из 10 цифр?
Пронумеруем разряды:
12345
В первый разряд можно поставить одну из 10 цифр. Независимо от того, какая цифра поставлена, во второй разряд можно также поста­вить одну из 10 цифр и т. д. Всего получается 10
Для двоичной системы счисления (используются только две циф­ры: 0 и 1) получаем 2
5
различных чисел.
Для системы с основанием k и числом разрядов n соответственно получаем
64
5
различных чисел.
A = kn (1)
n – число позиций (разрядов); k – число элементов в каждой позиции (цифр).
В общем виде задача формулируется так: имеется k типов предме­тов (количество предметов каждого типа не ограничено) и n позиций (ящиков, кучек, разрядов). Требуется определить, сколько разных ком­бинаций можно составить, если в позициях предметы могут повто­ряться? Ответ дается формулой (1).
Пример
Сколько разных чисел может содержать 10-разрядное слово в тро­ичной системе счисления? В первый разряд можно поставить один из трех символов (0, 1 или 2), во второй разряд – также один из трех сим­волов и т. д. Всего получаем 3
10
чисел.
В некоторых случаях имеются ограничения на количество разных предметов, которые можно помещать на позиции. Пусть, например, имеется n позиций и на каждую i-ю позицию можно поставить k
пред-
i
метов. Сколько в этом случае существует разных расстановок предме­тов по позициям? Формула
n
A = k
· k2 · k3 · …· kn =
1
k
(2)
i
i
1
Пример
В эстафете 100 + 200 + 400 + 800 метров на первую позицию тре­нер может выставить одного из 3 бегунов, на вторую – одного из 5, на третью – одного из 6, на четвертую – единственного бегуна (на каж­дую позицию выставляются разные бегуны). Сколько вариантов рас­становки участников эстафетного забега может составить тренер?
По формуле (2) число вариантов 3 · 5 · 6 ·1 = 90.
Размещения без повторений.
Рассмотрим задачу: сколько разных
5-разрядных чисел можно записать с помощью десяти цифр при усло-
вии, что в числах не используются одинаковые цифры?
Пронумеруем разряды:
12345
В первый разряд можно поставить одну из 10 цифр (0, 1, 2, 3, 4, 5, 6, 7, 8, 9). Независимо от того, какая цифра помещена в первый разряд, во втором можно поставить только одну из 9 цифр, в третий – одну из
65
8 цифр и т. д. Всего существует 10 · 9 · 8 · 7 · 6 = 30 240 различных пя-
A
тиразрядных чисел, в каждом из которых нет двух одинаковых цифр.
В общем случае, если имеется k позиций и n разных предметов, причем каждый представлен в единственном экземпляре, то количе­ство разных расстановок
A
k
= n (n – 1) (n – 2)… (n – k +1) = n!/(n – k)! (3)
n
Здесь n! означает факториал числа n, т. е. произведение всех чисел от 1 до n. Функция f (n), для которой
f (0) = 1, f (n + 1) = (n + 1) f (n)
при всех целых неотрицательных
, называется факториалом и обо-
n
значается n! Для любого натурального n: n! = 1· 2 · 3 · … · n.
► Замечание: 0! = 1.
Пример
Из группы в 25 человек требуется выбрать старосту, заместителя старосты и профорга. Сколько вариантов выбора руководящего соста­ва группы? Старосту можно выбрать одним из 25 способов. Поскольку выбранный староста не может быть своим заместителем, то для
выбора заместителя старосты остается 24 варианта. Профорга выбирают од­ним из 23 способов. Всего вариантов
25 · 24 · 23 = 25!/22! =13 800.
Перестановки без повторений. В предыдущих параграфах комби- нации отличались как составом предметов, так и их порядком. На практике возможны комбинации, которые отличаются только поряд­ком.
Два размещения без повторений из n элементов (предметов) по n состоят из
одних и тех же элементов, расположенных в различном по-
рядке. Такие размещения называют перестановками из n элементов.
Рассмотрим, сколько различных комбинаций можно получить, пе­реставляя n предметов. Положим в (3) n = k. Тогда получим
n
nn
!
Pn
(4)
Пример
К кассе кинотеатра подходит 6 человек. Сколько существует раз­личных вариантов установки их в очередь друг за другом?
66
Расставим 6 человек произвольным образом и начнем их перестав­лять всеми возможными способами. Число полученных перестановок по формуле (4) будет равно 6! = 720.
Перестановки с повторениями. Иногда требуется переставлять предметы, некоторые из которых неотличимы друг от друга. Такой вариант перестановки называется перестановки с повторениями.
Пусть имеется n предметов k-го типа и при этом n
предметов 1-го типа, n2 предметов 2-го типа, nk
1
+ n2 +…+ nk = n. Количество разных
1
перестановок предметов
, n2, …, nk) = n! / (n1! n2!... nk!) =
P (n
1
= (n
+ n2 +…+ nk)! / (n1! n2!... nk!). (5)
1
Для обоснования (5) сначала будем переставлять n предметов в предположении, что они все различны. Число таких перестановок рав­но n!. Далее заметим, что в любой выбранной расстановке перестанов­ка n
одинаковых предметов не меняет комбинации, аналогично пере-
1
становка n
одинаковых предметов также не меняет комбинации и т. д.
2
Поэтому получаем выражение (5).
Пример
Найдем количество перестановок букв слова КОМБИНАТОРИКА. В этом слове 2 буквы «к», 2 буквы «о», 1 буква «м», 1 буква «б», 2 буквы «и», 1 буква «н», 2 буквы «а», 1 буква «т», 1 буква «р».
Таким образом, число перестановок букв этого слова равно
P (2, 2, 1, 1, 2, 1, 2, 1, 1) =
= 13! / (2! · 2! · 1! · 1! · 2! · 1!· 2! · 1! · 1!) = 13! / 16.
Основные правила комбинаторики
Первое правило: правило произведения.
Умножение – когда для каждой комбинации первого множества имеются все комбинации (или одинаковое число комбинаций) второго множества.
Пусть необходимо выполнить последовательно k действий. Если первое действие можно выполнить n и так далее до k-действия, которое можно выполнить n все k действий можно выполнить n
способами, второе n2 способами
1
· n2 · … · nk способами.
1
способами, то
k
Пример
Сколько слов, содержащих 6 букв, можно составить из 33 букв рус­ского алфавита при условии, что любые две стоящие рядом буквы раз-
67
личны (например, слово «корова» допускается, а слово «колосс» нет). Слова могут иметь смысл и не иметь.
В этом случае на первом месте 33 кандидата. Но после того как первая буква выбрана, вторую можно выбрать лишь 32 способами – ведь повторять первую букву нельзя. На третье место тоже 32 канди­дата – первую букву уже можно повторить
, а вторую нельзя. Также убеждаемся, что на все места, кроме первого, имеется 32 кандидата. А так как число этих мест равно пяти, то получаем ответ
33·32·32·32·32·32 = 1 107 396 236
Второе правило: правило суммы. Сложение используется, когда
множества не совместны (не пересекаются).
Если элемент х может быть выбран m способами, а элемент y – дру-
гими n
способами, то выбор «либо х либо y» может быть осуществлен
m + n способами.
На языке теории множеств это утверждение означает, что если m-
множество А не пересекается с n-множеством В, то их объединение А В содержит m + n элементов.
Сложнее получить ответ, если множества А и
В могут пересекаться.
Пример
Нельзя определить число дней с плохой погодой из рассказа «Ко­гда я отдыхал в сентябре в Паланге, то 12 дней шел дождь, 8 дней дул сильный ветер, а 4 дня было холодно». Может быть, плохая погода была 24 дня (12 + 8 + 4 = 24), а может быть, всего 12 дней нельзя было купаться, так как шел дождь
, причем в некоторые из этих дней был, кроме того, сильный ветер, в некоторые – еще и холодно. Для ее реше­ния необходимы дополнительные сведения.
Итак, мы поставим следующую задачу: найти число элементов в объединении нескольких множеств, зная число элементов в каждом из них, а также число элементов в каждом из пересечений
этих множеств
по два, по три и т. д.
Рассмотрим случай, когда у нас всего два множества. Определить число плохих дней из рассказа «12 дней шел дождь, 8 дней дул силь­ный ветер, причем 5 дней были и дождливы и ветрены» уже несложно. Если мы сложим число дождливых и ветреных дней, то в сумме
12 + 8
дней, когда погода была плоха по обеим причинам, окажутся учтен­ными дважды. Поэтому, чтобы определить количество дней с плохой погодой, надо из суммы 12 + 8 вычесть 5. Ответ
68
12 + 8 – 5 = 15 дней
j
даст искомое число.
Главная теорема комбинаторики (теорема о включениях и исключениях)
Пример
На предприятии работает 67 человек. Из них 48 знают английский, 35 – немецкий и 27 – оба языка. Сколько человек не знают ни англий-
ского, ни немецкого?
Результат можно получить следующим образом. Построим диа­грамму Венна (рис. 3.3), на которой изобразим прямоугольник, соот­ветствующий общему числу работающих (67) и две пересекающиеся области А и В по 48 и 35 языки). На диаграмме общая часть этих двух областей 27 – количество работающих, которые знают оба языка. Требуется найти область пря­моугольника, не входящую ни в область А, ни в область В.
Очевидно, что
человек (знающих английский и немецкий
N = 67 – 48 – 35 + 27 = 11.
67
А ∩ В= 27
А = 48 В = 35
Рис. 3.3
Пусть имеется множество из N объектов произвольной природы. На этом множестве пусть задано n свойств. Каждый объект может об­ладать либо не обладать некоторыми из этих свойств. Сами свойства
, , , ,
обозначим
  
123
n
. Обозначим тов точно обладающих свойством ми, а
(, )
N 
ни свойством
− число объектов, не обладающих ни свойством
ij
. Тогда число объектов, не обладающих ни одним из
, и может быть какими-то други-
i
()
N
– количество объек-
i
,
i
перечисленных свойств,
69
(, , ,...,) –()–( –( ) ( ))
 
()()() ()
NNN N       
12 13 14 1
() ( )( ) (1)( ).
NNN N
  
23 1 123 123
NN NNNN
nn n
12213 3


n
nn
Продолжение примера
Пусть теперь 20 человек знают французский, 12 – английский и французский, 11 – английский и немецкий и 5 все три языка. Тогда в соответствии с теоремой количество человек, не знающих ни одного из трех перечисленных языков (но может быть знающих китайский язык), равно
N = 67 – 48 – 35 – 20 + 27 + 12 + 11 – 5 = 9.
Решето Эратосфена (метод отыскания простых чисел, восходя­щий к древнегреческому
ученому Эратосфену – III век до н.э., г. Алек-
сандрия (Египет))
Выпишем все числа от 1 до N. Сколько чисел делится на k?
Очевидно, надо разделить N на k и взять целую часть получивше­гося частного. Тогда можно подсчитать количество чисел, не делящих­ся в данном диапазоне на k
, k2, k3, …
1
Пример
Сколько чисел от 1 до 100 не делятся на 5 и 7? Воспользуемся тео­ремой о включениях и исключениях. Под первым свойством чисел бу­дем понимать делимость на 5, под вторым – делимость на 7. На 5 де­лятся 20 чисел. На 7 делятся 14 чисел. На 35 делятся 2 числа. Следова­тельно, не делятся на 5 и 7: 100 – 20 – 14 + 2 = 68 чисел.
Сочетания без повторений. Если
требуется выбрать k предметов
из n, и при этом порядок выбираемых предметов безразличен, то имеем
!
k
C
n
n
!!
knk

. (7)
Формула (7) может быть получена так. Выберем по очереди k предметов из n. Число вариантов будет равно n!(n – k)! В этих расста­новках k выбранных предмета имеют свои определенные позиции. Од­нако нас не интересуют в данном случае позиции выбранных предме­тов. От перестановки этих предметов интересующий нас выбор
не ме-
няется. Поэтому полученное выражение нужно разделить на k!
70
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]