ОСВІТНІ КОМПОНЕНТИ

БАКАЛАВР

укр eng

Обов’язкові дисципліни

Аналітична геометрія

Дисципліна викладається в 1 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є оволодіння методом координат при вирішенні геометричних задач на площині і в просторі, а також базовими поняттями лінійної алгебри.

Заплановані результати навчання: студенти повинні

знати:

  • основи векторної алгебри;

  • означення афінного та евклідова просторів;

  • означення скалярного, векторного та мішаного добутків;

  • ознаки колінеарності та компланарності векторів;

  • рівняння прямих і площин в афінному та евклідовому просторах;

  • визначення опуклих множин, визначення опуклої оболонки та її механічний зміст.

вміти:

  • обчислювати довжину вектора та кути між векторами;

  • знаходити скалярний, векторний, подвійний векторний та змішаний добутки векторів, орієнтовану площу паралелограму та орієнтований об’єм паралелепіпеду, формули перетворення базисів та координат;

  • складати параметричні, загальні та нормовані рівняння прямих і площин;

  • знаходити кут між прямими (площинами) та кут між прямою та площиною, відхилення та відстань від точки до прямої (площини), відстань між мимобіжними прямими.

  • записати перетворення центральної, осьової симетрії та симетрії відносно площини;

  • записати осьовий поворот за допомогою кватерніонів;

  • знайти рівняння геометричного місця точок за його описом.

Елементи математичної логіки та дискретної математики

Дисципліна викладається в 1 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є ознайомлення студентів з деякими початковими поняттями і методами, які є загальновживаними при викладанні основних математичних дисциплін.

Заплановані результати навчання: студенти повинні

знати:

  • поняття множини, способи завдання множин, означення основних операцій над множинами та їх властивості;

  • поняття висловлювання, означення основних операцій над висловлюваннями та їх властивості;

  • поняття предикату і кванторів, приклади їх використання;

  • поняття необхідної умови, достатньої умови;

  • поняття доведення, прийоми доведення. Метод математичної індукції. Доведення від супротивного;

  • поняття відношення, відношення еквівалентності і порядку;

  • означення кількості перестановок, сполук, методи їх підрахунку. Поняття про комбінаторні тотожності;

  • поняття про графи і їх початкові властивості.

вміти:

  • наводити приклади множин, записувати їх у математичних символах, читати записані математичними символами приклади множин;

  • доводити рівність/нерівність множин. Доводити властивості операцій над множинами;

  • доводити і користуватися формулою включень-виключень;

  • наводити приклади висловлювань, будувати таблиці істинності і користуватися ними для доведення еквівалентності/нееквівалентності висловлювань;

  • наводити приклади предикатів, приклади використання кванторів. Будувати заперечення висловлювань з кванторами;

  • доводити прості твердження, використовуючи різні прийоми доведення;

  • використовувати методи доведення від супротивного і метод математичної індукції;

  • наводити приклади відношень, визначити чи є дане відношення відношенням еквівалентності, відношенням порядку;

  • розв’язувати найпростіші задачі з комбінаторики, пояснювати метод підрахунку;

  • розв’язувати найпростіші задачі з теорії графів.

Елементи алгебри та теорії чисел

Дисципліна викладається в 1 семестрі.

Навантаження: 3 години лекцій та 3 години практики на тиждень.

Звітність: іспит.

Метою викладання навчальної дисципліни є навчання студентів основам теорії чисел, а також алгебрі комплексних чисел та многочленів однієї змінної.

Заплановані результати навчання: студенти повинні

знати:

  • основні принципи арифметики цілих чисел: подільність, ділення з остачею, найбільш спільний дільник, прості числа, основна теорема арифметики, рівняння за модулем n та класи лишків, лінійні рівняння за модулем n, китайська теорема про лишки, мала теорема Ферма та теорема Ейлера;

  • аксіоми поля та приклади полів;

  • основні властивості комплексних чисел;

  • аксіоми кільця та приклади кілець;

  • основні властивості многочленів однієї змінної: подільність, ділення з остачею, найбільший спільний дільник, розкладення многочленна на незвідні множники, корені многочлена та теорема Безу, кратність кореня та похідна, основну теорему алгебри, інтерполяцію, теореми Штурма;

  • поняття про раціональні функції однієї змінної, розкладення на найпростіші дроби.

вміти:

  • виконувати арифметичні дії з цілими числами, виконувати ділення з остачею, знаходити найбільший спільний дільник за допомогою алгоритму Евкліда, розкладати цілі числа на прості множники, виконувати арифметичні дії з класами лишків, розв’язувати лінійні рівняння за модулем n, користатись китайською теоремою про лишки;

  • виконувати арифметичні дії з комплексними числами, знаходити модуль, аргумент та тригонометричну форму комплексного числа;

  • розв’язувати рівняння третього та четвертого ступенів;

  • виконувати арифметичні дії з многочленами однієї змінної, виконувати ділення з остачею, знаходити найбільший спільний дільник за допомогою алгоритму Евкліда, розкладати многочлени на незвідні множники, обчислювати кратність кореня многочлена, обчислювати інтерполяційний многочлен, приблизно обчислювати дійсні корені многочлена за допомогою методу Штурма;

  • розкладати раціональну функцію в суму найпростіших.

Математичний аналіз

Дисципліна викладається в 1, 2, 3 та 4 семестрах.

Навантаження: 2 години лекцій та 4 години практики на тиждень у 1 семестрі, 2 години лекцій та 2 години практики на тиждень у 2, 3, 4 семестрах.

Звітність: іспити в усіх семестрах.

Метою викладання навчальної дисципліни є надання студентам знань у галузі сучасного математичного аналізу.

Заплановані результати навчання в 1 та 2 семестрах: студенти повинні

знати:

  • теорію дійсних чисел;

  • властивості границь числових послідовностей та числових функцій;

  • властивості неперервних функцій;

  • диференціальне числення функцій однієї змінної;

  • методи інтегрування для знаходження первісних функцій;

  • теорію інтеграла Рімана на відрізку та її застосування;

  • теорію збіжності невласних інтегралів Рімана;

  • теорію збіжності числових рядів.

вміти:

  • знаходити границі послідовностей і функцій;

  • досліджувати функції та неперервність і рівномірну неперервність;

  • диференціювати складні та обернені функції;

  • користуватися розвиненням функцій за формулою Тейлора;

  • застосовувати формулу Лейбніца;

  • досліджувати функції на монотонність та опуклість;

  • досліджувати функції на екстремум;

  • користуватися правилам Лопіталя;

  • будувати графік функції або кривої, що задана параметрично, з використанням диференціального числення;

  • застосовувати таблицю первісних основних елементарних функцій і методи інтегрування для знаходження первісних більш складних функцій;

  • досліджувати функцію на інтегровність за Ріманом;

  • застосовувати формулу Ньютона-Лейбніца, метод інтегрування частинами та заміну змінних для обчислення інтегралів Рімана;

  • застосовувати інтеграл Рімана в геометрії, механіці, фізиці;

  • досліджувати на абсолютну та умовну збіжності невласні інтеграли Рімана;

  • досліджувати на абсолютну та умовну збіжності числові ряди.

Заплановані результати навчання в 3 та 4 семестрах: студенти повинні

знати:

  • теорію степеневих рядів;

  • елементи теорії метричних, нормованих та евклідових просторів;

  • властивості неперервних функцій кількох змінних;

  • диференціальне числення функцій кількох змінних;

  • теореми існування та диференційованості неявних функцій;

  • теорію внутрішніх та умовних екстремумів функцій кількох змінних;

  • властивості ейлеревих інтегралів;

  • теорію кратного інтеграла Рімана та її застосування;

  • теорію криволінійних інтегралів першого та другого роду;

  • теорію поверхневих інтегралів першого та другого роду;

  • формули Гріна, Гаусса-Остроградського, Стокса;

  • основи теорії векторних полів;

  • елементи теорії рядів Фурє за ортонормованими системами у гільбертовому просторі;

  • нерівність Бесселя та рівність Парсеваля;

  • теорему про повноту тригонометричної системи функцій та апроксимаційні теореми Вейрштраса;

  • теореми про поточкову та рівномірну збіжність тригонометричного ряду Фур’є;

  • властивості перетворення Фур’є та інтегралу Фур’є.

вміти:

  • отримувати розвинення функцій у ряд Тейлора;

  • диференціювати складні та неявно задані функції кількох змінних;

  • досліджувати на внутрішній та умовній екстремум функції багатьох змінних;

  • обчислювати кратні інтеграли за допомогою теореми Фубіні та заміни змінних;

  • обчислювати криволінійні та поверхневі інтеграли першого та другого родів.

Програмування

Дисципліна викладається в 1 та 2 семестрах.

Навантаження: 2 години лекцій та 2 години практики на тиждень у 1 семестрі, 2 години лекцій та 4 години практики на тиждень у 2 семестрі.

Звітність: іспити у 1 та 2 семестрах.

Метою викладання навчальної дисципліни є надання компетенції щодо володіння базовими поняттями структурного програмування, методами та ідіомами програмування, базовими типами та структурами даних та методами їх застосування для розв’язання певних задач.

Заплановані результати навчання: студенти повинні

знати:

  • поняття алгоритму, базові структури алгоритмів;

  • концепції типу, операції, оператора, принципи та правила їх застосування;

  • функції та способи передачі параметрів;

  • принципи управління пам’яттю за допомогою вказівників та застосування динамічних змінних;

  • структури та правила виконання рекурсивних алгоритмів;

  • принципи та методи роботи з файлами.

вміти:

  • складати алгоритми, використовуючи тільки базові структури, реалізовувати алгоритми структурними програмами, ефективно вибирати типи та структури даних для зберігання інформації;

  • структурувати задачі за допомогою функцій;

  • використовувати вказівників для динамічного управління пам’яттю;

  • застосовувати операції роботи з файлами як на стандартному, так й на системному рівні;

  • використовувати рекурсивні алгоритми для розв’язування певних задач.


Лінійна алгебра

Дисципліна викладається в 2 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: іспит.

Метою викладання навчальної дисципліни є надання фундаментальних знань в галузі лінійної алгебри, на яких базується вивчення спеціальних дисциплін та які застосовуються в галузі моделювання інформаційних процесів.

Заплановані результати навчання: студенти повинні

знати:

  • означення та приклади полів, кілець, груп;

  • основні теореми про операції з матрицями;

  • визначення, властивості і прийоми обчислення детермінантів;

  • способи розв’язання систем лінійних рівнянь;

  • визначення лінійного простору над довільним полем та визначення основних об’єктів, що пов’язані з лінійним простором (лінійна залежність, базис, координати, матриця переходу, підпростір, ізоморфізм та подібне);

  • визначення та способи задання лінійних та білінійних функціоналів;

  • визначення лінійного оператора, способи його задання, визначення матриці лінійного оператора в обраному базисі, визначення власних векторів та власних чисел та способи діагналізації матриці лінійного оператора;

  • класифікацію кривих другого порядку на площині і поверхонь другого порядку в тривимірному дійсному просторі.

вміти:

  • вести обчислення в кільці квадратних матриць заданого порядку, в кільці класів залишків за заданим модулем;

  • обчислювати визначники;

  • знаходити обернену матрицю;

  • знаходити рішення систем лінійних рівнянь за методом Гауса та методом Крамера;

  • визначити вимірність та базис лінійного простору;

  • працювати із функціоналами та формами, вміти ортогонально діагоналізувати дійсну квадратичну форму;

  • діагоналізувати матрицю лінійного оператора (коли це можливо);

  • знаходити основні характеристики кривої другого порядку (фокуси, директриси, ексцентриситет), робити схематичне креслення кривої;

  • знаходити рівняння дотичної до кривої другого порядку та рівняння дотичної площини до поверхні другого порядку;

  • знаходити канонічну систему координат для кривої чи поверхні другого порядку.

Архітектура обчислювальних систем

Дисципліна викладається в 2 семестрі.

Навантаження: 1 година лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є формування у студентів уявлення про апаратну частину обчислювальної техніки та про особливості роботи з нею, а також вмінь програмувати мовами низького рівня.

Заплановані результати навчання: студенти повинні

знати:

  • типову схему організації центрального процесора та пам’яті ЕОМ;

  • основні алгоритми арифметичних функцій над числами у двійковому вигляді;

  • методи розміщення та обробки інформації у пам’яті комп’ютера;

  • методи зберігання інформації в файлах у в двійковому та текстовому вигляді.

вміти:

  • розробляти програми на мові програмування асемблер з розміщенням інформації у динамічній пам’яті та з можливостями збереження цієї інформації у вигляді файлу;

  • застосовувати основні алгоритми роботи з регістрами мікропроцесора.

Дискретна математика

Дисципліна викладається в 2, 3 та 4 семестрах.

Навантаження: 2 години лекцій та 2 години практики на тиждень у кожному семестрі.

Звітність: іспити у 2, 3 та 4 семестрах.

Метою викладання навчальної дисципліни є надання студентам знань у галузі дискретної математики.

Заплановані результати навчання в 2 семестрі: студенти повинні

знати :

  • правила додавання, множення, доповнення;

  • поняття розміщення, перестановки, сполуки, з повтореннями та без повторень;

  • формулу бінома Ньютона, властивості біноміальних коефіцієнтів, поліноміальну формулу;

  • формулу включення-виключення;

  • поняття твірної функції та застосування твірних функцій до розв’язання рекурентних рівнянь;

  • властивості чисел Фібоначчі, чисел Стірлінга, чисел Каталана;

  • властивості розбитть натуральних чисел на доданки (впорядкованих та невпорядкованих), поняття про діаграми Юнга;

  • основні поняття теорії графів та деякі основні формули (формула Ейлера для багатогранників);

  • критерії планарності та ейлеровості графа;

  • теореми про фарбування графів;

  • критерії та властивості дерев, алгоритми побудови мінімальних остовних дерев

  • властивості дводольних графів та паросполук, теорему Холла про весілля.

вміти :

  • обчислювати кількість елементів множини за допомогою основних понять комбінаторики;

  • використовувати біном Ньютона;

  • використовувати поліноміальну формулу;

  • використовувати формулу включення-виключення;

  • обчислювати твірні функції;

  • використовувати властивості чисел Фібоначчі;

  • досліджувати графи на планарність, ейлеровість, гамільтоновість;

  • знаходити хроматичну функцію та хроматичне число графа;

  • застосовувати алгоритми побудови мінімальних остовних дерев;

  • будувати паросполуки у дводольних графах.

Заплановані результати навчання в 3 семестрі: студенти повинні

знати :

  • поняття бінарного відношення, властивості бінарних відношень;

  • поняття і властивості відношень еквівалентності;

  • поняття і властивості відношень порядку, властивості частково впорядкованих множин;

  • поняття, властивості та застосування функції Мебіуса;

  • основні алгебраїчні структури: групи, кільця, поля;

  • властивості груп;

  • основні приклади скінченних груп;

  • властивості підстановок;

  • основні приклади скінченних груп;

  • циклічні групи, поняття порядку елемента;

  • теорему Лагранжа;

  • поняття дії групи на множині, лему Бернсайда, теорему Пойа;

  • поняття кільця класів лишків;

  • поняття про скінченні поля;

  • теорему Ейлера, малу теорему Ферма;

  • китайську теорему про остачі;

  • основні поняття теорії інформації;

  • поняття про префіксні коди;

  • коди Шеннона-Фано та Хаффмана;

  • поняття про лінійні коди;

  • код Хеммінга та його властивості;

  • поняття та властивості ентропії.

вміти :

  • перевіряти властивості бінарних відношень;

  • будувати фактормножини за відношеннями еквівалентності;

  • будувати діаграми Хассе частково впорядкованих множин;

  • будувати функцію Мебіуса для частково впорядкованих множин;

  • перевіряти, чи є множина певною алгебраїчною структурою;

  • знаходити порядок елемента;

  • виконувати дії з підстановками;

  • застосовувати лему Бернсайда та теорему Пойа до розв’язання комбінаторних задач;

  • виконувати дії у кільці класів лишків та в скінченних полях;

  • досліджувати будову циклічних груп;

  • будувати коди Шеннона-Фано та Хаффмана;

  • досліджувати лінійні коли.

Основними завданнями вивчення дисципліни в 4 семестрі є оволодіння компетенціями щодо наступних понять та процесів:

  • моделювання та постановка транспортних задач;

  • класифікація логістичних задач;

  • теореми і алгоритми у розв’язуванні транспортних задач;

  • імовірнісні моделі систем і їх моделювання за допомогою ланцюгів Маркова;

  • теореми і алгоритми по дослідженню ланцюгів Маркова.

Заплановані результати навчання в 4 семестрі: всі компетенції щодо вмінь

  • складати математичні формалізації різний логістичних завдань;

  • застосовувати такі алгоритми як розподільний метод і метод потенціалів для вирішення транспортних задач;

  • програмно реалізовувати основні алгоритми в теорії транспортних задач на мовах високого рівня;

  • складати марковські ланцюги для моделювання випадкових процесів в реальних системах;

  • аналізувати типи станів і типи ланцюгів Маркова;

  • реалізовувати обчислювальні алгоритми для ланцюгів Маркова програмно.

Алгоритми і структури даних

Дисципліна викладається в 3 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: іспит.

Мета викладання навчальної дисципліни: надати компетенції щодо володіння базовими структурами даних та класичними алгоритмами сортування та пошуку.

Основні завдання вивчення дисципліни: оволодіти

  • технологією роботи з односпрямованими та двоспрямованими списками;

  • поняттям, класифікацією та способами застосування двійкових дерев;

  • поняттям та класифікацією абстрактних типів даних; з найпоширеними способами їх реалізації за допомогою структур даних прямого та послідовного доступу;

  • класичними методами пошуку даних та методами оцінювання їх трудомісткості;

  • класичними методами сортування даних та методами оцінювання їх трудомісткості.

Операційні системи

Дисципліна викладається в 3 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є формування у студентів базових знань та навичок щодо визначення операційних систем, їх типи та склад, принципи функціонування, особливості файлових систем, управляння пам’яттю, обслуговування ресурсів.

Заплановані результати навчання: студенти повинні

знати:

  • типи операційних систем та особливості їх використання;

  • поняття про склад операційних систем;

  • поняття про ядро та його завантаження;

  • поняття про переносимість програмних засобів.

  • поняття про головний планувальник та його склад;

  • поняття про стан виконуваного процесу та випадки його зміни;

  • поняття про планувальник пам’яті та його склад;

  • стратегії розподілу пам’яті між процесами та потоками.

  • поняття про планувальники загальних ресурсів та їх склад;

  • поняття про ресурси прямого та послідовного доступу;

  • поняття про статичні та динамічні стратегії обслуговуванні ресурсів.

вміти:

  • вибирати ту чи іншу операційну систему у залежності від типів завдань, які мають вирішуватися;

  • вірно використовувати складові операційних систем;

  • розробляти програмні продукти, які є максимально універсальними з точки зору використання різних операційних систем однакового типу;

  • визначати та змінювати пріоритети виконуваних процесів;

  • визначати та настроювати параметри розподілу пам’яті та тимчасових областей свопінгу;

  • розробляти програми планувальників загальних ресурсів;

  • розрізняти та вибирати оптимальні стратегії обслуговування ресурсів;

  • моделювати поведінку у часі випадкових процесів з використанням багато поточного програмування.

Об’єктно-орієнтоване програмування (мова С++)

Дисципліна викладається в 3 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: іспит.

Метою викладання навчальної дисципліни є формування у студентів базових знань та навичок зі структурного та об’єктно-орієнтованого програмування, а також для теоретичного обґрунтування цих знань та навичок.

Заплановані результати навчання: студенти повинні

знати:

  • визначення класу, його властивості та поведінку;

  • призначення конструкторів та деструкторів класу;

  • поняття інкапсуляції та засоби її досягнення;

  • поняття спадкування, його види;

  • поняття поліморфізму;

  • систему типів та операцій мови С++;

  • реалізацію базових понять ООП у мові С++;

  • множинне успадкування та його види;

  • засоби перевантаження операцій у мові С++;

  • шаблони класів та функцій, методи їх конструювання та використання;

  • потоки вводу виводу та особливості їх використання у мові С++.

вміти:

  • моделювати типи та об’єкти певної предметної області за допомогою класів;

  • застосовувати відкрите та закрите спадкування залежно від ситуації, що моделюються;

  • використовувати абстрактні класи та їх поліморфне використання;

  • застосовувати перевантаження операторів для обчислення виразів над об’єктами;

  • розробляти об’єктно орієнтовані системи нескладного характеру мовою С++;

  • розробляти об’єктно орієнтовані системи нескладного характеру на мові С++ з консольним інтерфейсом;

  • знаходити інформацію та використовувати необхідні класи бібліотек;

  • програмувати на рівні інтерфейсів та забезпечувати повторне використання коду;

  • використовувати композицію як засіб повторного використання коду;

  • використовувати класи потоків для реалізації вводу та виводу даних;

  • забезпечувати безпечне приведення типів за допомогою різних засобів;

  • вибирати оптимальні засоби реалізації концепцій та мову програмування у відповідності до задачі.

Об’єктно-орієнтоване програмування (мова Java)

Дисципліна викладається в 4 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень у семестрі.

Звітність: іспит.

Метою викладання навчальної дисципліни є формування у студентів базових знань та навичок зі структурного та об’єктно-орієнтованого програмування, а також для теоретичного обґрунтування цих знань та навичок.

Заплановані результати навчання: студенти повинні

знати:

  • особливості мови програмування Java;

  • використання базових понять ООП у Java;

  • система типів та операцій мови Java;

  • поняття інтерфейсу, внутрішнього класу, типи внутрішніх класів та задачі, що потребують їх використання;

  • основні пакети бібліотеки Java;

  • колекції Java;

  • потоки введення виведення та особливості їх використання у мові Java;

  • багатопоточне програмування та проблеми синхронізації потоків;

  • організація потоків у мові Java, забезпечення їх синхронізації та взаємодії;

  • механізм рефлексії та його застосування у мові Java.

вміти:

  • виконувати аналіз предметної області та будувати діаграми UML етапу аналізу за допомогою пакету Rational Rose для задач з не дуже складною бізнес-логікою;

  • виконувати проектування системи та будувати діаграми UML етапу проектування за допомогою пакету Rational Rose для задач з не дуже складною бізнес-логікою;

  • розробляти об’єктно орієнтовані системи нескладного характеру на мовах С++ або Java з консольним інтерфейсом;

  • знаходити інформацію та використовувати необхідні класи бібліотек;

  • програмувати на рівні інтерфейсів та забезпечувати повторне використання коду;

  • реалізувати множинне спадкування за допомогою внутрішніх класів;

  • використовувати композицію як засіб повторного використання коду;

  • використовувати класи потоків для реалізації вводу та виводу даних;

  • забезпечувати безпечне проведення типів за допомогою різних засобів;

  • вибирати оптимальні засоби реалізації концепцій та мову програмування у відповідності до задачі.

Математична логіка і мова Пролог

Дисципліна викладається в 4 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: іспит.

Метою викладання навчальної дисципліни є надання майбутнім фахівцям знань з математичної логіки теоретичних засад та навичок програмування мовою Пролог.

Заплановані результати навчання: студенти повинні

знати:

  • основні логічні операції та закони цих операцій;

  • основні поняття формули логіки висловлювань та їх властивості;

  • поняття диз’юнктивної та кон’юнктивної нормальних форм, теореми про їх існування;

  • поняття виводу формули;

  • основи числення висловлювань;

  • основні поняття логіки предикатів та їх властивості;

  • операції над предикатами та закони цих операцій;

  • поняття нормальної форми формули логіки предикатів;

  • основи числення предикатів;

  • поняття мови першого порядку, аксіоми мови першого порядку, поняття формули мови першого порядку;

  • поняття про сколемівську нормальну форму формули числення предикатів;

  • поняття універсума Ербрана та теорему Ербрана;

  • числення резолюцій та його зв'язок із мовою Пролог;

  • структури даних, структуру програми мови Пролог;

  • основні механізми роботи інтерпретатору Пролог;

  • стандартні підходи до програмування мовою Пролог.

вміти:

    • записувати математичні твердження за допомогою логічної символіки;

    • будувати таблиці істинності формул логіки висловлювань, доводити тотожності математичної логіки, будувати за формулами відповідні булеві функції;

    • будувати заперечення висловлювань та формул логіки висловлювань;

    • будувати ДНФ, СДНФ, КНФ, СКНФ формул логіки висловлювань;

    • спрощувати релейно-контактні схеми;

    • знаходити множини істинності предикатів;

    • доводити тотожності логіки предикатів;

    • знаходити нормальну форму формули логіки предикатів;

    • будувати виводи формул в численні висловлювань та численні предикатів;

    • розв’язувати логічні задачі мовою Пролог;

    • застосовувати стандартні підходи до програмування мовою Пролог у задачах.


Інформаційні мережи

Дисципліна викладається в 4 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: іспит.

Метою викладання навчальної дисципліни є дати студентам основні знання про комп’ютерні мережі, принципи і протоколи функціонування локальних і глобальних комп’ютерних мереж, навчити основним прийомам дослідження протоколів функціонування інформаційних мереж, дати практичні навички роботи з комп’ютерними мережами.

Заплановані результати навчання: студенти повинні

знати:

  • поняття про структуру комп’ютерних мереж;

  • поняття протоколу;

  • основні функції протоколів різних рівнів;

  • стек протоколів, архітектуру комп’ютерних мереж;

  • протоколи фізичного рівня;

  • характеристику лінійних сигналів, які використовуються в комп’ютерних мережах;

  • протоколи канального рівня HDLC, РРР та інші;

  • протоколи мережевого рівня;

  • методи і протоколи маршрутизації;

  • принципи адресації в IP–мережах;

  • принципи роботи протоколів транспортного рівня;

  • протоколи TCP, UDP;

  • протоколи локальних мереж;

  • протоколи Ethernet, Token Ring, FDDI;

  • протокол безпровідних мереж;

  • стандарт IEEE 802.11;

  • принципи функціонування протоколів прикладного рівня;

  • протокол передачі файлів FTP;

  • протоколи електронної пошти;

  • протоколи HTTP.

вміти:

  • користуватися мережними утилітами OC Windows;

  • користуватися мережними аналізаторами;

  • проводити дослідження ефективності протоколів різних рівнів;

  • працювати з протоколом доставки файлів FTP;

  • працювати з протоколом електронної пошти SMTP, POP-3, IMAP-4;

  • працювати з протоколом HTTP.

Вступ до SQL баз даних

Дисципліна викладається в 5 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: іспит.

Метою викладання навчальної дисципліни є формування у студентів базових знань та навичок з проектування, розробки та супроводження реляційних баз даних, а також для теоретичного обґрунтування цих знань та навичок.

Заплановані результати навчання: студенти повинні

знати:

  • загальні принципи архітектури баз даних;

  • загальні поняття теорії баз даних, призначення та основні можливості СУБД;

  • загальні принципи архітектури інформаційних систем, що використовують бази даних для зберігання інформації;

  • принципи побудови однотабличних та багатотабличних запитів;

  • типи зовнішнього з’єднання таблиць та їх особливості;

  • програмні конструкції Transact SQL.

вміти:

  • проводити аналіз предметної області;

  • розробляти концептуальну модель та логічну модель бази даних;

  • будувати запити на вибір даних та оновлення даних.

Диференціальні рівняння

Дисципліна викладається в 5 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: іспит.

Метою викладання навчальної дисципліни є надання майбутнім спеціалістам знань в галузі сучасної теорії диференціальних рівнянь та використання її методів при дослідженні прикладних задач.

Заплановані результати навчання: студенти повинні

знати:

  • умови існування та єдиності розв’язку;

  • умови існування непродовжуваних розв’язків;

  • методи інтегрування рівнянь першого порядку;

  • методи інтегрування лінійних рівнянь;

  • методи інтегрування лінійних систем диференціальних рівнянь;

  • умови стійкості за Ляпуновим розв’язку ДР, системи ДР.

вміти:

  • розв’язувати основні типи диференціальних рівнянь;

  • розв’язувати лінійні системи диференціальних рівнянь;

  • досліджувати стійкість розв’язків ДР та систем ДР.

Технології Web-програмування

Дисципліна викладається в 5 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є формування у студентів теоретичних знань і практичних навичок, спрямованих на розробку ефективних web-додатків з використанням сучасних засобів web-розробки.

Заплановані результати навчання: студенти повинні

знати:

  • основи функціонування World Wide Web;

  • мову гіпертекстової розмітки HTML;

  • технологію поділу вмісту та оформлення з використанням каскадних таблиць стилів CSS;

  • основи DHTML і об'єктної моделі документа (DOM).

вміти:

  • створювати статичні HTML-сторінки і застосовувати таблиці стилів;

  • створювати клієнтські скрипти на мові javascript;

  • мати уявлення про технології на основі розширюваної мови розмітки XML;

  • застосовувати отримані знання для розробки веб-сайтів.

Декларативне програмування (функціональні мови)

Дисципліна викладається в 5 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є формування у студентів цілісного уявлення про функціональну парадигму програмування.

.

Заплановані результати навчання: студенти повинні оволодіти компетенціями щодо

  • розуміння різниці між імперативною і декларативною парадигмами програмування;

  • знання теоретичної моделі функціонального програмування;

  • вміння використовувати лямбда-числення як модель функціональної програми;

  • вміння застосовувати в практичних задачах основні конструкції мови Scala.

Теорія ймовірностей та її застосування

Дисципліна викладається в 5 та 6 семестрах.

Навантаження: 2 години лекцій та 2 години практики на тиждень у кожному семестрі.

Звітність: іспити в обох семестрах.

Метою викладання навчальної дисципліни є ознайомлення студентів з основними задачами та методами теорії ймовірностей, вивчення основних положень, формул, та правил теорії ймовірностей, оволодіння основними розподіленнями випадкових величин, які виникають у прикладних задачах, забезпечення студентів матеріалом і апаратом необхідними для вивчення подальших дисциплін, надання уявлення про проблеми теорії інформації, теорії масового обслуговування, теорії черг, що розв’язуються ймовірними методами. У 6 семестрі метою курсу є ознайомлення студентів з теоретичними основами та практичними аспектами стохастичного моделювання, прикладними областями, в яких застосовуються стохастичні та ймовірнісні моделі та отримання навичок практичної побудови і використання таких моделей.

Заплановані результати навчання у 5 семестрі: студенти повинні

знати:

  • визначення випадкової події та її ймовірності, властивості ймовірної події;

  • визначення випадкової величини;

  • методи обчислення ймовірності;

  • методи обчислення числових характеристик випадкових величин;

  • основні випадкові величини, що виникають у прикладних задачах та їх властивості.

вміти:

  • виконувати безпосереднє обчислення ймовірностей випадкових подій та за допомогою їх властивостей використовувати випадкові величини у різноманітних практичних задачах;

  • обчислювати числові характеристики випадкових величин,

  • використовувати основні розподіли у конкретних задачах.

Заплановані результати навчання у 6 семестрі: студенти повинні

знати:

  • властивості основних видів випадкових процесів та потоків;

  • методи оцінювання параметрів та характеристик випадкових процесів.

вміти:

  • застосовувати отримані знання та методології при дослідженні випадкових явищ та процесів.

Теорія і методи проектування реляційних баз даних

Дисципліна викладається в 6 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: іспит.

Метою викладання навчальної дисципліни є формування у студентів базових знань та навичок з проектування, розробки та супроводження реляційних баз даних, а також для теоретичного обґрунтування цих знань та навичок.

Заплановані результати навчання: студенти повинні

знати:

  • поняття аномалії;

  • принципи та основні етапи нормалізації баз даних

  • поняття 1НФ, 2НФ, 3НФ, 4НФ, нормальної форми Бойся-Кодда, 5НФ;

  • функціональні та многозначні залежності;

  • математичні основи теорії проектування баз даних;

  • загальні принципи архітектури інформаційних систем, що використовують бази даних для зберігання інформації.

вміти:

  • визначити наявність нормальних форм в існуючій базі даних;

  • проводити нормалізацію бази даних;

  • розробляти ПЗ, що використовує бази даних для зберігання інформації.

Вступ до програмування паралельних процесів

Дисципліна викладається в 6 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є формування у студентів базових знань та навичок з проектування та розробки багатопоточних програм.

Заплановані результати навчання: студенти повинні

знати:

  • поняття потоку;

  • принципи та основні етапи розпаралелювання алгоритмів;

  • поняття м’ютекса, критичної секції, блокування dead-lock;

  • математичні основи розпаралелювання алгоритмів;

  • загальні принципи архітектури додатків, що використовують паралельні процеси.

вміти:

  • визначати кількість максимально можливих потоків;

  • розробляти та реалізовувати потокобезпечні структури даних та алгоритми.

Методи оптимізації і дослідження операцій

Дисципліна викладається в 6 та 7 семестрах.

Навантаження: 2 години лекцій та 2 години практики на тиждень у кожному семестрі.

Звітність: іспити в обох семестрах .

Метою викладання навчальної дисципліни є навчання майбутніх спеціалістів методам моделювання та аналізу моделей, основним засадам абстрактної теорії векторної оптимізації, включаючи абстрактну проблему оптимального вибору, лінійні впорядковані простори та правила порівняння, простори з конусом, геометричні критерії оптимальності, скаляризацію векторних проблем.

Заплановані результати навчання: студенти повинні

знати:

  • постановку задачі на безумовний екстремум у скінченновимірному просторі;

  • постановку задачі на умовний екстремум у скінченновимірному просторі;

  • постановку задачі математичного програмування у скінченновимірному просторі та метод множників Лагранжа;

  • методи розв’язання задачі лінійного програмування;

  • методи розв’язання транспортної задачі;

  • методи оптимізації потоків у транспортних мережах;

  • теоретичні засади аналізу багатокритеріальних систем.

вміти:

  • розв’язувати задачі на безумовний екстремум;

  • застосовувати метод множників Лагранжа до розв’язання екстремальних задач;

  • застосовувати алгоритм симплекс-методу розв’язання задачі лінійного програмування;

  • застосовувати алгоритми розв’язання транспортної задачі;

  • знаходити максимальні потоки у транспортних мережах;

  • знаходити оптимальні розв‘язки в абстрактних впорядкованих просторах.

Методи розробки графічного інтерфейсу

Дисципліна викладається в 6 семестрі.

Навантаження: 1 година лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є надання компетенції щодо володіння правилами та принципами розробки практичного інтерфейсу користувача.

Заплановані результати навчання: всі компетенції щодо володіння

  • правилами та принципами розробки практичного інтерфейсу користувача;

  • поняттям архітектури інтерфейсу користувача та способами її проектування;

  • поняттям та використанням MVC моделі при розробці програм з графічним інтерфейсом;

  • технологіями розробки графічного інтерфейсу у різних середовищах.

Вступ до математичної статистики

Дисципліна викладається в 7 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: іспит.

Метою викладання навчальної дисципліни є ознайомлення студентів з основами, задачами та методами математичної статистики, а саме, з задачами оцінювання невідомих параметрів генеральної сукупності, побудова вибіркових функцій розподілу, перевірка статистичних гіпотез за допомогою критеріїв узгодження Пірсона, Колмогорова, правила Романовського, ознайомлення з кореляційним та регресійним аналізом, з поняттям випадкових процесів та послідовностей, з кореляційною теорією, зі стаціонарними випадковими процесами і послідовностями та їх застосуванням у задачах інформатики.

Заплановані результати навчання: студенти повинні

знати:

  • основні поняття, терміни, методи математичної статистики;

  • методи оцінювання невідомих параметрів генеральної сукупності;

  • основні критерії узгодження статистичних гіпотез;

  • основні методи кореляційного та регресійного аналізу;

  • основні поняття теорії випадкових процесів і послідовностей;

  • основи теорії стаціонарних випадкових процесів та послідовностей;

  • основи теорії марківських процесів та процесів з незалежними приростами.

вміти:

  • використовувати методи математичної статистики для обробки експериментальних даних;

  • використовувати теорію випадкових процесів та послідовностей для вирішення задач теоретичної та прикладної інформатики;

  • знаходити оптимальні рішення для моделювання фізичних та природних явищ з використанням методів теорії випадкових функцій;

  • зборати експериментальні дані та їх обробляти;

  • будувати математичні моделі для вивчення випадкових процесів;

  • вибирати алгоритми для комп’ютерного моделювання випадкових процесів.

Шаблони об’єктно-орієнтованого програмування

Дисципліна викладається в 7 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: іспит.

Метою викладання навчальної дисципліни є надання компетенції щодо принципів, методів та шаблонів проектування об’єктно-орієнтованих систем.

Заплановані результати навчання: студенти повинні

знати:

  • основні стадії процесу розробки ПО;

  • типові case – технології, що підтримують процеси аналізу та проектування ПО;

  • призначення та концепція мови UML;

  • статичні й динамічні моделі ПО та засоби їх запису мовою UML;

  • концепція багаторівневої архітектури доданку та MVC модель;

  • поняття шаблону проектування, призначення та класифікацію шаблонів;

  • призначення, типи, критерії та правила застосування породжуючих шаблонів;

  • призначення, типи, критерії та правила застосування структурних шаблонів;

  • призначення, типи, критерії та правила застосування шаблонів поведінки;

  • порівняна характеристика та механізми взаємодії шаблонів;

  • поняття та призначення каркасу доданку;

  • принципи командної роботи.

вміти:

  • виконувати аналіз предметної області та конструювати концептуальну модель за допомогою сучасних case-технологій;

  • будувати статичні та динамічні моделі інформаційної системи за допомогою діаграм UML;

  • застосовувати необхідні шаблони на всіх рівнях проектування доданку;

  • забезпечувати повторне використання знайдених рішень;

  • використовувати трирівневу архітектуру доданку та модель MVC;

  • створювати програмну реалізацію рівня логіки доданку;

  • вибирати інструментальні засоби розробки ПО відповідно до особливостей задачі;

  • використовувати класи та функції існуючих бібліотек для створення ефективного коду;

  • працювати в команді.

Паралельні та розподілені обчислення

Дисципліна викладається в 7 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: іспит.

Метою викладання навчальної дисципліни є ознайомлення студентів з основними методами паралельної обробки даних і їх впливом на технічні показники паралельних обчислювальних систем; основними принципами побудови та функціонування сучасних паралельних обчислювальних моно- та мультисистем; специфікою числової специфікації та візуалізації паралельних часових моделей, сучасними технологіями програмування.

Заплановані результати навчання: студенти повинні

знати:

  • методи паралельної обробки даних;

  • паралельні алгоритми;

  • паралельні процеси;

  • показники ефективності паралельної реалізації алгоритмів та програм;

  • принципи побудови та архітектури сучасних паралельних обчислювальних моно- та мульти-систем.

вміти:

  • формувати підходи до свідомого застосування методів автоматизованої розробки програмного забезпечення паралельних обчислювальних систем;

  • складати числові специфікації паралельних програм, оцінювати показники їх ефективності, візуалізувати паралельні статичні і динамічні об’єкти.

Вступ до штучного інтелекту

Дисципліна викладається в 8 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: іспит.

Метою викладання навчальної дисципліни є ознайомлення студентів з основними закономірностями і сучасними методами штучного інтелекту, зі способами пошуку рішень в просторі рішень.

Заплановані результати навчання: студенти повинні

знати:

  • історію розробки штучного інтелекту;

  • філософські питання, сучасні проблеми штучного інтелекту, основні визначення штучного інтелекту;

  • принципи моделювання предметних областей;

  • роль евристики;

  • проблему простору пошуку;

  • загальні алгоритми пошуку;

  • алгоритми розв’язання ігор;

  • основні типи представлення знань та міркувань;

  • загальну структуру інтелектуальних систем.

вміти:

  • реалізовувати алгоритми пошуку в просторі станів;

  • реалізовувати основні типи представлення знань;

  • програмувати сучасними мовами штучного інтелекту.


Дисципліни за вибором

Вступ до програмування на платформі .NET

Дисципліна викладається в 2 семестрі.

Навантаження: 3 години лекцій та 3 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є формування базових знань і навичок у галузі технології візуального та об'єктно-орієнтованого програмування на платформі NET.

Заплановані результати навчання: студенти повинні

знати:

  • теоретичні основи програмування мовою C#;

  • технологію програмування у візуальних і об'єктно-орієнтованих програмних середовищах;

  • основні поняття подієво-керованого програмування для ОС Windows.

вміти:

  • розробляти інтерфейс користувача із застосуванням найпростіших елементів управління у візуальній інтегрованому середовищі проектувальника;

  • працювати в середовищі візуального об'єктно-орієнтованого програмування C# (створення проекту, складання, налагодження і тестування програм; розробка і використання об'єктів).

  • застосовувати методи і технології структурного та візуального програмування при вирішенні професійних завдань обробки інформації на мові програмування C#.

Вступ до мови програмування Python

Дисципліна викладається в 2 семестрі.

Навантаження: 3 години лекцій та 3 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є надання компетенції щодо володіння базовими поняттям та структурами даних мови програмування Python.

Заплановані результати навчання: всі компетенції щодо володіння

  • базовими поняттями програмування та їх реалізацією у мові програмування Python;

  • класифікацією та принципами роботи зі структурами даних; рядками, кортежами, списками, словниками;

  • методами роботи з файлами;

  • поняттям виключення та його застосуванням у мові програмування Python.

Програмування мовою Python

Дисципліна викладається в 3 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є ознайомлення з мовою прикладного програмування Python та її науковими бібліотеками SciPY, NumPy, MatplotLib.

Заплановані результати навчання: студенти повинні

знати:

  • методику побудови програм в середовищі Python;

  • головні конструкції мови програмування Python;

  • способи доступу до функцій наукових бібліотек SciPY, NumPy, MatplotLib;

вміти:

  • розв’язувати типові задачі програмування за допомогою операторів мови Python;

  • обробляти масиви даних різних типів;

  • створювати пакети розширення;

  • будувати графіки;

  • виконувати чисельні розрахунки в середовищі Python;

  • виконувати символьні математичні обчислення в середовищі Python.

Теорія обчислюваності

Дисципліна викладається в 3 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є надання майбутнім фахівцям знань з теорії обчислюваності.

Заплановані результати навчання: студенти повинні

знати:

  • основні поняття теорії обчислюваності: моделі обчислень – машина Тюрінга, машина з необмеженими регістрами, частково рекурсивні функції;

  • метод нумерації Геделя;

  • теорему про універсальний алгоритм;

  • поняття розв’язності, напіврозв’язності та нерозв’язності;

  • поняття класів розв’язності Тюрінга;

  • методи доведення розв’язності та нерозв’язності проблем;

  • поняття складності обчислень та визначення класів складності P, NP.

вміти:

  • будувати прості алгоритми в термінах різних моделей обчислень;

  • обчислювати гедельові номери конструктивних об’єктів та будувати конструктивні об’єкти за геделевими номерами;

  • встановлювати розв’язність або нерозв’язність типових проблем;

  • оцінювати складність простих алгоритмів.

Алгоритми обчислювальної геометрії

Дисципліна викладається в 4 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є ознайомлення студентів з основами, задачами та математичними методами обчислювальної геометрії, а саме, з геометричними перетвореннями на площині і у просторі, з різними методами побудови опуклої оболонки як на площині так і в багатовимірному просторі, знаходженням навчальної опуклої оболонки, підтримкою опуклої оболонки, алгоритмами локалізації точки, методами триангуляції та побудови діаграм Вороного.

Заплановані результати навчання: студенти повинні

знати:

  • основні поняття, терміни, методи обчислювальної геометрії;

  • методи обчислення опуклої оболонки на площині та у просторі;

  • методи наближеного обчислення опуклої оболонки та її підтримки;

  • основні алгоритми локалізації точки;

  • основні методи побудови триангуляції поверхонь;

  • основні поняття, терміни та методи побудови діаграм Вороного.

вміти:

  • використовувати математичні методи для побудови кривих та поверхонь, для проектування і комп’ютерної побудови тривимірних реалістичних сцен;

  • використовувати рухи, афінні перетворення та проекції просторових об’єктів для побудови тривимірної графіки;

  • використовувати алгоритми опуклої оболонки на площині та у просторі;

  • використовувати алгоритми локалізації точки;

  • виконувати триангуляцію поверхонь та будувати діаграми Вороного.

Теорія автоматів

Дисципліна викладається в 4 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є ознайомлення студентів з сучасними проблемами теорії автоматів як теоретичної бази вивчення дискретних, в тому числі програмних, систем.

Заплановані результати навчання: студенти повинні оволодіти компетенціями щодо

  • розуміння загальних системних понять: система, її оточення, класифікація систем;

  • розуміння концепції «чорної скриньки» як зовнішньої специфікації системи;

  • розуміння сутності і формального визначення відсутності передчуття для чорної скриньки з синхронним перехідним відношенням;

  • розуміння поняття реакції чорної скриньки з синхронним перехідним відношенням;

  • розуміння моделі автомата, як найпростішої моделі системи з пам’яттю;

  • розуміння процесу синтезу автомата за перехідною функцією;

  • вміння проводити процес синтезу автомата;

  • розуміння обмеженості автоматної моделі для формального опису систем обробки складних подій;

  • знання основних понять теорії передавтоматів.

Програмування мовою С#

Дисципліна викладається в 4 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є формування системи понять, знань, умінь і навичок у галузі сучасного програмування мовою C#, що включає методи проектування, аналізу та створення програмних продуктів, засновані на використанні можливостей платформи NET. Навчити студентів застосувати сучасні інтегровані інструментальні середовища, призначені для розробки програм в інтерактивному режимі. Закласти основи наступних курсів, присвячених створенню сучасних інформаційних систем.

Заплановані результати навчання: студенти повинні

знати:

  • базові типи та основні операції;

  • основи програмного доступу до реляційних даних; особливості структур та перерахувань як значущих типів;

  • принципи роботи керованого коду в .Net; синтаксис визначення методів та їх параметрів.

вміти:

  • застосовувати мову інтегрованих запитів (LINQ);

  • створювати та застосовувати ітератори у завданнях обробки колекцій даних;

  • використовувати процедурну парадигму на вирішення задач;

  • використовувати різні структури даних (стек, черга, словник, список) на вирішення практичних задач;

  • застосовувати умовні оператори та оператори циклів;

  • проектувати програми на основі Windows Forms; вирішувати задачі із використанням масивів.


Теорія інформації та кодування

Дисципліна викладається в 5 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є ознайомлення студентів з основними закономірностями і сучасними методами завадозахистної передачі інформації каналами зв’язку, зі способами математичного опису повідомлень, сигналів і завад, методами формування і перетворення сигналів у каналах передачі даних, аналізом їхніх інформаційних характеристик, завадостійкого кодування й оптимального прийому повідомлень.

Заплановані результати навчання: студенти повинні

знати:

  • методику оцінки кількості інформації та ентропії;

  • методику визначення пропускної спроможності каналів зв’язку без завад та з завадами;

  • методику узгодження пропускної спроможності каналів зв’язку з інформаційною спроможністю джерела інформації;

  • методи стиску інформації;

  • математичний опис процесів кодування та декодування;

  • методи кодування інформації.

вміти:

  • оцінювати інформаційні спроможності джерел інформації;

  • самостійно вивчати нові методики оцінки ефективності елементів АСУ структурувати задачу за допомогою функцій;

  • кодувати інформацію найбільш поширеними кодами;

  • за допомогою апаратних та програмних засобів досліджувати характеристики кодів, а також встановлення їхньої відповідності нормативним значенням або вдосконалення;

  • оцінювати тенденції розвитку телекомунікаційних технологій у світі та ступінь впровадження в них основних досягнень теорії зв’язку;

  • науково обґрунтовано вибирати оптимальні або раціональні параметри сигналів, методи їх обробки та алгоритмі передачі та прийому при проектуванні або при аналізі якості телекомунікаційних систем чи їх фрагментів.

Математичні основи комп’ютерної графіки

Дисципліна викладається в 5 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є ознайомлення студентів з основами, задачами та математичними методами комп’ютерної графіки, а саме, з геометричними перетвореннями на площині і у просторі, з побудовами плоских проекцій просторових тіл, з використанням алгебри кватерніонів у геометричних перетвореннях, з використанням сплайнових кривих та поверхонь для побудови плоских і просторових фігур, з алгоритмами видалення схованих ліній та поверхонь, з математичними методами комп’ютерної анімації, з математичними засадами фрактальної графіки.

Заплановані результати навчання: студенти повинні

знати:

  • основні поняття, терміни, методи комп’ютерної графіки;

  • методи побудови плоских проекцій просторових фігур;

  • основні алгоритми видалення схованих кривих та поверхонь;

  • основні методи побудови сплайнових кривих та поверхонь;

  • основні поняття, терміни, методи комп’ютерної анімації;

  • основні математичні та алгоритмічні методи побудови фрактальних структур.

вміти:

  • використовувати математичні методи для побудови кривих та поверхонь, для проектування і комп’ютерної побудови 3-D реалістичних сцен, для створення комп’ютерної анімації;

  • використовувати алгоритми схованих ліній та поверхонь;

  • використовувати плоскі проекції просторових об’єктів для побудови 3-D графіки;

  • використовувати алгоритми побудови простих фрактальних структур;

  • володіти навичками математичного моделювання 2- і 3-вимірних об’єктів; навичками використання математичних методів для створення анімаційних проектів; навичками вибору алгоритмів для комп’ютерного моделювання реалістичних сцен.

Об’єктно-орієнтоване програмування мовою Python

Дисципліна викладається в 6 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є надання компетенції щодо володіння об’єктно-орієнтовним підходом, реалізованим у мові програмування Python.

Заплановані результати навчання: всі компетенції щодо володіння

  • поняттям динамічної типізації мови Python;

  • реалізацією у мові Python базових понять об’єктно-орієнтованої парадигми програмування;

  • специфікою використання класів у мови Python;

  • механізмами інтроспекції та рефлексії;

  • додатковими можливостями мови Python та їх застосуванням у прикладних задачах.

Об’єктно-орієнтоване програмування мовою С#

Дисципліна викладається в 6 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є формування у студентів уявлення про напрямок розвитку індустріальних платформ програмування для побудови великих корпоративних програмних систем і про компонентно-орієнтованої парадигми програмування.

Заплановані результати навчання: студенти повинні

знати:

  • технології ООП і методи організації взаємодії в програмних системах, забезпечення інформаційної безпеки, розширюваності і супроводу програмних рішень, що надаються платформою .Net.

вміти:

  • зробити порівняльний аналіз і обґрунтувати вибір технологій і шаблонів платформи для побудови програмної системи;

  • визначити умови і обмеження застосовності різних технологій і методів платформи .Net в залежності від специфіки програмного проекту;

  • використовувати технології ООП і шаблони платформи .Net для побудови програмних систем.

Поглиблене функціональне програмування мовою Scala

Дисципліна викладається в 6 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є показати зв’язок між теоретичними основами функціонального програмування і λ-числення та практичними методами створення сучасного програмного забезпечення; протиставити фундаментальні математичні основи (алгебри, логіки першого порядку, теорії категорій тощо) загальновідомим патернам (шаблонам) проєктування; показати зв'язок між фундаментальними шаблонами створення програмного забезпечення в Scala з іншими функціональними мовами (наприклад Haskell, функціональними частина Kotlin та TypeScript) та широко розповсюдженими не функціональними мовами (такими як Java, JavaScript, Python).

Заплановані результати навчання: студенти повинні

знати:

  • теоретичні основи функціонального програмування, зв’язок з λ-численням;

  • фундаментальні математичні структури, які є невід'ємною частиною програм, створених на функціональних мовах;

  • базові принципи створення сучасного програмного забезпечення мовою Scala;

вміти:

  • створювати блоки коду мовою Scala, які описують бізнес-логіку та не залежать від низькорівневої імплементації (обробників помилок, систем вводу-виводу, організації асинхронного та розподіленого процесингу алгоритмів та даних);

  • підміняти низькорівневу імплементацію без переробки блоків коду, що відповідають за бізнес-логіку;

  • переносити вищезазначені принципи на інші мови програмування загального призначення (де це можливо);

  • дотримуватись стандартів корпоративної розробки програмного забезпечення з використанням сучасних підходів (таких як, code style; розгортання проєктів із системою керування версіями; системами управління залежностями від зовнішніх модулів і компонентів та збірки програм; проходження code review тощо) та технологій (систем керування версіями Git; використання найбільшого веб-сервісу GitHub для хостингу проєктів та їх спільної розробки; створення так званих pull-requests тощо).

Математичні методи обробки зображень

Дисципліна викладається в 7 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є систематичний огляд сучасних математичних методів обробки та аналізу зображень.

Заплановані результати навчання: студенти повинні

знати:

  • способи представлення цифрових монохромних та кольорових зображень;

  • алгебраїчні методи обробки цифрових зображень;

  • методи обробки зображень в частотній зоні.

вміти:

  • виконувати перетворення яскравості та просторову фільтрацію монохромних зображень;

  • розв’язувати типові задачі відновлення та покращення кольорових зображень;

  • обробляти зображення в частотній зоні;

  • використовувати функції пакету Image Processing Toolbox Matlab для обробки та відновлення зображень.

Вступ до Java-технологій розробки веб-застосувань

Дисципліна викладається в 7 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є ознайомлення студентів з існуючими інструментами J2EE, призначеними для розробки веб-застосувань.

Заплановані результати навчання: студенти повинні

знати:

  • основні поняття та компоненти веб-застосувань в термінах J2EE;

  • методи взаємодії веб-застосувань з базами даних;

  • методи реалізації шаблону MVC.

вміти:

  • створювати прості веб-застосунки, використовуючи інструменти J2EE;

  • використовувати методи автентифікації та авторизації у веб-додатках.

Теорія та методи розробки компіляторів для DSL

Дисципліна викладається в 7 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є ознайомлення студентів з теорією і технологією побудови компіляторів для предметно-орієнтованих мов.

Заплановані результати навчання: студенти повинні

знати:

  • поняття теорії формальних мов і теорії компіляції;

  • методи лексичного і синтаксичного аналізу з докладним вивченням методів синтаксичного аналізу розгорткою;

  • методи синтаксично керованої трансляції.

вміти:

  • використовувати форми Бекус-Наура для специфікації синтаксису формальної мови;

  • використовувати програмні інструменти для побудови лексичних аналізаторів;

  • проводити синтаксичний аналіз на основі методу лівого рекурсивного спуску;

  • використовувати програмні інструменти для побудови синтаксичних аналізаторів;

  • використовувати програмні інструменти для побудови синтаксично-керованих трансляторів.

Технології автоматизованого тестування програмних систем

Дисципліна викладається в 7 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є ознайомлення студентів з основними технологіями тестування програмних систем та основами автоматизованого тестування програмних систем, формування у студентів стійкі теоретичні знання та практичні навички у області забезпечення якості програмних систем, використання засобів автоматизованого тестування програмних продуктів, які реалізують керування процесом забезпечення якості програмних продуктів.

Заплановані результати навчання: студенти повинні

знати:

  • основні поняття забезпечення якості програмних систем, які функціонують у розподіленому інформаційному середовищі;

  • принципи аналізу та тестування проектної і продуктової документації;

  • принципи проектування та розробки тестових випадків та тестових сценаріїв;

  • процес виконання тестових випадків і документування виявлених дефектів;

  • принципи автоматизації тестування програмних продуктів та додатків.

вміти:

  • проводити аналіз технічної документації, виявляти та виправляти дефекти у документації;

  • проектувати, розробляти та виконувати тестові випадки і тестові сценарії;

  • документувати виявлені дефекти, управляти життєвим циклом звітів про виявлені дефекти;

  • використовувати засоби автоматизації тестування програмних продуктів.

Сучасні методології розробки програмного забезпечення

Дисципліна викладається в 7 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є ознайомлення студентів з методологіями розробки програмного забезпечення, відповідно до особливостей життєвого циклу програмних продуктів - гарантування реалізації проекту розробки програмного забезпечення в заданий термін із заданим бюджетом і високою якістю.

Заплановані результати навчання: студенти повинні

знати:

  • моделі життєвого циклу програмного забезпечення;

  • методології які використовують для розробки програмного забезпечення;

  • особливості організації роботи в командах розробників, відповідно до обраної методології;

вміти:

  • використовувати набуті знання для формування команд розробників, розподіляти ролі;

  • організовувати роботу в командах, відповідно до обраної методології розробки;

  • навички роботи з програмним забезпеченням необхідним для підтримки процесу розробки програмного забезпечення.


Багатопоточне програмування та розробка веб-додатків на платформі NET

Дисципліна викладається в 7 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Основна увага в даному курсі зосереджена на вивченні об'єктно-орієнтованого програмування на мові C# для розробки багатопотокових програм та веб-додатків. Це дозволяє познайомити студентів із основними прийомами розробки сучасного програмного забезпечення з використанням об'єктно-орієнтованого підходу та відповідними практичними навичками.

Мета освоєння дисципліни - надати студентам знання та відповідні практичні навички щодо основних методів розробки сучасного програмного забезпечення з використанням об'єктно-орієнтованого підходу при розробці багатопотокових програм та веб-додатків.

Заплановані результати навчання: студенти повинні

знати:

  • можливості C#, пов'язані з об'єктно-орієнтованим програмуванням;

  • можливості платформи .NET для створення веб-додатків знати патерни проектування: архітектурні, поведінкові;

  • поняття та принципи багатопоточності та паралельне програмування на C#;

  • мову запитів до джерела даних LINQ; мати практичні навички використання LINQ при створенні програм Visual Studio;

вміти:

  • використання на C# патернів проектування;

  • використання технології WPF для створення графічних програм;

  • створення багатопотокових додатків та використання механізмів синхронізації потоків;

  • створення програм з використанням ООП на C#.


Теорія автоматів і кіберфізичні системи

Дисципліна викладається в 8 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є ознайомлення студентів з основними проблемами, що виникають при розробці кібер-фізичних систем.

Заплановані результати навчання: оволодіння компетенціями щодо

  • розуміння ролі кібер-фізичних систем у сучасній техніці;

  • розуміння колективної поведінки компонентів системи;

  • розуміння архітектури обміну повідомленнями як основного механізму підтримки цілісності поведінки кібер-фізичних систем;

  • вміння використовувати різні методи моделювання систем для специфікації обмежень причинності в кібер-фізичних системах;

  • розуміння концепції логічного часу для кібер-фізичних систем.

Вступ до числових методів

Дисципліна викладається в 8 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є допомога студентам засвоїти основні числові методи розв’язання математичних задач та особливості їх застосування.

Заплановані результати навчання:

знати:

  • методи наближених обчислювань;

  • основні класи задач обчислювальної математики;

  • методи та алгоритми їх розв’язку;

  • методи чисельного розв’язання алгебраїчних рівнянь та систем;

  • методи наближення функцій;

  • методи інтерполяції та екстраполяції даних;

  • методи чисельного диференціювання та інтегрування;

  • чисельні методи розв’язання задачі Коші;

  • методи аналізу задач з точки зору точності, умов сходження методів та стійкості алгоритму.

вміти:

  • виконувати розрахунки з використанням наближених величин;

  • чисельно розв'язувати алгебраїчні рівняння та системи методами ділення навпіл, ітерацій та Ньютона, методом хорд;

  • наближувати функції інтерполяційними багаточленами у формі Лагранжа та Ньютона, ортогональними багаточленами, сплайнами;

  • застосовувати інтерполяційні формули чисельного диференціювання та чисельного інтегрування, квадратурні формули;

  • розв'язувати задачу Коші чисельними методами, визначати стійкість розв’язку;

  • розробляти алгоритми та програми реалізації чисельних методів;

  • використовувати пакети обчислювальної математики.

Використання штучного інтелекту для обробки даних великого обсягу

Дисципліна викладається в 8 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є оволодіння сучасними методами та інструментами обробки структурованих та неструктурованих даних.

Заплановані результати навчання:

знати:

  • архітектури нейронних мереж для таких задач, як сегментація зображень, виявлення зображень, анотування текстів, сегментний аналіз, класифікація даних ( image segmentation, image detection, text annotations, sentiment analysis, data classification);

  • основні методи обробки структурованих і неструктурованих зображень та текстів;

  • методи оптимізації (градієнтний спуск та його модифікації);

  • функції активації та метрики вимірювання якості алгоритму;

  • методи регуляризації моделей.

вміти:

    • використовувати методи обробки структурованих і неструктурованих зображень та текстів та методи оптимізації;

    • працювати з фреймворками: Pytorch, Pandas, NLTK;

    • підготовлювати вхідні дані для моделей, а саме: обробка зображень, текстів (text to vector, word to vector), структурованих даних (нормалізація);

    • застосовувати методи регулярізації для боротьби з перенавчанням моделей, методів оптимізації;

    • оцінювати якість моделей на основі метрик якості, таких як precision, recall, f1 score, perplexity, coherence, accuracy тощо.


Аналітичні методи геометричного моделювання

Дисципліна викладається в 8 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є навчання майбутніх спеціалістів методам математичного опису елементів складної геометричної форми, а також сучасним методам моделювання кривих, поверхонь та інших геометричних об’єктів на комп’ютері.

Заплановані результати навчання: студенти повинні

знати:

  • основні класичні результати теорії сплайнів, методи їх аналітичного опису та застосування до моделювання кривих та поверхонь;

  • основи теорії R – функцій та її геометричні прикладання для побудови неявних рівнянь кривих та поверхонь;

  • способи побудови рівнянь неперервних кускових функцій та їх застосування до розв’язання обернених задач аналітичної геометрії;

  • способи побудови параметричних рівнянь кусково заданих кривих та поверхонь.

вміти:

  • будувати рівняння сплайнів;

  • розв’язувати задачі інтерполяції за допомогою сплайнів;

  • будувати неявні та параметричні рівняння багатокутників та багатогранників;

  • будувати параметричні рівняння кусково заданих кривих та поверхонь;

  • будувати графіки кривих та поверхонь по їх рівнянням в сучасних математичних програмних системах.

Розробка веб-застосувань мовою Java

Дисципліна викладається в 8 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є оволодіння сучасними технологіями та програмними засобами розробки веб-застосувань мовою Java, формування у студентів стійких теоретичних знань та практичних навичок у галузі розробки веб-застосунків.

Заплановані результати навчання: студенти повинні

знати:

    • основні поняття та протоколи передачі даних у мережі;

    • принципи побудови архітектури веб-додатків;

    • процес обробки http-запитів;

    • основні поняття мікросервісної архітектури.

вміти:

  • проектувати та розробляти веб-додатки мовою java;

  • розгортати та налаштовувати контейнери сервлетів (веб-сервери)

  • використовувати засоби об’єктно-реляційного відображення;

  • створювати веб-додатки з мікросервісною архітектурою.

Методи управління комп’ютерними мережами

Дисципліна викладається в 8 семестрі.

Навантаження: 2 години лекцій та 2 години практики на тиждень.

Звітність: залік.

Метою викладання навчальної дисципліни є дати основні знання про управління комп’ютерними мережами, принципи і протоколи управління ресурсами локальних і глобальних комп’ютерних мереж. Навчити основним прийомам дослідження протоколів управління комп’ютерних мереж. Дати практичні навички роботи з протоколами управління комп’ютерними мережами.

Заплановані результати навчання: студенти повинні

знати:

  • поняття про управління комп’ютерними мережами;

  • міжнародна система управління комп’ютерними мережами;

  • комп’ютерна мережа як об’єкт управління;

  • основні принципи управління комп’ютерними мережами;

  • показники ефективності комп’ютерних мереж;

  • алгоритм прийняття рішень по управлінню комп’ютерними мережами;

  • архітектура системи управління комп’ютерних мереж;

  • функціональні групи задач управління комп’ютерними мережами;

  • структури розподілених систем управління комп’ютерними мережами;

  • функції протоколів різних рівнів;

  • управління трафіком в комп’ютерних мережах;

  • принцип побудови інформаційної бази даних мережевих пристроїв;

  • принципи функціонування сучасних протоколів управління комп’ютерними мережами;

  • протокол CMIP;

  • протокол Netconf;

  • протокол SNTP.

вміти:

  • користуватися мережними утилітами OC Windows;

  • користуватися програмою моделювання комп’ютерних мереж CISCO packet tracer;

  • користуватися мережними аналізаторами;

  • проводити дослідження ефективності протоколів різних рівнів;

  • працювати з протоколом Netconf;

  • працювати з протоколом SNTP.