Московский Государственный Университет Приборостроения и Информатики Дипломный проект на тему: «Разработка инструментального я

Содержание

Слайд 2

Постановка задачи Задачи дипломного проекта: Обзор существующих решений для имитационного моделирования Разработка проблемно-ориентированного языка программирования

Постановка задачи

Задачи дипломного проекта:

Обзор существующих решений для имитационного моделирования

Разработка проблемно-ориентированного языка программирования
Слайд 3

Обзор существующих программных продуктов Широкий функционал Поддержка компании-разработчика Высокая стоимость комплекса

Обзор существующих программных продуктов

Широкий функционал
Поддержка компании-разработчика
Высокая стоимость

комплекса
Сложность изучения

Matlab / Simulink

«Зрелый» проект
Существует литература
Не приспособлен к предметной области

GPSS

Прост в изучении
Отечественная разработка
Проект заброшен
Нет открытого исходного кода

Visual Имитак

Слайд 4

Структурная схема имитационной модели

Структурная схема имитационной модели

Слайд 5

Поддержка генерации потока входных событий emit every with limit until

Поддержка генерации потока входных событий

emit <обработчик>
every <время> with <распред.>
limit <кол-во>

until <условие>
Слайд 6

Событийно-управляемая модель на уровне языка Начало Конец Последовательная модель: Действие 1

Событийно-управляемая модель на уровне языка

Начало

Конец

Последовательная
модель:

Действие 1

Цикл

Действие 2

Начало

Конец

Событийная
модель:

Диспетчер
событий

Событие 1

Событие 2

Событие 3

Событие

N
Слайд 7

Распределение событий по времени emit test:method every 5 with distr:normal limit 1000

Распределение событий по времени

emit test:method
every 5 with distr:normal
limit 1000

Слайд 8

Распределение событий по времени emit test:method with distr:exp(1) limit 1000 λ = 1

Распределение событий по времени

emit test:method
with distr:exp(1)
limit 1000

λ = 1

Слайд 9

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

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

Слайд 10

Модель беспроводных сетей передачи данных

Модель беспроводных сетей передачи данных

Слайд 11

Основные элементы и конструкции языка type eventer { void action {

Основные элементы и конструкции языка

type eventer
{
void action
{
for

i in 1..10 do
if i % 2 do
print i, " "
println
}
}
var obj = new eventer
emit obj.action every 10 limit 5
simulate any
io:wait

Объявление типа

Объявление метода

Цикл с параметром

Условие

Вывод на экран

Создание объекта

Объявление переменной

Объявление события

Симуляция

Вызов системного метода

Слайд 12

Типы данных

Типы данных

Слайд 13

Методы визуализации Линейные графики Гистограммы

Методы визуализации

Линейные графики

Гистограммы

Слайд 14

Внутреннее устройство компилятора Лексический анализатор Семантический анализатор Генератор байт-кода Синтаксический анализатор

Внутреннее устройство компилятора

Лексический анализатор

Семантический анализатор
Генератор байт-кода

Синтаксический анализатор

Лексемы

БНФ

Mono Cecil

Контекстные
ограничения

Компилятор
языка Mirelle

Слайд 15

Пример реализации имитационной модели type planner { static symbol test(flow[] flows,

Пример реализации имитационной модели

type planner
{
static symbol test(flow[] flows, symbol

old)
{
var symb = new symbol
for curr in symb.blocks do
curr.fill flow_sim:pick_flow flows
return symb
}
}
flow_sim:add new flow flow_type:http, 1, 10, 1
flow_sim:add new flow flow_type:ftp, 1, 10, 2
flow_sim:add new flow flow_type:voip, 1, 10, 9
flow_sim:time_max = 10000
flow_sim:set_channel { 0 => 0.9;
2 => 0.1; 5 => 0.05 }
flow_sim:scale = 500
var result = simulate planner planner:test
print result.flows[0].wait_avg
io:wait
Слайд 16

Экономический раздел Смета затрат на разработку и внедрение ПС Ленточный график

Экономический раздел

Смета затрат на разработку и внедрение ПС
Ленточный график разработки

ПС
Основные технико-экономические показатели исследования

1

2

3

Слайд 17

Выводы В рамках дипломного проекта был разработан язык программирования, который может

Выводы

В рамках дипломного проекта был разработан язык программирования, который может

применяться для решения широкого круга задач:

Симуляции процессов распределения ресурсов в беспроводной сети передачи данных

Симуляции абстрактных СМО в контексте дискретно-событийного моделирования

Прототипирования алгоритмов

Слайд 18

Демонстрация программного продукта

Демонстрация программного продукта