Страница 2 из 2

Re: Имитационное моделирование

Добавлено: 24 мар 2009, 14:42
alexander.spb
OTELLO писал(а):всем добрый день!
дана задача смоделировать шлюзование судов, судов бесконечно множество, все движение случайно, у судов есть приоритеты ну и т.д. , что-то вроде смо. при включении программы начинают движения суда и двигаются с обеих сторон бесконечно, пропускаю друг-друга в зависимости от приоритетов.

я не прошу мне её сделать, может кто-то заимался подобными вещами и подкинет пару ссылочек на примеры или описаловы. буду очень длагодарен!

спасибо!
Делается "руками", и делается не сложно.
Если использовать объектно-ориентированный язык, то мир сводится к взаимодействию объектов-шлюзов и объектов-судов.
Необходимо также создать генератор объектов-судов, интервал между генерациями лучше распределить по нормальному закону. Параметры генерации - направление движения, скорость и приоритет.
Шлюзы можно представить как массив целых чисел. Число = кол-ву суден в нем. Параметры шлюза - его длина, время открытия / закрытия.

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

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

Re: Имитационное моделирование

Добавлено: 29 мар 2009, 20:46
Rita_R
Запускала программу на GPSS 50 раз и все время получала идентичные результаты (макс.очередь, абсолютное время модели..). Почему, ведь время генерирования транзактов и их обработки заданы временными интервалами, а не конкретными числами?


GENERATE 5,3
QUEUE RITA
SEIZE TT
DEPART RITA
ADVANCE 8,3
RELEASE TT
TERMINATE 1

GENERATE 100
TERMINATE

START 10


Можно ли утверждать, что каждый отчет правильный?

Re: Имитационное моделирование

Добавлено: 29 мар 2009, 21:33
alexander.spb
генераторы случайных чисел в GPSS превдо-случайные, поэтому результаты должны быть одинаковы.

Re: Имитационное моделирование

Добавлено: 30 мар 2009, 03:46
Naeel Maqsudov
Там же было что-то типа RANDOMIZE...
Не помню уже...

Re: Имитационное моделирование

Добавлено: 31 мар 2009, 11:17
alexander.spb
я нашел статеечку про датчики GPSS:
http://venec.ulstu.ru/lib/2002/1/Evseeva_Shishkin.pdf

Цитата:
Необходимо учитывать, что в GPSS имеются восемь датчиков
равномерно распределенных псевдослучайных чисел, у каждого из
которых есть свое имя: RN1, RN2,..., RN8. Имена датчиков
являются стандартными числовыми атрибутами (СЧА), которые
используются для получения псевдослучайных чисел с другими
распределениями. При i-м обращении к любому из датчиков
вычисляется произведение a(k)*Х(i-1), где k - индекс, который с
равной вероятностью принимает значения 0,1,2,...,7; a(k) - ядро; X(i-
1) - значение множителя, которое получено при предыдущем
обращении к датчику. Если i=1, то X(i-1)=X(0) - начальное значение
множителя X(i).
Дробные числа датчик выдает, если его имя используется в ка-
честве аргумента функции. При использовании датчика в любом
другом контексте выдаются целые числа, распределенные
равномерно в интервале [0,999]. У всех восьми датчиков начальное
значение индекса k=0, а начальное значение множителя X(0)=1.
Поэтому все датчики формируют совершенно одинаковые
псевдослучайные последовательности. Однако пользователь
может изменить последовательность псевдослучайных чисел путем
изменения начального значения X(0) множителя. Такую
возможность обеспечивает команда RMULT (УСТАНОВИТЬ
ЗНАЧЕНИЯ ДАТЧИКОВ), имеющая восемь операндов от A до H,
которые используются для записи начальных значений множителя
соответственно 1-8 датчиков. Так, например,
RMULT 325,14159,,8677
устанавливает начальное значения множителей датчиков RN1, RN2
и RN4 соответственно равными 325,14159,8677. Начальные
значения множителей, задаваемых в RMULT, должны быть
нечетными и иметь от одного до пяти разрядов.

Re: Имитационное моделирование

Добавлено: 24 май 2009, 14:41
artom
Бесплатные теле и радиоприемники для просмотра тысяч телеканалов и прослушивания тысяч радиостанций со всего мира обладают уникальными параметрами:
Не требуется установка ПО
Не требуются дополнительные настройки
Не требуется дополнительное оборудование
Обеспечивается автоматическое обновление теле и радиоканалов
Поддерживаются телеканалы, ведущие прямую трансляцию
Обеспечивается возможность одновременного открытия неограниченного количества теле или радиоприемников
Обеспечивается высокое качество изображения и звука
Загрузите очень маленький файл http://mystic-news.com/free-tv-online/f ... ne-tv.html кликните на иконку, выберите телеканал или радиостанцию и слушайте ! Такого Вы еще не видели !

Re: Имитационное моделирование

Добавлено: 06 авг 2017, 11:29
Beginner
OTELLO писал(а):спасибо, но к сожалению мне надо полностью запрограммировать это именно в средах дельфи, си или вообще на Vba в экселе... вот я и теряюсь...

Для Дельфи и Лазаруса есть абслолютно бесплатная библиотека для имитационного моделирования с открытым исходным кодом - OpenSIMPLY.
Очень простая для начинающих, с обучающими примерами (Tutorial), где буквально шаг за шагом объясняется как быстро создать собственную модель.
Для библиотеки есть подробная документация и всплывающие подсказки (Insight help) для Delphi и Lazarus.
Загрузить можно осюда opensimply.org или с sourceforge.

Re: Имитационное моделирование

Добавлено: 09 авг 2017, 08:43
somewhere
Эта задача имеет целью научить вас моделировать процессы, изучить поведение объектов и используя логику и аналитическое мышление написать алгоритм управления.
Я не думаю, что преподавателя устроит тот факт, что вы найдете подобную библиотеку для дельфы или мощное и универсальное приложение для моделирования процессов. Так вы программистами не станете.

Re: Имитационное моделирование

Добавлено: 18 сен 2017, 20:50
Evgenii32
Воспользуйтесь системой GPSS. Она хоть и древняя, но лично я для себя, ничего лучше так и не нашел.