Научная статья на тему 'Преподавание дискретной математики студентам инженерных специальностей'

Преподавание дискретной математики студентам инженерных специальностей Текст научной статьи по специальности «Математика»

CC BY
252
40
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ДИСКРЕТНАЯ МАТЕМАТИКА / DISCRETE MATHEMATICS / МАТЕМАТИЧЕСКАЯ ЛОГИКА / MATHEMATICAL LOGIC / ТЕОРИЯ АЛГОРИТМОВ / THEORY OF ALGORITHMS / ЦИФРОВАЯ ОБРАБОТКА СИГНАЛОВ / DIGITAL SIGNAL PROCESSING

Аннотация научной статьи по математике, автор научной работы — Рыбин Сергей Витальевич

Важнейшая цель математической подготовки будущих инженеров научить таким математическим методам, которые составляют основы специальных дисциплин, сформировать умения применять эти методы при изучении конкретных технических процессов. Изучение дискретной математики должно способствовать выработке у студентов навыков разработки и реализации алгоритмов решения задач, доведения исследований до конечного результата. В «непрерывной» математике, как правило, имеются вполне понятные ответы на вопрос, для чего нужны те или иные понятия (вычисляются площади и объемы, решаются системы уравнений и т.п.) В дискретной математике иной уровень абстракции, и во многих случаях нет опоры на привычные интуитивные образы. Таки образом, возникает задача формирования у студентов ощущения «полезности» предмета. В статье рассматривается методика преподавания дискретной математики для студентов инженерных специальностей на примере соответствующих курсов СПб ГЭТУ «ЛЭТИ». Даются рекомендации по улучшению практического восприятия студентами объектов дискретной математики.

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

Teaching discrete mathematics to engineering students

The most important goal of teaching mathematics to future engineers is to teach them the mathematical methods that form a basis of special diciplines; to form skills of application of these methods in the study of certain technical processes. The study of discrete mathematics must assist students in working out their skills of algorithms design and implementation, bringing their research to the final result. The "continuous" mathematics usually have quite understandable answers to the questions about what one or the other concept is used for (the evaluation of areas and volumes, the solution of equations systems, etc.). The discrete mathematics has the different level of abstraction, and in many cases there is no reliance on habitual patterns. Thus, the problem to form the usefulness feeling of the subject arises. The paper considers the methodology of teaching discrete mathematics to engineering students on the example of the corresponding courses of the SPb ETU "LETI" University. The recommendations of how to improve for students the practical perception of the discrete mathematics objects are given.

Текст научной работы на тему «Преподавание дискретной математики студентам инженерных специальностей»

Компьютерные инструменты в образовании, 2015 № 3: 39-44 УДК: 519.1, 519.6 http://ipo.spb.ru/journal

ПРЕПОДАВАНИЕ ДИСКРЕТНОЙ МАТЕМАТИКИ СТУДЕНТАМ ИНЖЕНЕРНЫХ СПЕЦИАЛЬНОСТЕЙ

Рыбин Сергей Витальевич Аннотация

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

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

В статье рассматривается методика преподавания дискретной математики для студентов инженерных специальностей на примере соответствующих курсов СПб ГЭТУ «ЛЭТИ». Даются рекомендации по улучшению практического восприятия студентами объектов дискретной математики.

Ключевые слова: дискретная математика, математическая логика, теория алгоритмов, цифровая обработка сигналов.

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

Дискретная математика изучается во всех университетах России, где осуществляется подготовка специалистов инженерных специальностей. Рассмотрим изучение дискретной математики студентами инженерных специальностей на примере СПбГЭТУ «ЛЭТИ» [10].

Курс «Дискретная математика и математическая логика» относится к базовой части профессионального цикла. В настоящий момент курс дискретной математики в СПб

ГЭТУ «Л Эта » разделен на две часта : «дискретную математику» и «математическую логику и теорию алгоритмов». Разделение можно считать достаточно условным, и связано оно в большей части с формальными требованиями к организации учебного процесса Университета. Преподавание ведется на первом и втором курсах, поэтому излагаемый материал не опирается на понятия классических курсов высшей математики, за исключением простейших понятий алгебры, комплексных чисел и т.п. Каждый из курсов состоит из 64 академических часов лекционных и практических занятий.

В курсах рассматривается небольшое количество теорем (доступных для понимания студентам-первокурсникам), но доказательство каждой из них носит достаточно строгий характер. В большинстве случаев эти доказательства носят конструктивный характер, что дает возможность не только обосновывать соответствующие факты, но и строить на практике дискретные объекты, обладающие заданными свойствами. Именно такой подход позволяет приблизить теорию к практике, развивать у студентов алгоритмическую культуру мышления. Вместе с тем, такая немногочисленность доказываемых теорем позволяет не перегружать курс чрезмерно теоретизированным материалом.

Курсы разделены на модули (далее модули выделены жирным шрифтом). Такое разделение позволяет оптимально организовать процесс обучения. Кроме того, в дальнейшем модульная система может помочь интеграции курсов различных вузов. Практически каждый модуль представляет собой самостоятельную учебную единицу.

Большинство рассматриваемых в рамках курсов задач и алгоритмов уже давно имеют свою программную реализацию на различных языках программирования и входят в число различных программных комплексов, генераторов тестовых заданий ([1], [5], [8], [9], [11]). Тем не менее, эти задачи являются яркими примерами для иллюстрации основных принципов построения алгоритмов.

Перечислим кратко основные темы курса дискретной математики Университета и их наполнение.

• Целочисленные алгоритмы.

1. Деление с остатком. Позиционные системы счисления. Алгоритм быстрого возведения числа в степень. Алгоритмы арифметических операций в арифметике длинных чисел.

2. Простые числа. Основная теорема арифметики. Решето Эратосфена. Алгоритмы факторизации.

3. Алгоритм Евклида, бинарный алгоритм. Обобщенный алгоритм Евклида. Ди-офантовы уравнения.

4. Подходящие дроби. Бесконечные непрерывные дроби. Наилучшие приближения.

5. Классы вычетов. Арифметика остатков. Признаки делимости. Китайская теорема об остатках. Система остаточных классов.

6. Функция Эйлера и ее свойства. Теорема Эйлера-Ферма. Система шифрования RSA. Электронная подпись. Электронные деньги. Простейшие атаки на RSA.

• Арифметика многочленов.

1. Основные операции и свойства. Схема Горнера.

2. Алгоритм Евклида и линейное представление НОД для многочленов в конечных полях. Китайская теорема об остатках для многочленов. Интерполяционная формула Лагранжа.

3. Полиномиальное кодирование.

4. Разложение на свободные от квадратов множители. Примитивные многочлены. Признаки неразложимости.

5. Однородные и неоднородные линейные рекуррентные уравнения. Поиск частных решений.

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

1. Основные понятия комбинаторики. Бином Ньютона.

2. Кодирование с исправлением ошибок. Граница Хемминга. Код Шеннона-Фэно и алгоритм Хаффмана.

3. Принцип включения-исключения. Задача Монмора. Лексикографический и антилексикографический порядок. Разбиения чисел.

4. Перечислительная комбинаторика: перечисление подмножеств, перестановок. Код Грея.

5. Производящие функции. Производящая функция чисел Фибоначчи.

• Графы и бинарные отношения.

1. Простейшие определения и свойства графов. Поиск в глубину и в ширину.

2. Связность. Эйлеровы и гамильтоновы графы. Алгоритм Флери.

3. Деревья, код Прюфера. Обход дерева, перебор с возвратом. Каркасы.

4. Главные циклы и разрезы. Граница и кограница. Линейное пространство циклов графа.

5. Двудольные графы. Теорема Кенига. Паросочетания.

6. Планарность. Теорема Эйлера. Гомеоморфизм графов. Хроматические графы. Теорема Понтрягина-Куратовского. Раскраска графов. Теорема Хивуда. Алгоритм последовательной раскраски.

7. Минимальные остовые деревья нагруженных графов. Жадные алгоритмы Прима и Краскала.

8. Бинарные отношения и их свойства. Графы бинарных отношений. Отношение эквивалентности и алгоритм построения классов эквивалентности. Отношение порядка. Алгоритм топологической сортировки.

9. Транзитивное замыкание. Алгоритм Уоршелла.

Из приведенного списка видно, что, ввиду ограниченности временного ресурса, некоторые важные понятия дискретной математики, активно используемые при дальнейшем обучении, не нашли здесь своего места ([2], [3], [6]). Предлагается решить эту проблему включением материалов в виде модулей дистанционного обучения.

Исходя из данных опросов выпускников ЛЭТИ, мониторинга служб персонала 1Т-предприятий наибольший интерес в качестве материалов дистанционного обучения представляют следующие направления.

1. Введение в цифровую обработку.

2. Сортировки и поиск.

3. Кластерный анализ.

Перейдем к наполнению курса математической логики и теории алгоритмов. Основой курс включает следующие темы.

• Булевы функции.

1. Нормальные формы и минимизация.

2. Метод резолюций.

3. Теорема Поста.

4. Булевы функции в криптографии.

• Логика предикатов.

1. Исчисление предикатов.

2. Метод резолюций и ПРОЛОГ.

• Алгоритмы.

1. Алгоритмы Маркова.

2. Машина Тьюринга.

3. Частично рекурсивные функции.

4. Метод математической индукции в доказательстве корректности алгоритмов. Понятие матроида. Жадные алгоритмы.

5. Понятие о вычислительной сложности алгоритмов. NP-полные задачи. Метод ветвей и границ.

• Языки и грамматики.

1. КС-грамматики.

2. Понятие автомата.

3. Автоматные грамматики и языки регулярных выражений. Теорема Клини.

4. Синтаксические анализаторы.

Исходя из опросов молодых специалистов инженерных вузов Санкт-Петербурга для модулей дополнительного образования данного курса предлагаются следующие темы ([4], [7], [12]).

1. Автоматы.

2. Нечеткая логика.

3. Лямбда исчисление Черча.

Как уже говорилось, предполагаемые дополнительные модули дистанционного обучения не предполагают серьезных знаний в области классических курсов математики. Действительно, трудно ожидать наличия такого рода знаний у студентов I—II курсов. Покажем на нескольких примерах, что это не является препятствием для изучения предлагаемых дополнительных модулей. Рассмотрим, например, модуль «Введение в цифровую обработку».

В основе теории лежит простое предположение, что входной сигнал представляет собой N-периодическую комплекснозначную функцию целочисленного аргумента

x = x(j) = Xj, x e C, j e Z.

Если ввести понятие единичного N-периодического импульса как сигнал

¡1, j - N, (j) = \ \ .

[0, otherwise,

то

N -1

x(j) = y, X(k)6n(j - k),

k=0

а система сдвигов единичного импульса

8м(]),8м(] - 1),...,8м(] - N + 1)

представляет собой базис в пространстве введенных сигналов. Тогда дискретное преобразование Фурье имеет вид:

N -1

Е-

j=0

X(k) = ^ x(j)шк, k e Z, mn = exp

'2ni

N

Последнюю формулу можно интерпретировать как вычисление значений полинома

N -1

Р(г) = £ х(;)zj, ]=0

к

в точках единичнои окружности = или как вычисление произведения матрицы

1 1

1 MN

1 ш

N -1 N

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

на вектор x (j).

ш

N -1 N

ш

(N—1)(N-1) N

Выводы: предлагается разбиение курса на базовую и вариативную части, а также разбиение материалов на относительно независимые модули. Изучение модулей вариативной части можно сделать дистанционным. Унификация базовой части позволит максимально сблизить курсы дискретной математики вузов России.

1

Список литературы

1. Ахо А., Хопкрофт Дж., Ульман Дж. Построение и анализ вычислительных алгоритмов. М., 1979.

2. БлейхутР. Быстрые алгоритмы цифровой обработки сигналов. М.: Мир, 1989.

3. ДюранБ., ОделлП. Кластерный анализ. М.: Статистика, 1977.

4. Карпов Ю.Г. Теория автоматов. СПб.: Питер, 2003.

5. Кнут Д. Искусство программирования для ЭВМ. Т. 2. Получисленные алгоритмы. М., 1977.

6. Кнут Д. Искусство программирования для ЭВМ. Т. 3, Сортировка и поиск. М., 1977.

7. КофманА. Введение в теорию нечетких множеств. М.: Радио и связь, 1982.

8. Кристофидес Н. Теория графов. Алгоритмический подход. М., 1997

9. Липский В. Комбинаторика для программистов, М., 1988.

10. Поздняков С.Н., Рыбин С.В. Дискретная математика, М., 2007.

11. Романовский И.В. Дискретный Анализ. СПб., 1999.

12. Field A.J., Harrison P. G. Functional Programming. Addison-Wesley, 1988.

TEACHING DISCRETE MATHEMATICS TO ENGINEERING STUDENTS

Rybin S. V. Abstract

The most important goal of teaching mathematics to future engineers is to teach them the mathematical methods that form a basis of special diciplines; to form skills of application of these methods in the study of certain technical processes. The study of discrete mathematics must assist students in working out their skills of algorithms design and implementation, bringing their research to the final result.

The "continuous"mathematics usually have quite understandable answers to the questions about what one or the other concept is used for (the evaluation of areas and volumes, the solution of equations systems, etc.). The discrete mathematics has the different level of abstraction, and in many cases there is no reliance on habitual patterns. Thus, the problem to form the usefulness feeling of the subject arises.

The paper considers the methodology of teaching discrete mathematics to engineering students on the example of the corresponding courses of the SPb ETU "LETF'University. The recommendations of how to improve for students the practical perception of the discrete mathematics objects are given.

Keywords: discrete mathematics, mathematical logic, theory of algorithms, digital signal processing.

© Наши авторы, 2015. Our authors, 2015.

Рыбин Сергей Витальевич, кандидат физико-математических наук, доцент кафедры ВМ-2 СПбГТУ «ЛЭТИ», [email protected]

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