DevioLab CRYPTO TRADING AUTOMATION
LIVE
AUTOMATED CRYPTO TRADING • BINANCE
Автоматизуйте свій криптопортфель
Торгові боти DevioLab аналізують крипторинок, автоматично відкривають і закривають позиції та керують вашим портфелем на Binance 24/7.
CRYPTO 80 Bots
BINANCE Spot Trading
TRADING 24 / 7
Спробувати DevioLab
deviolab.com

Інформація про навчальний заклад

ВУЗ:
Національний технічний університет України Київський політехнічний інститут
Інститут:
Не вказано
Факультет:
СІ
Кафедра:
Не вказано

Інформація про роботу

Рік:
2025
Тип роботи:
Лабораторна робота
Предмет:
Моделювання

Частина тексту файла (без зображень, графіків і формул):

Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського» Інститут атомної та теплової енергетики Кафедра цифрових технологій в енергетиці ЛАБОРАТОРНА РОБОТА №2 з дисципліни «Комп’ютерне моделювання» Варіант № 19 Тема: Моделювання та прийняття рішень в умовах конфлікту Завдання: Розробити алгоритми та програмне забезпечення для розв’язку наведених задач теорії ігор. Алгоритми представити у вигляді блок-схем або діаграм діяльності UML. Програмне забезпечення розробити на будь-якій сучасній мові програмування. Знайти значення розв’язку задачі за допомогою математичних бібліотек (Excel) та порівняти його зі значеннями, отриманими в результаті роботи розробленого програмного забезпечення (тобто розрахунок в двох різних реалізаціях програмного забезпечення). Хід роботи Для задачі теорії ігор (номери задач визначаються як g+k+1, де – g остання цифра у номері студентського квитка, а k – передостання): розробити модель гри (визначити гравців, описати критерій, скласти платіжну матрицю); визначити тип гри; звести задачу теорії ігор до задачі лінійного програмування та визначити метод її розв’язку; розробити алгоритм розв’язку у вигляді блок-схем або діаграм діяльності UML; розробити програмне забезпечення для розв’язку задачі з використанням бібліотечних функцій. Варіант № 12 У фарватері встановлена міна, вибухає після i-го проходження над нею корабля (кратність міни), i = 1,2,3. Мінний тральщик може пройти по фарватеру 3 рази для ліквідації міни. Нехай p ij - імовірність загибелі корабля на міні, виставленої на кратність i після j проходів тральщика. / Визначити стратегію поведінки для мінного тральщика і для установника мін. Розробити модель гри (визначити гравців, описати критерій, скласти платіжну матрицю): Гравець 1: Мінний тральщик (А). Гравець 2: Міни (B). Критерій гри - мінімізувати очікувані втрати для тральщика та максимізувати їх для міни.  Матриця: A\B 1 2 3  ? ?  1 0.5 0 0 0  2 1 0.5 0 0  3 1 1 0.5 0.5   ? ? 1 1 0.5 0.5/0.5   ?= max ? min ? ? ?? = ??? 0; 0; 0.5 = 0.5 – нижня чиста ціна гри ? = min ? max ? ? ?? = ??? 1; 1; 0.5 = 0.5 – верхня чиста ціна гри ?=?, тому ця гра має сідлову точку, яка дорівнює 0.5. Визначити тип гри: Тип гри - це матрична гра з нульовою сумою та повною інформацією. Це означає, що виграш одного гравця є протилежним до втрати іншого, і що обидва гравці знають платіжну матрицю та стратегії один одного. Звести задачу теорії ігор до задачі лінійного програмування та визначити метод її розв’язку: Гравець 1 (Мінний тральщик) прагне, щоб ціна гри була наймешою, то х 1 + х 2 + х 3 → ??? 0.5 х 1 +0 х 2 +0 х 3 ≤0.5, 1 х 1 +0.5 х 2 +0 х 3 ≤0.5, 1 х 1 +1 х 2 +0.5 х 3 ≤0.5 Гравець 2 (Міни) прагне, щоб ціна гри була максимальною, то х 1 + х 2 + х 3 → ??? 0.5 х 1 +1 х 2 +1 х 3 ≥0.5, 0 х 1 +0.5 х 2 +0 х 3 ≥0.5, 1 х 1 +1 х 2 +0.5 х 3 ≥0.5 Метод розв’язку задачі лінійного програмування - це симплекс-метод, який шукає оптимальне рішення, переходячи від однієї допустимої точки до іншої, поки не досягне максимуму або мінімуму функції цілі. Він ефективний і дозволяє швидко знаходити оптимальне рішення. Розробити алгоритм розв’язку у вигляді блок-схем або діаграм діяльності UML: / Розробити програмне забезпечення для розв’язку задачі з використанням бібліотечних функцій: # імпортувати бібліотеки import numpy as np import scipy.optimize as opt import nashpy as nash # задати платіжну матрицю A = np.array([[0.5, 0, 0], [1, 0.5, 0], [1, 1, 0.5]]) B = -A # гра з нульовою сумою # створити гру game = nash.Game(A, B) # знайти оптимальну змішану стратегію для кожного гравця equilibrium = game.lemke_howson(initial_dropped_label=0) # використати алгоритм Лемке-Гаусона x = equilibrium[0] # змішана стратегія тральщика y = equilibrium[1] # змішана стратегія міни v = game[x, y][0] # мінімальні очікувані втрати тральщика # вивести результати print(f"Оптимальна змішана стратегія тральщика: {x}") print(f"Оптимальна змішана стратегія міни: {y}") print(f"Мінімальні очікувані втрати тральщика: {v}") / Висновок: під час лабораторної роботи було успішно розроблено алгоритми та програмне забезпечення для вирішення задачі теорії ігор. Отримано важливі дані щодо гравців, критеріїв та типу гри, у тому числі складено платіжну матрицю. Дослідження показало наявність сідлової точки, що вказує на можливість вирішення гри в чистих стратегіях. Однак у випадку зміни вихідних даних ця стратегія може бути непридатною, тому задачу було переведено до задачі лінійного програмування. Результатом є розробка алгоритмів та програмного забезпечення на мові програмування Python, які дозволяють визначити оптимальну стратегію для цієї задачі.
Антиботан аватар за замовчуванням

27.02.2025 15:36

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!