- •Исправление ошибок в коде «Lab16.Gps»
- •Удаление лишних участков кода
- •Исправление опечаток в коде
- •Изменение числовых значений согласно варианту
- •Исправление ошибок, связанных с масштабом времени
- •Проблемы с целесообразностью проведения экспериментов
- •Реализация гипотез
- •Модификация кода для реализации гипотезы a
- •Модификация кода для реализации гипотезы b
- •Модификация кода для реализации гипотезы c
Модификация кода для реализации гипотезы c
Использование гипотезы C предполагает назначение транзактам-деталям приоритетов в зависимости от их близости к дедлайну и величины штрафа за их несвоевременное изготовление.
Управлять применением этой гипотезы будем с помощью одного значения, которое может быть равно только нулю или единице:
HYPC EQU 0 ; если = 1, то гипотеза C учитывается, иначе = 0 |
Вычисляемое значение назначаемого приоритета будет умножаться на HYPC. Таким образом, если HYPC = 0, все генерируемые транзакты будут иметь одинаковый приоритет – нулевой. Если же HYPC = 1, то приоритет транзактов-деталей будет определяться по следующей формуле:
|
(2.4) |
где
– величина штрафа за несвоевременное
завершение изготовления текущей детали
(значение, возвращаемое функцией MSHT);
– допустимое время пребывания детали
на участке (значение, возвращаемое
функцией DTIM);
– время пребывания детали на участке
(СЧА
транзакта);
,
– экспериментально подобранные величины,
имеющие цель «загнать» вычисляемый
приоритет в допустимый диапазон [0, 127].
Если поправки из п.1.4 были
учтены и допустимое время пребывания
детали на участке умножалось на 10, в
выражении (2.4) следует брать
.
Если нет и допустимое время для деталей
1, 2, 3 и 4 типа равно, соответственно, 1890,
1600, 2300 и 1400 единиц модельного времени,
то следует взять
.
Поскольку при указанных
минимальное значение отношения
равно
,
для такого случая рекомендуется принять
.
Исходя из сказанного выше, вставим в код следующую строчку сразу после участка инициализации параметров транзактов:
ASSIGN 1,FN$TYP ;тип детали ASSIGN 2,FN$JOB ;количество этапов ASSIGN 3,FN$JTAP ;номер первого этапа ASSIGN 6,FN$DTIM ;допустимое время
ASSIGN 7,0 ;время ускорения обработки детали ASSIGN 8,0 ;сумма, потерянная при ускорении обработки детали (отнимается от дохода) ASSIGN 9,0 ;входной параметр функции ALOSS ASSIGN 10,0 ;сумма, потерянная при использовании гипотезы B (прибавляется к себестоимости)
PRIORITY (HYPC#1000#FN$MSHT/(FN$DTIM-M1)-42) |
Теперь всё готово для проведения экспериментов с использованием гипотезы C посредством изменения значения HYPC.

,