Pages: 1
Можно ли оптимизировать модель по времени начала моделирования?
Здравствуйте!!! Интересует следующий вопрос. 
 Есть модель доставки грузов от завода к  складам магазинов (грузовиками).    При подъезде грузовиков на разгрузку к складам в выходные дни, грузовик простаивает выходные дни (по условию задачи). Т.к склады не работают в выходные дни. Например, если грузовик выедет со склада завода в пятницу и попадет на разгрузку одного из складов магазина в субботу, то он простоит до понедельника, ожидая разгрузки.
Можно ли оптимизировать модель, для выявления лучшего времени и даты выезда грузовика на маршрут? 
Здравствуйте, Айдос!
Мне кажется, что здесь вопрос не в оптимизации начала времени моделирования, а оптимизации времени выезда грузовика. Поставьте, например, понедельник, 00:00:00, а время выезда грузовика параметризуйте и варьируйте соответсвующим экспериментом.

Вообще временем начала моделирования тоже можно поиграть, используя такой код в поле Initial Experiment Setup Эксперимента:
Code
getEngine().setStartDate( Date date ); //Дату нужно создавать тоже в этом поле, т.к. Main ещё не существет  
 
//или 
 
getEngine().setStartTime( double tstart ); //аналогично

Но само варьирование придётся задавать кодом, что не нужно для решения вашей задачи и просто усложнит модель, непонятно зачем.
Edited: Gregory Monakhov - 27.03.2015 13:06:04
Спасибо Григорий! Вы правильно меня поправили smile:). Вопрос не в начале времени оптимизации, а в оптимизации времени выезда грузовика.  Т.е поставить можно с понедельника 00:00, а вот параметризировать по времени.?  В агент "грузовики" (в моем случае), нужно добавить параметр время выезда с типом "время".? Я вот только не пойму, как задается такого рода параметр.?
Айдос, мне кажется, что тут вопрос даже не в оптимизации, а в вычислении времени в пути грузовика: он же ведь знает сколько ехать и разгружаться, значит может решить успеет ли он разгрузиться или нет. Т.е. он принимает решение — выезжать или нет. Если же время стохастично, то можно проверить по матожиданию, например, или по временному коридору.
Если всё же решите варьировать, то можно использовать параметр типа int, который можно использовать в качестве таймаута для перехода в диаграмме состояний, после исполнения которого отправляется грузовик. Сложно сказать без модели, как именно лучше всего его задать. Но я рекомедную решить задачу времени выезда алгоритмически, поскольку это алгоритмическая, а не оптимизационная задача, как мне кажется.

Кстати, я в прошлом посте ошибся — время можно варьировать, использовав код в агенте верхнего уровня, параметризовав дату и варьируя её, используя эксперимент варьирования параметров. Но это, опять же, от лукавого в данном случае.
Спасибо Григорий! Буду пробовать задавать через диаграмму состояний.
Pages: 1
Users browsing this topic (2 guests, 0 registered, 0 hidden)