KnigkinDom.org» » »📕 Проект «Сфера-82»: Цвет и слой - Станислав Миков

Проект «Сфера-82»: Цвет и слой - Станислав Миков

Книгу Проект «Сфера-82»: Цвет и слой - Станислав Миков читаем онлайн бесплатно полную версию! Чтобы начать читать не надо регистрации. Напомним, что читать онлайн вы можете не только на компьютере, но и на андроид (Android), iPhone и iPad. Приятного чтения!

1 ... 94 95 96 97 98 99 100 101 102 ... 131
Перейти на страницу:

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
class="p1">— Юрий Павлович, смотрите. Это прямое требование к вашей прикладной программе.

Она постучала обратной стороной карандаша по плотной бумаге.

— Код станции, шифр груза, номер поезда — это константы, их переведем в числа. Но взгляните, как заполняют остальное, — карандаш Егоровой сдвинулся к затертому полю. — Цифра зачеркнута, исправлено поверх. В графе веса вместо тонн указаны штуки. А в особых отметках идет чистый текст: «Сломалась стрелка» или «Ждем до утра». Ваша программа должна блокировать явный мусор при вводе, но оставлять диспетчеру возможность сохранить такие пометки и не завесить систему.

Шрамов склонился над бланками. Произвольный текст — полбеды, под него можно зарезервировать отдельную строку дисплея.

— В каком виде эти данные приходят на узел? — спросил он, потирая подбородок. — И в каком виде должны уходить?

— Исходные сводки приходят телеграммами, либо помощник пишет их на бумаге со слов дежурного по станции, — ответил Ширяев. — Ваш оператор будет переносить цифры в машину. А итоговый маршрут должен ложиться на стол начальнику смены в виде твердой копии.

— Вывод пойдет на АЦПУ или телетайп, — вмешался Морозов. — Юрий Павлович, забирайте формирование бланка на себя. Громов отдаст массив результата и номер расчета, а дальше вы сами собираете символы в строчки.

— Выдавать прямо в порт вывода? — деловито уточнил Шрамов.

— Ни в коем случае, — отрезал Морозов. — Никакой самодеятельности с железом. Используй пятый системный вызов из методички. Система сама опросит готовность и вытолкнет символ. Иначе повесите шину из-за разницы в задержках у АЦПУ и телетайпа.

Шрамов быстро сделал пометку в блокноте. Жесткие рамки профиля не оставляли места для низкоуровневых фокусов, но гарантировали предсказуемость.

— С печатью ясно. Вывод отвязан от железа, — кивнул Шрамов.

Он тяжело вздохнул, оценивая общий объем проверок и блокировок, которые ему предстояло написать для интерфейса программы «МАРШРУТ-82В». Математика не должна защищаться от опечаток оператора — это была исключительно его работа. Громов же, наоборот, выглядел заинтригованным алгоритмической сутью задачи. Он смотрел на разложенные по столу карточки, словно видел не бумагу, а взвешенные графы и матрицы смежности.

— Павел Андреевич, — обратился Громов. — А критерий оптимальности у нас какой? Что мы минимизируем? Время доставки? Стоимость? Пустой пробег вагонов?

Ширяев мрачно усмехнулся:

— Всё сразу, Евгений Александрович. И чтобы к утру.

— Так не бывает, — покачал головой Громов. — Если мы минимизируем время, придется гонять пустые локомотивы ради одного срочного вагона. Если минимизируем пустые перегоны — сорвем сроки поставки. Математика чудес не делает. На Олимпиаде мы искали кратчайший путь, но здесь это не сработает.

Морозов мысленно согласился. Полный перебор вариантов на «Сфере» займет недели, а ответ нужен диспетчеру к утру.

— Найти абсолютно идеальный план за приемлемое время машина не сможет, просто захлебнется, — сказал Алексей. — Поэтому берем олимпиадный алгоритм за базу, но строим сначала грубый маршрут, который просто не нарушает запретов. Проталкиваем грузы по кратчайшим путям.

Громов нахмурился, обдумывая идею, и быстро кивнул.

— А потом перекидываем составы на соседние ветки, — подхватил он. — Если общая сумма штрафов за маршрут уменьшилась — сохраняем. Если увеличилась — откатываем назад. И так до упора.

— Штраф? — переспросил Ширяев. — Какой еще штраф?

— Математический, — пояснил Громов. — Мы не зашиваем критерии жестко в код. Мы делаем таблицу весов. Опоздание на час — штраф сто очков. Пустой пробег километра — десять очков. Задержка литерного груза — миллион очков. Алгоритм просто ищет вариант с наименьшей суммой штрафов.

— Вот! — Морозов указал на Громова. — И мы можем менять поведение системы, просто исправляя цифры в этой таблице. Не переписывая саму расчетную подпрограмму.

Егорова оторвалась от своих карточек и посмотрела на программистов поверх очков.

— Звучит красиво, — сказала она. — Но я вам не верю.

Громов поперхнулся. Морозов удивленно поднял брови.

— Вы сделаете алгоритм, он выдаст какой-то ответ, и вы скажете, что он оптимальный, — пояснила Егорова. — А как мы это проверим? Вы сами сказали, что идеального ответа нет.

Она вытащила из папки чистый лист и положила перед Громовым.

— Евгений Александрович, вы напишете не один алгоритм. Вы напишете три. Быстрый грубый подбор. Вариант с гигантским штрафом за пустой пробег. И вариант с абсолютным приоритетом сроков. А я подготовлю вам такие контрольные срезы данных, где эти три варианта гарантированно должны дать разные маршруты. Если ваша программа на разных настройках погонит поезда по одному и тому же пути — значит, ваша математика не работает, и вы просто подгоняете результат.

Громов посмотрел на женщину с нескрываемым уважением. Она не просто проверяла бумаги, а переводила бюрократическую рутину в строгие условия машинного теста.

— Договорились, Тамара Николаевна, — Громов забрал чистый лист. — Три варианта. И таблица штрафов вынесена в отдельный блок памяти. Юрий Павлович, — он повернулся к Шрамову. — Я дам тебе фиксированный адрес в памяти, по которому будет лежать структура с результатами. Код ошибки, номер маршрута, расчетное время. Как ты это будешь рисовать на экране — твоя забота.

* * *

Чернов, который всё это время молча стоял у окна и слушал монотонное гудение силового трансформатора в моноблоке, наконец подал голос.

— Вы тут всё память делите, адреса раздаете, — пробасил он. — Но ПЗУ-82В, как мы договаривались, жестко зашито. А операторская часть и справочники будут требовать обновлений.

Горелов предупреждающе поднял руку:

— Сразу говорю: никаких дискет в рабочей зоне диспетчера. Дискета — это грязь, пыль, магнитные поля и человеческий фактор. На узле будет работать только аппаратный блок.

— Поэтому в ПЗУ пойдет только окончательная версия, — подтвердил Морозов. — Аппаратно зашьем весь комплекс: операторскую часть, расчетную подпрограмму и базовые справочники станций.

Шрамов постучал костяшками по глухому кожуху машины.

— Прикладная программа будет меняться каждый день. А на предприятии? Контролер попросит сдвинуть колонку в печатном бланке — мне прикажете микросхему перепаивать?

— Оставим возможность загрузки с дискеты для отладочного режима, — пояснил Морозов. — На этапе доводки и во время выезда на предприятие программа крутится с дисковода. Нашли нестыковку — быстро поправили код на месте. Когда логика стабилизируется, готовим мастер-ПЗУ и ставим в штатную машину.

Чернов шагнул к столу и очертил пальцем воображаемый квадрат на задней стенке моноблока.

— Для замены ПЗУ паяльник вообще не понадобится. Сделаем аккуратный лючок. Микросхемы посадим в цанговые панельки, ключи

1 ... 94 95 96 97 98 99 100 101 102 ... 131
Перейти на страницу:
Отзывы - 0

Прочитали книгу? Предлагаем вам поделится своим отзывом от прочитанного(прослушанного)! Ваш отзыв будет полезен читателям, которые еще только собираются познакомиться с произведением.


Уважаемые читатели, слушатели и просто посетители нашей библиотеки! Просим Вас придерживаться определенных правил при комментировании литературных произведений.

  • 1. Просьба отказаться от дискриминационных высказываний. Мы защищаем право наших читателей свободно выражать свою точку зрения. Вместе с тем мы не терпим агрессии. На сайте запрещено оставлять комментарий, который содержит унизительные высказывания или призывы к насилию по отношению к отдельным лицам или группам людей на основании их расы, этнического происхождения, вероисповедания, недееспособности, пола, возраста, статуса ветерана, касты или сексуальной ориентации.
  • 2. Просьба отказаться от оскорблений, угроз и запугиваний.
  • 3. Просьба отказаться от нецензурной лексики.
  • 4. Просьба вести себя максимально корректно как по отношению к авторам, так и по отношению к другим читателям и их комментариям.

Надеемся на Ваше понимание и благоразумие. С уважением, администратор knigkindom.ru.


Партнер

Новые отзывы

  1. Semmi Semmi22 июль 17:17 Не знаю, кто выложил эту книгу здесь без разрешения и без указания чтецов, но хочу чтобы слушатели знали: Над начиткой этой книги... Priest - В башне над мостом
  2. Гость Наталья Гость Наталья22 июль 08:37 Отлично,даже очень захотелось продолжения этой истории.... Перо бумажной птицы - Елена Ивановна Михалкова
  3. Гость Татьяна Гость Татьяна17 июль 09:40 Начала читать эту книгу из-за предыдущего отзыва. Ну не ВАУ!, но интересно ... Неправильные - Катрин Корр
Все комметарии
Новое в блоге