В. М. ГЛУШКОВ

ОСНОВЫ
БЕЗБУМАЖНОЙ
ИНФОРМАТИКИ
ИЗДАНИЕ ВТОРОЕ, ИСПРАВЛЕННОЕ

0МОСКВА «НАУКА»ГЛАВНАЯ РЕДАКЦИЯ
ФИЗИКО-МАТЕМАТИЧЕСКОЙ ЛИТЕРАТУРЫБ Б К 22.18
Г55
У ДК 519.6

Г л у ш к о в В. М. Основы безбум аж ной информатики. Изд. 2-е, испр.—М.: Наука. Гл. ред. физ.-мат. лит., 1987.— 552 с.
Книга посвящена проблемам автоматизированной обработки и хранепию информации в безбумажном (машинном) представлении, т. е. с по­мощью ЭВМ. В ней представлено комплексное изложение состояния и перс­пектив безбумажной информатики и связанных с нею научно-технических
проблем. Может быть использована для первоначального ознакомления.
1-е издание вышло в 1982 г.
Табл. 25. Ил. 74. Библиогр. 88 назв.

Виктор Михайлович Г л у ш к о вОСНОВЫ БЕЗБУМАЖНОЙ ИНФОРМАТИКИ
Редактор О. И. Сухова
Художественный редактор Г. М. Коровина
Технический редактор С. Я. Ш клярКорректор И. Я. Кришталь
ИБ № 32347
Сдано в набор 28.05.86. Подписано к печати 24.11.86. Т-23909. Формат 60х907|б.
Бум ага кн.-шурн. Гарнитура обыкновенная новая. Печать высокая. Уел. печ. л. 34,5.
Уел. кр.-отт. 34,5. Уч.-изд. л. 37,37. Тираж 37 500 экз. Заказ № 217. Цена 2 р. 60 к.
Ордена Трудового Красного Знамени издательство «Наука»Главная редакция физико-математической литературы
117071 Москва В-71, Ленинский проспект, 15
4-я типография издательства «Наука» 630077 г. Новосибирск, 77, Станиславского, 25

1702070000—011
г053 (02)-8713‘87(2) Издательство «Наука»,^Главная редакция
физико-математической
литературы, 1982,с изменениями, 1987

X X VII съезд КПСС нацелил деятельность нашего народа нареализацию всех резервов, использование всех возможностей дляускорения социально-экономического прогресса советского об­щества.
В документах съезда выдвинуты масштабные и сложные за­дачи повышения уровня производительности труда, перестройки
хозяйства и особенно совершенствования, управления и плани­рования с учетом требований интенсивного развития экономики.
Важную роль в решении этих задач играет применение элект­ронных вычислительных машин, кибернетики и информатики.
Перестройка производства, управления народным хозяйством,внедрение средств автоматизации в проектирование, планирова­ние и управление, реализация качественно новых требований ксфере обслуживания, выполнение сложнейших научно-техниче­ских расчетов и разработок невозможны без новых интенсивных
технологий, базирующихся на средствах машинной переработки
информации.
Кибернетика и вычислительная техника активно влияют навсе стороны жизни общества. В X II пятилетке парк кибернети­ческих устройств, машинных средств обработки информации дол­жен увеличиться во много раз. «Встраивание» автоматизирован­ных средств в социальную среду с наименьшими потерями, обес­печение комфортного взаимодействия людей с машинами, созда­ние и реализация новых высокопродуктивных технологических
звеньев деятельности людей и машин — являются весьма труд­ными проблемами. Решение их — актуальная задача.
Последняя книга выдающегося ученого, академика Виктора
Михайловича Глушкова, написанная им в 1981—1982 гг., посвя­щена вопросам автоматизированной обработки и хранения ин­формации в безбумажном (машинном) представлении, а также
проблемам, возникающим при создании безбумажных технологийя процессе обращения информации в обществе для решения
практических задач автоматизации обработки результатов экспе­риментов, управления технологическими процессами, организаци­онного управления, проектно-конструкторских работ, решения
творческих задач и т. п. Идеи, высказанные В. М. Глушковым
г. этой области, сформулированные им принципы построения но­вых кибернетических устройств, технических и математических
средств преобразования информации, ряд его фундаментальных
результатов могут явиться источником плодотворной деятельно­сти научных исследователей и разработчиков новых информаци­онных технологий. Книга является весьма полезной как комп­лексное изложение проблем, подходов и способов решения рядазадач безбумажной информатики.
В . С. М ихалевич

Книга, которую читатель держит в руках, является одной изпоследних работ выдающегося ученого и организатора науки,академика Виктора Михайловича Глушкова. Замечательный уче­ный нашего времени Виктор Михайлович Глушков работал напереднем крае науки — в области математики, кибернетики ивычислительной техники. Идеи, высказанные и разработанные
Виктором Михайловичем Глушковым, оказали большое влияние
практически на все области исследований в кибернетике и вы­числительной технике не только в нашей стране, но и за рубе­жом. Н а этих идеях воспитывалось несколько поколений совет­ских ученых, разработчиков средств кибернетической техники.
Руководствуясь принципами единства далеких и близких це­лей, единства теории и практики, Виктор Михайлович Глушков
успешно работал над сложнейшими проблемами обработки ин­формации и построением необходимых нашему обществу машини систем для проведения научно-технических расчетов в проек­тировании, планировании и управлении, создании средств авто­матизации различного уровня процессов в народном хозяйстве.
Ему принадлежат многие пионерские идеи в этой области. Ш и­роко известны его монографии, посвященные проблемам созда­ния кибернетических систем.
Виктор Михайлович Глушков руководил реализацией рядапроектов вычислительных машин, систем управления и обработ­ки данных. Такие машины и системы, как Киев, МИР, Днепр,Проект, Львов, Дисплан и др., в которых нашли воплощение ипрактическое подтверждение оригинальные технические идеии результаты фундаментальных исследований большого коллек­тива разработчиков, работающих под его руководством, состав­ляют гордость отечественной науки.
Хотя проблемы безбумажной информатики, которым посвя­щена настоящ ая книга, являясь новым направлением в области
обработки информации, еще не нашли полного своего решения,постановка их на повестку дня является чрезвычайно актуаль­ной и своевременной.

Виктор Михайлович Глушков считал, что нет неразрешимых
проблем, когда их решения требует практика деятельности обще­ства. Для безбумажной информатики наступление этого этапа онпредвидел и работал над тем, чтобы те, кому предстоит реализо­вать эти идеи, были заранее подготовлены. Именно этой целислужит настоящ ая книга, в которой изложен не только широкий
спектр вопросов, относящихся к безбумажной информатике, нокомпактно и доходчиво изложены новейшие идеи и достиженияв этой области научных исследований и практических раз­работок.
Герой Социалистического Труда, лауреат Ленинской премии,Государственных премий СССР и УССР, вице-президент Акаде­мии наук УССР, директор ордена Ленина Института кибернети­ки АН УССР*), академик Виктор Михайлович Глушков, безвре­менно ушедший, от нас, отдал всю свою жизнь делу служения со­ветской науке. Памятью о нем остаются его замечательные тру­ды, среди которых и настоящ ая книга займет почетное место.
А . А . Дородницын
*) В пастощцем Институт кибернетики АН УССР имени В. М. Глушкова. (Примеч. ред.)Одним из наиболее важных результатов научно-технической
революции является бурная «компьютеризация» практически всехобластей человеческой деятельности. Развитие сетей ЭВМ и си­стем терминального доступа к ним приводит к тому, что всебольшая часть информации, прежде всего научно-технической,экономической и социально-политической, перемещается в па­мять ЭВМ.
Большинство выполненных к настоящему времени прогнозов
сходятся на том, что к началу следующего столетия в технически
развитых странах основная масса информации будет хранитьсяв безбумажном виде — в памяти ЭВМ. Тем самым человек, кото­рый в начале XXI века не будет уметь пользоваться этой инфор­мацией, уподобится человеку начала XX века, не умевшему нипитать, ни писать. Поэтому уже в самом ближайшем будущем
каждому образованному человеку надлежит быть знакомым сосновами безбумажной информатики. Сегодня же эта задача
стоит перед всеми выпускниками вузов естественно-научного,технического и социально-экономического профилей.
Между тем основу безбумажной информатики составляет це­лый ряд разделов пауки и техники, настолько различающихся посвоему содержанию и методам, что даже работающим в них уз­ким специалистам порою нелегко находить общий язы к. По этимразделам написано огромное количество специальной литерату­ры. Однако она, как правило, труднодоступна для ознакомленияс предметом специалистам соседних областей. Так, специалиступо математическим методам нелегко разобраться в современных
монографиях по базам данных, специалисту в области приклад­ного программирования — в монографиях по сетям ЭВМ и т. д.
Тем более трудно человеку, не являющемуся специалистом в об­ласти ЭВМ и обработки информации, составить по подобным
публикациям общее представление об основах безбумажной ин­форматики.
Главная цель настоящей книги как раз и состоит в том, чтобы
подготовить читателя к чтению специальных монографий по раз­личным разделам безбумажной информатики. В первую очередь
книга адресована широкому кругу лиц со средним специальным,высшим и незаконченным высшим образованием, не являющихся
специалистами по обработке информации. В связи с этим она непредполагает у читателя никаких специальных знаний в этойобласти, поскольку в ней излагаются все основные разделы без­бумажной информатики, начиная с основных понятий.
Будучи ориентирована в первую очередь на пользователей,а не разработчиков ЭВМ и систем обработки информации, книгаио возможности не содержит описания мелких технических де­талей — упор делается именно на основные принципы, а не натехнические подробности их реализации. Несмотря на это, автор
надеется, что книга может оказаться полезной такж е и узким
специалистам в различных разделах безбумажной информатики,которые захотят получить представление о предмете в целом.
Следует при этом иметь в виду, что разделы, менее важные дляпользователей (например, элементные базы ), в книге лишь за­трагиваются. Другие же разделы (например, базы данных) изла­гаются подробнее.
В . Л/. Г луш ковВВЕДЕНИЕ
Задача накопления, обработки и распространения (обмена)информации стояла перед человечеством на всех этапах его раз­вития. В течение долгого времени основными инструментами дляее решения были мозг, язы к и слух человека. Первое кардиналь­ное изменение произошло в связи с приходом письменности,а затем изобретения книгопечатания. Эти два этапа создали
принципиально новую технологию накопления и распростране­ния информации, избавившую человечество от необходимости
всецело полагаться на такой зыбкий и ненадежный инструмент,каким является человеческая память. Поскольку в эпоху книго­печатания основным носителем накапливаемой информации ста­ла бумага, технологию накопления и распространения информа­ции естественно называть бумажной информатикой.
Следует подчеркнуть, что революция в информатике, связан­ная со становлением письменности и книгопечатания, практиче­ски не затронула область п е р е р а б о т к и информации. Здесь
основным и практически единственным рабочим инструментом
продолжал оставаться человеческий мозг. Механизация отдель­ных операций по переработке информации (прежде всего вычис­лительных) с помощью тех или иных технических средств (лога­рифмическая линейка, арифмометр и т. п.) по существу ничего
кардинально не меняла. Во-первых, при их использовании в бу­мажной форме представлялась не только исходная и заключи­тельная информация, но и большинство промежуточных резуль­татов, а во-вторых, каждый шаг по преобразованию информации
контролировался и направлялся человеком. По существу все этисредства оставались лишь и н с т р у м е н т а м и , а не подлинны­ми м а ш и н а м и . О комплексной механизации и тем более авто­матизации переработки информации на основе этих средств немогло быть и речи.
Положение в корне изменилось с появлением электронных
вычислительных машин (ЭВМ). Подобно тому как изобретение
механического двигателя открыло эру комплексной механизацииЦ автоматизации физического труда, изобретение ЭВМ сделалото же самое в отношении труда умственного. Правда, первыеЭВМ использовались в основном как большие автоматические
арифмометры. Но уже тогда от обычных арифмометров их вы­годно отличало отсутствие необходимости вмешательства челове­ка в управление вычислительным процессом и запоминание про­межуточных результатов.
Принципиально новый шаг был совершен, когда от примене­ния ЭВМ для решения отдельных задач перешли к их использо­ванию для комплексной автоматизации тех или иных закончен­ных участков деятельности человека по переработке информации.
Одними из первых примеров подобного системного примененияЭВМ в мировой практике были так называемые административ­ные системы обработки данны х: автоматизация банковских опе­раций, бухгалтерского учета, материально-технического снабж е­ния, резервирования и оформления билетов и т. п.
Решающее значение для эффективности систем подобного ро­да имеет то обстоятельство, что они опираются на автоматизи­рованные информационные базы. Это означает, что в памятиЭВМ постоянно сохраняется информация, нуж ная для решениятех задач, на которые рассчитана система. Например, для резер­вирования и продажи авиационных билетов системе постоянно
требуется информация о расписании движения самолетов, о це­нах на билеты и о проданных уже или заказанных билетах. Онаи составляет содержание информационной базы соответствующей
системы. При решении каждой очередной задачи (оформления
заказа на билет) система нуждается во вводе только одной не­большой порции дополнительной информации (содержания за­каза) — остальное берется из информационной базы.
Заметим, что каж дая порция вновь вводшмой информации,вообще говоря, изменяет информационную базу системы. Эта ба­за находится, таким образом, в состоянии непрерывного обнов­ления, отражая все изменения, происходящие в реальном объек­те, с которым имеет дело система. Создание и поддержание по­добного рода информационных баз, называемых обычно базами
данных, представляют собой первый шаг на пути перехода к без­бумажной информатике.
Заметим, что хранение информации в памяти ЭВМ придаетей принципиально новое качество динамичности, т. е. способно­сти к быстрой перестройке и непосредственному оперативному ееиспользованию в решаемых на ЭВМ задачах (без кропотливой
работы по ее вводу в ЭВМ). Устройства автоматической печати,которыми снабжаются практически все современные ЭВМ, поз­воляют в случае необходимости быстро представлять любую вы­борку из этой информации в привычной бумажной форме. Важ ­но, что при этом отпадает необходимость в хранении и перепи­сывании бесчисленных документов, являющихся непременными

атрибутами любой административной системы, работающей наоснове старой «бумажной» (безмашинной) технологии.
По мере своего дальнейшего развития административные си­стемы обработки данных перерастают в автоматизированные си­стемы управления (АСУ) соответствующими объектами. Вначалеэти объекты были в основном локальными (завод, аэропорт
и т. п.). Крупным шагом вперед было объединение ЭВМ и ВЦв сети с помощью телефонно-телеграфных каналов связи. В ре­зультате возникла возможность безбумажного обмена информа­цией между удаленными ЭВМ. Впрочем, еще до создания сетейЭВМ подобный обмен уже осуществлялся путем пересылки ин­формации на машинных носителях, прежде всего на магнитных
лентах. Дополняя друг друга, эти два способа информационного
обмена создали прочную основу для перестройки управления со­циально-экономическими процессами на основе безбумажной тех­нологии в масштабах целой отрасли, крупного региона и дажецелой страны.
Необходимость такой перестройки обуславливается тем, чтов эпоху научно-технической революции резко усложнились зада­чи социально-экономического управления. Темпы роста сложно­сти управления экономикой, особенно в эпоху НТР, значительно
превосходят темпы роста любых других показателей экономиче­ского развития. В результате в развитии каждой страны неиз­бежно наступает момент, когда резервы традиционных приемов
совершенствования управления экономикой — организация и со­циально-экономические механизмы — оказываются исчерпанны­ми (второй информационный барьер).
Причина подобного явления заключается в том, что все тра­диционные организационные и социально-экономические меха­низмы реализуются непосредственно через людей, точнее — че­рез их мыслительный аппарат — мозг. Пропускная же способ­ность мозга как преобразователя информации хотя и велика, нотем не менее, ограничена. То же самое имеет место и для сово­купности всех людей в любой данной социально-экономической
системе. Момент, когда сложность задач управления системой
превосходит этот порог, и есть второй информационный барьер*).
С этого момента дальнейшее увеличение мощности управлен­ческого аппарата возможно лишь на основе непрерывного повы­шения производительности труда всех занятых в управлении лю­
дей. Такого повышения нельзя достичь в рамках традиционной
(бумажной) технологии за счет оснащения людей теми или ины­ми инструментами, действующими «россыпью», т. е. тогда, когда
*) Первым информационным барьером называется порог сложности
управления экономической системой, превосходящей возможности одного,человека.

I

все информационные потоки замыкаются в конечном счете через
людей. Резервы роста производительности труда в такой техно­логии быстро исчерпываются за счет наличия в ней узких мест,определяемых пропускной способностью человеческого звена. Н е­обходима комплексная автоматизация управленческого труда,при которой все большая и большая часть информационных по­токов замыкается вне человека.
В этом и состоит сущность безбумажной технологии. Следует
особо подчеркнуть, что она никоим образом не устраняет чело­века из системы управления, а лишь передвигает его усилия отрутинной работы в более творческие области. В конечном счете
обязанности человека в системе управления сведутся к поста­новке задач, выбору окончательных вариантов управленческих
решений (приданию им юридической силы) и к неформализуемой работе с людьми. Точно так же не следует впадать в вуль­гаризацию, считая, что новая технология устраняет абсолютновсе бумажные документы. Различного рода обобщенные показа­тели, наиболее важные решения, равным образом как и различ­ного рода неформальные заявления, письма и другая информа­ция, ориентированная на человека, могут оставаться в бумажной
форме даже на высших стадиях развития безбумажной тех­нологии.
К высказанным здесь мыслям, из которых, в частности, сле­дует историческая неизбежность безбумажной технологии орга­низационного управления, автор пришел в основном еще в нача­ле 60-х годов. К середине 1964 г. под руководством автора былразработан первый эскизный проект Единой Государственной
сети вычислительных центров (ЕГСВ Ц ), предназначенной дляперестройки на основе безбумажной технологии организационно­экономического управления на всех уровнях (от отдельных пред­приятий и учреждений до Госплана СССР).
В 1965—1970 гг. в нашей стране был выполнен определенный
объем работ по созданию автоматизированных систем управле­ния предприятиями (АСУП) и отраслевых автоматизированных
систем управления (ОАСУ) в отдельных министерствах.
Мы остановились столь подробно на задачах автоматизации
организационного управления потому, что именно здесь в первую
очередь концентрируются основные проблемы становления без­бумажной информатики. Однако этими задачами рамки безбу­мажной информатики отнюдь не ограничиваются.
Интенсивно развиваются системные применения ЭВМ дляавтоматизации сложных технологических процессов — автомати­зированные системы управления технологическими процессами(А С У ТП ), для испытаний сложных объектов, эксперименталь­ных исследований, проектно-конструкторских работ и др. Успехи
числового программного управления позволили поставить и ре­шить задачу создания полностью автоматизированных, гибко пе­рестраиваемых технологических линий, участков и даже целых
цехов.
Наряду со станками с числовым программным управлениемна этих линиях и участках успешно работают роботы первого
поколения. Происходит слияние АСУТП и АСУП в единые (ин­тегрированные) системы управления производством. При этомг.се новые и новые информационные потоки замыкаются через
ЭВМ, минуя людей.
Успехи автоматизации экспериментальных исследований ииспытаний приводят к тому, что данные непосредственно от из­мерительных приборов через соответствующие системы сопряже­ния попадают в память ЭВМ и накапливаются на машинных но­сителях. Это позволяет не только резко убыстрить последующую
обработку полученных данных, но и организовать в случае необ­ходимости длительное их хранение для возможного использова­ния в будущем (например, при появлении новых улучшенных
методов их обработки или изменении характера обработки припостановке новых целей перед исследователями). Тем самым соз­даются центры накопления экспериментальной научной инфор­мации в безбумажном виде. Н аряду с ними возникают ВЦ, в ко­торых накапливаются рефераты книг, научных статей и докла­дов. Эти ВЦ объединяются в сети. Сидя за терминалом подобной
сети, научный работник может получать любую интересующуюого информацию на экране терминального дисплея (а в случае
необходимости — и бумажную копию этой информации). По ме­ре удешевления памяти ЭВМ в подобной безбумажной форме
будут представляться полные тексты книг, статей и отчетов,Аналогичные процессы происходят с проектно-конструктор­ской информацией. Все в большей мере безбумажная информа­тика проникает в медицину, культуру, спорт, контроль окруж а­ющей среды и в другие области человеческой деятельности.

Глава

IОСНОВНЫ Е ПОНЯТИЯ ОБ ИНФОРМ АЦИИИ Е Е П РЕО БРА ЗО ВА Н И ЯХ
1.1. Непрерывная и дискретная информация
Информация о различных природных явлениях и технологи­ческих процессах воспринимается человеком (с помощью его соб­ственных органов чувств и различной измерительной аппарату­ры) в виде тех или иных полей. Математически такие поля пред­ставляются с помощью функций */ = /(я , г), где I — время, х —точка, в которой измеряется поле, у — величина поля в этой точ­ке. При измерениях поля в фиксированной точке х = а фупкция
1{х, I) вырождается в функцию времени у{1) = /(я , I), которую
можно изобразить в виде графика.
В большинстве случаев все скалярные величины, входящиев соотношение */ = /(х , I) (т. е. 2, у и координаты точки х), мо­гут принимать непрерывный ряд значений, измеряемых вещест­венными числами. Под непрерывностью здесь понимается то, чторассматриваемые величины могут изменяться сколь угодно мел­кими шагами. Ввиду этого представляемую таким способом ин­формацию принято называть непрерывной информацией. Иногдадля этой цели используется также термин аналоговая инфор­м ация.
Если применительно к той же самой информации о иоле у =■= /( я , I) установить минимальные шаги изменения всех харак­теризующих ее скалярных величин, то получим так называемое
дискретное представление информации (дискретная информа­ция). Поскольку точность измерений (равно как и человеческого
восприятия) всегда о г р а н и ч е н а , то фактически, даже имеядело с непрерывной информацией, человек воспринимает ее вдискретном виде. Но любая непрерывная информация можег
бытьаппроксимирована
дискретной информацией сл ю б о й степенью точности, поэтому можно говорить об ун и ­версальности дискретной формы представления информации.

Р е зу л ь т а т ы измерения любых

скалярных величин представ­ляются в конце концов в числовом виде, а поскольку при задан­ной точности измерений эти числа представимы в виде конеч­ных наборов цифр (с запятой или без нее), то дискретную фор­му представления информации часто отождествляют с цифровой
информацией.
1.2. Абстрактные алфавиты
Цифровая информация в действительности представляет со­бой частн ы й случай так называемого алфавитного способа пред­ст а в л ен и я дискретной информации. Его основой является произ­вольный фиксированный к о н е ч н ы й набор символов любойпри роды , называемый абстрактным алфавитом или, для кратко­сти, п росто алфавитом.
Совокупность десятичных цифр вместе с запятой для отделе­ния дробной части числа можно рассматривать как частный слу­чай абстрактного алфавита с 11 символами — буквами этого ал­фавита. Другой пример — алфавит естественного человеческогоязы ка, например, русского. Язык математических и других науч­ных текстов может включать наряду с обычными буквами дан­ного языка буквы других языков (например, греческого), а так­ж е различные специальные символы (например, символы ариф­метических операций + , — и др.).
1.2.1.
Кодирование. При обработке информации часто возни­кает необходимость представлять средствами одного алфавита
буквы других алфавитов. Такое представление носит в информа­тике специальное наименование кодирования. Проблема решает­ся просто, если требуется закодировать буквы алфавита X сменьшим числом букв, чем у кодирующего алфавита У. Если,например, X — алфавит десятичных цифр, а У — обычный рус­ский алфавит, то для кодирования X в У достаточно положить
б = а, 1 = б, 2 = в, 3 = г, . . . , 9 = к. Разумеется, возможны идругие способы кодирования, в том числе и такие, в которых
буквы алфавита X кодируются несколькими буквами алф а­вита У.
Одним из наиболее естественных способов такого кодирова­ния является просто замена десятичных цифр их русскими на­званиями: нуль, один, два и т. д.
При кодировании алфавитов с большим числом букв в алфа­витах с меньшим числом букв использование для кодированияп о с л е д о в а т е л ь н о с т е й букв является обязательным усло­вием для возможности р а з л и ч е н и я кодов различных букв,ито является непременным условием правильного кодирования.
Так, буквы русского алфавита можно закодировать п а р а м идесятичных цифр, например, а = 01, б = 02, . . . , к = 10, л = И, . . .

1.2.2. Двоичный алфавит. Простейшим абстрактным алфави­том, достаточным для кодирования любого другого алфавита, яв­ляется алфавит, состоящий из двух букв. Такой алфавит носиг
наименование двоичного, а две его буквы чаще всего принято
отождествлять с цифрами 0 и 1. Величина, способная принимать
лишь два различных значения, представляет собой своеобразный
информационный атом, получивший специальное наименование
бит (минимальная единица информации).
1.2.3. Байтовый алфавит. Ввиду своей простоты двоичный ал­фавит наиболее широко распространен в различного рода техни­ческих информационных устройствах и в первую очередь в элект­ронных вычислительных машинах. Д ля кодирования же алфави­тов, которыми привык пользоваться человек, употребляются по­следовательности двоичных цифр. Легко видеть, что последова­тельностями из п двоичных цифр можно закодировать 2п различ­ных символов. При п = 8 их число равно 256, что оказывается
вполне достаточным для кодирования большинства встречающих­ся на практике алфавитов (исключая иероглифическое письмо).
Последовательность из 8 двоичных цифр получила в связис этим специальное наименование байт *). Составляемый жеразличными подобными последовательностями алфавит из 256букв естественно называть байтовым алфавитом. В практике ис­пользования ЭВМ в международном масштабе укоренился еди­ный стандарт байтового кодирования строчных и прописных
букв латинского алфавита, знаков препинания, десятичных цифрс десятичной запятой (десятичной точкой), а также ряда наибо­лее употребительных математических символов (знаки арифме­тических и логических операций, знаки равенства и неравенства
и др.)* Специальный байтовый код закрепляется также за зна­ком пробела.
Мощность ( ч и с л о букв) байтового алфавита оказывается до­статочной для представления, кроме этих символов, строчных ипрописных букв русского алфавита, отличных по написанию отлатинских букв. Остается резерв и для кодирования других сим­волов, например греческих букв. Следует, однако, заметить, чточисло символов в 200 и более предъявляет слишком большие тре­бования к вводно-выводной аппаратуре. Нетрудно представить
себе, например, насколько громоздкой стала бы обычная пишу­щ ая машинка, способная печатать 256 различных символов.
Реальные алфавиты, используемые для ЭВМ, ограничиваются,как правило, меньшим числом символов. Здесь пока нет строго
установившегося стандарта. Заметим, что достаточно часто на*) Ранее в информатике употреблялись 7-, 6- и даж е 5-битовые байты,но в настоящ ее время 8-битовый байт можнно считать установившимся
международным стандартом.

практике в ЭВМ (точнее, в их устройствах ввода-вывода) ис­пользуют 96-буквенный алфавит, который мы будем называть.
б а зи с н ы м . Если при этом для некоторых символов не хватает
кодов, то берутся слова в наличном алфавите: например, вместо
греческой буквы а пишется ее полное наименование по-латыйи,г. е. а1рЬа. В ряде случаев в целях экономии отказываются отупотребления строчных букв, используя лишь заглавные, и т. д.
1.3. Слова и абстрактные язы киЛюбая конечная последовательность букв в (абстрактном)алфавите X называется словом в этом алфавите. Заметим, чтопри этом не требуется никакой осмысленности слова, даже еслиречь идет о словах в алфавитах естественных человеческих язы ­ков. Более того, если, скажем, алфавит X состоит из букв рус­ского алфавита, а такж е из знаков препинания и символа про­бела, то словом в таком алфавите может считаться любая фраза.
и даже целая книга.
Для того чтобы из всего получаемого таким образом множе­ства слов выделить п р а в и л ь н ы е в каком-то смысле слова,,над исходным алфавитом X строится так называемый формаль­ный язы к. Кроме алфавита X, формальный язы к задается своей
особой (формальной) грамматикой. Она представляет собой нечто иное, как конечную совокупность формальных правил, с по­мощью которых порождаются в с е слова данного язы ка (т. е.
правильные слова) и т о л ь к о такие слова.
В современной информатике разработано несколько способов
задания грамматик, порождающих формальные языки. Одним изпростейших способов (достаточным для большинства практиче­ских применений) является использование так называемых нор­мальных форм Бэкуса. Этот способ проще всего разъяснить н апримере.
Пусть, например, над алфавитом X, состоящим из двоичных
Цифр <0, 1> и (двоичной) запятой < , >, требуется построить
язык, состоящий из всех рациональных двоичных (неотрицатель­ных) чисел (как целых, так и дробных). В методе Бэкуса длятакого определения используются так называемые метапонятия.
В данном случае ими будут понятия <целое число) и <двоичное
число).
Употребляя специальное сокращение : : = для выраж ения«левая часть есть любое из значений форм, представленных вправой части», запишем следующие выражения:<целое число) :: = <0) |< 1)|< 0><целое ч и сло)|< 1)<целое число)^(двоичное число) :: = (целое чи сло)( , ) (целое число)*).
у*) Вертикальная черта представляет собой особый знак, СООТВеТСТВуЮЩИЙ РУССКОМУ СЛОВУ Ч(ИЛИ».
*в. М. Глушков

Заметим, что в силу этого определения правильно записанные
31и двоичными числами будут считаться, например, числа 01,€ 010, 00 и вообще числа с любым количеством незначащ их нулей
(как слева, так и справа). Чтобы избежать этого, определение
должно быть соответствующим образом усложнено.
Неискушенному читателю приведенная формализация может
показаться излишней и надуманной. Действительно, для опреде­ления хорошо известных и достаточно простых понятий без нееможно вполне обойтись. Когда же строятся более необычные исложные понятия, подобные формальные определения становят­ся не только наиболее точными и короткими, но такж е (после
небольшой практики) и наиболее удобными.
1.4. Данные. Типы элементарных данных
Информация, с которой имеют дело различного рода автома­тизированные информационные системы, обычно называется дан­ными, а сами такие системы — автоматизированными системами
обработки данных (АСОД). Различают исходные {входные), про­межуточные и выходные данные.
Данные разбиваются на отдельные составляющие, называ­емые элементарными данными или элементами данных. Употреб­ляются элементы данных различных типов. Тип данных (элемен­тарных) зависит от з н а ч е н и й , которые эти данные могут
принимать.
В современной безбумажной информатике среди различных
типов элементарных данных наиболее употребительными явля­ются целые и вещественные числа, слова (в некотором подалфар.ите байтового алфавита) и так называемые булевы величины.
Первые два типа величин нуждаются в пояснении только в свя^и с конкретными особенностями их представления в современ­ных ЭВМ.
Прежде всего различают двоичное и двоично-десятичное пред­ставления чисел. В двоичном представлении используется двоич­ная система счисления с фиксированным числом двоичных раз­рядов (чаще всего 32 или, для малых ЭВМ, 16 разрядов, включая
разряд для представления знака числа). Если нулем обозначать
плюс, а единицей — минус, то 00001010 означает целое число
+ ( 23+ 21) = + 10, а 10001100 — число — ( 23+ 22) = — 12 (дляпростоты взято 8-разрядное представление). Заметим, что знакчисла в машинном представлении часто оказывается удобным
ставить не в начале, а в конце числа.
В случае вещественных■чисел (а фактически, с учетом огра­ниченной разрядности, дробных двоичных чисел) употребляются
Л.ве формы представления: с фиксированной и с плавающей за­пятой. В первом случае просто заранее уславливаются о месте

нахождения запятой, не указы вая ее фактически в коде числа.
Например, если условиться, что запятая стоит между 3-м и 4-мп а зо я д а м и справа, то код 00001010 будет означать число»00001 , 010 * = (1 + 0 • 2 -1 + 1 • 2 “2+ 0 • 2~3) = 1,25. Во втором слу­чае код числа разбивается на два кода в соответствии с пред­с т а в л е н и е м числа в виде х = а • 2 \ При этом число а (со зна­ком) называется мантиссой, а число Ъ (со знаком) — характеристи­кой числа х. О положении кода характеристики и мантиссы
(вместе с их знаками) в общем коде числа такж е устанавлива­ются заранее.
Для экономии числа разрядов в характеристике Ъ ее часто
представляют в виде Ъ = 2кЪ1, где к — фиксированная константа
(обычно к = 2). Вводя еще одну константу ш и полагая Ъ == 2кЪ2 — тп, можно избежать также использования в коде харак­теристики знака (при малых Ь2 > 0 число Ь отрицательно, а прибольших — положительно).
В двоично-десятичном представлении обычные десятичные
цифры (а также запятая и знак) кодируются двоичными циф­рами. При этом для экономии места часто используется так на­зываемый упакованный код, когда с помощью одного байта ко­дируется не одна, а две десятичные цифры. Подобное представ­ление позволяет в принципе кодировать числа любой значности.
На практике обычно все же ограничивают эту значность, хотя истоль большими пределами, что можно считать их неограни­ченными.
Тип данных «произвольное слово во входном алфавите» ненуждается в специальных пояснениях. Единственное условие —необходимость различать границы отдельных слов. Это достига­ется использованием специальных ограничителей и указателей
длины слов.
Тип булева переменная присваивается элементарным данным,способным принимать лишь два значения: «истина» (и) и«ложь» (л). Для представления булевых величин обычно исполь­зуется двоичный алфавит с условием и = 1, л = 0.
1.4.1.
Переменные и постоянные величины (данные). Дляидентификации различных данных употребляются специальные
наименования элементарных данных, называемые идентификато­рами. Они являются аналогами переменных величин, фигуриру­ющих в курсе математики. Область значений, которые может
принимать эта переменная, определяется типом элемента дан­ных, именем которого она является.
В качестве идентификаторов элементарных данных в совре­менной информатике принято использовать любые конечные по­следовательности латинских букв и десятичных цифр, н а ч и н а ­ю щ и е с я б у к в о й . Такое условие дает неограниченный запас
идентификаторов, что немаловажно, поскольку в современной
2*информатике приходится иметь дело со многими тысячами эле-'ментарных данных.
В отличие от переменных величин (данных), для которых
требуется четко различать имя и значение величины, для посто­янных величин в принципе значение величины может служитьи ее именем. Однако во многих случаях полезно именовать теили иные постоянные величины соответствующими идентифика­торами (например, число е « 2,718 и др.)* Разумеется, при этомнадо помнить, что величина, обозначенная соответствующим
идентификатором, представляет собой константу и может, сле­довательно, принимать лишь одно-единственнее значение.
1.5. Модели и алгебры данныхКак известно, моделью в математике принято называть любое
множество объектов, на которых определены те или иные преди­каты. Под предикатом здесь и далее понимается функция
у = /( # 1, . . #п), аргументы (х и . . . , х п) которой принадлежат
данному множеству Л/, а значение (у) может являться либоистиной, либо ложью. Иными словами, предикат представляет
собой переменное (зависящее от параметров х и . . . , х п) выска­зывание. Оно описывает некоторое с в о й с т в о , которым может
обладать или не обладать набор элементов (х 1у . . . , х п) множе­ства Л/.
Число п элементов этого набора может быть любым. Прип = 2 возникает особо распространенный тип предиката, который
носит наименование бинарного отношения или просто отноше­н и я . Наиболее употребительными видами отношений являются
отношения равенства ( = ) и неравенства (=^). Эти отношения
естественно вводятся для элементарных данных л ю б о г о дан­ного типа. Тем самым соответствующий тип данных превращает­ся в модель.
Применительно к числам (целым или вещественным) естест­венным образом вводятся также отношения порядка > ,Тем самым для соответствующих типов данных определяются
Солее богатые модели.
Любое множество М у как известно, превращается в алгебру,осли на нем задано некоторое конечное множество о п е р а ц и й .
П од операцией понимается функция у = /(от,, . . . , х п), аргументыи значение которой являются элементами множества М. Прип = 1 операция называется унарной, а при п = 2 — бинарной.
Наиболее распространенными являются бинарные операции.
Для целых чисел естественным образом вводятся бинарные
операции сложения, вычитания и умножения, а также унарная
операция перемены знака числа. В случае вещественных чиселк ним добавляется бинарная операция деления и (если необхо-димо) унарная операция взятия обратной величины. Разумеется,при необходимости могут быть введены и другие операции.
1.5.1.
Булева алгебра. Особое место в машинной информатике
занимает булева алгебра, вводимая на множестве величин типабулевых. Ее основу составляют две бинарные операции: конъ­юнкция («и»), дизъюнкция («или») и одна унарная операция:отрицание («не»). Конъюнкция обозначается символом Д и за­дается правилами О Д 0 = О, О Д 1 = О, 1 Д 0 = 0, 1 Д 1 = И .
Д ля дизъюнкции используются символ V и правила О V 0 = О,
0 V 1 = 1, 1 V 0 = 1, 1 V 1 = 1. Наконец, отрицание ~~| меняет
значение булевой величины на противоположное: ~~|0= 1, ^ 1= 0.
Последовательность выполнения операций производится в по­рядке убывания приоритетов от П к Л и далее к V (если спе­циальной расстановкой скобок не оговорено противное). Напри­мер, порядок действий в формуле П а Л ^ \ / с Л~~I ^ соответству­ет прямо указанному скобками порядку:(О) ЛЬ) V (с Л (1 ^ ))*В принципе могут быть введены и другие операции, однако
оказывается, что л ю б у ю такую операцию можно выразить ввидеформулы,использующей только
конъюнкции,д и з ъ ю н к ц и и и о т р и ц а н и я . Таким образом, введенный
набор операций является для булевой алгебры универсальным.
1.6. Комбинационные схемы
Поскольку любая алфавитная (буквенно-цифровая) информа­ция может быть закодирована в двоичной форме, то подобным
образом могут быть закодированы условия и решения задач излюбой области знаний. Если число таких задач к о н е ч н о (хо­тя, может быть, и очень велико), то существуют максимальная
длина гп кода условий этих задач и максимальная длина п кодаих решений. В таком случае решения в с е х данных задач(в двоичном коде) могут быть получены из их условий с по­мощью некоторой с и с т е м ы булевых функций г/, = 1х(хи х г, . . .
• • х ш) (1 = 1, . . п ) . В свою очередь все эти функции могут
быть выражены через элементарные булевы операции конъюнк­ции, дизъюнкции и отрицания.
Существуют различные способы представления булевых ве­личин (двоичных цифр) в виде тех или иных физических (обыч­но электрических) сигналов (высокое и низкое напряжение, им­пульсы тока разной полярности и т. п.).
Выбрав форму представления (двоичных) сигналов, можно
построить элементарные устройства, называемые обычно логиче­скими вентилями (или логическими элементами), которые реали­зуют элементарные булевы операции. Иными словами, выходные

сигналы этих устройств представляют собой элементарные буле­вы функции (результат выполнения элементарных булевых опе­раций) от входных сигналов, как это показано на рис. 1. 1.
Имея запас таких элементов, можно строить более сложные
схемы, подсоединяя выходы одних
элементов к входам других. Если2=ГЛуАпри таких соединениях избегать воз­никновения
замкнутых
контуроь
(например, подсоединения выхода
X'элемента на один из его собствен­
2=ХУу
ных
входов), то возникает классУ'схем, . называемых обычно комбина­ционными схемами . Такие схемы
X"1находятся в однозначном соответст­вии с. формулами булевой алгебры,. так что с их помощью может бытьРис. 1.1выражена л ю б а ясистема буле­вых функций. Например* схема, изображенная на рис. 1.2, реа­лизует систему булевых функций
и = х А у V"12 И

V = ~) (х V у у г).

.Н а практике построение комбинационных схем услож няется,поскольку сигналы при прохождении через вентили ослабляют­ся, искажают свою первоначальную форму, запаздывают. Поэто­му необходимо наряду с логическими элементами включать всхему различного рода согласую щ ие элементы (усилители, фор­мирователи сигналов и др.). Задача этих элементов — сделать
схему работоспособной и надежной.

Рис. 1.2

Из сказанного ясно, что можно построить комбинационную
схему для решения любого конечного множества задач, реш ениякоторых о д н о з н а ч н о определяются их условиями (подавае­мыми на вход схемы). В частности, если ограничиться какой-ли­бо фиксированной точностью представления вещественных чисел
(разрядностью ), то можно в принципе построить комбинацион-иую схему, вычисляющую любую заданную вещественную функ­цию у = Н х 1» • • •* х п)(в двоичных кодах), например, х *,31П Х\ и др.
На практике, однако, оказывается, что уже схема умножителя
(вычисляющая функцию у = х 1 • х г) при разрядности (двоичной)32 и более оказывается столь сложной, что умножение в совре­менных ЭВМ предпочитают реализовать другим, так называемыма л г о р и т м и ч е с к и м способом, о котором речь пойдет ниже.
В то же время многие, более простые функции, например
функции сложения двух чисел, реализуются комбинационными
схемами приемлемой сложности. Соответствующая схема носит
наименование параллельного сумматора.
Следует заметить, что успехи микроэлектроники делают воз­можным построение все более сложных схем. Если еще в 60-егоды каждый логический элемент собирался из нескольких физи­ческих элементов (транзисторов, диодов, сопротивлений и др.)»то уже к началу 80-х годов промышленностью выпускаются такназываемые интегральные схемы, содержащие многие сотни идаже тысячи логических вентилей. При этом важно подчеркнуть,что не только сами логические элементы, но и соединения меж­ду ними (т. е. вся схема в целом) изготовляются одновременнов едином технологическом процессе д а тонких пластинках хими­чески чистого кремния и других веществ размерами в доли квад­ратного сантиметра. Благодаря этому резко уменьшилась с т о и ­м о с т ь изготовления схем и повысилась их надежность.
1.6.1.
Быстродействие комбинационных схем. В теоретических
рассмотрениях обычно считается, что сигналы на выходах ком­бинационной схемы появляются в тот же момент, когда на входсхемы поступают инициирующие их входные сигналы. Иными
словами, быстродействие схемы предполагается бесконечным.
На практике, однако, каждый элемент схемы осуществляет
некоторую задержку сигнала (хотя обычно и весьма м алую ).
Иными словами, сигнал на выходе элемента (логического венти­ля) появляется лишь через некоторое время т > 0 после прихода
соответствующих входных сигналов.
При уменьшении размера элемента задержка (при прочих
равных условиях) уменьшается, стремясь к некоторому пределу,зависящему от физической природы этого элемента. Для полу­проводниковых элементов к началу 80-х годов в эксперименталь­ных образцах достигнуты задержки порядка десятых долей на­носекунды (1 не = 10-9 с),ч то уже практически подходит к есте­ственному физическому пределу для полупроводниковых схем.
Степень микроминиатюризации позволяет при этом разместитьна пластинке кремния площадью менее квадратного сантимет­ра — так называемом чипе — несколько сотен тысяч логических
элемедтов.

Серийно производимые схемы, разумеется, уступают экспери­ментальным как в быстродействии, так и в плотностях размеще­ния элементов. Но уже и в этом случае возникает немало слож­ных технических проблем, из которых на одном из первых местстоит проблема отвода выделяющегося тепла (особо критичнаядля быстродействующих полупроводниковых элементов).
Переход к пикосекундным задержкам (1 пс — Ю~12 с) требу­ет новых физических принципов построения элементов. Заме­тим, что за одну пикосекунду свет проходит всего 0,3 миллимет­ра. Поэтому перспективы выхода на подобное быстродействие
тесно связаны с проблемой дальнейшей микроминиатюризации
схем.
Поскольку при последовательном соединении элементов за­держки в них суммируются, в практике построения комбинаци­онных схем предпочитают не употреблять длинных цепей эле­ментов.
1.7. Последовательностные схемы (конечные автоматы)Обладая возможностью реализовать любые ф и к с и р о в а н ­н ы е зависимости между входными и выходными сигналами,комбинационные схемы неспособны обучаться, адаптироваться кизменяющимся условиям. На первый взгляд каж ется, что такая
адаптация обязательно требует структурных изменений в схеме,т. е. изменения связей между ее элементами, а возможно, и со­става этих элементов. Подобные изменения нетрудно реализовать
путем механических переключений. Однако такой путь практи­чески неприемлем из-за резкого ухудшения практически всехпараметров схемы
(быстродействия, габаритов, надежности
и др.).
Существует гораздо более эффективный путь решения ука­занной проблемы, основанный на введении в схему в дополнениек уже перечисленным логическим элементам так называемых
олементов памяти. Помимо своих входных и выходных сигналов,элемент памяти характеризуется еще третьим информационным
параметром — так называемым состоянием этого элемента. Со­стояние элемента памяти может меняться (но не обязательно)лишь в заданные дискретные моменты времени
. . . подвлиянием сигналов, появляющихся на его входах в эти моменты.
Наиболее употребительна так называемая синхронная организа­ция работы элементов памяти, при которой моменты их возмож­ных переключений (изменений состояния) следуют друг за дру­гом через один и тот же фиксированный промежуток времени
М = сопз^, называемый тактом. Эти моменты определяются
обычно с помощью импульсов, вырабатываемых специальным
тактирующим синхрогенератором. Количество тактовых, импуль-«ов, выдаваемых им в течение одной секунды, называется так­товой частотой.
Состояние элемента памяти а(1) в любой заданный момент
переключения I является однозначной функцией а(1)=Ъ>(а(Ь -7— ДО» # ( 0 ) ©го состояния а(Ь — ДО в предшествующий момент
времени и входного сигнала х(1) в настоящий момент времени.
«Эта функция называется функцией переходов (переключений)данного элемента. Разумеется, в реальных схемах переключение
состояния происходит не мгновенно, а с некоторой задержкой,характеризующей быстродействие выбранных элементов памяти.
Величина такта выбирается в зависимости от этой задержки и,ъак правило, существенно меньше ее. Единицей быстродействия
служит герц (Г ц), соответствующий тактовой частоте величинойв одно переключение в секунду. Частота в один килогерц (кГц)соответствует тысяче переключений в секунду (величина такта
1 мс = 10“3 с), частота в один мегагерц (МГц) означает мил 7лион переключений в секунду (величина такта 1 мкс = 10-8 с)и, наконец, один гигагерц (ГГц) соответствует миллиарду пере­ключений в секунду (величина такта 1 не = 10~9 с ) .
Выходной сигнал у(1) элемента памяти, как. правило, совпа­дает с его состоянием а(1). Следовательно, в моменты переклю­чений его можно задать функцией переходов %(а(Ь —:Д 0 » х (*))В более общем случае выходной сигнал может задаваться про­извольной функцией у(1) = ^ ( а ( 1 — Д 0 , # ( 0 ) » называемой функ­цией выходов.
В современной электронике употребляются в основном двоич­ные элементы памяти, состояние которых ,представляет собой бу­леву величину. Иными словами, элемент памяти способен запом­нить всего лишь один бит информации. При необходимости
запоминания большего количества информации используется
«составная память (запоминающее устройство), состоящая изнекоторого множества элементов. В реальных условиях это мно­жество, разумеется, всегда конечно, хотя в теоретических
исследованиях бывает удобно рассматривать и бесконечную
намять (по крайней мере потенциально).
В простейшем случае множество элементов памяти организу­ется в так называемый регистр, т. е. в (конечную) линейно упо­рядоченную последовательность элементов, называемых разряда­м и (ячейками) регистра. Разряды нумеруются последовательны­ми натуральными числами 1, 2, . . . , п. Число п этих разрядов на­зывается длиной регистра.
Состояния а{ отдельных разрядов составляют (булев) вектор
называемый состоянием регистра. Входные и выходные сигна­лы отдельных разрядов рассматриваемого регистра (такж е пред­полагаемые булевыми) составляют соответственно входной х ивыходной у (векторные) сигналы данного регистра.

Заметим еще раз, что в подавляющем большинстве случаен
У = я.
Обычная последовательностная схема, называемая также ко­нечным автоматом, составляется из регистра памяти Я и двух:комбинационных схем «54 и $2, соединенных между собой так*как это показано на рис. 1.3.Как видно из этого
рисунка, вы­ходы (выходные каналы) х схемы
подключены к входам ре­гистра Я, а выходы осхемы 8 г совпадают свыходами всей после­довательностной
схе­
мы. Что же касается
входов схем 5 4 и 5 2, та„,лони являются комбиниравашгьши, т._ е. „ онипредставляют собой объединение входных каналов и всей после­довательностной схемы с выходами у регистра Я.
Заметим, что описанную (последовательностную) схему мож­но рассматривать как комбинационную схему 5 2, перестраива­емую выходными сигналами регистра В. В наиболее наглядном
(хотя и заведомо упро­щенном) виде такую пе­рестройку можно пред­ставить себе следующим
образом. Состояния реги­стра Я, подающиеся наего выходные каналы, спомощью
специальной
комбинационнойсхемыК — так называемого ком­мутатора — переключают
входной сигнал и на р а з ­л и ч н ы е комбинационные схемы 8 г. 8 2 , . ..»Я ат \ имеющие об­щий выход V и составляющие (вместе с коммутатором К) схему
3 2 рис. 1.3. Схема подобной коммутации условно изображена на
рис. 1.4. К ак явствует из этого рисунка, конечный автомат может
реализовать столько различных функций у = / ( ц) , задаваемых
соответствующими комбинационными схемами, сколько различ­ных состояний N может иметь память этого автомата. При дво­ичном регистре длины п имеем, очевидно, N = 2П. Разумеется*не исключено, что различным состояниям регистра Я соответ­ствуют одинаковые схемы 8 2{г\ так что в общем случае
Условность подобного представления заключается прежде,всего в том, что в схеме с чисто двоичными сигналами нельзя
переключить сигнал и на один из выходов, а на других выходахне иметь ничего (это был бы третий вид сигнала, отличный какот 0 так и от 1). Кроме того, в подавляющем большинстве случаев схемы 5* нецелесообразно строить отдельно одну от дру­гой, так как при этом, вообще говоря, возрастает общее число
используемых логических элементов. Однако эти условности неменяют главного — сделанных оценок для числа различных ком­бинационных схем, реализуемых конечным автоматом. Кроме тсиго, при некоторых реализациях двоичных сигналов (например,импульсами различной полярности) в электронных схемах есте­ственным образом реализуется и третий вид сигнала, а именно,отсутствие каких-либо импульсов. В этом случае предложенная
интерпретация фактически теряет свою условность и может бытьреализована практически.
1.7.1.
Виды элементов памяти. Простейшим элементом памя­ти является схема, задерживающая входной сигнал на один мик­ротакт, прежде чем подать его на выход. Функции переходов ивыходов этого элемента, называемого элементом задержки, име­ют вид а(1) = х(1), у ( 1 ) = а { 1 — Дг). Задерж ка в таком элементе
специально планируется и, как правило, она значительно боль­ше, чем в обычных (комбинационных) логических элементах.
Необходимость подобного увеличения задержки в элементах Па­мяти легко понять, взглянув на рис. 1.3. Схема 51 на этом ри­сунке содержит в общем случае обратные связи, т. е. цепи логи­ческих элементов, передающие сигналы от выходов регистра Нк его входам. Нормальное функционирование таких связейб обычных условиях требует, чтобы вызываемая ими суммарная
задержка сигналов обратной связи не превышала времени такта
работы элементов памяти. Хотя в схемах обратной связи по воз­можности избегают употребления длинных последовательно со­единенных цепей логических элементов, величина такта обычноне менее чем на один десятичный порядок превосходит величину
задержки, приходящуюся на один логический элемент. Таким
образом, даже в экспериментальных схемах 1980 г. величина
такта для наиболее быстродействующих полупроводниковых ин­тегральных схем памяти измерялась по крайней мере единицами
паносекупд (частота переключений в сотни мегагерц), а в луч­ших коммерческих схемах эта величина по крайней мере ещепа порядок хуже.
Те же самые ограничения на быстродействие накладываютсяне только на элементы задержки, но и на другие элементы па­мяти, употребляющиеся на практике. Одним из наиболее распро­страненных типов элементов памяти являются так называемые
(двоичные) триггеры. Триггер имеет два входных канала х { и дг2.
При передаче единичного сигнала по первому каналу триггер
устанавливается в состояние а = 1, а по другому каналу — в со­стояние а = 0. При нулевых сигналах по обоим каналам триггер
сохраняет свое состояние.

Одновременная передача единичных сигналов по обоим вход­ным каналам исключается путем специальных методов констру­ирования схемы обратной связи в конечном автомате. Выходной
сигнал У1 триггера совпадает с его текущим состоянием. Часто
наряду с выходом у 1 триггер снабжается инверсным выходом
Уа = П »1Еще один тип элемента памяти — двоичный счетчик — меняет
свое состояние на противоположное с приходом единичного вход­ного сигнала и сохраняет его при нулевом входном сигнале. Вы­ходной сигнал этого элемента совпадает с его состоянием.
Заметим, что в качестве элементов памяти мы рассматриваем
пока лишь такие элементы, входы и выходы которых могут н е ­посредственно
включаться в произвольные комбинацион­ные схемы. Память такого рода мы будем называть открытойгв противоположность закрытой памяти, содержимое которой пе­ред переработкой в комбинационных схемах нуждается в пред­варительном переносе его в открытую (регистровую) память*Пример памяти закрытого типа дает запись сигналов на магнит­ной ленте, а в большинстве случаев и на других магнитных но­сителях.
Присоединяя к полному набору логических (комбинацион­ных) элементов открытые элементы памяти любого из перечис­ленных выше типов, мы получаем полную систему элементов дляпоследовательностных схем. Под полнотой здесь понимается воз­можность построения из такой системы элементов последователь­ностной схемы, задающей любое отображение последовательно­стей входных сигналов на последовательности выходных сигна­лов, которое вообще может быть задано дискретным двоичным
преобразователем информации с конечной памятью.
Заметим еще, что любой конечный автомат может рассматри­ваться как элемент с соответствующими функциями переходов
а(1) — / ( а (2— А^), и(1)) и выходов у(1) = у(а{1 — Ы ) , х( 1))*Если при этом автомат не имеет памяти, то он вырождается вкомбинационную схему, которая в случае необходимости может
рассматриваться как логический элемент. Тем самым создается
возможность для построения иерархии последовательно усложня­ющихся систем элементов, называемых, начиная со второго уров­ня, обычно уже не элементами, а блоками. Этот прием позволяет
заметно упростить и сделать гораздо более наглядным проекти­рование сложных преобразователей дискретной информации пу­тем так называемого блочного синтеза.
1.7.2.
Автоматные отображения. Считая входные и выходные
сигналы последовательностной схемы двоичными кодами буквнекоторых абстрактных алфавитов X и У, мы получаем возмож­ность интерпретировать результаты работы такой схемы как не­которое отображение / слов в алфавите X (входных слов авто­мата) в слова в алфавите У (выходные слова автомата). Оно но­сит название автоматного отображения и зависит не только отсамой схемы автомата, но и от н а ч а л ь н о г о с о с т о я н и яэтого автомата (предполагается, что перед подачей очередного
входного слова автомат устанавливается в это состояние). ,От произвольных алфавитных отображений (слов алфавита Xв слова алфавита У) автоматные отображения отличаются рядом
свойств, среди которых наиболее очевидно свойство равенства
длин входных и выходных слов. Условие равенства длин вопро­сов и ответов, характерное для автоматного отображения в чи­стом виде, представляется на первый взгляд довольно серьезным
ограничением. Его, однако, нетрудно устранить весьма неслож­ным приемом с помощью выделения в алфавитах X и У специ­альных пустых букв (знаков пробела), не несущих никакой со­держательной нагрузки. Добавляя эту букву к началу и концу
слов, можно всегда уравнять слова первоначально не равной
длины.
Автором показано, как с помощью этого приема можно задать
любую конечную таблицу соответствия между словами в алфа­витах X и У с помощью конечного автомата. Процедура постро­ения автомата, индуцирующего заданное алфавитное отображе­ние (вообще говоря, с точностью до пустых букв), называется
процедурой синтеза автомата. Обратная процедура называется
анализом автомата. Разработаны также многочисленные про­цедуры минимизации, позволяющие реализовать (по заданному
отображению) автомат минимальной сложности. Поскольку ком­бинационные схемы представляют собой частный случай после­довательностных схем (автоматы б е з п а м я т и ) , то все ука­занные процедуры применимы также и к ним с соответствую­щими упрощениями.
Заметим, что разработанные методы синтеза автоматов позво­ляют в принципе построить конечный автомат, реализующий
любую наперед заданную (конечную) систему диалогов (вопро­сов и ответов). В эту систему могут, в частности, войти диалоги,имитирующие л ю б ы е процессы обучения и адаптации автома­тов к изменяющимся условиям. На практике, однако, уровень
формализации, используемый в теории конечных автоматов, ока­зывается слишком бедным для фактической реализации автома­тов большой сложности. Алгоритмы синтеза и минимизации ко­нечных автоматов оперируют с отдельными их состояниями.
Когда число таких состояний измеряется миллионами (т. е. причисле разрядов более двадцати), алгоритмы синтеза автоматов
становятся практически трудно реализуемыми даже при усло­вии их полной автоматизации.
Д ля построения сложных преобразователей дискретной ин­формации требуется дальнейш ая специализация их внутреннего

-строения и в первую очередь структуризация памяти и систем
преобразуемых данных. Эта специализация позволяет реализо­вать процедуры блочного синтеза, о которых уже говорилось вы­
ше. Заметим, что подобная специализация призвана раскрыватьлиш ь внутреннюю структуру преобразователя, который на любом
уровне специализации представляет собой конечный автомат,поскольку на практике объем используемой в устройстве памяти
всегда конечен. В теории, однако, удобно вводить преобразовате­л и с бесконечной памятью, которые, разумеется, нельзя рассмат­ривать как конечные автоматы.
1.8. Структуры данных и структурированная памятьДо сих пор мы говорили о данных как о некоторой аморфной
массе, лишенной какой-либо внутренней организации. На прак­тике в большинстве случаев данные образуют ту или инуюструктуру. Структурирование данных задается прежде всего с по­мощью различного рода отношений порядка (упорядоченности).
Простейший вид упорядоченности задается простой н у м е р а ц и е й данных с помощью последовательных целых чисел. Иден­тификаторы упорядоченных таким образом данных образуются
обычно путем приписывания какому-либо фиксированному иден­тификатору (скажем, х) специального идентификатора индекса,значения которого пробегают заданный набор целых чисел.
Возникающий таким образом идентификатор х { (или х[1])у
где г пробегает целые числа от ш до /г, идентифицирует упоря­доченный набор данных, называемый обычно одномерным мас­сивом. Двухиндексный идентификатор Хг^ (или х [г,/]) идентифи­цирует двумерный массив, трехиндексный — трехмерный массив
и т. д. В упорядоченных таким образом массивах возникает
«естественное отношение следования: так, с л е д у ю щ и м по ин­дексу / для элемента Хг^ будет элемент х^}+и а п р е д ы д у ­щ и м — элемент Хг^-{. Если индекс / пробегает значения от рдо д, то для р не существует предыдущего, а для д — следующе­го значения индекса.
Если границы изменений индексов задаются константами, тотоворят, что соответствующий массив — прямоугольный, по­скольку в двумерной целочисленной решетке область возможных
значений индексов в этом случае представляет собой прямо­угольник (хотя термин «прямоугольный» применяется для мас­сивов любой размерности). Области значений индексов могут за­даваться и более сложными способами. Например, соотношенияр ^ г ^ ^ д задают так называемый треугольный массив. Мас­сивы обычно предполагаются однородными, т. е. состоящими изэлементов одного и того же типа. Одномерные однородные мас­сивы (Хг) принято называть векторами, двумерные (хц) — матри­цами, а составляющие их элементарные данные — их компонен­тами или элементами.
В общем случае индексы могут пробегать не обязательно по­следовательно все целые числа с шагом, равным единице, а лю­бые их конечные подмножества, в том числе с переменной вели­чиной шага. Дальнейшее обобщение выводит возможные значе­ния индексов из класса целых чисел, заменяя числа элементами
алгебр специального вида — так называемых полугрупп.
Помимо однородных массивов, на практике часто приходится
иметь дело с данными различных типов. Рассмотрим, например,содержание обычной анкеты, применяемой при учете кадров.
Одни графы этой анкеты (профессия) заполняются словами, дру­гие (год рож дения)— числами* третьи (имеете ли награды) —булевыми величинами (да, н ет). В безбумажной информатике*каж дая совокупность данных (вообще говоря, различных типов),характеризую щ ая тот или иной объект или явление, называется
записью. Кадровая анкета представляет собой один из возмож­ных видов подобной записи. Совокупность записей (обычно
одного и того же типа) носит наименование файла. В частности,совокупность анкет на всех сотрудников какого-либо учреж дения
составляет кадровый файл этого учреждения.
Если запись в целом характеризует тот или иной объект, тоотдельные ее позиции представляют собой различные свойства
этого объекта, или, как обычно принято говорить, его атрибуты.
Если запись состоит из п атрибутов, то каждый файл записей
такого типа задает п-местный предикат (п-местное отношение)1{яи• • •> х п) на множестве всевозможных з н а ч е н и й этихатрибутов. Этот предикат считается истинным для значений
атрибутов XI = аи х 2 = а2, . . . , х п = а„, если в заданном файле су­ществует запись <аи а2, . . . , а п>, и ложным в противном случае.
Таким образом, всякий набор файлов задает некоторую модель
данных в смысле § 1.5.
Записи — это подмножества множества данных длины п , име­ющие специальный вид. В общем случае структура данных мо­ж ет быть задана в виде произвольной системы N подмножеств
множества М (упорядоченных или нет). Подмножества системы
N получают при этом некоторые имена и включаются в рассмот­рение в качестве составных данных наряду с исходными (эле­ментарными) данными множества М.
Например, любая книга без рисунков может рассматриватьсякак упорядоченная последовательность букв (в число которых
включаются знаки препинания и другие специальные символы,,включая символ пробела). Эти буквы объединяются в слова, ко­торые можно рассматривать как составные объекты первого»уровня, слова — в предложения, предложения — в параграфы,,а параграфы — в главы.

В структурированной таким образом книге объект (данное )1каждого уровня (за исключением самого верхнего) входит вю д и н и только один объект следующего (более высокого) уров­ня. Данные с такой структуризацией принято называть деревья­м и или (простыми) иерархическими структурами. Составной
объект самого верхнего уровня называется корнем, а (элемен­тарные) объекты самого нижнего уровня — листьями этого де­рева (рис. 1.5).
Аналогично структурированию данных может производиться
структурирование памяти в преобразователях дискретной инфор­мации. Уже для простейшего случая ко­нечных автоматов сведенная в один ре­гистр память обычно предполагается упо­рядоченной. В частности, в регистре вы­деляются самый младший и самый стар­ший (булев) разряды этого регистра.
При различных детализациях понятия
конечного автомата его память разбива­ется на некоторое (конечное) множество
Рис. 1.5
регистров, каждый из которых получает
свое имя или номер. Запоминающие
устройства (сокращенно ЗУ) большого объема, как правило, раз­биваются на ячейки одной и той же длины (обычно от одногодо нескольких десятков байтов). Каждой ячейке присваивается
некоторый целочисленный адрес. Обычно для нумерации ячеек
используются неотрицательные целые числа, начиная с нуля.
З У могут собираться из отдельных блоков, образуя тем самым
иерархические структуры.
1.8.1.
Виды памяти и ее характеристики. Прежде всего сле­дует различать открытую и закрытую память. В первом случае
выходные каналы всех элементов памяти могут непосредственно
подключаться к входам любых комбинационных схем. Во вто­ром случае, прежде чем использовать в комбинационных схемах
информацию, содержащуюся в той или иной ячейке ЗУ, ее не­обходимо прочесть, т. е. перевести ее (считать из памяти) в не­который открытый регистр. Разумеется, предварительно нужная
информация должна быть з а п и с а н ав соответствующую
ячейку ЗУ.
Запоминающие устройства с произвольным доступом харак­теризуются одним и тем же (обычно весьма малым) временем
доступа в произвольную ячейку независимо как от се адреса,так и от предыдущих обращений в память. Под временем доступа
здесь понимается время, необходимое для установления соедине­ния данной ячейки ЗУ (задаваемой своим адресом) с некото­ры м (фиксированным) открытым регистром. Добавляя к этому
.времени время, необходимое для фактического перемещения ип-формации из ЗУ в регистр или обратно, получают соответствен­но наименования времени цикла чтения и цикла записи.
Перечисленные характеристики определяют быстродействие
5У. При прочих равных условиях это быстродействие уменьша­ется с увеличением объема ЗУ. Поскольку байт представляет со­бой слишком малую единицу измерения, объем ЗУ обычно выра­жается в килобайтах (Кбайт или просто К ), или мегабай­тах (М байт). Поскольку адресация большинства ЗУ осуществля­ется в двоичной системе счисления, в качестве килобайта удоб­но брать не 1000 байт, а 1К = 1024 = 2 10 байт. Соответственно,иод мегабайтом обычно понимается величина 220 байт.
В ЗУ последовательного доступа доступ осуществляется п о ­с л е д о в а т е л ь н о в порядке роста или убывания адресов ячеек
(как при прокручивании магнитофона). Поэтому после обраще­ния в ячейку с адресом п следующее соединение будет установ­лено либо с (/г + 1)-н, либо с ( п — 1)-й ячейкой. Последователь­ные ЗУ характеризуются (помимо объема) также с к о р о с т ь юиередачи информации, которая в этом случае чаще всего одина­кова как при записи, так и при считывании. Зная эту скорость,можно вычислить время доступа в любую ячейку в той или инойкопкретпой ситуации.
Например, при ячейках в 1 байт и скорости передачи
1 Мбайт/с после ячейки с нулевым адресом доступ в ячейку садресом 100 000 будет осуществлен через 0,1 с, а в ячейку с ад­ресом 3 млн.— через 3 с.
ЗУ с прямым доступом комбинируют черты устройств с про­извольным и последовательным ^доступом. Обладая в принципе
возможностью перескока от одного адреса к любому другому
(как это имеет место при перемещении головки дискового про­игрывателя), опи вместе с тем гораздо быстрее открывают ячей­ки с последовательными адресами. Поэтому в их характеристи­ку, помимо максимального времени произвольного доступа, вхо­дит, как и в последовательных ЗУ, независимая от этого време­ни скорость передачи информации.
При построении преобразователей дискретной информации
часто оказывается удобным использовать ЗУ магазинного типа,называемые также стеками. Слова, запоминаемые в таком ЗУ,ведут себя так же, как патроны, закладываемые в обойму (ма­газин) пистолета: при вводе (записи) нового слова уже запол­ненные слова сдвигаются на один шаг в глубь магазина, давая ме­сто «новичку». При выводе (чтении) процесс протекает в обрат­ном направлении. Таким образом, реализуется принцип: послед­нее (слово) из записанных читается первым. Стеки обычно реа­лизуются в виде комплекса регистров, из которых самый верх­ний регистр (содержащий последнее из записанных данных)является открытым, а остальные — закрытыми.
3 В. м. ГлуПЕКОВ

Для ряда приложений очень удобна так называемая ассоциа­тивная память. Запись в нее осуществляется в произвольную
ячейку (выбираемую самим ЗУ ). Доступ к нужному элементу
данных осуществляется не по адресу, а по запоминаемому вме­сте с этим элементом признаку. Конструктивно такая память
выполняется в виде матрицы Хц с булевыми первичными ячей­ками. Вторичные (составные) ячейки (адресуемые индексом *;)образуют строки этой матрицы, тогда как столбцы (адресуемыо
индексом /) несут в себе соответствующие разряды признаков
всех слов-строк, запомненных в ЗУ. Для реализации, помимо
обычного (адресного) доступа по строкам матрицы, также ассо­циативного доступа, достаточно реализовать доступ по второму
индексу — адресу столбца матрицы (с соответствующей схемой
анализа выбранного столбца).
Более подробно о различных видах памяти, используемыхв современной информатике, говорится в гл. III.
1.9. Процессоры
Процессором называется устройство, способное выполнять не­который заданный набор операций над данными в структуриро­ванной памяти и вырабатывать значение заданного набора логи­ческих условий над этими данными.
Стандартная схема процессора состоит из двух устройств, на­зываемых обычно арифметико-логическим устройством (АЛУ)и устройством управления (УУ). В схему АЛУ включаетси
структурированная память, состоящая, как правило, из регист­ров, к которым может добавляться один или несколько стеков.
С помощью специальных комбинационных схем в структуриро­ванной памяти может осуществляться тот или иной набор пре­образований.
Как уже отмечалось выше, преобразования (операции), зада­ваемые комбинационными схемами, на сегодняшнем этапе раз­вития микроэлектроники предпочитают делать достаточно про­стыми. Поэтому операции, выполняемые АЛУ за один такт син­хронизирующего генератора, называются микрооперациями, а со­ответствующий их выполнению такт — микротактом. Выбор тойили иной микрооперации осуществляется путем подачи кода этоймикрооперации на специальный у п р а в л я ю щ и й вход АЛУ.
Как правило, в состав микроопераций АЛУ включается такназываемая очистка регистров и стеков, т. е. обращение их со­держимого в нуль. Среди других часто встречающихся микроопе­раций отметим различного рода пересылки данных между реги­страми и стеками, сдвиги (вправо или влево) двоичного кода нарегистрах, а также операцию накапливающего суммирования.
Для этой операции выделяются специальные регистры (с соот­в ет ст в у ю щ и м и комбинационными схемами), называемые накап­л и в а ю щ и м и сумматорами (аккумуляторами). При передаче кодан ек отор ого числа х в аккумулятор, содержавший число у, про­и сх о д и т суммирование (с учетом знаков) этих чисел, а сумма
х 4- у за м е щ а е тв аккумуляторе его первоначальное содер-жимое у.

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

ААУ4Выдача

Выдача

Логические цела бия

Прием

УУ
Коды микрооперации

Прием

Рис. 1.6

Примеры таких свойств: «коды в регистрах А и В одинаковы»,«число, содержащееся в регистре Л, отрицательно», «младший
разряд двоичного кода в регистре А равен нулю» и т. д.
Устройство управления процессора представляет собой конеч­ный автомат, входными сигналами которого служат наборы ло­гических условий, формируемых АЛУ, а выходными сигнала­ми — коды микроопераций АЛУ. Кроме того, УУ может иметь
такж е каналы обмена с внешним миром. Тем самым схема про­цессора получается такой, как на рис. 1.6. Каналы выдачи иприема УУ и АЛУ обычно объединяются в каналы обмена про­цессора с внешним миром.
Через канал приема в УУ поступают коды команд (инструк­ций) на выполнение тех или иных операций процессора, а через
канал выдачи — запросы на очередные команды, либо так назы­ваемый сигнал останова, который прекращает передачу в про­цессор синхронизирующих сигналов и тем самым прекращает егоработу. Операция процессора обычно не сводится к одной микро­операции (хотя эго в принципе и не исключено), а индуциру­ется некоторой последовательностью микроопераций. Такие по­следовательности определяются так называемыми микропрограм­мами, встраиваемыми или запоминаемыми в УУ. В случае запо­минаемых микропрограмм их можно оперативно менять, на­страивая процессор на различные наборы операций (команд).
П ринято говорить в таком случае, что процессор имеет м ягкую
архитектуру (т. е. перестраиваемую).
3*

1.9.1. Режимы работы процессоров. Прежде всего можно вы­делить процессор в отдельное законченное устройство, вводяв него код операции и исходные данные в р у ч н у ю . Выходные
данные (результат операции) выдаются на специальное устрой­ство отображения для непосредственного восприятия человеком.
При этом процессор превращается в калькулятор.
При подобном ручном режиме использования процессора
автоматизируется только часть труда по обработке информации.
Трудоемкие операции поиска информации, выбора нужных дляее обработки команд, ввод информации и соответствующей ейкоманды в калькулятор, а также фиксация промежуточных ре­зультатов выполняются вручную (обычно на бумаге). Исполь­зование калькуляторов сохраняет в основном традиционную (бу­мажную) форму обработки информации и не может обеспечить
высокую скорость обработки данных, особенно для достаточно
длинных последовательностей команд.
Автоматический режим работы процессора может осущест­вляться двумя различными способами. В первом из них процес­сор сам извлекает последовательно необходимые команды изпрограммы (последовательности команд, запомненных в быстро­действующей памяти — внешней по отношению к процессору).
Все необходимые данные (исходные, промежуточные и выход­ные) также хранятся в этой памяти. Команды, помимо кода опе­рации, содержат адреса данных, необходимых для их исполне­ния. Извлекая из памяти очередную команду и анализируя еегпроцессор тут же извлекает необходимые для ее выполнения
данные. В этом случае принято говорить, что процессор управ­ляется потоком команд. Отрезок времени, в течение которого
происходит выполнение команды, называется циклом.
Другой способ состоит в том, что данные, поступающие аАЛУ процессора из какого-нибудь внешнего источника, запоми­наются в нем, анализируются и вызывают (с помощью УУ) вы­борку из быстродействующей памяти последовательности команддля их обработки. В этом режиме, называемом режимом реаль­ного времени, процессор управляется потоком данных. Быстро­действие процессора должно быть достаточно велико, чтобы об­работать поступившие данные (и выдать результат обработки)до поступления новой, очередной порции данных.
1.9.2. Микропрограммирование. Построение У У делается осо­бенно наглядным, когда в его состав включается специальная
управляющая память, в которой запоминаются микропрограммы
всех индуцируемых им операций. Микропрограмма представляет
собой конечную последовательность правил — так называемых
микрокоманд (микроинструкций). Каждая микрокоманда содер­жит код некоторой микрооперации и номер микрокоманды (илиадрес хранящей ее ячейки управляющего ЗУ ), которая должна

быть выполнена после исполнения данной микрокоманды. Еслиуказание о таком скачке (переходе) в микрокоманде отсутству­ет, то управление передается следующей по порядку микрокоман­де микропрограммы. В конце выполнения микропрограммы приручном управлении осуществляется останов, а при автоматиче­ском — выбор следующей операции и переход к соответствующей
новой микропрограмме.
В качестве примера рассмотрим микропрограмму умножения
двух целых неотрицательных чисел на АЛУ с тремя регистрами
я, Ъ, с, из которых последний представляет собой накапливаю­щий сумматор. Основной фрагмент требуемой микропрограммы
можно представить четырьмя следующими микрокомандами:1. Очистить регистр с (т. е. заслать в него число нуль).
2. Если младший разряд числа в регистре Ь равен 1, то пере­дать число из регистра а в регистр (накапливающий сумматор)с; в противном случае передать в с нуль.
3. Сдвинуть влево на один разряд содержимое регистра а.
4. Сдвинуть вправо на один разряд содержимое регистра Ъ.
Легко видеть, что выписанная микропрограмма выполняет
один шаг обычного умножения «в столбик» в двоичной системе
счисления. Микрокоманда 2 умножает множимое (содержимое
регистра а) на младший разряд множителя (содержимого реги­стра 6), а микрокоманды 3 и 4 готовят множимое и множительк следующему шагу.
Чтобы получить из приведенного фрагмента полную микро­программу, можно поступить двумя различными путями. Во-пер­вых, повторить п раз микрокоманды 2, 3, 4 (где п — максималь­ное число значащих разрядов во множимом или в множителе),во-вторых, использовать прием образования цикла: повторять
выполнение микрокоманд 2, 3, 4, пока в регистре Ъ будет нену­левое число; иначе окончить выполнение микропрограммы.
Заметим, что при ^-разрядных множимом и множителе реги­стры а и с, чтобы не потерять старших разрядов произведения,должны иметь разрядность 2п.
Объем памяти УУ определяется общим количеством микро­команд в микропрограммах всех команд, выполняемых процессо­ром. На первый взгляд кажется, что это число просто равно сум­ме длин всех микропрограмм. На самом деле оказывается воз­можным экономить память за счет объединения общих участковв микропрограммах для различных операций. В случае сложных
микропрограмм этот процесс можно повторить несколько раз:наряду с самыми мелкими общими частями на следующем шагеиз них строятся общие куски более высокого уровня и т. д. По­добная ступенчатая организация микропрограмм (реализован­ная впервые в ЭВМ МИР-1) позволяет существенно экономить
намять.

1.10. Алгоритмы и алгоритмические языки
Только что рассмотренные микропрограммы представляют со­бой частный случай алгоритмов. Алгоритмом принято называть
любую конечную систему правил преобразования информации
(данных) над любым конечным алфавитом.
Для описания как самой системы правил, так и перерабаты­ваемой с их помощью информации служат так называемые алго­ритмические языки. Любой алгоритмический язык задается наднекоторым фиксированным конечным алфавитом, с помощью
букв которого задаются структурированные данные и правилаих переработки. Буквы алфавита представляют собой первичныйтип элементарных данных, а составляемые из них слова могут
рассматриваться как одномерные массивы.
Разумеется, помимо букв основного (первичного) алфавита,в алгоритмическом языке могут задаваться и другие типы эле­ментарных данных. Так, в языках, описывающих информацион­ные процессы в современных ЭВМ,— так называемых машинных
языках — первичным является двоичный алфавит. Что же каса­ется типов элементарных данных, то к ним обычно относятся
числа заданного формата в двоичной системе счисления, а также
буквы байтового алфавита, составляющие вторичный алфа­вит ЭВМ.
Помимо элементарных данных, в алгоритмические языки мо­гут включаться различного рода структуры данных, в частности
массивы, файлы и т. д. В последние годы все большее распро­странение получают языки, в которых имеются средства для оп­ределения, в случае необходимости, новых типов данных, напри­мер комплексных чисел.
Следующей составной частью алгоритмических языков явля­ются различного рода операции над данными. Так, если в языке
определяется тип данных «вещественное число» (реально — при­ближение вещественных чисел рациональными числами с неко­торой заданной степенью точности), то для него обычно опреде­ляются четыре арифметические операции, а также операция возвсдения в степень. Для типа данных «булевы» определяются
операции дизъюнкции, конъюнкции и отрицания, а иногда и не­которые дополнительные операции. С помощью операций строят­ся алгебраические формулы, называемые в прикладной теории
алгоритмов обычно выражениями (арифметическими, булевы­ми и т. д.).
Третья составная часть языка — определенные на множестве
структурированных данных логические условия. Для любых ти­пов данных в языки, как правило, вводятся отношения равенст­ва и неравенства а = Ъ, а Ф Ь , представляющие собой элементар­ные логические условия. Для типов данных «вещественное чис­ло» или «целое число» обычно используются бинарные отноше­ния в виде различного рода «направленных» неравенств ( > , < ,В развитых алгоритмических языках операции и отношенияв арифметических и булевых выражениях могут комбинировать­ся. Например, выражение «а2, если а < 1, иначе а3» может трак­товаться как арифметическое выражение, равное а2 при а < 1и а3 при а > 1 . Аналогично, отношения равенства и неравенства
могут определяться не только между элементарными данпымп,но и между целыми выражениями, например, а + Ъ ^ х — у .
С помощью введенных выражений можно из одних данных
получать другие. Для окончательного оформления преобразова­ния данных, задаваемых теми или иными выражениями, остает­ся лишь найти место для получаемых результатов в общей систе­ме рассматриваемых данных. В случае машинных языков этодостигается путем записи (засылки) результата операции в туили иную ячейку структурированной памяти. Ячейка при этомобычно задается своим адресом. Соответственно, исходные дан­ные также берутся из каких-либо ячеек памяти, так что иденти­фикаторы переменных в формулах для машинных языков интер­претируются как адреса ячеек памяти, содержащих текущие зна­чения этих переменных.
В так называемых процедурно-ориентированных и проблем­но-ориентированных языках понятие памяти не вводится я в н о .
Включение тех или иных данных (получаемых в результате опе­раций) в общую систему данных получается с помощью при­своения получаемых значений некоторым идентификаторам. Т а­ким образом, возникает понятие так называемого оператора при­сваивания, схема которого имеет вид: И дентиф икатор) := (вы ­раж ение). Здесь собственно операция присваивания (значение
идентификатора в левой части становится равным значению пра­вой части) обозначается специальным символом := , введенным
специально для того, чтобы не путать операцию присваиванияс отношением равенства. Например, х := х + 1 означает, чтоидентификатор (переменная) х меняет свое значение, увеличи­вая его на 1.
В то же время выражение х = х + 1, эквивалентное отноше­нию 0 = 1, представляет собой просто тождественно ложное бу­лево выражение, т. е. булеву константу «ложь».
В общем случае в понятие оператора алгоритмического язы ­ка входит еще и указание на то, какой следующий оператор
нужно выполнять после него. Произвольный алгоритм, пазыва^мый в случае машинных языков программой, представляет со­бой конечную упорядоченную последовательность операторов, ко­торые обычно (если не указано противное) выполняются в по­рядке их следования. Если же по той или иной причине необхо­димо изменить порядок выполнения операторов, то в текущем
операторе указывается метка оператора, который должен бытьвыполнен после него. Вместо специальной метки может исполь­зоваться просто номер оператора в алгоритме (программе).
В чистом виде операция изменения порядка следования опе­раторов представлена так называемым оператором безусловного
перехода, обозначаемым в большинстве языков английским вы­ражением до 1о Ь («идти на />»), где Ь — некоторая метка.
Для обработки массивов в алгоритмические языки включают­ся специальные операторы цикла. Обычная форма оператора
цикла имеет вид:дляот ъ = пг шаг к до I = п выполнить Агде А — оператор, Ь— идентификатор индекса, к, т, п — целые
числа (в некоторых языках — арифметические выражения). Опе­ратор А согласно этому выражению должен быть применен кэлементам
массива с индексами 1 = т, т + /с, т + 2к, . . . , п .
Например, оператор цикла:для Хг от 1 = 0 шаг 2 до г = 1000 выполнить х { = х { + 1увеличивает на единицу значения всех элементов массива^ г ( 0 < &^ 1000) с четными индексами. Аналогично определяют­ся операторы цикла и в случае многомерных массивов, например:для Хц от Ь= т шаг к до Ь= п, от / = р шаг д до / = гвыполнить АС помощью специальных операторных скобок, в качестве ко­торых во многих языках употребляется пара английских словЪ едт, епй (начало, конец), в алгоритме можно выделять отдель­ные блоки, внутри которых могут определяться свои системы
обозначений данных. Они задаются специальными описаниями,помещаемыми в начале блока. Блок может рассматриваться каксложный, так называемый составной оператор, который может
получить собственное сокращенное обозначение — имя составно­го оператора — и использоваться наряду с обычными оператора­ми при построении сложных алгоритмов. В случае машинных
языков такие блоки получают наименование макрооператоровпли подпрограмм.
Еще двумя (особыми) типами сложных операторов являютсятак называемые условные операторы и операторы итерацион­ного цикла.
Условный оператор чаще всего имеет вид:если а, то А, иначе ВПри его выполнении прежде всего проверяется логическое усло­вие а. Если оно истинно, то выполняется оператор А; в против­ном случае — оператор В. Иногда условный оператор имеет идругую (сокращенную) форму:если а, то АОн применяет оператор А у если условие истинно, и не выполняетн и к а к о г о действия, или, как говорят, эквивалентен пустому
оператору , в противном случае. Если вместо А подставить опе­ратор %о 1о Ь, то получим оператор условного перехода. Он пе­редает работу, или, как обычно говорят, у п р а в л е н и е , опера­тору с меткой Ь, если условие а истинно, и следующему по по­рядку оператору в противном случае.
Оператор итерационного цикла имеет вид:пока а, выполнять АОн означает, что оператор А выполняется до тех пор, пока логи­ческое условие а является истинным. В противном случае управ­ление передается следующему по порядку оператору алгоритма.
Алгоритм считается закончившим свою работу, если выпол­нен его последний оператор, за которым не следует никакого
другого оператора.
1.10.1.
Полнота алгоритмических языков. Алгоритмические
языки, которые имеют все перечисленные выше средства, обла­дают так называемым свойством полноты. Под этим понимается
возможность построить в этом языке (Ь ) алгоритм К , выполня­ющий с точностью до кодирования работу любого наперед за­данного алгоритма М в произвольном алфавите А . Слова «с точ­ностью до кодирования» понимаются в том смысле, что буквы
алфавита А кодируются каким-либо (фиксированным) способомс помощью элементарных данных рассматриваемого алгоритми­ческого язы ка Ь, после чего алгоритм К любые кодированные
этим способом исходные данные О переводит в кодированные
этим же способом данные М ( Б ) , где через М( О) обозначены
данные на выходе алгоритма М.
Поскольку в этом определении участвует тот или иной типэлементарных данных, то более точно говорить не просто о пол­ноте языка, а о полноте над данным типом элементарных дан­ных. Используя теорию так называемых нормальных алгоритмов
Маркова, можно показать, что алгоритмический язы к Ь полоннад некоторым типом Т элементарных данных, если в нем мо­жет быть построен алгоритм, который для любой тройки векто­ров (одномерных м а с с и в о в ) х, а, Ь может определить, входитЛИ массив а в качестве п о д м а с с и в а в массив х, заменить
первое (слева) из таких вхождений на массив б и в зависимости°т успеха или неуспеха поиска такого вхождения передать уп­равление в две разные точки алгоритма.

Например, в двоичном алфавите при х = 011110111, 4 = 111,
В = 01 Л входит в х в качестве подмассива три раза: х === 0(111)10111 — самый левый из них выделен скобками. После
вамены этого вхождения массивом В получаем массив 0(01)10111
пли, после удаления скобок, 00110111.
1.11. Алгоритмические системы
Алгоритмические языки представляют лишь средства д.гязаписи алгоритмов. Для их фактического исполнения требуется
добавить некоторую интерпретирующую систему. В качестве та­кой системы может, разумеется, выступать человек, снабженный
карандашом и бумагой, для фактического выполнения предписы­ваемых алгоритмом преобразований. Выступая в качестве интер­претатора записей в алгоритмическом языке, человек превращает
этот язык в алгоритмическую систему. В автоматическом режи­ме исполнение различных операций и нахождение значений ло­гических условий алгоритмического языка возлагаются на про­цессор с соответствующей системой операций и условий. Однако
процессор может исполнять лишь отдельные операции. Для ис­полнения программ, т. е. произвольных (конечных) последова­тельностей операций, его необходимо дополнить запоминающим
устройством (ЗУ ).
Запоминающее устройство предназначено для запоминаниякак всех видов данных (входных, промежуточных и выходных),:так и п р о г р а м м их обработки. Соединяя определенным обра- *зом ЗУ с процессором, получают автоматическую интерпретиру- |ющую систему 8 для алгоритмического языка Ь, операции и ус- ?
ловия которого встроены в процессор. Язык Ь вместе с системой \8 составляют автоматическую алгоритмическую систему, кото- рую мы будем называть идеализированным компьютером.
Идеализация, о которой здесь идет речь, состоит прежде в сего;в том, что мы игнорируем пока операции ввода и вывода данных ;из компьютера. Кроме того, имеется в виду то обстоятельство,что длина программ и объем данных, хотя и предполагаются ко­нечными, могут быть как угодно велики. Поэтому ЗУ в идеали­зированном компьютере предполагается бесконечным или, более
точно, содержащим бесконечное число ячеек. Что касается са­мих ячеек, то они будут предполагаться в дальнейшем конечны­ми. Их размер должен позволять помещать в них элементарные
данные всех встречающихся в языке типов (по одному на ячей­к у ), включая коды всех операторов этого языка — команды
идеализированного компьютера.
Интерпретируемый таким компьютером алгоритмический языкв принципе может быть любым (не обязательно машинно-ориен'Тированным). Для этого, однако, может дополнительно потребо-наться, например, установление взаимно однозначного соответ­ствия между множеством ячеек ЗУ и множеством идентификато­ров рассматриваемого языка.
1.11.1.
Компьютер фон Неймана. Дальнейшее уточнение по­нятия идеализированного компьютера предусматривает специаль­ную машинную ориентацию интерпретируемых им алгоритмиче­ских языков и простейшую (линейную) структуризацию ЗУ. Мыограничимся здесь лишь такими ЗУ, у которых все ячейки име­ют одну и ту же конечную длину и нумеруются последователь­ными целыми числами, начиная с нуля. Коды, с которыми опе­рируют ЗУ и процессор, являются двоичными кодами, причем
принимается, что в одной ячейке может храниться либо код опе­ранда (элементарного данного), либо код машинной команды
(оператора язы ка).
Код машинной команды состоит из кода операции и адресной
части, в которой указываются адреса операндов и, возможно,адрес следующей команды. Конечность кода команды предопре­деляет и конечность множества кодируемых в ней адресов. По­этому непосредственно адресуемая процессором память компью­тера всегда ограничена реальной длиной кода адреса: при длине
кода адреса, равной п , может адресоваться максимум 2П ячеек
памяти.
Для расширения объема адресуемой памяти может использо­ваться так называемый базовый регистр, на котором с помощью
специальных команд могут формироваться старшие разряды ад­
реса. При адресации ЗУ к содержимому этого регистра присоеди­няется (в качестве младших разрядов) значение адреса, указы ­ваемое в исполняемой команде. Этот прием позволяет в принципе
адресовать память неограниченного объема.
Полнота машинного язы ка (или, иначе говоря, полнота систе­мы команд) подобного компьютера обеспечивается при наличиив нем возможности, во-первых, организовать двусторонний обмен
(чтение — запись) между ячейкой ЗУ и фиксированным регист­ром процессора (обычно аккумулятором), различать соседние
ячейки и выполнять условный переход (на команды в любых за­данных ячейках ЗУ) по условию равенства (или неравенства)кодов в любой паре ячеек ЗУ. Необходима также специальная
команда останова для окончания работы машины.
В случае бесконечной памяти выполнение перечисленных ус­ловий позволяет реализовать в подобном идеализированном ком­пьютере любые алгоритмы (с точностью до кодирования). Напрактике, разумеется, память компьютера будет всегда конечной.
С целью хотя бы частичной компенсации этого недостатка к по­добной оперативной памяти (ОЗУ) с произвольным доступом:Добавляют внешнюю память (ВЗУ ) с последовательным илипрямым доступом. Кроме того, компьютер снабжается устройст­вами для ввода и вывода информации. Система команд при этомпополняется командами обмена между внешней памятью и уст­ройствами ввода-вывода, с одной стороны, и оперативной па­м ятью — с другой. Идеализированный компьютер с указанными
ограничениями и добавлениями носит наименование компьюте­ра или машины фон Неймана по имени американского математи­ка, предложившего такую структуру машины для автоматиче­ской обработки информации (рис. 1.7). Штриховой линией по­казаны пути передачи команд управления на устройства вводавывода и ВЗУ.
Конечная память уже не дает возможности реализации намашине фон Неймана любых алгоритмов. Однако это может бытьРис. 1.7

сделано в предположении, что внешняя память может наращи­ваться неограниченно. Поэтому компьютер фон Неймана с пол­ной системой команд называется обычно универсальным ком­пьютером.
Заметим, что при описании компьютера фон Неймана нигдене использовалось то обстоятельство, что его компоненты
являются электронными устройствами. В принципе он может
быть построен на элементах любой природы (механической,химической,биологической и др.). Однако
напрактике
лишь электроника дала сегодня возможность построить ре­ально действующие универсальные компьютеры фон Неймана.
Кроме того, оказывается, что универсальность по отношениюк вычислительным алгоритмам обеспечивает (с точностью до ко­дирования) универсальность по отношению к произвольным ал­горитмам. Поэтому за компьютерами закрепилось не вполне от­ражающее их сущность наименование электронных вычислитель­ных машин (ЭВМ), к которому иногда добавляется термин «циф­ровые», чтобы отличать их от электронных вычислительных ма­шин, работающих с аналоговой информацией.
1.11.2.
Система обработки данных. Первые ЭВМ строились попростейшей схеме фон Неймана. Однако вскоре требования
практики потребовали значительно усложнить структуру, или,как сейчас принято говорить, архитектуру ЭВМ. В их состав
включаются сейчас не только центральные процессоры с универ­сальным набором команд, но и различного рода специализиро­ванные процессоры, предназначенные прежде всего для освобож­дения центрального процессора от операций ввода-вывода. Н али­чие таких процессоров позволило подключать к ЭВМ большое
число разнообразных периферийных внеш них устройств. К ихчислу относятся устройства внешней памяти, устройства вводаиывода, устройства сопряжения с каналами связи.
Для управления всем этим сложным хозяйством разрабаты ­ваются специальные системы программ — так называемые опе­рационные системы, позволяющие гибко менять конфигурацию
системы, эффективно загруж ать оборудование и облегчить напи­сание и отладку прикладны х программ пользователей. Программ­ная («мягкая») часть системы (зойпшге) вместе с «твердой»частью (Ьагс1\уаге), т. е. собственно с оборудованием, составляют
сложную информационную систему обработки данных, для которой лишь по традиции сохраняется старое название ЭВМ.

Г л а в аIIПРЕОБРАЗОВАТЕЛИ ИНФОРМАЦИИ
2.1. Преобразователи формы представления информации
Простейшими преобразователями информации являются ана­лого-цифровые и цифро-аналоговые преобразователи (АЦП игЦ П А ), в задачу которых входит лишь преобразование формы
представления информации. Аналоговая информация наиболее
часто представляется в виде угла поворота вала. Другие часто
встречающиеся формы представления информации (в виде вели­чины давления, температуры, магнитного поля, механических ко­лебаний, силы света, уровня радиации и др.) с помощью простых
приборов легко преобразуются к трем перечисленным основным
формам. Поэтому большинство АЦП и ЦПА строятся примени­тельно именно к этим трем формам, хотя необходимость простых
аналого-цифровых и цифро-аналоговых преобразований возника­ет иногда применительно и к другим формам представления ана­логовой информации (прежде всего это касается частоты и фазыэлектрических синусоидальных колебаний).
Не имея возможности рассказать о всем многообразии совре­менных АЦП и ЦПА, ограничимся
рассмотрением лишь отдельных при­меров. Опишем, например, времяимпульсный преобразователь напря­жения в двоичный код. Он состоитиз генератора пилообразного напряжения (рис. 2.1), генератора им­пульсов постоянной частоты и спе­циальной схемы сравнения, фикси­рующей моменты времени, когда на­пряжение равно 0 и измеряемому
напряжению С/. Специальный счет­чик считает импульсы между этими двумя моментами времени.
Тем самым на счетчике возникает цифровой код измеряемого на­пряжения. Точность подобного преобразователя определяется ча-стотои следования импульсов, стабильностью этой частоты, а так­же точностью выработки пилообразного напряж ения. В лучших
образцах точность преобразования достигает 0 ,2 — 0,1% . Скорость
работы преобразователя достигает 10 ООО преобразований в секун­ду, но чаще всего колеблется в пределах от 1000 до 5000.
При преобразованиях угла поворота вала в цифровой код*м ож но использовать счет меток (или непосредственное считы­вание кодов) на специальных кодовых дисках, насаженных наэтот вал. Обратное преобразование может быть осуществлено спомощью так называемых шаговых двигателей.
Один из простейших преобразователей двоичного кода в на­пряжение использует так называемый генератор калиброванных
импульсов. Вырабатываемые им импульсы по амплитуде разли­чаются в 2, 4, 8 и вообще в 2П раз. Подавая калиброванные им­пульсы, соответствующие разрядам двоичного кода, в которых
стоит единица, на специальный конденсатор, мы заряжаем этотконденсатор до напряжения, пропорционального данному двоич­ному коду. Скорость работы такого преобразователя может бытьсделана достаточно большой, однако его точность невелика
(ошибка до 10—1 5% ). Другие типы преобразователей могут
обеспечить несколько большую точность.
Следует заметить, что при прочих равных условиях при аналого-дискретных и дискретно-аналоговых преобразованиях уве­личение скорости приводит к уменьшению точности. Имеются
«аналого-дискретные преобразователи, обеспечивающие до 4 0 0 —800 тыс. преобразований в секунду с точностью 0,4% и 25—«50 тыс. преобразований в секунду с точностью 0 ,1% .
2.2. Функциональные дискретные преобразователи
Если требуется задать любую функцию г/ = /( # ) , в которойх и г/— некоторые двоичные коды (булевы векторы), то, какуже отмечалось в гл. I, эта задача в принципе может быть реше­на с помощью некоторой комбинационной схемы. На практике
наряду со специальными комбинационными схемами, являющ и­мися частью конструкции более сложных устройств, получили
достаточно широкое применение схемы общего применения.
Примером таких схем является так называемый дешифратор.
Он имеет п двоичных входов и N = 2” двоичных выходов. Когдана вход подается некоторый сигнал х = <#4, х 2, . . . , #„>, то в о з ­б у ж д а е т с я (выдает единичный сигнал) один и только одинвыход коммутатора. Дешифраторы *находят применение дляУправления сигналом кода этого канала (открытия и закрытия
каналов передачи данны х), в качестве которого обычно прини­мается номер этого канала в двоичном представлении. Поэтому
Дешифраторы носят такж е и другое название — коммутаторы.

По мере развития электроники и безбумажной информатики по­являются все новые типы функциональных дискретных преобра­зователей. Мы ограничимся, однако, лишь одним приведенным
примером.
К ак уже отмечалось в гл. I, для построения любой комби­национной схемы достаточно элементарных схем трех типов, реа­лизующих логические функции конъюнкции, дизъюнкции и от­рицания. Соответствующие схемы принято называть схемами
совпадения, разделения и инверсии сигнала. Теоретически мож­но свести универсальный набор элементов к одпому-единствеиному типу. Однако мы этим заниматься здесь не будем. Более
того, учитывая реальные свойства
полупроводниковых
схем (являю ­щихся сегодня основой электрони­ки), целесообразно несколько изме­нить подход к выбору элементной
^2
базы. Один из возможных подходов
берет за основу схему ключа.
Рис. 2.2
2.2.1. Ключ. Очень часто в схе­мах современных ЭВМ в качестве
основного логического элемента употребляется так назы ва­емый ключ (рис. 2.2). Нужно различать два типа ключей. Пер­вый из них представляет собой по существу логическую схему
совпадения ъ = х Д у. Однако, учитывая некоторые особенности
физической реализации подобных схем, удобно пользоваться не­сколько иной трактовкой их работы. Особенность, о которой идетречь, состоит в том, что более слабым сигналом у можно управ­лять пропусканием через ключ более сильного сигнала х .
В ключе первого типа единичный сигнал на входе у пропус­кает сигнал х на выход ( о т к р ы в а е т ключ), т. е. г = х при
у = 1, а нулевой сигнал з а п и р а в т ключ, т. е. %= 0 при у = 0.
Если подать на вход х сигнал от постоянного сильного источни­ка, тождественно равный единице, то ключ будет выступать про­сто как усилитель слабого сигнала у\ при этом реализуемая имфункция тривиальна, а именно, г = у,В ключе второго (инверторного) типа положение меняетсяна обратное. Сигнал у = 0 открывает, а сигнал у = 1 запирает
ключ. При # = 1 будем иметь 2= ~]г/. Таким образом, данныйтип ключа может рассматриваться как усилитель — инвертор.
2.2.2.
Функционально полные системы элементов. Если ис­пользовать два указанных вида ключа как двухвходовые элемен­ты, то с их помощью можно построить любую комбинационную
схему (поскольку в составе элементов имеются схемы «и» п«не»). Однако с целью упрощения получаемых схем в систему
дополнительно включаются схемы «и» и «или», причем обычноне в двухвходовом, а во многовходовом исполнении. Схемы этого

0типа могут быть реализованы на полупроводниковых диодах ирезисторах, как это показано на рис. 2.3 и 2.4.

Если сигнал 1 представляется высоким напряжением (+ Е 2),а сигнал 0 — низким напряжением ( - Е ,), то на схеме рис. 2.3
единичный сигнал (высокое напряжение) появляется тогда итолько тогда, когда хотя бы на один из входов х и х 2, . . . , х п по­дано высокое напряжение (единичный сигнал). Таким образом.

эта схема есть схема «или». Аналогично, нетрудно видеть, чтона выходе у схемы рис. 2.4 единичный сигнал (высокое напря­жение) появляется тогда и только тогда, когда высокое напря­жение (единичный сигнал) будет подан на все входы х и х 2,
. . . , х п. Таким образом, эта схема представляет собой схему «и».
Для реализации инвертора и ключей обычных диодов и со­противлений оказывается уже недостаточно. Требуются так на­зываемые а к т и в н ы е элементы, в качестве которых сегодняв основном
используются
транзисторы
(полупровод­никовые триоды). Один изтипов таких транзисторов,называемых полевыми тран­-* гзисторами, представляет со­бой по существу обычный
ключ (см. рис. 2.2): при по­даче на его управляющий
вход у высокого напряжения
ключ отпирается и пропускает ток от входа х к выходу г. При:низком напряжении на входе у транзистор запирается и не про­водит тока. Схема инвертора в таком случае может быть задана
так, как изображено на рис. 2.5. Д ля сигнала на выходе г/, оче­видно, у = ~| .г.
2.2.3.
Синтез функциональных преобразователей. Простейший
метод синтеза, т. е. построения схемы функционального преобра­зователя, состоит в том, что заданная векторная функция^ В м. Глушков

У = (УиУт) = { (х 1,х п) разбивается на отдельные компо­ненты у г =х п). К аж дая из таких функций у ( х и . . . , #п)]очень простым способом может быть представлена в виде фор­мулы специального
вида,а именно дизъюнкции конъюнкций
К&
гч*
«V
_
вида^х Д х 2 Д . . . А х п, где х к равно либо х к, либо ~~\хь. Далее,)используя тождественные преобразования в булевой алгебре (по­добно тому, как это имеет место в обычной алгебре), приводят!
ее к виду, в котором все операции соответствуют выбранной си-|стеме элементов.
Описанный метод оказывается на практике м алоэ коном ич-1
пым, поскольку схемы, реализующие отдельные функции /*, моигут иметь общие участки. К настоящему времени разработаны]достаточно эффективные методы синтеза и м и н и м и з а ц и и !
комбинационных схем. Эти методы воплощены в автоматизиро-1ванных системах проектирования и успешно применяются при|разработках новых ЭВМ.
2.3. Конечные автоматыКак уже отмечалось в гл. I, с позиций теории конечных авто-1матов на практике удобно рассматривать лишь устройства с не -1большим объемом памяти (порядка двух десятков битов). Одна-]ко даже при таком ограничении находится много самостоятель -1
пых применений схем конечных автоматов. Это, прежде всего,]различного рода контроллеры для]управления
относительно
не­сложными устройствами, счетчи -1
ки сигналов, счетчики-дешифра~У2 торы и др.
Д ля построения конечных ав­у,— ^ томатов
томатов достаточно
достаточно кк полному]полному)^^набору
набору комбинационных
комбинационных элемен-]элемен^1х г тов присоединить элементы памя-]Iти одного какого-либо типа. Один]из таких элементов — триггер —]ПГ_епзнетрудно получить, соединяя два!
Рис. 2.6
инвертора, какэто показано]на рис. 2.6 (в несколько упро -1щенном виде). Подавая на вход постоянный единичный сигнал,]легко заметить, что изображенная на рисунке схема, называемая]обычно триггером, может находиться в одном из двух устойчи-]вых состояний. Если ключоткрыт, то сигнал на его выходе(у 1) равен 0. Поступая (через диод 2) на вход ключа К 2, этот]сигнал запирает К 2. Следовательно, сигнал на его выходе ( у2)равен 1. Поступая (через диод 1) на вход ключа К и этот сигнал!
поддерживает его в открытом состоянии. Ввиду симметричности 1

2.4. ПРОЦЕССОРЫ

51хемы возможно и обратное — когда ключ К г открыт и своим вы­ходным сигналом запирает ключ К,.
Если триггер находится в первом состоянии (т. е. ключ л 4
тк ры т), то, подавая на вход ключа К 2 сигнал # 2= 1, мы отпи­раем этот вентиль, в результате чего триггер переходит (или, какобы чно говорят, п е р е б р а с ы в а е т с я )во второе состояние.
Обратны й переход совершается подачей сигнала
= 1 на входключа # 1. В случае, когда триггер должен сохранить свое со­ст оя н и е, на входы подаются нулевые сигналы.
2.4. Процессоры
Определение и принципы работы процессоров уж е были из­ложены в гл. I. Наша задача — описать более подробно раз­личные типы процессоров, употребляемые в современной
практике.
2.4.1.
Арифметические процессоры. Арифметическими назы ­ваются процессоры, предназначенные в первую очередь для авто­матизации вычислительных операций той или иной степени
сложности. Для сложных научных, проектно-конструкторских ипланово-экономических расчетов наиболее употребительны про­цессоры, выполняющие полный набор арифметических операций
(сложение, вычитание, умножение и деление) над многозначны­ми числами в двоичной системе счисления параллельным спосо­бом. Выбор двоичной системы и параллельного способа выполне­ния операций (над всеми разрядами одновременно) обусловлен
тем, что при этом достигаются (при прочих равных условиях)наибольшая скорость вычислений и наилучшее использование
оборудования (прежде всего — пам яти).
Заметим, что для человека двоичное представление чисел не­удобно. Поэтому при любой обработке числовых данных исход­ные и заключительные данные должны быть представлены в де­сятичной системе счисления. Тем самым в процесс обработки наоснове двоичного процессора включаются дополнительно два про­цесса перевода чисел из одной системы счисления в другую иобратно. Поэтому, чтобы использование двоичной системы оправ­дало себя, нужно, чтобы после перевода в двоичную систему надданными производилось достаточно большое число операций.
Во многих системах обработки данных (например, операцийс банковскими счетами, начислении зарплаты и др.) количество
вычислительных операций для обработки каждой очередной пор­ции данных настолько мало, что переводы из одной системы счи­сления в другую не оправдывают себя последующей экономиейна вычислениях. В этом случае предпочтительнее использовать
процессоры, работающие с двоично-десятичными кодами, при­мем, как правило, доля арифметических операций в общем цикле

обработки данных в указанных применениях настолько мала, чтоарифметические операции целесообразно выполнять последова­тельно разряд за разрядом.
Таким образом, мы очертили первое разделение арифметиче­ских процессоров на двоичные параллельные и последовательные
десятичные (точнее, двоично-десятичные) процессоры. В 60-е го­ды они назывались соответственно процессорами для научных иделовых расчетов. Сегодня эти названия уже устарели, посколь­ку в число деловых расчетов включаются сложные планово-эколомические расчеты, не уступающие по сложности вычислений
самым трудоемким научным задачам.
Двоичные параллельные процессоры в свою очередь делятсяна процессоры с фиксированной и с плавающей запятой. Длядвоичных параллельных процессоров с фиксированной запятой,включаемых в состав больших и средних ЭВМ, выбирается до­статочно большая разрядность представления чисел (32 двоич­ны х разряда и более). Точность в 32 двоичных разряда примерно
соответствует десяти десятичным разрядам. Если эта точность
недостаточна, то в ЭВМ включаются режимы работы с двойной
точностью, когда процессор работает сначала с одной половиной
каждого числа, а затем — с другой (на том же оборудовании).
Скорость вычислений при этом значительно уменьшается, при­чем, к сожалению, не в два, а гораздо большее число раз.
Двоичные процессоры с плавающей запятой используют, какправило, более длинные коды (48 или даже 64 двоичных разря­д а ). Д ля них также могут быть организованы режимы, исполь­зующие двойную точность представления чисел. Последователь­ные десятичные процессоры в принципе могут работать с числа­ми произвольной длины. Однако на практике точность представ­ления чисел ограничивается некоторой величиной, хотя обычно идостаточно большой.
Поскольку арифметические операции бинарны, то они (вклю­чая результат операции) имеют дело с тремя операндами. Поэто­му для построения АЛУ арифметических процессоров в принци­пе достаточно трех регистров, из которых один обычно представ­ляет собой накапливающий сумматор. Однако при вычисленияхпо сложным формулам промежуточные результаты с целью по­вышения скорости не выдаются вовне, а сохраняются внутри про­цессора. Для этой цели (а также и для некоторых других целей)арифметические процессоры средних и больших ЭВМ часто снаб­жаются дополнительными регистрами. Иногда эти регистры объ­единяются в стеки. Помимо арифметических операций, в ариф­метические процессоры встраиваются и другие операции, обеспе­чивающие их алгоритмическую универсальность.
2.4.2.
Процессоры мини-ЭВМ. Помимо больших и средних
ЭВМ, большое распространение получили так называемые м ини-

2.4. ПРОЦЕССОРЫ

53

ЭВМ, или миникомпьютеры, предназначенные в первую очередьне для вычислений с большой точностью, а для работы с реаль­ной измерительной аппаратурой, поставляющей данные ограни­ченной точности. Поскольку с этими данными приходится произ­водить немало вычислений, мини-ЭВМ снабжаются обычно п а­раллельными двоичными процессорами небольшой разрядности
(обычно 16 разрядов и даже меньш е). Вообще, производится
максимально возможное упрощение схем, выполняющих арифме­тические операции, особенно операции с плавающей запятой.
Благодаря этому снижаются стоимость и размеры процессора ивсей ЭВМ в целом, что делает этот тип ЭВМ наиболее распро­страненным на практике. Разумеется, подобные процессоры снаб­жаются
универсальным
(алгоритмически полным) набором
команд, что позволяет, в частности, реализовать с их помощью
выполнение поразрядных вычислений в двоично-десятичной
арифметике.
2.4.3.
Интеллектуальные процессоры. Первые ЭВМ строилисьв соответствии с так называемыми принципами фон Неймана.
Одним из этих принципов являлась максимальная простота про­цессоров и, как следствие, максимальная простота набора опера­ций. В состав таких операций включались обычно лишь про­стейшие арифметические операции, логическая операция срав­нения двоичных кодов и некоторые простые операции управле­ния. Это было необходимо, поскольку элементная база ЭВМпервого поколения, основанная на вакуумных лампах, не могла
позволить строить более сложные процессоры. Положение изме­нилось уже во втором поколении ЭВМ при переходе на полу­проводники и при появлении относительно дешевых устройств
памяти для хранения микропрограмм.
Еще в 1959 г. автор высказал мысль о необходимости в связис совершенствованием элементной базы ЭВМ отступать от прин­ципов фон Неймана и, в частности, строить процессоры со слож­ными наборами операций. Эта идея впервые была реализованав ЭВМ МИР-1, выпускавшейся серийно с 1965 г. В набор опе­раций процессора МИР-1 были введены операции вычисления
простейших элементарных функций зш х, 1п х и др., операция п\(факториал) для целых чисел п, операции вычисления (с задан­ной степенью точности) бесконечных сумм, определенного инте­грала и т. п.
В ЭВМ МИР-2, выпускавшейся серийно с 1969 г., в состав
операций, выполняемых процессором, были введены тождест­венные преобразования алгебраических формул, символическое
(формульное) дифференцирование и интегрирование и т. п. П а­мять для хранения микропрограмм как в МИР-1, так и в
Ш 1Р-2 была организована ступенчатым способом, описанным
в п. 1.9.2.

Благодаря высокому уровню машинного язы ка в ЭВМ классаМ ИР резко облегчалось общение с ними. Вместо «тупого» испол­нителя, когда, задавая программу работы, требовалось «растол­ковывать» подробнейшим образом каждый шаг, у пользователя
появился гораздо более «интеллектуальный» помощник, способ­ный понимать его, что называется, с полуслова.
Во второй половине 60-х годов идея интеллектуализации про­цессоров была воспринята американской фирмой Виггои^Ьз и внастоящее время является общепризнанной линией развития вы­числительной техники.
Заметим, что идея интеллектуализации процессоров, реш аясвою основную задачу — упрощение общения пользователя с ЭВМ,,способствует в то же время и решению другой важнейшей зада­ч и — увеличения производительности ЭВМ. Действительно, вопервых, использование крупных операций значительно уменьш аетвнешние обмены процессора, чем существенно повышается общее
быстродействие ЭВМ. Во-вторых, при обычной программной (внепроцессора) интеллектуализации ЭВМ программист, разрабаты­вая программы, должен пользоваться уже готовым набором опе­раций, предоставленных ему разработчиком процессора. Если ж етакие программы переводятся в процессор (на уровень микро­программ) и разрабатываются в м е с т е с процессором, у разра­ботчика появляются дополнительные возможности их оптимиза­ции. Например, вместо выполнения операции деления на 2 привычислениях какой-либо функции можно просто сдвинуть соот­ветствующее двоичное число на регистре на один разряд вправо.
В результате во многих случаях удается получить значитель­ное увеличение производительности. Так, ЭВМ МИР-2 успеш наконкурировала в скорости выполнения ряда аналитических пре­образований с большими ЭВМ с программной реализацией таких
преобразований, которые превосходили МИР-2 по номинальному
быстродействию в сотни раз. Еще один дополнительный эффект
интеллектуализации процессора — значительная экономия памяти
ЭВМ, необходимой для хранения программ и промежуточных
данных.
2.4.4.
Магистральные процессоры. При выполнении последо­вательности команд, поступающих извне, процессор выполняет
целый ряд операций, повторяющихся от команды к команде: ондолжен воспринять извне код очередной операции, адреса, покоторым хранятся операнды, и адрес, по которому должен бытьзаслан результат операции, принять и разместить на регистрах
операнды, выполнить операцию, отослать вовне ее результат иподготовиться к восприятию следующей команды (выработать
адрес, по которому за ней надо обратиться).
Поскольку все эти составные части процесса выполнения лю­бой команды встроены в одну цепочку, напрашивается мысль оби х вы п ол н ен и и на конвейере. Такой конвейер представляет собойряд с о е д и н е н н ы х друг с другом в одну цепочку специализиро­ва н н ы х процессоров, каждый из которых выполняет лишь своючасть работы, после чего передает -обрабатываемую команду сле­д у ю щ е м у специализированному процессору. Сам же он, освобо­ди вш ись от работы по исполнению своей части команды, полу­чает от предыдущего процессора следующую команду для испол­нения соответствующей ее части. Темп выполнения команд приэтом существенно ускоряется.
Рассмотренный конвейерный метод выполнения команд пред­ставляет собой частный случай магистрального метода. В отличиеот только что рассмотренного простого конвейера, в магистралина отдельные составные части раскладывается также выполнение
основной операции. Поскольку такие разложения для разных опе­раций, вообще говоря, различны, в магистральном методе исполь­зуется обычно несколько конвейерных линий с гибко перестраи­ваемыми связями между ними.
Особенно большой эффект подобное распараллеливание основ­ной операции дает в случае сложных операций, характерных дляинтеллектуальных процессоров, причем, чем сложнее операции,тем, как правило,, больший эффект может быть получен.
В идеале на магистральном процессоре последовательность
команд может обрабатываться в темпе следования отдельных
микроопераций или в темпе — один рабочий такт процессора
(микротакт) на одну команду (при достаточной скорости внеш­них обменов).
На практике подобный идеал полностью недостижим, посколь­ку команды не всегда выполняются в порядке их расположенияв программе, однако увеличение быстродействия на один (деся­тичный) порядок в магистральных процессорах достигается от­носительно легко. Поэтому магистральный принцип широко при­меняется практически во всех современных ЭВМ сверхвысокой
производительности, рассчитанных на широкий круг применений.
Учитывая относительную дороговизну магистральных процессо­ров, в более дешевых ЭВМ малой, средней и даже высокой про­изводительности принцип магистральной обработки обычно неприменяется.
2.4.5.
Специализированные процессоры. Если ЭВМ предна­значается для работы, в которой часто приходится использовать
определенные виды сложных операций, в ее состав включают
специализированные процессоры, предназначенные для быстрого
выполнения этих операций. Наибольшее распространение полу­чали векторные и матричные процессоры, в состав которых вклю­чается обычно несколько десятков элементарных процессоров дляодновременного выполнения тех или иных операций над отдель­ными компонентами вектора или матрицы.

Один из первых матричных процессоров (Иллиак IV) былвыпущен фирмой Виггои&Ьз. Показывая высокую скорость приобработке векторов и матриц (порядка 200 млн. элементарных
скалярных операций в секунду), этот процессор снижает, одна­ко, свое быстродействие почти на два порядка при работе собыкновенными скалярными величинами. Впрочем, подобный не­достаток (сильная зависимость быстродействия от класса реш ае­мых задач) присущ всем специализированным процессорам.
Наряду с векторно-матричными процессорами достаточно ши­рокое распространение получили процессоры, ориентированныена задачи спектрального анализа сигналов (быстрое преобразова­ние Ф урье), задачи интерполяции и на ряд других применений.
2.4.6.
Периферийные процессоры. Рассмотренные до сих портипы процессоров применяютя в современных ЭВМ в качествотак называемых центральных процессоров. Для их разгрузки отболее простых операций, прежде всего от операций управления
обмена данными оперативной памяти с внешней памятью иустройствами ввода-вывода, широко используются так называе­мые периферийные процессоры, именуемые часто также канала­ми или канальными процессорами. Как правило, такие обмены
являются групповыми, т. е. обмен происходит не элементарными
данными, а группами (массивами, записями или файлами). По­лучив от центрального процессора указание о начальных адре­сах группового обмена, например, адрес начала записи на маг­нитной ленте и адрес первой ячейки ОЗУ (оперативной памяти) гс которой следует начать записывать в ОЗУ последовательные
атрибуты этой записи, периферийный процессор, далее, всю ра­боту по передаче записи в ОЗУ выполняет самостоятельно или,как принято говорить, в автономном режиме.
Выполняя передачу, периферийный процессор может изме­нять форматы данных, например, принимать данные побайтовоеа передавать побитово или, наоборот, параллельными (много­байтовыми) кодами. В случае, когда такой процессор работаетс медленными устройствами, он может передавать или принимать
данные по одной физической линии вперемежку от р а з н ы хустройств. Тогда эти данные должны сопровождаться некоторы­ми условными кодами (именами устройств). В задачу перифе­рийного процессора, называемого в этом случае мультиплексо­ром, входит расшифровка этих кодов при приеме данных иих формирование при передаче данных. Стандарты форматов
данных и физических форм представления сигналов, употреб­ляемые при взаимодействии канальных процессоров и подсо­единяемой к ним периферии, носят специальное наименование
интерфейсов.
Канальные процессоры специального вида употребляются так­же для сопряжения ЭВМ или их вводно-выводных устройств с

2.4. ПРОЦЕССОРЫ

57•телеграфными и телефонными каналами. Более подробно о к а­нальных процессорах говорится в последующих главах.
К числу специальных периферийных процессоров можно от­нести и устройства первичной обработки информации, поступаю­щей от различного рода датчиков в современных контрольно-из­мерительных системах. Поскольку характер и последовательность
обработки в разных системах отличаются между собой, для та­ких процессоров используются специальные модульно-наборные
конструкции. На стандартных платах монтируются комбинаци­онные схемы и простейшие специализированные процессоры,осуществляющие те или иные требуемые преобразования. Натаких же платах монтируются преобразователи формы инфор­мации, позволяющие сопрягать дискретную часть системы с ана­логовыми датчиками.
Подбирая нужные для обработки платы (модули) и распола­гая их в требуемом порядке на специальных стандартных кон­струкциях — сборках, получают требуемый процессор первичной
обработки (предпроцессор). В сборках имеется система шин, со­единяющих в единое целое вставляемые в сборку модули (снаб­женные стандартными разъем ам и). Для одного из конструктив­ных стандартов, широко используемых в контрольно-измеритель­ных системах для ядерной физики, системы Камак, применяется
связующая система, состоящая из 24 информационных шин.
Заметим, что описанный способ компановки предпроцессоров
можно рассматривать как один из частных случаев магистраль­ного принципа обработки. Тем самым удается получать высокие
скорости обработки, необходимые для экспериментальных иссле­дований в ядерной физике и в ряде других случаев. В тех жеслучаях, когда требования к скорости обработки (равно как и кмаксимальной точности, измеряемой числом информационныхшин) не столь высоки, в мировой практике употребляется другой
побайтовый стандарт — интерфейс предпроцессоров, предложен­ный первоначально американской фирмой Не\у1си Раскагй (такназываемый приборный интерфейс Международной электротех­нической комиссии).
2.4.7.
Микропроцессоры. Успехи микроэлектроники позволили
создать процессоры, полностью размещаемые на одном кристал­ле. Вначале разрядность таких процессоров была очень низкой
(4 двоичных разряда), что фактически не позволяло нспользонать их как отдельные устройства. По мере увеличения уровня
интеграции (спачала до нескольких сотен, а затем и до тысяч
нентилей на кристалл) оказалось возможным повысить разряд­ность однокристальных микропроцессоров до 8, а потом и до
16 двоичных разрядов.
В ряде случаев точность в 16 двоичных разрядов (соответ­ствующих примерно 5 десятичным разрядам) оказывается доста­точной для построения ЭВМ. Это относится прежде всего к такназываемым управляющим ЭВМ, обрабатывающим информацию,поступающую с различного рода аналоговых датчиков. Набор
операций, хотя и несложных, достаточно разнообразен, чтобы
обеспечить эффективные применения таких процессоров на ши­роком круге задач.
2.4.8.
Оценка производительности процессоров. Производитель­ность процессоров определяется обычно количеством операций
(команд), которые они могут выполнить за одну секунду. Однако
время выполнения различных операций может довольно сильно
разниться. Поэтому при определении производительности указы ­вают среднее быстродействие на смеси различных операций, взя­тых в определенных пропорциях друг к другу.
Если /?!, ..., рп — относительные доли этих операций в смеси,а 1и .. . , 1п — время выполнения каждой из этих операций (в се­кундах), то среднее быстродействие ^ вычисляется по формуле
(1.1)Одна из наиболее употребительных смесей, основанная настатистике для многих научных задач и называемая смесью Гиб­сона 1, принимает для операций сложения и вычитания с фикси­рованной запятой р { — 33% , с плавающей запятой
= 7,3% ;для умножения с фиксированной запятой /?з = 0,6%, с плаваю­щей запятой /?4= 4,0% ; для деления с фиксированной запятой
р 5= 0,2%, с плавающей запятой /?6= 1,6% *). Доля операций
других типов составляет 53,3% .
2.5. Центральные процессоры ЕС ЭВМЕдиная система ЭВМ (ЕС ЭВМ) стран социалистического ла­геря, начиная со второй половины 70-х годов, составляет основ­ную техническую базу безбумажной информатики в нашей стра­не. Разработка ЕС ЭВМ производилась с учетом соглашений итенденций, принятых и установившихся в мировой вычислитель­ной технике. В состав системы входят ЭВМ различной произво­дительности, начиная от малой (ЕС-1010 и ЕС-1012) и кончая
высокой (ЕС-1060 и ЕС-1065). Система непрерывно пополняется
новыми усовершенствованными моделями. Модульная структураи высокий уровень совместимости модулей, взятых из разных
моделей, позволяют пользователю наращивать число модулей,заменять одни модули другими, более совершенными [61].
*) Время выполпепия операций сложения и вычитания у ЭВМ обычноМ а л ы е машины ЕС-1010 и ЕС-1012, выпускаемые Венгерскойн а р о д н о й республикой, стоят несколько особняком. Имея неболь­ш о е быстродействие (порядка 5—7 тыс. оп./с) и относительно
малые р а з м е р ы , они относятся скорее к классу мини-ЭВМ. Онип р е д н а з н а ч е н ы в первую очередь для использования в качестве

машин-сателлитов для обслуживания удаленных абонентских
старших моделей ЕС ЭВМ.
Все остальные модели ЕС ЭВМ построены в принципе одина­ково и отличаются друг от друга главным образом количествен­ными показателями, в частности производительностью централь­ны х процессоров.
Термин «центральный» добавляется к процессору потому, чтов состав ЕС ЭВМ входят такж е специализированные периферий­ные процессоры, которые рассматриваются в следующих разде­лах книги. Центральный процессор (сокращенно ЦП) ЕС ЭВМсоставляется из трех отдельных АЛУ: основного АЛУ, выполняю­щего операции двоичной арифметики с фиксированной запятой,и двух дополнительных АЛУ — для двоичной арифметики с пла­вающей запятой и для десятичной арифметики.
Основное АЛУ имеет в своем составе сумматор и 16 32-разрядных двоичных регистров. Оно оперирует с целыми двоичными
числами максимум с 31 двоичным разрядом, что соответствуетне менее 9 десятичным разрядам. Один двоичный разряд исполь­зуется для представления знака числа. В набор операций, выпол­няемых на этом АЛУ, кроме четырех арифметических операцийи операций обмена между регистрами и (внешним по отноше­нию к ЦП) оперативным запоминающим устройством, входятеще некоторые логические операции и операции управления.
Подробнее о них будет рассказано в гл. V.
Арифметико-логическое устройство для чисел с плавающей
запятой, кроме сумматора, располагает четырьмя 64-разрядными
двоичными регистрами. Представление числа — либо 32-, либо€4-разрядными двоичными кодами. Первый разряд отводится подзнак числа, следующие 7 — под характеристику р , а последние
24 или 56 разрядов — под его мантиссу т. Представляемое таким
образом число считается равным ± 0 , т Х 1 6 р-64. Таким образом
могут быть представлены числа в диапазоне (по абсолютной
величине) от 0,54 Х 1 0 -78 до 0,72 Х 1076. АЛУ выполняет 4 ариф­метические операции над такими числами и, разумеется, опера­ции обмена с регистрами.
Арифметико-логическое устройство для десятичных чисел вы­полняет 4 арифметические операции над десятичными числами,которые могут иметь максимально 32 значащие цифры. Это жеУстройство обычно используется для преобразований из двоич­ной системы в десятичную и наоборот. Операции выполняются
последовательно, разряд за разрядом. Числа могут иметь перепунктов

менную длину (не превосходящую, разумеется, 32 разрядов) IУстройство позволяет выполнять (побайтово) некоторые опера-*ции над произвольными (буквенно-цифровыми) словами пере-|менной длины (не превосходящей 256 символов).
>Хотя мы назвали АЛУ для десятичных чисел дополнитель­ным, оно, как правило, включается во все модели, поскольку:операции над словами широко применяются в современной без­бумажной информатике.
1Приведем теперь сравнительные характеристики быстродей^ствия центральных процессоров различных моделей ЕС ЭВМ!
сведя их для удобства сравнения в таблицу. Мы указываем в|ней среднее время (в микросекундах) выполнения следующих]основных операций: сложения (и вычитания) с фиксированной
запятой (± ф . з.), сложения (и вычитания) с плавающей запятой
(± п . з.), умножения с фиксированной запятой (Хф. з.), умно*ж ения с плавающей запятой ( Хп. з.), деления с фиксированной^запятой (:ф . з.) и деления с плавающей запятой (: п. з).
§Тип Э В М

ф.з.

П 3.

±

X
ф.з.

X
п.з.

ф.з.

ЕС-1022
ЕС-1033
ЕС-1040
ЕС-1050
ЕС-1060
ЕС-1065

3 ,3 -6 ,0
1 ,4 - 2 ,7
1 , 6 - 1 ,90,65
< 0 ,3 20,140

1 4 -1 8
4,5
2 ,8 —4,2
1,4< 1 ,7 5
0,288

2 3 -4 2
8,5
6,7—7,62< 2 ,0 0
0,288

26
9,5
6 - 1 2 ,1
2 - 3 ,2
< 2 ,1 0
0,576

6 5 -6 8
14,6
10,6
8,3
< 5 ,0 5
--

±

П.З.

№
*

60
17,7
7 ,6 -1 6 ,1
7,2-12< 4 ,4 013,152

2.6. Цифровые вычислительные машиныК ак уже отмечалось в предыдущей главе, современные ЭВМпредставляют собой систему различных устройств, связанных;между собой физически и управляемых специальной (програм­мной) операционной системой. Наборы устройств и вид опера­ционной системы зависят от мощности ЭВМ, а такж е от ее на­значения и режима использования. Следует подчеркнуть, чтомощность ЭВМ определяется не только производительностью
центральных процессоров, которая может быть полностью реали­зована лишь при надлежащих комплектах и характеристиках
всех остальных устройств и, прежде всего, оперативной и внеш­ней памяти.
По мощности принято различать супер-ЭВМ, большие и сред­ние ЭВМ, м ини-ЭВМ и микро-ЭВМ. По назначению — универ­сальные ЭВМ для оборудования вычислительных центров (ВЦ)общего назначения и ЭВМ, входящие в состав так называемых
программно-технических комплексов, ориентированных на те илклассы применений (например, для решения планово-эко,Ш1ш ч ес к и х задач в масштабе предприятия). По режимам ис­различают пакетный режим, режим реального вре­мени и так называемый режим разделения времени, включаю­щий о б ы ч н о режим диалога.
Не вдаваясь пока в характеристику назначений ЭВМ (этабудет сделано в последующих главах), рассмотрим более подроб­но вопрос о мощности и режимах работы ЭВМ.
2.6.1.
Супер-ЭВМ. Так принято называть уникальные ЭВМили скорее вычислительные системы, предназначенные для реше­ния особо сложных научно-технических, планово-экономических
задач, а такж е задач обработки информации и управления дляособо сложных систем реального времени (например, глобальных
систем противосамолетной и противоракетной обороны).
Производительность таких систем исчисляется сегодня десят­ками (а для специализированных систем сотнями) миллионов
операций в секунду (по Гибсону). Соответственно, их стоимость
исчисляется многими миллионами рублей (порядка 10 млн. руб.
и выше).
Центральные процессоры супер-ЭВМ выполняются па самых
быстродействующих (и потому самых дорогих) элементах и ис­пользуют, как правило, конвейерный принцип обработки команд.
Для подпитки процессоров наряду с ОЗУ используется сверх­оперативная память (СОЗУ) небольшого объема, но очень боль­шого быстродействия. В систему включаются высокопроизводи­тельные периферийные процессоры. Емкость внешней памяти
измеряется обычно многими сотнями миллиардов байтов, а опе­ративной — десятками миллионов байтов (до 256 М байт).
Общее количество информации, которая подвергается обра­ботке в различных частях системы за одну секунду,— так назы­ваемая пропускная способность — достигает у супер-ЭВМ 20 млрд.
байт в секунду и более. Подобная производительность достига­ется благодаря использованию принципа многопроцессорной об­работки. Обычно супер-ЭВМ включают в себя несколько (4, 8 иболее) универсальных высокопроизводительных центральных про­цессоров, а кроме того, возможно, и различного рода специа­лизированные процессоры. Все устройства, включаемые в состав
сУпер-ЭВМ, как правило, имеют экстремальные характеристикипо всем показателям (скорость, объемы памяти, набор возможно­стей управления и т. д.).
Супер-ЭВМ имеются сегодня лиш ь в наиболее технически
развитых странах, а их количество исчисляется единицами, в лучшем случае десятками.
Недавно автором был найден новый принцип организации ра­боты универсальных многопроцессорных систем, названный прин­ципом макроконвейера. Подобно тому, как уже описанный выш епользования

конвейер осуществляет параллельное выполнение отдельных мик-^роопераций, макроконвейер делает то же самое на уровне целых
программных блоков. Специальные средства организации струк-!
тур данных и структурирования памяти, а также гибкая система |коммутации позволяют строить универсальные многопроцессор- *ные системы со многими десятками, сотнями и даже тысячами
процессоров.
I
2.6.2.
Большие и средние ЭВМ. Мы объединяем большие в!
средние машины в один класс, поскольку сегодня они имеют
много общего в архитектуре (составе аппаратуры и принципах
организации их совместной работы). Такие ЭВМ широко приме­няю тся для автоматизации различных информационных процесс
сов: научных и планово-экономических расчетов, проектно-кон­структорской работы, испытаний сложных объектов, организа­ционного и технологического управления сложными объекта -1ми(цехами, предприятиями, отраслями народного х о зяй ства) и др.
Производительность больших ЭВМ исчисляется сегодня мил­лионами, а средних — сотнями тысяч операций в секунду. То жесамое имеет место в отношении объемов оперативной памяти:для больших ЭВМ — миллионы, а для средних — сотни тысяч^байтов. Соответственно (примерно на порядок) разнятся и объ-§емы внешней памяти (сотни миллионов и даже миллиарды бай­тов для больших машин, десятки или сотни миллионов — длясредних). Конфигурация (состав оборудования) ЭВМ может ме­няться в значительных пределах в зависимости от назначения.
В установках со средней производительностью центрального про- \цессора объем внешней памяти и производительность устройств!
ввода-вывода могут достигать значений, характерных для боль-1ших ЭВМ, и наоборот.
§К этим двум классам относятся широко распространенные!
сегодня машины ЕС ЭВМ. Их процессоры уж е были описаны
выше. Что же касается архитектуры ЕС ЭВМ (характерной длябольшинства ЭВМ такого же класса), то она представлена на
рис. 2.7. Кружками на этом рисунке представлено периферийное
оборудование, т. е. устройства ввода-вывода и устройства,внешней
памяти,атреугольниками — контроллеры
этих!
устройств.
яКонфигурация периферийного оборудования и каналов может!
варьироваться в зависимости от назначения машины. Максималь-|по (обычно лишь в старших моделях) в систему может бытЬ|включено 8 каналов (из них один мультиплексор). Число!
же различных периферийных устройств может исчисляться!
сотнями.
|Все обмены между периферийным оборудованием и оператив-1ной памятью выполняются через каналы. Центральный процес-1лишь инициирует каждый такой обмен и получает сигнал
° его окончании. Кроме того, в ЕС ЭВМ имеются еще так назы° емые адресные шины прямого доступа (показанные на рис. 2.7
Штриховыми линиями). Они могут использоваться для подклю­чения источников сигналов, требующих немедленной обработки
центральным процессором. Т акая ситуация может возникнуть,н а п р и м е р , при объединении нескольких ЭВМ в так называемыйм н о г о м а ш и н н ы й комплекс. При этом основные информационные
обмены могут осуществляться через каналы с помощью специ­альных устройств, называемых адаптерами ( к а н а л — канал), какэто показано на рис. 2.8.

Рис. 2.7

Рис. 2.8

Что же касается шин прямого доступа (на рисунке показапы
штрихом), то они используются в основном для передачи управ­ляю щ их сигналов.
2.6.3.
Мини-ЭВМ. К классу мини-ЭВМ принято относить ма­лоразрядные (16 двоичных разрядов и менее) машины неболь­ших габаритов и невысокой стоимости. Что же касается скоро­сти выполнения арифметических операций, то у современных
мини-ЭВМ она практически (если не считать меньшей разрядно­сти) сравнялась с соответствующим показателем для средних
шшин. Кроме того, не имея, как правило, специальной скорости

ной аппаратуры для операций с плавающей запятой, мини-ЭВМуступают в скорости их выполнения машинам среднего класса,снабженным такой аппаратурой.
Мини-ЭВМ уступают машинам среднего класса и по боль­шинству других показателей (объем оперативной и внешней па­мяти, конфигурация периферийного оборудования и т. д.). Имеядело с меньшим числом периферийных устройств, мини-ЭВМ,как правило, не имеют специальных канальных процессоров, ис­пользуя более простые виды интерфейсов (сопряжения) с пери­ферией. Если у больших и средних ЭВМ периферийное обору­дование (и даже его контроллеры) обычно выполняется в видеотдельных шкафов, мини-ЭВМ, используя специальную малога­баритную периферию, зачастую обходятся одним шкафом (несчитая пульта управления и некоторых устройств ввода-вывода).
Мини-ЭВМ находят широкое применение для научно-техни­ческих и планово-экономических расчетов невысокой сложности,а также для автоматизации экспериментальных исследований,управления технологическими процессами и др.
Наибольшее распространение в нашей стране (и в целом всоциалистическом лагере) получили мини-машины серии СМЭВМ.
Архитектура, присущая современным мини-ЭВМ, наиболее
ярко выражена в машинах СМ-3 и СМ-4. В основу этой архи­тектуры положен так называемый принцип общей шины . Общая
шина включает в себя провода для параллельной передачи адре­са, данных и управляющих сигналов. К этой шине подключаются
центральные процессоры, оперативное ЗУ и все периферийные
устройства. Каждое периферийное устройство, как и ОЗУ, снаб­жается так называемым буферным регистром, который включает­ся в общее поле памяти ЭВМ и адресуется точно так же, как иячейки ОЗУ. Кроме того, у каждого устройства имеется одноби­товый регистр — так называемый флажок. Когда флажок п о д ­н я т (в регистр заслана единица) — это означает, что устрой­ство готово к передаче данных. При передаче данных одновре­менно передается код адреса, который воспринимается всеми
устройствами и анализируется специальными схемами. В ре­зультате этого анализа данные (из буферного регистра) воспри­нимаются и передаются только тем устройством, адрес буфер­ного регистра которого был передан по адресным шинам.
В минимальный комплекс машины СМ-3 входят (кроме про­цессора с быстродействием порядка 200 тыс. оп/с) ОЗУ емкостью
16 К, внешняя память (на магнитных дисках и лентах) ем­костью в несколько Мбайт и четыре устройства ввода-вывода.
СМ-4 комплектуется двумя центральными процессорами и со­ответственно расширенными возможностями оперативной и внеш­ней памяти.

У ЭВМ СМ -1 и СМ-2 интерфейс с периферийным оборудова­нием осуществляется с помощью специальных согласователей
ввода-вывода (упрощенных каналов), к каждому из которых мо­жет подсоединяться до 16 периферийных устройств. К централь­ному процессору подсоединяется до трех таких согласователей.
Для подключения удаленной периферии (на расстоянии несколь­ких километров) используются специальные расширители интер­фейсов (см. § 4.9). Интерфейс машин СМ-1 и СМ-2 с перифе­рией носит наименование интерфейс 2 К.
В комплекс СМ-1 включается один центральный процессор,а в комплекс СМ-2 — 2 процессора. Максимальные объемы ОЗУу них равны 64 и 256 Кбайт соответственно.
2.6.4. Микро-ЭВМ. Успехи микроэлектроники сделали возмож­ным появление универсальных микро-ЭВМ, на порядок более де­шевых и малогабаритных по сравнению с мини-ЭВМ. Они обыч­но выполняются в настольном варианте, приближаясь по раз­мерам к обычной пишущей машинке. Собственно центральный
процессор и ОЗУ (объемом от 4 до 64 К) занимают совсем не­большой объем. Необходимость некоторого увеличения объема
вызывается периферийным оборудованием. Пока не разработана
специальная микропериферия, микро-ЭВМ пользуются наиболее
малогабаритными из периферийных устройств мини-ЭВМ.
Состав и возможности периферийного оборудования у микроЭВМ, как правило, значительно меньше, чем у мини-ЭВМ. Тоже самое обычно имеет место и в отношении набора команд
(сохраняющего тем не менее алгоритмическую универсальность).
Работая, как и мини-ЭВМ, с короткими кодами, микро-ЭВМ пе­рекрывают диапазон скоростей от нескольких тысяч до несколь­ких сот тысяч операций в секунду.
Основная область применений микро-ЭВМ — автоматизация
экспериментальных исследований и управлений технологически­ми процессами. В конце 70-х годов большое распространение по­лучила практика встраивания микро-ЭВМ в сложные измери­тельные приборы и технологическое оборудование. Что же к а­сается микропроцессоров, а такж е специализированных комби­национных и последовательностных схем, то они находят
применение и в оборудовании гораздо меньшей сложности.
С микро-ЭВМ не следует путать электронные калькуляторы,которые сегодня выпускаются в «карманном» исполнении (в видеблокнота), встраиваются в часы и т. п. Простые карманные каль­куляторы выполняют четыре арифметических действия. Более
сложные калькуляторы снабжены операциями вычисления эле­ментарных функций.
2.6.5. Режимы работы ЭВМ. Первые ЭВМ решали одну за­дачу за одно обращение. В настоящее время широкое распро­странение получил так называемый пакетный метод обработки.
°К. М. Г. 15ШКОЕСуть его состоит в том, что в ЭВМ вводится не одна задача
(программа), а целый пакет задач. Используя то обстоятель­ство, что в большинстве современных ЭВМ (за исключением
самых малых) различного рода обмены могут выполняться о д ­н о в р е м е н н о с работой центрального процессора, ЭВМ одно­временно работает с несколькими программами (старшие моделиЕС ЭВМ — до 15 программ). Подобный режим, называемый ре­жимом мультипрограммирования, обеспечивает лучшую загрузку
оборудования и увеличение проиускцой способности ЭВМ.
.^Операционная система (Об) ЭВМ осуществляет переключе­ния центрального процессора с одной задачи на другую не толь­ко по их окончании, но и в том случае, если данные для решае­мой задачи еще не переданы из внешней памяти в оперативную*Одновременно с таким прерыванием решаемой задачи формиру­ется задание канальным процессорам найти и передать в ОЗУнедостающие данные. В случае их отсутствия и во внешней
памяти, ОС формирует задание на их ввод в ЭВМ.
Второй режим работы ЭВМ — режим реального времени —уже был в основном описан ранее (1.9.1). Третий режим — ре­жим разделения времени — получает все большее и большее
распространение, позволяя использовать большие ЭВМ и супер­ЭВМ для одновременного обслуживания большого числа абонен­тов. С этой целью операционная система выделяет каждому або­ненту элементарные порции времени, в течение которого ЭВМрешает его задачу. Этот прием особенно эффективен при диа­логовом или, как его еще иначе называют, интерактивном режи­ме работы с абонентами. Суть его состоит в обмене абонентас ЭВМ различного рода вопросами и ответами.
Пока абонент обдумывает ответ и формирует новый запрос*высокопроизводительная ЭВМ успевает обслужить большое чис­ло других абонентов и дать быстрый ответ на вновь поступившшк
вопрос. В результате у каждого из абонентов создается ощущепие, что он один работает с ЭВМ. При достаточно простых за­дачах абонентов и большой производительности ЭВМ время еореакции на запросы настолько мало, что многие десятки и даж есотни абонентов получают ответы на свои запросы практически
одновременно.
Для эффективной работы системы разделения времени ее опе­рационная система строится таким образом, что в с я память
системы (как оперативная, так и внешняя) представляется або­нентам как единая (очень большая) оперативная'память. Полу­чение такой виртуальной (воображаемой) памяти происходитза счет того, что операционная система осуществляет все время
быстрый обмен целыми страницами данных между внешней иоперативной памятью, запоминая (в специальном участке ОЗУ)текущее расположение страниц. Пользуясь этой информацией,операционная система автоматически переводит виртуальный
{так называемый математический) адрес, формируемый абонен­том, в истинный (ф изический) адрес ОЗУ. Разумеется, такой
перевод может быть сделан лишь тогда, когда адресуемая або­нентом страница находится в ОЗУ. В случае ее отсутствия тамдается задание на ее поиск и передачу в ОЗУ. Таким образом,создается очередь задач на обслуживание их нужными страни­цами данных. Разработаны достаточно простые дисциплины т а ­кого обслуживания, осуществляющие приемлемый практически
уровень минимизации очереди задач. Существенно при этом,чтобы размер страниц был не очень большим, но и не очень
маленьким (обычно от 256 до 2048 байт).
2.7. Аналоговые вычислительные машины
Подобно цифровым машинам, машины, оперирующие с анало­говой информацией, такж е строятся из некоторого набора эле­ментов относительно небольшого числа типов. Основу для по­строения таких элементов составляют так называемые операцион­ные усилители, способные усиливать электрический ток в широ­ких спектральных пределах (в частности, медленно меняющий­ся ). Одним из самых важных аналоговых элементов является
интегратор. Электрическое напряжение и(1) на входе интеграто­ра связано с напряжением и(1) на его выходе соотношением
хV (р) = и (I) или V (0 = с + | и (г) Л1. Еще один тип элементов
осоставляют сумматоры аналоговых сигналов. Кроме того, имеют­ся элементы, позволяющие перемножать два аналоговых сигна­ла, умножать сигнал на констан­ х а уту и др.
+Главное назначение аналого­у(0вых машин с таким набором эле­ментов — моделирование решений
л*/(*)■систем обыкновенных дифферен­циальных уравнений. Для каждо­Рис. 2.9
го подобного моделирования нуж ­но по-своему соединить заданные
элементы. Например, схема, показанная на рис. 2.9, состоящаяиз сумматора (+ ) и интегратора ( 8 ), на выходе А вырабатывает
сигнал у{1), который представляет собой решение дифферен­циального уравнения у' = у + х(1).
В течение многих лет развития аналоговой вычислительной
техники составление нужных соединепий элементов производи­лось вручную на специальной коммутационной панели. В совре­менных аналоговых машинах используются автоматические
5*электронные коммутаторы, управляемые обычно универсальными ;цифровыми машинами. В результате возникает своеобразный гиб­рид, состоящий из цифровой и аналоговой частей. Подобные
гибридные ЭВМ широко применяются при проектировании авто­матических систем управления. При этом аналоговая часть обыч­но используется для моделирования объекта управления, а циф­ровая — для собственно управляющей системы. Современные ана­логовые машины выполняются в микроэлектронном исполнениии имеют поэтому небольшие размеры.
Существуют аналоговые машины для решения дифференци­альных уравнений с частными производными и ряда других ма­тематических задач. Главными недостатками аналоговой вычис­лительной техники является, во-первых, малая точность расчетов,,во-вторых (и это еще важ н ее),— отсутствие универсальности,легко достижимой в случае цифровых машин. Эти недостатки
делают аналоговые машины в лучшем случае лишь вспомога­тельным средством в общем арсенале средств безбумажной ин­форматики.

ЗАПОМИНАЮЩИЕ УСТРОЙСТВА
3.1. Запоминающие устройствас произвольным доступомКак уже отмечалось в гл. I, запоминающие устройства с про­извольным доступом представляют собой совокупность ячеек,в каждой из которых может храниться двоичное слово опреде­ленной длины (одной и той же для всех ячеек). Ячейки нуме­руются последовательными целыми числами п = 0, 1, 2, . . . Но­мера ячеек принято называть адресами.
В ЗУ включается так называемый регистр адреса и специаль­ный коммутатор, открывающий доступ в ячейку, адрес которой
помещен в этот регистр. После открытия ячейки с ней можно
выполнить одну из двух операций: запись или считывание ин­формации.
Полный цикл записи состоит из следующих операций: 1) при­ем и запись на адресный регистр ЗУ адреса ячейки, с которой
предстоит работать (рабочей яч ей к и ); 2) прием и запись на спе­циальный регистр операнда ЗУ (регистр числа) слова, которое
нужно записать; 3) собственно запись, происходящая по сигна­лу «запись», передаваемому на специальный вход ЗУ. При за­писи старое содержимое рабочей ячейки стирается и вместо негозапоминается переданное слово.
Полный цикл чтения состоит из следующих операций. Как ипрежде, это 1) прием на адресный регистр ЗУ адреса открывае­мой ячейки; 2) по сигналу «чтение», передаваемому на специ­альный вход ЗУ, передача из выбранной ячейки ее содержимогов регистр операнда ЗУ; 3) передача выбранного слова в выход­ной канал ЗУ. При конкретной реализации ЗУ с произвольным
доступом во многих случаях оказывается, что в процессе чтения
происходит разрушение информации в выбранной ячейке. Поэто­му параллельно с последней операцией выдачи из ЗУ выбрапного
слова осуществляется его повторная запись в выбранную ячейку.
Поскольку повторная запись требует определенного времени,собственно цикл чтения, от момента передачи адреса и сигнала

чтения в ЗУ до момента получения на выходных шинах выбран­ного операнда, занимает меньше времени, чем полный цикл обра1цения к ЗУ (с учетом повторной записи). Имеются конструк­ции ЗУ с произвольным доступом, обеспечивающие неразрушающее считывание информации. Подчеркнем, что во всех случаях
после считывания информации она остается неизменной и гото­вой для последующих считываний.
3.1.1.
Ферритовые ЗУ. В качестве основного элемента дляхранения информации в таких ЗУ используются миниатюрные
колечки, сделанные из специального магнитного материала —феррита (имеющего петлю гистерезиса,близкую к прямоугольной). Намагни__ ченность колечка в одном направлении
отождествляется с записью на нем единицы, а в противоположном направле­нии — нуля. Колечки монтируются в— виде квадратной матрицы, как это по­казано на рис. 3.1.
гЕсли выбрать один из горизонталь­ных (х) и один из вертикальных про­водов (г/) и пропустить через них ток,Рис. 3.1
то при подходящем выборе величины
тока I он способен перемагнитить
лишь тот сердечник, который находится на пересечении прово­дов х и у. Меняя направление тока, можно записать в соответ­ствующий сердечник как нуль, так и единицу. При чтении в сер­дечник по проводам х и у направляется ток, устанавливающийего в нуль. Если до этого в нем была записана единица, то приперемагничивании сердечника в проводе т, наводится электриче­ский импульс. Если же в сердечнике был записан нуль, то тако­го импульса не возникает.
Набирая пакет из п матриц и производя коммутирование ихгоризонтальных и вертикальных проводов одновременно, полу­чим модуль ЗУ с ^-разрядными двоичными ячейками. Разумеет­ся, такой модуль должен, помимо пакета матриц, содержать ещекоммутатор, регистры адреса и операнда, а также соответствую­щие схемы управления.
Если через ш обозначить число вертикальных (или горизон­тальных) проводов, то в построенном таким образом модуле бу­дет т2 ячеек. Для удобства адресации т выбирается обычно ввиде степени двойки: т = 2й, так что число ячеек в модуле рав­но 22\ На практике употребляются модули в 4096 (к = 6), 16384(к = 7) и 65336 (к = 8) ячеек.
Заметим, что матричный принцип организации доступа к ЗУоблегчает коммутирование: для т2 ячеек необходимо коммути­ровать лишь 2т групп проводов. В случае необходимости не­сколько модулей могут объединяться для получения блока ЗУбольшего объема. При этом необходим дополнительный комму­татор Для коммутирования модулей. Что же касается регист­ров адреса и операнда, то их достаточно иметь по одномуна блок.
Быстродействие ферритового ЗУ будет тем больше, чем мень­ше размер сердечников. Кроме того, на быстродействие влияет
также размер коммутатора, так что с ростом объема ЗУ (т. е.
числа ячеек) его быстродействие, вообще говоря, уменьшается.
В настоящее время в ферритовых ЗУ употребляются ферритовьге
сердечники, внутренние диаметры которых составляют доли мил­лиметра. При средних объемах ЗУ (от нескольких десятков донескольких сотен Кбайт) они обеспечивают время цикла порядка
одной микросекунды.
Например, ферритовое ЗУ ЕС-3207, которым комплектуется
отечественная ЭВМ средней производительности ЕС-1033, состоит
из 8 модулей по 64 Кбайт каждый, что дает общую емкость в
512 Кбайт. Время цикла такого ЗУ 1,2 мкс, а время выборки
0,7 мкс.
Ферритовые ЗУ описанного типа (наиболее распространенно­го) разрушают информацию при считывании, так что после вы­борки операнда в цикл встраивается еще операция восстановле­ния содержимого ячейки, из которой происходило чтение. Важ ­ным преимуществом ферритовых ЗУ является то обстоятельство,что содержащаяся в них информация сохраняется при времен­ных отключениях электрического питания.
3.1.2.
Полупроводниковые ЗУ. Полупроводниковые ЗУ пред­ставляют собой по существу некоторое множество обычных триг­герных регистров с соответствующими схемами коммутации иуправления. В эпоху ЭВМ второго, а тем более первого поколе­ния, когда логические элементы были дороги, подобные регистро­вые ЗУ могли строиться лишь на небольшие объемы (обычно неболее одного-двух десятков слов). То же самое имело место идля периода становления ЭВМ третьего поколения, использовав­ших интегральные схемы малого уровня интеграции. Лиш ь вэпоху схем большой интеграции, объединяющих на одном кри­сталле сотни и даже тысячи логических элементов, полупровод­никовые ЗУ стали экономически выгодными.
Преимущество полупроводниковых ЗУ — однородность схем­ных решений в коммутационно-управляющей и в собственно за­поминающей части. В отличие от ферритовых ЗУ, они открыва­ют гораздо большие возможности для микроминиатюризации,Увеличения быстродействия, уменьшения потребления энергии и,главное, для автоматизации их изготовления, а значит, и сниже­ния стоимости. Поэтому, несмотря на своп определенные недо­статки, полупроводниковые ЗУ уверенно вытесняют ферритовые,Недостатки, о которых здесь идет речь,— это, во-первых, потеря
информации при временных отключениях питания, а во-вторых,относительная сложность схем коммутации.
Последний недостаток (приводящий к снижению быстродей­ствия) становится особенно ощутимым для ЗУ большого объема.
Поэтому такие ЗУ (так называемая массовая память объемом внесколько Мбайт) и сегодня пока еще продолжают выполнятьсяна ферритовых сердечниках. Что же касается ЗУ средних и осо­бенно малых объемов (десятки и сотни К байт),то полупроводни­ковые ЗУ по всем показателям, кроме устойчивости к отключе­ниям питания, превосходят феррнтовые и уверенно их вытес­няют.
3.1.3. Другие типы ЗУ с произвольным доступом. В эпохуЭВМ первого поколения определенное распространение получилиЗУ на электронно-лучевых трубках. Основой для памяти здесь
служит принцип выбивания электронным лучом электронов споверхности экрана и образования на нем соответствующего поляраспределения зарядов — так называемого потенциального релье­фа. Громоздкость, небольшая емкость, необходимость постоян­ного поддержания созданного рельефа привели к тому, что этотвид памяти вышел из употребления.
Сегодня появление специальных ячеистых экранов, использо­вание лазеров и голографии позволяют избежать многих недо­статков электронно-лучевых ЗУ. Одна из иностранных фирмобъявила о выпуске в начале 80-х годов ЗУ на электронно-лу­чевых трубках с ячеистыми экранами емкостью в 32 Мбайт паодну трубку. Скорость обмена: 4 Мбайт/с при чтении и
1,5 Мбайт/с при записи. Время доступа — менее 0,1 мс, время
хранения информации без регенерации — несколько часов. Такие
усроиства могут составить серьезную конкуренцию дискам с фик­сированными головками (см. ниж е). Однако пока такие ЗУ по­лучили лишь ограниченное распространение и главным образом
там, где требуется так называемая долговременная память, т. е.
память, в которую информация записывается раз и навсегда,обеспечивая лишь быстрое считывание этой информации.
3.1.4. Оперативное и сверхоперативное запоминающие устрой­ства. Возможность в любой момент считать пли записать инфор­мацию в любую ячейку памяти делает ЗУ с произвольным до­ступом естественным партнером центрального процессора в ка­честве о п е р а т и в н о г о хранилища информации. Это привелок закреплению за ними наименования оперативного запоминаю­щего устройства (О ЗУ ).
При очень большом быстродействии процессора время цикладля обычных ОЗУ (порядка 1 мкс и менее) может являться
серьезным ограничивающим фактором для скорости работы си­стемы ОЗУ — процессор.

Одним из выходов из этого положения является организация
независимой подпитки процессора от нескольких параллельно
работающих блоков ОЗУ. Однако подобное решение приводит кусложнению управления и реализации специальных способов
размещения информации по отдельным блокам ОЗУ.
Другой выход заключается в построении двухуровневой памя­ти, когда относительно медленное ОЗУ большого объема под­питывает не процессор, а специальное так называемое сверхопе­ративное ЗУ (СОЗУ), представляющее собой память с произволь­ным доступом относительно небольшого объема (порядка не бо­лее нескольких К байт), но существенно более быструю, чем ос­новное ЗУ (время цикла порядка 0,1—0,2 мкс). СОЗУ выполня­ются сегодня, как правило, на полупроводниковой микроэлект­ронной основе. Их задача — непосредственная подпитка инфор­мацией особо быстродействующих процессоров.
3.1.5.
Долговременные запоминающие устройства. ЗУ с про­извольным доступом могут строиться так, чтобы информация вних записывалась раз и навсегда и в процессе работы могла
только считываться. Подобные ЗУ называются долговременнымиЗУ (Д ЗУ ). По конструкции они, как правило, значительно про­ще, чем ОЗУ, а кроме того, обычно и быстрее.
В недавнем прошлом наиболее распространенными были ферритовые ДЗУ. От уже описанных выше (п. 3.1.1) двусторонних
ферритовых ЗУ (т. е. с возможностью как считывания, так изаписи) они отличаются тем, что информационный провод ъ(см. рис. 3.1) проходит только через те ферритовые кольца, вкоторых должна храниться 1, иминует кольца, которые соответ­ствуют нулям.
В этом случае упрощение кон­струкции относительно невелико х(исключаются лишь цепи, необхо­димые для записи информации).
В настоящее время ферритовыеЗУ вытесняются диодно-матрич­ными Д ЗУ в микроэлектронном
исполнении. Основу их составляет
матрица,образованная
двумя
Рис. 3.2
перпендикулярными друг к дру­гу системами проводов (рис. 3.2). Если точке пересечения
двух таких проводов (х и у) должна соответствовать единица,то эти провода соединяются в ней полупроводниковым диодом,пропускающим сигнал с х на у. В точках, которым соответству­ют нули, провода остаются несоединенными.
Подобные диодные ЗУ много проще по конструкции, чем по­лупроводниковые ОЗУ, и уже сегодня могут содержать несколь­ко десятков тысяч бит информации на одном кристалле (с пер­спективой дальнейшего увеличения).
Оказывается возможным строить также репрограммируемые
ДЗУ, в которых информацию можно перезаписывать, хотя и нес такой скоростью, как это делается в ОЗУ.
3.2. Запоминающие устройства с последовательным
доступом
Подобно ЗУ с произвольным доступом, ЗУ с последовательным
доступом также разбивается на отдельные ячейки. Отличие меж­ду ними состоит в том, что в ЗУ с последовательным доступом
невозможен прямой скачок от ячейки с адресом т к ячейке с ад­ресом п . Для выполнения такого перехода нужно пройти всеячейки с промежуточными адресами. Ясно, что подобное свой­ство ухудшает качество ЗУ с точки зрения пользователя. Од­нако ЗУ с последовательным доступом гораздо дешевле ЗУ спроизвольным доступом, и именно в этом заключается их основ­ное преимущество.
Сегодня ЗУ с последовательным доступом выполняются в ос­новном на магнитных лентах, аналогичных магнитофонным. Дляполучения такой ленты на пластмассовую основу наносится маг­нитное покрытие, которое намагничивается в одном направлении.
В процессе работы лента протягивается под блоком записываю­щих головок, которые могут изменить направление намагничи­вания.
Используются два основных метода записи. Первый метод —без возврата к нулю (Б В Н ): единицы представлены изменением
направления намагничивания, нули — отсутствием такого изме­нения. При втором методе, называемом фазовым потенциальным(Ф П ), для бита, совпадающего но значению с предыдущим, дваж ­ды меняется направление намагничивания. Если же бит отли­чается по значению от предыдущего, то направление намагни­чивания меняется только один раз.
Второй метод более сложен в реализации (и несколько доро­ж е). Однако он позволяет быстрее и проще исправлять большин­ство ошибок, возникающих из-за мелких дефектов ленты. Кроме
того, он позволяет осуществить большую плотность записи. Обыч­но при методе без возврата к нулю плотность записи (для одной
головки) составляет 32 бит на мм длины ленты, а при фазовом
потенциальном методе — 64 бит на мм.
Наибольшее распространение получили магнитные ленты ши­риной 1/2 дюйма (1,27 см). Запись информации на таких лентах
идет параллельно по 9 дорожкам девятью записывающими го­ловками. Вслед за записывающими головками ставятся 9 счи­тывающих головок, которые осуществляют чтение только что за­писанной информации. На 8 дорожках осуществляется при этомпобайтовая запись нужной информации. Д евятая дорожка ис­пользуется для целей к о н т р о л я записанной информации нотак называемому признаку четности. Значение контрольного би­та для каждого 9-битового кадра записи выбирается так, чтобы
тшсло единиц в кадре было ч е т н ы м . Если при считывании
окажется, что это свойство нарушено, то налицо ошибка, которая
должна быть исправлена.
Ошибки могут вызываться постоянными д е ф е к т а м и лен­ты или временными (приставшие пылинки). Если контрольное
считывание и проверка четности показывают наличие ошибки,обычно производится попытка повторной записи соответствующе­го кадра на то же место в расчете на то, что причина ошибки —временный дефект. Если же и повторная запись окажется оши­бочной, то дефектное место пропускается и запись осуществля­ется в новом месте.
Поскольку лентопротяжный механизм обладает инерцией,запись и считывание идут обычно не отдельными кадрами, аб л о к а м и из многих кадров. Межблочный промежуток выбира­ется в зависимости от скорости движения ленты и инерционных
свойств механизма, с тем чтобы на этом промежутке можно бы­ло осуществить остановку ленты и ее разгон до полной скорости.
Для обычных больших лентопротяжных механизмов длина та­кого промежутка составляет около 1,5 см (0,6 дюйма). Размеры
самих блоков могут варьироваться от некоторого минимального
значения (равного обычно 18 кадрам).
В конце каждого блока записывается обычно контрольный
кадр, который формируется так, чтобы число единиц в каждой
дорожке блока было нечетным. Наличие двух видов контроля
позволяет в случае наличия в блоке единственной ошибки точно
определить ее местоположение (дорожку и кадр) и, следователь­но, исправить ее.
Используются и некоторые дополнительные методы контроля
правильности записываемой и считываемой с ленты информации.
Для идентификации начала и конца ленты на ее обратной
стороне наклеиваются два кусочка алюминиевой фольги, которые
идентифицируются фотоэлектрическим способом. Тем самым мож­но реализовать обратную перемотку ленты для ее установки вначальное положение, а такж е сигнализировать о необходимости
остановки ленты при достижении ее конца. Алюминиевые метки,о которых идет речь, наносятся на некотором расстоянии от на­пала и конца ленты, так что при многократных перемотках отначала к концу и обратно лента не соскакивает с б о б и н лентопротяжки.
Длина ленты для обычных больших лентопротяжек обычно
имеет стандарт 0,75 км. При плотности записи 64 бит/мм этодает максимальную информационную емкость ленты 48 Мбайт.
Истинная информационная емкость из-за наличия дефектных
участков и межблочных промежутков будет, конечно, значитель­но меньше. М аксимальная скорость движения ленты в больших
лентопротяжках сегодня составляет 5 м/с, но обычно не пре­вышает 2—2,5 м/с.
При плотности записи в 64 бит/мм это означает, что макси­мальная скорость информационного обмена (чтения и записи наленту) может достигать 320 Кбайт/с.
Используя еще более совершенные методы записи, можно под­нять информационную плотность до 250 бит/мм и выше и соот­ветственно повысить скорость обмена. Однако в ЗУ на магнит­ных лентах, обычно употребляемых на практике, такие плотно­сти не употребляются из-за удорожания аппаратуры и резкого
повышения требований к качеству ленты. Поэтому чаще всего
довольствуются скоростями информационного обмена от 30 до
180 Кбайт/с. Многие специалисты считают, что повышение плот­ности записи свыше 250 бит/мм вряд ли будет когда-либо рен­табельно.
3.2.1.
Ленточные котроллеры. При работе с магнитной лентой,помимо основных операций записи и чтения, требующих взаимо­действия с другими устройствами, имеется большое число опера­ций вспомогательного характера, которые могут выполняться пода в т о н о м н ы м (местным) управлением. К их числу относятсяуже упоминавшиеся операции обратной перемотки ленты, фикса­ции начала и конца. Кроме того, в больших лентопротяжках
имеется операция разгрузки, при которой лента полностью пере­матывается на сменную бобину, после чего эта бобина может
быть снята и заменена другой.
Операция захвата ленты второй бобиной после установки
сменной бобины в современных лентопротяжках обычно тожеавтоматизируется. Операции контроля правильности записи ичтения и повторной записи или чтения блоков, в которых обна­ружены ошибки, были описаны ранее.
Поиск необходимого блока или зоны ленты после получения
информации о них может также выполняться под автономным
управлением.
Все перечисленные операции выполняются специальными
электронными схемами управления. Определенная часть этихсхем конструктивно совмещается с лентопротяжным механизмом,другие могут быть полностью или частично вынесены в отдель­ные устройства, называемые ленточными контроллерами. Обычно
такой контроллер обслуживает несколько лентопротяжек (чащевсего от 4 до 8). Одной из главных задач, выполняемых таким
контроллером, является задача согласования (синхронизации)скоростей информационных обменов между лентопротяжками иканалами, по которым информация передается в другие устрой­ства.
3.2.2. Лентопротяжки и контроллеры ЕС ЭВМ. В рамках про­граммы СЭВ разработано несколько типов лентопротяжек, рабо­тающих на стандартных бобинах. Внешний диаметр такой боби­ны 207 мм, максимальная длина ленты 750 м (при стандартной
ширине 12,7 мм). Снятая с лентопротяжки бобина для защитыот пыли и механических повреждений помещается в специаль­ный контейнер с внешним диаметром 296 мм.
Лентопротяжка ЕС-5017, разработанная в ГДР, имеет ско­рость ленты в рабочем режиме 2 м/с, плотность записи инфор­мации 8 и 32 бит/мм.
При максимальной плотности записи скорость информацион­ного обмена составляет 64 Кбайт/с. Д ля перемотки ленты (беззаписи и считывания) используется повышенная скорость
(5 м /с). Благодаря этому полное время перемотки стандартной
ленты составляет лишь 2,5 мин.
Разработанная в ЧССР лентопротяжка ЕС-5022 имеет те жепараметры, что и ЕС-5017, за исключением скорости движения
ленты в рабочем режиме, повышенной до 4 м/с. Тем самым обес­печивается максимальная скорость информационного обмена до
128 Кбайт/с. Имеются и другие, еще более производительные
лентопротяжки. Как правило, считывание (в отличие от записи)можно осуществлять на лентопротяжках ЕС ЭВМ при движении
ленты как в прямом, так и в обратном направлениях. Примени­тельно к выпускаемым лентопротяжным механизмам, назы вае­мым такж е ленточными накопителями, разработаны устройства
управления ими (в качестве отдельных устройств): ЕС-5515(ЧССР), ЕС-5517 (СССР), ЕС-5519 (П Н Р) и др. Все они допус­кают подключение до 8 накопителей на одно устройство и обес­печивают необходимую скорость передачи данных.
3.2.3. Кассетные накопители на магнитных лентах. Такие
накопители используются главным образом в составе мини-ЭВМ.
Как следует из их названия, главной их отличительной особен­ностью является использование вместо бобин кассет, подобных
употребляемым в бытовых магнитофонах. Они отличаются удоб­ством в эксплуатации и небольшими габаритами, благодаря чемуобычно встраиваются в один шкаф с другими устройствами ми­
ни-ЭВМ. Кассетные накопители отличаются от бобинных мень­шей информационной емкостью, меньшей скоростью движения
ленты и соответственно меньшей скоростью информационного
обмена.
В качестве примера приведем характеристики кассетного на­копителя СМ-5300 (Н Р Б ), предназначенного для работы в со­ставе унифицированного ряда мини-ЭВМ: СМ ЭВМ. При плот­ности записи 32 бит/мм этот накопитель имеет скорость движе­ния ленты порядка 0,32 м/с, что (при байтовом кадре) обеспе­чивает скорость информационного обмена порядка 10 Кбайт/с.
Емкость одной кассеты составляет около 10 млн. бит, т. е. не­многим более одного Мбайта (против 20 Мбайт и более в бобиипых накопителях).
Другое устройство памяти кассетного типа (УВПК) исполь­зует более высокую скорость движения ленты. С целью упроще­ния и удешевления в нем используется однодорожечный способ
записи, что приводит, разумеется, к еще большему снижению
скорости информационного обмена (до 4 Кбайт/с) и информа­ционной емкости. Поскольку, однако, в мини-ЭВМ требования
дешевизны, малогабаритности и простоты превалируют над тре­бованиями производительности, даже такие низкие показатели
скорости и емкости во многих случаях оказываются вполне до­статочными. В состав УВПК включаются 2 кассетных накопи­теля, контроллер и автономный блок питания. Он имеет неболь­шие размеры и вес (до 35 кг).
Заметим, что в состав СМ ЭВМ могут включаться также иобычные бобинные накопители со стандартной лентой ЕС ЭВМ.
3.2.4. Лентотеки. Возможность съема и автономного хранения
бобин и кассет с записанной на них информацией приводит к:созданию специальных хранилищ такой информации — лентотек.
Ленты в контейнерах или кассеты размещаются в таких лентотеках в строгом порядке в специальных шкафах, где обеспечива­ются необходимые условия защиты от пыли, а также от колеба­ний температуры и влажности воздуха. Важным элементом за­щиты является также экранировка лентотеки от магнитных по­лей, способных испортить хранимую информацию.
Помимо физической защиты обеспечиваются необходимые за­щитные меры организационно-юридического характера. Сюдавходят строгий учет, проверка выдачи, возврата и поступления
материалов в лентотеку, персональная ответственность персонала
лентотеки за сохранность информации. В большинстве случаев
общедоступная информация требует специальной защиты от ееискажения пользователями. С этой целью бобина с такой инфор­мацией снабжается специальным ключом (выполняемым обычнав виде кольца), удаление которого блокирует запись на эту бо­
бину. Чтение же при этом остается возможным. Сотрудники лен­тотеки, владеющие такими ключами, и только они могут (по ме­ре надобности) изменять информацию на таких защищенных
бобинах.
3.2.5. Другие виды ЗУ с последовательным доступом. Помимо
магнитной ленты, ЗУ с последовательным доступом можно осуще­ствить и на других физических принципах. В качестве примера
можно привести, например, акустические линии задержки, сы­гравшие определенную роль в развитии вычислительной техники»Б них роль дорожки играло проволочное кольцо, по которому
распространялись звуковые волны, несущие информацию.
Большие надежды по замене накопителен на магнитной лентеи других электромагнитных устройствах с движущимися частя­ми возлагаются на так называемую память на магнитных доме­нах. Дело в том, что в некоторых магнитных материалах могут
создаваться устойчивые миниатюрные области постояннного н а­магничивания, способные под действием электромагнитного поляперемещаться по поверхности материала, сохраняя заданную
намагниченность (величину и направление).
Эти области, называемые магнитными доменами, становятся
носителями информации, изменяемой и читаемой специальными
неподвижными головками, подобно тому, как это делается в обыч­ной магнитной записи. Однако, в отличие от такой записи, подголовками движется не материальное тело, обладающее инерцией,я безынерциальное структурированное магнитное поле (в соот­ветствии с записанной информацией). Таким образом, создаетсякак бы безынерциальная лентопротяжка, способная практически
мгновенно (с точностью до времени переходных процессов в ус­коряющих полях) останавливаться и набирать скорость. Наличие
такой возможности резко упрощает управление.
К сожалению, трудности технологического порядка пока непозволяют ЗУ на магнитных доменах конкурировать с устрой­ствами, основапными на традиционной магнитной записи, пообъемам запоминаемой информации и по у д е л ь н о й с т о и м о ­с т и хранения в них информации (в расчете на один байт). По­этому пока такие ЗУ используются в ограниченном объеме иглавным образом в различного рода специализированных пре­образователях информации.
То же самое относится к так называемым приборам с зарядо­выми связями (П ЗС ), где переносящее информацию движение
осуществляется не магнитными доменами, а электрическими за­рядами.
Ряд иностранных фирм анонсировали выпуск в начале 80-хгодов ЗУ на приборах с зарядовой связью емкостью в несколькосот Мбайт со скоростью информационного обмена 75 Мбайт/ся стоимостью примерно 0,005 цента на бит хранимой информа­ции. В них используются большие интегральные схемы памятис плотностью несколько сот кбит на квадратный сантиметр.
Примерно тех же параметров по плотности и стоимости(и даже лучших) предполагается достичь и в ЗУ на магнитных
Доменах, хотя скорость информационного обмена у них будет
гораздо ниже, чем в ЗУ на ПЗС. Впрочем, скорости обмена зави­сят не только от физических принципов, на которых строитсяно и от степени запараллеливания доступа (одновременнок о многим «дорожкам»).

во

ГЛ. III. ЗАПОМИНАЮЩИЕ УСТРОЙСТВА

3.3. Запоминающие устройства с прямым доступам
Главный недостаток ЗУ с последовательным доступом — дли­тельное время ожидания подхода под головки нужной ячейки
памяти. Д аж е при условии убыстренной перемотки это времяв неблагоприятных случаях измеряется многими десятками се­кунд, что совершенно не соответствует огромным скоростям ра­боты электронных схем. Вместе с тем перспективы создания де­шевых ЗУ с произвольным доступом большого объема (на де­сятки Мбайт) пока еще достаточно отдаленны.
Поэтому возникает необходимость в относительно дешевыхЗУ большого объема со способом доступа, промежуточным меж­ду произвольным и последовательным. При таком способе, назы ­ваемом прямым, в одном устройстве как бы объединяется боль­шое число ЗУ с последовательным доступом, каждое из которых
имеет относительно небольшой объем и потому относительно не­большое время доступа. Среднее время доступа в таких устрой­ствах при объемах, сравнимых с объемами ЗУ на магнитных
лентах, может быть сокращено в сравнении с ними на 3 поряд­ка и даже более. Рассмотрим различные типы устройств, реали­зующих идею прямого доступа.
3.3.1.
Магнитные барабаны. Магнитный барабан представляет
собой вращающийся цилиндр с магнитным покрытием, с разме­щенными вдоль его оси записывающими и считывающими голов­ками. К аж дая головка (являющ аяся одновременно как записы­вающей, так и считывающей) работает на свою дорожку. Выбор
нужной дорожки (пары головок) производится с помощью бы­стродействующего коммутатора. После выбора нужной дорожки
максимальное время ожидания подхода под головку нужного*места дорожки равно времени оборота барабана вокруг своей оси.
Д аж е для барабанов больших размеров скорость в 3000 об/мшгне является чрезмерно высокой. Для барабанов меньших разме­ров она повышается до 6000 об/мин и более. При 3000 об/минбарабан совершает один оборот за 0,02 с. Таким образом, макси­мальное время доступа к информации на барабане будет 0,02 с*а среднее время — 0,01 с (временем коммутации головок в этомрасчете можно пренебречь).
Поскольку барабан вращается с постоянной скоростью, инер­ционные эффекты в процессе его работы не играют роли (за ис­ключением моментов начального запуска и выклю чения). Поиск
нужного адреса (места на дорожке) производится с помощью
специальной дорожки, на которой записаны синхронизирующие
импульсы. Считывающая головка считывает эти импульсы и на­правляет их па циклический счетчик, показание которого стано­вится нулевым после завершения полного оборота. Каждому
показанию счетчика соответствует определенный угол ново­

\

рота

барабана

и,следовательно,определенный

адрес

па

дорожке.

Объединяя дорожки (вернее, соответствующие головки), можн0 осуществлять параллельную запись и считывание отдельных
байтов и слов (по разряду на каждую дорожку).
Объем памяти, реализуемый на больших магнитных бараба­нах, колеблется в пределах от нескольких сот кбайт до несколь­ких Мбайт. Удельная стоимость хранения информации достаточ­но высока. Если анонсированные показатели ЗУ на магнитных
доменах и П ЗС будут достигнуты, то магнитным барабанам кон­курировать с ними будет уже невозможно. Впрочем, и сейчас
магнитные барабаны практически уступили свое место магнит­ным дискам с фиксированными головками.
3.3.2. Магнитные диски с фиксированными головками. Недо­статком магнитных барабанов является сравнительно малая по­верхность, приходящаяся на единицу объема. Гораздо лучшими
показателями с этой точки зрения обладают магнитные диски,особенно, если треки (дорожки для записи и считывания инфор­мации) располагаются на обеих поверхностях диска (1 трек == 3625 байт). В дисках с фиксированными головками, как и вслучае барабанов, каждый трек имеет собственную (неподвиж­ную) головку для записи и считывания информации.
На мировом рынке имеются однодисковые ЗУ с фиксирован­ными головками емкостью свыше одного мегабайта. Больш аяемкость достигается за счет того, что на один шпиндель насаж и­вается несколько дисков, вращающихся одновременно. Как и вслучае барабанов, переключение трактов выполняется быстро­действующим коммутатором, так что время доступа определяется
практически лишь скоростью вращения шпинделя.
Как и в случае магнитных барабанов, за ускорение доступа
приходится платить увеличением удельной (в расчете на 1 бит)стоимости хранения информации. Эта стоимость не менее чем надва порядка превосходит удельную стоимость хранения информа­ции на магнитных лентах даже при условии, что лента постоян­но закреплена на лентопротяжке (одна лента на одно устрой­ство). С учетом возможности смены лент (много лент на устрой­ство^ разрыв в стоимости будет существенно большим.
3.3.3. Магнитные диски с подвижными головками. Высокие
Удельные стоимости хранения информации на барабанах и дис­ках с фиксированными головками обуславливаются прежде всего
наличием большого числа головок и сложностью их коммутиро­вания. Всего этого можно избежать, используя блок подвижных
головок, как это изображено на рис. 3.3. Головки блока специ­альным шаговым механизмом (гидравлическим или электроди­намическим) устанавливаются с большой точностью (до 0,4—
и ,8 мк) на ряд находящихся друг под другом дорожек. Эта групН М Гл} шков

82

ГЛ III. ЗАПОМИНАЮЩИЕ УСТРОЙСТВА

//

|
•

п а дорожек составляет так называемый цилиндр. Переключение
цилиндров осущ ествляется специальным адресным устройством,управляющим шаговым механизмом, так что коммутировать при­ходится лиш ь ограниченное число пар головок, равное числу ис­пользуемых (рабочих) поверхностей пакета дисков.
Блок головок может быть полностью выведен из пакета дис­ков. Это позволяет строить ЗУ со сменными пакетами дисков,быстро снимаемыми и вновь устанавливаемыми на ш пиндель
дисковода. Подобно бобине слентой, сменный пакет дисков
помещается
вспециальный
контейнер и в таком виде мо­жет транспортироваться и хра­ниться в дискотеках, оборудо­ванных точно так же, как иописанные выше лентотеки.
Рис. 3.3
В мировой практике в н а­стоящее время известны ЗУ насменных магнитных дисках емкостью до 400 Мбайт на шпиндель.
Скорость информационного обмена у таких устройств сущ ествен­но превосходит соответствующий показатель для ЗУ на магнит­ных лентах, достигая значений в несколько мегабайт в секунду.
Плотность записи на дисках превышает в среднем плотность
записи на ленту. Принцип записи — такж е другой. Л инейная
скорость движения магнитного слоя под головками в случае дис­ков измеряется десятками метров в секунду, что на порядок
превосходит соответствующий показатель у лучших ЗУ па маг­нитных лентах.
Время переключения цилиндров (дорожек) в ЗУ на сменных
магнитных дисках имеет порядок 0,1 с. Тем самым обеспечи­вается уменьшение среднего времени доступа по сравнению сЗУ на магнитных лентах не менее чем на три порядка. Правда,удельная стоимость хранения информации у дисковых ЗУ с по­движными головками на порядок больше (а у дисковых ЗУ с ф ик­сированными головками — на два порядка), чем соответствующий
показатель у ленточных ЗУ. Стоимость пакета дисков в 10—
12 раз выше стоимости бобины с магнитной лентой. Две внеш­ние поверхности пакета дисков, которые наиболее подвержены
повреждениям, как правило, не используются для записи инфор­мации. Поэтому число пг рабочих поверхностей при п дисках ,вы раж ается формулой тп = 2п — 2.
В отличие от магнитных лент, в ЗУ на магнитных дисках
обычно избегают параллельной записи информации на несколько !
дорожек. Все разряды каждого байта и каждого слова распола- |гаются вдоль дорожки один за другим. Правда, в связи с зада- |чей дальнейшего уплотнения записи информации и соответствен- Iн0го увеличения числа дорожек на дисках, в последнее время
начали использоваться так называемые интегральные головки^Они представляют собой блок микроминиатюрных головок с со­ответствующими электронными схемами коммутации. Тем самымв принципе достигается возможность параллельного считыванияс группы рядом расположенных дорожек. Сегодня это число до­стигает пятнадцати, но по мере совершенствования интеграль­ных головок может быть увеличено. Впрочем, принятые нынеформы управления накопителями на магнитных дисках за­ставляют использовать дажеинтегральные
головки
лишь,в режиме последовательного доступа к обслуживаемым имидорожкам.
3.3.4.
Дисковые ЗУ ЕС ЭВМ. Для ЕС ЭВМ разработаны дис­ковые ЗУ со сменными дисками емкостью 7,25, 29, 100 и
200 Мбайт. Наибольшее распространение пока получили диско­вые накопители емкостью в 7,25 Мбайт, производимые СССР иН РБ. Советский дисковый накопитель ЕС-5056 имеет 6 дисков,10 рабочих поверхностей. На каждой поверхности имеются 200рабочих дорожек и 3 запасные. Они нумеруются от 0 у наруж ­ного края диска до 202. Н а каждую дорожку записывается
3625 байт информации, что при общем числе дорожек, равном
2000, дает информационную емкость 7,25 Мбайт. Скорость вра­щения диска 2400 оборотов в минуту (40 об/с), чем обеспечи­вается скорость информационного обмена 156 К байт/с (с одной
дорожкой).
Минимальное время поиска цилиндра 0,025 с, максимальное
0,15 с. Среднее время доступа к информации 0,09 с (с учетом
поиска на выбранной дорож ке). Время смены пакета дисков —одна минута.
Накопитель на сменных магнитных дисках ЕС-5061 (Н Р Б )имеет емкость 29 Мбайт. Четырехкратное увеличение емкости
достигнуто за счет удвоения числа рабочих поверхностей и удвое­ния плотности записи. Количество дорожек на поверхности искорость вращ ения шпинделя остаются теми же, что и для
ЕС-5056. Времена доступа и поиска цилиндра такж е имеют при­мерно те же значения. М аксимальная плотность записи (навнутренних дорожках) достигает 90 бит/мм. Скорость информа­ционного обмена с одной дорожкой равняется 312 Кбайт/с.
В накопителях емкостью в 100 Мбайт плотность записи искорость информационного обмена увеличиваются по сравнению
с 29-мегабайтными дисками почти в два раза. Кроме того, удва­ивается число дорожек на каждой рабочей поверхности. Н ако­питель на магнитных дисках емкостью 200 Мбайт разработанв Н РБ. Его код в системе ЕС ЭВМ есть ЕС-5067, а код соответ­ствующего сменного 200-мегабайтного пакета — ЕС-5267. В па­кете 12 дисков с 19 рабочими поверхностями (одна поверхность
Ь*используется для управления сервоприводом блока головок, ос­тальные для отладочных целей). В качестве способа записи ис­пользована модифицированная частотная модуляция с макси­мальной плотностью 159 бит/мм. Н а каждой рабочей поверхности
имеются 808 основных и 7 запасных дорожек (минимальныйш аг между дорожками менее 70 м к). Минимальное время пере­ключения цилиндров (дорожек) — 0,01 с, максимальное — 0,055 с.
Скорость вращения — 3600 об/мин, скорость информационногообм ена— 200 Кбайт/с.
К ак и в случае магнитных лент, многие операции с накопи­телями на магнитных дисках могут выполняться под автоном­ным управлением. Сюда относится поиск дорожки и нужного
байта на дорожке, контроль информации и др. Кроме того, об­мен других устройств с ЗУ на лентах и дисках осуществляется
обычно побайтно (т. е. параллельно 8—9 разрядам и), тогда каксчитывание и запись на диск ведется побитово.
Д ля выполнения сопряжения накопителей на магнитных дис­ках с другими устройствами и управления автономными опера­циями служит устройство управления магнитными дисками.
В ЕС ЭВМ к каждому такому устройству можно подключать до
8 накопителей.
3.3.5. Мини-диски. Д ля мини-ЭВМ используются обычно упро­щенные дисковые накопители, имеющие один диск (2 поверх­ности) на шпиндель. Накопители могут иметь как сменяемые,так и несменяемые диски. Так, накопитель СМ-5402, предназ­наченный для работы в составе СМ ЭВМ, включает два диска:сменяемый (помещенный в удобную кассету) и фиксированный.
На каждой из четырех поверхностей этих двух дисков разме­щается по 200 дорожек (плюс 4 запасные). На каждом диске
размещается около 2,5 Мбайт (6144 байт на дорожке). За счетдостаточно высокой плотности записи (87 бит/мм) скорость пе­редачи данных (информационного обмена) составляет 300 Кбайт/с.
Достаточно высокими являются и скорости позиционирования
подвижного блока головок: минимальное время (при переходе насоседний цилиндр) равно 0,01 с, а максимальное — 0,08 с. Ско­рость вращения диска 2400 об/мин.
3.3.6. Гибкие диски. Особенно удобными для пользования
являются минидисковые накопители на гибких магнитных дис­ках, называемых иногда также дискетами. По внешнему видутакой диск похож на обычную гибкую грампластинку. Поме- ?
щаемый в специальный конверт из плотной бумаги (с отвер- *стиями для вала дисковода и блока головок), он весьма удобендля транспортировки и хранения. О технических характеристиках >накопителей на гибких магнитных дисках см. в [61].
|3.3.7. Ж есткие диски. В последние годы наряду с гибкими I.дисками появились их аналоги, выполненные по так называемой I\уинчестерской технологии. Диаметр таких дисков 200 мм, а ем­кость — до 20 Мбайт. Подобная емкость достигается за счетбольшой плотности записи (2400 бит/м м ). Дисковод для такого
диска приближается по размерам к пишущей машинке. При ем­кости более 10 Мбайт жесткие диски дешевле гибких дисков
равной емкости.
3.3.8.
Архивные ЗУ кассетного типа. Такие ЗУ стали выпус­каться в последние годы иностранными фирмами. Информацион­ными модулями в них являю тся цилиндрические кассеты, содер­ж а щ и е внутри бобину с широкой (порядка 7 см) магнитной лен­той небольшой длины (порядка 20 м ). Благодаря высокой плот­ности записи (250 бит/мм) и большому числу дорожек информа­ционная емкость каждого такого модуля достаточно велика:в Мбайт на кассету.
Благодаря малой длине ленты время доступа к данным сокра­щается до нескольких секунд. Очень важно, что ЗУ такого типавключают в себя автоматизированную лентотеку. В такой лентотеке кассеты помещаются в автоматически (с помощью ЭВМ)адресуемые гнезда, соединенные пневмопочтой с одной или не­сколькими лентопротяжками. Выбранная кассета автоматически
передается и устанавливается на соответствующую лентопротяжку, а находивш аяся на ней ранее кассета (такж е автоматически)возвращается в свое гнездо.
Автоматизированная лентотека, выпускаемая американской
фирмой Соп1го1 Б а 1а, содержит 2000 гнезд, обеспечивая тем са­мым суммарную информационную емкость в 16 млрд. байт. Име­ются сообщения об автоматизированных лентотеках емкостью в
500 млрд. байт, что соответствует примерно полумиллиону 500страничных бумажных томов среднего формата, т. е. хорошей
библиотеке.
Описанные ЗУ занимают как бы промежуточное положение
между устройствами памяти последовательного и прямого до­ступа.
В качестве постоянной (долговременной) архивной памяти
используются оптические ЗУ большого объема. В одном из вы ­пускаемых в США устройств такого рода информация представ­ляется в виде выжигаемых лазерным лучом микронных отвер­стий в полистироловых металлических полосках, наносимых наповерхность стеклянных дисков и считываемых фотоэлектриче­ским путем. На каждом диске имеются 10 таких полосок, а 8 дис­нов набираются в пакет, как это имеет место и в случае обыч­ных магнитных дисков.
Благодаря очень большой плотности записи максимальная
емкость пакета очень велика — порядка 16 млрд. байт. Время
ныборки имеет тот же порядок, что и для магнитных дисков
( 0,1 с). Удельная стоимость хранения информации в таких уст­ройствах фантастически низка (порядка трех миллионных долей
цента на бит) в сравнении с хранением обычной бумажной ин­формации.
Одно время определенное развитие получили архивные нако­пители на магнитных картах. По существу, они могут рассмат­риваться как ленточные архивные ЗУ с очень короткими лента­ми. Их преимуществом является практически прямой доступ кинформации, после того как нуж ная карта извлечена из архиваи помещена (с помощью вакуумного присоса) на вращающийся
барабан (под блоком магнитных головок). Однако это преиму­щество фактически утрачивается в результате гораздо боль­шего времени, нужного для извлечения требуемой карты изархива.
С практической точки зрения более целесообразно, чтобы
времена доступа в архив и к информации на уже извлеченномиз архива носителе имели один и тот же порядок, что и имеег
место в архивных ЗУ кассетного типа.
3.3.9.
Обращение к внешней памяти. Электромеханические
устройства памяти (магнитные барабаны, диски и ленты) вклю­чаются в состав ЭВМ в качестве так называемой внешней памя­ти. Главное назначение этого вида памяти — осуществлять не­прерывную подпитку оперативного ЗУ данными, подлежащ имиобработке, и своевременно освобождать его от уже обработанных
данных.
В современных ЭВМ передача данных между внешними ЗУи ОЗУ осуществляется обычно через специальные упрощен­ные процессоры, называемые каналами или иногда периферий­ными процессорами.
Получая от центрального процессора программу канала, ка­нал выполняет ее в автономном режиме (независимо от цент­рального процессора). В его задачу входит прием и проверка
информации от выбранного внешнего ЗУ, формирование ее в со­ответствии с размерами ячеек ОЗУ и фактическая ее передача впоследовательные ячейки ОЗУ. При записи информации во внеш­нее ЗУ операции передачи и формирования данных выполняют­ся в обратной последовательности. В назначение канала входитг
кроме того, обмен управляющей информацией с контроллерами
внешней памяти и отработка их обращений в центральный про­цессор.
Поскольку устройства внешней памяти допускают достаточна
быстрый обмен данными, на время передачи данных канал пол­ностью занимается одним устройством внешней памяти. Такой
режим использования канала называется монопольным, а кана­лы, работающие в таком режиме,— селекторными каналами.
Стандартный способ представления сигналов в канале и управ-»ления ими принято называть интерфейсом.

3.3.10. ЗУ с другими видами доступа. Помимо ЗУ с произ­вольным, последовательным и прямым доступом, в современныхЭВМ п рим еняется память еще с двумя видами доступа: ассоциа­тивным и стековым.
П р и н ц и п ы работы ассоциативных и стековых ЗУ были изло­жены в гл. I, и здесь мы их повторять не будем. Отметим лишь,что к началу 80-х годов успехи микроэлектроники полупроводни­ковых З У позволили получать блоки ассоциативной памяти истеки, выполненные в виде отдельных чипов.
3.3.11. Место ЗУ различных типов в безбумажной информа­тике. При построепии ЭВМ и автоматизированных систем обра­ботки данных ЗУ различных типов образуют естественную иерар­хию по мере роста их объема и увеличения времени доступа:СОЗУ, ОЗУ, массовая (промежуточная) память, ЗУ на магнит­ных барабанах и магнитных дисках с фиксированными головка­ми. ЗУ на сменных магнитных дисках с подвижными головками,З У на магнитных лентах (включая архивные З У ). Гибкие дискив больших системах используются главным образом как средства
ввода-вывода информации и средства для обмена информацией
между различными системами.
Плотность расположения информации на поверхности стан­дартных магнитных лент колеблется в пределах 125—500 бант/см2,что почти на 2 порядка больше, чем для обычных бумажных
документов. Информационная (поверхностная) плотность длядисковых ЗУ и современной полупроводниковой памяти еще вы ­ше, причем для полупроводниковых ЗУ предел еще далеко недостигнут. Оптические архивные ЗУ и устройства памяти намагнитных доменах могут обеспечить плотности порядка
100 000 байт/см2. Почти таких же показателен ожидают достиг­нуть в ближайшем будущем такж е в ЗУ на приборах с зарядо­выми связями. Показатели объемной плотности для конструктив­но законченных ЗУ, конечно, заметно хуже, но и они начи­нают обгонять соответствующие показатели для бумажных
Документов.
Удельная стоимость хранения информации для ЗУ всех типов,кроме магнитных лент и особенно архивной оптической памяти,пока еще заметно больше, чем в случае обычных бумажных
Докумептов. Для стандартных бобин магнитной ленты удельная
стоимость хранепия информации в 1980 г. по мировым ценам
была примерно та же, что и у бумажных докумептов, а у ар ­хивных оптических ЗУ — существенно меньше.
Решающее значение, одпако, имеет то обстоятельство, что,п отличие от обычных бумажных архивов, информация, хран я­щаяся в ЗУ любого из перечисленных типов, несравненно д и ­н а м и ч н е е , поскольку она доступна для ЭВМ, а следовательи для быстрых машинных методов обработки. Н асколько

важно преимущество динамичности информации, видно хотя быиз живучести такого носителя информации, как перфокарты (см.,гл. IV ). Хотя показатели удельной стоимости и удельной плот­ности хранения информации на перфокартах в десятки раз хуж епо сравнению с обычным бумажным представлением, динамич­ность представления информации позволяла перфокартам в си­стемах организационного управления не только успешно конку­рировать, но и вытесять обычные бумажные документы.
Не следует забывать такж е, что безбумажная информатика
находится в самом начале своего развития и имеет большие
перспективы дальнейшего снижения стоимости хранения и повы­ш ения оперативности обработки информации, чего нельзя ска­зать об информатике бумажной.
Если смотреть лишь на критерий удельной стоимости (забыв
пока об оперативности), то наилучшие показатели сегодня имеет
способ хранения документов в виде сильно уменьшенных фото­копий — микрофильмов и микрофишей.
В обоих случаях носителем информации служит специальная
фотопленка (мелкозернистая или беззернистая). В случае микро­фильмов эта пленка вытянута в длину (при малой ш и рин е),в случае микрофишей имеет форму, более близкую к квадрату
(чаще всего 9 X 1 2 см). В настоящее время микрофильмирование
обеспечивает сокращение линейных размеров на 2 порядка и бо­
лее. При такой плотности на одном микрофише размера 9 X 1 2 смможно уместить порядка 10 тыс. страниц текста или примерно
20 Мбайт информации.
Имеется возможность и дальнейшего увеличения плотности,не менее чем на порядок, за счет перехода от оптических к элек­тронно-лучевым методам записи и применения специального (беззернистого) светочувствительного материала. Т акая технология
позволяет уже сегодня разместить фотокопии всех страниц Боль­шой советской энциклопедии на площади одной стороны спичеч­ного коробка. Правда, при таком уменьшении размеров сильно
услож няется и удорожается считывающая и особенно записы ­ваю щ ая аппаратура. Поэтому уменьшение линейных размеров в
100 раз (и соответственно площади в 10 тысяч раз) дает сегодня
наиболее удовлетворительное решение проблемы.
Архивы на микрофишах имеют размеры, в тысячи р аз мень­шие размеров соответствующих бумажных архивов, и, кроме то­го, допускают относительно простую и недорогую автоматизацию
доступа.
Автоматизация позволяет путем набора на специальном пуль­те номера микрофиши и страницы на ней обеспечить быстрый
поиск этой страницы и ее высвечивание на экране специального
проектора в виде, увеличенном до нормальных размеров. В слу­чае необходимости (с помощью нажима на специальную кнопку)[:может быть получена бумаж ная копия высвеченной страницы
(обычных размеров). Более сложна задача поиска в архиве до­кумента по содержанию. Ее решение требует введения в контур
управления архивом ЭВМ. Более подробно этот вопрос тракту­ется ниже (в гл. V I).
Ввиду особой дешевизны и компактности архивов на микро­фишах в современных системах обработки данных, оперирующихс большими массивами, находит широкое применение двухкон­турный способ организации архивов. Полные тексты документов
находятся во втором контуре в виде микрофишей. Краткое жесодержание и необходимые для поиска признаки этих докумен­тов помещаются в первый контур, использующий магнитные
диски и магнитные ленты.

Г л а в аIVУСТРОЙСТВА ВВОДА, ВЫВОДАИ ПОДГОТОВКИ ДАННЫХ
Устройства ввода и вывода предназначены, как это видно изих названия, для ввода и вывода информации в ЭВМ. В рядослучаев такой ввод осуществляется через промежуточные носи­тели информации. Д ля нанесения информации на эти носители
используют автономные устройства, называемые устройствами
подготовки данны х. Мы разберем вначале устройства ввода и вы­вода информации с помощью промежуточных носителей, клас­сифицируя их по видам таких носителей.
4.1. Перфокарты
Стандартная перфокарта представляет собой прямоугольникиз плотного тонкого картона (толщиной 0,18 мм) размером при­мерно 19 на 8. Она разбивается на 80 колонок, расположенных
поперек карты. В каждой колонке имеются 12 позиций для про­бивания в них прямоугольных отверстий с помощью специаль­ного устройства.
Комбинация одного или двух отверстий представляет десятич­ные цифры, латинские и русские буквы и другие символы стан­дартного базисного алфавита (см. § 1.2), так что всего в 80 ко­лонках могут быть представлены 80 символов базисного алфа­вита. Поскольку каждый такой символ кодируется внутри ЭВМ
8-разрядным двоичным кодом, то информационная емкость пер­фокарты весьма низка — всего 80 байт на карту или 0,5 байт/см2.
Это примерно на порядок меньше, чем у обычных (машинопис­ных) бумажных документов (5 — 6 байт/см2). Поскольку перфо­карта толще бумажного листа, объемная плотность записи ин­формации на перфокартах в несколько десятков раз меньше посравнению с обычными бумажными документами (а удельная
стоимость соответственно больше). В ценах 1980 г. цена перфо­карт для хранения 1 млн. байт информации составляет более
10 р., а цена бумаги для хранения того же объема информации:4 0 - 5 0 к.
4>*Ж ивучесть перфокарт, несмотря на столь плохие информа­ционные характеристики, объясняется главным образом истори­ческими причинами. Дело в том, что перфокарты и работающаяс ними простейшая счетно-сортировочная техника появились ещев конце прошлого столетия, задолго до изобретения ЭВМ. Допоявления ЭВМ перфокарты были практически единственным
способом представления информации, который с помощью спе­циальной электромеханической сортировки позволял осущест­влять автоматизированный поиск и группировку по признакамч больших массивах информации. Дополняя сортировку простей­шими электромеханическими вычислителями — так назы ваемы ­ми табуляторами, а такж е устройствами для пробивки и сверки
перфокарт, получаем комплект так называемых счетно-аналити­ческих м аш ин.
На протяжении более полувека такие машины служили ф ак­тически единственным средством для автоматизации бухгалтер
ского учета, обработки переписей и других видов относительно
несложной обработки больших массивов информации. Н акоплен­ный здесь опыт и навыки, с одной стороны, и наличие готового
перфорационного оборудования — с другой, привели к широкому
использованию перфокарт для ввода информации в ЭВМ. К это­му следует добавить наглядность представления информации наперфокартах и возможность простого визуального ее контроля.
Поэтому, хотя по современным меркам перфокарты уже безна­дежно устарели, они продолжают пока еще достаточно широко
использоваться.
Как уж е отмечалось в предыдущей главе, живучесть перфо­карт является убедительным свидетельством тех преимуществ,которые дает представление информации в машинно-ориентиро­ванной форме. Несмотря на гораздо более плохие информацион­ные характеристики по сравнению с ориентированной на чело­века бумажной формой документов, перфокарты вот уж е почти
столетие успешно конкурируют с ними благодаря возможно­сти автоматизации обработки информации и динамизму ин­формации.
4.1.1.
Устройства подготовки данных на перфокартах. Комп­лект устройств подготовки данных па перфокартах включает всебя прежде всего клавиш ны й перфоратор, набор клавиш кото­рого соответствует базисному (96-буквенному) алфавиту (илиидиому из его сокращенных вариантов). Н ажатием на соответ­ствующие клавиши оператор осуществляет пробивку отверстийв колонках перфокарты, автоматически передвигающейся слева
направо. В одних перфораторах такая пробивка осуществляется
сразу после наж атия на клавиш у, в других происходит запоми­нание набранной информации и одновременная быстрая про­бивка всей перфокарты. Во многих современных перфораторах

пробитая информация автоматически выпечатывается вверху
перфокарты в расшифрованном (т. е. в обычном буквенно-циф­ровом) виде. Примером такого расшифровывающего перфоратора
может служить устройство ЕС-9011. Имеются и отдельные рас­шифровщики уж е пробитых карт, например устройство ЕС-9014.
Второе устройство комплекта — контрольный. Он устроен таклее, как и перфоратор, но не пробивает отверстий, а сравнивает
отверстия на уже пробитой перфокарте с теми, которые соответ­ствуют нажатой клавише. Задача контрольника — фиксироватьвсе несовпадения при вторичном наборе и тем самым осущест­влять контроль правильности пробивок. Контрольники находили
широкое применение в эпоху счетно-аналитических машин и н аранних стадиях развития ЭВМ. В настоящее время в связи сразвитием других средств контроля их употребление резко со­кратилось.
Скорость набивки перфокарт зависит от навыка работы наклавиатуре и во всяком случае не превосходит скорости печатина пишущей машинке. Поэтому подготовка данных на перфо­картах представляет собой весьма трудоемкую операцию, тре­бующую больших затрат ручного труда.
4.1.2.
Устройство ввода с перфокарт. В состав устройства вхо­дят, во-первых, два кармана для к о л о д п е р ф о к а р т . В по­дающий карман колода перфокарт закладывается человеком, вприемном кармане карты накапливаются автоматически после
прочтения их устройством. После завершения считывания колода
удаляется из приемного кармана человеком.
Из подающего кармана перфокарты автоматически, одна задругой, поступают в считывающее устройство, которое сейчас
строится в основном на фотоэлектрическом принципе. Специаль­ный электронный блок сопряжения преобразует получаемые сосчитывателя сигналы в стандартный код внутримашинного пред­ставления базисного алфавита и выдает его в канал ЭВМ (вместес дополнительной управляющей информацией).
Скорость ввода информации с перфокарт обычно колеблетсяв пределах от 500 до 1200 карт/мин, т. е. примерно от 700 до
1600 байт/с. В качестве примера приведем показатели перфокарточного устройства ввода ЕС-6012 (С С С Р): скорость ввода —500 карт/мин, емкость подающего кармана 1000 карт, емкость
приемного канала 1000 карт.
Заметим, что кроме главного стандарта 80-колонной перфо­карты имеются еще 45- и 90-колонные перфокарты. Некоторыеиз перфокарточных устройств ввода способны воспринимать кро­ме стандартных 80-колонных и другие перфокарты. Так, устрой­ство ЕС-6016 способно воспринимать также 90-колонные, а уст­ройство ЕС-6012 (СССР)— 45-колонные перфокарты. Устройства
ЕС-6019 (СССР) имеет скорость считывания 1200 карт/мии,4.1.3.
Устройства вывода на перфокарты. Устройства такого^рода представляют собой перфораторы, управляемые ЭВМ. Ч е­ловек лишь закладывает колоду чистых (непробитых) карт в^подающий карман и удаляет пробитые колоды из приемного
кармана. Само же перфорирование производится автоматически.
Скорость перфорации обычно колеблется от 100 до 250 карт/м ин(примерно от 125 до 330 б ай т/с). Помимо устройства сопряж енияс каналом, выходные перфораторы могут снабж аться такж е бу­ферной электронной памятью для возможности после быстрого
приема в буфер нужной информации производить перфорирова­ние в автономном режиме (без непосредственного участия ЭВМ ).
Заметим, что в выходных перфораторах ввиду сравнительно
высокой скорости их работы (по сравнению с ручными клавиш ­ными перфораторами) удобно иметь два выходных кармана: покаодин карман наполняется, другой может быть опорожнен.
4.2. Мультиплексные каналы
Перфокарточные и другие устройства с относительно малыми
скоростями информационного обмена (по сравнению с внешнимиЗУ) невыгодно подключать к описанным в предыдущей главе
селекторным каналам. Вместо этого используются так назы вае­мые мультиплексные каналы , работа которых организуется попринципу разделения времени. При этом к каналу подсоединя­ется одновременно несколько работающих медленных устройств
ввода-вывода. Информация по каналу идет с «метками» этихустройств, благодаря чему при ее обработке канал не перепуты ­вает адреса. Благодаря большой скорости работы канал успевает
обрабатывать сообщения, циркулирую щ ие между ним и подклю­ченными к нему внешними устройствами, и производить необхо­димые операции обмена с оперативным ЗУ.
Как и селекторные каналы , мультиплексные каналы имеют
свой стандартный интерфейс, который максимально приближ енк интерфейсу селекторных каналов ЭВМ того же типа.
4.3. Перфоленты
Перфолента представляет собой длинную лепту из плотной
бумаги или пластмассы шириной порядка 2 см. Вдоль ленты ор­ганизуется от 5 до 8 информационных дорожек, на которых встрого определенных позициях (па дистанции примерно 2,5 ммДруг от друга) могут пробиваться (перфорироваться) отверстия,комбинируя эти пробивки различным образом, можно представ­лять на ленте различпые символы базисного алфавита. В 8-дорожечных лентах на это уходит одна, а в 5-дорож ечны х — 2 к о л°нки пробивок.

На одном квадратном сантиметре ленты кодируется, таким
образом, 1—2 символа. Этот показатель лучше, чем у перфокарт,но хуже, чем у обычных бумажных документов. Кроме того,в отличие от перфокарт, перфоленты хранятся свернутыми в ру­лоны с большими пустотами в центре, т. е. объемные плотности
хранения информации у перфокарт и перфолент примерно оди­наковы.
Скорости ввода и вывода информации у перфолент и пер­фокарт такж е примерно одни и те же. Цена перфоленты дляхранения 1 млн. байт информации составляет 5—6 рублей. Един­ственным преимуществом перфолент перед перфокартами явл я­ется относительная компактность и меньш ая стоимость работа­ющих с ними устройств считывания и перфорирования. Поэтому
перфоленты часто используются в качестве вводных устройствв дешевых мини-ЭВМ и микро-ЭВМ.
К ак и для перфокарт, для перфолент имеются свои истори­ческие причины, объясняющие их живучесть. Дело в том, чтозадолго до появления ЭВМ перфоленты использовались и до сихпор продолжают использоваться в качестве промежуточных но­сителей информации в телеграфии: набив телеграмму на перфо­ленту (на телеграфном телетайпе), мы получаем возможность
быстро передать ее (с помощью того же телетайпа), не заставляя
линию ждать, пока телеграфист наберет следующую букву.
В случае неправильного приема возможно осуществить новую
передачу без повторного набора и т. д.
В последние годы происходит все большее сращивание ЭВМс системами связи (для удаленного доступа и обмена информа­цией между удаленными ЭВМ ), а это послужило дополнитель­ным импульсом для продления жизни перфолент. Однако в це­лом перфоленты, как и перфокарты, в век безбумажной инфор­матики являю тся анахронизмом и постепенно заменяются (нетолько в ЭВМ, но и в связи) магнитными носителями информа­ции — магнитными лентами и магнитными дисками (в первую
очередь гибкими).
4.3.1,
Устройства подготовки данных на перфолентах. К акуж е отмечалось выше, в качестве такого устройства может вы­ступать обычный телетайп. Разумеется, при использовании егов этом качестве аппаратура, обеспечивающая подключение теле­тайпа к линии связи, становится ненужной. Второе устройство
(еще более комплексное и дешевое) — это обыкновенная пишу- Iщ ая маш инка, снабж енная перфоприставкой. Такие машины, называемые флексорайтерами, осуществляют, как, впрочем, и те­летайп, одновременно с перфорацией и обычную печать (па бу- |маж ный лист или ленту) отперфорированной информации, осу- |щ ествляя тем самым непосредственный контроль правильности |подготавливаемых данных.
-|Применительно к ЕС ЭВМ и СМ ЭВМ разработано несколька
типов устройств подготовки данных на перфоленты, обладающих
дополнительными возможностями, помимо простой перфорации
ленты. Так, устройство ЕС-9024, помимо перфорирования лентыу
обеспечивает такж е режим ручного контроля уже пробитой лен­ты (путем повторного набора), режим распечатки содержимого
ленты на бланке, режим реперфорации для получения дубликата
пробитой ленты, режим сравнения двух перфолент и др. Устрой­ство позволяет осуществлять поиск заданного кода на ленте,о с д а о в по КОДУ} |штом^тздеский пропуск некоторых кодов (в ча­стности, забитых) и др. Скорость работы в реЖимах сравненияи реперфорации 50 строк/с, в режиме распечатки 10 строк/с*.
Дополнительным неудобством перфолент по сравнению с пер­фокартами является большая трудность исправления неправиль­но отперфорированных данных. В случае перфокарт для этого
достаточно заменить лишь неправильно набитые карты, в случаеже перфолент приходится забивать и повторно вводить непра­вильно набранную информацию (что иногда приводит к необхо­димости перебивать всю лен ту), либо делать разрезы и вклейки,,либо исправлять ошибки уже после ввода — в памяти ЭВМ (ис­пользуя добавочно вводимую информацию).
4.3.2.
Устройства ввода с перфоленты. Главными в т а к и густройствах являю тся фотосчитывающая головка и механизм про­тяжки ленты. Этот механизм использует позиционную перфора­цию на специальной дорожке (посередине ленты) и может осу­ществлять обычно как непреры вную , так и стартстопную про­тяж ку (со считыванием по одной строке за р аз). Скорость счи­тывания в непрерывном режиме достигает 1500 строк/с.
Устройства ввода с перфолент имеют обычно не более одной
бобины (в отличие от магнитных лентопротяж ек), называемойв этом случае диском намотки или подающей бобиной. В устрой­ствах ЕС ЭВМ емкость такой бобины равняется 285 м перфо­ленты (порядка 110 тыс. строк). В них используется несколь­ко видов перфолент шириной 17,5 и 25,4 мм с числом дорожек,,равным 5, 6, 7 или 8. В некоторых устройствах, предназначен­ных для протяж ки относительно коротких перфолент, подающ аябобина вообще отсутствует.
Приведем в виде примера характеристики устройства (меха­низма) ввода информации с перфолент Р8-1501 (В Н Р ). Устрой­ство работает и имеет скорость считывания 1500 строк/с с чис­лом дорожек 5, 6, 7 или 8 в стартстопном режиме. Масса устрой­ства 17,6 кг. Термин «механизм» призван подчеркнуть то об­стоятельство, что в устройстве не содержится электронных
схем сопряж ения с каналами ЕС ЭВМ, а имеется лишь соб­ственно устройство считывания с электронным регистром на°Диц символ.

Сопряжение с каналом осуществляется отдельным устрой­ством. В устройство ввода с перфолент ЕС-6022 (СССР) вклю­чен электронный блок сопряж ения с каналом. Устройство рабо­тает с числом дорожек от 5 до 8 в непрерывном и стартстопном
режиме, обеспечивая в обоих случаях скорость считывания
1500 строк/с. Простые безбобинные механизмы ввода с перфо­ленты обычно обеспечивают возможность считывания информа­ции с карт с краевой перфорацией. Такие карты шириной 76,2
или 82,6 мм имеют на краях круглые отверстия, часть из кото­рых прорезана до края. Комбинация отверстий двух типов со­ставляет двоичный код признаков содержимого карты. Полный
текст содержимого карты наносится на нее обычным шрифтом.
Будучи сложены в специальный ящ ик, карты допускают ручную
выборку по признакам. С этой целью используют длинную син­цу, которую продевают через отверстия всех карт в определенной
позиции. Поднимая спицу, извлекают из ящ ика все карты, у ко­торых отверстия в данной позиции не прорезаны до края. Повто­р яя эту операцию для других позиций, можно извлекать нужные
карты по любому многозначному признаку.
Примером устройства (механизма) ввода с перфолент и с картс краевой перфорацией может служить устройство (механизм)ЕС-6191 (В Н Р ). Механизм работает с перфолентами с числом
дорожек 5 —8 и с картами с краевой перфорацией в стратстопноми быстром (квазинепрерывном) режимах, обеспечивая считыва­ние не только при прямой, но и при обратной подаче. Скорость
считывания в стартовом режиме (вперед-назад) 40 строк/с,а в режиме быстрого считывания 150 строк/с.
4.3.3.
Устройства вывода на перфоленту. Электромеханиче­ские перфораторы, управляемые ЭВМ. Примером такого устрой­ства (с блоком стандартного сопряж ения с каналом ЕС ЭВМ)может служить устройство ЕС-7022 (СССР). Оно работает встартстопном режиме и обеспечивает скорость перфорирования
до 150 строк/с. Форма выходной информации — 8- либо 5-доро­ж ечная перфолента. Скорость вывода 150 строк/с является ти­пичной для ленточных перфораторов. Повышение этой скорости
встречает многие трудности конструктивного характера.
4.4. Читающ ие автоматыК ак уж е отмечалось выше, использование бумажных (хотяи машинно-ориентированных) носителей информации в виде пер­фокарт и перфолент представляет собой в какой-то мере даньистории. Становление безбумажной информатики постепенно за­м еняет их магнитными носителями информации. Однако переходк безбумажной информатике не означает полного отказа от тра^опционны х бумажных форм представления информации, ориея*тированных на человека. Речь идет о переводе в память ЭВМ ина машинные носители подавляющей массы информации.
Наличие ориентированных на человека бумажных документов
ставит задачу автоматизации их ввода в ЭВМ. Эта задача реш а­ется специальными устройствами, получившими название читаю­щих автоматов. Обычная схема работы читающего автомата та­
кова. В приемный бункер загруж ается пачка разброшюрованных
документов (по одному листу). В простейших читающих авто­матах устанавливается при этом стандарт на формат листов. Бо­лее совершенные автоматы работают с листами разного формата
(меняющегося в некоторых заданных пределах). В загружаемой
пачке эти разноформатные документы должны быть выровненыпо одному из углов (удобнее всего по левому верхнему).
Из приемного бункера тем или иным способом (например,с помощью специального рычажного механизма с вакуумными
нрисосами) листы один за одним передаются на считывающий
механизм. Он может представлять собой вращающийся барабанс вакуумным присосом, вдоль оси которого осущ ествляется ска­нирование помещенного на барабан листа с текстом специальным
блоком фотоголовок. Особая электронная схема (достаточно
сложная) осуществляет последовательное распознавание и дво­ичное кодирование напечатанных на листе букв, цифр и других
символов. С помощью специального блока сопряжения эта ин­формация передается в канал ЭВМ.
Читающий автомат обычно заранее настраивается на тот илииной печатный шрифт. После такой настройки можно осуще­ствлять считывание текста с листа с достаточной скоростью (ко­леблющейся в зависимости от типа автомата от нескольких сотдо нескольких тысяч символов в секунду).
Надежность распознавания при настройке на заданный
шрифт такж е может быть сделана достаточно высокой. Количе­ство возможных ошибок на миллион распознанных символов ухороших читающих автоматов гораздо меньше, чем при ручном
вводе соответствующего текста. В ряде случаев частичной непро­печатки или частичного замазывания символа автомат продол­ж ает его правильно распознавать, в то время как человек теряет
такую возможность. Описанные результаты были получены уж ена первых экспериментальных образцах отечественых читающих
автоматов ЧАРС, разработанных еще в конце 60-х годов.
Попытки построить читающий автомат, способный распозна­вать (без предварительной настройки) любые печатные шрифты,приводят к огромному его усложнению и удорожанию. Задачаже автоматического чтения произвольных рукописных текстовне решена в полном объеме до сих пор. Правда, если ограни­читься строгими правилами написания символов и писать ихРаздельно друг от друга, то задача автоматического чтения
В- М. Глушкоп

подобной (формализованной) рукописной записи решается отно­сительно просто. Применительно к распознаванию десятичных
цифр такая задача не только решена, но и широко внедрена впрактику автоматического распознавания рукописных цифровых
индексов на почтовых конвертах.
Оценивая состояние автоматического ввода бумажных доку­ментов в ЭВМ в целом, можно сказать, что при большом числе
символов, а такж е разнообразии шрифтов и форматов бумагион обходится пока значительно дороже по сравпеиию с вводом
перфокарт, перфолент и других машинно-орентированных носи­телей информации. Этим обстоятельством объясняется не слиш­ком широкое распространение читающих автоматов. Правда, ус­пехи микроэлектроники позволят несколько улучшить положе­ние. Однако бумажным документам свойственны и такие трудно
устранимые недостатки, как непрочность и неудобство машин­ного манипулирования. Поэтому при проектировании автомати­зированных систем данных стремятся обойти бумажные докумен­ты как источник информации для ЭВМ всякий раз, как это ока­зывается возможным.
4.4.1.
Карты с карандашными отметками. Ввод информациив ЭВМ значительно облегчается, если эта информация заранее
сформирована таким образом, что человеку, использующему по­добную форматированную карту, достаточно подчеркнуть нужноеили вычеркнуть ненужное. Подобные отметки (делаемые для на­дежности специальными карандашами) легко считываются отно­сительно простыми специализированными читающими автоматами.
Их специализация заключается в том, что они лишь устанавлива­ют факт наличия или отсутствия отметки в той или иной пози­ции. Содержательное же значение этого факта (что означает
отметка в данной позиции) заложено в конструкцию устройстваили в память ЭВМ, к которой это устройство подключено.
Карты с карандашными отметками используются при массо­вых анкетированиях и переписях населения. Использовались они,в частности, в последней всесоюзной переписи населения в 1979 г.
В мировой практике широко применялись, а кое-где и сейчас
применяются так называемые дуалъ-карты. Они представляют
собой по существу обычные перфокарты, только заранее форма­тированные и потому пригодные для нанесения па них информа­ции с помощью карандаш ных отметок. Прочтя эти отметкщ
специальное устройство может осуществить пробивку перфокартв соответствии с информацией, записанной первоначально с по­мощью отметок. Тем самым существенно облегчается подготовка
исходных данных на перфокартах, ибо исключается ручное пер­форирование карт.
Отметки делаются не только быстрее, чем перфорирование,,но и, что очень важно, без специального оборудования н без спе-циальпо подготовленного персонала. Например, при использо­вании дуаль-карт на производстве они заполняются обычным
производственным и административно-управленческим персона­лом. При этом по сравнению с традиционными методами фикса­ции учетной и управленческой информации их работа суще-,ственно упрощается.
4.5. Печатающие устройства
4.5.1.
Устройства последовательной печати. Простейшим уст­ройством вывода информации из ЭВМ на печать является обыкно­венная электрифицированная пиш ущ ая машинка, управляемаяЭВМ через специальный электронный б л о к * ). Конструктивно
этот блок либо совмещается с машинкой, либо встраивается в спе­циальный стол, на котором крепится машинка. Помимо управле­ния печатающим механизмом, в функции блока входит такж есопряжение устройства с каналами ЭВМ.
Следует подчеркнуть, что обычные рычажные пишущие ма­шинки, к числу которых принадлежит и электрифицированнаяпиш ущ ая маш инка Консул (Ч С С Р), не могут обеспечить ско­рость печати выше 10—12 зн/с. Для повышения скорости ис­пользуют другие типы механизмов печати, в которых возвратно­поступательные движения сведены к минимуму.
Одними из первых стали применяться легкие (сменные) го­ловки, на которых нанесены символы рабочего алфавита машин­ки. Перемещ аясь и вращ аясь, головка обеспечивает подвод подзаданную позицию любого из этих симво­лов, после чего она прижимается к крася­щей ленте и через нее оставляет соответ­ствующий отпечаток на бумаге.
Вместо головки, имеющей две степени
свободы движения, можно использовать
замкнутую цепь, несущую на себе литеры
алфавита и перемещаемую с большой ско­ростью вдоль позиции печати. К ак только
нужная
литера
оказывается
наэтойпозиции, осуществляется прижим к нейролика с бумагой (через красящую лен­ту), т. е. печать соответствующего символа.
Еще один способ — быстро вращающийся диск с гибкими ле­пестками, на которых помещаются литеры (рис. 4. 1); когда нуж ­ная литера находится в позиции печати, осуществляется ее при­жим к бумаге через красящую ленту.
*) Роль такой машинки может выполнять обыкновенный телетайп.

Перечисленные способы позволяют поднять скорость пе­чати при выводе из ЭВМ до 30—40 зн/с и даже несколько
выше.
Еще большим быстродействием обладает так называемый
точечный (игольчатый) механизм печати. Его основу составляет
группа иголок, концы которых образуют прямоугольный точеч­ный растр, соответствующий по размеру печатаемым литерам.
В подобной игольчатой матрице каж дая иголка может двигаться
независимо от других с помощью специальных электромагнит­ных приводов. Прижимаясь через красящую ленту к поверхности
бумаги, она оставляет на ней точечный след. Комбинациями
таких точек можно представить любой требуемый символ.
Ввиду легкости иголок и малости их перемещений скорость
точечных устройств печати достаточно высока, достигает 200 зи/с.
Большим удобством устройств такого рода является то, что ихалфавит определяется электроникой, так что при смене алфавита
никаких переделок в механизме не требуется. К числу достоинств
этих устройств относится и их малошумность. В печатающих
устройствах со сменяемой головкой, а такж е цепных и лепестко­вых, настройка механизма на другой алфавит требует замены
всего одной части. Наиболее же трудна замена у рычажных ме­ханизмов. В некоторых печатающих механизмах имеется воз­можность печати двумя цветами за счет оперативной (по ходупечати) автоматической подмены красящей ленты.
Примером устройства с точечной печатью является последо­вательно печатающий механизм ЕС-7186 (П Н Р ). Он использует
квадратный точечный растр из 49 ( 7 X 7 ) точек и обеспечивает
скорость печати 180 зн/с. Встроенная электроника обеспечивает
печать 96 символов с возможностью расширения до 128 символов.
Устройство имеет буферное ЗУ на 256 байт.
Большие достоинства имеют струйные печатающие устройства.
В них используется принцип нанесения знаков на обычную бу­магу с помощью микроструи красящего вещества (чернил), выдав­ливаемой из миниатюрного сопла. При выходе из сопла капельки*из которых состоит струя, заряж аю тся электростатическим заря­дом и отклоняются управляемым электрическим полем. Управле­ние полем делается специальной электронной схемой — так на­зываемым знакогенератором. Другой способ не предусматривает
отклонения струи. Все необходимые для получения различных
знаков операции происходят за счет относительного перемещения
сопла и листа бумаги (в двух взаимно перпендикулярных направ­лениях), а такж е за счет включения и выключения струи в нуж ­ные моменты времени. Во втором способе требуется большой
объем буферной памяти в устройстве (обычно для запоминания
целой строки). Зато очень легко реализуется многоцветная пе­
чать. за счет установки соответствующего числа сопел.

4.5.2.
Устройства строчной печати. При необходимости ещеболее повысить скорость печати употребляются алфавитно-циф­ровые печатающие устройства (сокращенно АЦПУ) с параллель­ной (строчной) печатью. К ак следует из их названия, этиустройства печатают не последовательно буква за буквой, а сразу
целую строку.
Одними из первых получили распространение барабанные
АЦПУ. Основу их механизма составляет длинный (во всю длину
строки) барабан. По дорожкам поперек оси барабапа располага­ются выпуклые литеры, по полному экземпляру литер алфавитана каждую дорожку. Число дорожек равно числу знаков (симво­лов) в строке. Печатаемая строка располагается вдоль образую­щей барабана. Прижимные молоточки действуют независимо другот друга, приходя в движение, когда нужные буквы алфавита
находятся под ними, так что за один оборот барабана вся строка
оказывается напечатанной.
В цепных АЦПУ литеры насаживаются на замкнутую цепь,движущуюся вдоль строки. Прижимные молоточки в каждой по­зиции строки ловят момент, когда под ними находится нуж наябуква. При полном прохождении всего алфавита вдоль строки
строка оказывается напечатанной.
АЦПУ со знаковыми колесами можно представить себе в видебарабанного АЦПУ, у которого барабан разрезан на отдельные
диски (колеса), по одному на каждую позицию строки, вращаю­щиеся самостоятельно. Перфорация служит для подачи бумагипри переходе к печати следующей строки. В подающем кармане
может храниться запас ленты длиной до 1000 метров. Ш ирина
ленты может колебаться от 80 до 420 мм, максимальное число
символов в строке (число знаковых колес) 128, скорость печати
до 900 строк/мин (15 строк/с). Максимальное количество копий
(через копировальную бумагу) 4. Переключение на различные
форматы бумаги производится вручную. Возможна печать наформатных бланках без краевой перфорации. Управление пере­мещением бланков производится с помощью перфоленты с 4 до­рожками. Устройство имеет буферное ЗУ на 128 байт и снабж а­ется пультом оператора, на котором находится сигнализация
(например, сигнал об окончании бумажной ленты и необходи­мости заправки новой ленты ), а также клавиши управления
(пуск, холостой ход и т. п.). Специальный электронный блок,придаваемый АЦПУ, обеспечивает автономное управление им,а также сопряжение со стандратным каналом ЕС ЭВМ. Польское
АЦПУ
ЕС-7033обеспечивает
большую
скорость
печати
(1100 строк/мин).
Однако, вообще говоря, механические АЦПУ практически
допускают увеличения скорости выше 1200—1500 строк/мин
(20—25 строк/с). Гораздо большая скорость печати (несколько

сот строк в секунду) обеспечивается в электрохимических АЦПУ.
В них вдоль строки располагается линия иголок, по несколькуна каждый символ строки. При подаче на иголку электрического
импульса в находящейся под ней бумаге, пропитанной специаль­ным химическим составом, возникает изображение точки. У прав­л яя соответствующим образом подачей импульсов на иголки приперемещении бумаги на высоту буквы в ней возникает изображе­ние целой строки букв (собранное из точек).
На электрохимических АЦПУ можно легко варьировать алф а­виты, выдавать не только алфавитно-цифровую, но и графическую
информацию. Большим недостатком, однако, является использо­вание специальной бумаги и относительно невысокое качество
печати. Этих недостатков лишены струйные строчные печатающие
устройства, которые работают по уж е описанному выше прин­ципу, но с большим числом сопел одновременно (на всю строку).
Такие устройства сохраняют практически все преимущества элект­рохимических устройств (включая высокую скорость печати) ивместе с тем лишены их главных недостатков.
4.5.3.
Страничные принтеры. В последние годы ряд фирм ос­воили производство печатающих устройств с использованием л а­зеров, обеспечивающих скорость вывода свыше 20 тыс. строк/мии.
Эти устройства, получившие наименование страничных принте­ров, отличаются весьма большой гибкостью, позволяя осуществ­лять печать на бумаге различных форматов с двух сторон раз­ными шрифтами, выводить графическую информацию и т. п. Онидопускают использование в качестве копирующих устройств. Н е­которые из выпускаемых страничных принтеров допускают мно­гоцветную печать.
4.6. Устройства ввода н вывода графической информацииДо широкого применения цифровой вычислительной техникив контрольно-измерительной технике для регистрации информа­ции, поступающей от контрольно-измерительных приборов, ис­пользовались различного рода самописцы. С их помощью инфор­мация представлялась в виде графиков на бумажных носителях
либо на фотопленке. Для ввода таких графиков в ЭВМ исполь­зуются специализированные графосчитывающие устройства. Онипредставляют собой по существу один из видов аналого-дискретных преобразователей, рассмотренных в гл. II.
В настоящее время в связи с развитием цифровой измеритель­ной техники подобный способ ввода информации в ЭВМ следует
считать устаревшим. При необходимости промежуточной ф икса­ции информации, получаемой от измерительных приборов с циф­ровым выводом, в настоящее время принято использовать магнит­ную ленту. Ф иксируя не аналоговую, а цифровую информацию,магнитная лента может быть впоследствии использована в ЭВМ.
Кроме того, подобный способ фиксации информации устраняет
дополнительные ошибки, которые возникают при представлениии последующем считывании аналоговой информации в видеграфиков.
Второй вид устройств, употребляющихся для ввода графиче­ской информации,— так называемые считыватели координат.
Внешне такое устройство представляет собой прямоугольный
планшет, по которому вручную можно перемещать специальную
головку. Эта головка обычно снабжена лупой с перекрестием.
Наведя это перекрестие на ту или иную точку поверхности план­шета (путем соответствующего перемещения головки), автомати­чески измеряют координаты этой точки в осях, совпадающихс двумя сторонами планшета. На планшет помещается чертежили карта, с которой и производится считывание информации.
При движении головки вдоль некоторой линии можно автомати­чески вычислять и передавать в ЭВМ координаты точек, распо­ложенных на этой линии (их густота зависит от скорости дви­жения головки).
Для реализации автоматического считывания координат ис­пользуется несколько принципов. Один из самых простых заклю­чается в том, что в головке (выполняемой в этом случае в видеиглы) находится источник ультразвука. Этот звук воспринимается
приемниками, расположенными но сторонам планшета. По вре­мени задержки прихода звука на приемники специальное элект­ронное устройство вычисляет координаты излучающего конца
иглы.
Большой точности съема координат можно достичь в мозаич­ных планшетах. Датчики в них размещены под поверхностью
планшета, а измеряемой ими величиной может служить, напри­мер, емкость между ними и обкладкой, установленной на пере­двигаемой по планшету головке.
4.6.1.
Графопостроители. Устройства для вывода информациииз ЭВМ на бумажные носители принято называть графопострои­телями.
Графопостроитель планшетного типа (рис. 4.2) представляет
собой планшет, на котором закрепляется (обычно вакуумным
присосом) лист чертежной бумаги. П иш ущ ий узел (головка) у к­репляется на траверсе, которая специальными шаговыми двига­телями может перемещаться вдоль длинных сторон планшета.
Сам пишущий узел способен перемещаться (такж е с помощью
шагового двигателя) вдоль траверсы, т. е. в направлении, парал­лельном коротким сторонам планшета. В пишущем узле на спе­циальном поворотном устройстве закреплены чернильные перьяс разноцветными чернилами, которые и производят вычерчивание
тРебуемых линий, точек и символов. Чтобы не загруж ать память

IЭВМ подробной информацией о вычерчиваемых символах, эта ин- ;формация обычно встраивается в специальный электронный блоктак, что, получив от ЭВМ лишь код символа и привязывающиеего к определенному месту чертеж а координаты, графопострои­тель может вычертить его самостоятельно в автономном режиме.
Этот ж е блок осуществляет обычно линейную и круговую интер- \поляцию , так что, например, для вычерчивания отрезка прямой §из ЭВМ достаточно передать лиш ь координаты его начала |и конца.
1

Рис. 4.2

Из дополнительных функций, выполняемых блоком управле­ния графопостроителем, отметим еще возможность изменения мас­ш таба (в автономном реж им е), изменение толщины и характера
вычерчиваемых линий и др. Кроме того, блок управления осу­ществляет сопряжение графопостроителя с каналом ЭВМ. Иногда
добавляется возможность полностью автономной работы графо­построителя с машинным носителем, на который заранее выве­дена из ЭВМ требуемая информация.
В качестве примера рассмотрим графическое регистрирующее
устройство (графопостроитель) планшетного типа ЕС-7015 (СССР).
Оно выполнено в виде стола с добавочным шкафом для электрон­ных блоков. Формат листа бумаги, закрепляемого на планшете,1 2 0 0 X 1 1 5 0 мм. Размеры рабочего поля 10 5 0 X 1 0 0 0 мм. Элемен­тарный шаг пишущего узла 0,05 мм. М аксимальная скорость
вычерчивания 50 мм/с. Возможности автономного изменения мас­штаба — в отношениях 1 : 2 , 1 :1 , 2 :1 . Толщина линий записи
(трехцветной) 0,3 и 0,5 мм, тип линий записи — сплошной (не­прерывный), штриховой и штрихпунктирный. Ориентация вычер­чиваемых по коду 253 символов — под 16 углами (через 22,5°).
Имеется автономная линейная и круговая интерполяция.
Другой тип графопостроителей — так называемый рулонны й —предназначен для вычерчивания чертежей и рисунков на длинном
рулоне бумаги, перематываемой с помощью двух валиков какв одном, так и в другом направлениях. Это движение бумаги
заменяет движение траверсы у планшетных графопостроителей.
В данном случае траверса укреплена неподвижно (параллельно
осям валиков). Пишущий узел перемещается по траверсе точнотак же, как и у планшетного графопостроителя.
В качестве примера рассмотрим рулонный графопостроитель
ЕС-7052 (СССР). Он работает с рулоном бумаги длиной 80 м ишириной 420 мм. Размеры рабочего поля 390 X 600 мм. Элемен­тарный шаг пишущего узла 0,1 мм. М аксимальная скорость вы­черчивания 200 м/с. Вычерчивание производится непрерывными
линиями трех цветов толщины 0,3—0,9 мм. Как и в предыдущем
случае, имеется возможность автономного изменения масштаба,а также линейная и круговая интерполяция. Ориентация вычер­чиваемых знаков — либо вертикальная, либо горизонтальная.
Графопостроитель может работать в автономном режиме с управ­лением от перфоленты.
Для графопостроителей (графических регистрирующих уст­ройств) иногда употребляется еще одно название — плоттеры,причем планшетные графопостроители называются двухкоорди­натными, а рулонные — однокоординатными плоттерами. Послед­нее название не вполне точно (особенно в случае возможности
движения рулона бумаги в двух направлениях), ибо этим дви­жением как раз и реализуется вторая координата.
Заметим, что скорость вычерчивания можно увеличивать засчет увеличения элементарного шага пишущего механизма. Нов таком случае уменьшается точность вычерчивания. Поэтому к а­чество графопостроителя принято измерять произведением скоро­сти на точность или частным от деления скорости на величину
элементарного шага пишущего механизма (что в принципе то жесамое). Для ЕС-7051 этот последний показатель равен 1000,а для ЕС-7052 - 2000 с - 1.
В составе ЕС ЭВМ имеется графопостроитель рулонного типаЬС-7053, у которого этот показатель равен 3000 с -1 (шаг 0,05 мм,скорость 150 м м/с). Он работает с широкой бумажной лентой
(ширина 878 мм, длина 20 м) и обеспечивает все функции уст­ройства ЕС-7051.

Еще одно устройство для ввода и вывода графической информации — так называемый графический дисплей — рассматривает­ся ниже в разделе диалоговых средств общения с ЭВМ.
4.7. Устройства подготовки данных на магнитных
носителяхК ак уж е отмечалось выше, подготовка данных для ЭВМ наперфокартах и перфолентах представляет собой дань предшеству­ющей исторической эпохе. В эпоху перехода к безбумажной ин­форматике она постепенно вытесняется подготовкой данных не­посредственно на машинных носителях — магнитной лепте имагнитных дисках. Основная трудность, связанная с таким пере­ходом, заключается в том, что эффективное использование поверх­ности магнитных носителей требует высокой скорости записи,несовместимой с возможностями человека. Поэтому устройства
подготовки данных на магнитных лентах и дисках должны содер­ж ать достаточно сложные электронные блоки сопряж ения с необ­ходимой буферной памятью.
В эпоху ЭВМ 1-го и 2-го поколений, когда электроника былаотносительно дорога, подготовка данных на магнитных носителях
использовалась довольно редко. Успехи микроэлектроники сдела­ли такую подготовку экономически выгодной. В настоящее время
выпускаются устройства подготовки данных на магнитной ленте
бобинного и кассетного типа, а такж е устройства подготовки дан­ных на гибких магнитных дисках. Для подготовки данных на маг­нитных носителях (вклю чая и сменные магнитные диски) иногда
используют дешевые ЭВМ, снабженные пультами набора данныхв виде электрифицированных пишущих машинок, телетайпов илиалфавитно-цифровых дисплеев (см. ниж е).
В качестве примера устройства подготовки данных на магнит­ной лейте бобинного тнпа рассмотрим устройство ЕС-9002 (Н Р Б ).
Работая на клавиатуре, оператор вводит данные в буферную
память, содержимое которой высвечивается на экране дисплея,расположенного непосредственно над клавиатурой. Осуществляя
непосредственный визуальный контроль вводимой информации,оператор может тут же исправить возможные ошибки. При на­личии повторяющ ихся групп данных они дублируются автомати­чески, без полного повторного ручного ввода. Эта и ряд других
программно-реализуемых функций позволяют повысить на 30%производительность оператора по сравнению с перфорацией карти лент.
.После ввода и проверки блока длиной 80 или 160 символов онавтоматически переписывается на стандартную магнитную лентус платностью 32 бит/мм. Необходимые промежутки между бло­ками обеспечиваются устройством автоматически. Записанная идгформация может непосредственно вводиться в ЭВМ через стан­дартные лентопротяжки. К ак и для других магнитных носителей,имеются по крайней мере три важных преимущества перед под­готовкой данных на перфоносителях. Во-первых — гораздо большая информационная плотность и гораздо меньшая удельная
стоимость магнитных носителей. Во-вторых — увеличение произ­водительности в процессе подготовки данных и особенно привводе их в ЭВМ. В-третьих — возможность многократного исполь­зования носителя для подготовки различных данных.
Устройство ЕС-9006 (В Н Р) обеспечивает запись данныхс клавиатуры на кассетную магнитную ленту, которая может чи­таться на ЕС ЭВМ с помощью тех же устройств ЕС-9006 илиустройства ЕС-5094 (входящего в состав ЕС-9006). Емкость кас­сеты 80 Кбайт на каждой стороне. Емкость блока 80 символов.
Устройство снабжено бесконтактной клавиатурой, работающей(по емкостному принципу) от легких прикосновений пальцев.
Тем самым обеспечиваются дополнительные удобства для опера­тора. К ак и устройство ЕС-9002, оно обеспечивает визуальный
контроль, возможность исправления и многие другие дополнитель­ные функции.
Те же функции и те ж е принципы построения характерны идля устройств подготовки данных на гибких магнитных дисках.
Весьма перспективными являю тся устройства подготовки дан­ных на сменных блоках ЗУ на магнитных доменах. Их безынерционность сильно упрощает организацию работы на различных
скоростях — весьма малых при подготовке данных человеком ивесьма больших при ее чтении ЭВМ. Отпадает необходимостьв буферных ЗУ и сложных схемах сопряжения. Привлекают иминиатюрные размеры сменяемых блоков, облегчающие их пере­мещение. Заметим, что приборы с зарядовыми связями, в отличпеот магнитно-доменных, не годятся для автономной подготовки
данных (с последующим переносом на ЭВМ) вследствие того,что запасенная в них информация теряется при отключении
питания.
4.8. Диалоговые терминалы
Диалоговый терминал — это вводно-выводное устройство, накотором пользователь может вести диалог с ЭВМ. В качестве та­кого устройства могут быть использованы обычные электрифици­рованные пишущие машинки или телетайпы. Для диалогового
режима чрезвычайно важно максимально уменьшить в р е м яР е а к ц и и ЭВМ на запросы пользователя. Поэтому желательно
сокращать по возможности и время печати ответов ЭВМ. Такую
возможность дают печатающие машинки с точечным (игольча­тым) растром. Одпако, если ответы коротки, а время «обдумыва­ния» ответа машиной велико, то увеличение скорости печати малопомогает делу. Это показывает, что выбор типа машинки должен
каждый раз определяться конкретными условиями диалога.
Поскольку машинка документирует диалог, то для его после­дующего разбора удобно, чтобы информация, исходящ ая от че­ловека и от ЭВМ, печаталась различными цветами. В машинках,в которых это возможно, обычно используется в таком случае
красный и черный цвет.
4.8.1.
Алфавитно-цифровые дисплеи. Особые удобства длядиалога представляют экранные пульты (терминалы) — так назы ­ваемые дисплеи. Обычно дисплей строится с помощью электрон­но-лучевой трубки, аналогичной кинескопу обычного телевизора.
Дрожание изображения, характерное для изображения на экране
телевизора, в дисплеях устраняется за счет более высокой ча­стоты обновления кадров (обычно 50 кадров/с вместо 24 кад­ров/с у телевизора).
Подобное повышение в случае телевидения (при принятых
ныне принципах его работы) привело бы к необходимости уве­личения полосы частот передатчиков и, как следствие, к резкому
удорожанию всей системы. В электронно-лучевых дисплеях об­новление кадров производится из буферной памяти, конструктив­но совмещенной с трубкой в одном футляре, так что никаких
дальних передач информации не требуется. Информация, посту­пающая в дисплей от ЭВМ, служит лишь для обновления инфор­мации в буферном ЗУ. Ее передача может вестись на гораздо
меньших скоростях, соответствующих возможностям каналов
ЭВМ, поскольку, как правило, полное изменение кадра требует
предварительного прочтения старого кадра человеком.
С целью уменьшения объема буферного ЗУ при отображении
алфавитно-цифровой информации в ЗУ запоминается для каждой
позиции экрана только код символа, ко­торый должен высвечиваться в этой по­зиции. Изображение же символа генери­—|руется по его коду специальным элект­-ронным устройством, называемым гене­ратором символов.
Помимо электронно-лучевых сущест­вуют еще так называемые плазменные
---дисплеи. Они строятся на принципе тле­И.
Ующего разряда, возникающего в разре­женном
газе между двумя проводниками,Рис. 4.3
к которым приложено электрическое н а­пряжение. Подбором газа можно получать различный цвет раз­ряда. В плазменном дисплее микроразряды создаются в точках
пересечения двух систем металлических полосок, нанесенных наповерхности двух плоских стекол (рис. 4.3), помещенных на1Г

"

4— Н —
-1

1г

- Ч -

1

-4------н—

I1

|

1

|

-

*---- Г------ 1^очень малом расстоянии друг от друга. Промежуток между стек­лами заполнен разреженным газом. Полоски настолько тонки,что прозрачны и даже практически невидимы, так что глаз вос­принимает не их, а отдельные разряды точечного размера. Меж­д у системами полосок х н уприложено постоянное напряжение,достаточное, чтобы поддерживать тлеющий разряд, но недоста­точное, чтобы его заж ечь. Д ля заж игания разряда на пересечении
двух полосок х и у на эти две полоски подаются импульсы, ко­торые увеличивают напряж ение выше порога заж игания толькона их пересечении. Туш ится разряд подачей импульсов противо­положных знаков.
Преимуществом плазменного дисплея является то, что он нетребует буферного ЗУ для поддержания изображения. Самдисплей (точнее, система тлеющих разрядов) представляет собой
своеобразное ЗУ с непосредственно наблюдаемой информацией,которая в нем хранится. Второе преимущество плазменного дис­плея — плоский прозрачный экран. Это позволяет дополнять изо­бражение на его экране любыми картинками, проецируемымис помощью видеопроектора на заднюю стенку экрана (рис. 4.4).
В странах СЭВ большое распространение получили венгерские
алфавитно-цифровые дисплеи. Приведем характеристики одногоиз них, имеющего шифр ЕС-7061. Частота регенерации кадров
50 кадров/с. Максимальное число знаков, одновременно воспроиз­водимых на экране, 1024. Число символов в наборе не менее 64.
Размер экрана 150 X 200 мм. Буф ерная память — на 1024 байт.
М аксимальная скорость передачи данных 100 Кбайт/с.
Помимо клавиш и для набора символов базисного алфавита
(сокращенного) имеются еще функциональные клавиш и для уп­равления дисплеем. Одной из функций управления является уп­равление специальным значком, называемым маркером или курсором, который с помощью специальных клавиш может двигатьсяв двух взаимно перпендикулярных направлениях и устанавли­ваться в любую позицию на экране. С помощью маркера можно
указывать место, с которого надо воспроизводить печатаемую ин­формацию. Можно производить стирание отдельных знаков и це­лых строк. Специальной клавишей можно стереть и весь текст наэкране. Во многих типах дисплеев набор подобных редакторских
Функций очень богат: можно производить автоматическую раз­движ ку текста при впечатывании в него новой информации, ме­нять форматы текста и т. п.
К дисплею придается блок стандартного сопряжения с кана­лом ЕС ЭВМ, благодаря чему информация с дисплея может пе­редаваться в ОЗУ ЭВМ и обратно. Быстрота отображения инфор­мации, наглядность ее представления и возможности редактироВания делают дисплейный терминал гораздо более удобным дляПользователя, чем пиш ущ ая машинка. Единственный недостаток

дисплея — отсутствие документированного диалога — может бы тьвосполнен специальной программой, осуществляющей документи­рование с помощью любого подсоединенного к ЭВМ печатающего
устройства. Имеются и такие дисплеи, которые с помощью быст­рого (сухого) фотографического процесса за несколько секунд
дают бумажную копию (обычно уменьшенную) всего, что былоизображено па экране в момент наж атия кнопки «копировать».

Рис. А Л

4.8.2.
Графические дисплеи. Будучи устроены в прппципе также, как и алфавитно-цифровые дисплеи, графические дисплеи от­личаются от них возможностью высвечивания на экраие любых
графиков и рисунков (в лучших дисплеях — полутоновых и даж ецветны х). Для получения рисунков хорошего качества они, какправило, имеют большее разрешение, чем алфавитно-цифровые
дисплеи. Помимо генераторов символов, в графический дисплей

встраиваются генераторы векторов различной длины и направле­н и й , а также, возможно, и других линий (дуг окружностей, про­стых кривых, заданных уравнениями, и др.)- Используя програм­мы, закладываемые в ЭВМ, можно производить и другие, более
сложные операции: повороты, перемещения, изменение масшта­бов и др.
Графические дисплеи на электронно-лучевых трубках снаб­ж аю тся обычно так называемым световым карандашом (пером).
13 конец этого карандаш а встроен фотодатчик. Если фиксировггть
концом карандаш а какую-либо точку на экране, то в процессе
развертки изображения электронный луч трубки засветит датчик.
Полученный в результате этого электрический импульс передает­ся по подсоединенному к карандаш у проводу на специальный
электронный блок дисплея, вырабатывающий по времени прихода
импульса координаты точки касания карандаш а. Эти координаты
передаются в буферную память и используются в следующем
цикле развертки для высвечивания на экране отмеченной точки.
Передвигая конец карандаш а по экрану, осуществляют ввод (поточкам) и последующее высвечивание траектории его движения.
Переключением специального тумблера на карандаш е он превра­щ аете# в «резинку», стирая засвеченные точки, а при движении
карандаш а и целые линии.
В составе ЕС ЭВМ имеется графический дисплей ЕС-7064(СССР), изображенный па рис. 4.5. Он имеет буферное ЗУ на
4096 байт с циклом не более 2 мкс. Размеры рабочего ноля экрана
250 X 250 мм. Скорость вычерчивания векторов 3 мм/мке. Нарядус чертежами дисплей может отображать и различные символы,в том числе буквы и цифры.
4.8.3.
Диалог голосом. Вывод информации из ЭВМ обычным
человеческим голосом может быть осуществлен двумя путями.
В одном из них на специальном устройстве (с прямым доступом)записываются отдельные слова или фразы, произносимые дикто­ром. Задача ЭВМ состоит в том, чтобы последовательно выбирать
записанные фрагменты речи и формировать из них нужные от­
веты. Второй путь — прямой синтез (с помощью специального
электронного синтезатора) первичных звуковых элементов чело­веческого язы ка — так называемых фонем и формирование из нихслитной речи.
На обоих путях достигнуты практические успехи. Разработапы и действуют различного рода справочно-информационные си­стемы, выдающие ответы голосом. Машинной «речи», правда, не­достает богатства интонаций и эмоциональности, свойственных
человеческой речи, но для деловых разговоров возможностей ма­шинного голоса вполне достаточно. Заметим, что более современ-*пыми и более быстро развивающимися являю тся звукосинтезиру­ющие системы.

Ввод человеческого голоса в ЭВМ представляет собой более
трудную задачу. Правда, когда речь идет о небольшом числе слов(два-три десятка), произносимых раздельно и достаточно отчет­ливо, решить задачу автоматизации ввода относительно просто*Рис. 4.5

В случае же обычной слитной речи с достаточно большим слова­рем (порядка тысячи слов и более), да еще в условиях помех(в виде производственных ш умов), задача достаточно надежного
распознавания была реш ена сравнительно недавно в СССР, СШ Аи Японии (пока в экспериментальных лабораторных образцах) гтак что голосовые диалоговые терминалы для работы с ЭВМв сколько-нибудь массовых масш табах — пока дело будущего.
4.9. Удаленные терминалы и абонентские пункты
Дальность передачи обычных сигналов, используемых в кана­лах ЭВМ, относительно невелика. В зависимости главным образомот быстродействия канала она колеблется от нескольких метров,до нескольких сотен метров. При передаче на большие расстояния
нужно использовать либо специальные устройства для восстанов­ления слабых сигналов в условиях шумов, либо коренным образом
менять форму представления сигналов для передачи их по су­ществующим каналам телеграфной и телефонной связи.

\Применительно к первому способу в составе ЕС ЭВМ имеется
устройство преобразования сигнала низкого уровня ЕС-8028(В Н Р), работающее по 2-проводной или 4-проводной физической
линии в так называемом дуплексном режиме, т. е. с одинаковой
скоростью одновременно в прямом и обратном направлениях,расстояние устойчивой работы зависит от числа проводов и ско­рости передачи информации. При двух проводах и скорости
2400 бит/с дальность передачи достигает 16 км, при четырех
проводах и той же скорости 28 км. При четырех проводах искоростях 4800 и 9600 бит/с максимальная дальность равна со­ответственно 18 и 10 км.
В состав СМ ЭВМ моделей 1 и 2 включен так называемый
мультиплексорный разветвитель интерфейсов (РИ М ), сопрягаю­щийся на расстоянии нескольких километров с ЭВМ через стан­дартный машинный интерфейс. Устройство РИМ-1 может бытьудалено от ЭВМ на расстояние до 3 км, а устройство РИМ-2(подсоединяемое через РИМ -1) увеличивает это расстояние еще
на 8 км. К каждому из устройств РИМ-1 и РИМ -2 может подклю­чаться до 16 периферийных устройств.
Для выхода на обычные телефонные и телеграфные каналы
связи сигналы преобразуются специальными устройствами моду­лирования и демодулирования — так называемыми модемами. Примодуляции сигнал из машинного вида преобразуется в «связной»вид (т. е. вид, используемый в канале связи). При демодуляции
производится обратное преобразование.
Кроме модемов, меняющих физическое представление сигна­лов, при сопряжении с каналами связи необходимо менять ихлогическое представление. В частности, из побайтового представ­ления, принятого в каналах ЭВМ, при выходе в каналы связи
необходимо переходить к побитовому представлению. Необходимо
также принять дополнительные меры по защите от ошибок. Весэти функции выполняются аппаратурой передачи данных (сокра­щенно А П Д ). При работе с коммутируемыми каналами связив состав АПД включается обычно устройство автоматического*вызова, формирующего и посылающего в линию номер требу­емого абонента. О принципах построения АПД и модемов
несколько более подробно говорится ниже, в главе, посвященной
сетям ЭВМ.
По скорости передачи данных различают: 1) Низкоскоростные
модемы (до 300 бит/с), использующие телеграфные каналы связи.
Их примерами могут служить модемы-200 ЕС-8001 (Н Р Б ) иЕС-8002 (ГД Р и В Н Р). Они достаточны для работы со всеми ти­пами электрифицированных пишущих машинок, кроме машинокс точечным механизмом печати. 2) Среднескоростиые модемы
перекрывают диапазон скоростей от 600 до 9600 бит/с, используя
стандартные телефонные каналы. Наиболее часто используются
^ В. М. Глушков

скорости 1200 и 2400 бит/с, что достаточно для работы с высоко­скоростными печатающими устройствами последовательного дей­ствия. Примерами могут служить модем-1200 ЕС-8006 (ЧССРП Н Р ), модемы-2400 ЕС-8010 (СССР), ЕС-8011 (В Н Р и др.).
3) Высокоскоростные модемы (от 19,6 Кбит/с и выше) использу­ют несколько телефонных каналов и позволяют подключать кЭВМ дистанционно-перфоленточные и перфокарточные устройст­ва вввода, АЦПУ и другие периферийные устройства среднего ивысокого быстродействия.
4.9.1. Мультиплексоры передачи данных. Д ля более рацио­нального использования аппаратуры передачи данных при работев режиме разделения времени со многими абонентами эта аппа­ратура объединяется в так называемые мультиплексоры передачид ан ны х. С одной стороны, такой мультиплексор подсоединяетсяк стандартному каналу ЭВМ, а с другой — через модемы — к ли­ниям связи.
В качестве примера рассмотрим мультиплексор передачи дан­ных ЕС-8400 (СССР). Он обеспечивает подключение до 15 линий
связи. В их составе могут быть физические линии (провода),а такж е коммутируемые и некоммутируемые телеграфные и те­лефонные каналы. Скорость передачи по физическим линиям ителеграфным каналам — до 75 бит/с, по телефонным каналам —до 2400 бит/с. Входящие и исходящие соединения выполняются
автоматически, за исключением исходящих соединений но комму­тируемым телеграфным линиям связи. Наличие 2-канального пе­реклю чателя позволяет мультиплексору работать поочереднос двумя различными ЭВМ.
Мультиплексор передачи данных ЕС-8401 (Н Р Б ) при скорости
600 бит/с обеспечивает работу с 63 линиями связи, а при скоро­сти 1200 бит/с — с 32 линиями. Диапазон скоростей, перекрывае­мый мультиплексором, 50, 75, 100, 200, 600, 1200, 2400 бит/с.
При наличии группы терминалов (абонентских пунктов), уда­ленных от ЭВМ, по близких друг к другу, для экономии линий
связи употребляется удаленный мультиплексор, называемый иног­да такж е концентратором. Он принимает информацию от терми­налов и передает ее (по одному каналу связи) в режиме разде­ления времени в удаленную ЭВМ, а такж е распределяет по тер­миналам приходящую от ЭВМ информацию. Примером такого
устройства может служить мультиплексор ЕС-8421 (В Н Р ).
4.9.2. Абонентские пункты. Абонентские пункты представля­ют собой определенные наборы вводно-выводных устройств (вклю­чая накопители на магнитных лентах и гибких дисках), пред­назначенные для так называемой телеобработки, т. е. обработки
данных с помощью удаленной от них ЭВМ. Их можно использо­вать такж е для простой передачи данных. В состав абонентского
пункта входят модем и аппаратура передачи данных (с блоком

4.10. АВТОМАТИЗИРОВАННЫЕ
РАБОЧИЕ МЕСТА
%115защиты от ошибок), переговорно-вызывное устройство (обычный
трлесЬон) и собственно вводно-выводные устройства.
В абонентском пункте ЕС-8501 М (Н Р Б ) в качестве таких
устройств используются электрифицированная пиш ущ ая машинка
ЕС-7177, а такж е устройства ввода и вывода с перфолент и картс краевой перфорацией ЕС-6191 и ЕС-7191.
Устройство использует встроенный модем ЕС-8002. При авто­номном использовании он может готовить перфоленты и картыс краевой перфорацией или прочитывать их с документированиемна пишущей машинке, а такж е реперфорировать информациюс лент или карт. При дистанционном использовании он можетв ы п ол н я ть просто функции передачи и приема данных при ра­боте с другими абонентскими пунктами, осущ ествлять обмен ин­формацией с ЭВМ (через мультиплексор передачи данны х), обес­печивать множественный режим передачи информации (одинпункт передает, а остальные принимаю т).
Абонентский пульт ЕС-8550 (В Н Р) построен на базе ЭВМ
ЕС-1010, благодаря чему имеет широкий набор различных уст­ройств. Помимо пишущей машинки и дисплеев, в него включа­ются АЦПУ, механизмы ввода и вывода на перфоленту, накопи­тель на постоянном магнитном диске, матричное печатающее
устройство и устройство ввода с перфокарт. Скорость передачи
данных 600 — 2400 бит/с в дуплексном и полудуплексном(с большой скоростью в одном направлении и с малой в обрат­ном) режимах.
4.10. Автоматизированные рабочие местаАРМ представляют собой набор аппаратуры , соединяющей
рабочие места различных типов с ЭВМ или с системой ЭВМ ипомогающей работающим на этих местах людям лучше (быстрееи качественнее) выполнять свои функции. Состав АРМ опреде­ляется выполняемыми им функциями. Т ак, АРМ конструктора
оборудуется графическим дисплеем со световым пером или даж етремя такими дисплеями (для работы с трем я проекциями объек­та одновременно). В состав такого АРМ могут включаться гра­фопостроители и графосчитыватели, электрифицированны е пишу­щие машинки и другие вводно-выводные устройства^ АРМ кла­довщика оборудуется электрифицированной пиш ущ ей машинкои
либо непосредственно, либо через линию связи, подключеннойи ЭВМ.
При заполнении на этой маш инке приемо-сдаточных ведо­мостей их содержимое передается на ЭВМ либо непосредствен­но, либо через промежуточный носитель (сейчас чаще всего пер­фоленту) 7 изготовляемый автоматически в процессе печатания
документов.
8*Рабочие места руководителей разных уровней оборудуются
обычно алфавитно-цифровыми дисплеями с документирующими
устройствами. Для высшего руководства и различного рода кол­легий создаются специальные ситуационные комнаты, оборудо­ванные большими экранами (управляемыми ЭВМ) для наглядно­го отображения запрашиваемой информации. Выпускаются спе­циальные регистраторы производства для ввода в ЭВМ сменных
заданий бригадам и отдельным рабочим и учетных данных об ихвыполнении. Специальной вводно-выводной аппаратурой оборуду­ются места оформления билетов на различные виды транспорта,кассы магазинов и т. д.
На рабочих местах у станков и другого оборудования устанав­ливаю тся простые сигнализирующ ие устройства, с помощью кото­рых рабочие передают в ЭВМ данные о работе и неисправностях
оборудования (и других помехах), не охваченные системой авто­матического контроля.
Данные, собираемые с автоматизированных рабочих мест, че­рез систему концентраторов-мультиплексоров поступают в цент­ральную ЭВМ или непосредственно на ее внешние ЗУ. Через этуж е систему передаются на рабочие места (оборудованные устрой­ствами вывода) различного рода указания и распоряжения. Осу­ществление такого информационного обмена как раз и составляет
сущность методов безбумажной информатики применительнок задачам организационного управления.
Большое разнообразие аппаратуры, устанавливаемой на авто­матизированных рабочих местах, предъявляет большие требова­ния к мультиплексорам, через которые эта аппаратура подсоеди­няется к ЭВМ. Таким требованиям в наибольшей степени удов­летворяют так называемые программируемые мультиплексоры.
В них такие показатели интерфейса с АРМ, как форма передачи
кодов (побитово, побайтово или пословно), а иногда и некоторые
физические характеристики сигналов могут меняться путем из­менения программ в памяти мультиплексора без какой-либо егопеределки. Аналогично программным средствам могут меняться
такж е характеристики интерфейса мультиплексора с ЭВМ. Темсамым без переделки мультиплексора его можно использовать
совместно с ЭВМ различных типов.
К терминальному процессору (ТП ) Барс могут подключаться
разнообразные периферийные устройства: телетайпы, .пиш ущ иемашинки, алфавитно-цифровые дисплеи, регистраторы производ­ства, устройства контроля оборудования и пульты рабочих местопределенного вида. При последовательном подключении ско­рость обмена данных ТП с подключаемым устройством не должна
превосходить 9600 бит/с, а при параллельном подключении
25 000 байт/с. Скорость обмена ТП Барс по подключаемым к не­му коммутируемым каналам связи может колебаться от 50 до

4800 бит/с, а по некоммутируемым — от 50 до 9600 бит/с. Приэтом могут использоваться модемы любых типов. Процессор на­страивается (путем смены блока постоянной памяти) на обхменс каналами различных ЭВМ и прежде всего, разумеется, с ка­налами ЕС ЭВМ. Всего он имеет 128 входных и 128 выходных
шин. Встроенные усилители позволяют осуществить падежную
передачу дапных без модемов на расстоянии до 20 км.
Заметим, что функции программируемого мультиплексора мо­жет выполнять любая универсальная ЭВМ. Однако при исполь­зовании для этой цели, например, ЭВМ СМ-3 производительность(по сравнению с ТП Барс) упадет в несколько десятков раз,а стоимость возрастет в 3 —4 раза.
4.11. Сбор данных с автоматических датчиковВ условиях высокоавтоматизированной технологии основная
масса информации о производственных процессах поступает с ав­томатических датчиков. Такие датчики могут выдавать информа­цию как в аналоговой, так и в цифровой форме. Имеются стан­дарты для конкретных характеристик выдаваемых ими сигналов.
Применительно к этим стандартам создаются так называемые
устройства связи с объектами УСО. Их задача — преобразование
стандартных сигналов, поступающих с датчиков, в стандартные
сигналы канальных интерфейсов тех или иных ЭВМ. Такие УСОсозданы, в частности, для машин СМ ЭВМ, одной из главных
задач которых является управление сложными технологическими
процессами. Для ввода в ЭВМ данных с измерительных приборовв сложных экспериментах используются УСО, построенные набазе крейтов системы Камак, о которых уж е ш ла речь в гл. II.
4.12. Исполнительные механизмыВ автоматизированной технологии сигналы, поступающие изуправляющ их ЭВМ, должны выполнять те или иные действия
(механические перемещения, включение и выключение тока и
т. д.). Все эти действия выполняются специальными сервомото­рами (непрерывными, шаговыми и др.), управляемыми ЭВМ. Этиприводы, называемые исполнительными механизмами, такж е под­даются стандартизации, а согласование их интерфейса с каналь­ными интерфейсами ЭВМ осущ ествляется такж е с помощью УСО.
1аким образом, УСО выступают как согласователи интерфейсовв Двух направлениях: от объектов управления к управляющ имОВМ и наоборот.

Г л а в аVПРОГРАММИРОВАНИЕ И УПРАВЛЕНИЕ
ВЫЧИСЛИТЕЛЬНЫМ ПРОЦЕССОМ
5.1. Методы адресацииК ак уж е указывалось выше (п. 1.11.1), код машинной коман­ды (инструкции) разбивается на код операции и адресную часть.
При первом взгляде на проблему адресации данных (операндов)наиболее естественной представляется трехадресная система ад­ресации. Она предусматривает указание в каждой команде адре­сов двух операндов (слагаемых, сомножителей и др.), а такж еадреса, по которому в ЗУ засылается результат операции. Напервом этапе* развития вычислительной техники многие ЭВМстроились именно по такой системе.
Нетрудно видеть, однако, что трехадресная система малоэко­номична. Не говоря уж е о громоздкости кодов команд, она при­водит, как правило, к значительному увеличению числа обращенийк памяти. Действительно, арифметические операции при вычис­лениях по формулам выстраиваются в последовательные цепи.
Например, пусть д : = а Х 6 + с. При вычислении даже по такой
простой формуле в случае трехадреспой системы надо заслать
результат й выполнения умножения а X Ь в ОЗУ и тут же из­влечь его снова для выполнения сложения й + с. Таких ненуж ­ных обращений в ОЗУ не будет, если результат выполнения
первой операции оставить в арифметико-логическом устройстве(А Л У ) центрального процессора.
Это достигается при уменьшении числа адресов в команде додвух и даже до одного. В случае наиболее распространенной в со­временных ЭВМ одноадресной системы в команде явно указы ва­ется адрес лишь одного операнда. Вторым операндом при этомобычно служит содержимое накапливающего сумматора (аккум у­л ято р а), а результат операции такж е остается в аккумуляторе.
Поскольку адрес аккумулятора в команде явно не указы вается,говорят, что имеет место так называемая подразумеваемая (скры­тая в коде операции) или неявная адресация.

При подобной адресации в такой, например, программе, какпрограмма суммирования нескольких чисел: 5 = ах + а2 + . . .
. . . + ап, полностью устраняются лишние обращения в ОЗУ. Пер­вой командой такой программы будет очистка сумматора (т. е.
засылка в пего нулевого кода), затем последует п команд сложе­ния (прибавить а* для г = 1, . . . , п) и, наконец, в случае необхо­димости, последней командой (такж е одноадресной) можно з а ­с л а т ь содержимое сумматора (сумму 5 ) в любую требуемую
ячейку ОЗУ.
Особенно большие удобства для неявной адресации и эконо­мии числа обращений в ОЗУ представляет использование в АЛУстековой памяти (п. 1.8.1). Например, вычисление по формуле
^ : = ( а Х 6) + ( с Х й ) можно при использовании стека выполнить
таким набором команд:заслать астекумножить на Ъ»заслать с»умножить па й»сложить
»ар —аХЬ
с, р
ц= сX
р
р+ д

В результате в верхней ячейке стека останется число 5 = р -Ь+которое, как и в предыдущем примере, еще одной командой
можно заслать в любую ячейку ОЗУ.
В случае наличия в АЛУ регистров или нескольких стековпри операциях над их содержимым указываются их номера, вы­полняющие роль адресов с очень короткими кодами (ввиду ма­лости числа регистров и стеков). Чтобы не путать эти коды с ад­ресами в ОЗУ, подобные (регистровые и стековые) операции
выделяются в специальные команды. Ввиду малой длины кодав таких командах используется наряду с одноадресной также идвухадресная система. Возможны такж е и смешанные двухадрес­ные операции, в которых один адрес относится к ОЗУ, а вто­рой — к регистру или стеку.
5.1.1.
Составная (условная) адресация. При адресации памяти
большого объема код адреса может не уместиться в формат дажеодноадресной команды. В таком случае, как уже указывалось
выше (п. 1. 11. 1), может быть использована составная (условная)адресация с базовым регистром. Полный (составной) адрес полу­чается при присоединении к коду базы (содержимого базового
регистра) относительно короткого кода дополнительного адреса —так называемого смещения, указываемого в коде команды. Б азапри этом образует старшие разряды полного адреса, а смеще­ние — младшие.
Помимо укорочения кода адреса в команде, составная адреса­ция обеспечивает так называемую позиционную независимость

420

ГЛ. V. ПРОГРАММИРОВ \1Ш Е И УПРАВЛЕНИЕ ВЫЧИСЛЕНИЯМИ

программ. Дело в том, что в процессе пользования программойкак она сама, так и относящиеся к ней данные могут загружать­ся в разные участки памяти. При безусловной адресации, т. е.
при указании в командах истинных адресов данных или команд*подобные перемещения потребовали бы изменений адресов в ко­мандах программы. При у с л о в н о й адресации для этого доста­точно лишь одного изменения базы. Тем самым программа дела­ется независимой от позиции, занимаемой ею в памяти.
При обработке массивов обычно одни и те же операции при­меняются к различным элементам массива. Чтобы не повторятьв программе одни и те же наборы команд, различающ иеся лиш ьадресами операндов, эти наборы пишутся лишь один раз с неиз­менным (безусловным или условным) адресом. Необходимое жосканирование (перебор) элементов массива производится изме­нением особой части составного адреса, называемой индексом.
Индекс запоминается в отдельном регистре (называемом в этомслучае индекс-регистром) и, в соответствии с заданным шагом,меняется (с помощью специальных команд) в процессе выполне­ния цикла обработки массива. В этом случае полный (безуслов­ный) адрес получается сложением трех адресов: базы, индексаи смещения.
5.1.2.
Косвенная адресация. В ряде случаев оказывается удоб­ным хранить в ячейке ЗУ адрес а,, который указан в командети не значение операнда, а лишь адрес а 2 ячейки, из которой тре­буется выбрать (или в которую требуется записать) значение
операнда. При этом адрес а 4 называется адресом второго рангага способ адресации — косвенной адресацией. Использовавшийсядо сих пор способ прямого указания адреса операнда в команде
носит наименование прямой адресации, а сам адрес — адреса пер­вого ранга.
По аналогии с адресами второго ранга можно ввести адреса
третьего, четвертого и любых последующих рангов. При исполь­зовании адреса п-го ранга извлечение значения операнда будет
выполнено на и-м обращении в память. Иногда удобно использо­вать такж е адреса нулевого ранга. В этом случае в команде вме­сто адреса указывается непосредственно само значение операнда*так что его извлечение не требует никакого обращения к памяти.
Подобный способ адресации носит наименование непосредствен­ной адресации.
Н епрямая адресация (косвенная или непосредственная) про­изводится либо с помощью специальных команд, отличающихся
особыми кодами операций, либо с помощью особых признаковв адресных частях команды.
Косвенная адресация оказывается очень удобной, когда тре­буется изменять адреса, в которых хранятся операнды, в процес­се выполнения программы б е з и з м е н е н и я самой программы.

В частности, использование адресов второго ранга заменяет ин­декс-регистры ячейками ОЗУ, в которых хранятся прямые
( 1-го ранга) адреса операндов. Таким образом, в нашем распоря­жении оказывается практически неограниченное число подобных
псевдоиндекс-регистров, тогда как число истинных индекс-ре­гистров всегда относительно невелико. Впрочем, косвенную адре­сацию можно применять (с помощью специальных команд) нетолько к ячейкам ОЗУ, но и к любым регистрам процессора.
Использование многих способов адресации увеличивает воз­можности программистов по оптимизации составляемых ими про­грамм. Под оптимизацией здесь понимается улучшение таких
характеристик программ, как быстродействие (за счет сокращ е­ния числа обращений в З У ), объем (за счет использования уко­роченных адресов), релокабельность (простота перемещаемостив пам яти), а такж е простота и ясность понимания и работыс программой.
5.1.3.
Адресация операндов переменной длины. В случае ис­пользования десятичной арифметики, а такж е при обработке ал­фавитной информации приходится иметь дело с операндами пе­ременной длины, занимающими несколько ячеек ОЗУ. При адре­сации переменного операнда обычно указы вается адрес его нача­ла и длина операнда. Поскольку формат кода длины (как и всего
адреса в целом) постоянен, то длина переменного операнда неможет превышать некоторого (обычно достаточно большого) зна­чения. В ЕС ЭВМ длина кода десятичных чисел ограничена 16(десятичными) разрядами, а длина слов алфавитной информа­ц и и — 256 символами (байтам и).
5.2. Управление однопрограммным процессомВ простейшем случае процесс обработки данных в ЭВМ зада­ется одной-единственной прикладной программой. Если при этомвся программа и данные, которыми она оперирует, помещаютсяв оперативную память, то управление процессом выполнения про­граммы осуществляется в основном ею самою. Роль системного
программного обеспечения (операционной системы) сводитсяв этом случае лишь к загрузке программы и данных в ОЗУ. По­следовательность операций при этом такова: пользователь данной
прикладной программы самостоятельно или с помощью оператора,обслуживающего ЭВМ, помещает программу и необходимые длянее данные (на тех пли иных машинных носителях, например
перфокартах) в одно из вводных устройств данной ЭВМ. Спе­циальная программа ОС, назы ваемая загрузчиком или монитором,получив от оператора с пульта ЭВМ имя вводного устройства иадрес А начальной ячейки ОЗУ, вводит в последовательные
ячейки ОЗУ (начиная с адреса А ) программу и данные. После

этого (обычно по команде с пульта) адрес первой команды про­граммы передается в так называемый программный счетчик
(счетчик команд), представляющий собой специальный регистр
устройства управления (УУ) центрального процессора (Ц П ).
Теперь ЭВМ готова к исполнению программы.
По специальному сигналу с пульта управления ЭВМ начи­нает цикл исполнения первой команды. Прежде всего по адресу,указанному в программном счетчике, осуществляется выбор изОЗУ кода первой команды. Этот код помещается в так называе­мый регистр команд УУ. По адресной части кода команды нахо­дятся необходимые данные, и происходит исполнение команды.
В конце цикла исполнения меняется содержимое программного
счетчика: в нем формируется (автоматически) адрес команды*которая подлежит исполнению в следующем цикле. Процесс фор­мирования адреса происходит различными способами в зависимо­сти от типа исполненной команды. Если это команда перехода,то в ее коде содержится код адреса следующей команды, которыйв этом случае просто засылается в счетчик. Различают команды
безусловного и условного перехода. При безусловном переходе
адрес перехода единствен.
Условный переход осуществляется на один из двух или не­скольких адресов в зависимости от выполнения или невыполне­ния тех или иных условий, которые могут относиться к резуль­татам операций, выполняемых как самой командой условного
перехода, так и предшествующей ей командой. Первый случай
иллюстрируется командой: «Если число в ячейке А больше числав ячейке В , то перейти к команде по адресу С, в противном
случае — к следующей по порядку команде». Во втором случае
используется специальный малоразрядный (обычно не более двухразрядов) регистр ЦП, называемый регистром признака. К аж даявыполняемая в ЦП команда устанавливает то или иное содер­жимое этого регистра. В команде же перехода указываю тся дваили более адреса, засылаемые ею в программный счетчик в за­висимости от содержимого регистра признака.
Специальным видом перехода является переход по региструили стеку возврата. В регистр или стек специальной командой
засылается адрес той или иной команды. По команде же перехо­да по регистру (стеку) возврата этот адрес направляется в про­граммный счетчик. В случае использования стека в него можно
засылать не один, а несколько адресов. Тем самым возникает воз­можность многократных переходов по адресаА
м, последовательно
выдвигаемым из стека.
В случае повторения одной команды в цикле ее код и адрес
могут сохраняться в УУ до окончания цикла (определяемого темили иным условием). Возможно такж е использование специаль­ной команды «выполнить команду с адресом Л», после выпояне-ния которой осуществляется переход на команду, следующую зап ей (а пе за командой по адресу А ). Понятие команды, следую­щей за данной, означает команду, хранящ ую ся в ОЗУ непосред­ственно в с л е д за ней (в порядке возрастания адреса). Есликоманды занимают по одной ячейке ОЗУ, то при таком естествен­ном следовании команд содержимое программного счетчика долж­но увеличиваться в каждом цикле на единицу. В более общем
случае в ЦП вместе с кодом каждой команды запоминается кодсе длины, который и прибавляется при естественном переходек содерж^ юму программного счетчика.
После заполнения программного счетчика, определяющего сле­дующую подлежащую исполнению команду, осуществляется циклсе выборки и выполнения, формирование нового содержимого
программного счетчика, выполнение нового цикла и т. д. Оконча­ние процесса происходит по команде останов (без выключениял и тан и я ).
Вывод заключительной (выходной) информации в описанном
простейшем случае предполагается запрограммированным в самой
прикладной программе, так что к моменту останова машины всенеобходимые данные будут уж е выведены с помощью устройств,указанны х в прикладной программе.
5.2.1.
Подпрограммы. Следует особо подчеркнуть, что благо­даря наличию команд перехода и образованию циклов одни и теже команды написанной пользователем программы будут выпол­няться (вообще говоря, над разными данными) много раз. Б л а­годаря этому длина программы, т. е. число команд в тексте про­граммы, как правило, значительно меньше, чем число команд,фактически исполняемых ЭВМ при работе по этой программе.
Особые удобства для уменьшения длины программ представляет
использование так называемых подпрограмм.
В программах часто оказывается необходимым выполнять помногу раз последовательности одних и тех же операций. В вы­числительных програхммах это могут быть, например, операции
вычисления синуса, логарифма и других элементарных функций.
Можно, разумеется, каждый раз, когда необходимо выполнить туили иную повторяющуюся последовательность команд, фактиче­ски включать ее в текст программы. Однако при этом неоправ­данно увеличивается длина программы, что в свою очередь ведетк неоправданному увеличению количества используемой памяти.
Естественно поэтому выделить такую последовательность ко­манд в отдельную программу и включить ее в рассматриваемую
программу в качестве подпрограммы. Такое включение требует
изменения естественного порядка следования команд. Для уходана подпрограмму программист должен записать в программный
счетчик адрес первой команды подпрограммы. Кроме того, в ре­гистр (или стек) возврата засылается адрес той команды основ­ной программы, к которой следует перейти после выполнения:подпрограммы.
Подпрограмма должна при этом заканчиваться не командой
останова, а командой перехода по регистру (стеку) возврата. Т а­кой способ связи программы с подпрограммой необходим дл яобеспечения независимости подпрограммы от используемых ее*программ. Подпрограмма при этом «не знает», где расположены
вызывающие ее программы, и каж дая программа сама, и только
сама, несет ответственность за правильность обращения к исполь­зуемым в ней подпрограммам. Текст каждой подпрограммы име­ется лишь в одном экземпляре, независимо от того, какое числораз она используется. Более того, при использовании стека воз­врата имеется возможность рекурсивного вызова подпрограмм*т. е. использования в их тексте обращения к другим подпрограм­мам, в том числе и к ним самим.
Описанный прием обеспечивает независимость подпрограммлиш ь в смысле порядка следования команд. Для полной их не­зависимости необходимо обеспечить такж е их независимость поданным так, чтобы подпрограмма не требовала знания адресов
используемых в ней данных основной программы. При простом*нерекурсивном обращении к подпрограмме такую независимость
можно обеспечить, засы лая с помощью команд основной програм­мы необходимые данные в фиксированные (для данной подпро­граммы) ячейки ОЗУ и возвращ ая подобным же образом резуль­таты из таких ячеек в текст основной программы. При рекурсив­ном вызове наиболее удобно для подобных обменов данными ис­пользовать специальные стеки.
Заметим, что при отсутствии в ЭВМ реальной (физической)стековой памяти можно с помощью специальных программ опе­рационной системы (или подпрограмм прикладных программ) об­разовать виртуальные стеки из фиксированных и даже перемен­ных ячеек ОЗУ. Информация в таком стеке обычно не перетал­кивается из ячейки в ячейку. Вместо этого используется пере­менный указатель адреса начальной (верхней) ячейки стекав какой-либо фиксированной ячейке ОЗУ. Аналогичный прием
зачастую используется и при образовании обычных (регистровых)стеков. При образовании стеков с переменными адресами (свои­ми для каждой основной программы) доступ к ним из подпро­грамм осущ ествляется с помощью косвенной адресации — адресов
второго и даже третьего ранга, использующих фиксированные
ячейки для помещения в них переменных адресов стеков. Поаналогии с виртуальными стеками в ячейках ОЗУ могут форми­роваться такж е виртуальные регистры возврата, чем обеспечива­ется практически неограниченный их запас.
5.2.2.
Библиотеки стандартных подпрограмм. К ак следует изизложенного, каждый пользователь ЭВМ (и даж е каж дая от­дельная программа пользователя) может создавать и использовать
свой собственный набор подпрограмм. Н аряду с этим ЭВМ снаб­жаются такж е набором стандартных подпрограмм, доступным длявсех пользователей. К аж дая из таких подпрограмм снабж ается
некоторым фиксированным именем, по которому пользователи
могут вызывать требуемые подпрограммы, не зная их р а с п о л о ­ж е н и я в памяти.
Преобразование имени в адрес производится с помощью спе­циальных программ операционной системы, использующих ма­ш инный каталог, аналогичный каталогам обычных библиотек.
Операционная система автоматически организует такж е необходи­мые поля в памяти (или виртуальные стеки) для передачи данных
между программами пользователей и вызываемыми ими под­программами. Набор стандартных подпрограмм с соответствующи­ми частями ОС носит наименование библиотеки стандартных под­программ (Б С П ). Программное обеспечение таких библиотек
осуществляет такж е автоматическое перемещение вызываемых
подпрограмм из внешней памяти в ОЗУ. Благодаря этому БСПмогут наращ иваться практически неограниченно.
При составлении стандартных подпрограмм (равно как и лю­бых программ длительного пользования) по возможности стре­мятся достичь большей их общности. Это означает, что, напри­мер, подпрограмма для реш ения алгебраических уравнений состав­ляется применительно к уравнению произвольной степени п . Вме­сте с тем, если тот или иной частный случай (например, решение
квадратного уравнения) достаточно часто встречается на прак­тике и может реш аться более быстро и эффективно программой
частного вида, то такая программа такж е включается в библио­теку стандартных подпрограмм.
5.3. Модули загрузки и мультипрограммирование
Описанный в § 5.2 случай, когда рабочая программа вместос данными полностью помещ ается в ОЗУ, представляет собой
скорее исключение, чем правило. Поэтому и управление вычисли­тельным процессом на практике выглядит существенно сложнее.
Больш ая программа, не помещающ аяся целиком в ОЗУ, делитсяна отдельные блоки, загружаемые в ОЗУ и исполняемые по оче­реди. Эти блоки, называемые такж е м одулям и загрузки, будучи
записаны на те или иные машинные носители (с помощью
Устройств подготовки данны х), помещаются во вводные устрой­ства ЭВМ. Загрузчик (монитор) переписывает первый модульв ОЗУ, после чего он исполняется так, как это было описанав предыдущем параграфе. По окончании этого процесса управ­ление вновь передается загрузчику, который загруж ает в О ЗУследующий модуль, и так далее — до полного исчерпания
программы.
Заметим, что благодаря нелинейной (циклической) структуре
большинства программ, вызванной наличием команд перехода, ужевыполненные модули могут вновь и вновь вызываться в ОЗУ дляповторного исполнения. В случае, когда рабочая программа запи­сана на перфокартах, это создает определенные неудобства и дажетребует вмешательства оператора для перемещения уж е считан­ных перфокарт из выходного во входной карман считывающего
устройства. Поэтому, если даже первоначальный ввод делаетсяс перфокарт, удобно создать копию рабочей программы на ма­шинных носителях (лентах или дисках).
При произвольном чередовании модулей для всякого измене­ния естественного порядка следования модулей загрузчик должен
получать физический адрес очередного модуля. В простейшем
случае такая информация может быть передана ему самой рабо­чей программой. Однако при этом от программиста — автора ра­бочей программы — требуется знание истинного размещ ения мо­дулей во внешней памяти. В современных ЭВМ планированием
такого размещения занимается специальная программа-диспетчер
(планировщ ик). Она же составляет таблицы соответствия именм одулей (условных адресов) и их реальных (физических) адре­сов. Программе-диспетчеру поручается такж е планирование раз­мещ ения программных модулей (и соответствующих данных)в ОЗУ, закрепление за программой необходимых вводно-вывод­ных устройств и вообще планирование и управление использова­нием различных ресурсов, которыми обладает ЭВМ.
Н аряду с загрузчиком и диспетчером-планировщиком в опера­ционные системы современных ЭВМ входят и другие программы.
Порядком их выполнения и взаимодействия с прикладными про­граммами (программами пользователей) руководит включаемаяв ОС в качестве «верховного распорядителя» специальная про­грамма, называемая обычно супервизором.
В состав системного программного обеспечения современных
ЭВМ, как правило, включается специальная макрокоманда (под­программа) обращение к супервизору, которая может использо­ваться как в прикладных программах, так и в программах ОС.
Исполнение этой макрокоманды вызывает так называемое преры­вание в работе ЭВМ, которое может возникать и по другим (пе­речисляемым ниже) причинам. Во всех случаях в первой стадии
отработки прерывания происходит «упрятывание» (целиком иличастично) в определенные заранее ячейки ОЗУ состояния цент­рального процессора. Такое упрятывание должно обеспечить пос­л е отработки прерывания возможность возвращения к тому месту
прерванной программы, в котором произошло прерывание. В наи­более общем случае бывает нужно упрятать в ОЗУ не только

содержимое счетчика команд, но и содержимое всех регистров истеков центрального процессора.
Помимо обращения к супервизору, причиной прерывания мо­жет стать сигнал от средств схемного и программного контроляза правильностью вычислительного процесса, а такж е сигналы отпериферийного оборудования и других внешних (по отношениюк центральному процессору) сигналов. К их числу относятся спе­циальные сигналы с пульта управления ЭВМ (подаваемые опе­ратором), сигналы, поступающие от встроенных в ЭВМ электрон­ных часов — так называемого таймера, сигналы со специальныхш ин прямого управления (с помощью которых в процессор пе­редается информация из особо быстродействующих внешних ис­точников, например от других процессоров).
При общности первой стадии (упряты вания в ОЗУ состоянияЦП) обработка второй стадии прерывания производится различ­ными программами (зависящими от вида преры вания). Програм­мы обработки прерываний такж е входят в состав ОС.
Наличие прерываний и программ их обработки позволяет реа­лизовать в ЭВМ так называемый мультипрограммный режим ра­
боты. Суть его состоит в том, что во входные устройства ЭВМ(или в устройства внешней памяти) помещается сразу несколько*прикладных программ с соответствующими наборами входных
данных. Этим программам приписываются те или иные приори­теты. Супервизор ОС выбирает из готовых для исполнения про­граммных модулей один, принадлежащ ий программе наивысшего
приоритета. Готовность к исполнению означает, во-первых, чтосоответствующему модулю передано управление содержащей егопрограммой, а во-вторых, что как сам модуль, так и необходимаядля его выполнения (хотя бы частичного) информация находятсяв ОЗУ. Выполнение модуля происходит либо до полного его окон­чания (после чего управление передается супервизору для орга­низации исполнения следующего модуля), либо до прихода сиг­нала прерывания, которое может быть вызвано прежде всего
тем, что для дальнейшего выполнения модуля требуется обмен
данными с периферийными устройствами (В ЗУ или вводно-вы­водным). Но столь же возможны и любые другие причины пре­рывания.
При наличии независимых от ЦП канальных процессоров об­мен данными между ОЗУ и периферией может происходить одно­временно с работой ЦГ1 по исполнению очередного программного
модуля. Окончив передачу данных в ОЗУ, канал формирует сиг­нал прерывания, по которому может возобновиться выполнение 1ранее прерванного (ввиду отсутствия данных) программного мо­
дуля. Таким образом, хотя ЦП в каждый данный момент рабо­тает лиш ь с одной программой, ЭВМ в целом может осуществ­лять одновременно подготовительную работу и с другими про­граммами. Диспетчер-планировщик при этом должен осуществ­лять распределение ресурсов (прежде всего свободных областейОЗУ) для всех исполняемых ЭВМ программ.
5.3.1. Маскирование прерываний. В ряде случаев прикладной
программист может быть заинтересован в том, чтобы некоторые
виды прерываний на том или ином участке его программы не вы­полнялись. Например, при выполнении арифметической операцииее результат может выйти из предписанного формата, так чтокакие-то разряды этого результата могут быть утеряны. В обыч­ном случае при таком переполнении формата возникает прерыва­ние. Однако не исключено, что программист предвидел такую воз­можность, а построенная им программа не нуждается в утерян­ных разрядах (например, в сотых долях копейки при финансовых
расчетах). В таком случае программисту предоставляется возмож­ность с помощью специальной команды маскировать сигналы пре­рывания заданного вида. В результате выполнения этой командыв один из разрядов специального маскирующего регистра ЦПзаписывается единица. По истечении необходимости маскирова­ния оно может быть отменено (прикладным программистом)с помощью специальной команды демаскирования.
Для обеспечения возможности эффективного управления вы­числительным процессом со стороны ОС некоторые сигналы пре­ры вания (прежде всего требующие вызова супервизора) маски­рованию не подлежат и соответствующие средства в руках при­кладных программистов отсутствуют.
5.3.2. Слово состояния программы. В первых моделях ЭВМтекущее состояние устройства управления (УУ) центрального
процессора полностью определялось содержимым регистра команди счетчика команд. Позже к ним добавилось содержимое регист­ра признака результата выполнения предыдущей команды. Раз­витие ОС добавило сюда еще содержимое регистра маскированияи регистра для хранения кода прерывания. Кроме того, для опре­деления очередного приращения счетчика команд (при их есте­ственном следовании) может не только вычисляться, но и запо­минаться в специальном регистре код длины исполняемой ко­манды. Содержимое всех регистров УУ центрального процессора
(обычно без содержимого регистра команд) принято называть
словом состояния программы. При прерываниях это слово запо­минается в специально отведенных для этой цели ячейках ОЗУ.
5.3.3. Управление заданиями и управление задачами. В прак­тике применения ЭВМ часто случается, что одни и те же про­граммы могут многократно (быть может, в различных последо­вательностях) использоваться для обработки различных данных.
В этом случае оказывается целесообразным, присвоив программам
(или программным модулям), а такж е массивам данных те илииные именаЛ описывать сокращенно различные процедуры обра-ботки данных, пользуясь т о л ь к о этими именами. Такие сокра-»щенные описания принято называть заданиями, в отличие от задач, представляющих собой соединение полны х текстов (кодов)соответствующих программ с полны ми наборами значений соот­ветствующих исходных данных.
Заметим, что о т д е л ь н о друг от друга программы и данные *еще не составляют задачи. Она возникает только при их с о е д и ­н е н и и . Вводя в ЭВМ раздельно различные программы и раз­личные наборы исходных данных, мы получаем возможность припомощи язы ка уп равления заданиями (Я У З) формировать раз­личные задачи. Ввод и анализ заданий, а такж е фактическое
формирование описанных с их помощью задач (приведение в со­ответствие программ и данных) производятся специальными
программами ОС, выполняющими функцию управления за­даниями.
После «стыковки» программ и данных производится уж е опи­санный выше процесс выполнения программ. Управление этимпроцессом носит название уп р а влени я задачами. Его сущность
(как в однопрограммном, так и в мультипрограммном режимах)была уже описана выше.
5.3.4.
П акеты программ. Заготавливая заранее именованные
программные модули, направленные на решение того или иного
класса задач (например, на решение систем алгебраических урав­нений), и вводя имена и формы представления для массивов дан­ных (например, множеств коэффициентов уравнений), мы полу­чаем возможность программировать л ю б ы е задачи данного
класса на языке управления заданиями, т. е. в весьма сокращен­ном и удобном виде. Возникающая таким образом заготовка (вме­сте с соответствующей системой управления заданиями) носит
наименование пакета программ. Если ОС ЭВМ, для которой со­ставляется пакет, не содержит средств управления заданиями
(или если они полностью не устраивают программиста), то такие
средства включаются в состав пакета.
С помощью пакетов прикладных программ можно перекрывать
целые области человеческой деятельности (бухгалтерский учет,планирование работы предприятий, проектно-конструкторские
расчеты в той или иной области и др.). В таком случае вместо
программирования любой конкретной задачи из соответствующей
области достаточно написать лишь задание на ее решение, т. е.
имена программ и данных, которые нужно привести в действиеДля получения решения поставленной задачи.
Иногда управляю щ ая часть (специализированная ОС) пакета
программ представляет дополнительные возможности для упро­щения пользования этим пакетом. Можно, например, включитьв управляющую часть пакета специальные программы для анали­за исходных данных и автоматического выбора программных моо
М. Глушков

дулей, наиболее подходящих для реш ения требуемой задачи имен­но при этих исходных данных. В случае подобных пакетов (назы ­ваемых интеллектуальными) программист в задании указы ваетне имена конкретных программ, а имена м н о ж е с т в таких про­грамм, решающих о д н у и ту же задачу, но р а з л и ч н ы м иметодами.
5.4. Разделение времениПри обычном мультипрограммном режиме работы скорость ре­ш ения задач в значительной степени определяется тем, насколько
удачно расположены их программные модули и блоки данныхво внешней памяти. Поскольку в современных ЭВМ такое распо­ложение выполняется, как правило, автоматически, часто бывает
затруднительно предсказать заранее срок решения задач дажевысоких приоритетов. Можно сказать, что мультипрограммиро­вание направлено на увеличение пропускной способности ЭВМно потоку задач в целом, а не на ускорение реш ения отдельной
наперед заданной задачи. Этот недостаток становится особенно
заметным, когда на ЭВМ реш ается одновременно большое число
относительно мелких задач. Д ля такого случая лучший результат
дает режим разделения времени, уже упоминавшийся выше.
Д ля эффективности подобного режима с помощью специаль­ных программ ОС организуется виртуальная (воображаемая)оперативная память, объем которой складывается из объема ре­ального ОЗУ и объема ВЗУ (во всяком случае — полного объема
памяти на магнитных дисках). К аж дая программа получает
свою область подобного воображаемого ОЗУ, на которой п о л ­н о с т ь ю помещаются как сама программа, так и все данные*которыми она оперирует. Кроме того, каж дая программа полу­чает свою элементарную порцию времени, по истечении которойпо сигналу от электронных часов производится прерывание дан­ной программы и передача управления следующей по порядку
программе.
Подобный процесс повторяется циклически, так что в течение
полного цикла каж дая программа продвигается в своем исполне­нии в соответствии с выделенной для нее порцией времени*Правда, при этом требуется заблаговременно перебросить нуж ­ные страницы виртуальной памяти в реальное физическое ОЗУ*Благодаря цикличности подобного процесса в принципе (при на­личии независимых канальных процессоров и знании характера
решаемых задач) можно построить такую дисциплину обслужи­вания, при которой будет осуществляться упреждаю щ ая подго^товка нужных страниц.
На практике при случайных потоках задач применяют про-^стеншие дисциплины обслуживания, что, как правило, приводи?

я дополнительным задержкам на информационные обмены. Темяе менее режим разделения времени во многих случаях гаранти­рует решение задач в заданные сроки, и поэтому он особенно
охотно применяется в системах диалога с пользователями, гдетребуется гарантированная верхняя оценка времени реакции си­стемы (т. е. времени, требуемого для получения ответов на зада­ваемые ей вопросы). С таким требованием приходится встречать­ся, например, в справочно-информационных системах с большим
числом пользователей (см. гл. V I).
5.5. МультипроцессированиеВ многопроцессорных вычислительных системах управление
вычислительным процессом усложняется за счет необходимости
организовать рациональную загрузку всех центральных процессо­ров системы. Диспетчер-планировщик при этом рассматриваетЦП как новый вид ресурса, который закрепляется и своевремен­но перераспределяется между различными программными моду­лями и различными потоками данных. Наиболее просто этот воп­рос реш ается в том случае, когда каждый ЦП реш ает свою соб-,ственную независимую задачу. Если несколько ЦП используютсядля реш ения одной и той же задачи, то должно производиться
распараллеливание вычислительного процесса.
Необходимо прежде всего отметить, что распараллеливание
допускают не все процессы. В тех случаях, когда оно оказывает­ся возможным (а таких случаев — большинство), различают дваосновных типа распараллеливания. П е р в ы й тип используетдля всех процессоров один и тот же поток к о м а н д , но различ­ные потоки д а н н ы х . Например, при сложении двух матриц
можно разделить между процессорами строки этих матриц и вы ­полнить параллельно сложение различных пар строк с помощью
одного и того же программного цикла. В т о р о й тип распарал­леливания использует для каждого процессора свой программный
модуль (много потоков команд), выполняемый над одними и те­ми же или различными данными. В этом случае обычно програм­мист указывает, какие программные модули могут исполняться
независимо друг от друга. Используя эти указания, ОС мульти­процессорной системы с помощью таблицы занятости процессо­ров (ведущейся программой-диспетчером) распределяет макси­мально возможное число параллельно исполнимых модулей м еж ­ду свободными процессорами.
Поскольку разные модули исполняются, как правило, за раз­вое время, ОС принимает на себя задачу их синхронизации.
Смысл ее состоит в том, что очередной программный модуль за­пускается в работу лишь после того, как для него подготовлены(в результате работы предшествующих модулей) все необходим

132

гл. V. ПРОГРАММИРОВАНИЕ И УПРАВЛЕНИЕ ВЫЧИСЛЕНИЯМИ

*
V
%
%
|

*

мые исходные данные. Подобная в з а и м о з а в и с и м о с т ь мо­дулей, задаваемая в простейшем случае программистом, опреде­ляет одновременно и возможность параллельного исполнения
модулей. Более интеллектуальные мультипроцессорные ОС могут
полностью или частично освобождать программиста от этой ра­боты, выполняя анализ программы и выделение модулей дляпараллельного исполнения в автоматическом режиме.
В большинстве современных универсальных мультипроцессор­ных систем программы ОС могут исполняться любым ЦП, кото­рый в этом случае берет на себя роль своеобразного дирижера
работой всех остальных ЦП. Возможно, однако, и такое решение,в котором такая задача возлагается на специальный управляю ­щ ий процессор или даже иерархию таких процессоров. В первом
случае обеспечивается большая надежность и гибкость системы,во втором — большая простота и ясность организации управления*5.6. Управление данными
Когда необходимые для программы данные находятся в ОЗУ,каж дая команда программы (с помощью ЦП) сама обеспечивает
себя необходимыми данными. Если же такие данные находятсяво внешней памяти (В ЗУ ), то обращение к ним обычно произво­дится с помощью специальных программ ОС. Главная задача
этих программ заключается в том, чтобы по и м е н и или м е ­с т у в файле той или иной п о р ц и и данных (обычно отдель­ной записи) найти фактическое местоположение требуемой пор­ции по ВЗУ и передать ее на специально выделенную (програм­мистом) для этой порции рабочую область исполняемого про­граммного модуля в ОЗУ.
Работа таких программ инициируется макрокомандой «от­крыть файл» (англ. ореп Ш е). Используя данные, сообщаемые
программистом с помощью специальной макрокоманды описанияф айла, макрокоманда «открыть файл Р» готовит файл (или пе­риферийное устройство) с именем Р к обмену с ОЗУ. С этойцелью в ОЗУ выделяется буферная зона, которой предстоит об­мениваться данными с названным файлом. Обмен осуществляет­ся обычно не отдельными записями, а блоками, содержащими понескольку записей. В случае файлов на ленте тем самым эконо­м ятся участки ленты для ее разгона и остановки, которые необ­ходимо было бы оставить между записями при их раздельной
передаче. Впрочем, обмен блоками оказывается целесообразнымдля всех последовательно просматриваемых файлов, независимоот носителя, на котором этот файл расположен. Режим обмена
(вклю чая сведения о размерах требуемых буферов) устанавли­вается макрокомандой описания файла.

По макрокоманде «открыть файл» требуемый файл ищетсяна носителе, причем в случае последовательно просматриваемого
файла соответствующее периферийное устройство устанавливает­ся в его начало и начинает обмен первым блоком. Возможна
также (если носитель с файлом не установлен ни на одно из уст-*ройств) вы дача информации на системный пульт человеку-опера- *тору для поиска в библиотеке и установки на указанное устрой­ство носителя с требуемым файлом.
По другой макрокоманде «взять Р» (англ.
Р) очередная
порция информации (как правило, отдельная запись) из буфера,соответствующего файлу Р у перемещается в рабочую область про­граммы. Эта область может быть либо заранее определена в ра­бочей программе и сообщена операционной системе, либо адре­сована к макрокоманде «взять Р, А» с помощью явно указы вае­мого адреса А . В случае обращения к записи по ее имени иликлю чу (см. гл. V I), а не в порядке ее расположения в буфере,в макрокоманде «взять» должны быть указаны необходимые
сведения, причем в случае отсутствия требуемой записи в буфере(в частности, при исчерпании буфера с последовательным про­смотром) инициируется обмен буфера с ВЗУ новым блоком.
Выбор конкретных областей ВЗУ, в которые записываются
данные, осущ ествляется диспетчером-планировщиком в резуль­тате анализа соответствующего задания. В момент же загрузки
данных осущ ествляется то или иное их конкретное представле­ние — так назы ваем ая физическая структура данны х, в которую
могут входить дополнительные средства, облегчающие поиск
нужных порций информации (каталоги, указатели и др.). Более
подробно о физических структурах данных и способах поиска
рассказы вается в следующей главе.
Обратная операция отсылки в буфер обработанных приклад­ной программой записей осуществляется макрокомандой «поме­стить Р» (англ. ри 1 Р ). Здесь через Р обозначено имя файла, ко­торому принадлеж ит данный буфер. К ак и в макрокоманде
«взять», перемещ аемая в буфер запись берется либо из рабочей
области (неявно адресуемой) исполняемой прикладной програм­мы, либо из какой-либо прямо адресуемой (макрокомандой «по­местить Р, А » ) области ОЗУ. В последовательно просматрива­емых ф айлах запись в буфер происходит в порядке очередности
поступления перемещаемых записей. В более сложных случаях
порядок разм ещ ения определяется режимом обмена, устанавли­ваемого макрокомандой описания файла. При отсутствии местав буфере для перемещаемой записи автоматически инициируется
необходимый групповой обмен с ВЗУ.
М акрокоманда «закрыть файл Р » освобождает устройство, накотором он был помещен, равно как и области ОЗУ, занятые подсоответствующие буферы, для другого использования. Заметим*что во многих современных ОС допускается работа (в режиме
автоматического переключения) с файлами, размещенными нанескольких периферийных устройствах. Необходимо отметить,что при организации буферов обычно для одного файла открыва­ется не один, а по крайней мере два буфера. Пока с одним изних работает основная программа, другой осуществляет обмен с
ВЗУ (через канальный процессор). В ряде случаев удобно орга­низовать п у л (специальный массив) из многих буферов сразличными режимами заполнения и использования. Помимо
собственно записей файла, такие буферы могут служить дляпомещения в них дополнительной справочной информации, об­легчающей поиск нужных записей (по имени или клю чу). Д ляобразования буферов и буферных пулов могут использоваться
специальные макрокоманды.
Соответствие между именами и физическими адресами (воВЗУ ) перемещаемых порций информации называется интерфей­сом между логической и физической структурами данных. В опи­санном простейшем случае такой интерфейс индивидуален длякаждой задачи и устанавливается с помощью средств ОС во вре­м я загрузки данных в ЭВМ. В общем случае различные програм­мы могут пользоваться общими базами данны х. Возникающие
здесь проблемы управления данными разбираются в следую­щей главе.
5.6.1.
Программы канала. При наличии канальных процессо­ров команды обмена с периферией (включая обмен с ВЗУ) сво­дятся по существу к трем видам команд: «начать обмен», «окон­чить обмен», «опросить состояние» (канала или устройства).
П ри этом в команде, кроме кода операции, указывается имя (но­мер) устройства и канала, с которыми будет производиться опе­рация (одно и то же устройство может быть подключено к не­скольким каналам ). После выполнения подобной обменной
команды центральный процессор передает управление обменом
поименованному в ней каналу, а сам освобождается для работыс другими программными модулями (вызываемыми супервизо­ром, которому передается управление в Ц П ).
В простейшем случае программа канала может состоять избдной-единственной команды. Код операции в команде обмена
определяет прежде всего направление обмена (чтение илизапись). Кроме того, попутно с обменом могут выполняться икакие-либо дополнительные операции (например, сортировка чи­таемых перфокарт по двум выходным карманам ). Операции обме­на могут выполняться при прямом и обратном движении маг­нитной ленты. Эти и другие дополнительные признаки операции
такж е указываются в ее коде.
Наряду с командами обмена имеются также различные
команды уп р а влен и я. Некоторые из них (как, например, комап-да обратной перемотки ленты и др.) передаются через канал наисполнение контроллерам соответствующих устройств, другие мо­гут исполняться самим каналом.
Кроме кода операции в команде обмена указы вается такж еадрес первой ячейки ОЗУ, с которой начинается обмен, количе­ство передаваемых байтов, а такж е некоторые признаки. При исполнении команды ведется счет числа переданных байтов, и присовпадении его с заданным выполнение команды заканчивается.
Специальный признак в коде команды указывает, нужно ли за­кончить ею выполнение программы канала или передать управ­ление следующей по порядку команде. При окончании програм­мы канала формируется сигнал прерывания.
Кроме кода команды в УУ канала обычно хранятся в специ­альных регистрах коды состояния канала и состояния устройст­ва, с которым работает канал. Эти состояния передаются в ЦП поспециальным командам (опроса канала или опроса устройства)и анализируются исполняемой ЦП программой на предмет вы­бора канала или устройства для дальнейшей работы.
Программы канала включаются в качестве подпрограмм в ос­новную программу, разбиваясь по соответствующим модулям за­грузки. Команды таких подпрограмм обычно хранятся в после­довательных ячейках ОЗУ (выбираясь одна за другой каналом ).
В некоторых машинах (в том числе в ЕС ЭВМ) возможно такж ехранение команд программ канала в произвольных ячейках ОЗУ.
В этом случае, разумеется, должны быть указаны адреса пере­ходов на соответствующих ячейках.
В ЭВМ, у которых специальные канальные процессоры отсут­ствуют, программы обмена осуществляются центральным процес­сором. При этом используются сигналы готовности устройствк обмену очередной порцией информации. Эти сигналы анализи­руются либо непосредственно рабочей (прикладной) программой,,либо (чаще всего) специальными программами ОС, осуществля­ющими синхронизацию обменных процессов с процессом испол­нения рабочих программ.

5.7. Автоматизация программирования
Программирование непосредственно в маш инных язы ках пред­ставляет собой весьма трудную задачу. Прежде всего, сам по се­бе язы к машинных команд является непривычным для человекаи требует достаточно длительной подготовки для свободного вла­дения им. Дополнительные трудности вносит использование дво­ичного представления кодов операций и адресов в командах.
Практика показывает, что при программировании непосредствен;*д о в машинных кодах даже весьма опытные квалифицированные

программисты делают много ошибок, процесс программирования
длится достаточно долго.
Поэтому с самого начала широкого использования ЭВМ при­лагалось (и продолжает прилагаться) много усилий для автома­тизации процесса программирования. Основой для такой автома­тизации является использование язы ков программирования (или,как их еще называют, входных язы ков ЭВМ), более приспособ­ленных к человеческому восприятию и потому более легких дляосвоения и использования. Поскольку написанная на любом изтаких языков программа не может быть непосредственно выпол­нена ЭВМ, ее необходимо т р а н с л и р о в а т ь в машинное пред­ставление. Т акая трансляция выполняется специальными про­граммами-трансляторами, которые в зависимости от вида исполь­зуемого входного язы ка называются либо ассемблерами, либокомпиляторами.
Другой способ исполнения программы, написанной в любом
языке, отличном от машинного язы ка используемой ЭВМ, (пред­ставляет собой так называемая интерпретация. При интерпрета­ции специальная программа-интерпретатор просматривает опера­торы программы во входном языке, формирует (из машинных
команд данной ЭВМ) программные блоки (по возможности более
короткие), выполняющие работу этих операторов, и организуетих н е м е д л е н н о е исполнение (до окончания полного про­смотра введенной программы).
Времяисполнения интерпретируемой программы, как пра­вило, больше, чем время исполнения 1г транслированной про­граммы. Однако во втором случае следует иметь в виду достаточ­но большие разовые затраты времени Ть на трансляцию програм­мы. Если программа исполняется п раз, то суммарное время, за­трачиваемое на ее исполнение в случае интерпретации, равно
п1и а в случае трансляции пи + Т й. Посколькуто при
п < Т (у/(1 1 — 12) более выгодной будет интерпретация, а при
п > Г 0/(*1 — *2) — трансляция. Поэтому при многоразовом упо­треблении рабочих программ в неизменном виде более экономич­ным является процесс трансляции. Если же программа исполь­зуется небольшое число раз или же подвержена частым
изменениям, то преимущество оказывается на стороне интер­итерации.
Еще одно преимущество интерпретации проявляется в задаче
оптимизации программ с целью уменьшения времени их выпол­нения. Дело в том, что при трансляции далеко не всякая опти­мизация программы на входном языке приведет к реальной оп- |тимизации рабочей программы. Поэтому в случае трансляции про- !
граммист в значительной мере лишен возможности помочь про­цессу оптимизации рабочих программ и эта задача практически ;полностью должна быть возложена на транслятор. Однако но- |добные оптимизирующие трансляторы при достаточно высоких
уровнях оптимизации сложны и к тому же требуют для выпол­нения процесса трансляции гораздо больше времени, чем про­стые (неоптимизирующие) трансляторы.
При замене одной ЭВМ другой (отличающейся от нее систе­мой команд) нередко возникает задача интерпретации программ
старой машины в новой. Процесс такой интерпретации получил
специальное наименование эм уляц и и , а осуществляющая егопрограмма — наименование эмулятора. Достаточно часто возни­кает такж е задача трансляции на одних машинах (обычно до­статочно мощных) программ для других машин (чаще всего длямини и особенно для микро-ЭВМ ). Такой процесс получил наи­менование кросс-трансляции.
5.8. М ашинно-ориентированные языки программирования
Входные язы ки, включающие в наборы своих операторов опе­рации, выполняемые командами той или иной ЭВМ, принято на­зывать машинно-ориентированными язы кам и, язы ками ассемб­лерного типа, или иногда автокодами. Трансляторы с таких язы ­ков называю тся ассемблерами.
5.8.1. Мнемокоды. Простейший язы к ассемблерного типа по­лучается в результате простой замены в кодах машинных опера­ций той или иной ЭВМ двоичных кодов операций более привыч­ными для человека буквенными или буквенно-цифровыми кода­ми с десятичными цифрами. Кроме того, двоичные коды адресовв командах заменяются десятичными (или иногда восьмеричны­ми) кодами. Трансляция с такого язы ка, называемого мнемоко­дом, осущ ествляется весьма просто, сводясь по существу к про­стой перекодировке. Тем не менее использование даже столь
простого входного язы ка намного упрощает программированиеи уменьшает количество ошибок.
5.8.2. Символические автокоды. При использовании простых
мнемокодов программист использует истинные адреса, предопре­деляя тем самым фактическое расположение программы и дан­ных в памяти ЭВМ. Д ля сложных программ и систем данных
держать в памяти такое расположение достаточно сложно. По­этому количество ошибок при использовании мнемокодов в сколь­ко-нибудь сложных случаях продолжает оставаться недопустимо
большим. Особенно велика вероятность таких ошибок при внесе­нии изменений в уж е составленные программы. Типичная
ошибка — забывание изменения адресов в командах переходапри вставках или удалении каких-либо групп команд изпрограммы.
Выход из положения дает использование так называемых
символических адресов, в качестве которых могут обычно упо-1ребляться любые буквенно-цифровые коды, начинающиеся бук- I
вой (например, М Х 5 , аЪй и т. д .). Символические адреса выпол­няют роль переменных в обычной алгебре: они представляют
собой как бы а б с т р а к т н ы е (не привязанные ни к какому
конкретному ЗУ ) я ч е й к и , в которые могут помещаться теили иные конкретные значения отождествляемой с ними пере­менной величины. Число таких ячеек не ограничено, так чтопрограммист не обязан их экономить в отличие от ячеек реаль­ных ЗУ. Важно лишь, чтобы в одну ячейку не помещалось не­сколько различных значений одновременно. Достичь этого, непреследуя целей экономии ячеек, относительно просто: доста­точно каждому новому значению присваивать новый символиче­ский адрес. Таким образом, число ошибок при символической
адресации резко уменьш ается.
Ассемблер, транслирующий программу с язы ка символиче­ского автокода, содержит специальный блок, присваивающий
символическим адресам значения истинных адресов ячеек реаль­ного ЗУ данной ЭВМ. При этом автоматически реш ается задача
экономии ячеек за счет использования уж е отработавших ячеекдля хранения новых значений. Автоматизм подобной процедуры
делает ее (в отличие от ручного исполнения) практически без­ошибочной: ошибки могут возникнуть лишь в случае сбоев в ра­боте ЭВМ. В условиях развитых систем контроля в современныхЭВМ подобные сбои, как правило, регистрируются, а их послед­ствия автоматически устраняются (в результате повторного сче­та или другими путями, например использованием так назы ва­емых кодов с исправлением ошибок).
5.8.3. Макроассемблерные языки. Следующий шаг в совер­шенствовании машинно-ориентированных языков делается пу­тем включения в их состав наряду с обычными машинными опе­рациями так называемых макрооператоров (или, сокращенно,просто м акро). Ассемблер переводит обычные операторы авто­кода в отдельные машинные команды, а макрооператоры — в по­следовательности команд. Т акая последовательность обычно неконструируется ассемблером заново, а берется из библиотеки
стандартных подпрограмм, именованных названиями соответ­ствующих макрооператоров. Задача ассемблера состоит в том,чтобы в м о н т и р о в а т ь нужные подпрограммы в тело выраба­тываемой им машинной програм м ы *).
' Обычно в качестве макрооператоров выступают операторы
вычисления элементарных функций (синус, логарифм и др.).
К числу макрооператоров могут быть отнесены такж е рассмот­*) Термин «ассемблер» можно перевести на русский язык как «собира­тель» или «монтировщик».

ренные выше операторы м анипулирования с данными во ВЗУ(^е 1, Ри* и др.).
При достаточно больших наборах макрооператоров програм­мирование в соответствующих макроассемблерных языках может
сильно упрощаться, поскольку даже весьма длинные программы
могут быть записаны в виде относительно коротких последова­тельностей во входном языке. В таком случае основная часть ра­боты по составлению машинных программ ложится уже не напрограммиста, а на систему автоматизации программирования.
К сожалению, однако, невозможно обеспечить себя заблаговре­менно набором макрооператоров на все случаи жизни. Поэтомудля облегчения программирования наряду с макроассемблерными
языками используются и другие средства.
5.9. Машинно-независимые языкиМ ашинно-независимые язы ки , как следует из самого их на­звания, не ориентированы на конкретные ЭВМ. Операторы и ло­гические условия, которыми они оперируют, определяются надсвободными от особенностей машинной реализации логическими
структурами данных. Сами операторы и условия не укладывают­ся в «прокрустово ложе» строго определенных машинных форма­тов. В таких языках, называемых также входными языками вы­сокого уровня, широко используется привычная для человека
формульная символика и другие средства, ориентированные впервую очередь на человека, а не на машину.
Огромным преимуществом языков высокого уровня является
то, что написанные на них программы могут исполняться на раз­личных ЭВМ, снабженных трансляторами (называемыми в этомслучае обычно компиляторами) или интерпретаторами с этихязыков. За это преимущество, правда, приходится расплачивать­ся большей сложностью трансляторов (по сравнению с трансля­торами с автокодов). Самое же главное состоит в том, что, изу­чив один из наиболее распространенных языков высокого уров­ня, человек может пользоваться потом любыми ЭВМ, не вдаваясьв специфику их систем команд. Процесс программирования так­же при этом обычно существенно облегчается. Правда, такое об­легчение имеет место главным образом для прикладны х про­грамм, особенно тех, в которых основное место отводится вычис­лительным операциям.
Для так называемых системных программ, главная задача ко­торых — не выполнение расчетов или других сложных преобра­зований внешней (по отношению к ЭВМ) информации, а организация вычислительного процесса, большинство языков высоког° уровня теряет свою эффективность. В этом случае (включаю­щем в себя программы ОС, системы автоматизации программа-рования и различного рода служебные программы для переупорядочивания и других изменений форм представления данных)предпочитают, как правило, машинно-ориентированные язы ки.
Они дают больше возможностей для (человеко-машинной) опти­мизации системных программ, что особенно важно именно длятаких программ в силу большой многократности их исполь­зования.
Среди языков высокого уровня различают процедурно- и проб­лемно-ориентированные языки. К процедурно-ориентированным
принято относить алгоритмически универсальные языки, в прин­ципе пригодные для программирования л ю б ы х задач, хотяобычно и они имеют определенную (но обязательно достаточно
широкую) проблемную специализацию, например специализациюна процедуры вычислительного характера. Проблемно-ориентиро­ванные язы ки , как правило, специализируются на описании про­цедур достаточно узкой предметной области (например, про­цедур управления фрезерными станками) и не обязательно обла­дают алгоритмической универсальностью. Заметим, что граница
между проблемно- и процедурно-ориентированными язы камиочерчена не очень четко.
Дадим теперь беглое описание наиболее распространенных
языков высокого уровня. При этом мы не преследуем цели опи­сать все средства таких языков и тем более научить читателя
пользоваться этими средствами (для этого требуются отдельные
монографии и учебники). В соответствии с общими принципами
настоящей книги речь идет лишь о том, чтобы
ввести
читателя в круг основных идей, используемых в язы ках высоко­го уровня.
5.9.1.
Алгол-60. А лго л-60 — международный язы к программи­рования, использующий стандартную математическую символикуи некоторые английские термины. В национальных версиях язы ­ка эти термины могут быть, разумеется, изменены, хотя в целях
упрощения международного обмена программами этого обычноне делается. Основные понятия язы ка алгол-60 (операторы, иден­тификаторы, арифметические и булевы выражения и др.) былиуж е фактически описаны в гл. I, поскольку именно этот язы кпринято считать исходной теоретической базой для всех осталь­ных входных языков (во всяком случае, языков для расчетныхзад а ч ).
Покажем теперь некоторые средства алгола-60 на примере
перемножения двух квадратных матриц А и В с элементами Аци В&. Как известно из линейной алгебры, результатом будет
квадратная матрица С с элементами С1к, вычисляемыми по форпмуле См = 2 А ц В цп где через п обозначена размерность мат3=1

риц А , В, С. Пусть п = 10. Тогда соответствующая программа на1алголе-60 запиш ется в виде:Ь е § т геа1 аггау Л, Я, С [1 :10, 1 :1 0 ]; геа1 я;т1 е § ег г, у, к ;1ог г := 1 з 1ер 1 ипШ 10 йо!ог к : = 1 §1ер 1 ипШ 10 ЙоЬ е§т х := 0!ог / = 1 §1ер 1 ипШ 10 йо х : = х + А[г, у] X Я[у, к ];епйС[&, к] := хепйЗдесь употребляются две пары операторных скобок (Ь е § т —епй). Н аруж ные скобки выделяют рассматриваемый программ­ны й блок, внутренние служ ат для выделения составного опера­тора, Три составляющих его оператора записаны один под однимв три строки. Первый и третий из них являю тся операторами
присваивания, а второй — оператором цикла по индексу у, меня­ющемуся с шагом (з 1ер) 1 от у = 1 до у = 10. Внутри этого цик­ла выполняется оператор присваивания х : = х + А[1, /] X Щ Л],составляющий основную сущность процесса последовательного
10вычисления суммы 2Внеш няя пара циклов выполняет-3=1

ся по двум индексам I и к (меняющимся так же, как и индекс у),указывающим, что операция внутреннего цикла применяется длявычисления не одного, а в с е х элементов матрицы С.
В верхней строчке программы (сразу после слова Ъ е§ т) по­мещается так называемое описание. Описаны три вещественных
массива (геа1 аггау). В квадратных скобках указаны границыизм енения индексов этих массивов (от 1 до 10). Кроме того, опи­сана вспомогательная вещественная (геа 1) переменная х и це­
лые ( т 1е§ег) переменные индексы г, у, к . Описание дает инфор­мацию для компилятора о том, с какими данными будет иметь
дело программа. Оно используется при трансляции для правиль­ного выделения ресурсов памяти (индекс-регистров, ОЗУ и, бытьможет, В З У ). Предполагается, что входные данные (массивы
А , В ), выходные данные (массив С) и значения вспомогатель­ной переменной х размещ аются в ОЗУ.
Заметим, что специальных средств для описания процедур
ввода и вывода данных (вклю чая обмен с ВЗУ) алгол-60 не со­держит. Предполагается, что такие процедуры оформляются дру­гими средствами, доводящими их до машинных программ, кото­рые должны использоваться основными программами в к а ч е с т ­ве п о д п р о г р а м м .
В процессе написания основной программы программист мо­жет задать средствами а л т л а -6 0 свои собственные подпрограммы
(без процедур ввода-вывода). Такие подпрограммы оформляютсяв тексте основной программы в виде программного блока, анало­гичного блокам основной программы. Отличие заклю чается лишьв заголовке, который для подпрограммы начипается служебным
словом ргосейиге (процедура), за которым следует идентифика­тор процедуры (выбираемый программистом), а за ним в круглых скобках — список формальных параметров. В общем случаев этот список включаются подряд как входные, так и выходные
параметры. Например, процедура, выполняющ ая вычисление
трех высот А1, А2 и АЗ треугольника по его сторонам х , у ,может быть описана заголовком: ргосейиге Н (х, г/, г, А1, А2, АЗ)*При обращении к процедуре в тексте основной программы
нужно указать ее идентификатор и список фактических парамет­ров (определенных в основной программе). Например, операторН ( 5, 7, 8, р, д, г) будет присваивать значения высот треугольни­ка со сторонами 5, 7, 8 переменным р, д, г.
Если процедура представляет собой вычисление значения
функции, то (единственный) ее выходной параметр может отож­дествляться с идентификатором самой процедуры и не указы ­ваться в круглых скобках. В этом случае тип этого параметра
должен указываться п е р е д с л о в о м ргосейиге. Например, геа1ргосейиге 1о§(ог). В тексте такой процедуры вычисленное значе­ние функции присваивается ее идентификатору. В основной ж епрограмме введенную таким образом функцию можно использо­вать при образовании арифметических выражений, как это име­ет место в обычной алгебре, например, 1о%(х + 2), 8т д ;!2 и т. д.
Заметим, что вертикальная стрелка в алголе-60 употребляетсядля обозначения операции возведения в степень, так что х ! 2означает х 2. Подобный отход от традиционных обозначений свя­зан с тем, что при вводе программы в ЭВМ ее нужно представ­лять в виде простой последовательности символов, а не в виде«многоэтажных»конструкций. Поэтому,например,вместо
У х 2 + у 2 пишется обычно зцг1(д: ! 2 + у I 2), где зцгЬ — иденти­фикатор функции извлечения квадратного корня, а вместо
А ц — А [г, у] и т. д.
Блочное построение программы (с помощью операторных ско­бок (Ь е ^ т — епй)) позволяет л о к а л и з о в а т ь описания пере­менных, а если надо, то и процедур, в н у т р и отдельных блоков.
Это позволяет программистам, работающим над разными блока­ми, употреблять одни и те же идентификаторы для обозначения
неодинаковых переменных и процедур без опасности их перепу­тать. В случае необходимости использования идентификаторов &одном и том же смысле во всей программе их описания помеща­ются в начале самого внешнего блока (охватывающего всю про­грам му). Если те или иные процедуры включены в библиотеку
стандартных подпрограмм данной ЭВМ, то транслятор должен
«знать» их идентификаторы, так что они могут включаться вовсе программы без специальных описаний. Их идентификаторы
ролжпы, разумеется, быть при этом исключены для обозначений

подпрограмм, формируемых самими
прикладными
програм­мистами.
5.9.2.
Фортран. Фортран, название которого происходит отсокращ ения слов «формульный транслятор», употребляется нынедля обозначения язы ка программирования, а не транслятора с
него. Я зы к этот был разработан американской фирмой 1ВМ, ма­шины которой наиболее распространены сегодня в мире. Он, каки алгол-60, предназначен в первую очередь для научных расче­тов и в основном использует те же самые средства. Разумеется,имеются и отличия. Например, для обозначения операции умно­ж ения в фортране используется звездочка, а для операции воз­ведения в степень — две звездочки, так что вместо а X Ь в форт­ране пишется а * Ь, а вместо а2 — а * * 2 и т. д. Имеется множе­ство других малосущественных отличий, например употреблениев операторе присваивания обыкновенного знака равенства (а незначка : = ) , использование при индексировании круглых (а неквадратных) скобок, отсутствие операторных скобок вида (Ъе— епй) и др.
Наиболее существенным отличием фортрана от алгола-60 сле­дует, однако, считать наличие в фортране мощных средств дляуправления вводом-выводом, в том числе специальных средств
форматирования данных. Следует подчеркнуть, что под именем
фортран скрывается ныне целое семейство языков, из которых
наибольшее распространение получили так называемый базисный
(Ьа81с) фортран, средства которого входят во все язы ки семейст­ва, и мощный язы к фортран IV, в состав которого включается
арифметика комплексных чисел и многие другие дополнительные
средства. Наши последующие рассмотрения будут касаться в ос­новном базисного фортрана.
Предлож ения фортрана помещаются обычно в начале про­граммы. Они служ ат прежде всего для спецификации результа­тов выходных данных, печатающихся (или формирующихся) натом или ином выводном устройстве. Например, если нужно вы­вести целые числа, укладываю щ иеся (вместе со знаком) в 6 (де­сятичных) разрядов, то употребляют предложение вида N ГОКМ лТ (16). В операторе вывода \У Ы Т Е (п , К) А, В, С через побозначен номер устройства, на котором производится вывод,через N — номер предложения, задающего формат вывода, а че­рез А, В, С — идентификаторы переменных, значения которых
должны быть выведены: если А = + 3 2 5 , В = —7, С = 67 439, товывод будет иметь вид ...325, . . . —7, 67 4 3 8 ,-где точками обозна­чены пробелы (пустые места) на соответствующем выходном
Носителе.
Через Г пг.п специфицируются десятичные числа с фиксиро­ванной запятой, причем ш означает длину полного формата,* п — количество дробных разрядов. При большем числе разрядов

вывод производится с соответствующим округлением. Для специ­фикации чисел с плавающей запятой используется символ Р т .п.
Имеются и другие форматы (особенно многочисленные — в форт­ране IV ).
При вводе, выполняемом оператором В Е А Б (п , К) А, В, . ..,значения величин А, В, ..., вводимых устройством с номером гс,заносятся на соответствующие носители в формате, заданном
предложением с номером N. Заметим, что в одном функциониру­ющем предложении могут задаваться разные форматы. Операто­ры же К Е А Б (читать) и \У М Т Е (писать), ссылающиеся на этопредложение, вводят или выводят первое значение в первом фор­мате, второе — во втором и т. д.
Фортрановская программа пишется на специальных бланках*в каждой строке которых могут быть записаны 80 символов (почислу колонок в перфокарте). Первые 6 позиций используютсядля метки оператора (любого целого числа от 000001 до 999999)*следующие 66 — уже записи оператора, а последние 8 — подслужебную информацию (название программы и др.), которая пеобрабатывается компилятором. Если оператор длинный, он может
быть перенесен на следующие строки. Некоторые строки, поме­ченные буквой С в первой позиции (колонке), могут использо­ваться для любых пояснений (комментариев), которые програм­мист считает нужным сделать для облегчения понимания прог­раммы. Эти строки также не обрабатываются компилятором.
Заметим, что фортран в практике программирования употреб­ляется чаще алгола-60. Однако, в отличие от алгола-60, его грам­матика менее формализована и к тому же сохраняет в известной
мере (прежде всего во вводно-выводной части) машинную ориен­тацию. Поэтому в теоретических рассмотрениях, а такж е в зая­вочных публикациях новых алгоритмов принято использовать
алгол-60.
5.9.3.
Кобол. Язык кобол был разработан американской фир­мой 1ВМ прежде всего для автоматизации программирования про­цессов обработки деловой информации (бухгалтерского учета,банковских операций и др.). Он получил широкое распростране­ние в мире. Поскольку в коболе используется большое количест­во английских слов, разработаны и применяются на практикеего национальные версии (в том числе русская). В русской вер­сии могут использоваться русские идентификаторы, благодаря
чему операторы и программы кобола могут быть сделаны удобо­читаемыми даж е для малоквалифицированных в программирова­нии людей.
Пример такого оператора: В Ы Ч И С Л И ТЬ СУММА-К-ВЫДА­Ч Е - ЗА РП Л А ТА В Ы Ч Е С Т Ь НАЛОГ. Здесь фигурируют триидентификатора переменных: СУМ М А-К-ВЫ ДАЧЕ, ЗА РП Л А ТАи НАЛОГ, Для их обозначения принято употреблять прописные

(заглавные) буквы. Чтобы идентификатор, выраженный несколь­кими словами, воспринимался как один, а не несколько разных
идентификаторов, они объединяются в единый комплекс с по­мощью дефисов (черточек), как это имеет место в первом и&трех рассмотренных выше идентификаторов.
Заметим, что при получении арифметических выражений в.
коболе наряду с обычными фортрановскими обозначениями ариф­метических операций (+ , —, *, I), (но не **) м ож но.употреб­лять их словесное выражение: сложить, вычесть, умножить, раз­делить. То же самое имеет место для операций сравнения ( > г< , = , Ф ) и для булевых операций ( Д , V» П)* Поэтому ариф­метические и логические выражения могут принимать (пол­ностью или частично) словесную форму.
В остальном операторы и составленные из них участки про­граммы в коболе имеют примерно тот же вид, что и в фортране.
В полных текстах кобол-программы их операторная часть поме­щается в последнем по порядку (четвертом) разделе, называе­мом разделом процедур.
В первом разделе, называемом разделом идентификации, по­мещается название программы, имя ее автора (или авторов)г
дата окончания работы над программой и другие сведения, не­обходимые для ведения программной документации. Это наиме­нее стандартизованный раздел текста кобол-программы, правила
формирования которого могут варьироваться для различныхЭВМ и вычислительных центров.
Во втором разделе, называемом разделом оборудования, опи­сываются конфигурации (прежде всего ОЗУ и число периферий­ных устройств разных типов) в общем случае для двух различ­ных ЭВМ (которые в частном случае могут совпадать). ПерваяЭВМ будет производить трансляцию, на второй будет работать,полученная в результате трансляции машинная программа.
В третьем разделе, называемом разделом данны х, описывают­ся логические структуры файлов и записей, используемых впрограмме. Термин «логические» призван подчеркнуть, что речьидет о структурных данных, какими они представляются про­граммисту и фиксируются в документах, в отличие от физиче­ских структур, определяющих реальное размещение данных намашинных носителях. Принципиально важно, что в кобол-про­граммах программист имеет дело с более простыми и наглядны­ми логическими структурами. Реальное же размещение данныхво ВЗУ, а также установление соответствия, или, как принята
говорить, интерфейса, между физическими и логическими струк­турами данных возлагаются на транслятор.
Для описания форматов элементарных данных используются
символы 9(гс), А (я ), Х ( п ) , называемые в коболе шаблонами.
Число п в скобках указывает число символов в шаблоне, а 9, А,^В, М. Глушков

X — их тип. Через X обозначается любой символ, через А —буква алфавита, дефис или пробел, а через 9 — произвольная де­сятичная цифра (не обязательно девятка). Вместо задания числап можно просто повторить п раз символ типа шаблона. Н апри­мер, 999 есть шаблон трехзначного десятичного числа. Через Т вшаблонах десятичных чисел указывается позиция десятичной
запятой (или десятичной точки). Например, шаблоном для числа
027,30 служит выражение 999Т99 или 9 (3) Т 9 (2). Через М(гс)обозначается шаблон наличия множителя 10п. Например, число
25 в шаблоне 99М (3) интерпретируется как 25 • 103= 25000.
Наличие знака в шаблоне числа указы вается символом 3 (пер­вая буква слова зн ак).
Для описания записей в коболе используются иерархические
(древовидные) структуры, уровни которых можно нумеровать
числами от 01 до 49. Уровень 01 употребляется только дляназвания записи (корня дерева). По мере увеличения уровня
иерархии номера уровней при переходе на каждый следующий
должны возрастать (не обязательно на единицу). Порядок разме­щ ения уровней и названий данных должны соответствовать ихразмещению в документе. Атрибуты записи (листья дерева) со­провождаются описанием соответствующих шаблонов.
Пример описания записи с полными сведениями о сотруднике:01 СВЕДЕН ИЯ-О -СО ТРУДНИ КЕ.
02 А Н К Е Т Н Ы Е -Д А Н Н Ы Е .
03 Ф АМ ИЛИЯ; Ш А БЛОН А (20).
03 ИМЯ; Ш АБЛОН А (1 2 ).
03 ОТЧЕСТВО; Ш А БЛОН А (1 5 ).
03 ДАТА РО Ж Д ЕН И Я .
04 ГОД; Ш АБЛОН 9 (4 ).
04 МЕСЯЦ; Ш АБЛОН 9 (2 ).
04 ЧИСЛО; Ш А БЛОН 9 (3 ).
03 О БРА ЗО ВА Н И Е; Ш АБЛОН А (21).
02 НОМ ЕР ОТДЕЛА; Ш А БЛОН 9 (2 ).
02 ЗА РП Л А ТА ; Ш А БЛО Н 999Т99.
В описании файлов указываю тся имя файла, тип метки, име­на записей различных типов, входящих в файл, а такж е возмож­ное их число, минимальная и максимальная длина записей
каждого типа, количество записей в физических блоках и др.
Возможные сведения становятся обязательными, если трансляторне способен определить их самостоятельно. Более «интеллекту­альные» трансляторы в таких сведениях обычно не нуждаются.
Перечисленные средства составляют так называемый язы кописания данны х кобола. Я зы к м анипулирования данными вклю­чает в себя операторы О Т К РЫ Т Ь, ЗА К Р Ы Т Ь , Ч И ТА ТЬ, ПИ**САТЬ, в принципе аналогичные по своим функциям фортранов-*ским операторам 0РЕ1Ч, СЬОЗЕ, К Е А Б, \У Ш Т Е . Будучи основ­ными для организации обменных операций, эти операторы до­полняются в коболе целым рядом дополнительных операций
(отличных от фортрановских), которые, мы, однако, описыватьне будем.
5.9.4. РЬ-1. Язык программирования РЬ-1 соединяет в себечерты, характерные для языков, предназначенных для научных
расчетов, и языков для обработки данных. Это очень мощный
язык, получающий с каждым годом все большее распростране­ние. Поскольку основные черты процедурно-ориентированных
языков уже нашли свое описание в предыдущих пунктах, мы небудем останавливаться сколько-нибудь подробно на особенностях
языка РЬ-1, тем более, что для такого описания потребовалосьбы достаточно много места. Поэтому отметим лишь некоторые
особенности, отличающие этот язы к от уж е описанных. Преж­де всего, в РЬ-1 помимо операций над скалярами употребля­ются такж е операции над массивами и другими структурами
данных.
Разумеется, с помощью подпрограмм такие операции можно
определять и в других язы ках. Однако в РЬ-1 они вводятся бо-»лее естественным путем, позволяя, в частности, строить наряду собычными скалярными выражениями выраж ения (формулы) надструктурами данных. В РЬ-1 значительно расширены средства
управления вычислительным процессом. В частности, имеются
средства для выделения ветвей процессов, которые могут выпол­няться независимо (асинхронно) от породивших их процессов,а затем снова сливаться (синхронизироваться) с ними. Заметим
также, что файлы в этом языке в некоторых русских публикаци­ях, посвященных языку РЬ-1, называются тепами. Я зы к управ­ления данными в РЬ-1 такж е отличается богатством своих
средств, заимствованных из практики работы с современными
операционными системами.
5.9.5. Проблемно-ориентированные язы ки программирования.
Среди проблемно-ориентированных языков программирования от­метим прежде всего язы ки для моделирования сложных систем.
Они занимают как бы промежуточное положение между проце­дурно- и собственно проблемно-ориентированными
языками.
В отличие от обычных входных языков высокого уровня, онирасполагают большим набором средств для описания одновремен­но протекающих «внешних» по отношению к программе (обычно
стохастических) процессов, например таких, как сборка изделийна конвейере, обслуживание покупателей в магазине, движение
автомобилей по дороге и т. п .). Эти процессы по отношению кведущей их программе выполняют как бы роль данных специ­ального вида — динамически развертывающихся в некотором
собственном, так называемом системном времени. Второе отли?
Ю*чие — это разнообразные средства для оформления результатов
моделирования в виде графиков, гистограмм и т. п.
Описанная на языке моделирования сложная система с по­мощью специального программного обеспечения как бы «приво­дится в движение» внутри ЭВМ. Меняя условия, в которых ра­ботает моделируемая система, получают представление о ееповедении в реальной действительности. М еняя параметры систе­мы, а иногда и ее конфигурацию, выбирают из множества воз­можных реализаций систему, поведение которой наилучшим об­разом отвечает заданным критериям.
Вначале наиболее широкое развитие получили язы ки моде­лирования чисто дискретных процессов. Это зарубежные языки
симула, симскрипт, отечественный язы к слэнг и др. В 70-е годыполучили распространение языки моделирования, содержащие
такж е средства описания непрерывных процессов, прежде всего
процессов, описываемых системами обыкновенных дифференци­альных уравнений. В качестве примера такого язы ка укажем
отечественный язык недис.
К ак правило, истинно проблемно-ориентированные язы ки яв­ляю тся гораздо более специализированными. В качестве приме­ров таких языков приведем отечественные язы ки киев-67 икиев-70. Они предназначены для описания процессов управления
электронным (или ионным) лучом с целью обработки плоской
поверхности. Команды в этих язы ках состоят из трех частей.
В первой части указывается наименование геометрического объ­екта (набора точек, линии или плоской фигуры), который надле­жит обработать. В число таких объектов включаются точечный
растр, отрезок прямой, дуга окружности, прямоугольник, круги т. п. Во второй части команды приводятся числовые значения
параметров, характеризующих размеры и положение объекта впределах разрабатываемого растра, например радиус круга и ко­ординаты его центра. Третья часть содержит информацию чисто
технологического порядка (шаг перемещения луча, параметры
импульсов и др.).
Более сложными являются языки, предназначенные для опи­сан и я процессов обработки трехмерных деталей на станках спрограммным управлением. Имеются и многие другие языки
«технологического» направления.
5.10. Технология программирования
Сложность процесса программирования растет опережающими
темпами по мере увеличения размеров составляемых программ.
Небольшие прикладные программы, составляемые одним челове­ком и помещающиеся полностью в ОЗУ, не требуют, как прави­ло, особо сложной технологии. Программа пишется на одном извходных языков высокого уровня (процедурно- или проблемноориентированных) с использованием библиотеки стандартных
подпрограмм, транслируется, отлаживается и запускается вработу.
Отладка программы представляет собой важный элемент в об­щем технологическом цикле создания и эксплуатации программ­ного продукта. Целью отладки является выявление и устранение
ошибок, которые могут возникнуть при составлении программы.
Технология отладки программы предусматривает использованиедля всей программы или отдельных ее блоков тех или иныхтестов. В простейшем случае тестом может служить применение
отдельных программных блоков к системам исходных данных,подобранных таким образом, чтобы результат работы блока былочевиден или, по крайней мере, легко вычислйм без ЭВМ. Н а­пример, для блока, осуществляющего вычисление по формуле
г = ех • У х 2 + у 2,можно выбрать в качестве исходных данных пары значений
*, у ( 0 ,0 ) , (0, 1), ( 1 ,0 ) .
При отладке может использоваться специальный режим покомандного (или поблочного) исполнения программы, при котором
после испытания очередной команды (или блока) происходит
остановка процесса и вывод результатов для анализа их програм­мистом. Для устранения потерь машинного времени на анализ
результатов поблочных тестов подобный метод отладки должен
осуществляться в мультипрограммном режиме, или еще лучш е,—в режиме разделения времени.
При более сложных системах тестирования программисту мо­жет выдаваться распечатка (так называемый дамп) полного со­держимого рабочих ячеек ОЗУ и состояния центрального про­цессора.
Следует отметить, что большое число ошибок, полученныхпри написании программ на входных языках (особенно на язы ­ках высокого уровня), выявляются специальными программами
синтаксического контроля, применение которых предшествует
процессу трансляции. Места ошибок при этом точно указываю т­ся программисту. Правда, таким образом выявляются только такназываемые синтаксические ошибки, т. е. нарушение п р а в и лграмматики алгоритмического языка, на котором написана ана­лизируемая программа. Что же касается содержательных ошибок
(например, неправильный адрес перехода и др.), то их выявле­ние требует совместной работы ЭВМ и программиста.
Для простых программ перечисленных средств оказывается
Достаточно. Однако сложные программы объемом в десятки иДаже сотни тысяч машинных команд требуют для своей разра­ботки и эксплуатации дополнительных средств. Необходимость втаких средствах возникает уж е на самом первом этапе — форма*лизации и первичной алгоритмизации процессов, которые пред­стоит запрограммировать.
Задача этого этапа состоит прежде всего в том, чтобы распре­делить работу по написанию отдельных частей программы между
коллективами программистов и обеспечить последующую стыков­ку разработанных ими участков программы. Для решения этойзадачи чаще всего используются так называемые блок-схемы бу­дущей программы.
В блок-схеме программы отдельные блоки программы изобра­жаю тся обычно прямоугольниками, связи между блоками —стрелками, а условия, опреде­ляющие выбор той или инойстрелки,— кружками или ром­бами. Пример простейшей блокт
схемы, состоящей из двух блоРис. 5.1
ков А и В и условия а, изо­бражен на рис. 5.1. Стрелкипа блок-схеме показывают передачи управления и направления
движ ения информации между отдельными программными блока­ми. Руководитель проекта должен не только нарисовать блоксхему будущей программы, но и сформулировать задачи, решае­мые отдельными блоками, сущность программных условий, а так­ж е точно определить входные и выходные данные каждого бло-5
ка. После этого написание программ, решающих задачи всех,;блоков, а такж е программ, осуществляющих проверку всех усло­вий, может быть поручено разным программистам.
В общем случае различные блоки могут быть запрограммиро- ;ваны в различных входных языках, которые могут иметь неоди­наковые средства описания данных. Поэтому при их трансляции
необходим специальный процесс редактирования связей. Про- !
граммы, обеспечивающие этот процесс, включаются в состав про- Iграммных средств автоматизации программирования. Разумеется,чтобы связи сработали правильно, руководитель проекта должен
обеспечить унификацию обозначений данных.
Недостатком обычного метода блок-схемы является малый пуровень формализации задач, решаемых программными блоками.;В так называемой Я-технологии программирования этот недоста­ток устраняется за счет изменения содержания, вкладываемого всамо понятие блок-схемы. Блок-схема в /?-технологии использу-иется только для указания маршрутов движения данных и пере­дач управления; что же касается операторов, обрабатывающих^эти данные, то они могут накладываться на уже готовую блок -1схему позднее. При этом степень подробности блок-схемы тако-||ва, что она охватывает все циклы и передачи управления в про-!]грамме, за исключением тех, которые включены в состав отдель-1|пых операторов. Благодаря этому программные блоки в Я-технопогии имеют вид простых последовательностей элементарных
операторов используемого язы ка (без переходов и циклов) и мо­гут варьироваться произвольным образом без наруш ения общей
логической структуры программы. В результате создается воз­можность разделить процессы написания и даж е отладки логи­ческих схем программы от содержательного наполнения этихсхем. Сама логическая схема в Я-технологии такж е имеет невполне традиционный вид. Она изображенав виде направленного В-графа, подобного
А1тому, который изображен на рис. 5.2. Настенках (дугах) этого графа с одной сторо­ны изображаются условия (а ,), при выпол­«2нении которых передачи управления проис­Агходят от этой стрелки. С другой стороны
стрелки помещаются операторы или послеРис. 5.2
довательности операторов А *, которые долж ­ны быть выполнены в этом случае. Стрелка, помеченная на
рис. 5.2 буквой N означает передачу описания логической схемына другой лист бумаги с номером N. Таких передач на другие
листы в схеме может быть несколько.
При использовании традиционных входных языков логиче­ские схемы программ даже средней сложности могут оказаться
слишком громоздкими для того, чтобы быть спроектированнымии отлаженными одним человеком за разумное время. В Я-технологии это противоречие разреш ается за счет использования в ка­честве входного язы ка автокода некоторой воображаемой ЭВМ(так называемой В -м аш ины ). В состав команд Я-машины поми­мо операций с обычной (прямо адресуемой) памятью вводятся
операции со стековой и некоторыми другими специальными вида­ми ЗУ (пока не используемыми в реальны х ЭВМ). Благодаря
этому операторы В-язы ка (язы ка Я-маш ины) делаются весьма
емкими, выраж аясь порой многими десятками команд обыч­ных ЭВМ.
Самое же главное состоит в том, что внутрь таких операторов
«втягиваются» многие циклы и переходы, возникающие при про­граммировании различных процессов обработки нечисловой ин­формации. Тем самым резко упрощаются логические схемы про­грамм для таких процессов, составление и отладка подобных про­грамм приобретают такую же простоту и ясность, как и дляслучая вычислительных программ при условии использования
входных языков, ориентированных на вычислительные процеду­ры (алгол, фортран и др.).
Другой подход к методике проектирования больших программ
Дает так называемый метод ф ормализованны х технических зада­нии. В упрощенном виде суть этого метода состоит в том, чтопри проектировании сложных программ создается ряд проблем­но-ориентированных алгоритмических языков А и Л 2, .. . , А т споследовательно разукрупняющимися операторами и логически­ми условиями. Руководитель проекта пишет полный текст про­граммы на языке А { и разделяет его на несколько программных
блоков, поручая дальнейшее их разукрупнение в языке А 2 ужене одному, а группе программистов (выделяя соответствующие
блоки и контролируя связи между ними). Процесс этот продол­жается, пока на очередном этапе не будет получена запись про­граммы на каком-либо известном входном язы ке Л т , трансляцияс которого может быть выполнена автоматически. Не исключено,разумеется, что последняя запись будет написана не на. одном
входном языке Л п, а на нескольких.
Все языки на предыдущих этапах формализуются лишь в тойстепени, чтобы записи на них однозначно понимались всеми чле­нами работающей над задачей бригады программистов. Как пра­вило, эти языки проблемно-ориентированны. Например, в языках
верхних уровней, предназначенных для написания шахматных
программ, могут использоваться в качестве операторов известные
алгоритмы проведения шахматных эндшпилей (мат одинокому
королю королем и ладьей и т. п.), а в качестве логических усло­вий — наличие слабого поля, открытых линий и т. п.
Описанный метод представляет собой пример технологии про­ектирования программ с в е р х у в н и з , т. е. от более укрупнен­ных к более и более детализированным описаниям. Другой типтехнологии предполагает обратное направление процесса проек­тирования программ с н и з у в в е р х . При этом вначале создают­ся наборы подпрограмм и программные модули, решающие от­дельные части программируемой задачи. После построения таких
заготовок из них собирается полная программа. .Подобная мето­дика носит название модульного программирования.
5.10.1.
Структурное программирование. Практика программи­рования показывает, что источником наибольшего количества;ошибок и наибольших трудностей при отладке является исполь-}зование операторов безусловного и условного переходов. Большое^число таких операторов часто делает логическую схему програм-!
мы практически необозримой и сильно затрудняет разбиение!
программы на части для работы над ней бригады программистов,^Автором еще в 1965 г. было показано, что любую программу:можно привести к виду, не использующему операторов перехода#^Программы такого вида впоследствии получили наименование
структурированных программ. В них помимо обычного последо-;вательного выполнения элементарных операторов используются!
составные операторы (такж е имеющие вид структурированных
программ) в виде условных операторов и операторов цикла
4(см. гл. I ) .

Логические схемы структурированных программ отличаются
большой простотой и наглядностью. Технология их написания иотладки, получившая наименование структурного программиро­ва н и я , обеспечивает сокращение времени подготовки программ вдва раза и более. Разумеется, эта технология не сводится толькок исключению из арсенала программистов операторов перехода.
Заметим лишь, что, как было показано в 1965 г. автором, струк­турированные программы можно рассматривать как формулы внекоторой алгебре. Зная правила преобразования выражений втакой алгебре, можно осуществлять глубокие формальные (и по­тому полностью автоматизируемые) преобразования программ.
Тем самым в системе автоматизации программирования появля­ется возможность иметь гораздо более сильные, чем обычно,средства автоматической оптимизации программ.
5.10.2.
Документирование и ведение программ. В настоящее
время программы для ЭВМ представляют собой один из видов
общественного продукта. Составленная программа не является
«личным инструментом» составившего ее программиста. Она, какправило, используется более или менее широким кругом других
пользователей, которые при этом должны, разумеется, понимать
особенности работы с нею. Кроме того, программы в процессе
эксплуатации подвергаются различного рода изменениям и усо­вершенствованиям. Необходимость внесения изменений в про­граммы (даже в том случае, когда они написаны на входных
языках высокого уровня) вызывается изменением типов и кон­фигураций используемых ЭВМ. Таким образом, программный
продукт нуждается не только в начальной разработке и отладке,но и в четко организованном постоянном ведении.
Все сказанное убедительно свидетельствует о том, что состав­ление и последующие изменения программного продукта нуж да­ются в тщательно продуманной системе документирования. В та­кую систему помимо собственно текстов программ на входных имашинных язы ках должны включаться их достаточно подробные
описания, инструкции для пользователей и другие документы.
Поскольку, как уж е отмечалось выше, документация может под­вергаться изменениям, наилучш ая система документирования
предполагает безбумажный способ ее ведения. При этом все до­кументы хранятся на машинных носителях, а специальная инст­рументальная программная система позволяет работать с доку­ментацией как лицам, ответственным за ее ведение, так и поль­зователям. В системе обеспечивается возможность быстро вно­сить нобходимые изменения в хранимые документы, а такж е вслучае необходимости получать оперативно в нужных количест­вах их копии как в машинной, так и в традиционной бумажной
форме.

5.11. Обеспечение надежности машинной обработки
информации
Огромная сложность технических и программных средств
применяемых в современных системах обработки данных, остро
ставит вопрос об их надежности. Надежность современных элек­тронных схем, достаточно высокая сама по себе, дополняется разви­тыми системами машинного контроля. В местах возможного воз­никновения кратковременных сбоев или выхода из строя отдель­ных элементов применяются так называемые коды с обнаружен
нием ошибок, а для особо ответственных схем — коды с (автома­тическим) исправлением ош ибок. В таких кодах (обычно двоич­ных) имеются дополнительные — так называемые контрольные
разряды.
О простейшем виде контроля по четности уже говорилось вы­
ше (в гл. I I I ) . Единственный контрольный разряд в этом видеконтроля выбирается таким образом, что во всем коде (вместе сконтрольным разрядом) имеется ч е т н о е число единиц (0, 2, 4,
б и т . д .). Н аруш ение этого правила в каком-либо месте контро­лируемой схемы вызывает сигнал прерывания с тем, чтобы воз­никш ая ошибка не повлияла на результат работы исполняемой
программы. По этому сигналу управление передается обычно
специальной тестовой программе. Она устанавливает характер
возникшей ошибки (случайный кратковременный сбой или пос­тоянная неисправность). В первом случае исполнение прерван­ной программы возобновляется. При обнаружении неисправности
длительного действия тестовая программа локализует место еевозникновения и выводит необходимую информацию на пульт
системного оператора, управляющего работой ЭВМ (системный
пульт), для организации ее устранения.
Идея (двоичного) кода с исправлением одиночной ошибки со­стоит в следующем. Пусть исходный (незащ ищ енный) код имеетт (двоичных) разрядов. Выберем п > т так, чтобы 2п/ ( ^ + 1 ) ^> 2т . Полученный защ ищ енны й код будет иметь к = п — т кон­трольных разрядов, причем 2к > ш + к + 1 = п + 1. Каждому изп разрядов присваивается номер от 1 до п. Далее для любого
значения защищенного (гс-разрядного) кода составляется к конт­рольны х сумм 8 У, .. . ,по модулю 2 значений специально вы­бранных разрядов этого кода. Для & выбираются разряды, длякоторых двоичные коды номеров имеют в г-м разряде единицу. *Д ля суммыэто будут, очевидно, разряды с номерами 1, 3, 5,
7, .. . , для суммы 8 2 — разряды с номерами 2, 3, 6, 7, 10,И , . . . и т. д.
При любом исходном коде контрольные разряды могут бытьвыбраны так, чтобы все контрольные суммы были равны нулю.
Проверочный (двоичный) код 5 = 8 к8 к^ . . . 8 %при этом будет пу-_1Чым. При таком условии защищенный код называется правильлсПри возникновении одиночной ошибки в этом коде в л ю ­бом (безразлично — основном или контрольном) разряде провепчный код будет отличен от нуля. При этом в силу способа
выбора контрольных сумм значение проверочного кода 5 будет
представлять собой двоичный код номера разряда защищенного
пода, в котором возникла ошибка. Для исправления этой ошибки
достаточно изменить значение указанного разряда на противопо­ложное (если оно равно 0, то на 1, а если 1 — то на 0 ). Соблю­дение неравенства 2к > п + 1 обеспечивает устранение ошибки вл ю б о м разряде защищенного кода.
Описанный процесс исправления одиночной ошибки может
выполняться автоматически специальным корректирующим бло­ком, который может быть выполнен в виде как комбинационной,так и последовательностной схемы (см. гл. I). Размещ ая такие
блоки в р а з л и ч н ы х трактах передачи информации ЭВМ, мож­но обеспечить правильность ее работы даже при выходе из строя
многих ее элементов (отдельных разрядов регистров или ячеек
ЗУ, отдельных шин передачи информации и т. д.).
Из неравенства 2п/ ( п + 1 ) ^ 2т , которое можно переписать ввиде 2к > тп + 1 + к, легко находим, что для исправления оди­ночной ошибки к 16-разрядному коду достаточно добавить 5 кон­трольных разрядов, к 32-разрядному 6 и т. д. Возможно строить
коды с исправлением не одной, а любого заданного числа оши­бок. Однако при этом число контрольных разрядов должно бытьсоответственно увеличено. Заметим также, что коды с исправле­нием ошибок позволяют обнаруживать большее число ошибок,чем они способны исправить.
Помимо кодов с обнаружением и исправлением ошибок при­меняются и другие методы аппаратной защиты от возможных
ошибок. Один из наиболее простых состоит в использовании вме­сто одного какого-либо блока (а иногда и целой ЭВМ) трех со­вершенно одинаковых параллельно работающих блоков. На вы­ходах этих блоков ставится схема мажоритарного выбора, фор­мирующая на своем выходе тот сигнал, который выдает б о л ь ­ш и н с т в о присоединенных к ней блоков (т. е. 2 или 3 ). Темсамым обеспечивается правильная работа даже при полном вы­ходе из строя одного из блоков.
Использование методов аппаратной защиты от ошибок позво­ляет строить в принципе сколь угодно надежные электронные
схемы любой сложности. На практике существуют ЭВМ, элект­ронная часть которых может работать безошибочно в течение
нескольких лет. Разумеется, наличие столь мощной защиты силь­но Удорожает ЭВМ. Поэтому на практике аппаратную надеж­ность ЭВМ сегодня доводят обычно до нескольких сотен или не­скольких тысяч часов безошибочной работы. Остальная часть га-рантии получения безошибочных конечных результатов возлага*ется на средства п р о г р а м м н о й защиты.
Ч асть этих средств включается в операционную систему. Сов­ременные ОС, как уж е отмечалось выше, автоматически придают
программам пользователей те или иные периферийные устройст­ва. При неисправности в любом из таких устройств (надежность
которых, как правило, существенно ниже надежности электрон­ных схем) ОС автоматически обеспечивает его отключение и за­мену другим (исправным) устройством. ОС обнаруживает и пре­дотвращает ошибки, которые могут возникнуть от неправильных
действий программы пользователей (нарушение установленных
форматов данных, попытки обращения к отключенным устройст­вам и т. д .). В ряде современных управляющих ЭВМ, предназна­ченных для управления особо ответственными процессами, ОСпозволяет по мере выхода из строя отдельных элементов и узлов
автоматически перестраивать структуру машины, отключая часть
менее важ ных программ, с тем чтобы обеспечить максимальную
живучесть машины в смысле правильного исполнения ею наибо*лее ответственных функций.
Значительные возможности обеспечения защиты от ошибок
имеются и у самих пользователей. Составляя программы, онимогут предусматривать в них повторный счет (с мажоритарным
выбором результата), различные контрольные проверки (подобно
тому, как это делается в обычных расчетах, производимых вруч­ную) и т. д.
Разум ная комбинация всех перечисленных средств защиты
может обеспечить любую требуемую гарантию надежности ре­зультатов, получаемых с помощью ЭВМ.
5.11.1.
Защ ита памяти. При мультипрограммном режиме ра­боты ЭВМ возникает новый источник ошибок, а именно, возмож­ность записи информации одними программами в зоны памяти,отведенные для других программ. В таком случае может про­изойти непоправимая порча данных, с которыми оперируют про­граммы, а иногда и самих программ. Для защиты от подобных
ошибок вводится так называемый клю ч защиты памяти. При ра­боте ЭВМ ОС разбивает оперативную память на блоки, каждомуиз которых присваивается некоторое з н а ч е н и е ключа защиты
этого блока. Число этих значений выбирается равным п + 1, гдеп — число программ, одновременно исполняемых в ЭВМ (в муль­типрограммном реж им е).
Распределяя блоки памяти между программами, диспетчерпланировщ ик составляет таблицу, в которой каждому блоку от­водится номер (от 1 до п) программы, использующей этот блок.
Н улевое значение ключа соответствует незащищенным блокам
(обычно таковыми являются блоки, не закрепленные ни за од­ной программой). При исполнении программы присвоенный ейномер запоминается в УУ центрального процессора в специаль­ном регистре ключа защиты памяти, который включается в сло­во состояния программы. При записи информации в ОЗУ содер­жимое этого регистра сравнивается со значением ключа, припи­санного блоку ОЗУ, в который происходит обращение. Всякая
попытка записи в блок, защищенный ключом другой программы,*автоматически блокируется.
То же самое происходит и в том случае, когда участок дан­ной программы исполняется не центральным, а канальным про­цессором. Номер исполняемой программы запоминается в УУканала (в адресном слове канала) и в случае попытки записи нОЗУ сравнивается с ключом защиты соответствующего блока
ОЗУ. Срабатывание защиты памяти (при попытках записи ин­формации в «чужие» блоки ОЗУ) как при работе ЦП, так и ка­нала не только блокирует запись, но и формирует соответствую­щий сигнал прерывания для возможности включения программ
ОС, помогающих устранить возникший конфликт. Необходимость
приписывания блокам ОЗУ ключей защиты вызывает появление
команд: установить клю ч и прочитать ключ.
Заметим, что защита памяти предназначена для блокирова­ния лишь несанкционированной записи. Чтение «чужой» инфор­мации при этом не блокируется. Для защиты от несанкциониро­ванного чтения секретной информации используются другие
средства, описываемые в следующей главе. Оба вида защиты отнесанкционированного доступа (записи или чтения) могут при­меняться не только к ОЗУ, но и ко всем другим видам памяти,прежде всего к памяти на магнитных лентах и дисках.
5.12. Операционные системы ЕС ЭВМПоскольку операционные системы представляют собой весьма
сложные программные комплексы (содержащие многие сотни ты­сяч машинных команд), они обычно наращиваются постепенно.
В результате возникает целое семейство операционных систем сразными наборами возможностей. Для ЕС ЭВМ первоначальнобыл создан относительно простой вариант так называемой диско­вой операционной системы (ДОС ЕС). Затем последовательновводились все более и более совершенные версии операционной
системы, различаемые номером, который состоит пз двух цифр,разделенных точкой (например, ОС ЕС 4.0).
Следует подчеркнуть, что с машиной фактически поставляет­ся не сама ОС, а лишь некоторая ее заготовка, которую еще не­обходимо настроить на конкретную конфигурацию ЭВМ (номер
додели, объем ОЗУ, состав периферийного оборудования и д р .).
Ври настройке планируются такж е размер и состав библиотек
стандартных подпрограмм, стандартные назначенпя вводпо-вывод-*ных устройств и устройств внешней памяти для нужд самойОС и др. Процесс настройки называют также процессом генера­ции конкретной ОС (той или иной версии) для ЭВМ данной кон­фигурации.
Заметим, что в ЕС ЭВМ в состав ОС принято включать про­граммное обеспечение системы автоматизации программирования.
Развиты е версии ОС, помимо язы ка ассемблера, обеспечивают
возможность использования в качестве входных языков фортран,кобол, РЬ-1. Возможно использование и других языков, которымне нашлось места в нашем изложении. В своей управляющей
части развитые версии ОС ЕС предоставляют пользователю всесредства, которые описаны в настоящей главе, и многие допол­нительные средства, не нашедшие в ней отражения.
В состав ОС ЕС ЭВМ включаются такж е различного родаслужебные программы, осуществляющие изменение форм пред­ставления данных и особенно массивов и файлов. В их числе от­метим особо программы сортировки, осуществляющие упорядоченние массивов (файлов), например, упорядочение массива чиселв порядке их роста или убывания.

БА ЗЫ Д А Н Н Ы Х
6.1. Общие сведенияВ начальный период развития ЭВМ организацией данных за­нимались прикладные программисты. К аж дая прикладная про­грамма снабж алась своими собственными данными, которые вво­дились в ЭВМ вместе с программой. Пока на ЭВМ решались от­дельные, не связанны е друг с другом задачи, такое положение
было естественным. Однако начиная с 60-х годов и особенно в
70-е годы основная масса применений ЭВМ получила другое, такназываемое системное направление.
В системных применениях задачи, решаемые на ЭВМ, взаи­мосвязаны в единое целое общей целью, например, управлениемтем или иным сложным объектом, обработкой регулярных пото­ков данных и т. п. Имея дело с единым объектом, работающие вЭВМ программы используют и формируют ту или иную систему
данных об этом объекте, которую мы будем называть его инфор­мационной моделью .
На первых порах и в системных применениях преобладал
позадачный подход, при котором каж дая программа использовала
свои данные, формируемые в изолированном от других задач
процессе. При этом приходилось повторять многократный ввод ивывод по сущ еству одних и тех же данных. Например, при уп­равлении предприятием определенные данные о его производст­венном персонале используются не только в системе кадрового
Учета, но и при решении задач планирования, начисления зар­платы и т. д. Естественно поэтому ввести эти данные в ЭВМ°Дин раз, создав базу данны х о кадрах предприятия и предоста­вив возможность л ю б ы м прикладным программам черпать не­обходимые для них данные из этой базы.
Выгодность подобного подхода имеет несколько аспектов. Воиорвых, достигаемая при этом одноразовость ввода резко умень­шает нагрузку на устройства ввода и подготовки данных, являю ­щиеся наиболее узким местом безбумажной информатики как вчасти пропускной способности, так и трудоемкости. Второе пре^имущество заключается в достижении независимости процесса
сбора и обновления или, как принято говорить, актуализации
данны х от процесса их использования прикладными про­граммами.
Это позволяет в свою очередь, во-первых, разделить работу поавтоматизации этих процессов между разными коллективами про­граммистов и тем самым ускорить процесс создания соответству­ющих автоматизированных систем. Во-вторых, устраняется опас­ность ошибок из-за возможной разновременности актуализации
данны х в различных программах. И, наконец, в-третьих, достига­ется большая гибкость как в изменении и расширении состава
прикладных программ, так и в отношении совершенствования
организации самой базы данных.
Последнее преимущество предполагает независимость приклад­ных программ от физической организации базы данных. Т акаянезависимость достигается с помощью специального (системного)программного обеспечения, которое интерпретирует так на­зываемый язы к м анипулирования данными. Будучи процедурно,а не машинноориентированным, подобный язык, при использова­нии его в качестве дополнения к процедурно- или проблемноориентированным языкам программирования, позволяет писать
прикладные программы, не вникая в фактическое расположение
данны х во внешней памяти.
Универсальны е базы данных, обслуживающие любые запросы
прикладных программ, вместе с соответствующим программным
обеспечением принято называть банками данных. Подобно томукак обычный банк является хранилищем вкладов, банк данных
может рассматриваться как хранилище информации (баз дан­ны х), принадлежащей в общем случае многим пользователям.
Владельцы информации определяют правила доступа к ней дру­гих пользователей, правила ее актуализации, длительность хра­нения и др. Для реализации этих возможностей банк данных
снабж ается специальным программным обеспечением. Кроме то­го, функционирование банка предполагает наличие одного илинескольких человек, выполняющих функции администрации бан­ка. Не являясь формально владельцем содержимого банка, адми­нистрация несет полную ответственность за правильность егофункционирования.
6.2. Справочно-информационные системы
Первые банки данных были использованы для автоматизации
справочно-информационной деятельности. Здесь понятие банка
данны х выступает в наиболее чистой форме ввиду фактического
отсутствия прикладных программ. В автоматизированных инфор­мационны х системах (АИС) их заменяет интерпретатор языка

запросов, позволяющий формулировать требования к выдаче техили иных справок. В простейшем случае такая справка пред­ставляет собой одну или несколько записей из некоторого файла
(см. § 1.8).
6.2.1.
Фактографические АИС. Различают фактографические*АИС, у которых базы данных составляются из форматированных
(формализованных) записей, и документальные АИС, записями
которых могут служить различные неформализованные докумен­ты (статьи, письма и т. п.). В простейшем случае фактографиче­ская АИС имеет в качестве базы один файл с записями фиксиро­ванного формата (все записи имеют одну и ту же длину). При­мером форматированных записей могут служить, скажем, записиоб операциях по приему и выдаче денег в сберкассе; запись име­ет четыре основных атрибута: дата, характер операции (принято,выдано), сумма, остаток вклада.
В качестве форматированной записи может рассматриваться
кадровая анкета (личный листок по учету кадров). Правда, та­кие ее разделы, как «прежняя работа», «поездки за границу» и
др. в обычной анкете не до конца формализованы и, главное,имеют переменную длину, поэтому при автоматизации кадрового
учета необходимы некоторые доделки. В частности, полная фор­мализация раздела «прежняя работа» требует составления клас­сификатора предприятий и организаций (причем не только в на­стоящем, но и в прошлом). Кроме того, обычно бывает целесооб­разно фиксировать максимальное количество позиций в каждом
разделе и тем самым выравнивать длину записей (у многих запи­сей при этом могут возникнуть позиции с пустым заполнением).
С этими дополнениями мы будем рассматривать систему кадро­вого учета как базовый пример простейшей фактографиче­ской АИС.
Среди атрибутов (форматированных) записей обычно сущест­вует атрибут, который однозначно идентифицирует запись. В си| стеме кадрового учета таким атрибутом является учетный номер
| работника, которому принадлежит данная запись (анкета). ПоI добный атрибут называется основным (или первичным) ключом.
| По нему определяется (с помощью специальной программы или| таблицы) адрес записи во внешней памяти.
Одной из важнейш их задач АИС является быстрый подбор
записей, обладающих теми или иными свойствами, например —выбрать все анкеты людей данного возраста или данной профес­сии. Атрибуты, которыми задаются эти свойства, как правило,I идентифицируют не одну запись, а некоторое множество записей.
' Они называются дополнительными (или вторичными) ключами.
1Поиск нужных записей по дополнительному ключу обычно
разбивается на два этапа. На первом этапе определяются значе­ния основного ключа, отвечающие записям с заданным значепиН В. м Г луш ковем дополнительного ключа. На втором этапе по найденным зна­чениям основного ключа находят адреса записей, а затем и самизаписи. Для быстрого выполнения первого этапа (без последова­тельного просмотра всех записей) используются так называемые
инвертированные списки. Каждый такой список состоит из парзначений дополнительного и соответствующего им множества
значений основного ключа, упорядоченных по дополнительному
ключу.
Пусть, например, первоначальный файл состоит из записей стремя атрибутами: учетный номер, год рождения, код профессии.
Возьмем для простоты лишь 12 записей (табл. 6.1).
Таблица
Учетный
номерГодрождения
Кодпрофес­
сии

1

2

3

5

4

7

6

1950 1945 1950 1947 1945 1950 1951

03

05

01

02

03

8

И

10

12

1953 1949 1950 1957 1946

03

03

04

9

0.1

02

09

08

01

Список, инвертированный по ключу год рождения, приведенв табл. 6.2.
Таблица

6.2

Год рождения

1945

1946

1947

1949

1950

1951

1953

1957

Учетный номер

2 ,5

12

4

9

1 , 3, 6, 10

7

8

И

Список, инвертированный по ключу код профессии, приведенв табл. 6.3.
Таблица

6.3

Код профессии

01

02

03

04

05

08

09

Учетный номер

2, 10

5, 9

1 , 4 , 7, 8

6

3

и

12

Объединение инвертированных списков по всем дополнитель­ным ключам составляет так называемый (полностью) инвертиро­ванный файл. Имея такой файл, легко найти записи с данными

атрибутами. Например, в нашем случае профессию с кодом 03 иодновременно год рождения 1950 имеет лишь работник с учет­ным номером 1. Если инвертированные списки не перекрываютвсе множество ключей, то говорят о частично инвертированном
файле.
6.2.2.
Документальные АИС. Основной задачей, решаемой вдокументальных АИС, является поиск документов по их содер­жанию. Если язы к запросов (как и язы к самих документов) яв­ляется обычным (неформализованным) человеческим языком
(возможно, с тем или иным профессиональным уклоном), тополное решение задачи поиска требует понимания системой
смысла запросов. Т акая задача тесно связана с проблемой созда­ния так называемого искусственного интеллекта и на сегодняш­ний день еще достаточно далека от полного решения.
Поэтому в практике документальных АИС употребляются уп­рощенные способы поиска. Простейшим из них является исполь­зование так называемых дескрипторов, под которыми понимается
некоторое фиксированное множество слов (в том числе специ­альных профессиональных терминов), которые, по мнению раз­работчика данной конкретной АИС, в наибольшей степени ха­рактеризуют содержание ее документального фонда. Например,если фонд составляют статьи по медицине, то в качестве де­скрипторов естественно использовать названия болезней, ле­карств и лечебных процедур, а такж е такие термины, как лече­ние, диагностика и др.
Наиболее прямолинейное решение задачи поиска при исполь­зовании фиксированного словаря дескрипторов заключается вследующем: АИС просматривает текст запроса (на обычном, не­формализованном язы ке) и фиксирует все встречающиеся в тек­сте дескрипторы. Например, в запросе «найти все статьи по ди­агностике рака» выделяю тся дескрипторы «диагностика» и «рак».
После этого система просматривает полные тексты всех докумен­тов (статей) и отбирает из них те, которые содержат оба выде­ленных дескриптора.
При реализации подобной процедуры нужно дополнительно
учесть то обстоятельство, что как в тексте запроса, так и в тек­сте документа дескрипторы могут трансформироваться (и притом
по-разному) в соответствии с требованиями грамматики исполь­зуемого язы ка. В приведенном примере дескриптор «рак» встре­чается в родительном падеж е с окончанием «а», а в тексте
статьи он может встретиться в других падежах. Поэтому иденти­фикация дескрипторов долж на проводиться с точностью до окон­чаний (а иногда и до суффиксов).
Следует иметь в виду такж е и то, что просмотр полных текстов документов требует много времени. Требования повышения
производительности АИС заставляют вместо просмотра самих
11*документов просматривать их поисковые образы. В качестве та­ковых в простейшем случае выступают просто перечни встреча­ющихся в документах дескрипторов. Поисковые образы составля­ются заранее либо вручную, либо автоматически (в результате
одноразового просмотра текстов специальной программой). Обыч­но эти образы хранятся о т д е л ь н о от текстов самих докумен­тов, имея в своем составе ссылку на адрес соответствующего до­кумента. Аналогичным образом для запроса составляется поиско­вый образ запроса. В процессе поиска происходит сравнение по­исковых образов документа и запроса на основе критерия смыс­лового соответствия, фиксированного для системы, либо указы ва­емого при формулировке запроса. При этом документ считается
релевантным запросу, если условие сравнения выполняется.
В качестве критерия смыслового соответствия может выступать,например, условие совпадения множеств дескрипторов поисковых
образов документа и запроса, включение множеств друг в друга,их пересечение и др. Поскольку наиболее дешевым способом хра­нения информации являю тся сегодня микрофиши, то для хранения
полных текстов документов используют обычно их. В памяти же
ЭВМ (внешней) хранятся лишь поисковые образы документов.
Специальные устройства автоматического поиска и копирова­ния в библиотеке микрофишей позволяют п о с л е нахождения
адреса документа в считанные секунды получить его так назы­ваемую твердую копию. Т акая копия представляет собой обыч­ный бумажный документ со шрифтом нормального (ориентиро­ванного на человека) размера.
Заметим, что документальная АИС с простыми дескрипторными поисковыми образами может рассматриваться как факто­графическая система с булевыми (да — нет) атрибутами, число
которых равно полному числу используемых дескрипторов. Одна­ко такое представление является экономичным лишь при отно­сительно небольшом числе дескрипторов.
Несовершенство описания содержания простой системой де­скрипторов заключается прежде всего в том, что в обычныхязы ках имеется много средств для выражения одного и того жесмысла. В результате может оказаться, например, что в статьепо диагностике той или иной болезни само слово «диагностика»не будет встречаться ни разу. Наоборот, наличие в тексте статьи
термина «диагностика» еще не означает, что статья посвящена
именно диагностике. Это может быть всего-навсего случайная ре­марка. Поэтому при поиске по дескрипторам могут быть извле­чены так называемые нерелевантные документы, т. е. не имею­щие отношения к рассматриваемому запросу, и, наоборот, неко­торые релевантные документы могут оказаться не найденными.
В первом случае говорят о неточности (информационном шуме)рассматриваемой АИС, во втором — о ее неполноте.

Применительно к каждому конкретному запросу определяют­ся (экспертным путем) два коэффициента. Коэффициент полно­ты представляет собой отношение числа выданных по запросу
релевантных документов к их общему числу в поисковом масси­ве. Коэффициент точности есть отношение релевантных (в дан­ной выдаче) документов к общему числу выданных (релевант­ных и нерелевантных) документов. Для многих запросов система
может характеризоваться как средними значениями этих коэффи­циентов, так и их минимальными (наихудшими) значениями.
Несовершенство простого язы ка дескрипторов проявляется
также и в том, что на нем в принципе не могут быть выражены
некоторые важные нюансы смысла. Например, наличие в доку­менте дескриптора «поставка» и дескрипторов — имен А и В по­ставщика и потребителя ничего не говорит о том, кто кому по­ставляет (А -> В или В -> А ). Для выражения подобных отноше­ний в множество дескрипторов должны быть включены служеб­ные слова (прежде всего предлоги) и построена формализован­ная грамматика, превращаю щая это множество в некоторый
формальный язык* В зависимости от мощности изобразительных
средств такого язы ка можно в той или иной степени улучшить
информационные характеристики АИС. Однако за такое улучше­ние приходится расплачиваться усложнением поиска, а следова­тельно, уменьшением производительности и увеличением стоимо­сти системы*6.3. Организация последовательных файлов
Последовательным файлом называется именованная линейно
упорядоченная последовательность записей одного и того же ти­
па. Именно в таком виде файл представляется прикладному про­граммисту. Однако в зависимости от вида используемой памяти
реальное физическое размещение в ней отдельных записей мо­жет сильно отличаться от подобного представления. При работес файлами возникает необходимость как последовательного
просмотра записей, так и прямой адресации записи по ееключу.
Последовательный просмотр записей проще всего обеспечива­ется соответствующим (последовательным) их размещением впамяти. Так поступают, как правило, при использовании ЗУ споследовательным доступом (магнитных лент). В случае ЗУ дру­гих типов записи часто размещаются в другом порядке, опреде­ляемом прежде всего удобствами их прямой адресации. Длявозможности перехода от очередной записи к следующей за нейпользуются встроенными в записях указателями. Наиболее быст­рый поиск следующей записи происходит, если в качестве указа­теля используется истинный физический адрес ее начала. Одна­ко при этом указатели становятся зависимыми от положения
файла в памяти. При его перемещениях указатели надо менять.
Более удобными в этом отношении являются относительные
адреса, показывающие положение в ЗУ следующих по порядку
записей по отношению к данным записям. Возможны и более
сложные способы формирования указателей, обеспечивающие
полную машинную независимость процедур последовательных
просмотров файлов.
Заметим, что при порче какого-либо указателя часть записей
может оказаться потерянной для программ последовательного
сканирования файлов. Обеспечение проверки и восстановления
искаженных или утерянных указателей возможно при введении
обратных указателей (от данной записи —- к предшествующей
ей). Такое восстановление делается специальными программами
обеспечения сохранности файлов.
П рямая адресация записей (по их ключам) выполняется раз­личными типами процедур. В случае ЗУ с последовательным до­ступом прямая адресация так или иначе требует последователь­ного сканирования файла со сравнением ключа каждой очеред­ной записи с заданным (для поиска) значением ключа. В ЗУдругих типов могут использоваться более быстрые процедуры
адресации. Если записи в ЗУ упорядочены по ключу, то можно
использовать, например, блочный метод. При нем сначала про­сматриваются записи в начале крупных блоков записей с целью
фиксации блока, в котором находится искомая запись. После
нахождения нужного блока поиск в нем можно организовать ли­бо последовательным сканированием, либо снова блочным спосо­бом (с менее крупными блоками). Подобный прием иерархиче­ского блочного поиска используется человеком при поиске нуж­ного слова в энциклопедии (сначала фиксируется том, затем
страница и, наконец, сканируется найденная страница).
Если в иерархическом блочном поиске на каждом шаге ис­пользуются лишь два блока (равных с точностью до единицы
длины), то приходим к наиболее быстрому (в классе блочных
методов) методу дихотомического (или двоичного) поиска. Приего применении количество просматриваемых записей при файле
из N записей имеет порядок 1о&2 N.
Индексный метод адресации использует специальную таблицу,называемую индексом, которая соотносит различным значениям
ключа адреса соответствующих записей или блоков таких запи­сей. Если таким образом идентифицируется лишь адрес блока,а внутри блока поиск делается последовательным сканировани­ем, то метод именуется индексно-последовательным.
Наконец, еще один способ использует те или иные алгоритмыдля преобразования ключа в адрес. Эти алгоритмы могут исполь-'зовать специальные свойства ключа. Например, если ключ при*нимает все значения от 1 до щ все записи имеют одинаковую
длину I ячеек ЗУ и помещаются в последовательные ячейки, на­чиная с р-й, то адрес А к записи с ключом к (1 < /с ^ га) вычис­ляется по формуле А к = р + 1(к — 1).
Заметим, что подобный способ можно в принципе применять *пе только к числовым, но и к буквенным ключам, предваритель­но заменив буквы их цифровыми кодами. Однако при этом мно­гим числовым значениям в диапазоне изменения ключа не будут
соответствовать никакие и с п о л ь з у е м ы е его значения. Поэто­му простые формулы адресации типа только что рассмотренной
дадут плохое заполнение памяти. Чтобы избежать такой ситуа­ции, используется специальный прием, называемый перемешива­нием (ЬазЫ п^). Его смысл заключается в подборе алгоритма,отображающего множество используемых значений ключа в мно­жество адресов с достаточно плотным заполнением памяти (по­рядка 8 0 % ). Перемешиванием этот прием называется потому,что используемые им алгоритмы располагают записи ЗУ в слу­чайном порядке (а не в порядке их расположения в ф айле).
К сожалению, подыскать достаточно простой алгоритм, даю­щий не только плотное, но и взаимно однозначное отображение
/ множества значений ключа в множество адресов, удается дале­ко не всегда. Поэтому может оказаться, что при перемешиваниир а з н ы м значениям ключа будет соответствовать о д и н и т о тж е адрес. Чтобы выйти из затруднения, при перемешивании оп­ределяется адрес целого блока ячеек — так называемого пакета,в котором могут размещаться несколько записей. Если какой-ли­бо пакет оказывается полностью заполненным, а в нем требуется
поместить новые записи, то эти записи направляются в первыйиз свободных пакетов переполнения, адреса которых известны
программе поиска.
Среди алгоритмов нахождения адреса А к пакета, в который
следует поместить запись со значением ключа, равным к, отме­тим один из наиболее простых и эффективных. Он основан навыборе числа т, не имеющего малых делителей (желательно
простого) и вместе с тем близкого к выбранному числу п паке­тов. Тогда адрес А к определяется как остаток от деления к на
т. Если I — число записей, размещаемых в одном пакете, а N —общее число записей в файле, то для хорошего заполнения па­мяти должно соблюдаться условие п1 « N.
При поиске записи по ключу к поиск прежде всего произво­дится в пакете, адрес А к которого вычисляется с помощью пра­вила: А к есть остаток от деления к на т. Если записи с задан­ным значением ключа там не окажется, то производится после­довательное сканирование пакетов переполнения. Подбирая дол­жным образом параметры л и / , можно добиться того, что приДостаточно хорошем заполнении памяти поиск большинства запи-сей потребует лишь одного сканирования (без обращения к па­кетам переполнения).
Рассмотрим еще некоторые особенности работы с файламипри размещении их в ЗУ различных типов.
6.3.1. Файлы на магнитных лентах. К ак уже отмечалось вы­ше, при адресации записей на магнитных лентах (МЛ) исполь­зуется последовательное сканирование файла. Обмен между МЛи оперативной памятью идет блоками (см. § 3.2), которые обыч­но содержат не одну, а несколько (иногда достаточно много)записей. Поиск записи в блоке, переданном в ОЗУ, может произ­водиться как последовательным сканированием, так и описанны­ми выше блочными методами. Актуализация файла на МЛ дела­ется обычно достаточно большими порциями. Изменения накап­ливаются в специальном актуализационном файле и в соответст­вии с утвержденным расписанием переносятся в основной, файл,который при этом фактически переписывается заново.
6.3.2. Файлы на магнитных дисках. Наиболее распространен­ной формой организации файлов на магнитных дисках (МД) яв­ляется индексно-последовательный метод. Если файл размещает­ся на одном цилиндре (см. п. 3.3.3), то одна из дорожек отдает­ся под индекс дорожек. Под область переполнения отводится
обычно такж е одна дорожка. На остальных дорожках организу­ются блоки записей, упорядоченные по ключу: например, на пер­вой дорожке помещаются записи со значениями ключа от 1 до120, на второй — от 120 до 300 и т. д. На дорожке записи разме­щаются в произвольном порядке.
В индексе дорожек хранятся граничные (минимальные илимаксимальные) значения ключа для каждой дорожки с указате­лями на соответствующие дорожки. Имеется также указатель наобласть переполнения.
Если файл подвержен частым изменениям, то целесообразнопри его начальном формировании не заполнять полностью до­рожки. Поэтому, когда файл пополняется новыми записями, спе­циальная программа, сверяясь с индексом, направляет его на со­ответствующую дорожку. И лишь при отсутствии свободных местна дорожке запись направляется в область переполнения. Приобращении к записи по ее ключу сначала идет ее поиск (после
обращения к индексу) на основной дорожке. В случае отсутст­вия требуемой записи поиск продолжается в области переполне­ния. Поскольку все операции выполняются в пределах одного
цилиндра, перемещения блока головок не требуется. Переключе­ние же дорожек (в одном цилиндре) осуществляется с помощью
электронных схем с большой скоростью.
Если файл не помещается на одном цилиндре, то он продол*ж ается (обычно на соседние цилиндры) в пределах данного
пакета дисков, который, будучи заполнен данными, носит обычно

наименование тома. Заполнение цилиндров идет (как и в случае
дорожек) в порядке роста (или убывания) ключа, по которому
упорядочен файл. По аналогии с цилиндром в томе создается
своя область переполнения и индекс цилиндров. Если файл вы­ходит за пределы одного тома, то создается индекс томов, а вслучае необходимости и еще одна дополнительная область пере­полнения.
Обращение к записям начинается со старшего индекса(с целью определения нужного тома) и продолжается далее поиерархии индексов, пока не будет найдена нуж ная дорожка. По­этому указатели старш их индексов адресуют следующие по стар­шинству индексы, и лишь самый младший индекс (индекс доро­жек) адресует дорожки с записями. В случае, когда нуж наязапись на основной дорожке не найдена, происходит переход ксканированию областей переполнения в возрастающем порядке
иерархии (сначала для цилиндра, затем для тома и, наконец, длямножества томов).
Заметим, что в случае магнитных барабанов и дисков с фик­сированными головками понятия тома и цилиндра совпадают.
Томом называют такж е и магнитную ленту, заполненную инфор­мацией.
А ктуализация файлов с индексно-последовательной организа­цией может производиться в истинном масштабе времени: приполучении очередной новой записи (или изменении имеющейся)соответствующие коррективы вносятся в файл немедленно (обыч­но после окончания очередного цикла работы прикладных про­грамм с файлом). При большой продолжительности времени су­ществования файла, как и в случае файлов на магнитных лен­тах, могут производиться его периодические перестройки. Т акаяперестройка (выполняемая с помощью специальных программ)затрагивает, разумеется, не только сам файл, но и соответствую­щие ему индексы.
6.3.3. Ф айлы в ЗУ с произвольным доступом. Если размер
файла позволяет разместить его в ЗУ с произвольным доступом,то он чащ е всего организуется таким образом, чтобы была воз­можность прямой адресации записей по тому или иному ключу.
Для этой цели может использоваться любой из описанных вышеспособов. А ктуализация таких файлов производится, как прави­ло, в истинном масштабе времени.
6.3.4. Файлы в ассоциативных ЗУ. Наиболее просто прямая
адресация записей по ключу производится в ассоциативной па­мяти, которая специально приспособлена для этой цели. Прииспользовании ассоциативных ЗУ нет необходимости прибегатьк каким-либо алгоритмам преобразования ключа в адрес. Адре­сация (по шинам признака) производится непосредственно кодом
значения ключа. До начала 80-х годов ассоциативная память дляопераций с файлами не получила сколько-нибудь широкого рас­пространения. Однако успехи микроэлектроники делают такую
перспективу в ближайшем будущем достаточно реальной.
6.4. О рганизация иерархических файлов
Вбольшинстве
приложений наряду с последовательными
файлами приходится иметь дело с иерархическими файлами,в которых записи связаны в древовидные структуры, описанные
в § 1.8. Заметим, что даже отдельная запись, как, например,кадровая анкета, может рассматриватьсякак иерархическая
структура. Д ля этого достаточно найти атрибут, состоящий изболее мелких элементов. В нашем случае таким атрибутом мо­жет служить дата рождения, разлагаю щ аяся на три элемента:год, месяц, число.
При размещении иерархического файла в ЗУ используется
несколько разных способов. Одним из наиболее старых является последовательное размещение файла в виде так называемой лево­списковой структуры. Ее смысл легко уяснить из следующего
примера. Пусть необходимо
разместить файл, изображен­ный на рис. 6.1. Тогда начи­нают с корня и идут по са­мой левой ветви, доходя, на­конец, до листа. Затем слева
направо проходят все листья,принадлежащ ие одному и то­му же узлу /?ь После этого
Рис. 6.1
переходят к узлуВ2 иперечисляют еголистья
и т. д. В результате получают последовательность записей

АВ.С.СгС^С^В.С.С,,Следующий способ — использование множественных встроен­ны х указателей, В нашем случае это означает, что в записи Лдолжны иметься указатели на записи В и В 2, В 3, в записи В 1 —на записи С1у С2, С3 и т. д. Помимо такой системы указателей напорожденные записи могут использоваться такж е указатели наисходные записи: в записях Си С2, С3 — на В и в записи В 1 — наЛ и т. д. Наконец, наибольшее удобство при работе с иерархи­ческими файлами достигается в случае дополнения систем у каза­телей двух описанных
типов указателям и на следую щ ую подоб­ную запись. В нашем случае это означает, что запись В 1 снаб­ж ается указателем на В 2, В 2 — на В 3,
— на С2, С2 — на С3,
С4 - на С5 и т. д.
В ряде случаев оказывается удобным вместо встроенных ука­зателей использовать специальные справочники связей. В таком

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

6.4

Сг

С2

С\

С4

Сь

С*

С*з

Вг

1

1

1

0

0

0

0

В2

0

0

0

1

1

0

0

В>

0

0

0

0

0

1

1

Помимо обычного способа задания связей в справочнике с по­мощью системы указателей иногда используются так называемые
битовые отображения (или битовые таблицы). Смысл этого спо­соба легко уяснить из конкретного представления битовым ото­бражением связей между записями В и С$ иерархического файла
(табл. 6.4), изображенного на рис. 6.1. Наличие связи от В { к С$характеризуется в таблице единицей на пересечении строкисо столбцом С}. В случае же отсутствия связи на соответствую­щем пересечении стоит нуль. Битовые таблицы позволяют вести
наиболее быстрый поиск связей в файле.
Заметим, что в случае необходимости прямого поиска записипо ее ключу используются те же самые механизмы, что и в слу­чае последовательных файлов. Что ж е касается механизмов, опи­сываемых в этом параграфе, то их назначение аналогично назна­чению последовательного сканирования записей в последователь­ных файлах.
6.5. Организация сетевых файлов
Иерархические файлы оказываю тся достаточными в большин­стве приложений. Однако существуют важные прилож ения, в ко­торых требуется обобщение этого понятия. Это имеет место, на­пример, при организации управления на основе так называемых
сетевых графиков (описываемых в последующих гл ав ах ). Обоб­щение, о котором идет речь, снимает ограничение о наличии укаждой записи не более одной исходной записи и допускает про­извольные связи между записями. Возникающие таким образом
структуры называются сетевыми файлами. Простейший пример
такого файла приведен на рис. 6.2.

При организации сетевых файлов используются уже описан­ные выше методы встроенных указателей, справочников и битовы х1отображений. Заметим также, что при введении избыточности засчет многократного повторения некоторых записей в базе данных
сетевыц структуры могут быть сведены к иерархическим. Такое
сведение для файла, ‘изображенного на рис. 6.2, показано на
рис. 6.3. В рассматриваемом
случае достаточно двукратного
повторения записи 3.
Заметим, что в сетевых фай­лах довольно часто приходится
именовать связь, а иногда и со­/провождать
дополнительным иданными, называемыми данны­ми пересечения двух записей,Рис. 6.2
Рис. 6.3
соединяемых этой связью.
Простейший пример подобных именованны х связей дают род­ственные связи между людьми (отец — сын, дядя — племянник
и т. п .). С подобной ситуацией приходится иметь дело не тольков сетевых, но и в некоторых иерархических файлах. Отношения
типа «женаты», «разведены» и др. могут сопровождаться даннььми о времени установления соответствующего отношения.
6.6. Язы ки для описания данных
Графическое представление связей в базе данных сохраняет
простоту и наглядность лишь в том случае, когда представляе­мые схемы несложны. В случае сложных схем стрелки могут
скорее запутать, чем помочь. Кроме того, при вводе описаний вЭВМ двумерное графическое представление все равно заменяется
одномерным (ввиду линейной структуры З У ). Поэтому для опи­сания данных создаются специальные языки. Простейшие из нихвстраиваются в алгоритмические языки. Примерами могут слу­жить средства для описания данных в алголе-60 и коболе, рас­смотренные в предыдущей главе. Заметим, что средствами кобо­ла описываются иерархические структуры данных.
В ряде программных систем для банков данных, получивших
достаточно широкое распространение (американская система
1М8, советская Ока и др.), используются лишь иерархические
структуры данных. Языки описания данных в этих системах
строятся по тому же принципу, что и раздел описания данных вязы ке кобол.
А мериканская ассоциация по банкам данных СоДа8у1 предло­жила другой язык, позволяющий описывать не только иерархи­ческие, но и многие сетевые структуры. Основой язы ка сойа8у1является понятие набора. Набор представляет собою именован-ное двухуровневое дерево. Его исходная запись (первый уровень) называется владельцем набора, а порожденные записи( в т о р о й у ровен ь)— членами этого набора.
При описании данных, разумеется, приводятся не сами запи­си, а их типы, называемые такж е схемами. Примером двухуров­невого набора может служить структура, в которой записью-влад е л ь ц е м является счет вкладчика сберкассы, а записями-члена­ми — операции с этим счетом. В схемах записей указываю тсяимена атрибутов, а такж е типы и форматы их значений (напри­мер, имя атрибута — фамилия, имя и отчество вкладчика, тип —а л ф а в и т н ы й , формат — 30 букв). Описание схемы набора вклю­чает в себя имя набора, после чего объявляется и описываетсяс н а ч а л а его владелец, а затем — члены.
Каждый из членов одного набора может быть объявлен вла­дельцем другого набора. П родолжая этот процесс, можно, как не­трудно видеть, описать любую иерархическую структуру. Кроме
того, не запрещаются и другие способы комбинаций наборов,благодаря чему создается возможность описывать непосредствен­но (без предварительного сведения их к иерархическим структу­рам) достаточно сложные сетевые структуры. Можно, например,создать два набора с одинаковыми членами, но разными владель­цами, и т. п. В целом процесс описания схем данных с помощью
наборов напоминает процесс оборки изделия из готовых конст­руктивных элементов.
Для указания способов вхож дения в базу данных использует­ся понятие так называемого сингулярного набора. Владельцем
каждого такого набора объявляется система (имеется в виду опе­рационная система ЭВМ, через которую прикладные программы
взаимодействуют с базой данны х). В отличие от других наборов,у которых схема набора и описываемый ею двухуровневый
иерархический файл различны между собой (в схеме даны имена
атрибутов, а в файле — их значения), для сингулярного набора
схема и есть сам файл.
Смысл введения сингулярного набора состоит в следующем.
Если прикладная программа хочет обратиться к какой-то записи,то для ее полного именования (с целью правильной адресации)следует использовать последовательность имен записей, начинаяо члена одного из сингулярных наборов, которые связаны между
собой отношением владелец — член. Например, если в базе дан­ных записана информация об операциях по счетам вкладчиковне в одной, а в нескольких сберкассах, то простейш ая схема
структуры данных этой базы в принципе задается двумя набора­ми: в первом владельцем является сберкасса, а членом — вклад­чик, во втором владелец — вкладчик, а член — операция. В язы ­ке сойа8у1 к этим наборам нужно добавить набор, владельцем ко­торого является система, а членом — сберкасса. Этим предопре­деляется тот факт, что прикладная программа, ж елая обратитьсяк какой-то конкретной записи о той или иной операции, должна
именовать это обращение последовательностью имен сберкассы,вкладчика и, наконец, операции. В противном случае обращение
может оказаться неоднозначным.
Описание базы в языке сойазу1 начинается с объявления име­ни схемы. Далее следует объявление имени области, за которым
следуют описания записей, принадлежащих этой области. В однуобласть проектировщик базы данных помещает те записи, кото­рые, по его мнению, будут часто использоваться совместно. Ис­пользуя подобное разбиение по областям, программы, управляю­щие размещением данных в памяти, выполняют это размещение
так, чтобы данные, принадлежащие к одной области, размещ а­лись в ЗУ близко друг к другу (в смысле времени перехода).
Описание записей делается средствами, близкими к коболу.
К каждому типу записи (или ее элементу) может быть при­писан так называемый замок секретности, в качестве которого
могут употребляться специальные кодовые слова — пароль илиспециальная прикладная программа (составляемая владельцехМ
информации). Такая программа определяет некоторую процеду­ру, разрешающую доступ к данным (например, серию вопросов,на которые программа, обращающаяся к данным, должна датьправильные ответы). При неправильных ответах (в простейшем
случае — при незнании пароля) доступ к данным будет закрыт.
Замками секретности могут снабжаться такж е и другие части
описаний: схемы, области, наборы (члены набора) и др.
В конце описания описываются наборы (связи между данны­м и). Для каждого набора указывается его имя и указание на ха­рактер размещения его членов (они могут помещаться в память
либо в случайном порядке, либо упорядочиваться по ключу, ука­зываемому в описании члена каждого типа). Далее указываетсяимя владельца набора, а затем — имена членов (с указаниемклю ча).
6.6.1.
Общие требования к языкам описания данных. Языкописания данных в общем случае должен позволять описывать
различные типы элементарных данных и их форматы, а также
именовать их. То же самое должно иметь место и в отношении
вводимых типов структур данных (запись, файл, область и др.).
Язык должен позволять специфицировать ключи и способ упоря­дочения данных по ключам. Он должен давать возможность оп­ределять любые отношения (связи) между записями (или други­ми группами данны х), именовать эти отношения и, если необхо­димо, описывать характеризующие их данные. Кроме того, могут
специфицироваться диапазоны возможных значений элементов
данных и длины файлов. Язык также должен иметь возможность
описывать замки секретности и другие средства защиты данных.

13 случае системных применений полезно также иметь средствадля описания режимов актуализации данны х.
Все указанные возможности (которыми не располагает цели­ком ни один из разработанных пока языков) относятся к описа­нию логических структур данных, т. е. тех структур, в виде ко­торы х данные представляются пользователю. Для описания фи­зических структур данных, т. е. их реального расположения* впамяти и методов доступа, нужны дополнительные средства, ко­торые (в неформализованном виде) частично уже приводились
выше в разделах, посвященных организации файлов.
6.7. Языки манипулирования данными (ЯМ Д)Такие языки должны давать прикладному программисту ма­шинно-независимые средства работы с базами данных. Они до­полняют обычные языки программирования новыми операторами
(макрокомандами). Частично подобная задача решается совре­менными операционными системами. Поэтому системы интерпре­тации языков манипулирования данными в банках данных мож­но (и должно) рассматривать как расширение операционной сис­темы. Хороший ЯМД должен иметь возможность использоватьдля общения с базой данных все стороны имеющихся средств
описания данных. Разработанные к настоящему времени ЯМД вполной мере этому условию не удовлетворяют.
Приведем в качестве примера список операторов ЯМД соДазу1, представляющий собой расширения средств манипулирова­ния данными, которые встроены в кобол.
Оператор ореп (открыть) открывает (т. е. делает доступным
прикладной программе) файл или набор, имя которого указы ва­ется после имени оператора. Поскольку открытие наборами фай­ла влечет за собой приведение в готовность соответствующего
механизма доступа к нему (описанного в предыдущей главе),а этот механизм может потребоваться другим программам, топосле исчерпания потребности в открытом файле (наборе) он за­крывается оператором с1озе (закры ть).
Оператор КпД (найти) находит в базе данных запись, имякоторой приводится в составе оператора, и делает ее текущей за­писью программы. Оператор §е1 (взять) передает в рабочую об­ласть программы значения указанных элементов поименованной
записи.
Оператор тоДИу (модифицировать) изменяет значение опре­деленных элементов данных поименованной записи. Новые зна­чения данпых берутся при этом из рабочей области программы.
Оператор т з е г ! (вставить) вставляет в указанный набор соДа8у1’а (в качестве нового члена) запись из рабочей области про­граммы. Обратный оператор гето у е (удалить) удаляет из набора

поименованный экземпляр записи. Оператор з1оге (заполнить)выполняет вставку в базу данных новой записи с организацией
всех необходимых связей. В частности, таким образом может
быть вставлена новая запись — владелец набора. Обратный опе­ратор Йе1е1е (устранить) удаляет из базы данных указанную
запись и уничтожает все ее связи.
Оператор кеер (удерживать) сохраняет настройку механизма
доступа к записи с целью убыстрения повторных обращений. Об­ратный оператор !гее (освободить) отменяет действие операто­ра кеер.
Наконец, с помощью оператора огйег (упорядочить) записив поименованном файле или наборе упорядочиваются по указан­ному ключу в убывающей или возрастающей последовательностиего значений.
6.8. Системы управления базами данных (С У БД )Так именуется специальное (системное) программное обеспе­чение, которое позволяет прикладным программам работать сбазами данных без знания конкретного способа размещения дан­ных в памяти ЭВМ, т. е. физической структуры данны х. Система
управления при этом пользуется тремя видами описаний дан­ных. С одной стороны — это описание логической структуры дан­ны х (сделанное прикладным программистом) в исполняемой
прикладной программе. С другой стороны — это описание логиче­ской структуры базы данны х, выполненное разработчиками этойбазы (системными аналитиками и программистами). Наконец,третий вид описания — это описание физической структуры базыданны х, также выполняемое системными аналитиками и програм­мистами — разработчиками базы данных.
Заметим, что наряду с системными программистами в разра­ботке баз данных должны, как правило, участвовать и системные
аналитики, в задачу которых входит анализ предполагаемых спо­собов использования проектируемых баз данных с целью опти­мизации их логических и физических структур.
Программы, осуществляющие управление базой данных, обес­печивают в общем случае два интерфейса. Прежде всего это ин­терфейс между логической и физической структурами базы дан­ных. Программы, обеспечивающие этот интерфейс, осуществляют
преобразование логических имен данных в физические адреса,интерпретируют операторы язы ка манипулирования данными иосуществляют фактический обмен информацией между базой
данных и рабочими областями прикладных программ. Последниедве операции выполняются программным обеспечением базыданных совместно с операционной системой ЭВМ, на которой
реализована эта база.

Второй интерфейс — это интерфейс между логической струн­ой данных, описанной в прикладной программе, и логической
структУР°й сам°й базы. В банках данных первого поколения этазадач а решалась весьма просто, поскольку прикладным програм­мистам разрешалось пользоваться лишь подсхемами схемы базыданных. В банках данных второго поколения прикладным про­гр ам м и стам разреш ается использовать произвольные, удобныедля них логические структуры данных (предварительно описавих на принятом в системе язы ке описания данны х). Разумеется,эти структуры могут использовать лишь те элементы данных, ко­торые содержатся в базе данных. Однако форматы записей исв язи между данными могут очень сильно отличаться от стандар­тов, принятых в базе данных.
Поскольку в этом случае прикладной программист в язы кеманипулирования данными использует не стандартные, а своисобственные представления о логических структурах данных,требуется еще один уровень интерпретации операторов НМД.
Эти задачи полностью лож атся на специальное программное
обеспечение соответствующего банка данных. Методы установле­ния интерфейса между различными логическими структурами
данных (составленных из одних и тех же элементов) требуют
привлечения новых средств. Один из наиболее перспективных
подходов к решению такой задачи дают так называемые реляци­онные структуры данны х, о которых будет рассказано ниже.
Помимо уж е описанных задач, на программное обеспечение(ПО) банков данных возлагаются и другие функции. Среди нихотметим прежде всего задачи обеспечения секретности и сохран­ности данных. ПО банка данных выполняет процедуры проверки
права на доступ к данным, объявленным по тем или иным при­чинам секретными. О сущности этих процедур уже говорилось
выше.
Заметим, что использование в качестве замков секретностипе просто паролей, а программ, составляемых самими пользова­телями, позволяет пользователям конструировать сколь угодно
хитрые замки. Например, поскольку операционная система ведет
Учет текущего времени (дат, часов, минут и секунд), то пользо­ватель может предусмотреть в программе систему паролей, ме­няющихся в зависимости от времени.
В целом, машинная (безбумаж ная) форма хранения инфор­мации может обеспечить гораздо более совершенные и надежные
системЬ1 обеспечения секретности, чем традиционная бумажная.
Помимо защиты от неавторизованного доступа к секретным
Данным важнейшее значение имеет защита любых (не обязаельно секретных) данных от уничтожения или искаж ения. По­л н а я опасность может быть вызвана самыми различными
Личинами.
^К. м . Глушков

Во-первых, это случайные или преднамеренные физически^<воздействия (в основном с помощью электромагнитных полей) наносители (магнитные ленты, диски и др.)» содержащие те илциные данные. Защ ита от таких воздействий предполагает специ­альные режимы хранения машинных носителей с данными, экра­нировку лентотек и дискотек и т. п. Кроме того, предусматрива­ется необходимый уровень контрольного дублирования данныхдля возможности их восстановления на основных (рабочих) но­сителях в случае их уничтожения или порчи.
Второй возможный источник искажений данных — программы
4пользователей, которые могут по ошибке записать новые данныене в ту область памяти, в которую нужно. Чтобы избежать по­добной опасности, вводится специальная система паролей, при­водящ аяся в действие т о л ь к о при записи. Не зная пароля,прикладная программа может читать (несекретные) данные, за­щищенные подобным паролем, но н е м о ж е т изменить их.
Процедуры защиты и восстановления данных приводятся вдействие и контролируются специальным лицом — администрато­ром банка данных, несущим всю полноту ответственности за со­хранность находящейся в банке информации и соблюдение
режима секретности. В число таких процедур, помимо ужеописанных, могут включаться процедуры периодической инвен­таризации содержимого банка с непременным соблюдением всехрежимных требований. Д ля инвентаризационных и восстанови­тельных процедур также создается специальное программное
обеспечение.
Важное место в программном обеспечении банков данных за­нимают, как правило, процедуры актуализации (обновления)данных. В составе ПО банка такие процедуры могут отсутство­вать лишь в том случае, когда используемая база дан­ных является простой суммой баз пользователей. При таком
положении задача актуализации базы данных возлагается наприкладные программы пользователей. В случае системных при­м енений значительная часть базы данных (если не вся целиком)обеспечивается не зависящей от прикладных программ системой
актуализации. Программное и административное обеспечение ак­туализации входит в этом случае в состав системы управления
данных и попадает под юрисдикцию ее администратора.
Под административным обеспечением здесь понимаются спе­циальные должностные инструкции для лиц, являющихся источ­никами актуализации, о порядке, сроках подачи и формах доку­ментирования актуализационной информации, а также о порядке
ввода этой информации в систему. При больших размерах базыданных назначаются администраторы отдельных ее частей, несу­щие ответственность за сохранность подведомственных им частей,а также за своевременную и правильную их актуализацию.

Собственно обработка данных из баз данных осущ ествляетсяп р и к л а д н ы м и программами, составляемыми н а алгоритмических
языках. При этом для обеспечения взаимодействия прикладных
программ и СУБД должны создаваться интерфейсы между соот­ветствующими системами программирования и СУБД, на кото­рые возлагаются функции по согласованию программной связи исвязи по данным. Такие интерфейсы чаще создаются для систем
программирования, ориентированных на обработку данных, та­ких, как кобол, РЬ-1 и др., и обычно включаются в СУБД.
6.9. Реляционные базы данных
Реляционный подход к описанию структур данных основыва­ется на использовании для их описания язы ка предикатов
(см. § 1-5), или, как в этом случае принято говорить, произволь­ных (/г-местных) отношений, причем отношений только междуэ л е м е н т а р н ы м и данными. Любое подобное отношение мо­жет быть представлено двумернойт аблицей (т а б л . 6.5).
Таблица
6. 5
На этой таблице представлено
асЪXотношение с именем А над элемен­тарными данными с именами а, Ь,
хг
ах
Ьг
Ч
с, ..., х . К аж дая строка таблицы
представляет собой набор значений
х2
ь2
. . .
#2
этих данных, находящихся между
собой в данном отношении (иными
Ьз
Хз
«3
Сз
словами, отношение А для них ис­••••тинно). Строки таблицы принято
•
•
«
•
•
называть кортежами, а столбцы —•••доменами (используется такж е тер­
к
сп
хп
«п
мин атрибут).
Есликоличество
столбцов (или, что то же самое —Длина кортежей) равно иг, то говорят, что отношение А имеет
степень ш или является га-местным (иг-арным) отношением.
Считая кортежи отдельными записями, легко представить за­данное отношение (таблицу) в виде простейшего последователь­ного файла. Организация таких файлов в ЭВМ была подробно
изложена в § 6.3.
Главная идея реляционного подхода состоит в том, чтобы
представлять произвольные структуры данных в виде с о в о к у п ­н о с т е й описанных таблиц (отнош ений). Процесс такого пред­ставления (точнее, переход от других форм представления к опи­санному) называется нормализацией, а само представление —Реляционной структурой. Еслл на отношения реляционной структУры не накладывается никаких ограничений, кроме отсутствия
одинаковых строк в таблице, то говорят, что она представлена впервой нормальной форме.
12 *гл. VI. БА ЗЫ ДАННЫХ

180

I/

I

Очевидным способом может быть проведена нормализация)любого иерархического файла, записями которого являю тся эле»ментарные данные. Для этого достаточно «размножить» узлыфайла так, как это показано на рис. 6.4.
После такого размножения фактически уж е получено пред»ставление файла в виде требуемой таблицы. Достаточно лишьименовать домены и присво­ить таблице имя соответст­вующего файла.
Если записи сами пред­ставляют собой иерархиче­ские структуры, то тот жесамый процесс «размноже­ния» узлов можно приме­Рис. 6.4
нить и к ним. В результате,как легко видеть, файл будет
приведен к виду плоской таблицы. В случае сетевых структуртем же самым приемом «размножения» узлов они приводятся
сначала к иерархической, а затем и к реляционной (табличной)форме.
Приведенные приемы нормализации очень просты, но приво­дят к большой избыточности в логическом представлении дан­ных, которая, однако, не означает избыточности хранения этихданных. Однако наибольшая неприятность при этом состоит втом, что актуализация таких отношений может привести к такназываемым аномалиям м анипулирования, когда происходит раз­рушение и/или потеря данных. Действительно, если в отноше­нии, приведенном в табл. 6.6, исключить выделенную запись, тоТаблица

Ф.И.О.

Образование

Иванов И. И.

высшее

6.6

Шифр законченного Адрес учебного заве­учебного заведения
дения

КГУ

г. Киевэто приведет к потере информации об адресе учебного заведения
КГУ, если в отношении нет больше записей с данным шифром
учебного заведения. Чтобы не допустить возникновения анома­лий, прибегают к декомпозиции отношений, о чем подробнее го­ворится ниже. Для рассмотренного примера отношение целесооб­разно разбить на два, как показано ниже (табл. 6.7 и 6.8).
К недостаткам можно отнести такж е и то, что результатом
нормализации является отношение высокой степени, в то время

,аК на практике могут представлять особый интерес и даже тре­бовать специального именования отношения меньшей степ ен и * ).
П оэтом у процесс нормализации обычно продолжается дальше внаправлении расщ епления сложных (многоместных) отношенийпа более простые.
Таблица

Ф.И.О.

Иванов И. И.

6.7

Шифр закон­Образова­ ченного учеб­ниеного заведе­ниявысшее

КГУТаблица

6. 8

Шифр учебного
заведения

Адрес учебно­го заведения

КГУ

г. Киев

6.9.1.
Алгебра отношений. Огромным преимуществом реляци­онного представления структур данных является то, что на мно­жестве отношений легко определяются различные операции, пре­вращающие это множество в алгебру отношений (реляционную
алгебру). Прежде всего можно, выделяя какую-либо часть доме­нов (столбцов) данного отношения, получить отношение мень­шей степени. При выполнении этой операции, называемой проек­цией;, предполагается, что в получающейся таблице устраняются
возможные повторения строк.
Операция объединения (соединения), обозначаемая звездоч­кой (*), позволяет «склеить» несколько отношений в одно ис­тинное тогда и только тогда, когда истинны все объединяемые
отношения. При этом помимо имен объединяемых отношений
должно быть указано, какие домены из этих отношений нужно
включить в результирующее отношение. Заметим, что при такой
операции число строк может уменьшиться и даже свестись к ну­
лю (что означает получение в результате пустого отнош ения).
Например, при объединении отношения А , задаваемого кортеж а­
ми (а,61с1), (а2Ь2с1), (а^Ъ^Сь), и отношения В с кортежами( Ь л ) , (&2С1) по всем трем доменам, которые мы обозначим че­рез а, Ъ, с, возникнет отношение С с единственным кортежем
(#2&2с,). Символически это может быть выражено формулой
А * В ( а , Ь , с ) = С.
Возможны и другие операции над отношениями. Если в состав программного обеспечения реляционной базы данных вклю­чить программы, которые автоматизируют выполнение этих опе­раций, то они могут осуществить отображение одной логической
структуры данных в другую. При этом, разумеется, мы предпо*) Этот недостаток иногда оборачивается и преимуществом, поскольку
сетШМи лпшь бинарными отношениями, используемыми иерархическими иевыми структурами, нельзя выразить всех требуемы х отношений.

лагаем, что обе структуры описаны в виде схем отношений (таб­лиц). Программы перевода производят заполнение таблиц второй
структуры, используя таблицы первой структуры. Тем самым автоматизируется интерфейс между
различными логическими
структурами данных, т. е. реш ается задача, о которой говори­лось в § 6.8.
На администрацию системы при этом ложится задача задания(в описании данных) формул реляционной алгебры, с помощью
которых из отношений логической структуры базы данных полу­чаются отношения структуры, используемой прикладным про­граммистом. Более высокий уровень автоматизации интерфейса
предполагает использование лишь описаний связываемых струк­тур данных на специальном язы ке описания данных, расширен­ном с помощью так называемого исчисления отношений (реляци­онного исчисления). В этом случае система сама определяет
пути реализации такого «описательного» отображения.
6.9.2. Исчисление отношений. В реляционном исчислении
главным средством описания новых отношений исходной струк­туры является символическое обозначение видаА ( х 4 у 1у
^2 г/г, . . . )• Оно означает отношение с именем А , полученное врезультате проекции кортежей, удовлетворяющих булевскому вы­ражению Я, на домены Хг, у*, где х { — имя отношения (исходной
структуры ), у { — имя домена из этого отношения. Различают
квантор существования 3 (сокращение для слова «существует»)и квантор всеобщности V (сокращение для слов «для всякого»).
Двоеточие (:) используется для сокращенного представления
слов «такой, что». В качестве примера задания отношения в язы ­ке реляционного исчисления рассмотрим выражение
А (К. ФИО, К. зарплата) : К. цех = 3 зарплата 150.
Оно задает таблицу (отношение) с именем А с двумя доменамииз таблицы (отношения) К (кадры ). Первый домен содержит фа­милии, имена и отчества рабочих, второй — размер месячной зар­платы. При этом в таблицу А включаются только рабочие треть­его цеха с размером зарплаты, большей, чем 150 рублей в месяц.
6.9.3. Вторая и третья нормальные формы. Если в отношении
какой-либо атрибут или группа атрибутов X п о л н о с т ь ю оп­ределяют другой атрибут (или группу атрибутов) У, то говорят,что У ф ункционально зависит от X . Слова «полностью определя­ют» означают, что любому значению X соответствует лишь о д ­н о, а не несколько значений У. Атрибут (или группа атрибутов)У называется полно зависимым от группы атрибутов X, если Уфункционально зависит только от всего множества !Х, а не от ка­кого-либо его собственного подмножества.
Назовем возможным ключом отношения атрибут или группу
атрибутов, значения которых однозначно идентифицируют строку

]
|

^
?

задающей отношение таблицы. Атрибут, входящий в состав како­го-либо возможного ключа, будем называть основным (пер­вичным)I.
Говорят, что отношение задано во второй нормальной форме,есл и оно находится в первой нормальной форме и каждый атри­бут, не являющийся основным, полно зависит от любого возмож­ного (вообще говоря, составного) ключа в этом отношении.
Если любой такой ключ является простым ключом и X не за­ви си т функционально от У или У — от 2, говорят о неполной
транзитивной зависимости 2 от X .
Преобразование второй нормальной формы в третью нормаль­ную форму состоит в расщ еплении отношения В на два отноше­ния Я и () с атрибутами X, У и У, 2 .
В качестве примера рассмотрим отношение Я с тремя атрибу­тами: номер работника, номер выполняемого им задания, расчет­ный срок выполнения задания. Здесь третий атрибут неполно
транзитивно зависит от первого атрибута, поскольку один и тотже работник может выполнять несколько заданий. Поэтому пос­ле приведения отношения Я к третьей нормальной форме пред­ставляющая его таблица распадется на две. В первой таблице
номеру работника соотносятся номера выполняемых им заданий,во второй — номеру задания соотносится расчетный срок его вы­полнения.
В программное обеспечение реляционных баз данных обычно
включаются программы для автоматической нормализации. Зн а­чит, при разработке базы данных достаточно задать все необхо­димые атрибуты и отношения между ними в произвольной фор­ме. ПО базы данных выполняет после этого приведение к треть­ей нормальной форме, обращаясь к разработчику лишь для сог­ласования имен, возникающих в процессе нормализации новы хотношений. Что же касается логической структуры базы данных,то наиболее удобно оказывается использовать для нее третью
нормальную форму.
6.9.4.
Проектирование реляционных баз данных. Проектирова­ние реляционных баз данных основывается на трех принципах:эквивалентных преобразований схемы базы данных, уничтожения
аномалий манипулирования данными и минимальной избыточно­сти данных. В общем случае при проектировании ставится зада­ча получения такой схемы базы данных, которая в определенном
смысле эквивалентна и лучше исходной.
В настоящее время известны два подхода к определению по­нятия эквивалентности схем баз данных: эквивалентность по за­висимостям и эквивалентность по данным. В определении экви ­валентности по зависимостям требуется, чтобы схемы содержали
°Дни и те же зависимости: если Г! и Г2 — множества зависимос­тей двух схем, то эти схемы эквивалентны по зависимостям, приГ* = Г ^, где Г+ — замыкание Г по зависимостям. В определе­нии эквивалентности по данным требуется, чтобы обе базы дан­ных содержали одни и те же данные: две базы данных со схема­ми 5*, 1 = 8, к и Т 5, / = 4, п, соответственно содержат одни и теж е данные, если 8 { * 8 2 * . . . * 8 к = Т ± * Т 2 * . . . * Тг, где * — опе­рация естественного соединения отношений.
К ак уже отмечалось, одной из целей проектирования реляци­онных баз данных является уничтожение аномалий манипулиро­вания данными. Существенный вклад в решение этой проблемы
дала теория нормализации баз данных. Введенная Коддом третья
нормальная форма позволила существенно уменьшить (но неисключить полностью) аномалии манипулирования. При этомважно отметить, что третья нормальная форма сохраняет экви­валентность как по зависимостям, так и по данным. В теории
нормализации рассмотрены и другие нормальные формы, в томчисле полностью исключающие аномалии манипулирования, од­нако, каж дая из них либо теряет эквивалентность по даннымили зависимостям, либо допускает аномалии.
К ак и в случае эквивалентности, можно дать два определения
избыточности: избыточность по зависимостям и избыточность поданным. Система отношений 5 с множеством зависимостей Гизбыточна

позависимостям

Г*, если

Система 5 избыточна по данным отношения 5 г-, если 8 1 * 8 2... *= 51! * 8 2 * . . . ** &+1 * . , . * $ « .
Известно,чтодлялюбого отношения существует такая третья нормальная форма,которая не избыточна по функциональным зависимостям.
В связи с двумя подходами к определению эквивалентных
преобразований схем баз данных существуют два метода проек­тирования схем : синтез и декомпозиция. Синтез предполагает со­хранение эквивалентности по зависимости, а декомпозиция — поданным. В алгоритмах синтеза достижима только третья нор­м альная форма, в то время как в алгоритмах декомпозиции —любые. При синтезе нельзя получить такие отношения, в кото­рых полностью снимались бы аномалии манипулирования, в товремя как при декомпозиции можно. В алгоритмах синтеза мож­но достичь минимальной избыточности по функциональным зави­симостям, а в алгоритмах декомпозиции — по данным.
Отсутствие единого решения проблемы проектирования реля­ционных баз данных в рассмотренной постановке приводит к не­обходимости на практике определять и отслеживать возможные
наруш ения в процессе ведения и преобразования баз данных сцелью их предотвращения.
6.9.5.
Преимущества и недостатки реляционных структур. По­мимо уже разобранного выше преимущества, заключающегося ввозможности для различных прикладных программ использовать
различные представления логической структуры данных, реляци­онные структуры обладают и рядом других преимуществ. Это,во-первых, п р о с т о т а понимания и работы с базой (особеннодля не очень опытных пользователей), поскольку большинство
людей имеет практику работы с двумерными таблицами. Следует
особо подчеркнуть, что графическое представление структур д ан ­ных выглядит ясным и наглядным лишь для структур малой
сложности: при большой сложности структур представление их ввиде таблиц обеспечивает большую ясность и точность.
Н аряду с простотой представления данных, работа с реляци­онными базами данных поддерживается язы ками манипулирова­ния высокого уровня (уровня исчислений), избавляющими поль­зователя от необходимости программирования поисковых про­цедур на базах данных. Для этого достаточно правильно указатьв запросе, ч т о необходимо найти, а не к а к найти. Этим дости­гается полное исключение необходимости прикладного програм­мирования поисковых процедур при работе с базами данных.
Во-вторых, реляционную базу проще развивать и дополнять.
Процедуры актуализации такж е, как правило, упрощаются.
В-третьих, упрощ ается контроль секретности — секретные части
отношений всегда могут быть выделены и изолированы от ос­тальных (несекретных) частей. В-четвертых, упрощается физи­ческая организация данны х и ее интерфейс с логической струк­турой, благодаря чему банк данных легче адаптируется к воз­можным изменениям его технической базы.
Пятое преимущество состоит в том, что в реляционной струк­туре е с т е с т в е н н ы м образом выражаю тся отношения любой
степени, а не только бинарные отношения, как это имеет местов случае иерархических и сетевых структур. Это преимущество
становится сразу ощутимым даж е в том случае, когда в структу­ре данных требуется выразить, например, множественное отно­шение, которое выделяет из списка людей отдельные семьи иликакие-либо другие коллективы. Его задание возможно и в иерар­хических (а тем более сетевых) структурах, однако оно требует
введения дополнительных записей и соответствующих ссылок.
Наконец, одно из важ нейш их преимуществ реляционных
структур состоит в том, что отношения являю тся строго опреде­ленным математическим понятием и поэтому могут служить объ­ектом строгой математической теории. Сюда же относится и ужеописанная выше возможность введения алгебраических операцийа ад отношениями, что придает реляционным структурам особую
гибкость и возможность относительно простой адаптации к са^ьщ^ разнообразным требованиям.
К числу недостатков реляционных структур можно отнести
большую сложность программного обеспечения логических ин­терфейсов, особенно при использовании реляционного исчисле­ния. Определенный недостаток состоит также и в некоторой из­быточности двумерных таблиц по сравнению с иерархическими иособенно сетевыми структурами. Эта избыточность наглядно ил­люстрируется на рис. 6.4. Правда, в процессе нормализации рас­щепление отношений может заметно уменьшить избыточность
представления и тем самым улучшить использование памяти.
6.10. Целостность баз данных
Выше (в § 6.8) мы уже познакомились с понятием сохранно­сти базы данных. Понятие целостности представляет собой даль­нейшее развитие этого понятия. Дело в том, что в системных
применениях база данных, как правило, описывает некоторый
реальный объект (или группу объектов). Иными словами, базыданных в этом случае выступают в качестве информационных
моделей реальных объектов. Объекты же в большинстве случаев
являю тся не статическими, а динамическими. Иными словами,они, а следовательно, и описывающие их данные меняются с те­чением времени. Отслеживание этих изменений в базе данных
составляет сущность процесса ее актуализации, о чем уже не разговорилось выше.
Если режимы актуализации различных частей базы данных невзаимоувязаны в единую систему, может возникнуть ситуация,когда данные, описывающие реальный объект, относятся к раз­ным моментам времени. Иногда в этом может не быть никакой
особой беды. Однако во многих случаях это ведет к серьезным
искажениям и даже к появлению информационных моделей объ­ектов, которые в действительности просто не могут существовать.
Простейший случай искажения возникает, например, при из­менении стажа, разряда или должности. Если соответствующее
изменение имело место и даж е внесено в кадровый файл, но невнесено в файл, которым пользуется бухгалтерия при начисле­нии зарплаты, то может возникнуть случай неправильного на­числения зарплаты.
Более сложный пример дает практика автоматизированного
проектирования в диалоговом режиме со многими проектантами,работающими на общей информационной базе. Предположим, чтов процессе проектирования, скажем завода, один проектант пере­местил в определенное место какую-то единицу оборудования,а другой проектант еще не убрал с этого места «свое» оборудо­вание. В этом случае база данных в соответствующий момент
времени внутренне противоречива, ибо представляет объект, ко­торый в действительности не может существовать.
В обоих приведенных примерах нарушается целостность базыданных. Не вдаваясь далее в детализацию этого понятия, заме­тим, что наиболее полное понятие целостности базы данных ос­новывается на глубоком, содержательном знании природы ото­бражаемого ею объекта. Поэтому в общем случае задача автома­тического контроля целостности базы данных и, тем более, вос­становления целостности после ее случайной утери связана сзадачей создания искусственного интеллекта и пока еще далекаот полного реш ения.
Сказанное, разумеется, не исключает наличия автоматическо­го контроля и исправления простых наруш ений целостности базданных того типа, который приведен в первом из двух рассмот­ренных выше примеров. В случае, когда для автоматического
контроля и исправления некоторых нарушений целостности базыданных используются элементы содержательного знания об опи­сываемом ею объекте, мы будем говорить о наличии элементов
«интеллектуальности» этой базы данных (точнее — об интеллек­туальности ее программного обеспечения).
6.11. Телекоммуникационные методы доступаПри работе с базами данных или с отдельными файлами судаленных терминалов, помимо традиционных задач организации
доступа, возникают многие дополнительные задачи. Необходимо
организовать управление передачей, приемом и анализом сооб­щений, циркулирующих между ЭВМ и терминалами, проверять
доступность и занятость не только терминалов, но и линий связи
и т. д. Программы, обеспечивающие телекоммуникационный дос­т у п организуют опрос терминалов о наличии у них сообщенийдля передачи и определяют порядок такой передачи. В случае
режима соперничества, когда готовые для передачи терминалы
борются за монопольное обладание линией связи, программы те­ледоступа следят за тем, чтобы не оставлять в течение скольконибудь длительного времени те или иные терминалы необслуженными.
Методы теледоступа могут использовать ЭВМ для коммута­ции сообщений, которыми обмениваются друг с другом удален­ные терминалы. Они обычно такж е дают возможность дистанци­онного управления вводом заданий (программы Д У В З), так чтос удаленных терминалов оказывается возможным реш ать боль­шие задачи, программы и данные для которых были заранее
предоставлены в распоряжение ЭВМ.
Методы теледоступа, обеспечиваемые стандартными ОС, пред­назначены в основном для позадачного подхода. При использова­нии баз данных дополнительно возникает задача установления
интерфейса между СУБД и программами, обеспечивающими те­ледоступ. Задача состоит в организации так называемых транзакЧий, т. е. единичных актов взаимодействия в системе «базаданных — передача данных» (БД — П Д ), выполняемых по запро­сам удаленных пользователей. Необходимость обрабатывать по­ток запросов в реальном масштабе времени отличает данную
ситуацию от обычной ситуации обеспечения интерфейса между
базой данных и прикладными программами, которые работают впакетном режиме (и потому могут спокойно ждать своей очере­ди ). Следует особо подчеркнуть, что различные транзакции мо­гут обслуживаться различными прикладными
программами,работой которых такж е приходится управлять в реальном мас­штабе времени.
Подобный системный теледоступ позволяет создавать инфор­мационно-справочные системы (с удаленными и близкими терми­налами), работающие в реальном масштабе времени, осуществ­лять быструю коммутацию сообщений между терминалами и др.
Д ля ЕС ЭВМ функции системного теледоступа осуществляет про­граммный комплекс Кама, работающий совместно с ОС ЕС иСУБД Ока.
6.12. Первичные и вторичные файлы в базах данныхПри выборе форм представления файлов в базах данных воз­никает естественное противоречие между простотой и скоростьюих актуализации, с одной стороны, и простотой и быстродействи­ем их интерфейса с прикладными программами — с другой. Про­стота актуализации файла требует, чтобы структура его записей
соответствовала принятым формам первичного учета. Например,записи в кадровом файле должны в свете этого требования
содержать все атрибуты, принятые в утвержденной форме лич­ного листка по учету кадров. В файле, описывающем оборудова­ние, записи должны отражать принятые формы паспорта наотдельные единицы оборудования и т. д. Подобные файлы*подогнанные к задачам первичного учета, мы будем называть
первичны м и файлами. При полноте учета первичные файлы со­ставляют полную информационную модель характеризуемогоими объекта.
В то же время различные прикладные программы могут поль­зоваться только небольшой частью данных, содержащихся в томили ином конкретном первичном файле. Например, программедля начисления зарплаты сотрудникам не нужно большинство
атрибутов кадровых анкет. То же самое можно сказать о про­грамме планирования сменных заданий (доводимых до каждого
рабочего) и др. Разумеется, СУБД могут снабж ать прикладные
программы данными непосредственно из первичных файлов. Яс­но, однако, что при этом каналы обмена ВЗУ с ОЗУ будут за­гружены передачей большого числа лишних данных, потребуется

неоправданный расход ячеек ОЗУ под буферы, снизится быстро­действие интерфейса.
Поэтому в базах данных наряду с первичными файлами часто
целесообразно иметь вторичные файлы, формы записей которых,а также способ упорядочения записей в файле ориентированы нена первичный учет, а на прикладные программы. Например, длязадач планирования сменных заданий записи вторичного кадро­вого массива должны кроме учетного номера и имени рабочего
содержать лишь данные о его квалификации и, возможно, стаже
работы. При этом порядок следования записей в файле должен
отражать принятую организационную структуру, т. е. распреде­ление рабочих по цехам, участкам, бригадам и пр. С таким фай­лом задачи планирования будут реш аться гораздо эффективнеекак с точки зрения скорости работы, так и с точки зрения расхо­дования ресурсов ЭВМ (прежде всего памяти и каналов).
Разумеется, вторичные файлы можно включить в базу дан­ных, полностью уравняв их в правах (т. е. в организации про­цесса актуализации и интерфейса с прикладными программами)с первичными файлами. Однако на практике в большинстве слу­чаев оказывается удобным поступать иным способом. Суть егосостоит в том, что первичные файлы объединяются в особую
(первичную) базу данных. А ктуализация этих файлов приводит­ся в соответствие с процедурами первичного учета в системе.
В идеале такая актуализация ведется в истинном масштабе вре­мени. Иными словами, изменения, поступающие с рабочих местпервичного учета, сразу же вносятся в соответствующие первич­ные файлы. На практике, разумеется, обычно довольствуются
компромиссным решением: поступающие изменения накаплива­ются в специальных буферах и по мере их наполнения разносят­ся но соответствующим (первичным) файлам. Процесс «разнесе­ния» поступивших изменений по файлам может регулироваться
либо жестко (в установленное время), либо в зависимости отчисла поступивших изменений. Система актуализации первичной
базы данных обеспечивает тем самым главное ее назначение —быть информационным портретом (с той или иной разумной за­держкой во времени) характеризуемого этой базой реального
объекта.
Вторичные файлы могут существовать в виде статических
(постоянно существующих) и динамических (возникающих лишьна нужный период времени) файлов. Процесс актуализации ста­тических файлов и создания динамических файлов управляетсяне динамикой процессов первичного учета, а динамикой выхода«на счет» (исполнение) работающих с этими файлами приклад­ных программ. При этом используется то обстоятельство, что вбольшинстве системных применений ЭВМ выход на счет при­кладных программ представляет собой не полностью случайны й,а в определенной мере детерминированный, упорядоченный про­цесс. Закономерности этого процесса используются специализиро­ванной частью операционной системы, расширяющей систему уп­равления заданиями в обычных ОС (рассчитанных на случайный
лоток заданий). Результатом такого использования является
заблаговременная подготовка (актуализация или создание зано­во) к нужному моменту необходимых вторичных файлов.
Подобная специализированная ОС занимает промежуточное по­ложение между обычными (пакетными) ОС и ОС реального
времени.
Тем самым вторичные файлы как бы выделяются в особую
(вторичную) базу данных, отличающуюся от первичной базыданных прежде всего способом организации процесса актуализа­ц и и * ). При этом первичные файлы используются в качестве свое­образных эталонов, по которым выверяются (или создаются за­ново) вторичные файлы. Так что программы актуализации вто­р и ч н о й базы данных могут строиться с помощью СУБД первич­ной базы, дополненной в случае необходимости программами
«урезания» и переупорядочивания (сортировки). Ситуация здесьв какой-то мере напоминает организацию измерений на произ­водстве: непосредственно для измерений употребляются рабочие
приборы и инструменты, для контроля и настройки которых слу­ж ит специальная эталонная аппаратура.
Способ ведения вторичных файлов (статический или динами­ческий) определяется конкретными обстоятельствами. Часто
обновляемые, но редко используемые вторичные файлы целесооб­разно иметь в динамическом виде, редко же обновляемые, ночасто используемые — в статическом виде. Выбор одного из этихспособов осуществляется обычно в результате моделирования
проектируемой системы обработки данных.
Кроме того, в процессе работы системы, использующей банкданных, можно осуществлять те или иные процедуры статистиче­ских оценок частоты обращения к различным элементам данных.
Полученные оценки используются для оперативной перестройки
вторичной базы данных с целью повышения эффективности сис­темы, использующей эту базу.
П рактика работы современных информационно-справочных
систем и систем оперативной обработки данных (в частности,автоматизированных систем управления) показывает, что обычно
более 80% запросов относятся менее чем к 20% данпых, находя­щихся в первичной базе данных.

*) Создапие динамических файлов можпо трактовать как частный случай актуализации, когда актуализируемый файл в начале процесса актуа­лизации был пуст.

До сих пор рассматривались базы данных и СУБД, размещ ае­мые и работающие на одной ЭВМ. Такие базы данных и С У БДназывают локальны м и. Практически все чаще возникает необхо­димость в решении задач с распределенны ми базами данны х/
т# е. таких задач, для которых данные размещены по месту свое­го возникновения или наиболее эффективного использования, наЭВМ, удаленных друг от друга на большие расстояния. При этомпредполагается, что на каждой из ЭВМ данные управляю тсясвоими локальными СУБД.
Основу для реш ения таких задач составляют сети передачи
данных, позволяющие соединять по каналам связи различные
ЭВМ, обеспечивать техническую и программную поддержку об­мена данными между ними, образуя тем самым сеть ЭВМ.
Обработка распределенных данных обычно строится так, чтофункции по выдаче в сеть транзакций на обмен данными с ло­кализацией нужной ЭВМ сети и локальных баз данных возлага­ются на обрабатывающую программу. Это, с одной стороны, зна­чительно усложняет процесс прикладного программирования и,с другой — делает прикладные программы зависимыми от локали­зации данных в сети. С целью устранения этих недостатков приработе с распределенными данными создаются системы управле­ния распределенными базами данны х (С У Р Б Д ). Они строятся
таким образом, чтобы максимально обеспечить соблюдение прин­ципа независимости прикладных программ от локализации дан­ных в сети, при котором логическое представление распределен­ной базы данных и манипулирование данными для прикладной
программы ничем не отличаются от соответствующего локально­го варианта базы. Такие С У РБД оснащены каталогами, в кото­рых хранятся структура сети, информация о локальных С У РБ Ди базах данных, а такж е программным обеспечением, которое наоснове этой информации управляет взаимодействием прикладной
программы и конкретной локальной базой данных сети.
Сложность управления распределенными базами данных вамногом зависит от того, поддерживаются ли они однотипными
локальными СУ РБД, взаимодействие между которыми осущест­вляется просто, так как для этого используется один общий
язык. Если же, например, часть распределенной базы данных на­ходится под управлением С У РБД сетевого типа, а другая — подУправлением С У РБД иерархического типа, то вопрос управления
такой распределенной базой существенно услож няется. Один изпутей разреш ения возникающей сложности состоит в использова­нии некоторой промежуточной интерфейсной С У РБД (чаще всег° реляционного типа), через которую на основе соответствую­щих отображений обеспечивается интерфейс между СУ РБД.

7.1. Многомашинные комплексыВ практике применения ЭВМ их нередко приходится объеди­нять в комплексы, состоящие из двух и более машин. Необходи­мость в таком объединении вызывается различными обстоятель­ствами. П режде всего, довольно часто в случае особенно ответ­ственных применений (как правило, в режиме реального времени)приходится иметь так называемый горячий резерв. В этом случае
чаще всего используются две совершенно идентичные ЭВМ, под­ключаемые через коммутатор к обслуживаемому объекту. В ка­честве последнего может выступать любой производственный
объект, управляемый при помощи ЭВМ, терминальная сеть опе­ративной информационной службы и др.
В обе ЭВМ вводится необходимый набор программ и баз дан­ных. О перативная информация, поступающая от объекта в слу­чае, когда она не меняет баз данных (например, запросы в ин­формационную систему), направляется для обработки в первую
ЭВМ. Вторая маш ина находится во включенном («горячем») со­стоянии, но оперативную информацию не обрабатывает. В случае
выхода из строя первой ЭВМ поток оперативной информации не­медленно направляется на вторую машину так, чтобы обслужи­ваемый объект не почувствовал произведенной подмены.
Для большинства ЭВМ помимо остановок, вызванных выходом
машины из строя, предусматриваются периодические п л а н о в ы еостановки для профилактических осмотров. Чтобы и в этом слу­чае всегда иметь готовый к действию горячий резерв, в комплекс
может быть включено не две, а три (и даже более) машины. Приэтом комплекс остается однородным, т. е. составленным из одина­ковых машин.
Необходимость в неоднородных вычислительных комплексах
может возникнуть в системах, соединяющих в себе несколько раз­личных функций. Например, одна или несколько машин могут
выполнять в системе функции приема и передачи информациив линии связи, тогда как другие машины будут специализировать-с я на обработке поступающей информации. В так называемых
интегрированных системах управления сложными объектами не­обходимость создания многомашинных комплексов обуславлива­ется логикой самого управления. Отдельные ЭВМ, управляя от­дельными составными частями объекта, нуж даю тся в обмене
данными и координации уп р а влен и я в интересах всего объекта вделом. К ак правило, в этом случае приходится строить неоднород­ные комплексы, хотя иногда они могут свестись к однородному
случаю.
Наконец, необходимость в комплексировании ЭВМ может воз­никнуть не только в режиме реального времени, но и в режиме
пакетной обработки при реш ении особо слож ных задач. Здесь
такж е могут использоваться как однородные, так и неоднородные
комплексы.
Во всех случаях при создании многомашинных комплексов
приходится реш ать две основные задачи. Во-первых, это органи­зация информационного обмена между отдельными ЭВМ, входя­щими в комплекс, а такж е меж ду ними и внешним миром. Вторая
задача — это организация уп р а влен и я ком плексом.
Имеется несколько способов организации информационного
обмена меж ду отдельными ЭВМ в комплексе. Наиболее радикаль­ный из них — организация общих информационных шин, к кото­рым подсоединяются центральные и канальные процессоры, а так­же блоки ОЗУ всех машин с возможностью организации произ­вольных связей между любой парой этих устройств. П ри этом мыполучаем уж е фактически не комплекс, а мультипроцессорную
вычислительную систему. Р еализац ия подобного объединения ЭВМтребует глубоких изменений их операционных систем. Кроме того,в случае неоднородного комплекса необходим^ достаточно слож­ные согласователи интерфейсов, позволяющие центральным про­цессорам ЭВМ одних типов обращ аться к ОЗУ и каналам ЭВМдругих типов. В случае объединения ЭВМ, сильно разнящ ихсядруг от друга, работа по столь глубокому их объединению срав­нима по сложности с разработкой новой вычислительной системыи потому практически малооправданна.
Более практичным является такой способ, когда ЭВМ объеди­няются через специально подсоединяемый к ним всем блок (илинесколько блоков) ОЗУ. Такой блок служит как бы своеобразным
«почтовым ящиком», куда каж дая ЭВМ может засылать сообще­н и е, адресованное любой другой ЭВМ, и считывать сообщения,адресованные ей самой.
В этом случае такж е требуется определенная доделка опера­ционных систем и организация интерфейсов с «почтовым ящ и ­ком». Однако объем этих доделок существенно меньше, чем в пре­дыдущем случае, благодаря чему указанны й метод чаще находит
применение на практике.
В. М. Глушков

Еще более простым является установление связей между ЭВ\{через их канальные процессоры. Особенно просто эта задача реша­ется при объединении двух ЭВМ. Для этого достаточно соединить
какой-либо канал одной машины с каким-либо каналом другой:через так называемый адаптер канал — канал. Такое соединение
дает возможность для каждой ЭВМ обращаться к ОЗУ другой ЭВМтем же способом, каким они осуществляют обращение к своим
собственным устройствам внешней памяти. Этот способ требуе-гминимальных доделок операционных систем объединяемых машини потому применяется на практике наиболее часто. При объеди­нении таким способом нескольких машин выделенные каналы под­соединяются к специальному групповому коммутатору, способно­му играть роль адаптера канал — канал между любой парой под­соединенных к нему ЭВМ.
Заметим, что каналы даже двух совершенно одинаковых ЭВМнельзя подсоединить друг к другу непосредственно (без адаптера)*Это происходит в силу несимметричности канала: интерфейс ка­нала с ОЗУ отличен от его интерфейса с подключаемыми к немупериферийными устройствами. Задача адаптера канал — каналкак раз и состоит в том, чтобы обращение к «чужому» ОЗУ вы­глядело бы как обращение к «своему» периферийному устройству*Имея в своем распоряжении достаточное число каналов и да­же простые (парные) адаптеры канал — канал (а тем более —групповые коммутаторы), можно в принципе организовать сколь
угодно сложные структуры связей между отдельными ЭВМ комп­лекса при любом их числе.
Простейшая из таких структур — так называемая кольцевая
структура — изображена на рис. 7.1. Для ее организации у каж­дой из объединяемых ЭВМ под межмашинные связи выделяетсяпо два канала. Круж ками на этой структуре обозначены адаптеры
канал — канал. Их число в этом случае равно числу объединяе­мых ЭВМ.
1
ЭВМ

/7 .

2

о

ч ЭВМ

-ЧгО*~• *•ЭВМ-------------------------------------------------- О ----------------------------------------------------

Рис. 7.1

По организации управления вычислительным процессом много­машинные комплексы делятся на комплексы с централизованными децентрализованным управлением . В первом случае в комплексе
выделяется специальная машина-диспетчер, управляю щ ая работой
всех других машин. Во втором случае все машины комплекса рав­ноправны и могут организовывать свою совместную работу иоДправлением любой из них. Централизованное управление пес к о л ь к о легче в реализации, но обладает меньшей надежностью,поскольку выход из строя машины-диспетчера наруш ает работув с е г о комплекса. При децентрализованном управлении, обеспечи­вающем высокую надежность и живучесть комплекса, помимоб о л ь ш е й сложности реализации надо считаться еще с дополнитель­н ы м и потерями времени и ресурсов (прежде всего памяти) навзаимные согласования и многочисленные передачи управления.
Возможно и комбинирование двух указанных управлений засчет введения нескольких управляющих машин, обязанности
между которыми перераспределяются (в результате возможных
леисправностей) на основе принципа децентрализованного управ­ления.
Сигналы управления могут передаваться в комплексах по темже самым каналам, по которым передается информация. В слу­чае, когда у объединяемых машин имеются шины прямого управ­ления (см. гл. V ), как это имеет место в случае ЕС ЭВМ, управ­ляющие сигналы выгоднее подавать именно по ним. Помимо боль­шого быстродействия, подобный способ передачи хорош такж етем, что УУ центрального процессора воспринимает сигналы,пришедшие по шинам прямого управления, как особый вид пре­рываний. Поэтому составляя соответствующим образом программы
обработки этих прерываний, разработчик комплекса может осу­ществить различные взаимодействия объединяемых в комплексЭВМ без дополнительной переделки их ОС. При децентрализован­ном управлении подобные программы составляют основу распре­деленной операционной системы комплекса (ОСК). При центра­лизованном управлении программы ОСК встраиваются в основ­ном в машину-диспетчер.
Комплексирование ЭВМ, о котором шла речь в настоящем
параграфе, предполагает, что объединяемые ЭВМ находятся нанебольшом расстоянии друг от друга (в одном В Ц ). Комплексы
ЭВМ, находящихся на большом расстоянии друг от друга, назы ­ваются сетями ЭВМ. Объединение ЭВМ в сети производится с по­мощью систем электрической связи .
7.2. Системы связиДля организации связи между удаленными друг от друга ЭВМопределяющее значение имеет то обстоятельство, что принятая
Форма (как потенциальная, так и импульсная) представления сиг­налов внутри современных ЭВМ предполагает большую крутизнуих фронтов.
В результате даже при невысоких темпах посылки сигналов
* их естественном (машинном) виде линия связи должна иметь
13*весьма широкую полосу пропускания. При прямых связях (безспециальной аппаратуры усиления и восстановления сигналов)для передачи машинных сигналов требуются дорогостоящие высо­кочастотные кабели. Но даже и по таким кабелям дальность на­дежной прямой связи между ЭВМ не превышает обычно несколь­ких сотен метров.
Применяя на приемном конце специальную аппаратуру рас­познавания, усиления и восстановления формы сигналов, удается
увеличить длину прямых связей до нескольких километров. На­пример, в ЭВМ СМ1 и СМ2 с помощью специальных расширите­лей интерфейса можно удалять периферийпые устройства на рас­стояние до 3 км. Разработанная в Институте кибернетики АНУССР аппаратура Барс позволяет увеличить это расстояние до
20 км и притом без специальных высокочастотных кабелей.
Д ля передачи машинных сигналов на большие расстояния
сегодня принято использовать существующие сети телеграфнойи телефонной связи. Для обеспечения передачи информации поотносительно узкополосным каналам в этих сетях используется
несколько иная (отличная от принятых в ЭВМ) форма представ­ления сигналов. Поэтому при использовании этих каналов дляпередачи машинных сигналов необходимо на их концах (подсое­диненных к ЭВМ или терминалам) ставить специальные устрой­ства для преобразования формы сигналов — так называемые моде­мы, Для понимания возникающих здесь проблем необходимо хотябы в общих чертах познакомиться с принципами организации
современной системы местной и дальней телефонной связи.
Прежде всего оказывается, что для достаточно качественной
передачи обычной человеческой речи достаточна полоса пропуска­ния в 3 кГц (точнее, диапазон частот от 300 до 3400 Гц). Этотстандарт частоты получил наименование тональной частоты. З а­метим, что он выбран на основании частотных характеристик око­нечных устройств (органов речи и слуха человека), а не какихлибо характеристик самой сети связи.
Сигналы, которые передаются в местных сетях при телефон­ных разговорах, представляют собой простые электрические копии
соответствующих звуковых сигналов. Телефонные аппараты под­соединяются к местным телефонным станциям с помощью такназываемых абонентских ли н и й , представляемых физически в ви­де жил многожильного кабеля. Телефонная станция осуществляет
коммутацию абонентских линий, позволяя подсоединить каждогоиз подключенных к ней абонентов к любому другому. Кроме того,определенная часть коммутируемых кабельных линий предназна­чается для связи данной телефонной станции с другими телефон­ными станциями, составляющими местную телефонную сеть.
Д ля дальней (междугородной) телефонной связи подобная ор­ганизация использования кабелей, при которой одна физическая

линия (пара жил кабеля) используется для передачи одного теле­фонного разговора, была бы слишком неэкономной. Поэтому длятакой связи каж дая физическая линия используется для одновре­менной передачи многих телефонных разговоров. С этой цельюс помощью специальной каналообразующ ей аппаратуры тональ­ной частотой модулируются высокочастотные сигналы, разнесен­ные по спектру частот так, чтобы возникающие в результате по­лосы частот не перекрывали друг друга. Если все эти сигналы
передаются по одной физической линии одновременно, то с по­мощью специальных фильтров на приемном конце их можно раз­делить и демодулировать в исходную тональную частоту. Д лянадежного разделения несущие частоты должны быть разнесеныпо спектру с промежутками, несколько превышающими тональную
частоту: в качестве такого промеж утка у нас выбрана частота
в 4 кГц.
В зависимости от полосы пропускания той или иной физиче­ской линии связи употребляются различные степени уплотнения
исходного канала (линии связи ), т. е. количество виртуальных
телефонных каналов, каж дый из которых может быть использован
(одновременно с другими виртуальными каналам и) для передачи
телефонного разговора по данной физической линии.
П ринятый у нас стандарт предусматривает несколько групп
уплотнения. П ервичная 12-канальная группа охватывает полосу
частот от 60 до 108 кГц. П ять первичных групп составляют вто­ричную 60-канальную группу с полосой частот от 312 до 552 кГц.
Пять таких групп объединяются в 300-канальную группу с поло­сой частот от 812 до 2044 кГц и т. д.
Поскольку для телеграфной связи требуется меньш ая полоса
пропускания (в принятом у нас стандарте 140 Г ц ), то для улуч­шения использования линии при передаче телеграфных сообщений
используется аппаратура вторичного уплот нения, образующая водном телефонном канале 12 телеграфных каналов.
В качестве физических линий при дальней связи кроме уста­ревшей проводной связи используются высокочастотные кабель­ные линии и радиосвязь в УКВ, дециметровом и сантиметровом
диапазонах*). Поскольку в этих диапазонах устойчивая связь
обеспечивается лиш ь в пределах прямой видимости (без огибания
радиоволнами поверхности Зем ли), то линия связи представляет
собой ряд вышек с прямопередающими в виде направленных зер­кал антеннами, каж дая из которых снабж ается аппаратурой длянеобходимого усиления передаваемых сигналов (так называемые
Радиорелейные линии связи ).

*) Приведенные выше частоты относятся к кабельным линиям. В слуае радиосвязи несущ ие частоты значительно выше.

Такими же усилительными станциями (расположенными наопределенном расстоянии друг от друга) снабжаются проводныеи кабельные линии дальней связи.
В последние годы все большее распространение получают
космические (спутниковые) линии связи, использующие в качест­ве ретрансляционной станции высоколетящие спутники. Особенно
удобны так называемые стационарные спутники, период обраще­ния которых вокруг Земли равен периоду обращения Земли вокруг
своей оси, а плоскость орбиты совпадает с плоскостью экватора.
Такой спутник будет все время висеть (на высоте порядка
40 000 км) над одной и той же точкой земного экватора, не меняя
своего положения относительно поверхности Земли.
Спутниковая связь обладает двумя большими преимущества­ми: уменьшает количество промежуточных ретрансляционных
станций (которые устанавливаются на спутниках) до одной илив крайнем случае до двух; в спутниковой связи передаваемый
сигнал только малую часть расстояния проходит в непосредствен­ной близости к поверхности Земли, в зоне, насыщенной радиопо­мехами от гроз и разнообразных технических источников (напри­мер, систем заж игания автомобильных двигателей). Благодаря
этому надежность спутниковой связи оказывается более высокойпо сравнению с другими системами связи.
Как уже отмечалось выше, стандарты, принятые для телефон­ных каналов, определяются частотными характеристиками око­нечных устройств (органов речи и слуха человека). То же самое
имеет место и в случае телеграфной связи. Казалось бы, естест­венно, чтобы при организации связи между ЭВМ использовалсятот же самый принцип. Тогда задача системы связи сводилась бык созданию временных каналов соответствующей пропускной спо­собности так, чтобы соединяемые ЭВМ могли обмениваться ин­формацией в естественном для них темпе. Создание сети ЭВМ,удаленных друг от друга на любое расстояние, в принципе, неотличалось бы от создания комплекса ЭВМ, расположенных впределах прямых связей. Отличиями были бы только необходи­мость модулирования и демодулирования несущих частот систе­мы дальней связи машинными сигналами и дополнительные
требования по борьбе с возникающими в линиях связи по­мехами.
В действительности развитие сетей ЭВМ пошло по линии впи­сывания системы передачи данных между машинами в уже су­ществующие стандарты сетей телефонной и телеграфной связи.
Поэтому возникает необходимость создания многоуровневой си­стемы преобразования потоков данных, которыми обмениваютсяЭВМ через сеть связи, и соответствующих систем стандартов
представления информации и управления для каждого уровня —так называемых протоколов.

Задачей самого нижнего, физического уровня является пре­образование стандартных однобитовых сигналов (каж дый из ко­торых принимает лишь 2 значения: 0 и 1) в различимые друг отдруга сигналы тональной частоты, а такж е обратное преобразо­вание. Эта задача реш ается специальными устройствами модуля­ции и демодуляции — модемами. Простейшие модемы с частотнойм одуляцией используют для представления 0 и 1 две различные
частоты в пределах полосы 300 — 3400 Гц. Другие типы модемов
используют амплитудную или фазовую м одуляцию . Возможны
такж е и более сложные комбинированные системы.
Скорость передачи дискретной информации с помощью моде­мов разных типов определяется прежде всего используемым кан а­лом связи. Различают низкоскоростные модемы, использующие
телеграфные каналы ; среднескоростные, использующие стандарт­ные телефонные каналы, и высокоскоростные, использующие пер­вичные 12-канальные группы. Внутри этих групп установлены
стандарты скорости передачи, зависящие от уровня помех в кана­лах связи и используемого метода модуляции.
Д ля низкоскоростной передачи приняты стандарты 50, 100 и
200 бод (бит/с), для среднескоростной — 600, 1200, 1800, 2400,
3000, 3600 и 4800 бод, для высокоскоростной — 19,6, 48 Кбод и
выше. Д ля каналов с малым уровнем помех в принципе возможно
дополнительное увеличение скорости передачи данных, приходя­щейся на 1 Гц полосы канала. Так, для низкош умящего стандарт­ного телефонного канала (с полосой 3,1 кГц) удается передавать
данные со скоростью 9600 бит/с.
7.3. Сети ЭВМДля понимания специфики преобразований информации в се­тях ЭВМ необходимо хотя бы в общих чертах познакомиться спринципами организации (или, как принято говорить, архитекту­рой) подобных сетей. Пример сети достаточно простой архитекту­ры изображен на рис. 7.2.
В узлах этой сети, изображенных квадратами, расположенытак называемые коммутационные процессоры (К П ), соединяемые
между собой (через модемы) линиями дальней связи. Д ля подсое­динения терминалов обычно используются коммутационные про­цессоры специального вида, называемые терминальными (ТКГ1).
Кружками изображены ЭВМ, а треугольниками — терминалы
пользователей. Они подсоединяются либо прямо к ЭВМ, либок территориально близким к ним узлам сети (через модемы или,в пределах прямых связей, без них) с помощью местных абонент­ских линий или (с модемами) через местную телефонную сеть(включая автоматическую междугородную связь). В местах, гдесосредоточено много терминалов, могут устанавливаться местные
концентраторы и мультиплексоры передачи данных. Они позво­ляют использовать одну линию связи для обслуживания несколь­ких низкоскоростных терминалов одновременно.
Коммутационные процессоры могут осуществлять функцию
коммутации каналов между абонентами сети (ЭВМ и термина­лам и), организуя на всевремя работы друг с другом двух або­нентов постоянный канал связи
между ними. Однако подобный
способ связи приводит обычнок весьма неэкономному исполь­зованию каналов связи. Делов том, что во время сеанса свя­зи между отдельными сообще­ниями, которыми обменивают­ся абоненты, могут быть проме­жутки ожидания, когда канал,будучи занятым, не исполь­зуется для фактической пере­дачи информации. Даж е принепрерывной передаче информации канал может оказаться
недогруженным ввиду малой скорости передачи (что, как прави­ло, имеет место при передаче данных с терминалов).
Д ля более плотной загрузки каналов употребляется другой
способ коммутации — коммутация сообщений. Суть его состоит втом, что сообщения, которыми обмениваются абоненты сети, могут
временно запоминаться в узлах сети (в памяти коммутационных
процессоров) и передаваться от узла к узлу наиболее экономным
способом (как правило, на большой скорости), обеспечивая гораз­до лучшее (по сравнению со способом коммутации каналов) ис­пользование дорогостоящих каналов дальней связи.
Однако коммутация произвольных сообщений имеет и своюотрицательную сторону: при варьировании длины сообщений в ши­роких пределах память КП приходится рассчитывать на самые
длинные из них. В результате происходит неоправданное увеличе­ние стоимости памяти КП при малом среднем коэффициенте еезагрузки.
Д ля устранения этого недостатка в современных сетях упо­требляется разбивка сообщений на пакеты стандартной длины,передаваемые независимо друг от друга и зачастую даже по раз­личным путям. Тем самым в задачу управления сетью добавляется
управление разборкой на пакеты и сборкой из пакетов сообще­ний, оптимизация маршрутов передачи пакетов в зависимости отзагрузки каналов и узлов сети и многое другое. Коммутаторы сооб­щений и пакетов выступают в качестве концентраторов информа­ции и потому в некоторых сетях носят наименование концентра­т о р о в . Задерж ки,вызываемые ими, как правило, весьма малы (непревышают долей секунды ).
7.3.1.
Сетевые протоколы. Опишем теперь основные задачи
управления и стандарты представления информации (протоколы)на различных уровнях, начиная с нижнего — так называемого
линейного протокола или протокола уп равления информационным
каналом (сокращенно И К У П ). Этот протокол может реализоваться
частично в КП, но большей частью в специальных устройствах,называемых адаптерами ли н и и передачи данны х (Л П Д ).
Главная задача И КУ П — обеспечение достоверности передачи
информации даже при недостаточно надежном канале связи. Этазадача может быть реш ена многими способами. Один из них —использование кодов с обнаружением и исправлением ошибок,описанных в предыдущей главе. Напомним, что простейший из та­ких кодов — код с контролем по четности, который используетсяи в ЭВМ. Смысл его состоит в том, что к каждой посылке из за­данного числа к бит (в ЭВМ обычно к = 8) добавляется еще одиндвоичный сигнал (0 или 1) так, чтобы общее число единиц в по­лученной (к + 1)-битовой посылке было четным. Задачами И КУ Пв этом случае будут контроль по четности на приемном конце ипосылка ответного сигнала на предыдущий конец о результате
этой проверки. Если проверка подтвердила правильность приема,то передается следующая посылка, если нет — то осущ ествляется
повторная передача неправильно принятой посылки. Именно такосуществляется контроль правильности передачи информации
между центральной и периферийной частями ЭВМ. В сетях связи,однако, такой простой способ не годится. Причина заклю чаетсяв том, что для сетей связи наиболее характерны так назы ваемы егрупповые пом ехи, которые искажаю т несколько бит посылки
подряд.
Д ля обнаружения, а тем более для исправления ошибок в слу­чае групповых помех обычные способы потребовали бы неоправ­данно большого числа контрольных разрядов. Поэтому способ
контроля видоизменяется в соответствии с идеей, показанной на
рис. 7.3. Здесь на рисунке К разр.— контрольные разряды , позво­ляющие обнаружить и исправлять ошибки в каж дой строке. Од­нако передача происходит не по строкам, а по столбцам.
Если длина групповой помехи не превосходит одного столбца,а вероятность появления помехи достаточно мала, то даж е приналичии такой помехи, как правило, будет искаж аться не более
одного разряда в каждой строке, что позволяет на приемном
конце не только обнаруживать, но и исправлять ошибки при от­носительно небольшом числе контрольных разрядов.
Необходимость изменения порядка следования сигналов в по­сылках до и после передачи сильно усложняет И КУ П . Поэтому®а практике обычно употребляют более простой способ контроля

правильности передачи посылки: передав посылку от пункта Ав пункт В , немедленно передают ее обратно в пункт Л, где срав­нивают с запомненной копией переданной посылки. В случае
совпадения в В передается сигнал правильности передачи и на­чинается передача следующей посылки. В противном случае про­цесс передачи посылки повторяется столько раз, сколько потре­буется для правильной передачи. Оптимальная длина посылки

1Г :
Г
•Г
,

1)

г

1)

;'

1

т 1

(>

;

'

<>

Г

'

Г

1

>

;

'

1

'

ь

>

.

С

V

\ * Р азР'

1> О
1

'

'
:

'

;

<

} О

1

Рис. 7.3(обеспечивающая максимум пропускной способности канала) зави­сит от вероятности искажения передаваемых сигналов. Если этавероятность равна 10“2 (весьма ненадежный канал), то оптималь­ная длина посылки равна 5 бит. При этом за счет необходимости
многократных повторений передачи посылок истинная пропускная
способность канала составит всего 1,4% номинальной. При вероят­ности ошибок 10-4 (канал средней надежности) оптимальная дли­на посылки равна 57 бит, а коэффициент использования канала
поднимается примерно до 50% . Д ля каналов высокой надежности
(вероятность ошибки 10~6) соответствующие величины будут рав­ны 610 бит и 75% . Важно подчеркнуть, что правильно построен­ный ИКУП (и соответствующая аппаратура передачи данных)позволяет осуществлять надежную передачу данных (хотя и спониженной скоростью) по сколь угодно плохим каналам.
Еще один вопрос, связанный с ИКУП: как отличать одну по­сылку от другой? Один из широко употребляющихся способовреш ения этой проблемы заключается в использовании специальных
маркеров в начале и в конце каждой посылки. Например, марке­ром может служить комбинация 01111110, т. е. группа из 6 после­довательных единиц, обрамленных нулями. Чтобы исключить воз­можность случайного появления такой комбинации в теле посыл­ки, аппаратура передачи данных производит автоматическую
вставку (на передающем конце) и исключение (на приемном кон■це) символа 0 в теле посылки после каждой очередной группы из
5 символов. Тем самым исключается возможность появления
‘внутри посылки группы из 6 единиц подряд.
Следующий за ИКУП уровень управления передачей информа­ции в сетях ЭВМ регламентируется протоколом пакетной комму-тации и соответствующим математическим обеспечением, встроен­ным в КП сети. Протокол во-первых определяет длину пакета
(обычно от 256 до 4096 бит), а такж е содержание и формат за­г о л о в к а пакета, в который обязательно включаются адреса або­нентов, обменивающихся пакетом. А нализируя эти заголовки, КГ!
определяют, какому из узлов сети (соседнему с данным) пере­слать пакет.
При этом часть операционной системы сети (ОСС), встроенная
в К11, реш ает задачу оптимизации движения пакетов от узла кузлу так, чтобы обеспечить наилучшую загрузку линий связи исамих КП, с одной стороны, и наиболее быструю передачу пакетов
конечным адресатам — с другой. Д ля точного реш ения этой задачи
необходим специальный управляю щ ий процессор, непрерывно по­лучающий информацию о состоянии всех узлов сети и всех линий
связи.
Такое централизованное управление загруж ает сеть передачей
большого количества служебной информации и предъявляет по­вышенные требования к надежности управляющего процессора.
Поэтому на практике используют обычно упрощенные приемы
приближенной локальной оптимизации, когда решение о направ­лении пересылки вырабатывается КП, в котором этот пакет на­ходится, на основании информации о непосредственно прилегаю ­щих к нему участках сети. Возможен такж е вариант распределен­ного управления, при котором каж ды й КП действует на основе
информации о состоянии всей сети, оптимизируя потоки переда­ваемой им информации. В последние годы этот вариант (в чистом
виде или в комбинации с централизованным управлением) полу­чает все большее распространение.
Еще одна задача, реш аемая на этом уровне,— задача иден­тификации и аннулирования дублей пакетов, которые могут воз­никнуть в результате множественности маршрутов и возможности
зацикливания. С этой целью в заголовке пакета должен содер­ж аться идентификатор породившего его сообщения. Обычно онсоставляется из сетевого номера пославшей сообщение ЭВМ, номе­ра процесса в этой ЭВМ (а иногда и кода пользователя), иници­ировавшего данное сообщение, и, наконец, идентификатора самого
сообщения в этом процессе.
Следующий уровень управления имеет дело с задачей сборкии разборки сообщений на отдельные пакеты с формированиеми последующим уничтожением соответствующих заголовков па­кетов. Этот уровень управления регламентируется так называемым
транспортным протоколом и реализуется частью ОСС, называемой
обычно процессом абонентских сообщений (ПАС) или транспорт­ной станцией. В первых сетях ПАС встраивался обычно в КП,В более поздних сетях (например, во французской Сус1айез) ПАСреализуется в абонентских ЭВМ (сокращенно АВМ) и управля­ется их операционными системами как одна из задач пользова­теля. Такое решение обеспечивает большую стандартность сети иее независимость от типа подключаемых к ней АВМ. При под­соединении АВМ к КП стандартная часть интерфейса реализует­ся в КП, а нестандартная — в самой АВМ и специальных сетевых
адаптерах.
Еще более высокий уровень управления (реализующийся вАВМ) организует потоки сообщений от процесса к процессу,включая задачу формирования заголовков сообщений на передаю­щем конце и их упорядочение в правильный поток (упорядочен-'ный по номерам сообщений). На этом уровне реализуются макро­команды создания и уничтожения так называемых виртуальных
каналов, связывающих между собой удаленные (реализованныев удаленных друг от друга АВМ) процессы. Соответствующая
часть ОСС (встраиваемая в АВМ) носит название супервизора
виртуальных каналов.
Дальнейш ая детализация управления решается на уровне про­токола процесс — процесс и соответствующей части ОСС (встроен­ной в А В М )— так называемым сетевым супервизором процессов.
На этом уровне организуется связь портов, в качестве которых
могут выступать некоторый массив данных (ф ай л), устройство
ввода-вывода, некоторая точка программы, генерирующая илипотребляющая сообщения. Это примеры индивидуальны х портов
(принадлежащих определенному процессу). Примером коллектив­ны х портов могут служить входы в системы управления базами
данных (СУБД) с последующим уточнением адресата (файла илизаписи) при помощи средств самих СУБД.
Каждый порт снабжается сетевым идентификатором, состоя­щим из сетевого идентификатора АВМ, идентификатора пользова­теля этой АВМ, идентификатора, присвоенного процессу, и, нако­нец, идентификатора порта в процессе. Порт снабжается необхо­димой буферной памятью для размещения формируемых и прини­маемых сообщений. Н а уровне протокола процесс — процесс реа­лизуются макрокоманды (связанные с ОС А ВМ ): открыть порт,закрыть порт, соединить (разъединить) порт с портом (создатьили аннулировать соответствующий виртуальный кан ал).
Еще более высоким уровнем ОСС и соответствующих протоко­лов является уровень управления решением задач на сети. Основ­ная реш аемая здесь задача — создание виртуальных сетей процес­сов (в различных АВМ ). Обычно этот уровень реализуется в видесовокупности мониторов сетевых абонентских служб, каждыйиз которых предназначен для исполнения сетью той или инойопределенной функции (например, справочно-информационной):Т акие мониторы могут встраиваться в АВМ, либо в специальные
информационно-диспетчерские ЭВМ (И Д ВМ ). В таких ИДВМможет, например, реализоваться функция безадресного обращения^любого пользователя сети к распределенному (между абонентскием и ЭВМ) банку данных через соответствующую систему сетевых
каталогов. В задачу мониторов абонентских служб входит плани­рование и управление процессом реш ения задач на сети с учетомз а г р у з к и отдельных АВМ и линий связи. Все эти функции регла­ментируются специальными протоколами.
Помимо уже перечисленных протоколов в ряде действующихс е т е й используются и другие протоколы, как, например, специаль­ные протоколы для пересылки файлов, для удаленного ввода зада­ний, протокол виртуального терминала и др. Отметим такж е, чтоОСС ведет постоянный учет объема услуг, предоставляемых еюкаждому пользователю, и начисляет соответственно суммы коплате.
В связи с развитием многих сетей национального и даже м еж ­национального масш таба с различными системами протоколов воз­никает специальная задача организации межсетевого взаимодей­ствия. Д ля решения этой задачи обычно устанавливается общий
(межсетевой) протокол процесс — процесс, фиксируются единый
формат сообщений и единый язы к управления обменом сообще­ниями. Д ля преобразования подобных межсетевых сообщений вформаты, принятые в отдельных сетях, некоторые узлы (К П )объединяемых сетей соединяются друг с другом линиями связи
через специальные устройства (обычно универсальные ЭВМ садаптерами), называемые ш люзами.
7.4. Вычислительные центры коллективного пользования
Простейшим примером сети ЭВМ служит так назы ваем ая тер­м инальная сеть. Она состоит из единственного вычислительного
центра (ВЦ) и сети удаленных терминалов. Вычислительный
центр в этом случае принято назы вать ВЦ коллективного пользо­вания (В Ц К П ). Он оснащается, как правило, достаточно мощнойЭВМ или, чаще всего, многомашинным вычислительным комп­лексом. Удаленные терминалы, как правило, объединяются в груп­пы, каж дая из которых замы кается на терминальный концентра­тор. В простейшем случае он представляет собой обычный мульти­плексор передачи данных. В более сложных случаях в качестве
концентратора может использоваться мини-ЭВМ, способная не"только накапливать сообщения от терминалов для лучшей загруз­ки каналов связи, но и выполнять более сложные функции, свя­занные с обработкой информации. Сложность самих терминалов
такж е может варьироваться в значительных пределах. Н аряду спростейшими терминалами в виде телетайпов или алфавитно-циф­ровых дисплеев, в терминальную сеть могут вклю чаться более
сложные терминалы — АРМ, т. е. автоматизированные рабочие
места (см. § 4.10) и абонентские пункты (см. § 4.9). К ак уж еотмечалось в гл. IV, под такими названиями могут фигурировать
целые комплексы вводно-выводных устройств, включая устройства
внешней памяти на магнитных лентах и магнитных дисках. Д ляподключения подобных комплексов с высокопроизводительными
устройствами требуются высокоскоростные каналы и широкопо­лосные модемы.
Заметим, что термин «ВЦ коллективного пользования» не очень
удачен в том смысле, что подчеркивает лишь одну, так сказать^юридическую сторону этого понятия, а не т е х н о л о г и ю предо­ставления услуг (удаленный доступ). А суть сегодня состоит
именно в этой технологии, поскольку коллективное пользованиеЭВМ и ВЦ в чисто юридическом плане практиковалось с самых
первых шагов развития вычислительной техники. Современные ж еВЦКП — это центры с удаленным доступом, работающие либо ирежиме разделения времени, либо в режиме удаленного управле­ния заданиями. Самое важное при> этом, что ВЦ предоставляет
свои услуги пользователям, находящимся на своих р а б о ч и х :м е с т а х , а не приходящим за их получением в ВЦ. Именно та­кое понимание термина ВЦКП укоренилось в сегодняшней нашей:практике, и именно так мы его будем понимать в дальнейшем.
7.5. Распределенные банки данных
Первоначально сети ЭВМ предоставляли своим пользователям
только вычислительные услуги (точнее, услуги по обработке ин­формации). Базы данных (в случае необходимости) создавались
самими пользователями для своего индивидуального потребления.
Однако существует огромное число данных, которые интересуют
большое число самых различных пользователей. Это, прежде все­го, научно-техническая информация, различного рода справочные
данные и др. Поэтому многие сети ЭВМ стали предоставлять
своим абонентам (пользователям) доступ не только к вычисли­тельным мощностям, но и к накапливаемой в сетях (в безбумаж­ной форме) разнообразной информации.
Во многих случаях эта информация не концентрируется в ка­
кой-либо одной ЭВМ, а распределена по всем ЭВМ сети. Доступв подобные распределенные базы (банки) данных осуществляется
специальными сетевыми СУБД. Такие СУБД дают возможность
безадресного обращения к данным, подобно тому как это делаетсяв случае обычных баз данных, реализованных на одной ЭВМ (см.
гл. V I). Зная логическую структуру базы данных сети, абонент
формирует запрос к ней (на языке манипулирования данны ми),не заботясь о том, в каких именно ЭВМ сети расположены интере­сующие его данные.
Интерфейс с реальной физической структурой данных осу­ществляется СУБД автоматически через систему машинных ка-«галогов. При этом не исключено, что окончательный ответ назапрос абонента будет сформирован из данных, хранящ ихся нев одной, а в нескольких (удаленных друг от друга) ЭВМ сети.
Формирование ответа предусматривает таким образом многократяы е обмены между различными ЭВМ и автоматическое редактиро­вание текста ответа. Вся эта работа производится под управлелием операционнох! системы сети.
7.6. Некоторые иностранные сети ЭВМ
7.6.1. Сеть АКРА. Одной из первых действующих сетей ЭВМбыла сеть АКРА в США, созданная вначале в интересах управ­ления перспективными исследованиями при Министерстве обороны
США (Айуапсей КезеагсЬ Рго^ес! А ^епсу). П ервая очередь этойсети была введена в эксплуатацию в 1969 г. В настоящее времяона охватила всю территорию США, а через английский и нор­вежский узлы связи в сеть включены многие ВЦ и пользователив Европе. В сети АКРА помимо обычных коммутационных про­цессоров (К П ), обеспечивающих соединение между собой ВЦ сети,используются такж е так называемые терминальные коммутацион­ны е процессоры (Т К П ). Через каж дый из них к сети могут под­ключаться до 63 терминалов и несколько ЭВМ.
В сети используются машины многих типов почти всех круп­ных американских фирм, в том числе специализированная мульти­процессорная система ИИас IV, выполняющ ая на векторно-ма­тричных операциях порядка 200 млн. оп/с. Сообщения длиной
до 8064 бит передаются из ЭВМ в КП, где разбиваются на пакеты
длиной 1008 бит. В операционной системе сети имеются средства
автоматического переформатирования не только элементарных
данных, но и файлов при обменах между ЭВМ с разными форма­тами данных. Встроенный в терминальный КГ1 протокол вирту­ального терминала преобразует сообщения из кодов терминалов вединый код сети АКРА, осуществляет связь терминалов с удален­ными ЭВМ и управляет работой терминалов. Операционная си­стема сети имеет средства для автоматического распределения ре­сурсов сети, в частности — в закреплении терминалов за отдель­ными ЭВМ. Различные ЭВМ сети специализируются при этом наопределенных видах обслуживания, что повышает эффективностьих использования.
Во второй половине 70-х годов в сеть включаются модульные
многопроцессорные КП, допускающие подключение 20 ЭВМ и не­сколько сотен терминалов. Они способны использовать наземныеи спутниковые линии связи до 1,3 Мбит/с.
7.6.2. Сеть СуЬегпеС Сеть принадлежит американской фирме
СДС (Контрол Д ей та). Она, как и сеть АКРА, начала функцио­нировать в 1969 г. Ее пользователями являю тся 350 крупнейш ихкорпораций США и многие крупные научно-исследовательские
центры. Особенностью сети является широкое использование ком*мутации каналов вместо коммутации сообщений. Это удеш евляет
сеть и при наличии широкополосных коммутаторов обеспечивает
абонентов приемлемым временем коммутации. В сети использу­ются сообщения длиной в 8192 бит.
7.6.3.
Сеть фирмы Сепега1 Е1ес1пс. Сеть начала работать в
1969 г., а через 10 лет выросла в одну из крупнейших мировых
сетей. Ее главной опорой является мощный ВЦ в Кливленде(СШ А ). Свыше 50000 пользователей сети в 250 городах США,Европы и Японии поключаются к ней с помощью местной теле­фонной сети через удаленные концентраторы. Удаленные концент­раторы построены на базе мини ЭВМ. Каждый из них подключен
к 48 телефонным каналам местной телефонной сети. Использова­ние дополнительно мультиплексоров с разделением по частоте
позволяет подсоединять к каждому концентратору одновременнодо ста медленных терминалов (типа телетайпа), либо до 10 видео­терминалов.
Кроме того, имеются еще 16 центральных концентраторов, трииз которых расположены в Европе. Они соединены с опорным ВЦв Кливленде через трансатлантические кабели и через стационар­ный спутник связи. Все компоненты сети дублированы, что обеспе­чивает высокую надежность ее работы. В центральных концентра­торах хранятся таблицы, указывающие, в каких ЭВМ сети поль­зователи хранят свои программы и данные. Эти таблицы исполь­зуются для определения маршрутов передачи сообщений в начале
каждого сеанса связи. Периодически (не реже, чем раз в месяц)вычислительные мощности перераспределяются между абонентами
сети с тем, чтобы обеспечить равномерную загрузку. Поскольку
зона действия сети охватывает много часовых поясов, она имеет
выровненный суточный график нагрузки.
Заметим, что развитая сеть автоматической междугородной
телефонной связи существенно видоизменяет понятие местной те­лефонной сети. Поэтому удаленные концентраторы сети не обя­зательно ставятся в каждом городе, в котором есть абоненты сети.
Абоненты могут использовать концентраторы в любых близлежа­щих городах с достаточно дешевыми тарифами междугородной
связи. Для обеспечения равномерной нагрузки сетей связи в си­стеме могут осуществляться периодические перезакрепления або­нентов за различными концентраторами. При использовании мест­ной (не сетевой) междугородной связи абонент оплачивает ееуслуги помимо оплаты услуг собственно сети (за передачу инфор­мации от удаленного концентратора в ВЦ и обратно, а также заобработку и хранение информации).
К ак и во всякой коммерческой сети, в сети Сенега1 Е1ес1псвеличина оплаты услуг сети насчитывается каждому абоненту

операционной системой сети автоматически. Сеть предоставляет
широкий круг услуг как в режиме разделения времени (системы
МАНК I, II и I I I ) , так и в удаленной пакетной обработке. Кроме*того, в последние годы непрерывно растет возможность предостав­ления сетью различного рода информационных услуг, т. е. доступук базам данных коллективного пользования.
7.6.4.
Сеть Сус1айе8. Н ациональная ф ранцузская сеть Сус1ас1е&(Сиклад) обслуживает широкий круг пользователей, в числе ко­торых важное место занимают правительственные органы (какцентральные, так и м естны е). П ервая очередь сети в составе 1&ЭВМ и 5 узлов коммутации вступила в строй в 1974 г. Сеть строи­лась на основе усоверш енствования технических решений, приня­тых в АКРА. Усовершенствования направлены на обеспечение'большей гибкости и простоты подсоединения к сети ЭВМ и тер­миналов.
С этой целью в каждой ЭВМ функции транспортной станции(ТС) осущ ествляются программой, работающей как программа
пользователя. Благодаря этому переделки в операционных систе­мах, подключаемых к сети ЭВМ, сводятся к минимуму. Транспорт­ные станции реализуют прежде всего протокол связи ЭВМ сгсетью пакетной коммутации (С П К ), т. е. транспортный протокол.
Кроме того, на них возлагается задача реализации части протоко­лов более высоких уровней, обеспечивающих связь между различ­ными ЭВМ.
В любой ЭВМ может располагаться несколько транспортных
станций, каж дая из которых управляет одной или несколькими
линиями связи, соединяющими эту ЭВМ с узлами сети пакетной
коммутации. Встраивая в ЭВМ специальную транзитную транс­портную станцию, можно подсоединить ее к узлам различных
сетей и использовать ее в качестве шлюза (см. п. 7.3.1), соединяю­щего эти сети. Таким образом, в сети С ускйез облегчена и задача
объединения с другими сетями, причем объединение с сетью
АКРА и английской национальной сетью О ТЬ уж е осуществлено.
Еще одно удобство сети Сус1айе8 — гибкая система адреса­ции, позволяющая практически неограниченно наращ ивать сеть.
Вся сеть разбита на районы. Полный адрес любой транспортной
станции (ТС) состоит из номера района и ее локального номера
внутри этого района. К аж ды й район обслуживается своим узлом
коммутации, причем коммутационный процессор узла хранит
сведения лишь о ТС своего района. При выборе же им линии свя­зи при отправке пакета в другой район используется только нрмер этого района.
Абонент сети идентифицируется (полным) адресом своей ТСи локальны м номером внутри ТС; В одной ТС может размещ аться
До 2048 абонентов с 16 портами каждый, либо до 128 абонентов
с 256 портами каждый; Порты связываю тся между собой дуплекс14 В, М. Глушков

ными виртуальными каналами, т. е. такими каналами, которые
допускают одновременную передачу сообщений в обоих направле­ниях. Размер пакета — до 2040 бит (такой же, как и в с е т и № ^ )причем 72 бита из них отводятся на заголовок, в котором указы­ваются номера адресата и отправителя, тип сети-адресата (Сус1абез, АИРА или И Р Ь ), приоритет сообщения, к которому принад­лежит пакет, и поля для специальных отметок служебных па­кетов.
Сообщения в системе Сус1айез называются письмами. Такназываемое регулярное письмо может послать (по любому адресу)каждый абонент, причем для этого не надо использовать никаких
дополнительных команд. Такие письма удобны для ведения диа­лога и координации процессов в различных ЭВМ сети. При наме­рении вести длительный обмен используется другой тип писем —тип соединения. Для них в процессе установления устойчивого
виртуального канала фиксируется максимальный размер письма,которое может быть принято каждым партнером. После получения
очередного письма данного типа адресат сообщает отправителюо его доставке и о том, какое число писем он может еще принять.
В письмах при этом вместо полного адреса абонента может ис­пользоваться более короткий номер установленного виртуального
канала. Помимо писем в сети могут циркулировать короткие
(16-битовые) команды, называемые телеграммами. Они служатдля обмена информацией между узлами сети, а такж е между уз­лами и ТС, с целью организации управления потоками пакетов.
Среднее время задержки пакета в сети Сус1абез (как и в сетиАКРА) равно 0,1 с. Вероятность ошибки при передаче пакетов —не более 10“ 10 на бит (10~4 на пакет). Подключение терминаловк сети производится через терминальные коммутационные про­цессоры. Однако использование терминалов со своими буферными
устройствами позволяет в принципе их прямое подключение к уз­лам коммутации. Скорость передачи информации между узлами
коммутации в сети Сус1абез колеблется в пределах от 4,8 до
48 Кбит/с.
7.6.5. Другие иностранные сети. Помимо уж е перечисленных
сетей в мире сегодня действуют несколько сотен сетей ЭВМ раз­личного назначения. Кроме универсальных сетей, способных пре­доставлять произвольные вычислительные и информационные ус­луги, существуют специализированные сети. К их числу отно­сятся, например, банковские сети, позволяющие осуществлять
безбумажные расчеты между клиентами территориально удален­ных друг от друга банков. Другой пример — сети, связывающиеЭВМ и терминалы в системах продажи авиационных билетов.
К началу 80-х годов все технически развитые страны распо*лагали сетями с развитыми системами терминального обслужива­н и я . Многие страны создали или создают сети национального

правительственных органов. К ихчислу относятся не только такие страны, как США, Япония,ф р ан ц и я , Ф РГ, Англия, но и многие малые государства, в томчисле из числа развиваю щ ихся стран.
ш

т

а

б

а

д ЛЯ обслуживания

7.7. Государственная сеть вычислительных центров
Особо большую роль сети ЭВМ могут играть в управлении эко­н ом и к ой в национальных масш табах (что в полной мере возможнолиш ь в социалистических стран ах). Впервые вопрос о создании

|такой сети в Советском Союзе возник в 1962 г. На протяж ении1963 г. под руководством автора был создан эскизный проект
Государственной сети вычислит ельных центров (ГСВЦ) для уп­равления экономикой на всех уровнях (от цеха до ГоспланаСССР). По ряду причин практическая реализация этого проектан ач ал ась лиш ь в 70-е годы после реш ений 24-го съезда КПСС.
Следует сразу подчеркнуть, что по своим масштабам ГСВЦ (в пол­ном объеме) во много раз превосходит любую из известных в на­стоящее время сетей ЭВМ. Поэтому полная реализация проекта
требует значительного времени.
Основу ГСВЦ должна составить опорная сеть особо мощных
общегосударственных ВЦ коллективного пользования (В Ц К П ),дислоцированных в крупных городах страны (практически во всехобластных центрах). В состав каждого такого опорного ВЦ КПвходит прежде всего многомашинный вычислительный комплекстой или иной (в зависимости от класса ВЦ) мощности. Вторая
составная часть оборудования — региональны й узел коммутации(РУК). Третья компонента — информационно-диспетчерский пункт(ИДП).
Вся территория страны разбивается на регионы, на каждыйиз которых приходится по одному такому опорному ВЦ КП . ВсеВЦ и терминалы, обслуживающие предприятия и органы управ­ления экономикой, находящ иеся в данном регионе, подсоединя­ются к соответствующему региональному узлу коммутации с по­мощью относительно узкополосных (коммутируемых или закреп­ленных) каналов местной системы связи.
Опорные центры соединяются друг с другом с помощью широ­кополосных каналов (не менее 4 8 —96 К би т/с). В идеале пропуск­ная способность этих каналов должна быть доведена до уровня
пропускных способностей периферийных процессоров объединяе­мых ЭВМ. Д ля этой цели соответствующие широкополосные модеМЬ1 должны быть включены в обход каналообразую щ ей аппарату­ры непосредственно в линии дальней связи с необходимой про­пускной способностью. С целью уменьш ения затрат могут бытьиспользованы существующие линии передачи телевизионных прогРамм. Поскольку в дневное и вечернее время такие линии заня14*т ы своим прямым делом (они используются такж е для между­городных телефонных переговоров), опорные центры могли быиспользовать их для своих нужд прежде всего в ночные и в ран­ние утренние часы.
Следует подчеркнуть, что переход на скорости обмена, соот­ветствующие характеристикам периферийных процессоров объеди­няемых ЭВМ, фактически (исключая необходимость использова­ния модемов) превращает сеть в многомашинный комплекс, объе­диняющий удаленные ЭВМ через их собственные канальные про­цессоры и адаптеры канал — канал. При этом устраняется необ­ходимость многих сетевых протоколов, единственной причиной
необходимости которых является несоответствие пропускных спо­собностей источников и приемников информации с пропускной
способностью соединяющих их каналов. К числу таких протоколов
относится прежде всего транспортный протокол.
Заметим, что необходимость сложной системы протоколовъ современных сетях ЭВМ обусловлена в первую очередь именно
подобным несоответствием. Ведь существующие сети связи раз­вивались применительно к двум основным источникам и приемни­кам: к человеку (точнее, к его голосу и слуху) и к буквопечатаю­щим телеграфным аппаратам. Именно скоростными характери­стиками этих оконечных устройств обусловлен выбор пропускных
способностей двух основных стандартных каналов — телефонного
(3,1 кГц) и телеграфного (140 Гц). Втискивание в «прокрустоволож е» этих стандартов оконечных устройств принципиально дру­гого класса (ЭВМ) как раз и потребовало сложной системы прото­колов. С подобным положением мы сталкиваемся, например, припопытке «втиснуть» телефонный разговор в рамки телеграфного
канала. Подобные системы (получившие наименование вокодеров)*требуют специальных протоколов (реализуемых в виде особых
устройств) сжатия (на передающем конце) и восстановления (наприемном конце) обычной речевой информации. При этом в про­цессе передачи используется дискретное представление речевой
информации.
Через региональные центры коммутации и опорную сеть ВЦи терминалы пользователей любой ведомственной принадлежности,расположенные в любых частях страны, могут обмениваться сооб­щениями и осуществлять совместную работу так, как это делаетсяв уже описанных выше сетях. При этом как внутри региональных
(местных) сетей, так и при передаче сообщений между опорными
ВЦКП могут использоваться помимо уже упомянутых региональ­ных узлов коммутации и другие коммутационные узлы, исполь­зующие как принцип коммутации каналов, так и принцип комму­тации сообщений (пакетов). При традиционных формах организа­ции связи в сетях первый принцип используется в основном вместных сетях, а второй — в опорной сети. Однако при использо-»вании описанной выше широкополосной связи между опорнымиВ Ц К П принцип коммутации каналов в ряде случаев может ока­заться более выгодным и для опорной сети.
В описанных выше иностранных — так называемых коммерче­ских сетях организация совместной работы па сети различных або­нентов требует их предварительной договоренности о содержаниин формах этой работы. Сеть же ограничивается лиш ь предоставле­нием технических услуг для ее проведения. Подобный режим ра­боты, разумеется, возможен и в ГСВЦ. Однако, в отличие от обь№ных коммерческих сетей, ГСВЦ имеет еще и другую (и притом
основную) цель: обеспечивать управление экономикой на всехуровнях в соответствии с принятыми на данный момент организа­ционно-юридическими принципами. В соответствии с этими прин­ципами по запросу тех или иных органов (наделенных требуемы­ми правами) может осущ ествляться принудительное (диктуемое
сетью) объединение ВЦ и терминалов сети в те или иные времен­ные конф игурации для выполнения запраш иваемой работы.
Удовлетворение подобных запросов является главной задачей
информационно-диспетчерских пунктов (И Д П ) опорной сети.
С этой целью каждый региональный ИДП ведет оперативный учети контроль состояния технических средств, программного обеспе­чения и баз данных всех абонентов сети в данном регионе, а так­же планов работы их ВЦ и терминалов. Если в регионе имеются
органы управления надрегионального (например, общесоюзного)уровня, то соответствующая задача учета и контроля возлагаетсяна дополнительный ИДП соответствующего уровня. Тем самым
сеть ИДП оказывается построенной в соответствии с организа­цией и дислокацией сети социально-экономического управления встране. Управление же этой сетью должно осущ ествляться спе­циальным союзнореспубликанским органом — министерством (иликомитетом) информатики.
Специально подчеркнем, что в задачу этого органа никоим
образом не входит управление экономикой. Он осуществляет
лишь управление (в интересах в с е х органов социально-экономи­ческого управления) техническими средствами (ВЦ, РУ К , ИДПи терминалами), а такж е загрузкой общегосударственной сетипередачи данны х (О ГСП Д), с помощью которых осущ ествляется
социально-экономическое управление (сама ОГСПД при этом мо­ж е т принадлеж ать министерству связи ).
Простейшей формой запроса, который должна удовлетворять
ГСВЦ, является обычный информационный запрос (например,сколько того или иного материала находится на предприятиях
Данной отрасли в данном регионе). Д ля удовлетворения подобных
запросов сеть ИДП должна обладать монитором соответствующей
абонентской службы. Важнейш ей составной частью такого мони­тора является система управления распределенной базой данны х

(С У Р Б Д ), включающей каталог баз данных как всех абонентов
сети, так и специальных региональных баз данны х, создаваемыхв опорных ВЦК1Т. В региональные базы включаются прежде всего
различные данные, требуемые для территориального управления
(регистры населения, земельных угодий, природных ресурсов,,дорог и т. п .). Кроме того, в монитор информационной службы
сети должны входить специальные программы для проверки правана запрос той или иной информации, а также определения очеред­ности удовлетворения запросов. Последнее зависит не только огуровня органа, запрашивающего информацию, но и от определяе­мой самим этим органом срочности запроса, а также от сложности
запроса и технического состояния сети (прежде всего от степени
загрузки различных ВЦ и сетей связи).
Более сложными являются задачи межведомственного плани­рования и управления, например, задачи согласования календар­ных планов производства и материально-технического снабженияпо цепочкам потребителей и поставщиков. Решение подобных
задач (более подробно описываемых в последующих главах) тре­бует образования временных конфигураций ВЦ и терминалов,принадлежащих различным ведомствам, и эффективного управле­ния ими с обязательным учетом планов их работы на свои собст­венные нужды. Учитывая огромное быстродействие ЭВМ и высо­кую цену даже незначительных простоев сложного сетевого обо­рудования, такая задача не может быть эффективно решена ина­че, как под централизованным управлением сети ИДП. Заметим,что для решения этой задачи чрезвычайно важно оперативно от­слеживать состояние технической, программной и информацион­ной базы у всех вовлекаемых в работу абонентов сети. С этойцелью должен быть организован автоматический обмен информа­цией между операционными системами абонентских ЭВМ и мо­ниторами соответствующих абонентских служб, реализованных всети ИДП. Управление совместной работой абонентских ВЦ ещебояе$ усложняется в случае, когда решаемые задачи требуют опе­ративного диалога с людьми. Соответствующие мониторы должныв этом случае учитывать расписание работы и скоростные воз­можности всех специалистов, вовлекаемых в диалог.
Сложность возникающих здесь задач легко оценить, если пред­ставить себе масштабы ГСВЦ. В законченном виде она будет
объединять около 200 опорных ВЦКП, ИДП и РУК, несколько
десятков тысяч ведомственных ВЦ и несколько миллионов терми­налов. Заметим также, что абоненты ГСВЦ неоднородны в смысле
объема требований, предъявляемых к сети. ВЦ многих органон
управления, прежде всего общегосударственного уровня (Госплан
СССР и др.) желательно подключить к соответствующим регио­нальным узлам коммутации широкополосными каналами, тогдакак ВЦ большинства предприятий и мелких организации могут *довольствоваться каналам и мепыней пропускной способности, такчто в ГС13Ц помимо опорной сети может быть выделена по край­ней мере еще одна высокоскоростная подсеть, содержащ ая не­сколько сотен особо важ ны х абонентов. Необходимо помнить так­же, что наряду с быстрой автоматической связью в ГСВЦ дляпередач больших объемов песрочной информации может использо­ваться пересылка по почте соответствующих машинных носите­лей, прежде всего магнитных лент и гибких дисков.
К ак уж е отмечалось выше,, в опорных ВЦ КП будут храниться
специальные региональные базы данных. Поэтому такие ВЦ есте­ственно использовать прежде всего для реш ения крупных соци­ально-экономических задач общерегионального и межрегионально­го характера. Н аряду с такими задачами опорные ВЦКП могут
взять на себя дополнительно решение задач для абонентов, неимеющих своих ВЦ, а такж е выступать в виде резерва мощностипри решении особо крупных задач у абонентов, не имеющих та­кого резерва. Это позволит рассчитывать абонентские ВЦ не напиковые, а на средние нагрузки и тем самым значительно повы­сить эффективность использования вычислительной техники,снизить необходимые капитальные затраты.
Более того, наличие сети ИДП в руках органа, паделенпого
правом диспетчирования работы ВЦ у всех абонентов сети (неза­висимо от их ведомственной принадлеж ности), позволяет эффек­тивно управлять всем вычислительно-информационным потенциа­лом страны путем оперативного перераспределения нагрузок (по­добно тому, как это делается в электрических сетях).
Наконец, следуя общим принципам создания вторичных базданных, которые были изложены в предыдущей главе, в ВЦКПследует создавать такие базы для более оперативного удовлетворе­ния поступающих в сеть запросов. К ак уже отмечалось выше,накопив мепее 20% общего объема данных, имеющихся во всехВЦ дапного региона, опорный ВЦКП может удовлетворять более
«0% поступающих запросов, не обращаясь непосредственно к этимВЦ. Подобпая служба вторичных массивов должна обеспечиваться
соответствующим сетевым монитором, в функции которого входит
изучение статистики поступающих в сеть запросов, своевремен­ная корректировка состава вторичных массивов и обеспечение ихсвоевременной актуализации.
В заключение отметим еще одну особенность, отличающую
ГСВЦ от обычных коммерческих сетей. Речь идет о способах за­щиты от несанкционированного доступа. Помимо обычных средств
защиты инф ормации, применяемых не только в отдельных ЭВМ,и в сетях, в ГСВЦ возникает специфическая задача защиты
0т попыток применить те или иные программы к тем или инымДанным. При этом сами по себе даипые и программы открыты
Пользователю, запрещено лиш ь приводить их в соприкосновение-Гла в а

V III

М АТЕМ АТИЧЕСКИЕ М ЕТОДЫ ОПТИМ ИЗАЦИИ
8.1. Общие сведения об оптимизации
Одним из важнейших применений машинной (безбумажной)информатики является машинное управление и проектирование.
Применение ЭВМ в этих областях позволяет перейти от выработ­ки более или менее хороших решений к выработке наилучш ихили, как обычно принято говорить, оптимальных решений. Процесс
выработки таких решений называется оптимизацией. Математи­ческие методы оптимизации начали развиваться еще в домашин­ную эпоху. Однако без ЭВМ они могли применяться на практике
лишь в самых простых случаях. Широкий переход к машинным
методам выработки управленческих и проектно-конструкторских
решений вызвал бурное развитие теории оптимизации и обеспе­чил ее широкое практическое использование.
8.1.1. Классическая постановка задачи оптимизации. Обычная
постановка задачи оптимизации (которую мы будем называть
классической) состоит в следующем. В некотором пространстветем или иным способом выделяется некоторое непустое множест­во М точек этого пространства, называемое допустимым множест­вом. Далее фиксируется некоторая вещественная функция / ( я ) ,заданная во всех точках х допустимого множества. Она называ­ется целевой ф ункцией. Задача оптимизации состоит в том, чтобы
найти точку х 0 в множестве А/, для которой функция ](х) прини­мает экстремальное — максимальное или минимальное значение.
В первом случае для всех точек х множества М удовлетворяется
неравенство / ( # о ) ^ / ( # ) , во втором случае — неравенство /( # 0) << /(* ).
Заметим прежде всего, что как при максимизации, так и приминим изации задача оптимизации может не иметь решения. На­пример, если допустимое множество М состоит из всех положи­тельных вещественных чисел (от > 0 ), то для целевой функций
/( # ) = #2 в множестве М не существует ни точки максимума, няточки минимума. Действительно, для любого х 0 > 0 всегда най­дутся положительные числа х х иудовлетворяющие неравенст-вам< х 9 и Хг > х 9. Тогда, очевидно, / ( х А) = х \ < х \ = } (х 9) и
] (х 2) ^ ^2 ^ #0 в / (*^о)*Наоборот, может оказаться, что экстремум достигается не в од­ной, а в целом множестве точек. Например, в области, заданнойфу нк ция /( # , у) = х г + у гнеравенствами —достигает максимума (равного двум) в четырех точках с коорди­натами ( —1, —1), ( - 1 , 1), (1, - 1 ) , (1, 1). Ф ункция / ( # ) , задан­н ая соотношениями / ( # ) = 1 при х < * \/2 и /( х ) = 2х при х > 1 / 2 ,в области, определяемой неравенством х ^ 0, принимает минималь­ное значение (равное единице) во всех точках отрезка [0, 1/2].
Следует различать абсолютный и локальны й экстремумы.
В случае достижения функцией ](х) в точке х 9 абсолютного
экстремума, скажем, максимума, неравенство 1(х9) > { ( х ) имеет
место для всех точек допустимой области М. В случае ж е локаль­ного экстремума (в данном случае максимума) это неравенство
выполняется только для всех достаточно близких к точке х 9 точек
области ЛГ. Например, 1(х9) > { ( х ) для всех х таких, что расстоя­ние г(х, х 9) точки х от точки х 0 меньше некоторого (обычно до­статочно малого) положительного числа е.
Н а рис. 8.1 функция 1{х), заданная на отрезке [а, 6], имеет
абсолютный максимум в точке Ь и два относительных максимумав точках а и й. В точке с эта ф унк­ция достигает локального мини­мума, а в точке е — абсолютного
минимума.
При перемене знака целевой
функции /(# ) все точки ее макси­мума превращаются, очевидно, вточки минимума и наоборот. По­этому в теории достаточно- рас­сматривать лишь какой-нибудь
один из видов оптимума (макси­мум или минимум). В современной
теории оптимизации чаще всего останавливаются на задаче нахож ­дения минимума, или, что то же самое, на задаче м иним изации
функций. Все результаты этой задачи очевидным образом перено­сятся и на задачу нахождения максимума. Заметим, что хотя тер­мин «минимизация функций» достаточно широко распространен,он не вполне точно отраж ает существо процесса минимизации.
Ведь в таком процессе сама ф ункция ](х) остается неизменной.
Речь идет не о минимизации функции, а о минимизации еезначения (в результате выбора соответствующей точки в допусти­мом множестве значений ее аргум ента).
8.1.2.
Оптимизация функций и оптимизация функционалов.
В практических оптимизационных задачах приходится иметь делос двумя основными видами их постановок. В первом случае задача
ставится в обычном (евклидовом) пространстве конечной размер­ности. Точками х допустимого множества будут кортежи х =*= <хи х 2, ... , х пУ вещественных чисел, целевой же функцией](х) = Р ( х и . . . , х п) будет обычная вещественная функция от пвещественных аргументов (п — размерность пространства). Такую
задачу мы будем именовать в дальнейшем задачей оптимизацииф ункций. Во втором случае постановки оптимизационной задачив качестве допустимого множества выступает некоторое множест­во М функций вещественных переменных у ( х и . . . , х т), а целевая
функция есть некоторый ф ункционал Р, сопоставляющий каждой
функции у = у ( х „ ... , Хт) некоторое вещественное число Р(у)~Такую задачу мы будем называть задачей оптимизации ф ункцио­налов или вариационной задачей.
С абстрактной точки зрения обе указанные постановки совер­шенно идентичны: в обоих случаях речь идет о выборе точки внекотором пространстве, оптимизирующей значение целевой функ­ции. Различие состоит лишь в природе самого пространства, од­нако этого достаточно, чтобы вызвать весьма существеппые раз­личия в практических методах оптимизации, применяемых в этихдвух случаях. Заметим, что в принципе вторая постановка может
быть с определенными допусками сведена к первой. Это возмож­но, если каж дая функция у ( х их т), составляющая допустимое
множество, может быть с достаточной для практики степенью
точности аппроксимирована множеством своих значений на неко­тором конечном множестве точек. Впрочем, в большинстве случаев
число таких точек должно быть настолько велико, что сведение
вариационной задачи к задаче оптимизации (обычных) функций
становится мало практичным.
8.1.3.
Многокритериальная оптимизация. В практике оптими­зации часто приходится встречаться со случаем, когда вместо
одной целевой функции ](х) задано несколько целевых функций
(критериев) / 4(#), . . . , Д( я) . Возникающая в этом случае задача
многокритериальной оптимизации имеет несколько постановок.
В одной из них требуется оптимизировать один из критериев, ска­жем / 1(2), удерживая остальные критерии в заданных границах:/* ( # )^ Ь{ (г = 2, 3, . . . , к ). В этом случае фактически речьидет об обычной однокритериалъной оптимизации. Что же каса­ется неравенств, ограничивающих другие критерии, то их можно
рассматривать как дополнительные ограничения на допустимую
область М. Правда, на практике в ряде случаев подобная задачареш ается несколько иными методами, чем обычная однокритерцальная задача.
Вторая постановка состоит в упорядочении заданного множе­ства критериев и в последовательной оптимизации по каждому из
них. Иными словами, произведя оптимизацию по первому крите-ршо ]\(х), мы получаем некоторое множествона котором
функция ^^(x) принимает оптимальное (экстремальное) значение.
Принимая его за новое допустимое множество, производим опти­мизацию по второму критерию, получая в результате новое до­пустимое множество М2 с М х. Продолжая этот процесс, получим
после оптимизации по последнему критерию /*(я) множество М к>которое и будет конечпым результатом многокритериальной опти­мизации. Ясно, что если на некотором шаге I ( К к) множествоМ г сведется к одной точке, то процесс оптимизации можно закон­чить, поскольку М> = М {+1 = . . . = Ык. Не исключено, разумеется,что, как и в случае обычной однокритериальной оптимизации,задача может вообще не иметь решения.
Третья постановка применяет процесс сведения многих крите­риев к одному за счет введения априорных весовых коэффициен­тов Хг для каждого из критериев /,(.г). В качестве таких коэффи­циентов могут быть в принципе выбраны любые вещественные
числа. Их значения выбираются исходя из интуитивного представ­ления о степени важности различных критериев: более важные
критерии получают веса с большими абсолютными значениями.
После установления весов
многокритериальная задача сводитсяк однокритериальиой с целевой функцией / ( х ) = А.1Д (х) + . . .
• • • + Л*Д(ж).
Вместо простой линейной комбинации исходных критериев мо­гут использоваться и более сложные способы формирования изних нового критерия для однокритериальной оптимизации. Нижебудет показан другой путь многокритериальной оптимизации врамках так называемой системной оптимизации.
8.1.4.
Стандартные формы задач оптимизации функций. В стан­дартных формах объектом оптимизации является непрерывнаяф ункция ) ( х) вещественных переменных х = ( х и . . . , х п>, допу­стимая область М задается конечной системой равенств и нера­венств вида р (# ) = 0, <2г ( # ) ^ 0, г ( л : ) ^ 0 с непрерывными левыми
частями. Если при этом область М ограничена, то в ней обяза­тельно существует по крайней мере одна точка абсолютного мак­симума и по крайней мере одна точка абсолютного минимума
функции }(х).
Поскольку перемена знака у левых частей неравенств д ( х ) > 0и г ( х ) ^ 0 меняет знаки этих неравенств на противоположные,можно ограничиться одпим из этих двух типов неравенств. Обыч­но при максимизации пользуются неравенствами вида ц ( х ) > 0 ,в при минимизации — неравенствами вида г ( # ) ^ 0 . Таким обра­зом, возникают две стандартные формы постановки задачи опти­мизации функций.
В задаче максимизации требуется найти максимум функции
1{х) в области Л/, заданной системой равенств /?,(^) = 0 (Ь == 1, 2, . . . , /) и неравенств Рг ( х ) > 0 (г = 1 + 1, . . . , тп).

В задаче миним изации требуется найти минимум функции /(от)в области М, заданной системой равенств р%(х) = 0 (* = 1, 2,
и неравенств
(1 = 1+ 1, . . . , т ) .
Легко видеть, что при одновременной перемене знаков у функ­ций 1(х) и Рг(х) (г = 1,т) задача максимизации переходитв задачу минимизации и наоборот. Поэтому разработку методов
оптимизации достаточно вести применительно лишь к одной изэтих постановок.
Заметим такж е, что ограничения типа неравенств можно заме­нить ограничениями типа равенств и простыми координатными не­равенствами, вводя дополнительные (вещественные) переменныеПри этом ограничение вида Рг ( х) > 0 заменится парой ограниче­ний Рг (х) — 2*= 0, 2, ^ 0, а ограничение р, (х) ^ 0 —*парой огра­ничений р*(#)+2* = 0, 2,-Х ). Этот прием в дальнейшем будет
..именоваться стандартным приемям элим инации нетривиальных
неравенств. Его особенно удобно применять в том случае, когдапо смыслу задачи все точки допустимой области имеют неотрица­тельные координаты. В результате его применения при этих усло­виях возникает третья стандартная форма постановки задачи оп­тимизации ф ун кц и й :Найти оптимум (максимум или минимум) функции ]( х) в об­ласти Л/, заданной системой равенств р,(#) = 0 (1= 1, .. . , тп) и:простых (координатных) неравенств * } > 0 (/ = 1,и ).
Во всех перечисленных постановках может присутствовать до­полнительное требование о том, чтобы все координаты точки опти­мума были целыми числами. Это требование превращает задачу
непрерывной оптимизации в задачу целочисленной оптимизации*В случае, когда допустимая область М ограничена, в ней может
располагаться лишь конечное множество точек с целочисленными
координатами. Поэтому задача целочисленной оптимизации в огра­ниченной области в принципе может быть решена простым мето­дом перебора, т. е. вычисления значения целевой функции (кри­терия) ](х) во всех допустимых точках и выбора из них точки
(или точек) с оптимальными значениями критерия.
8.2. Гладкая оптимизация. Общие свойстваВ случае, когда функция цели ](х) и функции р<(#), задающие
ограничения, являются дифференцируемыми (гладкими), для ре­шения задач оптимизации используется понятие градиента. Д л ялюбой дифференцируемой функции в ( х ) ее градиентом ^ § ( х )в точке х называется вектор

(8. 1)

Вектор градиента ^ 8 ( х ) задает (в заданной точке х) направле­ние наискорейшего роста функции $ ( х ) , а обратное ему направле­ние—называемое антиградиентом,— направление наиско­рейшего убывания этой функции. Разумеется, эти направления
определяются лишь в том случае, когда вектор градиента отличеяот нуля. Точки, в которых градиент функции обращается в нуль,,называются ее стационарными точками. Если экстремум дифферен­цируемой функции }(х) достигается внутри допустимой области(не на ее границе), то в точке оптимума а ее градиент обращ аетсяв нуль, т. е. имеет место система равенств
(х)
(8-2>
п 1лс=о - ° дх1 х—а - ° .
Эти равенства (условия стационарности функции) имеют местоне только для абсолютных, но и для локальных экстремумов^Вместе с тем условия стационарности не являю тся достаточными,.
Иными словами, при их выполнениив некоторой точке х 0 она не обяза­тельно будет экстремальной точкой.
Возможно, что это так назы ваем ая'седловая точка, пример которой (точ­ка А ) дается на рис. 8.2. В одних
направлениях от такой точки про­исходит подъем (увеличение значеРис. 8.2
ния ф ункции), в д р у ги х — спуск
(уменьшение значения ф у н кц и и ), причем касательная плоскость яточке А горизонтальна, что будет, очевидно, в любой стационарпойг
точке. Д ля отличия седловых точек от экстремальных требуется
исследовать значения вторых производных (а иногда и производ­ных более высоких порядков) в стационарной точке.
8.2.1.
Условия Куна — Таккера. В случае, когда экстремаль­ная точка а леж ит на границе допустимого множества, она не обя­зана быть стационарной. Однако при некотором дополнительном
условии удается, заменив целевую функцию }(х) так называемой
гпф ункцией Лагранжа 1 ( х ) = { ( х ) + 2^ %Рг{х ) (где р{(#) — левые-1=1части всех граничных условий), добиться того, чтобы граничные^экстремальные точки функции / ( я) были стационарными точками,функции Л агранж а Ь( х ) при подходящих значениях парамет­ровУсловие, о котором идет речь,— так называемое условие р егу­лярности, выполняется на практике. Его суть состоит в линейной
независимости в данной точке х = а градиентов всех граничных
функций Рг(х), для которых рДа) = 0.
При выполнении этого условия для любой точки максимума х *® задаче «найти шах 1(х) при р<(#) = 0 (4 = 1,/) , Р х ( х ) ^ &{ 1 = 1+1,

. . т)» и для любой точки минимума х* в задаче «най­ти п и п / ( я ) при Рг(х) = 0 (1 = 1,
рг (х) ^ 0 (1 = 1+1, . т) ьдолжны соблюдаться следующие три условия, называемые усло­виями К упа — Таккера:1) х* лежит в допустимом множестве;2) Я*р<(:г*) = 0 при 2 = 1 ,т;т3) УНх*) + 2 Хг\/Р1(х*) = 0.
г=1Здесь Хг — некоторые вещественные числа (множители Лагранжа) ,п р о и з в о л ь н ы е для всех условий типа равенства (г = 1
и н е о т р и ц а т е л ь н ы е для всех условий типа неравенства
(г = 1+ 1,то).
Заметим, что этими условиями определяются лишь точки в о з м о ж н ы х (локальных и абсолютных) экстремумов, исключая израссмотрения все точки, в которых таких экстремумов заведомо
быть не может. Однако их выполнения, вообще говоря, н е д о с т а ­т о ч н о , чтобы такие экстремумы действительно имели место. Чтокасается абсолютного экстремума, то он, как правило, легко нахо­дится путем фактического вычисле­ния и последующего сравнения меж­
у = х ду собой значений целевой функцииво всех точках, найденных из усло­вий- Куна — Таккера.
Поясним сказанное на примере.
Пусть требуется отыскать абсолют­ный максимум функции ъ = х + у вобласти М, заданной неравенствами
х — у > 0 и у — х 2 ^ 0. Эта область
изображена на рис. 8.3: неравенство
х — у ^ 0 задает множество точек, ле­жащих вправо от прямой у = х, а не­
Рис. 8.3
равенство у ~ х 2 > 0 — множество то­чек, лежащих вверх от параболы у = х г. Обозначая множители
Лагранжа через X и р, из условий Куна — Таккера получим сле­дующую систему соотношений:илиХ - У > 0 , у - х 2 > 0 , % ( х - у ) = О,\х (у — х 1) = 0, 1 + X — 2\хх = 0, 1 — А, + ц = О,А, > О, \1 > 0.
Легко проверить, что этим соотношениям удовлетворяет един­ственная точка я = 1, у = 1, которая, удовлетворяя условию ре­гулярности, должна быть точкой абсолютного максимума (ибо всилу п. 8.1.4 такая точка в нашем случае обязательно сущест­вует). При этом А, = 3, ц = 2.
Если искать точку минимума той же функции в той же об­ласти, то нужно* изменить форму представления граничных усло­вий: вместо неравенств х — у > 0 и у — х 2 ^ 0 использовать эквива­лентные им неравенства г/ —# ^ 0 и х 2 — 1 / ^ 0 . Условия Куна —Таккера приводят к системе соотношений у —х < 0, х 2°— у ^ О,Ц у - х ) = 0, \1 (х2- у ) = 0,
^ (х + у + X (у — х) + ц (я® — у)) = 1 — X + 2*и: = 0,
^ ( х + г/ + Х( у — х) +— !/))= 1 + X— ц = 0 .

Этой системе удовлетворяет единственный набор значений, а имен­но: х = 0, у = 0, X = 1, ц = 2. Ясно, что точка х = 0,. у = 0 в силуее единственности и выполнения условия регулярности есть точка
абсолютного минимума функции 2== х + у в области Л/.
Заменяя в последнем варианте задачи целевую функцию наг = х — у, придем к системе соотношений у — х = 0, х 2 — у = 0,%(у — х)*= 0, \х(х2 — г/) = 0, 1 — А,Н-2р,# = 0, —1 + Я — р = 0. Ониудовлетворяются лишь при у = я, А, = 1> р, = 0. Поскольку вовсех точках, для которых у = я, целевая функция 2 = я — у при­нимает одно и то же значение 2 = 0, а условие регулярности
выполняется, приходим к выводу о том, что она достигает абсо­лютного минимума (в заданной области М) во всех точках отрез­ка, соединяющего начало координат с точкой А( 1 , 1) (рис. 8.3).
Для демонстрации применения, условий Куна — Таккера наме­ренно были взяты тривиальные примеры, для которых решение
поставленных задач легко проводится на основе наглядных геомет­рических представлений. Ясно, однако, что возможность использо­вания таких представлений имеется лишь в самых простых, исклю­чительных случаях. Условия же Куна — Таккера работают вовсех случаях, когда возможно явное аналитическое выражение
градиента функции Л агранж а.
8.2.2.
Достаточные условия для экстремума гладкой функции»В приведенных выше примерах нами фактически уже использова­лось одно из достаточных условий экстремума гладкой функции:I

"точка х =* а будет точкой экстремума, если она является единст­венной точкой, удовлетворяющей условиям Куна — Таккера, а до­пусти м ая область ограничена.
Более общая форма достаточного условия экстремума полут

чается при представлении функции Л агранж а {(х) + 2 КРг(х)
1=1в виде функции Ь( х, к) от двух групп переменных: х = ( х и . . .
. . . , х п) , X =• • •, к т ) , с условиями к 1> О, . . . , Хт ^ 0 (все ограничения предполагаются имеющими тип неравенств). Достаточное
условие экстремума состоит в том, что для экстремальной точки
-х = х* существует допустимый набор к — X*, для которого точка
(х*, к*) является седловой точкой функции Л агранж а. Это озна­чает, что в случае, когда х* есть точка максимума, имеют место
соотношенияш ах Ь (х, X*) = Ь (.х*, X*) = Ш1П Ь (х*, X),
эссЕХ

(8.3)

Л

а в случае точки минимума — соотношенияпип Ь (х , А,*) = Ь (х*, А ,* )= тах Ц х * , А,).
ЗС€ЕX

(8.4)

Л

П ри этом х пробегает все пространство X, а X — множество Л всех(X,, .. ., Хт) с неотрицательными X* (1 = 1, . .. , т ).
8.2.3.
Двойственные задачи оптимизации. В случае стандарт­ной формы задачи максимизации функции /(лг) так называемая
прям ая ф ункция Ь*(х) получается минимизацией (по X) функтции Л агранж а Ь ( х , X) == /(х ) + 2

КРг(х)-1=1

Ь* (х) = ш ш Ь ( х , X).
я.^ А

(8.5)

Ф ункция, двойственная прямой функции, получается максими­зацией (по х) функции Л агранж а Ь ( х у X):
Ь* (X) = ш ах Ь (х%X).
х&Х

(8.6)

Здесь, в отличие от предыдущего пункта, X и Л могут в общем
случае представлять собой произвольные множества. При этомзадача максимизации прямой функции Ь *(х) называется прямой
задачей оптимизации, а задача минимизации двойственной ейфункции — двойственной задачей
оптимизации. Переменные.Хих п носят наименование прям ы х, а переменные Х|,*.., Хт — двойственных переменных.
Нетрудно показать, что решение прямой задачи оптимизация
эквивалентно задаче максимизации функции / ( х ) при ограничен

ниях р*(х ) ^ 0 (*’ = 1,га), х е =Х. При X , совпадающем совсем пространством, приходим к первой стандартной форме опти­мизационной задачи.
Для второй стандартной формы оптимизационной задачи (ми­нимизации функции } ( х ) ) все сказанное сохраняет силу при ус­ловии замены всюду процессов максимизации процессами мини­мизации и наоборот.
8.3. Численные методы гладкой оптимизации
Метод оптимизации, использующей условия К уна — Танкера,на практике применяется относительно редко ввиду большой слож­ности анализа возникающей системы соотношений. К тому жеполучение самих соотношений основывается на возможности ана­литического представления градиентов функций }(х) и Рг(х) (1 == 1, ... , га), что далеко не всегда практически осуществимо. По­этому на практике гораздо чаще применяются численны е методы
оптимизации, для которых достаточно уметь находить численные
значения градиента в любой заданной точке.
Для простоты изложения вначале мы будем предполагать, чтозадача оптимизации не содержит ограничений, а затем покажем,каким образом к этому случаю сводятся задачи общего вида с ог­раничениями.
8.3.1.
Общая идея градиентного спуска (подъема). Пусть не­прерывно дифференцируемая целевая функция Ц х ) задана вовсех точках пространства X . Д ля произвольной точки х, в которой
градиент у / ( ^ ) отличен от нуля, он задает два направления (двавектора единичной длины) 8 ~ 8 ( х ) и—8 ( х )> называемые
соответственно направлениям и градиента и антиградиента. Сдви­гаясь от точки х на очень малый шаг е в любом направлении й,где й — единичный вектор, в силу условия дифференцируемости
функции ]{х), получим неравенства
1{х + г8) > ]{х + гй) > ! ( х - е * ) .

{8.7)

Это означает, что движение (на очень малый ш аг) в направле­нии градиента функции обеспечивает наибольший рост, а в на­правлении антиградиента — наибольшее уменьшение этой функ­ции. Указанные направления называют соответственно направ­лениями наискорейшего подъема и наискорейшего спуска функ­ции Ц х) в заданной точке х.
Из сказанного вытекает общая идея градиентного подъема илиградиентного спуска:Отправляясь от заданной точки х°ч строим последовательность
точек (х°, х \ х г, . . . ) так, что перемещение от каждой точки х 1~1
к следующей точке х \ производится в направлении наискорейшего
^ И. м. Глушков

подъема (при поиске максимума) или наискорейшего спуска (припоиске минимума), строящихся в исходной точке я 1” 1*).
Трудность практического применения подобной процедуры со­стоит прежде всего в выборе величины ш ага е* при переходе отточки х 1~1 к точке х \ Дело в том, что неравенства (8.7) имеют
место лишь в малой окрестности точки х , т. е. для малой вели­чины ш ага е<. Легко видеть (см. рис. 8.4), что при большой ве­личине шага можно, даже двигаясь внаправлении наискорейшего подъема,получить не увеличение, а уменьше­ние значения целевой функции 1( х) .
То же самое имеет, разумеется, ме­сто и для процедуры спуска.
Из сказанного следует, что вели­чину ш ага е* в процедурах наиско­рейшего подъема и спуска следует
выбирать достаточно малой. Однако при движении малыми ш а­гами для приближения к экстремальной точке может потребовать­ся очень большое число шагов. Кроме того, от процедур подъемаи спуска обычно требуется не просто приближение к экстремаль­ной точке ж = а, а с х о д и м о с т ь к ней. Это означает, что помере роста 2 расстояние \х1— а | от точки х* до точки экстремума
х = а должно стремиться к нулю. Это возможно лишь в том слу­чае, если по мере приближения к точке экстремума величинаш ага е* будет такж е стремиться к нулю.
В следующих двух пунктах мы рассмотрим две основные про­цедуры, обеспечивающие при определенных условиях сходимостьк точке экстремума.
8.3.2.
Пропорционально-градиентный метод. Наиболее простым
способом обеспечения требуемого уменьшения ш ага при прибли­жении к точке экстремума для дифференцируемой функции /(ж)является выбор длины шага е* пропорциональным длине вектора
градиента в точке яг'*"1:е* = а1 у /(^ г“1) I, а > 0 , а = соп81.

(8.8)Такой выбор шага означает, что переход от точки х х~%к точке х 1будет выполняться по формулех гв х м + а у ] ( х м )(8.9)

для процедуры подъема (нахождения максимума функции / ( # ) )и по формуле
х1= х — ау/(#г_1X,(8-Ю)*) Использование верхпих индексов для обозначения различных точек
пространства X вызвано тем, что нижние индексы употребляются для обо8начеиия координат точки х = ( хь лг2,х п).

для процедуры спуска
(нахождения
минимума функции
/( * )) •Заметим, что для произвольной дифференцируемой функциипри произвольном выборе начальной точки х° описанная проце­дура не обязательно приводит к экстремальной точке. Такой точ­кой может оказаться любая стационарная точка, в окрестности
которой величина шага ег такж е стремится к нулю. Однако, еслиначальное приближение х° выбрано достаточно близко к точке
экстремума х = а, то, как правило, такая сходимость может бытьобеспечена при подходящем выборе константы а . Понятие «доста­точно близко» может быть уточнено, например, таким образом,что точка х° попадает внутрь сферы с центром в экстремальной
точке х = а, являющейся единственной стационарной точкой вэтой сфере.
Обычно же описанная процедура применяется к весьма часто
встречающимся на практике задачам выпуклой оптимизации, в ко­торых при условии отсутствия ограничений точка экстремума
(притом абсолютного) единственна во всем пространстве. Об этихзадачах (для случая гладких функций), где автоматически обес­печивается сходимость описываемых градиентных методов, гово­рится ниже.
8.3.3.
Полношаговый градиентный метод. В этом методе каж ­дый шаг градиентного подъема или спуска делается н а макси­мально возможную длину, обеспечивающую требуемое направле­ние изменения значения функции (т. е. ее увеличение или умень­шение). Иными словами, на полупрямой, исходящей из очередной
точки х'~* в направлении градиента (при подъеме) или антигра­диента (при спуске), ищется соответственно точка абсолютного
максимума или абсолютного минимума, которая и выбирается вкачестве следующей точки х \В случае произвольной дифференцируемой функции Ц х ) ре­шение подобной задачи, называемой одномерной оптимизационной
задачей, само по себе достаточно трудно. Ее решение упрощ аетсяпри наложении на функцию / (х) некоторых дополнительных тре­бований, например, выпуклости, о чем будет подробнее рассказано
ниже. Сейчас же мы ограничимся наглядным пояснением работы
полношагового градиентного метода.
Пусть, например, речь идет о минимизации функции г — х 2 ++ 4г/2. Чтобы не строить пространственный чертеж, изобразим
процесс минимизации на плоскости, задав функцию ъ ее линиями
Уровня, т. е. линиями, задаваемыми уравнениями х 2 + 4у 2 = с приРазличных значениях константы с (рис. 8.5). Из начальной точких Движение по направлению антиградиента й 1 происходит доточки х \ в которой полупрямая, исходящая из точки х° в направ­лениикасается некоторой линии уровня. Далее тот же процесс
п°вторяется для точки х 1 и т. д. В рассматриваемом случае оче15*видно, что получаемый ряд точек х°, х 1, х \ . . . сходится к началу
координат, представляющему собой точку абсолютного минимума
заданной функции ъ = х г + 4у 2.
8.3.4.
Метод сопряженных градиентов. Полношаговый подъем
(или спуск) может, очевидно, осуществляться не обязательно понаправлению градиента (или антиградиента), а по любому направ­лению, в котором целевая функция /(# ) меняется в нужную сто­рону (увеличивается или уменьш ается). Вместе с тем очевидно,что, будучи наилучшими при малой
величине шага, направления градиен­та и антиградиента вовсе не обяза­ны быть таковыми при больших ша^ гах. Так из рис. 8.5 видно, что еслиX в точке х° «довернуть» направление
антиградиента немного вправо, то, сде­лав полный шаг по исправленному
таким образом направлению, мы по­лучим лучшее приближение к экстре­муму, чем точка # \• В случае, когда функция /(# ) является квадратным полино­мом (как это имеет место в примере предыдущего пункта), разра­ботана точная процедура таких «доворотов», получившая наимено­вание метода сопряженных градиентов, при которой (при полных
шагах) точки экстремума достигаются из любой начальной точки
х° за п шагов (где п — размерность пространства). Направление
йг+1 шага от точки х 1 к точке х 1+1 задается в этом методе следую­щей рекуррентной формулой:<Г+Х = ± У / И +< -1.2 , ....

(8-И )

где 1 ^ /(# )| означает длину вектора V /(х)’. Знак плюс выбираетсяв том случае, когда решается задача максимизации, а знак ми­
нус — в случае решения задачи минимизации. Тот же самый вы­бор знака осуществляется и для направления й1 первого шага(г = 0). Оно совпадает с направлением ±У{(х°).
Вычисляя по приведенным правилам направления й1, й2, . ..
и производя по каждому из них полный шаг, после не более чемп шагов придем к искомой экстремальной точке задачи квадра­тичной оптимизации.
Чтобы иллюстрировать сказанное, рассмотрим задачу миними­зации функции 2 = #7 2 + у 2. Ее антиградиент —^ есть вектор
—Уг = (—#, —2у). Пусть дана начальная точка Л 0 = (1. 1/2);
тогда й1== —^ 20 = (—1, —1). Полупрямая, по которой делается
первый шаг минимизации, задается уравнениями х = 1 — I, у**= 1/2 — 10). По направлению этой полупрямой г я ( 1 - 1)г!
/ 2 + (1/2 — I ) 2. Минимум этой функции достигается при г = 2/3,

так что после первого ш ага мы попадаем в точку А х с коорди­натами х -= 1 — 2/3 *» 1/3, у = 1/2 — 2/3 = —1/6. В этой точке
1/3, 1/3) и отношение I = I^ ■* 4% так что й2 =I — ^ - 0 12
9—
V ,, + г, (_ у 2„) - ( - 4-, ++ - ! ( _ ! , _ 1) _‘ } ) _
2
1
1=* ~ (— 2, 1). Двигаясь по полупрямой х— 2^, у * —+4)0),мы достигнем минимума функции ъ « —■ ^—2^+

+ ^— |т-+ ^ при 2 = 1/6. В результате придем в точку А 2 с ко­ординатами (0, 0 ), в которой, как это совершенно очевидно, и до­стигается минимум исходной функции.
В случае произвольной (не квадратичной) целевой функции
/ ( х) метод сопряженных градиентов в большинстве случаев такж еприводит к лучшим результатам, чем простой полношаговый гра­диентный метод. Такое положение обуславливается тем, что квад­ратичное приближение лучше аппроксимирует целевую функцию
/ ( #) , чем линейное приближение, фактически используемое в про­стых градиентных методах. Разумеется, в общем случае не может
быть гарантировано получение точного реш ения за конечное число
шагов, как это имеет место в случае квадратичной целевой
функции.
8.3.5.
Методы сведения общей задачи оптимизации к задачебез ограничений. Описанные выше численные методы гладкой
оптимизации в чистом виде применяю тся обычно для задач безограничений. Задачи общего вида (с ограничениями) удается сво­дить к этому случаю за счет изменения целевой функции. Пусть,например, требуется найти максимум функцип Ц х ) при ограни­чениях р г { х ) > 0 (2 = 1, . . . , т) . В так называемом методе штрафцых ф ункций строится функция Р ( х ), назы ваем ая штрафнойф ункцией, которая внутри допустимой области М принимает ну­левое значение, а вне ее — отрицательна. Чащ е всего в качестве
такой функции выбирают функцию видатР (х) =» — 2 I ш *п [А (х )>, 0] |1,. I ^ 1.
г=1Выбрав штрафную функцию Р ( # ) , строят последовательность
положительных чисел г4> г2 > . . . > гк > . . . , сходящуюся к нулю.
Зам еняя целевую функцию ]( х) функциейЫ * ) = /( * ) +гк

* - 1. 2, . .

Решают задачу без ограничений для этойфункции (начиная ек = 1). Если решение х к принадлежит допустимой области (т. е.
если все #г(я:*)^*0), то х к является, очевидно, решением исходной
задачи с ограничениями. В противном случае заменяют к на
к + 1 и решают задачу для новой целевой функции Рк(х).
При непрерывности функций /(дг) и &(#) и ограниченности
исходной допустимой области М обычно нетрудно выбрать штраф­ную функцию Р( х ) так, чтобы все экстремумы х к существовали,а последовательность {#*} была ограниченной. В таком случае
можно показать, что эта последовательность при к°° сходитсяк точке экстремума (в данном случае максимума) функции }(х)в области М у т. е. к решению задачи оптимизации в ее исходной
постановке.
В так называемом методе барьеров при решении задачит а х / ( х ) при р ,* (я)> 0 (&= 1,пь) целевая функция / ( х ) за­меняется функцией
(* )= “/(* ) + гкВ (х ),гк > 0,где барьерная функция В ( х ) характеризуется свойством стре­миться к —оо при приближении х к границе допустимой областиМ изнутри. Иными словами, В ( х )—°о При Р({х) 0 хотя бы дляодного г =» 1, » . т . Такую функцию можно задать, например,формулой
твесли область М задана неравенствами рг ( х) > 0 (г — 1, . . . , т ) .
Как и в методе штрафных функций, выбирается последователь­ность {г*} положительных чисел г1> г2 > . . . > гк > . .. , сходя­щаяся к нулю. Решаются задачи без ограничений для целевых
функций Рк(х)=з ^(х) + гкВ ( х ) при к — 1, 2, . . . Если при этом ис­пользуется тот или иной численный метод, в котором начальная
точка выбирается внутри М , то наличие барьера обеспечит, чтоэкстремальная точка я;* (при ее существовании) также будет ле­жать внутри области М. Наличие же экстремума обеспечивается
условиями ограниченности области М и непрерывности функций}(х) и В ( х ) .
Решая задачу (без ограничений) при к=* 1, 2, .. ., мы находим
последовательность экстремальных точек {#*}, сходящуюся кэкстремальной точке и с х о д н о й задачи. Например, решая задачуш ах # при 1 —х > 0 , заменяем ее последовательностью задач
шах ( я —Для таких задач точка максимума (при движе­нии изнутри) будет задаваться формулой х к = 1 — Уг*. При гк -+0х к -*• 1. Точка х = 1 есть, очевидно, решение исходной задачи.
При переходе от задач максимизации к задачам минимизаций

достаточно переменить энак барьерной функции,- Все остальное
будет делаться точно так же,, как и в случае задачи максимизации.
Задачу с ограничениями можно реш ать и непосредственно ме­тодами градиентного спуска (подъема). При этом, однако, на каж ­дом шаге нужно выбирать очередную точку при соблюдении усло­вия ее принадлежности допустимой области. Кроме того, при по­падании точки на границу области очередной шаг, как правило,уже не может быть сделан в направлении градиента (антигра­диента) целевой функции, поскольку в этом направлении можетне существовать других допустимых точек (направление ведет
вовне допустимой области). Поэтому «чистые» градиентные ме­тоды заменяются движением в любом возможном (допустимом)направлении, т. е. в направлении, которое, во-первых, ведет
внутрь допустимой области, а во-вторых, обеспечивает нужное
направление изменения целевой функции.
Такое видоизменение градиентного метода приводит, однако,к дополнительным трудностям в связи с возможностью так назы ­ваемого з а к л и н и в а н и я . Сущность
заклинивания легко уяснить на про­стейшем примере максимизации функ­ции 2 = 1/ в области 1 — х 2 — у 2 > О,
т. е. в единичном круге с центром вначале координат (рис. 8.6). Ясно, чтоточкой максимума является точка С.
Если же двигаться к ней из точки А == А 0 так, что каж дая следующая точка
делит пополам дугу А кВ , то последоварИс. 8.6
тельность точек {А к} будет сходиться к В ,которая точкой максимума не является.
Для устранения заклинивания применяются специальные ме­тоды, обеспечивающие нужную степень «доворота» возможных на­правлений внутрь допустимой области.
8.4. Вы пуклая оптимизация
Задача оптимизации может быть значительно упрощ ена приналожении на целевую функцию Ц х ) и допустимую область Мнекоторых ограничений. Одним из таких ограничений являетсятак называемое условие выпуклости.
Множество М евклидова пространства назы вается вы пуклы м ,если для любых двух точек х 1 и х 2 этого множества все точки сое­диняющего их отрезка [х1, х 2] такж е принадлежат множеству М.
Из этого определения автоматически следует, что пересечение
любого числа выпуклых множеств такж е выпукло. Важность этого
свойства обуславливается тем обстоятельством, что, как уж е отме­чалось выше, допустимая область задается обычно системой ра­венств и неравенств (/?г(^)==80, Р ) ( х ) ^ 0, /> а (# )^ 0 ). Тогда длятого, чтобы такая система определяла выпуклое множество, доста­точно, очевидно, чтобы область, задаваемая каждым отдельным
равенством или неравенством, была выпуклой. Это автоматически
имеет место для так называемых линейны х ограничений, т. е. та­ких ограничений, у которых функции Рг(х) имеют вид Рг(х)=*= анх { + а 1гх 2 + . . . + аых п + 64, где х и ... , х п — координаты точки
х , и все коэффициенты ац и &, постоянны.
Ф ункция {(х) называется вы пуклой или, более точно, вы пуклойвн и з, если она определена на выпуклом множестве М и для лю­бых двух точек Xх и х 2 этого множества значение / ( х ) функции влюбой точке х отрезка [аг\ х 2] не превышает значения в той жеточке, определенной на данном отрезке линейной функции созначениями / ( # 1) и ] ( х г) в его концевых точках. Иными словами,если употреблять понятия «над» и «под» применительно к на­правлению вдоль оси 2, отрезок, соединяющий точки Л = ( 2ь # 1)
и Я = (22, х 2) в пространстве с координатами ( 2, х и . . . , х п), ле­ж ит над гиперповерхностью 2= / ( я ) . Д ля случая /г = 1 это ил­люстрируется рис. 8.7 и в общем случае выражается неравенством
а{(х*) + (1 — а ) / ( х 2) > / ( а # 1+ (1 — а ) х 2) при 0 < а ^ 1 . Легко ви­деть, что при 0 ^ а < 1 выражение аж1+ (1 — сс)х2 задает различ­ные точки отрезка [ х \ х 2]. Из вида приведенного неравенства сле­дует, что любая линейная функция выпукла.

Если в приведенном определении заменить знак неравенства ^нато получим определение вогнутой функции, или, что однои то же, функции, вы пуклой вверх. В двумерном случае возмож­ный график такой функции иллюстрирует рис. 8.8. Заметим,что согласно приведенным определениям любая линейная функция
может считаться как выпуклой, так и вогнутой.
Из определений выпуклости и вогнутости функций легко вы­вести, что такие функции обязательно непрерывны (хотя и необязательно дифференцируемы). Далее, для выпуклой функции
/ ( х ) область, состоящая из всех точек х , в которых / ( ж ) ^ а , гдеа — некоторая константа, представляет собой выпуклое (и притом:замкнутое) множество. То же самое имеет место и в случае вог­нутой функции в ( х ) для неравенства % ( х ) ^ Ъ , где Ъ — константа.
Заметим, что в случае а < п п п / ( ; г ) и Ь > т а х ^ ( д г ) оба эти мно­жества могут оказаться пустыми, что формально не мешает импродолжать оставаться выпуклыми и замкнутыми.
Условимся назы вать полученные области областями уровня,а их границы — гиперповерхностями (при /г = 2 — ли н и я м и , при
3 поверхностями) уровня рассматриваемых функций Ц х ) =*=Цхи . . . , Хп) П # ( * ) “ ? ( * , ,Хп).
Д ля выпуклой функции Ц х ) в любой точке х°, леж ащ ей в об­ласти определения М функции, существует вектор г(#°), длякоторого при любом х из М выполняется неравенство
Цх)-1{х°)>(г(х°), х - х ° ) .
В правой части этого неравенства стоит скалярное произведение
векторов г(х°) и х — х°, т. е. произведение длин этих векторовна косинус угла между ними. Вектор г ( х °), удовлетворяющий
этому свойству, назы вается обобщенным градиентом (субградиен­том) функции Ц х ) в точке х°. Обычный градиент (в случае егосуществования и отличия от нуля) является такж е обобщенным
градиентом (причем единственным обобщенным градиентом) в рас­сматриваемой точке. Если функция $(х) не дифференцируема внекоторой точке х°, в ней существует, вообще говоря, некоторое
множество обобщенных градиентов, называемое субградиентным
множеством функции ](х) в точке х °.
В большинстве случаев при оптимизации приходится иметь
дело с функциями, имеющими градиент п о ч т и в с ю д у . Это оз­начает, что множество М' точек, в которых оптимизируемая функ­ция не дифференцируема, имеет объем (меру), равный нулю.
В случае функции одной переменной множество М' состоит обыч­но из конечного числа точек, в случае функции двух перемен­н ы х — из конечного числа линий (и, может быть, отдельных то­чек) и т. д. При соблюдении подобного условия любая точка хобласти определения М функции Ц х ) может быть представленакак предел последовательности точек р =» {.г1, х 2, . . . , х к, ...} этойобласти, в каждой из которых функция /(# ) дифференцируема и,следовательно, имеет градиент гк = г ( х к). В большинстве встречаю­щихся на практике случаев последовательность р может быть выб­рана таким образом, что последовательность градиентов {ги г2, . . .
••м гк, ...} сходится к некоторому вектору г = г(дг), называемому
почти-градиентом функции Ц х ) в точке х .
П ринадлежа к классу обобщенных градиентов, почти-градиенТЬ1 не исчерпывают, однако, всего этого класса. Они составляюткак бы границы этого класса, что в двумерном случае наглядно
иллюстрирует рис. 8.9. На этом рисунке заш трихованная
Площадь представляет собой некоторую область уровня / ( # ) ^ авыпуклой функции /( # ) двух переменны хх = (# 1, # 2). Л иния АО Опредставляет собой множество М ' точек, в которых ф ункция /(х)|не дифференцируема и, следовательно, не имеет (обычного) гра­диента. В точке А имеются два почти-градиента этой функции,изображенные на рисунке векторами А В и А С . Первый из нихпредставляет нормаль к линии А КИ, а второй — к линии А Ь О .
Они получаются в качестве пределов градиентов г ( х к) функции/(ж), когда последовательности точек {хк}, сходящиеся к точке х 9выбираются соответственно на линиях А К О и А Ь В . Множество
обобщенных градиентов функции Ц х ) в точке А занимает весьсектор А В С .
8.4.1. Простой субградиентный метод выпуклой оптимизации.
К ак легко видеть из рис. 8.9, при движении в направлении, про­тивоположном обобщенному градиен­ту, значение выпуклой целевой функ­ции 1(х) не обязательно убывает.
Иными словами, это направлениеВ не обязательно ведет внутрь области
уровня. Подобное положение имеет
место, например, для почти-градиенРис. 8.9
тов А В и АС. Вместе с тем нетрудно
показать, что при небольшом пере­мещении в направлении, обратном любому обобщенному градиен­ту, например, при перемещении из точки А в точку Е (см.
рис. 8.9), расстояние до точки минимума О обязательно умень­ш ается (ОЕ меньше, чем ОА) . Это обстоятельство обусловлено
тем, что любая точка минимума О выпуклой функции }(х) леж итв пределах любой непустой области уровня. В силу же выпук­лости этой области угол О А Е будет непременно острым.
Из приведенных рассмотрений легко приходим к одной из про­стых идей метода субградиентной оптимизации. Д ля реализа­ции субградиентной оптимизации в случае задачи без огра­ничений процесс может начинаться с любой точки х°. Сдвиг оточередной точки х * к следующей точке х <+1 осуществляется нарасстояниев направлении любого обобщенного градиента ф унк­ции ]{х) в точке х 1 в случае задачи максимизации вогнутой ф унк­ции и в обратном направлении — в случае задачи минимизации
выпуклой функции. Если шаги 1{ сдвигов выбираются таким об­разом, что 1-+ 0 при г -*• °о, а ряд /0 + к + 1%+ . •. расходится, топоследовательность {х °,. . . , х ”\ ...} сходится к множеству
экстремума заданной функции / ( х ) при условии, что множество
ограничено.
Заметим, что в задачах выпуклой оптимизации без ограниче­ний любая экстремальная точка является точкой абсолютного
экстремума. Что же касается задачи с ограничениями, то, каклегко видеть, рассмотренные выше методы ее сведения к задаче

без ограничений годятся не только для дифференцируемых, но идля произвольных непрерывных функций. Важно лишь уметь вы­числять субградиенты для измененных целевых функций.
Д ля вычисления субградиентов применяются различные спо­собы. Одним из них является сведение задачи вычисления субградпента функции, заданной сложным выражением, к вычислению
субградиентов отдельных компонент этого выражения. Д ля подоб­ного сведения особенно часто применяются следующие свойства
выпуклых функций.
С в о й с т в о 1. Если функции /Д # ), ,/ т (#) выпуклы, тотвыпуклой будет и любая их линейная ком бинация/ (#) = 2 а*/* (х)
1=1с неотрицательными коэффициентами а{ ( а * ^ 0 , 1= 1,т ),а субградиент Я (#) этой комбинации равен соответствующей ли­гинейной комбинации 2 а*ЯД#) субградиентов ЯД#) функций /Д #)*1=1С в о й с т в о 2. Если функции /Д # ),/т (# ) выпуклы, ТОвыпуклой будет и функция /( # ) = ш ах /Д #), и все субградиентные
1множества ЯД#0) функций /Д # ), для которых /Д # 0) = /(# ) входятв субградиентное множество Я(#°) функции /(# ) в любой заданной
точке # = #°.
Свойство 2 имеет особо важное значение, поскольку на прак­тике большинство случаев возникновения недифференцируемости
происходит в результате применения операций ш ах (для задач
гминимизации) и пип (для задач максимизации) к дифференцируе1мым (часто даже к линейным) функциям /Д # ). Пусть, например,в одномерном случае /(# ) = ша х / Д # ) , где /Д # ) = #, М # ) ^г= 2 —х. График функции / (#)приведен на рис. 8.10. В точке
# = 1 функция / ( #) не дифферен­цируема. Так как /Д 1 ) = /Д 1 ), топо свойству 2 субградиенты ЯД#)и Я2(#) функций /Д # ) и /Д # ) вточке # = 1 входят в субградиент
Я(1) функции /( # ) в этой точке..
Но субградиенты функций /Д # )и
/ 2(#) в силу дифференци­руемости
этихфункций
равны

Рис. 8.10

ихградиентам:*5>1(,#) == ^ ./ х ( ^ ) = '1 , 5 г {х) = § ^ и ( х ) = — 1- Посвойству 2 ф у н кц и и 5,(1);и Я2(1) входят в субградиент Я (1).
Д ля выпуклых функций справедливо следующее свойство*С в о й с т в о 3. Субградиент 5(,г) выпуклой функции Ц х )в любой точке представляет собой выпуклое множество. Иными
словами, если векторы г4(х ) и г2(х) принадлеж ат 8 ( х ), то векторыа г ,(# ) + (1 — а ) г 2(х) при 0 < а ^ 1 такж е принадлеж ат 8 ( х ).
Используя это свойство в рассматриваемом примере, приходимк тому, что субградиент 5 (1 ) функции /(# ) = т а х ( я , 2 — х \в точке # = 1 составляют числа (одномерные векторы) а + (1 —— а ) (—1) — 2 а — 1 при 0 < а < 1 .
Заметим, что все приведенные свойства (с заменой т а х на т тIгв свойстве 2) имеют место не только для выпуклых, но и длявогнутых функций.
8.4.2.
Методы растяж ения пространства. Рассмотренный в пре­дыдущем пункте простой субградиентный метод может оказаться
весьма медленно сходящимся, если области уровня целевой функ­ции сильно вытянуты в одном направлении, или, как часто в этомслучае говорят, имеют вид узких и длинных о в р а г о в . В дву­мерном случае пример такого оврага показан на рис. 8.11. Одноиз возможных направлений обобщенного антиградиента в точке Аминимизируемой выпуклой функции }(х) показано вектором А Е Гнормальным к верхней линии уровня. В случае наличия оврага
угол ОАЕ близок к прямому, так что расстояние ОЕ (где О —точка минимума) меньше расстояния ОА лишь на весьма малую
величину. При движении в подобных плохих направлениях при­ближение к точке минимума О будет совершаться весьма мед-*ленно.

Рис. 8.11

Рис. 8.12

Заметим, что овражная ситуация характерна для многих проб­лем негладкой оптимизации. Д ля улучш ения сходимости методав подобных случаях имеются методы растяжения пространства.
Если в ситуации, изображенной на рис. 8.11, пространства
растянуть в направлении «плохого» обобщенного антиградиента
(или, что то же самое, обобщенного градиента А Е ), то придемк ситуации, изображенной на рис. 8.12. Овраг при этом растя­нется в ширину, а угол О А Е в результате уменьшится, чтообеспечит увеличение быстроты сходимости субградиентного
спуска.
Недостаток описанного способа растяж ения пространства про­является в случае, когда выбранное направление обобщенного

1антиградиента будет хорошим, например, совпадающим с векто­ром АО на рис. 8.11. Тогда растяжение лишь удлинит овраг и ещеболее ухудшит сходимость.
Гораздо лучшие результаты получаются при выполнении рас­тяж ения пространства в направлении разности обобщенных почтиградиентов в двух близких друг к другу точках или даже в одной
точке при условии заведомой недифференцируемости целевой
функции / ( х ) в этой точке. Н а рис. 8.11 применение этого приемав точке А приведет к растяжению пространства в направлении
вектора Е Ь , т. е. в подходящем для растя­жения направлении.
Быстрое изменение направления гради­ента при смещении в близкую точку на Iпрактике свидетельствует, как правило, отом, что мы перескакиваем через дно оврага содного его склона на другой. В этом случае
разность градиентов покажет направление Епоперек оврага, что и обеспечит правильное
Рис 81знаправление растяж ения пространства. Си­туация, описывающая подобный скачок градиента, изображенана рис. 8.13. Разность градиентов А Е и В О задается векторомЬЕ (векторы А Ь и ВО равны между собой).
В алгоритмах, использующих растяж ение пространства в на­правлении разности двух последовательных градиентов, шаговый
множитель выбирается путем приближенного поиска минимума понаправлению, при этом в случае неоднозначности вычисления
обобщенного градиента в очередной точке выбирается тот, кото­рый образует с направлением движения острый или пря­мой угол.
Растяжение пространства сводится к замене переменных
. .. , х п в целевой функции
=. . . , х п) некоторыми ихлинейными комбинациями. Особенно просто выполняется растя­жение в направлении одной из координатных осей. Переменная
соответствующая этой оси, заменяется при этом наА;- 1 #*, гдек —- коэффициент растяж ения, а остальные переменные остаютсябез изменения.
8.4.3.
Методы с уточнением выбираемого направления. В по­следние годы большое распространение получили методы выпук­лой оптимизации, использующие информацию о субградиентах
функции в точках, близких к заданной, для уточнения направле­ния спуска (подъема) из заданной точки. В большинстве случаев
такое уточнение позволяет выбрать направление спуска (подъе­ма), ведущее внутрь области уровня, на границе которой лежит
рассматриваемая точка. Благодаря этому открывается возможность
использования метода полношагового спуска (подъема), ускоряю­щего, вообще говоря, процесс приближения к экстремуму.

Заметим, однако, что подобные уточнения усложняют каждыйшаг процесса оптимизации. Может случиться, что эти усложненияне будут скомпенсированы уменьшением числа шагов движенияк экстремуму. Поэтому на практике желательны компромиссы,приводящие к достаточно хорошим направлениям за разумное
время. Целью подобных компромиссов является обеспечение наи­большей скорости работы всего алгоритма оптимизации в целом.
8.4.4.
Метод эллипсоидов. В случае задачи выпуклой оптими­зации с ограничениями, как правило, удается так определить до­пустимую область М о, что она оказывается ограниченной. Заклю ­чив область М 0 в сферу 5 0, проведем какую-либо гиперплоскость
Р 0 через центр этой сферы.
В силу выпуклости (вогнутости) целевой функции }(х) любой
обобщенный градиент (антиградиент) в произвольной точке гипер­плоскости Р 0 внутри сферы 5 0 будет указывать в ту полусферу,где находится максимум (минимум) функции ](х) в случае еевогнутости (выпуклости). Выбирая нужную (содержащую экстре­мум) полусферу Д/0, описываем вокруг нее эллипсоид Ь0 мини­мального объема.
Эллипсоид и оказывается сплюснутым в направлении гра­диента ? /( * .) , а его центр лежит на луче, проходящем через х &в направлении антиградиента. Произведя операцию растяжения
пространства в направлении градиента, превращаем эллипсоидв сферу «У|.
Д ля сферы 5 4 повторяем описанный процесс, получая эллип­соид Ь 1 и новую сферу 5 2. Продолжая подобным образом, получим(с учетом изменения масштабов на каждом шаге) последователь­ность сфер {$о, 51, . . . , 5 Ьуменьшающегося объема, которыйв пределе стремится к нулю. Так как искомая точка экстремума
функции ](х) находится внутри каждой из сфер 5„ то последова­тельность {50, 5 4, ...} , стягивается к этой точке. Фактически (безучета изменения масштабов) точка экстремума аппроксимируется
последовательностью эллипсоидов уменьшающегося объема.
При наличии множества точек экстремума указанный процесс
приводит к аппроксимации одной из них. Разрезание множества
экстремума гиперплоскостью может привести к случаю наличияв некоторых ее точках нулевого градиента. Это значит, что полу­чена точка экстремума.
Метод эллипсоидов сходится со скоростью геометрической про­грессии, если скорость сходимости измерять по отклонению наи­лучшего достигнутого на данном шаге значения Цх ) от оптималь­ного, при этом знаменатель геометрической прогрессии зависит
только от размерности пространства п асимптотически;При больших п оп близок к 1, что обуславливает практически
медленную сходимость метода. Отметим, что метод эллипсоидов
является частным случаем метода обобщенного градиентного спус­ка с растяжением пространства в направлении градиента. Благо­даря законченности теории сходимости метода эллипсоидов, онбыл использован для построения и обоснования полиномиального
алгоритма реш ения задачи линейного программирования с целы­ми коэффициентами.
8.5. Н егладкая оптимизация
Описанные в § 8.4 методы оптимизации выпуклых (вогнутых)функций не предполагают гладкости этих функций. О тказ отсвойства выпуклости (вогнутости) наруш ает, вообще говоря, схо­димость указанны х методов. Однако, если начальное приближение
находится достаточно близко к какому-либо экстремуму (локаль­ному или абсолютному) произвольной непрерывной негладкой
функции /( # ) , методы § 8.4 (за исключением метода эллипсоидов)на практике обычно приводят к его нахождению с любой требуе­мой степенью точности. В этом (несколько условном) смысле мож­но говорить о применимости описанных методов к общим задачам
локальной негладкой оптимизации. «Патологические» примеры,которые опровергают абсолютную их применимость, на практике
встречаются достаточно редко, поэтому их можно игнорировать.
8.5.1.
Метод координатного спуска (подъема). При оптимиза­ции недифференцируемых функций в принципе можно вообще
отказаться от любых обобщений понятия градиента, используя
лишь шаги вдоль осей координат. С этой целью исследуют значе­ния целевой функции
. . . , х п) на очередном шаге оптимиза­ции с приращением ±б< одной из координат и переходят от точки
(#1? . . . , х п) к точке (хи . . . , а;,-!, х г ± 6*, а\+ь . . . , х п), выбирая знакприращения таким образом, чтобы значение функции } ( х и . . . , х п)изменялось в нужном направлении (увеличивалось при максими­зации и уменьшалось при минимизации). Величина 6* выбирается
обычно как в полношаговых методах, обеспечивая максимальное
возможное изменение функции в выбранном направлении.
Сдвиги совершаются поочередно по всем осям координат, при­чем после сдвига по последней оси х п снова возвращаются к пер­вой оси х^. Повторяя указанны й процесс достаточно большое число
Раз, как правило, можно найти сколь угодно хорошее приближе­ние некоторого экстремума заданной негладкой функции, предпо­лагая, разумеется, что такой экстремум (обычно локальный) су­ществует. Преимуществом метода является крайняя простота к а ж ­дого шага, поскольку вопрос о направлении сдвига реш ается безкакого-либо намека на дифференцирование или его обобщение.

8.5.2.
Стохастическая оптимизация./ Йногда оказывается по­лезным заменить сдвиги вдоль координатных осей сдвигами (с под­ходящим энаком) вдоль случайно выбираемого на каждом шагенаправления. При достаточно общцх предположениях в результате
таких сдвигов с вероятностью единица за достаточно большое
число шагов экстремальная точка может быть аппроксимированас любой требуемой степенью точности. Подкупающим достоинст­вом метода является (как и в предыдущем случае) простота
каждого отдельного шага оптимизации. Однако число шагов посравнению с методами, обеспечивающими поиск «хороших»направлений движения, у подобных простых методов, как прави­ло, значительно больше. Поэтому на практике они могут
оказаться (и во многих случаях действительно оказываются) ме­нее эффективными, чем более сложные методы, использующие
понятие субградиента и различные дополнительные приемы ус­корения сходимости.
8.6. Линейное программирование
Одной из наиболее часто встречающихся задач выпуклой опти­мизации является так назы ваемая задача линейного программиро­вания, в которой как целевая функция, так и все ограничения
линейны. Для реш ения этой задачи могут быть, разумеется, при­менены общие приемы выпуклой оптимизации, описанные в § 8.4.
Однако на практике для этого случая употребляют иные, более
простые приемы, с одним из которых (так называемым симплексметодом) мы познакомимся нпже.
Заметим, что встречающиеся на практике постановки задач
линейного программирования предусматривают еще одно дополни­тельное ограничение, а именно условие н е о т р и ц а т е л ь ­н о с т и значений всех переменных. Далее, как уж е отмечалось
выше, ограничения типа неравенств рг ( х ) > 0 или р{{ х ) ^ 0 вве­дением дополнительных переменных с неотрицательными зна­чениями превращаются в равенства рг(#) — 2*= 0 или р*(#)+ 2г = 0.
Кроме того, простым изменением знака целевой функции задача
нахождения максимума сводится к задаче нахождения минимума,так что, не наруш ая общности, в линейном программировании
можно ограничиться лишь решением задачи минимизации.
Суммируя все сказанное, приходим к стандартной постановке
задачи линейного программирования:Найти минимум линейной функции й + с1х 1+ с2х 2+ . . . + спх ппри ограничениях Ь» + а1{х { + а12х 2 + . . . + а1пх п = 0 ( 1 = 1 , . . т ),

Ъ > 0 (у = 1,п).

Иными словами, речь идет о нахождении неотрицательного ре­ш ения х = ( х {, . . . , х п) заданной системы линейных алгебраических

пуравнений Ь%+ 2агзх з = 0 (& = 1, . . . , т )%обращающего в ми-

3=1пнимум значение заданной линейной функции д, + 1 2 ср).
3=1Задача линейного программирования может не иметь реш енияппо следующим причинам: 1) система 5 уравнений

+ 2 агзх з
3=1(1 = 1, . . . , т) несовместна, т. е. вообще не имеет решений; 2) си­стема 5 не имеет ни одного неотрицательного решения; 3) намножестве М неотрицательных решений системы 5 целевая функп

ция / = й + 2 цху может принимать сколь угодно большие по аб3=1

солютной величине отрицательные значения, т. е. т т / = — оо.
мПоследняя причина исключает конечные реш ения, которые
единственно и могут иметь практический интерес.
В случае, когда система 5 имеет единственное неотрицатель­ное решение, оно, очевидно, и будет представлять собой решение
задачи линейного программирования. Н а практике, однако, с та­ким случаем сталкиваться почти не приходится. Речь идет, таким
образом, о случае, когда система 5 имеет множество М неотрица­тельных решений. Нетрудно показать, что это множество (еслионо не состоит из одной точки) будет непременно бесконечным.
В этом случае число независимых уравнений в системе 8 должно
быть меньше числа п переменных, которое мы будем называть
размерностью задачи линейного программирования. Это означает,что если в исходной системе 5 отброшены все зависимые уравне­ния, то т ^ п, причем при т = п система 8 в силу независимости
уравнений имеет единственное решение, так что нетривиальная
постановка задачи линейного программирования предполагает
строгое неравенство т < п. Заметим, что даже в таком случае не­отрицательное решение может оказаться единственным. Нетрудно
доказать, однако, что такое решение должно иметь п — т нуле­вых координат.
8.6.1.
Симплекс-метод. Один из наиболее распространенных
методов решения задачи линейного программирования в стандарт­ной постановке состоит в последовательном применении к линей­ным функциям так называемых сим плексны х преобразований,представляющих собой решение одного из ограничивающих уравп

нений Ь{ + 2агзх з = 0 относительно какого-либо неизвестного

3=1подстановки найденного таким образом значения
остальные ограничивающие уравнения и в целевую
^ В. м. Глушкоп
Иво все
функциюпУ= ^ + 2/

сзх з* При этом предполагается дополнительно, что всо

3=1ограничивающие уравнения были записаны в так называемой
правильной форме и что правильность формы сохраняется и по­сле выполнения преобразования.
П равильная форма записи ограничений предполагает наличие
двух типов линейных уравнений: 0-уравнений
0 = В — (А 1х 1+ А 2х г + . . . + А пХп),где

В > О,и ^-уравнений
х, = О —(с{х 1 + . . . ++ сш х ^ 1+ . . . + спх п) , где Б ^ О,которые при фиксированном / будем называть ^-уравнениям и.
Ясно, что, меняя в случае необходимости (при Ь*< 0) знаки упвсех членов уравнения Ь{ + 2аих з = 0»его всегда можно прпве-3=1

сти к виду 0-уравнения. К виду же ^-уравн ени я можно привести
плиш ь такое уравнение Ъх + 2 а гзхз = 0» У которого знаки коэффи3=1

циентов Ъг ипротивоположны (точнее, для которого соблюда­ется условие Ъгйц ^ 0). При приведении к лг,-виду 0-уравнения,пзаписанного в правильной форме 0 = В — 2необходимым

3=1условием такого приведения является соблюдение условия ВА$ ^ 0.
При этом из числа 0-уравнений, которые удовлетворяют дан­ному условию, для симплекс-преобразования выбирается одно из
тех 0-уравнений, у которых отношение В /А , имеет наименьшее
значение. Выполнение этого условия обеспечивает сохранение не­отрицательности свободных членов 0-уравнений, в которые про­изводится подстановка найденного выраж ения для х$.
Проиллюстрируем выполнение симплексного преобразования напримере задачи линейного программирования: найти минимумф ункции / = 6 —от — 3у в области 5, заданной системой неравенств
х + у ^ 3; у ^ 2, х > 0, у ^ 0. Прежде всего, вводя новые неотри­цательны е переменные и и 2, обратим нетривиальные ограничи­вающие неравенства в равенства
х + у + и = 3, у + 2 = 2и перепишем их в правильной форме (в виде 0-уравнений)0 = 2 —(у + 2),

0 = 3 —(х + у + и) .

Выбираем какую-либо переменную, для которой хотя бы одноиз последних уравнений удовлетворяет первому условию (В А
> 0 ) . Такими в рассматриваемом случае будут все переменные^фиксируем одну из них, например, у. Первому условию ( В А 3^ 0)
для переменной у удовлетворяют оба уравнения. По второму ус­ловию ^ т тдля симплексного ^/-преобразования выбирается

первое уравнение, у которого ВА4* = 2, против В /А 3= 3 для вто­рого уравнения. Разреш ая первое уравнение относительно у иподставляя найденное выражение для у во второе уравнение, вы­полняем тем самым симплексное ^-преобразование. В результате
получаем систему уравнений:у = 2 —( 2),

0 = 1 — (х — 2 + и ).

Первая цель симплекс-метода состоит в том, чтобы путем по­следовательных симплексных преобразований исключить все
0-уравнения. В нашем случае для этой цели может подойти как^-преобразование, так и «-преобразование. Выполняя первое изних, приведем систему ограничивающих уравнений к видуг/ = 2 — г,

# = 1 —(—2 + и) .

При достижении первой цели тривиальным образом реш ается
задача нахождения одного из возможных неотрицательных реше­ний рассматриваемой системы уравнений. С этой целью достаточ­но, как легко видеть, приписать нулевые значения всем перемен­ным в правых частях дг-уравнений и вычислить тем самым зна­чения переменных, стоящих в их левых частях. Эти последние
значения будут равны свободным членам правых частей дг-уравненнй, которые в силу правильности я-уравнений неотрицательны.
В нашем случае указанны й прием дает неотрицательное решение
системы:х = 1, у = 3, 2 — 0, и = 0.
Если первая цель симплекс-метода оказывается недостижимой,то это свидетельствует об отсутствии у системы ограничивающих
уравнений неотрицательных решений, а следовательно, и о нераз­решимости поставленной задачи линейного программирования. Этоимеет, например, место при единственном ограничении 0 = 1 ——(—д: — у — и ), к которому симплекс-преобразования оказывают­ся неприменимыми. При наличии у системы неотрицательных ре­шений все 0-уравнения могут быть исключены с помощью симп­лексных преобразований, что и было сделано в рассматриваемом
нами случае.
После достижения первой цели все ограничивающие уравне­ния оказываются записанными в виде, разрешенном относительно
некоторого множества переменных х3. Множество этих переменных
называют базисом, к которому приведена система. На следующем
шаге выражения для переменных базиса подставляются в целевую функцию /. Может оказаться, что после такой подстановки ввыражении для / все коэффициенты при оставшихся (небазис­ных неизвестных окаж утся неотрицательными: / * ргде2<7, ^ 0. Поскольку X} > 0, то минимальное значение функции /(равное свободному члену р) получается при д^ = 0 для всех не­базисных х Т ак как все базисные переменные при этом такж еполучают неотрицательные значения, то задача линейного про­граммирования оказы вается решенной.
Это как раз и имеет место в рассматриваемом нами случае.
После выполнения подстановок у = 2 — 2, ж - 1 - (—2 + и) в це­левую функцию / = 6 —ж —3у она приобретает вид / = —1 + 22+*+ и с положительными коэффициентами при небазисных пере­менных. Поэтому найденное решение ж — 1, у = 2, 2 = 0, а = 0системы ограничивающих уравнений реш ает задачу линейного
программирования: минимум функции / = 6 —ж —3у достигается
(при заданных ограничениях) в точке х = 1, у = 2, а его значе­ние равно —1.
При другой целевой функции, например функции # = 4 — ж + у,подстановка найденных значений х п у приводит к результату
у = 5 — 2г + и.
Поскольку коэффициент при 2 отрицателен, приведенные вышерассуж дения не имеют места. Д ля полного реш ения задачи ли­нейного программирования необходимо продолжить симплексные
преобразования с целью (которую назовем в т о р о й ц е л ь ю )устранить все отрицательные коэффициенты в выражении дляцелевой функции. Для этого в базис вводятся (вместо некоторых
переменных, введенных ранее) те переменные, у которых коэф­фициенты в (преобразованной) целевой функции отрицательны.
В данном случае такой переменной является 2. Вводя ее в базис
вместо переменной у (для чего г/-уравнение решаем относитель­но г), получим
2 = 2 — у, х = 3 — (у + и ).
Подставляя найденные выраж ения в целевую
приведем ее к виду# = 1 + у + и.

функцию

Поскольку вторая цель достигнута (все коэффициенты при не­известных в целевой функции неотрицательны ), то, полагая у = п == 0, вычислим 2 = 2, х = 3, $ = 1. Таким образом, при заданных
ограничениях ф ункция принимает минимальное значение, рав­ное 1, в точке с координатами х = 3, у = 0.
После достижения второй цели приведенная целевая функция
может оказаться не зависящ ей от некоторых небазисных пере­менных. Ясно, что таким переменным можно придавать произ-дольные (разумеется, в соответствии с принятым согласованием,неотрицательные) значения, не меняя значения целевой функции.
В этом случае задача линейного программирования имеет мно­жество решений, задаваемых выражениями, в которых указан­ные переменные выступают как параметры.
Зам еняя в рассматриваемом нами примере целевую функциюд а функцию А = 4 — # — г/ и приводя ограничения к уже полу­ченному выше виду I/= 2 — 2, # = 1 —(— 2 + и), подставим этизначения в целевую функцию. После подстановки она приведетсяк виду й = 1 + и. Минимум этой функции (равный 1) достигает­ся при и = 0 и произвольном 2. Поэтому решениями задачи будутвсе точки с координатами # = 1 + 2, */ = 2 — 2 с условиями 2 > 0 ,# = 1 + 2 ^ 0 , у = 2 — 2 > 0. Отсюда следует, что 0 ^ 2 ^ 2. И так,решение задачи дают все точки (1 + 2, 2 — г) при 2, меняющемсяв пределах 0 < 2 ^ 2.
Заметим, что вторая цель даже при условии достижимости
первой цели может оказаться недостижимой. Это происходит вся­кий раз, когда рассматриваемая целевая функция / не имеет ми­нимума в заданной области М (т т / = — оо\. Например, приVм;/ = 1 — х и ограничениях х + у&* 1, # ^ 0 , у > 0 после сведения
неравенства к равенству # + */ — 2 = 1 0-уравнение будет иметь
вид 0 = 1 —(# + у — г ) . Это уравнение может быть симплексно
разрешено как относительно #, так и относительно у: х = 1 —— (у — 2), у = 1 — (# — 2). В обоих
случаях целевая функция не приво­дится к требуемому виду: в первом
случае / = у — 2, во втором / = 1 — х.
К ак видно из рис. 8.14, допусти­мая область (на рисунке заштрихо­вана) бесконечна вправо и вверх,а целевая функция неограниченно
убывает по мере роста х.
Имеется еще одна причина, котои
«грая может помешать решению заРис. 8.14
дачи линейного программирования
симплексным методом даже в /о м случае, когда такая задача име­ет решение. Это так называемое зацикливание. Оно заключаетсяв том, что после выполнения некоторого числа симплексных пре­образований система ограничивающих уравнений возвращается кисходному виду, не исчерпав всех базисов и в том числе базиса,ь котором достигается вторая цель (требуемый вид целевойФ ункции).
Для устранения зацикливания в симплекс-метод вводятся спе­циальные дополнения, которые рассматриваются в более подроб­ных курсах. С такими дополнениями симплексный метод приво-дит к решению задачи линейного программирования во всех слу­чаях, когда такое решение существует.
Симплексный метод требует довольно сложных вычислений.
При N неизвестных и М уравнениях число арифметических опе­раций, необходимых для выполнения одного симплексного преоб­разования, выраж ается приближенно формулой 2МN. Д ля дости-.
ж ения первой цели потребуется М таких преобразований, т. е.
2М 2N арифметических операций. Для достижения же второй це­
ли (полного реш ения задачи линейного программирования) нуж­ны будут, как правило, многократные изменения первоначального
базиса, что еще более усложняет задачу. В исходной постановкепри п неизвестных и к ограничивающих неравенствах (без допол­нительных равенств) N = 4 + к, М = А, так что на одно симплекс­ное преобразование тратится 2к (п + к) арифметических операций.
Из симплекс-метода непосредственно следует, что для стан­дартной формы задачи линейного программирования с М линейно
независимыми ограничениями типа равенств всегда имеется ре­шение, содержащее не более М ненулевых значений переменных.
8.6.2.
Транспортная задача. В некоторых частных случаях ре­шение задачи линейного программирования может быть значи­тельно упрощено. Наиболее важным из таких случаев являетсятак называемая транспортная задача, называемая такж е иногда
задачей о назначениях. К ак станет ясно из дальнейшего, пере­менные в этой задаче удобно снабжать парой индексов г, /. Еслипервый индекс пробегает ш значений, а второй п значений, тообщее число переменных Хц (размерность задачи) равно, очевид­но, гпп. Сущность задачи состоит в минимизации целевой функциитп

/ = 2 2 сахг)*=1 ^=1
при т + п ограничениях типа равенств:
п

^

т

х%
3“

2]&Ц ^ Ъ).

1=1

3— 1

Обычно предполагается дополнительно соблюдение равенстватп

2 аг = 2
г— 1

Ъ^

3— 1

иначе задача не будет иметь решений. Общее число независимых
ограничений — равенств уменьшается на единицу, равняясь темсамым т + п — 1.
К ак следует из результатов предыдущего пункта, при этомусловии имеется решение сформулированной задачи минимиза­ции, содержащее не более т + п — 1 ненулевых значений пере­менных Хц. Мы будем называть их назначениям и.

IН азвание транспортной рассматриваемая задача получила по­тому, что к ней сводится оптимизация плана перевозок грузовиз т п у н к т о в о т п р а в л е н и я с запасами аи . . ат в пп у н к т о в н а з н а ч е н и я с потребностями Ъи . . Ьп. Роль ко­эффициентов Сц в целевой функции играют удельные стоимости,т. е. стоимости перевозки одной единицы груза из пункта г впункт /. Задача состоит в минимизации общей стоимости перевоз­ки грузов при условии, что грузы оказываю тся полностью выве­зенными из всех пунктов отправления и потребности всех пунк­тов назначения оказываю тся полностью удовлетворенными. Име­ются и другие интерпретации рассматриваемой (частной) задачи
линейного программирования.
При решении транспортной задачи пользуются двумя т Х / г матрицами: матрицей планов Р = | р у | и матрицей стоимостей
С = \ с ц \ , подвергая их специальным преобразованиям. Д ля фор­мирования матрицы Р на начальном шаге делается ровно т 4- п —— 1 назначений (некоторые из них могут быть нулевыми) так, чтопбы, во-первых, удовлетворялись условия 2 ХИ “ а%(1 —I». • • •» т )а;=1
т2 %г;=

7= 1( / в 1» **•> и), а во-вторых, чтобы выбранные (для на-значений) элементы матрицы не образовывали ни одного ц и кла .
Под циклом здесь понимается последовательность элементов мат­рицы и • /2, . • к +1(& > 1), начинающ аяся и кончающ аяся од­ним и тем же элементом (любые ее два соседних элемента распо­ложены либо в одном столбце, либо в одной строке). Пример та­в которой явнок квыделены лишь элементы, образующие цикл. При этом элементы
1и к, 15 составляют так называемый нечетный п о луц и кл цикла
(иЫъЫьии) (С фиксированным началом /±) , а элементы /2, к> к —четный полуцикл.
Удовлетворяющий этим условиям начальный выбор может
быть сделан последовательным (по строкам, а внутри строки — постолбцам) при помощи максимальных назначений, лимитируемых
лишь имеющимися запасами и потребностями. Например, для а{ == 10, а2 = 15, я3 = 20, Ъ{ = 15, Ъг = 15,= 10, Ь4 = 5 начальные
назначения задаются следующей таблицей:кого цикла (и и и К и и и ) дает матрица

15

10
15
20

10
5

15

10

10
5

10

5

Строки этой таблицы озаглавлены запасами а% в пунктах отправ­ления, а столбцы — потребностями Ь, в пунктах назначения. Пер­вое назначение в первой строке исчерпывает весь запас в первом
пункте отправления, второе назначение исчерпывает остающиеся
потребности первого пункта назначения и т. д. Общее число на­значений (равное 6) удовлетворяет условию т + /г — 1 = 3 + 4 —— 1 = 6, циклы отсутствуют, так что начальную матрицу планов
10 О О О
5 10 0 0Ро =0

5 10 5можно считать построенной.
Пусть матрица удельных стоимостей имеет вид
12 3 4 4
С = 3 4 3 3
4 3 2 4Ж ирным шрифтом мы выделим в ней элементы, соответствующие
сделанным назначениям. Преобразования матрицы С состоят вприбавлении ко всем элементам одной и той же строки или одно­го и того же столбца некоторой константы (прложительной илиотрицательной). Целью таких преобразований является обраще­ние в нуль всех выделенных элементов м атри ц ы *).
Прибавляя к строкам матрицы С числа —3, —4, —3, а к столб­ц а м — числа + 1 , 0, + 1 , —1, превратим ее в матрицу
0 0 2
0
Сх =
00 0 — 2
2 0 00Если бы все элементы матрицы Сх были неотрицательными, то,как можно показать, первоначальный выбор назначений давал быоптимальное решение. Поскольку в нашем случае дело обстоитне так, применяется процедура исправления начальных назначе­ний. Д ля исправления присоединяем к уже выделенным элементам
матрицы Сх ее наибольший по абсолютной величине отрицатель­ный элемент (в данном случае элемент с24 = 2 ). Если начальный
выбор содержал точно т + п — 1 элементов, то, как нетрудно
доказать, при таком присоединении обязательно образуется
цикл из выделенных элементов, в данном случае цикл (с24 =—■ 2, с24 === 0, С32~ 10, с220, с24) .

Рассмотрим теперь соответствующий цикл ро = (р24, Рзь, Дзг, Рп,р 2к) в матрице планов Р и превратим его в цикл (р24 + р, д 34— р УРзг + р , Ргг — р У Ргь + р ) , где р — наименьш ая величина в четном
*) В случае, когда выделенные элементы матрицы не составляют цик­ла, достиж ение этой цели оказывается всегда возможным.

полуциклергг) цикла ро (величина р как бы сдвигается изкаждого элемента четного полуцикла к следующему за ним эле­менту нечетного полуцикла). В нашем случае =Произ­
водя указанное преобразование цикла и исключая из числа выде­л е н н ы х элементов вновь возникший нулевой элемент р ЗА — р, при­дем к новой матрице планов Р 4:
10 О 0 01
5 5 о 5
О 10 10 оЗдесь, как и раньше, полужирным даны выделенные элементы.
Выделяем те ж е элементы в матрице С4:

С[=

0 0 2
О
0 0 0 — 2|]2 О ООПрибавляя к последнему столбцу число + 2 , приведем матрицук виду
10 0 2 2|о О О О
2 0 02

с нулевыми выделенными элементами, не содержащую отрица­тельных элементов. Это означает, что план Р 4 оптимален.
Суммарная стоимость перевозокпо этому плану равна
=*в 1 0 - 2 + 5 * 3 + 5 - 4 + 5 * 3 + 1 0 - 3 + 1 0 * 2 = 120, в то время каксуммарная стоимость перевозок 8 0 по начальному плану Р 0 быларавна 5 0 = 1 0 - 2 + 5 - 3 + 1 0 - 4 + 5 - 3 + 1 0 - 2 + 5 - 4 - 130.
При другой матрице стоимостей, например матрице
2 3 4 43 4 2 313 2 4Для перехода к оптимальному плану
О О
О 10
5
О О

О 10

Р - " О15потребовалось бы несколько шагов исправлений начального пла­на. При той же стоимости 5 = 130 начального плана оптималь­ный план дал бы значение стоимости, равное 95, т. е. значитель­но меньше по сравнению с начальным вариантом.
К ак и всякая задача линейного программирования, транспорт­ная задача может иногда иметь не один, а множество оптималь­ных планов. На такую ситуацию указывает наличие дополнитель­ных (помимо выделенных) нулей в заключительной (преобразо-ванной) матрице удельных стоимостей. Присоединяя эти нулиточно так же, как мы поступали с отрицательными элементами,можно двигать вдоль возникающих циклов те или иные количест­ва грузов, не наруш ая при этом оптимальности плана.
Например, в заключительной матрице С2 рассмотренного вышепримера можно образовать цикл из нулевых элементов (с21, с22,
с^2, Си, С21) и передвинуть в нем какую-нибудь величину груза,скажем с22. В результате получим новый план
7
8

0

3
2

0

0

0
5

10 10 0со значением общей стоимости перевозок 5 1= 7 - 2 + 3 - 3 + 8 - 3 ++ 2 - 3 + 5 * 3 + 1 0 - 3 + 1 0 * 2 = 120. Таким образом, этот план, каки план Р и является оптимальным.
С помощью подобных замен в пределах множества оптималь­ных планов можно добиться того, чтобы план, не теряя свойства
оптимальности, приобрел некоторые дополнительные полезные
свойства. Разумеется, для этого необходимо, чтобы транспортная
задача обладала не одним, а многими решениями, что, конечно,на практике встречается далеко не всегда.
8.7. Целочисленное линейное программированиеВ ряде случаев на практике приходится встречаться с такими
задачами линейного программирования, в которых допустимы
лишь целочисленные решения. Иными словами, все координаты
эстремальной точки должны быть обязательно целыми числами.
В случае транспортной задачи целочисленность реш ения при це­лых сц (г = 1, . . . , га) и Ъ5 ( / = 1 , . . . , п) обеспечивается автома­тически изложенным в предыдущем пункте методом решения
этой задачи.
В общем случае получение целочисленного реш ения требует
применения специальных методов, включающих в себя как со­ставную часть методы линейного программирования. Наиболее
часто для этих целей применяются методы о т с е ч е н и й и методв е т в е й и г р а н и ц . Метод ветвей и границ, который можно
рассматривать как разновидность метода последовательного ана­лиза вариантов со специфическими правилами их развития и от­бора, является универсальным методом, с помощью которого мож­но реш ать и существенно более общие задачи (как дискретные,так и непрерывные). Схема метода описывается в § 8.8.
Методы отсечений, образующие целую группу приемов, бази­руются на следующих идеях. Вначале решается обычная задача
линейного программирования А 0 (с временно отброшенным тре­бованием целочисленности реш ения). Если у точки а0 = = (« !,...

Яп), полученной в результате реш ения задачи А 0, все коорди­наты — целые числа, то эта точка дает, очевидно, решение нетолько задачи А 0, но и исходной задачи целочисленного линей­ного программирования, которую мы условимся обозначать
через А .
Если же хотя бы одна из координат точки а®, напримерне является целым числом, то к исходной задаче целочисленного
линейного программирования добавляется новое ограничение (ли­нейное), построенное с использованием информации, имеющейсяв таблице симплёкс-метода, соответствующей ш агу, на котором
построено решение а®, и обладающее следующими свойствами:1) это ограничение является линейным неравенством и о т с е ­к а е т точку а°, т. е. а® не удовлетворяет условиям задачи линей­ного программирования, которая получается из исходной путем
добавления этого ограничения;2) оно н е о т с е к а е т ни одной целочисленной точки из мно­жества допустимых решений задачи Л 0;3) из всех возможных способов построения такого ограниче­ния выбирается в определенном смысле наилучший, т. е. такой,который удовлетворяет требованиям 1, 2 и отсекает от множества
решений задачи А 0 «не слишком малую» часть.
В результате получается новая, отличающ аяся от Л 0 лишьдобавленным отсечением, задача А и к которой вновь применима
описанная процедура. Таким образом, методы отсечения строят ирешают последовательность линейных задач А 0, Л 4, . . . , каж даяиз которых отличается от предыдущей лишь одним новым огра­ничением. Свойства 1—3, которыми обладают отсечения, гаранти­руют, что эта последовательность не оборвется раньше, чем будет
построено целочисленное решение некоторой задачи (свойство 1);в процессе реш ения не будет отброшено оптимальное решение
исходной целочисленной задачи (свойство 2 ); при некоторых ми­нимальных и естественных требованиях к задаче процесс закон­чится после конечного числа итераций (свойство 3 ). После окон­чания процесса будет либо построено решение ак задачи А н с це­лочисленными компонентами, являю щ ееся решением задачи Л,либо будет показано, что задача А к не имеет допустимых реш е­
ний. В последнем случае и исходная задача неразрешима.
Иногда приходится иметь дело со смешанными задачами, в ко­торых лишь часть переменных должны быть целочисленны. Мето­ды отсечения разработаны и для таких задач. Процесс в этомслучае заканчивается, как только построено решение линейной
задачи, удовлетворяющее требованиям целочисленности лишь поэтим переменным. Методы отсечения применимы, разумеется, и кзадачам булева линейного программирования, в которых каж даянеременная может принимать лишь одно из двух возможных зна­чений: 0 или 1. В этом случае процесс реш ения задачи ничем ноотличается от общего случая, но при решении ряда классов таких
задач методы отсечения оказываются достаточно эффективными.
В общем случае методы отсечения обладают двумя существен­ными недостатками. Число итераций в них может расти поэкспоненте от размерности задачи. Кроме того, коэффициенты
симплекс-таблицы с ростом числа итераций имеют тенденцию кувеличению их значений, что приводит обычно к вычислитель­ным неприятностям, связанным с выходом значений этих коэф­фициентов за разрядную сетку ЭВМ, либо к накоплению погрешно­сти вычислений, за счет чего может быть получено недопустимоереш ение задачи.
8.8. Общая задача дискретной оптимизацииВ общем случае задача дискретной оптимизации не предпола­гает линейности как целевой функции / ( #) , так и ограничений
р{( х ) > 0 (г = 1, . . . , т ). Не требуется такж е непременно целочисленность координат точек, среди которых находится решение.
Важно лишь, чтобы они образовывали д и с к р е т н о е множество
М. В большинстве случаев общее число точек допустимого множе­ства М является конечным, так что в принципе задача оптимизации
может быть решена простым п е р е б о р о м , т. е. вычислением
значения целевой функции во всех точках допустимой области ивыбором среди них требуемых экстремальных (минимальныхили максимальных) значений. Однако обычно на практике
общее число N точек оказывается столь большим, что простой
перебор физически невозможен даже при использовании самых
мощных ЭВМ.
Основная задача в дискретной оптимизации сводится поэтомук разработке методов, направленных на максимально возможноес у ж е н и е перебора.
В так называемых прямых методах дискретной оптимизации
обычно используются те или иные аналоги рассматривавшихся
выше (в непрерывном случае) градиентных методов. К ним отно­сятся методы локальной оптимизации, в частности метод вектора
спада. В общих чертах вычислительную схему этого метода дляреш ения задачи минимизации действительной функции / ( # ) ,определенной на некотором подпространстве М дискретного мет­рического пространства Б , можно описать следующим образом.
Вначале выбираем некоторое начальное приближение х° ^ Ми радиус г. В пространстве Б рассматриваем окрестность 0 ( х °, г)радиуса г с центром в точке х°. Исследуя координаты вектора спа­да, характеризующего изменение значений целевой функции вточках множества 0 { х °, г)ПЛ/ по сравнению с /(# ° ), определяем,является ли х° точкой локального минимума функции /. Если нет,то с помощью вектора спада в множестве 0 (х ° , г) ОМ выбираем

точкудля которой значение целевой функции меньше, чем/(# °). На следующей итерации снова повторяем описанную про­цедуру, исходя уже из х 1 как центра новой окрестности, и т. д.
Процесс вычислений считаем оконченным, если получено некото­рое локально оптимальное решение задачи. Схема метода допу­скает прерывание вычислений на любой итерации с выдачей вкачестве результата последнего полученного допустимого реше­ния задачи.
Отметим, что размерность вектора спада Д = ( А 4, . . . , Д5)функции /(от) относительно окрестности 0 ( х к, г), где & =-0, 1, . ..*зависит как от метрики, выбранной в пространстве 1>, и радиуса г,так и от вида целевой функции. В большинстве случаев она зна­чительно меньше числа точек множества О { х \ г) П М . Вычисле­ние всех 5 координат вектора спада, так или иначе связанное сперебором соответствующих точек из О (хк, г) П Л/, производится
лишь в том случае, когда х к является точкой локального миниму­ма функции /(дг). Н а любой промежуточной итерации метода вы­числение координат вектора спада прекращ ается, как только
определено некоторое направление уменьшения значения функ­ции 1(х) по сравнению с Ц х к).
Схема метода вектора спада является достаточно гибкой и по­зволяет варьировать такими параметрами, как метрика, величи­на радиуса, способ перебора точек в окрестностях при построе­нии вектора спада. В рамках этой схемы разработан ряд алгорит­мов реш ения различных классов задач дискретного программиро­вания (в частности, задач полностью и частично целочисленного
программирования, задач с булевыми переменными, задач комби­наторного типа). Основываясь на схеме метода вектора спада,,разработан такж е м е т о д н а п р а в л я ю щ и х о к р е с т н о с т е йдля реш ения целочисленных задач выпуклого программирования*который является аналогом м е т о д а в о з м о ж н ы х н а п р а в ­л е н и й , предназначенного для реш ения непрерывных задач.
Анализ результатов машинного эксперимента по решению за­дач дискретной оптимизации различных классов показывает, чтометод вектора спада позволяет в большинстве случаев получать
решения задач, близкие к оптимальному, за практически прием­лемое время и при использовании сравнительно небольших объ­емов памяти ЭВМ. При этом для каждого из возможных алгорит­мов метода (при фиксированных перечисленных выше парамет­рах) точность получаемого реш ения зависит от выбранного
начального приближения и времени, выделенного для реш ениязадачи.
В релаксационных методах прибегают к приему о с л а б л е ­н и я (релаксации) ограничений и замены целевой функции }{х)ее м и н о р а н т о й / ' (х) (в задаче минимизации), т. е. функцией*Удовлетворяющей условию Г ( х ) / ^ 1 ( х ). Для всех х * Из допустимой

области М \ полученной расширением исходной области М (М ' >> М) за счет ослабления ограничений, М ' и / ' (х) выбираются
так, чтобы, во-первых, релаксированная задача допускала срав­нительно простые способы решения и, во-вторых, чтобы она какможно меньше отличалась от исходной по целевой функции имножеству допустимых решений:п и п /' (х)Ш 1п / (х) ^ т щ / (х).

ХсМ '

х<~М'

х&М

Аналогичные неравенства верны и для задачи максимизации:ш ах /" (х ) ^ т а х / (ж) ^ т а х / (а:),к ем 'кем 'яемно здесь(х) — м а ж о р а н т а / ( х ) , т. е. / " ( х ) > } (х ) для всехх^М \Простейшим примером релаксации является отбрасывание ус­ловий целочисленности в задаче целочисленного линейного про­граммирования. В этом случае М — множество целочисленных то­чек из выпуклого многогранного множества М \ а /'(л:) = / " (#) =Методы релаксации используются обычно в качестве способа
построения оценок в методе ветвей и границ.
8.8.1.
Метод ветвей и границ (М ВГ). Метод был разработан
вначале для решения задач целочисленного линейного програм­мирования (в этом случае он называется еще методом Лэнд иД ойг), а затем был распространен на более общие дискретные имногокритериальные задачи. Он позволяет строить точное илиприближенное решение с заданной относительной погрешностьюпо целевой функции. Суть метода ветвей и границ заключается втом, что вместо исходной задачи оптимизации 4 0 = (т т / 0(#),х е М0}_строится и решается^ последовательность релаксированных
задач А = { т т /,- ( ж ) ,1= 0, 1, 2, . . . Вначале решается
задача Л 0, являю щ аяся релаксацией А 0. Если ее решение х<> явля­ется допустимым для М 0 и /о(#о)==/о(#о), то Хо — оптимальное
решение А 0, и процесс заканчивается. В противном случае / 0(#о)является оценкой снизу для целевой функции на оптимальном
решении задачи Л 0, и алгоритм начинает процесс в е т в л е н и яисходной задачи А 0 на несколько задач (непосредственных по­томков) .
Ветвление осуществляется таким образом, чтобы множество
допустимых решений задач-потомков совпадало с множеством Л/0,
а решения релаксированных задач приближались к решениям
задач-потомков. Например, в задаче целочисленного линейного
программирования А 0 ветвление обычно осуществляется путем
разбиения всех целочисленных точек на два множестваи М%путем добавления к условиям задачи А 0 ограничения^ а; —

для задачи Л 4 и— для задачи Л 2. Здесь а,— целая
часть значения переменной х$ в оптимальном решении х 0 задачи
Л 0; индекс / соответствует любой переменной, принимающей не­целое значение в точке х 0. Для каждой полученной при ветвле­нии задачи Л* строится и реш ается ее релаксация Л г; кроме того,если задача Л* непротиворечива, то она добавляется к с п и с к уа к т и в н ы х з а д а ч , из которого после ветвления удаляется за­дача, породившая их. В начале работы список активных задач
включает в себя лишь исходную задачу Л 0.
На рис. 8.15 показана геометрическая интерпретация ш агапроцесса ветвления для_задачи А 0 с двумя переменными. Множе­ство решений задачи А 0 ограничено многоугольником О А В С В Е .
В результате ветвления по переменной х { из этого многоугольника
удаляется внутренность заш трихованной_полосы, содержащ ая иточку С — оптимальное решение задачи Л 0. Здесь х 0цт— решение
задачи Л 0, круглыми точками отмечено множество М 0, прям ая
сх = сх о — уравнение целевой функции, соответствующее опти­мальному решению задачи А 0. Уточнение оценок здесь достигает­ся за счет «лучшей» релаксации задач А 1 и Л 2 по сравнению с Л 0.
Следующим этапом алгоритма является п р о ц е д у р а в ы б о ­р а из списка активных задач. Обычно выбирается задача А г снаименьшим значением /*(#г), где х { — оптимальное решение за­дачи Аг. Из эвристических соображений именно задача Л*, вероят­нее всего, содержит оптимальное решение исходной задачи. Если/о(осг) и Х{<^М0, то понятно, что Хг — оптимальное реше­ние Л 0. В этом случае процесс реш ения заканчивается. В против­ном случае осущ ествляется процесс ветвления задачи Л*.

в,

о Г,

о175

Рис. 8.15

Рис. 8.16

В результате процесса строится дерево задач (рис. 8.16)’.
Некоторые вершины этого дерева породили своих потомков
(Ло, Л 4, Л 3, Л 5, Л 7, Л 8), и к моменту построения они уж е исклю­чены из списка активных задач. Другие вершины соответствуют
недопустимым задачам и по этой причине такж е исключены изэтого списка. По оставшимся в списке вершинам возможен ещепроцесс ветвления.
Зачастую МВГ содержит еще одну процедуру, которая пыта­ется построить д о п у с т и м о е решение х { для рассматриваемой
задачи А к и, в случае успеха, вычисляет значение / 0(х,). Еслинайдено, то величина / 0(3;<) сравнивается с наилучшим значением
целевой функции / 0(#«) и /о(#я), полученным при анализе допу­стимых решений А 0 на просмотренных ранее вершинах дерева
задач. В случае, если / 0( х {) < / 0(хя), запоминается новое значениеХ п ^ х , . Величина / 0(#я) называется рекордом, а х п — рекордным
решением на текущем шаге. На начальном шаге / 0(#л) полагает­ся равным достаточно большому числу, а х п не определено. Зна­чение рекорда позволяет сократить перебор в процессе решения,поскольку, если /* (# л )^ /о (# я ), то задача А к не содержит реше­ний, лучших, чем Хп, и ее можно исключить из списка активных
задач. При использовании процедуры построения рекорда не­сколько изменяется правило окончания вычислений: алгоритм
заканчивает работу, если список активных задач пуст. При этомрекордное решение, если оно определено, является оптимальным.
В противном случае исходная задача не имеет допустимых ре­шений.
Таким образом, МВГ есть процесс порождения в е т в е й (раз­биение исходной и промежуточных задач на новые подзадачи),построения г р а н и ц целевой функции на этих ветвях (путем
решения релаксированных задач) и последующего анализа реше­ния задач путем сравнения их с рекордным решением.
МВГ в общем случае также, как и все другие методы дискрет­ной оптимизации, дает экспоненциальный объем вычислений отразмерности задачи. Однако многочисленные экспериментальные
исследования эффективности различных методов показывают, чтопри точном решении практических задач МВГ пока остается наи­более предпочтительным. Заметим, что в отличие от простой ре­лаксации в методе ветвей и границ в общем случае меняются нетолько допустимые области, но и значения целевых функций.
8.9. Теория игрК методам дискретной оптимизации и линейного программиро­вания часто приходится обращаться при анализе и выборе реше­ний в к о н ф л и к т н ы х с и т у а ц и я х , т. е. при наличии сто­рон, преследующих различные (чаще всего — прямо противопо­ложные) цели. Подобные ситуации принято называть играми.
В зависимости от числа участников игры делятся на парные(с двумя участниками) и множественные (имеющие не менее
трех участников). Результат, или исход игры, даже в том случае,когда он не имеет прямой количественной оценки, обычно харак­теризуется некоторым числом, например, выигрыш + 1 , проигрыш
—1, ничья 0. Наиболее полно разработана теория парных игр снулевой суммой, т. е. таких игр, при которых одна сторона вы ­игрывает то, что проигрывает другая. Развитие игры происходитв результате последовательного выполнения тех или иных ходов.
Ход называется л и ч н ы м , если он предпринимается одним' изигроков в результате сознательного анализа ситуаций. В противо­положность личным, с л у ч а й н ы е ходы возникают не в резуль­тате сознательного решения, а в результате того или иного слу­чайного процесса (например, сдача карт).
Стратегией игрока называется совокупность правил, определя­ющих поведение игрока от начала игры до ее завершения.
Задание стратегий (Л, В) двух игроков в парной игре пол­ностью определяет ее исход, т. е. выигрыш одного и проигрыш
другого*). Игра называется конечной, если у каждого игрока
имеется лишь конечное число стратегий. Результаты конечной
парной игры с нулевой суммой можно задавать матрицей, строкии столбцы которой соответствуют различным стратегиям, а ее эле­м енты — соответствующие выигрыши одной стороны (равные про­игрышам другой). Эта матрица называется платежной матрицейили матрицей игры. При этом удобно проигрыш первой стороны
рассматривать как ее отрицательный выигрыш, а выигрыш вто­рой — как ее отрицательный проигрыш. Если первая сторона име­ет тп стратегий, а вторая /г, то говорят, что мы имеем дело с иг­рой т п Х п .
Рассмотрим игру ш Х п с матрицей

А1
л2

»1

Вг

•••

К

«11

а 1Ъ
а г%

•••

°ы
а2п

ап
• ••

А

а т1

• • •

•••

ат2

•••

а тп

Если первый игрок применяет стратегию А и то второй будет стре­миться к тому, чтобы выбором соответствующей стратегии В $ све­сти выигрыш первого игрока к минимуму. Величина этого мини­мума, которую мы обозначим через а*, равна, очевидно, п и п а,;.
С точки зрения первого игрока (при любых ответах противни­ка) целесообразно стремиться найти такую стратегию, при кото­рой а* обращается в максимум. Этот максимум, который мы обо­значим а , называется нижней ценой игры. Поскольку значение а*) Если в игре имеются случайные ходы, то, строго говоря, определя­ется не выигрыш и проигрыш, а их математические ож идания.
17 Н. М. Глушкоа

|вычисляется по формуле
а = шах пип ац,г)то его называют также максимином. Ему соответствует максиминпая стратегия (их может быть и несколько), придерживаясь которой первый игрок при любых стратегиях противника обеспе­чит себе выигрыш, не меньший а (в зависимости от знака а этоможет быть и проигрыш, который в этом случае окажется мини­мальным).
Аналогичным образом определяется минимальный проигрыш
(который может быть в действительности и выигрышем) для вто­рого игрока:Р = Ш1П шах а&^IВеличина р называется верхней ценой игры или минимаксом. ЕГгсоответствуют минимаксные стратегии второго игрока.
Имеет место неравенство а ^ р . При а = р решение получает­ся в чистых стратегиях. Для их нахождения достаточно выделитьв платежной матрице м а к с и м и и н ы е (т. е. равные ос) элемен­т ы * ). Любая пара строк и столбцов, на пересечении которых на­ходится такой элемент, соответствует паре чистых оптимальных
стратегий. При а < р первый игрок может существенно увеличить
свой средний выигрыш по сравнению с а, если он будет пользо­ваться не чистой (одной-единственной) стратегией, а так назы­ваемой смешанной стратегией. Смешанная стратегия С состоит втом, что при повторении игры происходит случайный выбор стра­тегии из некоторого множества смешиваемых стратегий и длякаждой смешиваемой стратегии указывается вероятность совыбора.
Доказано, что для любой конечной парной игры с нулевой
суммой существует пара оптимальных стратегий (вообще говори,,смеш анных). Свойство оптимальности означает, что любое отступ­ление одного из игроков от оптимальной стратегии (при условии,,что второй игрок продолжает придерживаться своей оптимальной
стратегии) при многократном повторении игры может только
уменьшить его средний выигрыш (увеличить средний проигрыш).
Величина выигрыша (быть может, отрицательного) первого
игрока при пользовании обеими сторонами парой оптимальных
стратегий называется ценой игры и обозначается
Цена игры
заключена между нижней и верхней ценами: а ^ у ^ р. Страте­гии, которые смешиваются для получения оптимальной стратегии,,будем называть полезными.
*) Поскольку а == р, то максимпнные элементы
минимаксными.

будут одновременно иРешить игру — значит найти пару оптимальных стратегий идену игры. Решение игры обладает одним важным свойством:если один из игроков использует свою оптимальную стратегию,а другой смешивает свои полезные стратегии в любых пропор­циях (не обязательно оптимальных), то средний выигрыш про­должает оставаться равным цене игры.
При этом, правда, как и при любых отступлениях от опти­мальной стратегии, соответствующее изменение стратегии против­ником может привести к увеличению его среднего выигрыша. До­казано, что у игры т Х п существует такое оптимальное решение,что число полезных стратегий с каждой стороны не превосходит
минимального из чисел т и п.
Решение всякой парной конечной игры с нулевой суммой мо­ж ет быть получено методами линейного программирования. Одна­ко перед тем, как использовать эти методы, на практике обычно
стараются провести предварительное упрощение задачи, исклю­чая заведомо бесполезные стратегии.
Пусть, например, имеется игра 3 X 3 с матрицей

Лг
А2
Аз

1 0
0
2
1
2

2
1
—2

Все элементы третьей строки матрицы не больше, чем соответст­вующие элементы второй строки. Поэтому, применяя вторую
стратегию, первый игрок получит при любых стратегиях против­ника не меньший выигрыш, чем при применении третьей стра­тегии.
Значит, третья стратегия заведомо не может быть полезной,и ее следует исключить из рассмотрения. В оставшейся матрице
2 X 3 все элементы третьего столбца больше, чем соответствую­щие элементы первого столбца. Следовательно, если второй игрок
применяет третью стратегию, то выигрыш его противника (т. с.
ого собственный проигрыш) больше, чем при применении первой
стратегии. Поэтому при поиске решения стратегия В $ может бытьзаведомо исключена из рассмотрения.
Таким образом, в результате исключения заведомо бесполез­ных стратегий игра 3 X 3 свелась к игре 2 X 2 с матрицей
В1

В,
о
2

Следующим шагом в поиске решения находим нижнюю и верх*нюю цену игры:а = ш ах т т ац = шах (0, 0) = 0,гзг
Р = т т т а х а ц = т т (1, 2) = 1.
3

г3Поскольку максимин (нулевой элемент) встречается как в первой,так и во второй строке, то обе стратегии первого игрока являются
максиминными. Минимаксной же стратегией второго игрока яв­ляется лишь стратегия ВиВ нашем случае
и, следовательно, решение нужно ис­кать среди смешанных стратегий.
Рассмотрим другой пример. Пусть игра 2 X 3 задана матрицей
#3

В\
0
3

Аг
А2

3
2

— 1
1

Находим нижнюю и верхнюю цену игры:а = т а х т т ац = т а х (— 1, 1) = 1,г3г

р = т т т ах ац = т т (3, 3, 1) = 1.
згзВ этом случае а = (1 = 1. Поскольку а ^ у ^ р, то цена игры так­же равна 1. Решение же игры задается парой чистых стратегий
( А 2, /?з), ибо максимин (он же минимакс) расположен во второй
строке и третьем столбце.
К ак уже отмечалось, в области чистых стратегий решение мо­жет быть получено непосредственно. Если же решение нужно ис­кать в области смешанных стратегий (при а ^ Р ) , то в общем
случае т X ^-матрицы Иа^-Н применяется следующий прием. Счи­тая все т стратегий первого игрока полезными, определим веро­ятности их применения в смешанной оптимальной стратегии (ес­ли какая-то стратегия в действительности бесполезна, то соответ­ствующая вероятность обратится в нуль). Обозначим эти веро­ятности через р и р 2, . . рт , а цену игры (пока неизвестную) — че­рез 7*
Поскольку при оптимальной стратегии средний выигрыш пер­вого игрока не меньше у при любой стратегии противника, то за­пишем п неравенств
Р\йц + р 2а 21 + . . . + Ртйгт > 'К,^1^12 + Ргйгг + . . . + р т а т 2 > Т*
^1^1» + Ргйгп + ...+ Ртйтп ^ К*

(8. 12Введем новые неизвестные
*1 = Р ^ Ъ= Р^Т* • • •» Х™= /?т/Т-Чтобы исключить возможность деления на нуль, можно всегда
добиться, чтобы 7 > 0. Для этой цели достаточно ко всем элемен­там матрицы 11а у1
1 прибавить одно и то же положительное число ивсе ее элементы сделать положительными. Легко понять, что этаоперация увеличивает цену игры на С, но не меняет искомых оп­тимальных стратегий.
Поскольку рь +Рг + . . . + р т= 1, то+ х 2 + . . . + Хт = 1/у.
Разделив левые и правые части неравенств (8.12) на у, получим
новую систему неравенств:(1цХ{ 11’ ^21^2 I . • • I С^туХт ^ 1}

2#1 + аг2Хг + . . . + ат2Хт ^ 1,
(Х{пХ1"Ь С12пХ2 "Ь • « • "Ь йтпХт ^ 1»При сделанных предположениях все х { неотрицательны. По­скольку цель оптимальной стратегии — максимизация выигрыша,то при ее достижении линейная функция / = х { + х 2 + . . . + х т == 1/у должна обратиться в минимум. Итак, оптимальная страте­гия первого игрока (т. е. набор вероятностей /ц = у х {) находитсяв результате минимизации функции / = х 1 4- х 2 + . . . + х т при не­отрицательных д:г-, удовлетворяющих системе неравенств (8.13).
Это есть обычная задача линейного программирования, которая
может быть решена методами, описанными в § 8.6. В результатеее решения находится не только оптимальная стратегия первого
игрока, но и цена игры у.
Зная цену игры, оптимальную стратегию второго игрока обыч­но можно находить уже без решения задачи линейного програм­м ирования*). Для этого выбирается /г — 1 полезных стратегий
первого игрока (имея возможность менять местами игроков, мож­но считать, что т ^ п) и для каждой из них записывается сред­ний выигрыш, который при этом должен быть обязательно равен
цене игры у. Например, если для первого игрока полезна страте­гиято ей соответствует уравнение
+ а1гд2 + . . . + агПдп = УКроме того, имеется еще одно уравнение д^ + д2 + . . . + дп = 1.
Всего имеет п уравнений для п величин д{, <?2, .. миз которых

*) Чтобы найти оптимальную стратегию второго игрока методом ли­нейного програмирования, достаточно поменять игроков местами и примем
нить тот ж е прием,, что и выше,(при использовании их линейной независимости) можно найти
значение этих величин.
Для игр 2 X 2 оптимальная стратегия обоих игроков может
Сыть получена без решения задачи линейного программирования.
При а = (1 это очевидно, поскольку решением являются чистые
стратегии. При а Ф обе стратегии первого игрока и обе страте­гии второго обязательно будут полезными (иначе существовалобы решение в чистых стратегиях). Поэтому неравенства (8.12)
превращаются в равенства
“1“ #21^2 ^(8.14)
йиР\ “Ь йггРг — у.
Поскольку р 1 + р2 = 1, то имеется достаточное число уравненийдля определения значений всех трех неизвестных р {, р2,Применим этот прием для решения первого из рассматривав11 01шихся выше примеров с матрицей 0 2 ||. Уравнение (8.14) запишем в виде ^1 =2р2 = ч. Присоединяя к ним уравнение
Р\ + Рг = 1» получаем решение: р 2 = 1/3; р 1 = 2/3; ^ = 2/3. Следо­вательно, при случайном чередовании первой и второй стратегиис относительными частотами 2/3 и 1/3 соответственно первому
игроку обеспечен средний выигрыш в размере 2/3. Заметим, чтоэтот вывод идет вразрез с интуицией, которая подсказывает бо­лее часто использовать вторую стратегию, поскольку она имеет
многообещающую строку выигрышей: (0, 2) по сравнению с (1 ,0 )
в первой стратегии.
Для нахождения оптимальной стратегии второго игрока доста­точно (поскольку уже известна цена игры) составить уравнениедля его среднего проигрыша при любой из двух полезных стра­тегий первого игрока, например, стратегии
Величина среднего
проигрыша (равная цене игры) представится при этом в виде1 • + 0 • ?2- Приравнивая ее цене игры ^ = 2/3, получаем д4= 2/3
и, следовательно, д2 = 1/ 3. Итак, второй игрок должен смешивать
стратегии В { и В 2 с частотами 2/3 и 1/3 соответственно.
Описанный метод простого решения игры может быть обобщен
также на игры 2 X п.
При больших платежных матрицах используются приближен­ные методы решения. Для получения приближения употребляется
следующий и т е р а ц и о н н ы й м е т о д . Игрок А выбирает лю­бую из своих стратегий, например Ац. Игрок В выбирает в ка­честве ответа ту стратегию Вц, которая наиболее невыгодна дляА при стратегии Ац. Игрок А отвечает на это лучшей (против
стратегии Вц) стратегией Ац. Игрок В ищет стратегию Вц, наи­лучшую против смеси в равных пропорциях стратегий Ац иСтратегия А ц должна быть наилучшей против равновероятной

смеси стратегий В>у и В ,2, стратегия В ,3 — наилучшей против рав­новероятной смеси стратегий А ц , А {2, А {3 и т. д.
Если продолжать этот процесс достаточно долго, то частоты,с которыми встречаются различные стратегии, стремятся к веро­ятностям их применения в паре оптимальных стратегий, а сред­ний выигрыш — к цене игры.
Заметим, что при а « (} достаточно хорошими приближениямик решению будут чистые (минимаксные или максиминпые) стра­тегии.
В настоящее время развитие теории игр вышло далеко за пре­делы рассмотренного нами простейшего случая парных игр с ну­левой суммой. Однако ограниченный объем книги не позволяет
дать представление о более сложных разделах современной тео­рии игр, таких, как множественные коалиционные игры, диффе­ренциальные игры и др.
8.10. Динамическое программированиеНа практике очень часто приходится встречаться со случаями,когда целью оптимизации является установление наилучшей п о ­с л е д о в а т е л ь н о с т и тех или иных работ (производственных
операций, этапов строительства различного рода сооружений
и т. п.). С подобной целью имеют дело при решении задач так на­зываемого динамического программирования.
Одной из первых задач такого рода, привлекших внимание ма­тематиков, была так называемая задача о коммивояжере (бродя­чем торговце). Суть ее состоит в следующем: имеется п + 1 горо­дов Л о, А 1, . . . , А п (га> 1) с заданными между ними расстояния­ми(г, / = 0, 1, . . . , п ); требуется, отправляясь из Л 0, выбрать
такой маршрут передвижения А 0, А {и А {2, . . . , А&, А 0, при кото­ром коммивояжер, побывав в каждом городе по одному разу, вер­нулся бы в исходный пункт А о, проделав минимально возможный
суммарный путь.
Эта задача может быть в принципе решена методом простого
перебора всех возможных маршрутов. Легко видеть, однако, чтообщее число таких маршрутов равно га! = 1 • 2 • 3 . . . (га — 1) • га,а эта величина уже при га, измеряемом несколькими десятками,столь огромна, что практически исключает возможность прямых
вычислений даже при использовании ЭВМ. Проблема, следова­тельно, состоит в том, чтобы резко сократить перебор, отбрасывая
заранее заведомо непригодные множества вариантов. Методы ре­шения этой проблемы как раз и составляют суть динамического
программирования.
Рассмотрим основные принципы динамического программирования на примере задачи о коммивояжере. Пусть имеется всего

пять пунктов: Л„, А и А 2, Л 3,со следующей таблицей 8.1.
расстояний *):Для определения кратчайшего пути коммивояжера будем раз­вивать варианты его передвижения последовательно, пункт запунктом.Начинаем с вариантов, состоящих из трех участков:А оА а А %2А,*з, группируя их по последнему пункту
Некоторыеиз полученных вариантов можно отбросить, не развивая их далее.
Так, например, сравнивая варианты А 0А 1А 2А 3 и А 0А 2А 1А 3, при­ходим к тому, что для первого варианта суммарный путь равент я бп н п а 81 300 + 500 + 250 = 1050, а для второго 250 + 500 + 350 = 1100. Поскольку оба варианта относятся
А4
а 2
Ао
^3
А1
к одному и тому же множеству
пунктов и оканчиваются в одном
0400
300 250 2 0 0Аои том же пункте А 3, то в даль­300
0500 350 600
Л,250 5000
250 2 0 0нейшем оба варианта могут раз­л,0
350 250250
Ая 200виваться одинаково. Ясно, чтоа 4 400
600 2 0 02500проигрыш 50 км, полученный длявторого
варианта,делает
егобесперспективным в сравнении с первым при любом его даль­нейшем развитии. Следовательно, второй вариант может быть от­брошен. Тем самым отбрасываются и все получающиеся из неговарианты дальнейшего движения (число которых при больших пможет быть огромным).
Сведем результаты рассмотрения вариантов в табл. 8.2. Далее
развиваются и сравниваются только перспективные варианты(в пашем случае их число равно 12). Развитие каждого из нихТ а б л и ц а 8.2
Ва риантыА оА гА 3 Л 1
А 0А3А2А1
А (И 2 А 4 А 4А 0А 4/42/4 4
А оА зА ±А 4
АоА 4Л3А 4
АоА 4 Л 3 Л 2
А0А3А1А2
А оА хА^А9
АоА 4^4 4^2
АоА3А 4Л2
АоА 4^4 3^2Расстоя­ние, им

Перспективноили нет

Варианты

850
950
1050

Да
нет
Да
нет
нет
да
да
нет
да
нет
да
нет

А оА 4 Л 2/4 зА оА 2А 4^4з
А0А1А4А3
АоА 4Л4Л3
А0А2А 4-^4 зА0А4А2А з
АоА 4 <Д2^44
АоА 2/4 4 А 4
АоА 4^4 з/4 4АоА з/4 4/4 4
А о/4 2/4 з/4 4/4о/43 /42 /4 4

1 1 0 01050
1 0 0 0900
1050
1 1 0 0

1500
650
900

Расстоя­ Перспек­ние, км тивно или
нет

1050
1 1 0 0

1150
1350
700
850
1 0 0 0

1350
900
1150
750
650

Да
нет
Да
нет
Да
нет
Да
нет
да
нет
нет
Да

*) Расстояния определяются для конкретных путей сообщения не обя*вательпо по прямой.

однозначно (поскольку для каждого из них остается лишь одиннепосещенный пункт).
Результаты сравнения вариантов приведены в табл. 8.3. Изтаблицы выбираем четыре перспективных варианта. Дальнейшееих развитие заключается в возвращении в исходный пункт А 0. Дляэтих четырех окончательных маршрутов вычисляем суммарные
расстояния и записываем в табл. 8.4. Из этой таблицы видно, чтосуществуют два оптимальных маршрута следования коммивояже­ра: А 0А 1^43А кА 2А о и А 0А 2А ьА зА 1А о, имеющие минимальную извсех возможных маршрутов длину, равную 1350 км.
Т а б л и ц аВарианты

АоА2А з А хА х4 о 4 24 44 1^3
4 оА 4Аз А \ А 2А оА хА зА 2А 4
А оА \ А ±А2А зА оА зА ^А2А хРасстоян».е, кмПерспективноил и нет

1450
1400
1500
1 10 0
1350
1150

нее
нет
пет
Да
нет
нет

ВариантыА оА 1^4 24 з 4 4
АоА {А 4А зА 2
А оА 2А ±А$А ^АоА 24 44 з
4 о 4 гА 3А 44 2
4 о 4 з 4 24 44 4Расстоя­ Перспек­ние, км тивно или
нет

НОТ
пот
да
да
да
нет

1300
1400
1050
1250
110 0
1250

Т а б л и ц аВарианты

Расстояние, кмВарианты

Расстояние, кмА о А \ А 2А$А $Ао

1500
1350

4 о 4 14 24 44 з 4 о
4 о 4 х4 з 4 44 24о

1450
1350

4 о 4 24 44 з 4 \А о

8. 3

8. 4

Рассмотренный пример демонстрирует основной прием дина­мического программирования — нахождение правил доминирова­ния, которые позволяют производить сравнение вариантов разви­тия последовательностей и заблаговременное отсеивание беспер­спективных вариантов. В ряде случаев в задачах динамического
программирования удается получить столь сильные правила до­минирования, что они определяют элементы оптимальной после­довательности однозначно один за другим. В этом случае правила
Доминирования называют обычно разрешающими правилами.
Разрешающие правила (в случае их существования) обычно
выводятся с помощью принципа оптимальности Беллм ана. Сутьпринципа оптимальности состоит в следующем. Пусть критерий
(задаваемый формулой или алгоритмом), дающий числовую оцен­ку качества варианта (последовательности) А п = аиан •. •Можно применять не только ко всей последовательности, но и нIлюбому ее начальному отрезку А к = апа1г. . . а1к. Последователь­ность А П1 которой соответствует экстремальное значение критерия
называется оптимальной. Если любой начальный отрезок опти­мальной последовательности также оптимален (в классе всех по­следовательностей, составленных из тех же элементов и, бытьможет, еще имеющий те же начало и конец, что и данный отре­зок), то говорят, что для соответствующей задачи справедлив
принцип оптимальности.
Принцип оптимальности, как нетрудно понять, всегда выпол­няется для аддитивных критериев ЗГ, характеризующихся темсвойством, что для любой последовательности Л, составленной издвух подпоследовательностей В ж С (А = ВС ) ,&~(А) = $~(ВС) = &~(В) + $~(С).
Рассмотрим один из многочисленных примеров задач динами­ческого программирования, для которых выполняется принцип
оптимальности. Предположим, что нам необходимо обработать
последовательно п различных деталей й,, й2, . . Лп. Время, тре­буемое для обработки детали йг, обозначим через **, а стоимость
хранения этой детали в единицу времени — через р* (&=г1, 2, . . .
. . . , п ) . Предполагая, что обработку можно производить в любом
порядке, и цренебрегая временем переналадки оборудования,нужно найти такой порядок обработки, при котором общая стои­мость ёГ хранения деталей (до начала их обработки) минимальна.
Справедливость принципа оптимальности в данном случае оче­видна: если бы какой-то начальный отрезок оптимальной после­довательности
1 2 . . . д,х.° был не оптимальным, то перестановкой его элементов, приводящей его к оптимальному виду, можно
было бы, очевидно, уменьшить значение критерия ёГ для всейпоследовательности.
Пусть теперь О = Ах1йха . . . ” — любой начальный отрезок
оптимальной последовательности (к ^ 2 ) , а И ' — последователь­ность, полученная из Б перестановкой двух его последних эле­ментов. Тогда по принципу оптимальности
5Г ( 0 ) ^ 5 Г ( 0 / ).

(8.15)

Обозначим через Г, сумму 1Х1 + 21Х + . . . + 1ц.
* ТогдаЗГ (Р) = рКТ х + Р{ Т ++ Р{к_ хТ к- 2 + р{А(Гй_2 +2( 0 ') = р{ Т х +

.

.

.

2 + . . . + р 1кТк-% +(Тй-2 + *1к)'Подставляя эти значения в неравенство (8.15) и вычеркивая оди­наковые члены в левой и правой частях, приходим к искомому
разреш аю щ ему правилу
Р*А*»Л-1 ^Р‘А-1*»А»или, что то же самое,1 / Р*А-1 ^Из этого правила следует, что оптимальная последовательность
предполагает обработку деталей в порядке роста (точнее, неубы­вания) отношения времени обработки и к стоимости р* ее хране­ния в единицу времени: первой должна обрабатываться деталь сминимальной величиной отношения и / р„ следующей обрабатыва­ется деталь с минимальным отношением
среди оставшихся
деталей и т. п.
Любопытно, что при интуитивном подходе к решению данной
задачи обычно предлагается обработка в порядке убывания вели­чины удельной стоимости р, хранения деталей, что, как видно изприведенного рассмотрения, не приводит, вообще говоря, к опти­мальной последовательности.
Рассмотрим еще один пример задачи динамического програм­мирования, возникающей при проектировании дорог, трубопрово­дов, линий электропередач и других протяженных объектов.
Пусть, например, нам требуется проложить кабель из пунктаА в пункт В (см. рис. 8.16) так, чтобы он прошел через один изпунктов Си один из пунктов
и т. д. Между любой парой со­седних пунктов (А и Си С, и Д и т, д.) возможен лишь один ва­риант прокладки (например, по прямой). Требуется определить
вариант прокладки, имеющий наименьшую стоимость.
Как и в предыдущем случае, легко понять, что в данной зада­че имеет место принцип оптимальности. Для первого отрезка А С %вычисляем стоимости всех вариантов: А С и А С 2, А С 3. Каждый изполученных отрезков продолжаем во все О} и для всех О} фикси­руем варианты траекторий АСгОи имеющие минимальную стои­мость (если искать не все, а лишь одну оптимальную траекторию,то таких вариантов будет пять). Далее, продолжаем каждую изэтих траекторий во все Е к и оставляем для каждого Е к вариантс наименьшей стоимостью (таких вариантов будет четыре). По­вторяем ту же процедуру с точками Р г и т. д., пока не достигнем
точки 5 . В нашем случае это приведет к анализу 3 + 3 - 5 + 5 - 4 ++ 4 '3 + 3*1 = 53 траекторий (из которых только три — полны е),тогда как общее число всех возможных полных траекторий равно,очевидно, 3 • 5 • 4 • 3 = 180.
Если число точек в каждом сечении (Си О, и т. д.) одинаковои равно т , а число сечений (не считая А и В) есть п , то приприменении описанного приема анализируется т + ( п — 1 ) т 2 + ттраекторий, а их общее число равно, как нетрудно видеть, т п.
При больших т и п перебор сокращается значительно и, что неменее важно, при развитии траекторий на каждом шаге необхо­димо хранить ограниченное число траекторий (н,е более 2 т ) , чторезко ограничивает требования к объему памяти при решении
задачи на ЭВМ.
Необходимость иметь большие тп и га вытекает из того, чтозадачи описанного класса возникают обычно в результате дис­кретной аппроксимации непрерывных задач: в исходной задаче
допустимы любые криволинейные траектории, соединяющие точ­ки А и В; мы же аппроксимируем эти кривые ломаными, прохо­дящими через вершины достаточно густой (для обеспечения хо­рошей аппроксимации) сетки.
Число подлежащих рассмотрению траекторий может быть ещеболее уменьшено, если к правилам доминирования, вытекающимиз принципа оптимальности, предъявляются дополнительные
ограничения, вытекающие из конкретного смысла задачи (напри­мер, отсутствие резких изломов траектории, ее обязательное про­хождение через заданные промежуточные пункты и т. п .).
Количество элементарных арифметических операций, которые
необходимо выполнить при решении задач динамического про­граммирования, определяется помимо количества просматривае­мых вариантов также сложностью вычисления критерия
длякаждого из оцениваемых вариантов. Эта сложность может сильно
варьироваться.
8.11. Вариационные задачи
Обычные задачи оптимизации ставят своей целью нахождение
значений конечного числа вещественных или целочисленных пе­ременных, оптимизирующих ту или иную функцию этих пере­менных. В вариационных задачах место переменных занимают
функции, а критерий оптимизации — пекоторая вещественная
функция, зависящ ая от этих функций и называемая функциона­лом. С точки зрения современной абстрактной математики, опе­рирующей переменными любой природы, между этими двумя клас­сами задач нет никаких принципиальных отличий. Однако прак­тические методы нахождения экстремумов обычных функций ифункционалов сильно разнятся между собой.
В простейшем случае имеют дело с функцией у ( х ) одного
а2переменного и с функционалом вида / = | Р (х, у, у ') йх, где а, и
а1
а2 — константы, а Р ( х , у , г) — заданная функция трех веществен­ных переменных. При этом предполагается, что как сама функ­ция у = у ( х ), так и ее производная у' = ^ У {х)непрерывны наотрезке а± ^ х ^ а2.
В классическом вариационном исчислении доказывается, чтоэкстремум (минимум или максимум) функционала / достигаетсяна функциях у ( х ), удовлетворяющих дифференциальному урав­нению, называемому уравнением Эйлера:Р у + Р хугР у у ,.уРу'у'У — 0.

Здесь через Р у и Р иь (и = х , у или у \ и= *у') обозначены соотвстт
ственно первая и вторые частные производные функции Р (х , г/, у ')по переменной у и по переменным и, и.
Для иллюстрации использования уравнения Эйлера рассмот°2
рим простой пример функционала / = ]1 + (у')2 З х , задающего
длину кривой у = у ( х ) на отрезке [а4, а2]. В уравнении Эйлерапри этом все члены, кроме последнего, обращаются в нуль. Изоставшегося соотношения — Ру'у'У" = 0 выводим прежде всего
тривиальное решение у " = 0 , т. е. уравнение прямой линии, ко­торая, как известно, дает минимум функционалу I. Поскольку
столь же очевидно, что других минимумов, а такж е и максимумов
этого функционала не существует, можно не рассматривать дру­гого реш ения полученного уравнения: РУ’У' = 0. Более подробный
анализ показывает, что это решение (сводящееся к решению
уравнения у 'у " = сопзЬ) не дает, вообще говоря, экстремального
■значения функционалу /. И это в порядке вещей, поскольку урав­нение Эйлера дает лишь необходимое, но не обязательно доста­точное условие экстремума заданного функционала.
Заметим, что общее решение дифференциального уравнения
у " = 0 , имеющее вид у = А х + В, содержит две произвольные по­стоянные А и 5 . Их значение может быть найдено из краевых
условий, определяющих начальную и конечную точки кривой(в данном случае прямой), дающей решение задачи.
Возможны постановки вариационных задач и с более сильны­ми краевыми условиями, включающими в себя, например, нарядусо значениями искомой функции
= /(а*) и Ь2 = / ( а 2) на кон­ц ах такж е значения ее производной
с2 = / '( а 2) в этихточках. Задачи на условный экстремум могут связывать искомые
функции теми или иными дополнительными условиями. Вариаци­онные задачи естественным образом обобщаются на функции мно­гих переменных. Мы не будем, однако, вдаваться в эти поста­новки.
Отметим лишь, что при приближенном решении вариацион­ных задач их можно в принципе сводить к задачам оптимизации
обычных функций. Например, в рассмотренной выше простейшей
постановке задачу нахождения неизвестной функции у = 1(х),оптимизирующей значение ф у н кц и о н ала/ = § Р ( х х у 1 у ') й х г можв1но заменить нахождением значений */,, . . у п этой функции внекоторых точках х и • • •, %п, достаточно плотно заполняющих от­резок [аи я2]. При вычислении I следует заменить интеграл егоприближенным значением (конечной суммой), выраженным через
значения подынтегральной функции в точкахх п, а значе­ния производной у ' в этих точках — теми или иными их прибли­жениями, например / ' (л:,-) « (/(д?ж-+1) — 1 (Х г))/(х{+1 — я,-).
С одним из возможных приближенных методов при решении
вариационных задач с ограничениями — методом последователь­ного анализа вариантов — мы уже познакомились в предыдущем
пункте. В следующей главе рассматривается принадлежащ ий
Л. С. Понтрягину аналитический метод решения вариационных
задач с ограничениями, встречающихся при оптимизации управ­ления в динамических системах.
8.12. Системная оптимизация
Рассмотренные до сих пор постановки оптимизационных задач
были однокритериальными, т. е. использовали одну-единственнук>целевую функцию (функционал). В практике проектирования
больших систем и управления такими системами, как правило*используется много критериев. В ряде случаев их удается темили иным, способом свести к одному критерию и тем самым вернуться к уже исследованному случаю однокритериальной опти­мизации. Простейший способ такого сведения заключается в танназываемом взвешивании критериев. Если / 4(я ), . . . , /„ (х) — це­левые функции, выражающие значения используемых критериев*то для каждой из них, сообразуясь с относительной важностью
критериев, выбирается положительный весовой коэффициент ХыО перация взвеш ивания критериев (целевых функций) / 4( я ) , __. . . , 1п{х) состоит в замене их единственным критерием (целевой
функцией) 1(х)==Х1}1(х ) + . . . + К { п (х ).
Однако для многих задач, связанных с большими системами*подобное сведение оказывается практически невозможным, такчто в процессе оптимизации приходится иметь дело с векторной
(многокритериальной) целевой функцией. При этом допустимая
область М может меняться в процессе оптимизации. Более того,в ее целенаправленном изменении как раз и заключается основ­ная содержательная сущность процесса оптимизации для подоб­ного класса задач.
Поскольку законы возможных изменений допустимой областиМ задаются обычно с и с т е м о й м о д е л е й , то описываемый
подход к оптимизационным задачам естественно называть систем­ным. Заметим, что при системном подходе изменения ограниче­ний, задающих допустимую область в пространстве тех или иныхпараметров, происходят, как правило, в результате последователь­ности решений, выбираемых из дискретного множества возмож­ных решений, причем само это множество в начале процесса опти­мизации обычно бывает не полностью заданным и пополняется впроцессе диалога с людьми (плановиками или конструкторами),владеющими приемами выработки новых решений, не до конца
формализованными.
Приведем одну, из характерных формализованных постановок
задачи системной оптимизации. Для того чтобы лучше уяснить
идею, проиллюстрировав ее гра­фически, рассмотрим двукрите- х ариальный случай. Предположим
Р
Г"(О
ПГ
•также, что выбором значений
этихкритериев
однозначно
определяется соответствующее
] аМ )
решение. Иными словами, иско­мое решение ищется непосред­%10)/ г "ственно в пространстве К кри­териев оптимизации, которые мыобозначим х 1 и х г (рис. 8.17).
Процесс решения начинается
Ос того, что в заданнОхМ простран­Рис. 8.17
стве К выбирается некоторая
точка А о с координатами а0, Ь0—желательное решение задачи. Далее, строятся начальные ограни­чения *1в) ( * ! , * , ) > О, . . . , П 0>(*1, х 2) ^ 0, задающие начальную
допустимую область Р 0. Прямой проверкой устанавливается,принадлежит ли точка А 0 области Р 0. В первом случае в принци­пе может быть применена обычная (классическая) процедура
оптимизации либо по одному из критериев х и х 2, либо по той илниной их комбинации.
Однако при системном подходе применяется обычно совершен­но другой прием, а именно: в соответствии с моделью М высшего
уровня, управляющей выбором критериев, точка А 0 выводится изпределов допустимой области Р 0, как это и показано на рис. 8.17.
После этого выделяются те ограничения, которые не выползшются в точке А 0 (в рассматриваемом случае ими будут / ?з0) и^ 40))- Обращаясь к моделям М3 и Л/4, формирующим эти ограни­чения, в диалоговом режиме опробываются те или иные реш ения,изменяющие соответствующие ограничения в нужном направле­нии (если такое изменение оказывается возможным). Нужнымпри этом считается то направление, которое уменьшает абсолют­ную величину отрицательных невязок
(а0, Ь0) (в рассматрива«мом случае Рз0) (а0, Ь0) и Р[а) (а0, Ь0)).
Следует иметь в виду, что во многих случаях ограничения 1\оказываются взаимосвязанными, так что изменение одного из нихприводит к изменению определенной части других ограничений.
Управление выбором решений для изменения ограничений опре­деляется при этом минимизацией некоторой функции штрафа
#о(ао, Ъ0). В качестве такой функции выбирается обычно макси­мальная абсолютная величина отрицательных невязок Х{Р {^^0)(где Хг — некоторые положительные весовые коэффициенты). Ес­ли таких невязок нет, то по определению #0(я0, 60) ==0.
В результате управления появляется ряд решений
. . . , Нт>приводящих к уменьшению значения функции штрафа, которое
после т-го решения обозначим # т (а 0, Ь0). Каждое из принятых
решений, изменяя ограничения, приводит к соответствующему из­менению допустимой области. На рис. 8.17 показаны два таких
изменения: первое изменяет ограничения Р з{ \ / Г2°)» заАм еняя ихсоответственно ограничениямии Р ^ ; второе затрагивает
лишь одно ограничение Р{* \ заАм еняя его ограничением Р ^ .
Получающаяся допустимая область Р2 ограничена линиями Р ^ \Р?\а соответствующее значение функции штрафа рав­но #2(а<>» Ъ0). Заметим, что заблаговременный выбор конечной до­пустимой области невозможен ввиду того, что последовательность
областей Р 0, Ри . . . может не быть упорядочена по вложению.
Кроме того, огромная трудоемкость формирования новых ограни­чений не позволяет выполнить эту работу заблаговременно, по­скольку при этом потребовалось бы сделать много лишней рабо­ты по изменению несущественных ограничений.
Если (как на рис. 8.17) #2(а0, 6 о )^ 0 , а решений, приводящихк дальнейшему уменьшению значения функции штрафа, нет, топроисходит возвращение к высшей модели Л/, управляющей
выбором желательного решения А (а, Ь). Путем ряда последова­тельных решений Д , Д , . . . , Д на изменение начального реше­ния задачи А 0(а0, Ь0) оно заменяется на А %(аи Ь4), . . . , А к{ак, Ьк) гпока очередная точка А к (щ, Ьк) не окажется в допустимой обла­сти (на рисунке к = 1). Решения на изменения выбираются издопустимого множества решений с целью минимизации функции
штрафа. Этот процесс близок к классическому процессу оптимиза­ции, за исключением того обстоятельства, что шаги выбираютсяне произвольно, а в соответствии с допустимыми (моделью М \решенияхми.
Наконец, после попадания точки А к в заключительную допу­стимую область Рт может быть применена дополнительная про­цедура оптимизации по каким-либо комбинациям критериев х { их 2 в пределах этой допустимой области. Т акая процедура отлича­ется от классической лишь тем, что выбор шагов оптимизации непроизволен, а управляется моделью М высшего уровня. Еслидальнейшему улучшению избранного критерия мешают некото-рые ограничения, поддающиеся дальнейшим изменениям в нуж ­ную сторону, то процесс оптимизации может быть продолжен засчет включения в него последовательных изменений.
Заметим, что однозначное определение реш ения задачи выбо­ром значений всех критериев оптимизации встречается не столь
редко, как это может показаться на первый взгляд. Оно имеет,например, место для планово-экономических задач, где критерием
(векторным) является чистый выпуск продукции разных видов,а решением задачи — полный выпуск. В случае, когда такая од­нозначность отсутствует, пространство, в котором ищется реш е­ние, помимо координат, соответствующих критериям оптимиза­ции, может иметь и другие координаты. Описанный выше про­цесс оптимизации при этом усложняется за счет того, что точки
Аг(а{, Ьг) заменяются гиперплоскостями. Услож няется и опреде­ление функции ш трафа: в качестве нее может быть взято, напри­мер, расстояние от выбранной гиперплоскости до очередной до­пустимой области в пространстве с заданными сж атиями (рас­тяжениями) вдоль осей, соответствующих критериям оптими­зации.
В самом общем случае вместо гиперплоскостей могут фигури­ровать точечные множества произвольного вида. Возможны по­становки, при которых на этих множествах значения критериев
определены неоднозначно, а для различения более или менее
предпочтительных решений на множествах задаются (моделью
высшего уровня М) соответствующие весовые функции. Однако
важной чертой системной оптимизации, сохраняющейся при всехподходах, помимо многокритериальности и возможности измене­ния допустимой области является взаимодействие моделей раз­личных уровней. В случае планово-экономических задач реш енияв этих моделях проводятся управляющими различных уровней*а в случае проектно-конструкторских задач — проектантами.

АВТОМАТИЗАЦИЯ ИЗМЕРЕНИЙ И УПРАВЛЕНИЯ
ТЕХНОЛОГИЧЕСКИМИ ПРОЦЕССАМИ
9.1. Технология автоматизации измерений
Задача автоматизации измерений включает в себя ряд этапов:съем показаний с датчика (измерительного прибора), превраще­ние их в дискретную (цифровую) форму, ввод в спецпроцессорили универсальную ЭВМ и, наконец, обработка результатов изме­рений, подразделяющаяся на первичную и вторичную обработку.
Исторически автоматизация измерений началась с последнего
этапа, т. е. с применения ЭВМ для вторичной (особо сложной) об­работки результатов измерений. Примером может служить вос­становление формы рудного тела по результатам геофизических
измерений.
Первичная обработка измерений на ЭВМ при ручном вводе
данных оказывается весьма малоэффективной, поскольку потери
времени на ввод при относительно малом числе операций по ихобработке обычно не компенсируются экономией, получаемой засчет атоматизации обработки. Поэтому центральной проблемой
комплексной автоматизации процесса измерений является авто­матизация ввода исходных данных. Решение этой задачи произ­водится тремя основными способами. Во-первых, многие измери­тельные приборы (например, электрокардиографы) еще до нача­л а эпохи автоматизации измерений снабжались средствами фик­сации измеряемых величин в виде одной или нескольких кривыхна тот или иной носитель (чаще всего — бумажный).
Поскольку такой способ фиксации информации существует ибудет существовать в течение определенного периода в процессе
перехода к безбумажной технологии, были приняты меры дляавтоматизации ввода этой информации в ЭВМ. Эта цель достига­ется с помощью специальных устройств графического ввода, ко­торые в автоматическом или иногда в полуавтоматическом режи­ме измеряют координаты точек на кривых, изображенных на бу­мажных носителях (или на фотопленке), и осуществляют ихввод в ЭВМ. Полуавтоматический режим заключается в ручном
сканировании нужной кривой (указании нужных точек) и авто-матическом выполнении собственно измерений. Необходимость ктаком режиме возникает в том случае, когда на носителе фикси­руется большое число кривых, из которых для измерения нужно
выделить лишь одну или несколько кривых, интересующих ис­следователя. С подобным положением приходится встречаться,например, при измерениях треков частиц, фиксируемых в резуль­тате экспериментов на ускорителях элементарных частиц (в пу­зырьковых кам ер ах ). Другой случай — ввод сложных контуров
(особенно в условиях невысокой контрастности изображ ений),с чем достаточно часто приходится встречаться в биологических
исследованиях, изучении аэрофотоснимков и т. п.
Второй способ автоматизации ввода — создание отдельных из­мерительных устройств и измерительных комплексов, регистри­рующих измеряемые величины в цифровом виде на машинно-ори­ентированных носителях (чаще всего — на магнитных лентах).
После установки таких носителей на вводно-выводные устройства
общего назначения или устройства внешней памяти универсаль­ных ЭВМ может осущ ествляться непосредственный ввод в ЭВМзаписанной на них информации. В настоящее время построены ишироко используются на практике измерительные комплексы дляиспытаний сложных объектов (самолетов, кораблей и др.)» спо­собные фиксировать на машинных носителях информацию от мно­гих сотен датчиков. В состав таких комплексов вводятся устрой­ства связи с объектом (УСО), обеспечивающие перевод измеряе­мых параметров в цифровую форму и передачу этих данных назапись в той или иной (жестко определенной или оперативно ре­гулируемой) последовательности.
Третий способ заклю чается в непосредственном подключении
(через УСО) измерительных приборов (датчиков) к специализи­рованным или универсальным ЭВМ. При этом зачастую исполь­зуются комбинируемые тем или иным способом модули К амака.
В состав таких модулей помимо аналого-цифровых преобразова­телей могут включаться счетчики и регистры для фиксации циф­ровых сигналов, коммутаторы, устройства управления отображе­нием информации на дисплеях, устройства для первичной обра­ботки данных и др.
В настоящее время аналоговые измерительные приборы все вбольшей степени вытесняются цифровыми приборами, включаю­щими в свой состав необходимые аналого-цифровые преобразова­тели. Развитие микропроцессорной техники привело к появлению
измерительных приборов со встроенными устройствами первичной
обработки (а иногда и вторичной). В случае необходимости более
сложной обработки (в частности, согласованной обработки сигна­лов, поступающих от различных измерительных устройств) по­добные приборы допускают относительно простое подсоединениеи универсальным или специализированным ЭВМ.
48*

9.2. Первичная обработка результатов измерений
Задачи первичной обработки результатов измерений определя­ю тся целью получения возможно более точного значения некото­рой постоянной величины. В более сложных случаях целью может
служить установление функциональной зависимости измеряемой
величины от времени, двух измеряемых величин друг от друга
и т. п.
9.2.1.
Простейшая задача усреднения. Пусть в результате не­которого количества п измерений постоянной величины а полу­чены значения аи а2, . . . , ап. Ошибка измерения р, = а* — а пред­ставляет собой случайную величину, закон распределения кото­рой, как правило, симметричен относительно нулевой точки. Ины­ми словами, положительные и отрицательные значения ошибки
каждого единичного измерения оказываются равновероятными.
В этом случае при предположении о равной точности всех произ­веденных измерений наилучшей оценкой а для измеряемой вели­чины а оказывается среднее арифметическое результатов отдель­ных измерений:
|
—

«

=

—

( « 1

+

« 2

+

*

• •

+

в п ).

( 9 .1 )Оценку для точности приближения получаемого таким образом
среднего значения а к истинному значению а измеряемой вели­чины обычно дает вычисление так называемой дисперсии о2 изме­рений, полученных по формуле
«
а2 =

2

(«1 ~ я)2-

(9-2)

г= 1

Квадратный корень из дисперсии дает так называемую сред­нюю квадратичную ошибку (отклонение) а для данного ряда из­мерений:

°

=

]

/

"

%
(а‘ 1=1(9 -3 )

Заметим, что в случае, когда вместо о ц е н к и а истинного
значения а измеряемой величины берется само это значение, привычислении дисперсии и среднего квадратичного отклонения вме­сто множителя 1 / (дг — 1) нужно брать множитель 1/п. Причина,обуславливающая выбор большего по величине множителя
( 1 / (дг — 1 ) > 1/тг), состоит в том, что среднее квадратичное откло­нение ряда измерений от истинного значения измеряемой величи­н ы а будет, вообще говоря, больше, чем истинное (с множителем
1 /п ) среднее квадратичное отклонение этого ряда от его среднего

значения а. В математической статистике показывается, что ис­пользование множителя 1 / ( п — 1) в формуле (9.2) дает наилуч­шую (так называемую несмещенную) оценку истинного значения
дисперсии
по* = - ^ 2- а)2-

г=1

9.2.2.
Выделение сигнала на уровне помех. На практике передко приходится встречаться со случаем, когда требуется выде­лить периодически повторяющийся сигнал х на фоне сильных по­
мех. Подобная ситуация имеет, например, место в сверхдальней
радиолокации (особенно при локации других планет). Поскольку
моменты прихода сигнала априори неизвестны, измерения произ­водятся не только в эти моменты, но и в промежуточные момен­ты времени (равноотстоящие друг от друга).
Таким образом, возникает ряд измерений х и х 2, . . . , х п, причем
известен период к посылки, а значит, и прихода интересующегонас полезного сигнала. Д ля выделения этого сигнала вычислим ксредних значений, предполагая, что общее число измерений пкратно к , т. е. п = т к . Обозначим через х г среднее значение, вы­числяемое по формуле
т-1

хг = ^

Хы^-г,

г = 1, . . . , кщ

г=0Если полезный сигнал приходит в момент г = г0 (а значит,и во все моменты времени Ы + г0 для I = 0, 1, . . . , т — 1), тосреднее значение х г при п°о будет стремиться (стохастиче­ски) к х , а все средние х г при г Ф г 0 — к нулю. Таким образом,при достаточно большом числе измерений можно со сколь угодно
высокой степенью достоверности найти моменты времени г0 + кь
(1 = 0, . . . , т/1 1) прихода полезного сигнала, а такж е вычислитьего величину.
9.2.3. Экспериментальные распределения вероятностей. Приизмерениях случайной величины х в ряде случаев оказывается
недостаточным определение лишь ее среднего значения и диспер­сии. Наибольшую информацию дает распределение вероятностей
случайной величины, которое может быть представлепо в двухвидах: дифференциальном и интегральном. Интегральное распре­деление вероятностей случайной величины х представляет собой
функцию Р ($ ), при любом 5 равную вероятности выполнения не­равенства х < 8 . Если Р ( в ) — дифференцируемая функция, то ееАпроизводная р (в) = ~ Р (5) представляет собой плотность вероят­ности случайной величины х. Иными словами, р{$) представляет

собой предел отношения вероятности того, что случайная величи­на х принимает значение в интервале 5 ^ х < 5 + Д$, к длине это­го интервала Д$ при Д$ -*■ 0.
При экспериментальном определении законов распределения
случайных величин вероятность того или иного события заменя­ется частотой его повторяемости в эксперименте, т. е. отношени­ем числа экспериментов, в которых данное событие имеет место*к общему числу проделанных экспериментов. Д ля получения
дифференциального закона распределения (плотности вероятно­сти р( з ) ) интервал значений, которые принимала в эксперименте
случайная величина х, разбивается на равные интервалы Д< (г == 1, .. ., А). Если обозначить через щ число экспериментов (из­мерений), при которых случайная величина х принимала значе­ние в интервале Д„ а через п — общее число измерений, то экспе­риментальное значение функции плотности вероятности р{$) наАинтервале Д*принимается постоянным и равным

1 Л*

где че­рез Д обозначена длина интервала. При графическом изображе­нии дифференциального закона распределения плотности веро­ятности часто вместо относительных долей щ!п используют самичисла Пг (что равносильно просто изменению масштаба вдоль осиординат). Обычно опускают также и деление на (постоянную)длину интервала Д.
77) I

30
25

20

15
10

5
О

1

г

3

4

5

1
6

7

х

Рис. 9.1

Полученная ступенчатая линия носит наименование гистограм­мы. На рис. 9.1 приведен пример гистограммы для случайной
величины х . Из нее явствует, что в эксперименте значения вели­чины х , большие или равные нулю, но меньшие единицы, встре­чаются 10 раз, значения между 1 и 2 — 20 раз и т. д. Если слу­чайная величина х может принимать лишь целочисленные значе­ния, приведенная гистограмма означает, очевидно, что в экспе­рименте значения х = 0 встречались 10 раз, значения х = 1 —20 раз и т. д.

При построении графика экспериментального интегрального
закона распределения случайной величины в соответствии с опре­делением этого закона такж е получается ступенчатая линия. Од­нако для многих приложений ее удобно заменять приближением,получаемым интегрированием дифференциального закона распре­деления. В этом случае интегральное распределение представля­ется в виде непрерывной ломаной. На рис. 9.2 сплошной линией
изображено точное, а штриховой — приближенное эксперимен­тальное интегральное распределение для целочисленной случай­ной величины с заданной на рис. 9.1 гистограммой.
Заметим, что если величина х не является целочисленной, тоточное интегральное экспериментальное распределение разбивает­ся, вообще говоря, внутри изображенных на рис. 9.2 целочислен­ных интервалов на более мелкие ступеньки. В этом случае онобудет, очевидно, еще ближе к приближению, изображенному
штриховой линией.
9.2.4. Мода и медиана. Помимо обычного среднего значения
случайной величиныо котором шла речь в п. 9.2.1, иногда ока­зывается полезным вычисление еще двух значений, такж е в к а­
ком-то смысле играющих роль средних значений,— моды и ме­дианы.
Мода представляет собой н а и б о л е е в е р о я т н о е зпачение
случайной величины х , соответствующее абсолютному максимуму
плотности ее вероятности. В экспериментальной гистограмме
рис. 9.2 для случая целочисленной величины х модой, очевидно,будет х = 2. Если рассматривать ступенчатую линию гистограм­мы как приближение некоторой непрерывной кривой, то, будучи
вычислено для этой кривой, значение моды будет расположено
между 2 и 3.
Медианой называется значение х = 5 случайной величины,при котором интегральная вероятность Р($) равна 1/2. При экс­периментальном определении закона распределения для медианыт получается, как правило, не какое-то определенное значение,а лишь оценки снизу и сверху:< т < $2, где Р (5 4) < 1/2,
^ ( $ 2) > 1 / 2 , гдеи $2 — два значения величины
между кото­рыми пет промежуточных (изм еренны х)*). Используя линейное
приближение для интегрального закона распределения на отрезке
[$ 1, $2], получим приближение для медианы:0Ш=+ Дх = 52 - Д 2, где Д х = р '

5

р

/ 5

\

_ --р "- 8Д;

Р( $ о ) — 0,5(9>4)*) Разум еется, мож ет случиться, что для какого-тоимеет место точ­ное равенство Р($») = 1/2. Тогда х =и будет, очевидно, значением ме­дианы.

При использовании медианы вместо среднего квадратичного
отклонения в качестве меры разброса распределения используют­ся так называемые квартили. Нижний квартиль д4 представляет
собой значение случайной величины с интегральным законом
распределения Р ( з ), при котором Р ( д {) = 1/4. Аналогично, верх­ний квартиль д2 определяется равенством Р (д 2) = 3/4. При экспе­риментальном определении квартилей используется тот же прием,что и при определении медианы. В формулах (9.4) при этом ве­личина 0,5 заменяется соответственно на 0,25 и 0,75.
9.3. Интерполяция, экстраполяция и аппроксимация
Одной из более сложпых задач обработки результатов измере­ний является задача нахождения функциональной зависимости
между переменными по конечному числу измерений. Мы рассмот­рим такую задачу для функции одного переменного у = / {х) , зна­чения которой измерены лишь в конечном числе точек: у* — /(ж,)(/ = 1, . . . , п). В задаче интерполяции в широком смысле слова
обычно требуется найти уравнение кривой г/ = /(ж ), проходящей
через все заданные точки А* (я*, у г) (г = 1, . . . , п).
В задаче аппроксимации искомая кривая должна пройти втом или ином смысле б л и з к о к заданным точкам. Обе эти зада­чи не имеют, разумеется, однозначного решения. Для достижения
однозначности требуется уточнить вид интерполирующей (аппрок­симирующей) функции. В случае, когда вид функции априори
неизвестен, обычно прибегают к полиномиальной интерполяции
(аппроксимации), используя при этом полиномы возможно более
низкой степени.
Точное решение (интерполяции) для п точек А*(ж*, у {) (I == 1 , . . . , п) всегда может быть получено в виде полинома у = Ь( х )(п — 1)-й степени, который однозпачно определяется этими точ­к ам и * ). Одной из простейших форм представления интерполяци­онного полинома является интерполяционный полином Л агранж аш=„(* -* ,)(* -« » )•••(* -* * ),(Х1 - Х2)(Х1 - Хз ) - - - ( Х1 - Хп)

I „

Уп

(Х ~ Х1) (Х ~ Х2 ) ' - - ( Х ( * » - * , ) (Х п -Хп - 1 )х 2) . . . ( * « - * « _ ! ).V•При х — Х\ первый член суммы обратится в у и тогда как осталь*) Не исключен случай вырождения, когда степень полинома Ь( х) ока­зывается меньше п — 1 .

вы е члены будут равны нулю, при х = х 2 второй член будет раззен У2, а остальные равны нулю и т. д.
П р и м е р . Пусть при # = 0, 1, 2 переменная у принимает со­ответственно значения 0, 1, 3. Тогда
I ( г \ - 0 4- 1 (д — 0) (*Ь \Х) — V 1 - 1 (1 _ 0 ) (1 _2)о (г-0) (г-1 ) _2 ) 1 - О ( 2 _ 0 ) ( 2 _ 1}

= — х (х — 2) +

х (х — 1) =

х (х + 1).

Непосредственной проверкой убеждаемся, что кривая у( я + 1)действительно проходит точки (0, 0), (1, 1) и (2, 3).
Зная интерполирующую функцию у = Ь ( х ) 1 можно вычислятьее значения при п р о м е ж у т о ч н ы х значениях аргумента х ,не измеренные непосредственно в эксперименте. В этом, соб­ственно говоря, и состоит задача интерполяции в узком смысле
слова. Например, при Ь( х ) = х ( х + 1) /2 легко находим Ь ( 1/2) == 3/8, Ь (3/2) = 1 5 /8 . К ак правило, для подавляющего большин­ства измеряемых в эксперименте функциональных зависимостей
полиномиальная интерполяция дает достаточно хорошие резуль­таты.
С меньшей степенью уверенности можно распространить най­денную зависимость за пределы интервала выполненных измере­ний, реш ая тем самым так называемую задачу экстраполяции.
Например, при у = Ь ( х ) = х ( х + 1 )/2 для х = 3 имеем у = 6, длях = 4 имеем у = 10 и т. д. Впрочем, достаточно близко к интерва­лу выполненных измерений экстраполяция может дать столь п охорошие результаты, как и интерполяция. Например, Ь ( 2 У 2) == 3,52 будет с большой степенью уверенности хорошей оценкойдля результата измерения рассмотренной выше функции в точке
х = 2,2.
Чтобы избежать появления полиномов высоких степеней, ча­сто при полиномиальной интерполяции (экстраполяции) использу­ют лишь две или три соседние точки. Эти простейшие виды ин­терполяции (экстраполяции) носят соответственно наименования
линейной и квадратичной интерполяции (экстраполяции). В этомслучае искомая (интерполирующая) функция будет иметь разные
выражения на различных участках интервала измерений.
Полиномиальные представления являю тся достаточно удобны­ми, однако ничто не мешает использовать для целей интерполя­ции и особенно для целей экстраполяции функции другого вида.
Так, если известно, что искомая функция у = /(# ) является пе­риодической с периодом Г, то для ее представления лучше всего
воспользоваться отрезком ряда Ф урье:у = Ц х ) = а0 + а1соз р х +з т рх + . . . + ап соз рх + Ьп з т р х ,где р = 2л /Г , а коэффициенты щ и Ь{ могут быть определены изсистемы 2п + 1 линейных алгебраических уравнений, получаю­щихся в результате подстановок координат заданных точек в ле­вую и правую части уравнения (9.6).
В других случаях могут возникать системы нелинейных и да­же трансцендентных уравнений. Например, для функции /( я ) == аеЬх и точек Л 4(1, 2), А 2{2, 5) возникает система двух транс­цендентных уравнений:2 = аеь,5 = ае2Ь.

Разделив левые и правые части этих уравнений друг на друга,получим
= 2,5, 6 = 1п2,5; из первого уравнения находим а == 2е~ь = 0,8. В более сложных случаях приходится прибегать кразличным численным методам решения систем уравнений. С по­мощью современных ЭВМ такие задачи решаются относительно
просто.
В задачах аппроксимации также имеют дело с тем или инымклассом функций г/ = /(# , аи . . . , ат ), зависящих от параметрова и а2, . . Ят, например, полиномов заданной степени с неизвест­ными коэффициентами. Используя заданные точки А г(хи у,), со­ставляют разности й , = / — уг (I = 1, . . . , п) и выбором значений
параметров а 4, . . . , а т минимизируют ту или иную целевую функ­цию от этих разностей. В качестве такой функции чаще всего
выбирается сумма квадратов разностей или максимальное значе­ние абсолютной величины таких разностей. В первом случае го­ворят об аппроксимации по методу наименьших квадратов, во вто­ром — о чебышевской (минимаксной) аппроксимации. Во всех слу­чаях для фактического нахождения аппроксимирующей функции
требуется решить некоторую оптимизационную задачу. В методе
наименьших квадратов искомое решение находится обычно из си­стемы уравнений:(9.7)
при подстановке вкоординат заданных точек Аг ( хи у ) (&== 1, . . п).
Рассмотрим пример линейной аппроксимации у = ах + Ъ зави­симости, заданной точками Л ,(0 , 2), А г {1, 3), А 3(2, 5), по методу
наименьших квадратов. Иными словами, параметры а и Ь должны
быть найдены из условия минимума выражения 2 = (6 — 2 ) 244 -(а + Ь — З )2 4-(2а + Ь — 5 )2. Легко найде*м, что дг/да = 10а44 - 6 Ь — 26, дг/дЪ = 6а 4- 66 — 20. Из системы уравнений дъ/да = 0,
дъ!дЪ = 0 найдем а = 3/2, 6 = 11/6, так что искомая линейная ап­проксимация выражается функцией у = Ъх!2 4-11/6. Заметим, чтографик этой функции не проходит пи через одну из заданных
точек.
Задачи интерполяции и аппроксимации, рассмотренные намидля функций одного переменного, легко распространяются и нафункции многих переменных.
9.3.1.
И нтерполяция и экстраполяция при наличии помех.
Центральным вопросом для получения хорошей интерполяции иособенно экстраполяции является правильный выбор экстраполи­рующей функции у = {(х, а,\, . . . , ат ). Решение этого вопроса, до­статочно сложное само по себе, еще более усложняется при на­ложении на основную закономерность изменения экстраполируе­мой функции различного рода случайных помех. Предположим
сначала, что помеха мала по абсолютной величине и порядок еевеличины приблизительно известен. Кроме того, будем считать,что помеха действует с равной вероятностью как в сторону уве­личения изучаемой величины у ( х ), так и в сторону ее уменьше­ния, так что среднее значение помехи равно нулю.
Приведем теперь в описанных условиях один достаточный при­зн ак, для полиномиальной экстраполяции. Он основан на исполь­зовании разделенных разностей для любой функции у = Р ( х ) , за­данной на конечном множестве точек х и #2, . . х п. Обозначим
через у,, у2,у п значения функции Р ( х ) в соответствующих
точках. Тогда
первые разделенные разности вычисляются по формуле
&Уг =

2+1

I 1,

* - 1 , 2,

1;

(9.8)

...,п-2;

(9.9)

3;

(9.10)

Х%вторые разделенные разности:
х г+2

хг

третьи разделенные разности:Д 2 у . , 1 — Д 2 у.

Д3У{ =! ,+1... *' = 1, 2,
* 2+3

Х1

разделенные разности порядка к < п — 1:,

А ‘Уг =

Д^~ 1 г/. , , — Д * - у

Х1+к ~ хг\ *= 1,2, . . . , п — к.

(9.11)

Если Р( х ) —- полином к -й степени, то его ( &+ 1 ) - е разделен­ные разности обращаются в нуль. При точных методах экстрапо­ляции (проведении экстраполирующей кривой через заданные
точки) обращение в нуль разделенных разностей порядка р озна­чает возможность экстраполяции полиномом степени р — 1. Прималой помехе с нулевым средним значением условие обращения
р-х разностей в нуль должно быть заменено совокупностью двухусловий: 1) абсолютные величины разделенных разностей /ыопорядка малы (сравнимы с величиной помехи); 2) среднее зна­чение этих разностей имеет еще меньший порядок величины. Приэтих условиях для аппроксимации экстраполирующей функции
следует выбрать полином (/? — 1) -й степени.
Пусть, например, функция задана множеством точек (1, 1);(2, 3 ); (3, 9); (4, 15); (5, 26); (6, 37); (7, 48); (8, 65). Нетруд­но видеть, что значения функции у ( х ) с точностью до ± 1 совпа­дают с х\. Иными словами, на квадратичную зависимость наложе­на помеха, принимающая значение ± 1 . Первые разделенные раз­ности для заданных значений функции равны соответственно 2>
6, 6, 11, 11, 11, 17. Для вторых разностей получим 2, 0, 5/2, О»О, 3, а для третьих ± 2 /3 , 5/6~ —5/6, 0, 1. Среднее значение длявторых разностей равно (2 + 5/2 + 3 )/6 = 1,25, для третьих (—4 +-Ь 5 — 5 4- 6) / ( 6*5) == 1/15. Порядок величин третьих разностей
сравним с величиной помехи, а их среднее на порядок меньше.
Таким образом, приходим к выводу о необходимости применить
квадратичпую экстраполяцию. Этот вывод вполне согласуется стем, что заданные значения функции у( х) могут быть вычисленыно формуле у = х 2 + г ( х ), где е(л:)— случайная помеха.
Описанный признак может быть распространен и на некото­рые неполиномиальные зависимости. С этой целью используется
подходящая замена переменных, сводящая исходную зависимостьк полиномиальной. Например, зависимость
у = а0 ++ аге2х + . . . + апепх

подстановкой I = 1п х сводится к полиномиальной зависимости
х — а0 + а^Х + а,г%г + . . . + ап1п.
Подстановка %= 1п у, 8 = 1п х превращает зависимость вида у == а!х в линейную зависимость г = 1п а — 5 и т. д.
Указанный прием использует так называемые функциональ­ные шкалы. Суть их заключается в том, что на шкале от начала
координат откладываются отрезки, длина которых равна не значе­ниям самой величины, а есть некоторая заданная функция отэтих значений. На рис. 9.3 в качестве примера на оси абсцисс по­строена логарифмическая шкала. Ее использование по оси орди­нат превращает в прямую линию график любой функции вида
у = аеЬх. Логарифмические ш калы по обеим осям линеаризуют за­висимости вида у = ахь.
Иногда вид экстраполирующей функции может быть подска­зан самой природой изучаемого процесса. Так, динамику рознич­ного спроса на тот или иной товар естественно характеризовать

произведением / ( 0 ф ( 0 Ф ( 0 ' « гДе ф ( 0 » Ф ( 0 “ периодические функ­ции с периодами, равными соответственно неделе и половине ме­сяца (выплата зарп лат). Для характеристики сезона может до­бавиться третий периодический множитель с периодом в одингод, характеризую щ ий сезонные изменения спроса. Этот множи­тел ь / ( 0 определяет динамику изменения среднегодового спроса.
Он может экстраполироваться с помощью полиномиальных илиэкспоненциальных приближений. Для периодических множите­лей, как уже отмечалось выше, можно использовать приближения:в виде начальных отрезков соответствующих рядов Фурье.

0,01

0,1

- о ---------О А10О л ■■— IОгг-Н Г > 10510*

Рис. 9.3

Обычные методы аппроксимации дают при экстраполяции хо­рошие результаты лишь тогда, когда случайная помеха имеет
сравнительно небольшую величину. Если это условие не выполня­ется, то необходимо предварительно отфильтровать помеху. В ря­де случаев такая фильтрация может быть сделана на основании
содержательного представления об изучаемом процессе*).

Рассмотрим в качестве примера динамику ремонтно-восстано­вительных работ жилого фонда некоторого города за ряд лег(рис. 9.4, а ). Допустим, что выброс А , имеющийся на кривой,явился результатом стихийного бедствия, которое случается всреднем раз в тысячу лет. Размер этой «помехи» настолько ве­лик, что ее учет при экстраполяции сильно исказил бы реальную
*) Использование подобного приема требует диалогового метода реш е­ния задачи.

картину. Отфильтровав помеху (т. е. удалив из графика расходы,вызванные стихийным бедствием), можно значительно улучшить
прогноз.
Другой случай, когда задача фильтрации помех получает до­статочно удовлетворительное решение, имеет место при условии,что основной процесс выражается сравнительно медленно меняю­щейся функцией, в то время как помеха (не обязательно малаяпо величине), сохраняя нулевое среднее значение, меняет знак сбольшой частотой. Х арактерная картина такого процесса изобра­жена на риС. 9.4, б. Одним из методов, позволяющих (хотя бычастично) отфильтровать помеху, является метод сглаживания наоснове простого усреднения. Пусть г/0, г/1, . . . , у п — значения
функции. Предположим, что точки х 0, х и .. .,# п, в которых вычис­лены эти значения, расположены на оси абсцисс достаточно густо,чтобы уловить все «взлеты» и «падения» быстро-периодической со­ставляющей изучаемой функции. Выберем интервал Д так, чтобыон был существенно больше среднего интервала Д0, на котором
быстро-периодическая составляющая процесса меняет знак, и в тоже время был меньше интервала Д4, на котором медленно меняю­щаяся составляющая процесса изменится существенно с точки
зрения принятой точности экстраполяции*).
Двигая Д вдоль отрезка [хи #«], заменяем для всех попавшихв него точек х р, х р±и . . . , х р+к соответствующие значения у р, , . „.
4
. . . , уР+к их средними значениями ^ р - |( УР + УР+г + . . . + Ур+п),относя эти значения к середине соответствующего отрезка. Приусреднении значения быстро-периодической составляющей гасят
друг друга и медленно меняющаяся часть процесса проявляется
более отчетливо.
Когда точки х { расположены па равных расстояниях друг от.друга, все сводится к выбору числа д и замене значения у 9 наУч =(Уо + У1 + • • •+(9.12)

значения у ^ х — на
^9+1 = 2ч + 1 (^1 + ^2 + * • * + Уч+И(9.13)*) Если величины интервалов До и Д> имеют один и тот ж е порядок,то неизбежно падение точности экстраполяции. Заметим также, что условие
.малости изменения медленно меняющейся составляющей процесса на ин­тервале А можно заменить условием малости изменения ее первой произ­водной.

и т. д. Наилучший выбор интервала Д (или числа д) определяет­ся предположениями о свойствах быстро-периодической и медлен­но меняющейся составляющих функции у ( х ) и требует специаль­ного дополнительного исследования.
Иногда при сглаживании «загрубляют» приближение, исполь­зуя средние значения для не перекрывающих друг друга интер­валов. Так, вместо ежедневных значений спроса (365 точек загод) изучают поведение среднего спроса за каждую неделю
(52 точки за год).
Второй способ фильтрации быстро-периодических составляю­щих основан на использовании спектрального анализа и излага­ется ниже.
9.3.2.
Экстраполяция случайных процессов. Отметим одно важ ­ное различие, которое имеется при экстраполяции детерминиро­ванных процессов (быть может, со случайными помехами) и чисто
случайных процессов. Смысл экстраполяции детерминированного
процесса состоит в угадывании закономерности, которая имеет
место для всего изучаемого участка процесса. В случайных про­цессах встречаемся с противоположным явлением, поскольку по­иск такой закономерности противоречит самой сущности процес­сов. Правда, свойство непрерывности случайного процесса приво­дит к тому, что его значения в близких друг к другу точках взаи­мозависимы (хотя и не в строго функциональном, а лишь в вероятпостном смысле). По мере удаления точек друг от друга этазависимость делается все более слабой. Методы экстраполяции
случайных процессов должны учитывать это обстоятельство, отда­вая большее предпочтение точкам, к настоящ ему моменту близ­ким по сравнению с более далекими точками.
При применении метода наименьш их квадратов отмеченный
факт может быть учтен введением специальных весовых коэффи­циентов А4, А2, . . Ап, убывающих по мере удаления в прошлое.
При равномерном расположении точек х и . . . , х п (в которых за­дан процесс) вдоль оси абсцисс лучше всего воспользоваться экс­поненциальным законом убывания коэффициентов А» (справа на­лево). Иными словами, выбрав некоторое положительное число
г > 1, полагаем
А4 = г(п" 0 , А2 = г(п_2), . . . , Ап—1= г,Ап = 1.

Подобный метод выбора весовых коэффициентов носит наиме­нование экспоненциального взвеш ивания. При экстраполирующей
Функции взвеш ивания }(х, а 1, . . . , ат) сумма квадратов, которую
требуется минимизировать, запиш ется в видеп8г = 2 г п~1 и а , и .
«=1ат) — г/;)2,(9.И >

Результат экстраполяции не изменится, если вместо г < 1 взять
число К = 1/г > 1 и записать взвешенную сумму квадратов
= 2 ^
1/ (**.
*/4!2.
(9.15)
1=1Выбор величины г (или соответственно /?) зависит от степени
гладкости процесса. Для ее определения необходимо более глубо­кое исследование рассматриваемого процесса и, прежде всего,изучение его автокорреляционной функции.
/9.4. Корреляция и автокорреляцияНа практике часто возникает задача — установить, являютсял и две наблюдаемые случайные величины х и у независимымиили связаны какой-либо зависимостью (не обязательно строго де­терминированной). С этой целью рассматриваются две последова­тельности значений наблюдаемых величин х и х 2у. . . , х п и у и у2, . . .
. . у п, так что искомая зависимость (в случае ее существования)должна иметь место между соответствующими членами последо­вательностей (с одинаковыми индексами). Обозначим через х и усредние значения этих величин, а через а* и оу — их средние
квадратичные отклонения. Величина
п

(9Л 6)* У г—1

называется коэффициентом корреляции двух рассматриваемых
последовательностей значений. Величина г может меняться в пре­делах от —1 до + 1 .
Значениям коэффициента корреляции, равным ± 1 , соответ­ствует наличие детерминированной линейной зависимости у { =*=*йХг + Ъ (а Ф 0) (или=+где с = 1/а, й = —Ъ/а) между
величинами х и г/, а значение г = 0 означает (с определенной до­лей достоверности) отсутствие связи между ними. При этом вобеих последовательностях {я,} и {у,} не исключаются повторяю­щ иеся значения.
Если обозначить через у х среднее значение величины у , вычис­ленное для всех значений второй последовательности, отвечаю­щ их одному и тому же значению (равному х) величины второй
последовательности, то получим уравнениеУ х - у = г ^а ( х - х ) ,(9.17)

ихкоторое называется
уравнение

уравнением регрессииу на х. Аналогично

называются уравнением регрессии х на у . Уравнения регрессии
дают наилучшие (по методу наименьших квадратов) л и н е й н ы еаппроксимации для зависимостей условных (при заданном у илих) средних значений величин у и х от величин х н у соответ­ственно.
Разумеется, линейные аппроксимации могут плохо отражать
истинную природу указанных зависимостей. Для нахождения не­линейных аппроксимаций (нелинейных регрессий) в случае необ­ходимости могут быть использованы общие методы, изложенные
в § 9.3, которые применяются к последовательностям условных
средних значений измеряемых величин. Например, для # = 1 , 2,
1, 3, 2, 1, 3, у = 2, 3, 4, 5, 3, 6, 3 условные средние величины удля х =
2, 3 равны соответственно ух={ = (2 + 4 + 6 )/3 , у х=2 == (3 + 3 )/2 = 3, ух= з = ( 5 + 3 )/2 = 4, так что искомая нелиней­ная аппроксимация (регрессия) зависимости величины у от вели­чины х представится функцией у = {( х) , для которой / ( 1) = 4,/(2 ) = 2, /(3 ) = 4, откуда у = (3я2 - И х + 14)/2.
Имея в виду значение коэффициента корреляции г для уста­новления связей между измеряемыми величинами, программыдля его вычисления обычно включают в состав математического
обеспечения измерительных комплексов.
Для последовательностей х и х 2, . . х п, у {, у 2, . . м Ук значении
случайных величин х н у может вычисляться коэффициент корре­ляции гк со сдвигом к ( 0 ^ к ^ п ) :п—к

Гк = (п - к) ахау 2(**+* — х ) (УI — У)->(9-19)

где средние значения х и у, а такж е средние квадратичные от­клонения Ох, оу вычисляются для отрезков последовательностей:хк+,, •. ч х п, у и • • ч Уп-к- Аналогично при отрицательном к = — |/с|(О < к < п) коэффициент сдвинутой корреляции равен
пгь = (п- 1) а -0 - , _ 2 +1 (*«+» - *) ^- »)•<9-2°)

Будучи функцией целочисленного параметра к, коэффициентгк может рассматриваться как (дискретная) ф ункция взаимной
корреляции двух заданных последовательностей. Если даже обыч­ный коэффициент корреляции г = г0 равен нулю, то неравенство
нулю коэффициента гк при некотором к = 0 может рассматривать­ся как наличие некоторой стохастической зависимости между разВертывающимися во времени дискретными случайными процесса­ми х и у (с запаздыванием или опережением).
Если вторая последовательность совпадает с первой (т. е. х =5888& для всех 1 = 1, . .ч п )у то выражения (9.19) и (9.20) задают
В. м . Г л уш ков

(дискретную) автокорреляционную функцию процесса х и х 2,
. . . , х п. Она характеризует величину зависимости последующих
членов от его предыдущих значений.
Будучи построена для непрерывных случайных процессов, тео­рия корреляционных функций использует вместо сумм интегралы.
Однако при численном решении возникающих здесь задач инте­гралы приходится заменять суммами, так что в результате мывозвращаемся к уже рассмотренному дискретному случаю.
9.5. Спектральный анализКак известно, любая непрерывная функция у = / ( х) вещест­венного переменного, заданная на любом отрезке длины /, имею­щ ая на этом отрезке конечное число локальных экстремумов ипринимающая на его концах равные значения, может быть раз­ложена на этом отрезке в ряд Фурье}{х) = 2[ак соз

кх + Ък з т Ц - к х \(9.21)

Полагая, кк = + ] /" ак + Ъ\ и фА= агс 1%(ак/Ък), можно предста­вить этот ряд в видеКаждый член ряда представляет собой гармонику (гармоническое
колебание) с амплитудой кк и частотой к/1 (колебаний в секунду,если х — время в секундах), или 2пк/1 (радиан в секунду), и сфазой фА (радиан). Легко видеть, что при изменении положения
отрезка (области определения функции / ( х ) ) на оси абсцисс вразложении (9.22) амплитуды и частоты остаются неизменны­ми — меняются одни лишь фазы. При изменении масштаба по осиабсцисс меняются частоты и фазы, амплитуды остаются неизмен­ными. Зависимость амплитуды кк от частоты к/1 (или 2пк/1) на­зывается амплитудно-частотной характеристикой, а зависимость
фазы ф* от частоты — фазово-частотной характеристикой функцийЦх ) . Правая часть формулы (9.22) называется спектральным
разложением или просто спектром функции /( # ). Впрочем, зача­стую спектр функции отождествляется просто с ее амплитудночастотной характеристикой. Нахождение спектров функций со­ставляет задачу так называемого спектрального (или гармониче­ского) анализа.
Разложение в ряд Фурье допускают не только непрерывные
функции, но и функции, имеющие (на заданном отрезке) конечдюе число разрывов первого рода. Каждая такая точка х = с ха­рактеризуется наличием конечных пределов /(с —0) и /( с + 0)при стремлении х к точке разрыва соответственно слева и справа.
В подобных точках ряд Фурье сходится к среднему арифметиче­скому обоих пределов. Аналогично, если на концах отрезка с1 и с2функция имеет разные значения, то ряд Фурье на обоих концах
сходится к среднему арифметическому этих значений (в общем
случае ( / ( с *+ 0) + /( с а - 0) ) / 2 ) .
В практическом спектральном анализе предпочитают иметь
дело с рядами Фурье в комплексной области. Поскольку
== созш + 181пш , то оказывается возможным ряд (9.21) предста­вить в виде/(* )-(9.23)

где гк = ак — Ъки Правда, для такого представления в случае ве­щественной функции }(х) требуется соблюдение дополнительного
условия сходимости ряда (9.21) к нулю. Однако оказывается, чтоесли функция разложима в обычный ряд Фурье, это условие вы­полняется. При этом амплитуда и фаза спектрального разложе­ния будут совпадать соответственно с модулем и аргументом
комплексного коэффициента г„ (с точностью до зн ака).
9.5.1.
Дискретное преобразование Фурье. Коэффициенты комп­лексного ряда Фурье (9.23) легко вычисляются интегрированиемпо заданному отрезку [си с2]:

С1

При дискретном задании функции /(# ) ее значения известны
лишь в конечном числе точек. Обычно предполагают, что сосед­ние точки находятся на равных расстояниях друг от друга, с ш а­гом, который мы обозначим й, так что общее число точек на от­резке (считая оба конца) будет равно 1/с1+ I = N + I.
Поскольку амплитудно-частотная характеристика функции(ее спектр в узком смысле слова) не зависит от положения от­резка на оси абсцисс, его левый конец обычно совмещается с на­чалом координат, так что координаты х п точек, в которых задана
функция /( # ) , задаются формулой х п = 1пШ = пЛ (га = 0, . . . , А ).
Стало быть, можно заменить интеграл суммой

71=0Величина 2я/7 = б представляет собой элементарную частоту(в радианах), так что частота и;к к -й гармоники выражается фор­мулой юк = кб. В результате для к-то коэффициента гк комплекс­ного ряда Фурье получим формулу
N-1

Ъ-2Г п=О
2 ?№*-****> 6 = Т >Й = Ж-<9 '24>Формула (9.24) представляет собой приближенное выражение длякоэффициента гк. Однако оказывается, что сумма ДО первых чле­нов ряда (9.23) при вычисления коэффициентов гк по этой форму­ле точно совпадает со значениями функции }{х) в точках 1п/ДО(п = 0, . . . , ДО— 1). Перенося множитель 1/ п из (9.24) в (9.23)
и обозначая гк = Р ( к 6 ), получим две (точные) формулы:N-1
Р Щ = 2 / (пй) е~ *акп.,к = 0, 1, . . . , N - 1,
(9.25)
п=о

N-1/(и й ) = 1 V р ( щ еш кп> п _ о, 1, . . . , N к=01,(9.26)

где й — интервал дискретности аргумента (обычно времени), аб — интервал дискретности частоты, причем бй = 2п/N. Перваяиз этих формул называется прямым, а вторая — обратным дис­кретным преобразованием Фурье (Д П Ф ). Модуль |/'’(&6)| даетумноженную на ДО амплитудно-частотную характеристику
{спектр) преобразуемой функции }{пй).
9.5.2.
Быстрое преобразование Фурье. Вычисление по форму­ле (9.25) для всех частот 6* (/с = 0, 1, . . . , ДО— 1) требует ДО2 ум­ножений и сложений комплексных чисел, что при больших ДОможет сильна затруднить спектральный анализ даже при ис­пользовании мощных ЭВМ. Однако, используя различные ис­кусственные приемы для вычисления суммы парных произведе­ний, можно значительно ускорить выполнение ДПФ. Алгоритмыдля подобных вычислений принято называть быстрым преобра­зованием Фурье (Б П Ф ).
Обозначая известные (измеренные) значения / {пй) преобра­зуемой
функции через / п, величину е~'ЬЛ= е~12я/* — через м?, аР {бк) — через Рк,представим формулу (9.25) в видеIV-1
Рк = 2 1пШкп, т =(9.27)
П=0
Я/2-1Если ДО делится на 2, то, обозначая
2 /21(*г2)* через Ск, а
1=0
Л/2-1
г
2 / 21+1 (*г2) к — через Н кч легко найдем, чтоРк = Ск + юкН к.

(9.28)Т ак, как— 1, то при вычислении значений С к и Н к обыч­ным способом (не считая вычисления м?2), т. е. за {N12 )2 опера­ций, на вычисления Рк по формуле (9.28) будет затрачено неболее 1 + N + N 7 2 операций. В действительности, используя привычислении шк значение ю2, можно еще более уменьшить этуоценку.
Если число N представляет собой степень двойки (Л^ = 2т ) ,то указанны й прием редукции, называемый прореживанием поаргументу (или по времени, если х в /(# ) есть врем я), приме­няемый последовательно тп раз, позволяет снизить оценку дляобщего числа операций с УУ2 до N 1 о # ^ . При N = 1024 = 210 этосоставляет уменьшение времени счета более чем в 100 раз. П ридальнейшем увеличении N экономия становится еще более зн а­чительной.
Н аряду с прореживанием по аргументу можно использовать
прореживание по частоте, основанное на формулах
N/2-1Р г ь =

2

(/»

+

Л

+

Ы

(и>2 ) \(9 -2 0 )2 [ ( / ! - / ! + * / г ) ю 1\ \/=о

(9-30)

1=0
N / 2 -1

Р*к+1~

К ак и в предыдущем случае, для количества операций Ф урьеN = 2т справедлива оценка N 1о§2. N.
Заметим, что операции прореживания сводят задачу ДП Ф кзадаче Д П Ф с меньшим числом точек. В рассмотренном выш еслучае это было уменьшение в два раза. Нетрудно, однако, вы­вести формулы, сводящие Д П Ф с N точками к Д П Ф с N /р точ­ками, где р — любое целое число, делящее целое число N. Т а­ким образом, редукция может быть применена не только кД П Ф , у которых N есть степень двойки, но и к ДП Ф , у кото­рых N есть любое составное (не простое) число. Заметим еще,что методы быстрого преобразования применимы не только кпрямому, но и к обратному преобразованию Фурье.
Поскольку спектральный анализ находит широчайшее при­менение как при обработке результатов измерений, так и дляуправления технологическими процессами, оказалось целесооб­разным для выполнения БП Ф строить специализированные про­цессоры.
9.5.3.
Понятие о непрерывном преобразовании Фурье. Еслиотрезок, на котором задана функция / ( #) , бесконечен, то ее раз­ложение в ряд Фурье на этом отрезке становится, вообще гово­ря, невозможным. Спектр такой функции в общем случае не дис­кретен, а непрерывен. Амплитудно-частотная характеристика

Р ( м ) функции /(.г) представима преобразованием Фурье:оо‘р (р) =/ ( х ) е ~ 1у)Хдх.

](9.31)—ооПо этойхарактеристике
исходная функция восстанавливается
обратным преобразованием Фурье:оо= 2я ] ^ (и;) е{тх^ и;'(9.32)—ооЕсли / ( я ) = 0 при х = 0, то, очевидно, нижний предел интегри­рования в формуле (9.31) можно положить равным нулю. По­скольку в реальных вычислениях верхний предел интегрирова­ния также должен быть заменен конечным числом I (хотя до­статочно большим), тостановится ясной роль рассмотренного
выше дискретного преобразования Фурье как аппроксимаций
непрерывного случая.
9.5.4.
Использование преобразования Фурье для фильтрации
шумов. На практике часто встречается задача фильтрации шу­мов, спектр которых заметно сдвинут относительно спектра осановного сигнала. Чащ е всего
спектр основного сигпала}(х) состоит в основном изнизкочастотных
гармоник
(функция
}(х)меняется
относительно медленно), а^ спектр шума ф( х) , наобоШ. . Маш рот,— высокочастотных. НаРис. 9.5
блюдаемый
сигнал # (# ) == /(#)+<р(. г) па некотором
отрезке
обычно имеет в таком случае ДПФ с двумя
выраженными «горбами» в низкочастотной и высокочастотной
областях амплитудно-частотной характеристики, как это пока­зано на рис. 9.5. Отсекая в дискретном преобразовании Фурье
гармоники с частотой и> > а (т. е. полагая С ( ы ; ) = 0 при
и> > а) и производя обратное преобразование Фурье для полу­ченной таким образом функции С (и?), получим функцию §( х ) ,которая будет достаточно хорошей аппроксимацией полезного
сигнала }( х) .
9.6. Системы автоматизированного контроля
оборудования
Задача систем (устройств) автоматизированного контроля обо­рудования (сокращенно САКО и л и УКО) с о с т о и т в том, чтобы
автоматизировать измерение и фиксацию значений различного

рода параметров, характеризующих состояние контролируемого
оборудования, а также, возможно, и специальную сигнализациюо назревающих аварийных ситуациях или просто о нежелатель­ных отклонениях контролируемых параметров. На ранних ста­диях развития автоматики значения каждого контролируемого
параметра (как правило, в аналоговой форме) выводились наконтрольно-измерительные приборы, установленные обычно наобщем пульте (щ ите). От каждого такого прибора к контролиру­емой точке протягивались провода (трубки — при использовании,гидравлических или пневматических приборов). Приборы обыч­но снабжались самописцами, записывающими динамику изме­нения измеряемых параметров в виде кривых (чаще всего набумажном носителе). Допустимые пределы изменений парамет­ра фиксировались на шкале прибора в виде специальных меток
(красных линий) или контактов, включавших предупреждаю­щую или аварийную сигнализацию.
При большом числе измерительных приборов (для сложных
систем оно может измеряться сотнями) контрольные щиты ста­новятся громоздкими и дорогими. Кроме того, обилие приборов
рассредоточивает внимание оператора, усложняет его работу иприводит зачастую к серьезным ошибкам. Поэтому, хотя описан­ные системы автоматизированного контроля все еще имеют до­статочно широкое распространение, они постепенно вытесняют­ся более совершенными кибернетическими системами, основан­ными на использовании ЭВМ или специализированных дискрет-*ных информационно-вычислительных устройств.
Главной внешней отличительной особенностью подобных УКО*которые мы будем называть цифровыми, является замена напульте огромного числа шкал различных измерительных прибо­ров небольшим числом устройств отображения (дисплеев илиэкранов). На эти устройства могут выводиться значения любо­го контролируемого параметра, история его изменения, а также*в случае необходимости, значения любых требуемых функцийот текущих и прошлых значений параметров, например прогноз­ные (экстраполируемые) значения параметров, на те или иныемоменты времени. Значения параметров и функций, какправило, выводятся в цифровом виде, однако, в случае необ­ходимости, может быть предусмотрена и графическая форма
вывода.
Порядок (пли, как часто говорят, дисциплина) отображения
определяется программой, заложенной в устройстве управления
системой (универсальной или специализированной ЭВМ). Этоможет быть, например, вывод в заданные моменты времени (ис­пользуя встроенные в устройство управления электронные часы*называемые таймером). Вне очереди могут выводиться значения
параметров, приближающиеся к установленным для них крити-.

ческим значениям. Наконец, во всех случаях предусматривается
немедленный вывод значения любого параметра или функции потребованию оператора. Для этого оператору достаточно набратьимя требуемого параметра или нажать кнопку на пульте, иден­тифицирующую этот параметр. В большинстве современных
цифровых устройств контроля предусматривается возможность
программной функциональной переориентации пультовой клави­атуры при изменениях режимов контроля (без изменений в ап­паратуре). Можно, например, с помощью изменения программыв устройстве управления изменить параметр, идентифицируе­мый той или иной кнопкой. Единственное аппаратурное измене­ние в аппаратуре, производящееся при этом,— замена имени
параметра, помещаемого у соответствующей кнопки или непо­средственно на ней.
Фиксация значений контролируемых параметров в цифровыхЭВМ УКО осуществляется не на бумаге, а на машинно-ориенти­рованных носителях (чаще всего — на магнитных лентах илигибких магнитных дисках). Благодаря этому исключается про­цесс подготовки информации для ее последующей обработки.
Наличие в цифровых УКО универсального (ЭВМ) или специа­лизированного устройства переработки информации позволяет
формировать любые сколь угодно сложные критерии для выделе­ния ситуаций, требующих повышенного внимания оператора.
Например, непрерывно прогнозируя (экстраполируя) значе­ние какого-либо параметра, можно уловить момент, когда до воз­можного принятия им нежелательного значения остается однаминута или один час. При этом управляющее устройство реали­зует описанные выше процедуры экстраполяции (с фильтрацией
возможных шумов), выдавая при наступлении критической си­туации (вне всякой очереди) установленный сигнал на опреде­ленное устройство отображения или включая специальную ава­рийную сигнализацию (мигание контрольной лампы, звук зум­мера или сирены и т. п.).
Сложность и компоновка цифрового УКО зависят от составаи дислокации контролируемого оборудования. Если все контро­лируемые точки и пульт управления расположены в одном мес­те (на расстояниях порядка нескольких метров), то сигналы източек контроля на пульт могут передаваться (по отдельным ка­налам) в аналоговом виде. Устройство связи с объектом (УСО),осуществляющее аналого-цифровые преобразования, равно какл устройство управления, устанавливается при этом непосред­ственно у пульта, на котором располагаются клавиатура и уст­ройство отображения. При больших удалениях контрольного
пульта от точек контроля целесообразно преобразование в циф­ровой код осуществлять непосредственно на местах измеренийили использовать цифровые датчики. Система передачи инфор­мации от точек контроля на пульт может быть при этом значитель­но удешевлена за счет использования локальных концентраторов.
Локальный концентратор представляет собой простейшее циф­ровое устройство с памятью. К нему отдельными линиями (про­водами) может подключаться большое число цифровых датчиков
(чаще всего от 32 до 128). П ринимая приходящие цифровые ко­ды от этих датчиков (возможно, одновременно), концентратор
автоматически приписывает к каждому такому коду помер иден­тифицирующей этот код линии (или, что то же самое, номер
соответствующего датчика). Занумерованные подобным образом
коды передаются по направлению к контрольному пункту поодному каналу (проводной линии) без опасности перепутывания точек контроля, к которым относятся соответствующие ко­
ды. Передачу поступающей «наверх» информации концентратор
может производить либо в порядке ее поступления, либо в со­ответствии с иной дисциплиной обслуж ивания датчиков (уста­навливаемой заранее). При этом не исключено, что некоторые
данные, будут просто игнорироваться и не передаваться даль­ше, другие будут передаваться вне всякой очереди и т. п.
При большом числе точек контроля могут строиться много­уровневые системы концентрации. При этом данные из концент­раторов первого уровня передаются не прямо на пульт, а в кон­центраторы второго уровня, затем (если н а д о ) — в концентрато­ры третьего уровня и т. д.
При передаче на большие расстояния цифровые сигналы ос­лабляются и искажаю тся. Поэтому на приемном конце (на пуль­те, а возможно, и на концентраторах высш их уровней) ставят­ся специальные усилителъно-формирователъные устройства, вос­станавливающие величину и форму исходных сигналов. Кроме
того, для ввода приходящих сигналов в ЭВМ часто оказывается
необходимым согласовать их с принятым в ЭВМ данного класса
интерфейсом ввода-вывода. Поэтому приняты е сигналы могут
подвергаться дополнительным электрическим и логическим (фор­матным) преобразованиям. При преобразовании формата после­довательный код (приходящий по одной линии) может бытьпреобразован в параллельный или (чаще) в последовательно-па­раллельный код. К ак уже отмечалось в преды дущ их главах, по­следовательно-параллельный код (побайтовый с контрольным раз­рядом) принят в качестве стандартного для вводно-выводного ин­терфейса ЕС ЭВМ и большинства других современных ЭВМ.
В сложных системах автоматизированного контроля, исполь­зующих универсальные ЭВМ, для соп ряж ения принимаемой ин­формации с магнитным интерфейсом использую тся специальные
мультиплексоры. Особенно удобны программируемые мульти­плексоры, которые с помощью изменения программы (без ка­
ких-либо аппаратны х переделок) могут настраи ваться на любые

интерфейсы, производя любые заданные преобразования форма­тов данных. Так, включенный в номенклатуру устройств ЕСЭВМ программируемый мультиплексор Барс может осуществлять
произвольные переформатирования данных, поступающих по
128 двоичным входам, в данные, выдаваемые по 128 двоичным
выходам, например, преобразовать 128 последовательных кодов,поступающих одновременно (разряд за разрядом) по всем вход­ным каналам, в сгруппированные по 8 штук и преобразованныев байтовую форму коды, выдаваемые параллельпо по 16 байто­вым выходным каналам.
Мультиплексор Барс комплектуется разработанными специ­ально для пего локальными концентраторами (до 128 штук наодин мультиплексор). К каждому из таких концентраторов мож­но подсоединять до 128 различных цифровых датчиков, так чтомаксимальное число точек контроля даже при одноуровневой
концентрации может достигать 1282 = 16 384 в расчете на одинмультиплексор. Надо иметь в виду, что при большой частоте
опроса датчиков скорость мультиплексора (для Барса 2 млн. опе­раций в секунду) может оказаться недостаточной для обработки
(переформатирования) поступающей информации. В этом случае
общее число точек контроля, приходящееся на один мультиплек­сор, должно быть соответственно уменьшено. Вместе с тем, приналичии у ЭВМ, управляющей работой пульта, нескольких вход­ных каналов, к ней может быть подключено одновременно со­ответственное число мультиплексоров, лишь бы скорость работыЭВМ оказалась достаточной для переработки всей поступающей
информации в нужном темпе.
Описанная сложная структура устройств автоматизированно­го контроля с использованием сложных мультиплексоров и уни­версальных ЭВМ употребляется лишь в тех случаях, когда тре­буется достаточно сложная обработка поступающей информации.
В более простых случаях, когда требуется лишь отображение
текущих значений контролируемых параметров (особенно принебольшом их числе), пульт может состоять фактически из од­ного алфавитно-цифрового дисплея с произвольно адресуемой
памятью и простейшим мультиплексором, обеспечивающим при­ем и запись в память поступающей информации. При необхо­димости автоматического контроля и сигнализации о достижении
теми или иными параметрами заданных граничных значений
устройства управления пульта дополняются специальными ре­гистрами и конечными автоматами (см. гл. I), осуществляющи­ми периодическую сверку текущих значений контролируемых
параметров с хранимыми на регистрах или в памяти их гранич­ными значениями.
Специальные комбинационные схемы или конечные автома­ты могут использоваться для выработки и проверки тех илииных логических условий (важных с точки зрения контроля)*которым должны (или которым не должны) удовлетворять зна­чения контролируемых параметров.
Заметим еще, что в системах автоматизированного контроля
наряду с автоматическими датчиками могут употребляться раз­личного рода устройства для ручного ввода информации. В си­стеме Барс в качестве таких устройств могут употребляться
даже обычные телефонные аппараты. Другим весьма распро­страненным устройством для ручного ввода является датчик со­стояния неавтоматизированного оборудования. Он представляет
собой просто многопозиционный переключатель (или несколь­ко переклю чателей), различным позициям которого сопоставля­ется заранее та или иная информация о состоянии контролируе­мого оборудования, например, «работа в 3-м режиме», «простойпо причине отсутствия энергоснабжения» и т. д.
9.7. Автоматизированные и автоматические системы
управления (АСУ)Автоматизация контроля обычно не является самоцелью, аслужит лишь одним из важ ны х средств управления контролиру­емым объектом. Управление состоит в целенаправленном воз­действии на управляемые параметры системы. Воздействие науправляемые параметры осуществляется с помощью различных
технических средств, начиная с простейших (кнопки, рубильни­ки, переключатели, рычаги, рукоятки) и кончая сложными ис­полнительными механизмами с электрическими, пневматически­ми или гидравлическими приводами. Простейшие средства
служат для ручного воздействия, сложные, как правило, допу­скают управление с помощью сигналов, передаваемых с пульта
оператором или автоматическим управляющим устройством(в частности, управляющей ЭВМ).
При использовании цифровых управляющ их сигналов возмож­ны два основных способа их воздействия на исполнительные
механизмы. В первом способе требуемая величина управляемого
параметра передается целиком на исполнительный механизм, гдес помощью специального цифро-аналогового преобразователя
(чаще всего преобразователя цифра — угол поворота вала) транс­формируется в требуемую установку параметра. Во втором способе
информация в исполнительный механизм передается отдельными
импульсами (двоичными сигналами), каждый из которых вызы­вает определенное элементарное действие (переключение реле,передвижение шагового двигателя на один шаг. вперед или на­зад и т. д.). При близком расположении точек воздействия иУправляющего устройства (пульта) цифро-аналоговые преобра­зования могут выполняться на централизованном устройстве свя-^зи с объектом и передаваться на точки воздействия в аналого­вом виде.
Передача управляющих сигналов от системы управления куправляемому объекту носит название прямой связи, а переда­ча информации в обратном направлении — обратной связи
(рис. 9.6). Обратную связь в системах управления осуществля­ют разобранные выше системы автоматизированного контроля.
Управляющая
система

Прямаясвязь^ Обратная
связь

"

Объект
упраЬления

Рис. 9.6

Д аж е при достаточно высоких уровнях автоматизации управле­ния как в составе самой управляющей системы, так н в кана­лах прямой и обратной связи могут оказаться люди (операторы,диспетчеры, лица, осуществляющие ручной ввод информации,и т. д.). Такие системы мы будем называть автоматизированны­м и , в отличие от автоматических систем, полностью исключаю­щих участие человека во всех звеньях управления. Фактически
подобная частичная автоматизация управления реализуется вбольшинстве систем автоматизированного контроля. Результаты
работы таких систем, как правило, используются сидящими запультами д и с п е т ч е р а м и (операторами) для выработки уп­равляющих воздействий на контролируемый объект. Такие воз­действия — команды диспетчера — могут быть переданы голосомпо громкоговорящей связи и исполняться вручную. Следующий
уровень
автоматизирует
каналпрямой
связи:
команды
набираются диспетчером на пульте и автоматически передаютсяна нужные точки воздействия на объекте управления.
При наличии на пульте достаточно мощного вычислительного
устройства оно может быть использовано для выработки управ­ляющих воздействий. В так называемом режиме советчика ма­шина выдает эти воздействия на одно из пультовых устройств
отображения в качестве советов диспетчеру (оператору). Оцен­ка этих советов, решение на их использование и передача наобъект управления остается при этом за человеком. Устранив
диспетчера в качестве передаточного звена, замыкают весь контур управления на машину, получая тем самым (при отсутствии
датчиков ручного ввода) полностью автоматическую систему уп­равления. При этом диспетчер может быть сохранен для наблю­дения за работой системы и, возможно, для временного переходада ручное управление при выходе системы из строя.

При автоматизации управления относительно простыми со­средоточенными (расположенными в малом объеме) объектами
широко применялись и продолжают применяться до сих пор ана­логовые вычислительные устройства. Появление дешевых микро­процессоров и микро-ЭВМ приводит к их постепенному вытесне­нию цифровыми устройствами, главными преимуществами кото­рых являю тся высокая точность и универсальность. Последнее
свойство особенно ценно, поскольку оно позволяет менять алго­ритмы управления без переделок аппаратуры. В условиях женепрерывного ускорения научно-технического прогресса с подоб­ными ситуациями приходится сталкиваться все чаще.
Что же касается автоматизации управления сложными рас­пределенными объектами, то здесь преимущества цифровой тех­ники в большинстве случаев делают ее использование фактиче­ски единственно возможным решением. Заметим, что для слож­ных объектов часто приходится строить многоуровневые систе­мы автоматизации. При этом отдельными единицами оборудова­ния могут управлять локальные системы. Задачей же систем
более высокого уровня является выработка относительно неболь­шого числа установок, определяющих режимы работы низовых
систем, с целью согласовать их совместную работу по тому илииному комбинированному критерию. В современных многоуров­невых системах управления сложными технологическими процес­сами могут работать одновременно десятки управляющих ЭВМ.
Различают несколько основных видов автоматизированного
управления. В так называемом программном управлении обрат­ная связь отсутствует. Простейшим устройством такого родаявляется обычный автоматический светофор, переключающий светчерез заданные промежутки времени независимо от ситуации,реально складывающейся на регулируемом перекрестке. Более
сложные случаи — станки с числовым программным управле­нием (ЧП У ) и программно-управляемые роботы-манипуляторы—будут описаны ниже.
Один из наиболее простых видов автоматического управле­ния с обратной связью имеет целью поддержание в меняющихся
условиях заданных постоянных значений тех или иных пара­метров (уровня воды в котле, скорости вращ ения вала, темпе­ратуры и влажности воздуха в помещении и т. п.). Такого родазадачи задолго до появления ЭВМ и даже аналоговых машин ре­шались (в простых случаях) несложными устройствами, назы ­ваемыми автоматическими регуляторами. Ш ирокую известность
получил, например, имеющий более чем двухвековую историю
Регулятор Уатта, использовавшийся для поддержания заданного
числа оборотов вала паровых машин.
Более сложными являю тся задачи оптимального упр авлен ия,насчитывающие сегодня много разновидностей. Самая простая изIних — задача экстремального регулирования, целью которой яв­ляется поддержание экстремального (максимального или мини­мального) значения одного из регулируемых параметров. В бо­лее сложном случае речь может идти о поддержании (в меня­ющихся условиях) э к с т р е м а л ь н о г о з н а ч е н и я некоторой
заданной функции от регулируемых параметров. Задача систем,оптимальных по быстродействию, состоит в том, чтобы найти
управление (последовательность управляющих воздействий), ко­торое обеспечивает наиболее быстрый перевод объекта управле­ния из одного заданного состояния в другое. При этом приходит­ся учитывать различные о г р а н и ч е н и я , накладываемые науправление свойствами объекта или особенностями системы
управления.
В теории и практике автоматизированных систем управле­ния (АСУ) принято различать автоматизированные системы у п ­равления технологическими процессами (АСУТП) и автоматизи­рованные системы организационного управления (АСОУ). Пер­вые имеют своей задачей текущее управление работой обору­дования, а вторые — весь комплекс задач управления человече­скими коллективами (в том числе долгосрочное планирование).
Поскольку в современном производстве задачи управления людь­ми и оборудованием тесно связаны между собой, на практике
далеко не всегда легко провести разграничительную липию меж­ду этими двумя типами систем. Например, задача управления
станочной неавтоматизированной линией, которая должна рас­сматриваться как задача АСОУ, превращается в задачу АСУТПпри замене станков с ручным управлением на станки с ЧПУ,хотя содержательная часть задач планирования и текущего уп­равления линией (а не отдельными станками) при этом прак­тически не меняется.
Поэтому в дальнейшем при описании математических задач
управления мы будем использовать несколько иной принцип
классификации, относя к классу технологических систем все си­стемы с пренебрежимо малой задержкой влияния входных сиг­налов на выходные параметры системы. Тем самым задачи пла­нирования (особенно долгосрочного) будут автоматически отне­сены к задачам организационного управления. Однако при та­ком подходе к классу организационных систем следует относить
системы управления технологическими процессами с длитель­ными циклами производства (в химии, металлургии и других
областях). Вообще, учитывая историю развития теории автома­тического регулирования, следует считать, что классические тех­нологические системы управления имеют дело с относительно
быстропротекающими процессами в отдельных единицах обору­дования, а организационные системы — с более медленными про­цессами взаимодействия людей и отдельных единиц оборудова-ния в сложных технических комплексах (цех, завод; отрасль, всенародное хозяйство в целом).
Заметим также, что, говоря о технологических процессах вэтой главе, мы имеем в виду процессы материального производ­ства. Развитие машинной информатики расширило и породило
заново другие виды технологии, а именно технологии обработки.
информации. Вопросы автоматизации информационных техноло­гий (системы обработки данных) будут рассматриваться в следу­ющей главе.
9.8. А втоматизация испытаний
Задача испытаний, независимо от того, имеет ли она делос относительно простым изделием или со сложным объектом, вомногом сходна с задачей управления. Как и в задаче управле­ния, к объекту испытаний применяются те или иные управляю­щие воздействия (передаваемые по каналам прямой связи отавтоматизированной системы или человека-испы тателя). Точнотак же регистрируются (через канал обратной связи) и обра­батываются результаты этих воздействий. Поэтому системы дляавтоматизации испытаний строятся в основном по тем же прин­ципам, что и системы автоматизированного управления.
Имеются, однако, по крайней мере два существенных разли­чия. Во-первых, при автоматизации управления управляющие
воздействия направлены на то, чтобы обеспечить в каком-тосмысле н а и л у ч ш и е условия функционирования управляемого
объекта. При автоматизации же испытаний, наоборот, стремятся,как правило, /поставить испытуемый объект в н а и х у д ш и еусловия, не исключая в случае необходимости искусственного
создания аварийных ситуаций. Второе отличие состоит в том,что результаты испытаний во многих случаях не требуют мгно­венной обработки (в темпе проведения испытаний). Они могут
поэтому фиксироваться на тех или иных машинных носите­лях и переноситься в вычислительный центр для последующей
обработки.
В качестве примера подобной организации автоматизации ис­пытаний можно указать систему Темп ЭК, предназначенную дляавтоматизации летных испытаний самолетов. Заранее рассчи­танные режимы испытаний приводятся в исполнение летчикомиспытателем во время испытательного полета. В течение всего
полета сотни датчиков через специальную систему сбора инфор­мации фиксируют свои показания на магнитных лентах, кото­рые после окончания полета переносятся в стационарный ВЦДля автоматической обработки на универсальных ЭВМ. Реж и­мы следующего испытательного полета рассчитываются в соот­ветствии с результатами этой обработки.

9.9. Математическая постановка задач
автоматического управления

II

ы

04

Состояние объекта управления А мы будем задавать конеч­ным множеством меняющихся во времени параметров У[(1), . . .
• • •» Уп(1), одни из которых в общем случае могут быть непре­рывными, а другие — дискретными. Д ля простоты обозначенийэто множество скалярных параметров удобно заменить одним
векторным параметром у {I). Объект управления может подвер­гаться внешним воздействиям двух видов. Одни из них, кото­рые мы назовем возмущениями, представляют собой заданные
функции времени и^{1), . . . , ит(1), не подверженные управле­нию. Другие представляют целенаправленные управляющие воз­действия, формируемые системой управления В . Параметры уп­равления• • •>
вырабатываются системой В в резуль­тате обработки результатов
. . . , 2/(0 измерения состояния
объекта и, может быть, такж е возмущений и 1(!:), . . . , ит(1), из­мерительной системой С и переда­ются в качестве управляющих воз­действий на объект управления.
Описанные взаимодействия объ­екта А и системы управления Визображены на рис. 9.7. Предполо­жим для простоты, что все взаимо­действия в описанной схеме реали­зуются мгновенно (без задерж ек),а ее поведение изучается на интер­вале времени от I = 0 до I > 0. Вве­дем также в расмотрение вектор
=. . . , х р (1)), характери­зующий состояние системы управления 5 . Тогда функциони­рование системы, изображенной на рис. 9.7, может быть описа­но системой соотношений:(9.33)
У(*)=*Р(у(0), и(1), и(1), /), 1 > 0,
х(1) = С ( х ( 0 ), 2(1), /),(9.34)
0,и(1)),

1 > 0,
1 > 0.

(9.35)(9.36)

Если правые части третьего и четвертого соотношений, ха­рактеризующие измерительную и исполнительную части систе­мы управления, могут рассматриваться как обычные (точечные)функции, то с первыми двумя дело обстоит иначе. В самом де­ле, нетрудно видеть, что значения у(1) и х(1) при любом задан­ном значении 1 = а зависят не только от значений и (г), и(Ь) и2(г) при Ь = а, но, вообще говоря, и от их значений во все пред­шествующие моменты времени ( 0 ^ 2 ^ а) . Иными словами, Р и
С (в отличие от / и @) представляют собой не обычные ф унк­ции, а функционалы, аргументами которых являю тся не значе­ния функций и(1), V(^), 2(2) в момент времени 2, а сами этифункции.
Эти функционалы представляют собой обобщения на общий
(непрерывно-дискретный) случай автоматных отображений, рас­сматривавшихся нами в гл. I. Поскольку операции с подобными
функционалами являю тся достаточно сложными, предпочитают
другие формы записи соотношений, характеризую щ их работу
систем А и В. Идея здесь по существу та же, что и в случае
автоматов: выразить текущ ее состояние объекта с памятью (ха­рактеризуемое набором возможных значений параметров состоя­ния объекта) через п р е д ы д у щ е е (а не через н а ч а л ь н о е )состояние. В дискретном случае (при наличии дискретного вре­мени) понятие предыдущего состояния естественно определено.
Что же касается непрерывного случая, то, как известно, сред­ством, связывающим текущ ее значение (непрерывного) парамет­ра х{1) в некоторой точке 2 с его предыдущими значениями, яв­ляется п р о и з в о д н а я этого параметра по времени в этой точДке (точно, производная слева, т. е.

П т — при Д2 < 0).
Под*-о
этому вместо векторных функциональных уравнений в непре­рывном случае обычно пользуются системами обыкновенных
дифференциальных уравнений, задающими так называемые ди­намические системы.
Предположим для простоты, что измеряемые параметры 2,( 2)совпадают с объединением параметров г/, (2) и *г,(2), а и ( 1 ) = х{1) .
Тогда система, изображ енная на рис. 9.7, представима в видеобъединения двух динамических систем:^ г = ф(г/(< ),« (* ),» (* ),* ).

(9.37)^ - Ч > ( У ( 0 . «(* ),» (< ), 0

(9.38)

с дополнительно заданными н а ч а л ь н ы м иу (I) 1,-0 = 2 / ( 0 ) ,условиями

!>(*) 1|-о = V(0).

(9.39)

При этих условиях из уравнений (9.37) и (9.38) можно най­ти состояния управляемого объекта и управляю щ ей системы какфункции возмущений а (2) и времени 2:
у(1) = г( и( 1), I), V(^) = з( и( ^ ) , I).
(9.40)
Заметим, что функции ср, ф, г, 5 являю тся обычными (вектор­ными) функциями. Если управляю щ ая система В не имеет па­мяти, то управление V (2) вместо соотношения (9.38) может быть2(3 В. М. Глушков

задано более простым явным соотношением
=*)-(9.41)

После подстановки в (9.37) функции | вместо и(1) можно
получить уравнения управляемого объекта А в свободной фор­ме (не содержащей в явном виде управления и (1 )):^= К (у (*), и (*), *)•(9.42)

Д ля иллюстрации введенных определений рассмотрим про­стой пример. Предположим, что имеется запас у некоторого ма­териала, потребляемого со скоростью и и производимого со ско­ростью V (с целью пополнения запаса). Скорость изменения за­паса Ау/А1 будет равна разности скоростей его пополнения и рас­ходования:Ау/(11 = г — и.
(9.43)
Расход и = и(1) представляет собой некоторую заданную функ­цию времени и не является объектом управления. Что жекасается скорости производства V, то ею можно управлять всоответствии с тем или иным законом. Естественно желание вы­брать такой закон управления, который обеспечил бы поддер­ж ание некоторого запаса 0 < а < у при любом расходе и(1). Это­му условию удовлетворяет закон
V = и — к ( у — а),(9.44)
где к — некоторая положительная константа, а у{0) = у 0> а .
После внесения управления система (9.43) преобразуется всвободную динамическую систему, задаваемую уравнением
Ау/йЬ = — к ( у — а).

(9.45)

Решением этого уравнения является функция у(1) = а + се~к1укоторая при любом начальном условии у( 0) = Уо стремится к априпричем с > 0 при у 0 > а , так что у ( 1 ) > а при всех1>0.
В теории управления динамическими системами представля­ют интерес два класса задач, называемых обычно задачами ана­лиза и синтеза. Задача анализа применяется к свободным дина­мическим системам и состоит в изучении различных аспектових поведения. Задача синтеза ставится применительно к систе­мам, имеющим хотя бы один управляющий параметр
Смыслэтой задачи состоит в нахождении такого закона управления,который обеспечит некоторое наперед заданное поведение си­стемы.
Простейшая задача анализа (задача Коши) состоит в том,чтобы при заданных начальных условиях у{(0) = аь уг(0) = а2, . . .

. . Уп ( 0 ) = а „ определить траекторию системы, т. е. систему
функций
Уп{Ь), удовлетворяющих уравнениям,которыми задается рассматриваемая динамическая система, иимеющих заданные начальные значения.
К ак доказывается в теории, задача Коши для системы обык­новенных дифференциальных уравнений с непрерывными пра­выми частями всегда имеет единственное решение. Имеется боль­шое число методов фактического численного решения задачи
Коши, обеспечивающих нахождение последовательных точек ис­комой траектории с любой заданной точностью. В основе боль­шинства этих методов лежит следующая идея: исходя из на­чальной точки Л/(0) = (у 1(0), у 2(0), . . . , у п (0) ) , строится после­довательно ряд точек М(1г) искомой траектории, где ^ = 2*_1+
4" Д^ (г = 1, 2, ...,— 0), причем для вычисления координат
Уг{и) очередной точки используют координаты Уз(^-к) постро­енных ранее точек и значения производных у; (^_й) в этих точ­ках, которые могут быть получены из уравнений, задающих си­стему.
Простейший (хотя и очень несовершенный) метод основыва­ется на использовании приближенного соотношения У\(1 + Д ^ )^& Уг (0 + у М) Д ^ Пусть, например, в уравнении (9.45) к = 1,
а = 1. Построим несколько последовательных точек траекториис начальным условием у ( 0 ) = 0 и шагом А^ = 0,1.
Записывая уравнение у' = 1 — г/, получаем
|/ '( 0 ) = 1 - |/ ( 0 ) = 1,откудау ( 0, 1 ) « 1/ ( 0) + у ' ( 0 ) М = 0 + 1 • 0,1 - 0 ,1 ;
у (0,2) Ф у (0,1) + у' (0,1) Д* = 0,1 + (1 - 0,1) 0,1 == 0,1 + 0,09 = 0,19;у (0,3) = у (0,2) + у ' (0,2) Дг = 0,19 + (1 - 0,19) 0,1 » 0,27.
Точное решение имеет вид

У = 1 - е-‘,что дает
у (0,1) « 0,095; у (0,2) * 0,181; у (0 ,3 )« 0,260.
Повышение точности при приближенном решении требует
уменьшения шага Д^ или перехода к более точным методам (Руиге — Кутта, Адамса и др.).
Вторая важнейш ая задача анализа свободных динамических
систем — анализ их устойчивости. Общий смысл понятия устой­чивости состоит в том, что малые изменения начальных усло­вий и входных функций не должны приводить к большим изме­нениям определяемых ими траекторий.
20 *В теории авторегулирования особое значение приобрела такназы ваемая асимптотическая устойчивость. Суть ее состоит вследующем. Пусть М(г) = ( у1(1), у г (1),у п(1)) — траекто­рия, заданная некоторыми начальными условиями у , (0) = а*
( 1= 1, 2, . . п) или, иначе, начальной точкой Л/0 = ( а 1, . . . , а„).
Д авая малые изменения координатам а и а 2, . . ап, построим но­вую начальную точку М 0 и определяемую ею траекторию (пе­ременную точку) М( 1) . Говорят, что система локально асимпто­тически устойчива в точке М 0, если расстояние между точками
и М{1) стремится к нулю при I -►Термин «локальный»применительно к устойчивости означает, что устойчивость имеет
место лишь по отношению к малым изменениям начальных ус­ловий.
Если устойчивость сохраняется при любых изменениях на­чальных условий, то говорят об устойчивости системы в целом;в этом случае в пределе при 1-* °о все траектории, независимоот своих начальных точек, сливаются в одну — система как бы«забывает», из какого начального положения она начала раз­виваться.
9.9.1.
Линейные динамические системы. Обе задачи анали­за — определение траекторий и анализ на устойчивость — полу­чают исчерпывающее решение для систем, определяемых линей­ными дифференциальными уравнениями с постоянными коэф­фициентами. В общем виде такая система может быть задана
следующим образом:йу
"77
СИ = а ц У 1 + д12^2 + • • • + &1пУп + и 1 (0>а 2\У 1 + а 22^2 + . . . + и2пУп + ^2 (0*.

си

йуп

(9.46).ч= ип\у^ -Ь ап^Уч + .. . + а ппУп “Ь ^п(0*В теории линейных систем с постоянными коэффициентами
особое значение имеет определитель
0( 8) =

*-«11

а12

а 13

- в21

8 ~ а 22“~ а 23

ап\

ап2

а1П
*'*

а2п

апЗ *•* 5“~ апппредставляющий собой полином степени п от 5. Он называется
обычно характеристическим полиномом рассматриваемой системы.
Общее решение системы (9.46) записывается в видеУх { 1 ) = сифг1( 0 +Ф<2( 0 + - - • + с«»ф<п(*) ++( *) +^12 (*) + . . • + 4 ' т ( 0 ,*=1, 2 , .

.

/г*К аж д ая из функций фл(*) соответствует определенному корню
характеристического полинома 0 ( 8 ) , а каж дая функция
—•свободному члену
Вещественному корню $ = г соответству­е т функция ц Ц ) = егг, а паре комплексных корней 8 = р ± г д —пара функций ц(1): ер1 соз д1 и
з т д*. Функции и{(1) = ет* со­ответствует функция ^ и ( 1 ) = Ъ е т\ функциям з т рх, соз рх илиа зш р х + Ь соз рх соответствует функция А з т рх + В соз рх; ес­ли М О 8888 ао1к + а^ ~ 1 + . . . + ««,то фя(*) =+ А хгк~х + . . .
. . . + А п и т. д. Если ф ункция и, (2) есть сумма функций у к а­занного вида, то и я)?«(*) будет представляться в виде соответ­ствующей суммы.
Наконец, нужно иметь в виду, что все функции <р*(*) долж­ны быть различны как между собой, так и с любой из функций• я ) Е с л и это не выполняется, то различие достигается умно­жением соответствующих функцийв первом случае и ф унк­ций ф«(2)— во втором на множители вида 1т с минимальной
возможной степенью т, способной обеспечить требуемое разли­чие.
В качестве примера рассмотрим систему
X = X + у + е*,

у' = у - е \Ее характеристический полином 0 ( 8 ) ,V. 1 \ |- ( '- О '.

имеет двойной корень 5 — 1. Поскольку функции фгА должны
строиться для каждого корня, то в данном случае их должно
быть две. Д ля того чтобы обеспечить их различие, умножаем
одну на I. Получаем две функции: е* и 1е*. Свободные члены е*и —е* снова порождают функции ф** вида Ъе*. М ежду собой онимогут совпадать, однако необходимо обеспечить их различие поотношению к уж е построенным функциям ф (постоянные коэф­фициенты при- установлении сходства и различия во вниманиене принимаю тся). Д ля этой цели достаточно умножить их на I2.
Поскольку коэффициент Ъ неизвестен, обе функции ф можно
объединить в одну.
И так, решение системы можно искать в виде
х = ае* + Ые* + с12е \ у = йе* + ]1е* + $12е*,где а, Ь, с, й, /, # — некоторые постоянные коэффициенты. Д ляих определения подставляем найденные значения х и у в урав­нения:
ае* + Ъе* + Ые1 + с12е1+ 2 с1е* = ае* + с12е* + с1ге* + й е* + }1е* + ’+ %12е* + е1, йе* + }е* + {1е* + %12е* + 2д1е* = йе1 + $1е* + цРе* — е*«IПриравнивая коэффициенты при одинаковых членах, получаем
систему уравнений:а + Ь = а + а + 1,
й+ / = й -1 ,6 + 2с =С = С+

Ь + /,/ + 2 * = /,8 = 8,

откуда 8 = 0; / = — 1; с = — 1/2; (1 = Ь — I. Коэффициенты а и Ьмогут оставаться произвольными.
Общее решение системы можно представить в видех = (а + Ы — I2/ 2) е*, у = ( Ь — I — I) ег.

Значения коэффициентов а и Ъ можно определить из начальных,условий. Пусть у ( 0 ) = у о и # ( 0 ) = х0. Тогда а = х 0, Ь — 1 = у пу
Ь = 1 + г/0. Таким образом, траектория с начальной точкой
Цо(#о, У,о) задается уравнениями
х = [ х 0 + ( 1 + уо)1 — 1г/2]е\ у = (у<>-1)ег.
Вопрос об асимптотической устойчивости линейных системс постоянными коэффициентами получает исчерпывающее реше­ние: для асимптотической устойчивости такой системы в целом
необходимо и достаточно, чтобы все корни ее характеристическо­го полинома /)($ ) имели отрицательные вещественные части.
В только что рассмотренном примере вещественные части обоих
корней полинома # ($ ) равны + 1 , и потому асимптотическая ус­тойчивость не имеет места.
Для уравнения (9.45) характеристический полином О(з) ра­вен, как нетрудно проверить, з + к. Единственный корень з = — кэтого полинома отрицателен (так как / с > 0 ) , поэтому данная си­стема обладает свойством устойчивости в целом. Ее решение, всоответствии с описанными выше правилами, следует искать ввиде у = Ъе~кь + с. После подстановки в уравнение (9.45) полу­чаем— кЪе~ы = —к(Ъе~к1 + с — а),откуда с = а. П олагая I = 0, находим у 0 = Ъ + с = Ъ + а, откуда
г/о — а = Ъ. Общее решение системы записывается в видеу = ( У о - а)е~к* + а.
При I -*■ «>, независимо от начального значения у 0, имеем уагчто наглядно демонстрирует свойство асимптотической устойчи­вости системы (уравнения) в целом.
Переходя к задачам синтеза, остановимся прежде всего наклассической задаче теории автоматического регулированията именно на задаче построения такого закона управления, прикотором рассматриваемая динамическая система оказывается ла-сально асимптотически устойчивой. Один из наиболее часто
встречающихся частных случаев этой задачи заключается в том,нтобы поддерживать с определенной степенью точности задан­ные значения основных переменных: У1 ^ ) ^ аи г/2( 0 ^ аг, . . .
Как и задачи анализа, задачи синтеза наиболее полно изуче­ны для линейных систем с постоянными коэффициентами. Удоб­ным математическим аппаратом в этом случае является так на­зываемое преобразование Лапласа. Суть этого преобразования
состоит в том, что для любой непрерывной функции у ( 1 ), опре­деленной для значений I > О, может быть определено ее изобра­жение (по Л апласу) У ( 5), задаваемое формулой
оо

(9.47)ОТТо изображению всегда можно восстановить исходную функцию,используя формулу
а+1оо

(9.48)
где а — любая неотрицательная константа, превосходящая ве­щественные части всех особых точек (точек разрыва) функции
У(в).
Применение преобразования Лапласа сильно упрощается тем,что может быть построен специальный словарь для наиболее
употребительных функций и операций, позволяющий в большин­стве случаев выполнять преобразования без применений формул
(9.47) и (9.48). Выпишем для примера несколько строк из это­го словаря:у ^ 1 ) + Уг(1) ++ М * ) + Уг(8) ’>ау ( I ) а У ( в ) ;У'(*)++ - у ( 0 ) + зУ($);у ’ ( г ) ~ - у ' ( 0 ) - * у ( 0 ) + *У(*);
а
а/$;
а/в;

еа% ++ 1/(5 — а ) ;81П а%
а! (в2 + а2) ;соз аЬ

в/ (в2 + а2) ,а = сопз!.

Используя преобразование Лапласа и обратное ему преобра­зование, получаем еще один способ решения систем обыкновен­ных линейных дифференциальных уравнений с постоянными ко­эффициентами. Например, применяя преобразование Лапласа куравнению (9.45), находим —*/(0) + зУ (з) = — к (У ($)— а/в), от­куда У ( з ) = а к / ( $ ( 8 + к ) ) + у ( 0 ) / ( 8 + к ) . Поскольку а к / ( 8 ($+к) ) == а / 8 — а / ( з + к ), то, применяя обратное преобразование, полу­чаему ( 1 ) = а — ае ~ к1 + у (0) е~кг = а +[у (0) — а\е~к\что совпадает с решением, найденным выше.
Применим преобразование Л апласа к общей системе обык­новенных линейных дифференциальных уравнений с постоянны­ми коэффициентами:( 5 - а 11)У1( 5 ) - я 12У2( 5 ) ~ . . . - а1пУп($) = гг4( $)+ Ы О Ь- а 21У 1 (з) + (з — а 22) У г { в ) - . . . - а 2пУп( 8 ) = и 2 (з)+ у 2 {0 ),&п\У1(^)

О-пгУг ($). . . “Ь ($Лггп)У п(^)и п(з) + у п ( 0 ).

Реш ая полученную систему линейных алгебраических урав­нений, придем к следующим выражениям:NУ г (*) =

[ « 1

(*) +

Ух (0 )]

(з)

N

+

[Щ (В) + Уг (0 )]N.

• . . + [ и п (5) + Уп (0 )]

(?)

+

...

(з)

^=

1» 2 , . . . , п,где О ( з ) — характеристический полином рассматриваемой систе­мы, N 13( 3 ) — полиномы от 5 степени на единицу меньше, чемВ { з ) , т. е. п — 1, представляющие собой алгебраические допол­нения элементов /-го столбца определителя.
Ф ункция N^^( 8 ) / ^ ( 8 ) = Рц(в) называется передаточной функ­цией рассматриваемой системы по отношению к входному пара­метру щ и выходной основной переменной у *. Эта функция име­ет определенный физический смысл. Если принять
(оо“' ( , Н опри I = 0,
при 1ф0,^Ь < < > Л -1,:

то, как нетрудно видеть, гг,($ )= 1 . Полагая пл(^) = 0 при к Ф ]и у { (0) = у 2(0) = . . . = у п (0) = 0, получаем
У , ( * ) = - / М * ) Иными словами, передаточная функция Рц( 8 ) может трактовать­ся как реакция системы по г-му выходу на единичный импульс
(6-функцию ), подаваемый на /-й вход при нулевых начальных

условиях и отсутствии входных сигналов по всем остальным
входам.
Если при нулевых начальных условиях положить щ(1) = а; == сопз 1, ик(1) = 0 при к Ф ] , то система дает постоянные сигна­лы у,по каждому выходу. Отношение ЬУа, = рц назы вает­ся коэффициентом усиления системы по паре у-й вход — 1-й вы­
ход. Можно показать, что Ъг/а} = / ^ ( 0 ) .
Аналогично, если при нулевых начальных условиях принять, и ^ ) = ^ 8та ик(1) = 0 при к Ф ] , на выходах появятся сиг­налы У1 ( 1 ) = Ьг з т ( и ; +■ й{)1. Отношение ЬДсоз йг + I з т й,)/а, == рц(и>) называют (комплексным)коэффициентом усиленияпри частоте
Можно показать, что Ргз(и)) = Р^{и){). Ф ункцияРь (ш{) назы вается частотной характеристикой системы по паре/-й вход — г-й выход. Задание этой характеристики вместе скоэффициентом усиления р^ определяет
соответствующую
передаточную функцию системы.
Приведенные результаты показывают, каким образом может
быть экспериментальным путем определена передаточная функ­ция линейной системы в случае, когда соответствующая система
уравнений (9.46) неизвестна. Д ля реш ения задачи о синтезе
линейной системы управления пред­ставляют с помощью передаточных —лфункций как объект управления,х
/1
так и регулятор. Предположим дляпростоты, что речь идет о систе­мах с одним входом и одним вы­Яводом.
Пусть Р { ($) — передаточная функ­ция объекта: Х ($) и У ($) изобраРис. 9.8
жение (по Л апласу) его входнойи выходной функций. Вход регулятора, задаваемого передаточ­ной функцией Р 2( 5), присоединяем к выходу объекта, а выра­батываемый им сигнал Р2( 8 ) У ( з ) вычитаем из входного сигнала
^ ( $ ) . Такое присоединение регулятора назы вается обратной
связью (от выхода к входу) (рис. 9.8). У равнения (в изображе­ниях) для полученной таким образом новой системы запишемь виде
У ( 8 ) = Р 1( 8 ) [ Х ( 8 ) ^ - Р 2(8)У(8)1«откуда
т
_
_ Р
Х(»)
1 + ^ ,(« > ^ ,(« )^де / ^ ( з ) — передаточная функция новой системы.
Д ля обеспечения устойчивости достаточно подобрать ф унк­цию так, чтобы нули знаменателя вновь полученной передаточ­ной функции имели отрицательные вещественные части. Н а­пример, если Р у(з) = 1/ (5 — а ) , а > 0, то, выбирая Р2($) == с /( $ + Ь), получаем в качестве Р3{§) функцию
1/ ( 5 — а)

5 + 6

1 + с/Ц5 — а)(5 + 6)1

52 _)- (Ь — а)8 + с — аЬЛегко видеть, что при Ь > а и с > аЬ вещественные части обо­их корней знаменателя будут отрицательны. Таким образом, об­ратная связь с передаточной функцией /^ (з ) превращает перво­начально неустойчивую систему в устойчивую.
Более сложным образом ставится и решается задача синтезав том случае, когда требуется сконструировать регулятор, обес­печивающий не только устойчивое, но и целенаправленное и темболее оптимальное регулирование. Одна из наиболее известных
постановок задачи целевого регулирования заключается в сле­дующем. Пусть на множестве основных переменных у и Уг, . . у пи входных параметров и и и г, . . . , ит задана некоторая целевая
функция /(г/ 1, . . . , у п; гг4, . . . , ггт ). Требуется сконструировать
регулятор, который обеспечил бы поддержание при изменениях
входных параметров постоянного (с некоторой точностью) зна­чения целевой функции /. Пример подобной задачи дает рас­смотренная выше задача управления запасами. Управление, за­данное соотношением (9.44), обеспечивает (при Уа = а) равен­ство а целевой функции /(г/, гг) — г/.
Одна из известных постановок задач в теории оптимального
управления состоит в том, чтобы обеспечить (при изменениях
входных параметров гг4) минимальное или максимальное значе­ние целевой функции. Например, пусть в той же задаче управ­ления запасами необходимо найти управление, обращающее вминимум функцию
/ = Ъу + си/у,первый член которой оценивает расходы на содержание запаса
г/, а второй оценивает потери, которые могут быть вызваны не­хваткой запасов при внезапном росте спроса и . Минимум этойфункции (при заданном гг) находится из уравнения
Ь —- с и /у 2 = О,откуда у = Уси/Ь. Подстановка в уравнение (9.43) дает,Л/сТЪ ,,си'у =-и = V — и, или V = гг +2 ~\/и
’2 1/ЬсиД ля обеспечения устойчивости регулирования добавляем член—ку. Требуемый закон управления запиш ется в видеПерепишем уравнение (9.43):

его общее решение имеет виду = Ае~к1 + У с а / Ь ,•что и обеспечивает асимптотическое стремление к оптимальному
регулированию. Управление будет оптимальным в делом, еслиу 0 = У с и 0/Ъ.
Хотя рассмотренные примеры относятся к числу линейных
систем с постоянными коэффициентами, многие из описанных
выше приемов, в частности метод преобразования Лапласа и ис­пользование передаточных функций, могут быть распространенына более широкие классы динамических систем.
9.9.2.
Принцип максимума. В заключение опишем еще одинкласс задач по синтезу законов управления, основанный на при­менении принципа максимума Л. С. Понтрягина. Наиболее про­сто этот принцип применяется для динамических систем= и (УЪ У-1, • • •. Уп, V !, VI, . . .,
ауг

* /
ч
= /2 (У 1, У 2, • • •> Уп, V !, У2, . . . , Vт ),(9.49)

Зу
“

/п

{Уъ

^2»

• • *»

Уп* 1^1»• • • »

Ут)»Системы такого вида, правые части которых не содержат вход­ных параметрови не зависят явно от времени
принято на­зывать автономными. Система (9.49) может быть переписана ввекторной форме:% = 1{У ,»).

(9.50)

Решение у(1) уравнения (9.50) принято называть траекто­рией . Управление V ищется для задач рассматриваемого типа ввиде г(0 > т. е. исключается зависимость управления от основ­ных параметров у г (обратная связь).
На множестве управлений задается функционалЧ^ = ^ и(У(^),V(^))с^^,(9.51)
оценивающий качество управления. Пределы интегрированияОо ипредставляют собой моменты времени, когда точка у{1)находится в начале и в конце оцениваемого отрезка траекто­рии. Простейшим случаем оценочного функционала У, получающимся при /о (у, V) « 1, является время

] й1 = 1г — Ь0 прохож­иедения данного участка траектории.
Количество возможных вариантов и(1) ограничивается замк­нутым множеством Р допустимых значений. Задача оптималь­ного управления в этом случае ставится следующим образом:в множестве Р допустимых управлений найти такое, для кото­рого функционал У принимает наименьшее возможное значение.
Д ля решения этой задачи исходная система (9.49) дополняется
(га+ 1 )-м уравнением
Уо 8=8 /о {у 1ч Угч • • • ч Упч V1» ^2ч • • • ч ^тп)*(9.52^

правая часть которого совпадает с подынтегральным выражени­ем оценочного функционала У.
Вводятся вспомогательные неизвестные ф0? фь • • фп, для ко­торых выписываются дифференциальные уравнения
0ф,

V
к=О

д*Ъ (у’
— а

,

.

,

1

п >• о

^ 2’ •••» Па/п(9-53*

После их решения в общем виде (с постоянными интегрирова­ния) строится функцияпН СФ, У ^ ) =^ ф АД ( у , V).
к=ОВозможные оптимальные управления находятся на основе
принципа максимума Понтрягина:Д л я того чтобы управление и(1) было оптимальным, необхо­димо, чтобы для любого значения Ь, Ъ < * <функцияЯ (ф , у , и) переменного вектора V достигала максимума в точке
и = и(1). При этом величина ф0 постоянна и ф0 < 0.
В приведенной формулировке принцип максимума дает толь­ко необходимые условия оптимальности управления. Для нахож­дения необходимых и достаточных условий требуются дальней­шие его уточнения. Однако и в приведенном виде принцип мо­жет с успехом применяться для решения практических задач.
Предположим, например, что нужно переместить на горизон­тальном участке дороги с пренебрежимо малым трением из од­ной точки в другую транспортное средство, двигатель которога
может сообщить ему любое ускорение V, по величине не превос­ходящее ед и н и ц у * ). Критерием оптимальности будет служить
время, затраченное на перемещение. Иными словами, в качестве
оценочного функционала выбираем

‘1Уравнение движ ения объекта будет иметь вид у[ = V. Вводя
обозначение у 2 = У запишем уравнения движ ения в обычном
виде: у[ = у 2, Уъ = V. После дополнения уравнением вида (9.52)
придем к системе
Уо = 1, у[ = Уъ, Уг = V.
У равнения (9.53) в данном случае принимают види г = а ;, ду2 ,
+ аг0 ^

«М»!

, ду

« (1 ),

3 (1 ) ,

-Л

,

,

+ ^
&у2 ™

, ^

Я = фо +

дV ,

Л

+
^

Отсюда фо = сопб!;г)?! = сопз!;функции Я получим выражение

п
= °*

ф2 =

<>у 2 ^ 2+ с

(с = сопз!).

Д ля^ + $ {у 2 + (г^^ + с) V.

Поскольку —1 ^ V ^ 1, то максимум функции Я достигается
при V = — 1, если ^ + с < 0, и при у = -И , если+ с > 0.
Будучи линейной, функция+ с на заданном интервале мо­жет менять знак не более одного раза. Поэтому на этом интер­вале возможны лишь следующие последовательности оптималь­ных управлений: (— 1), (+ 1 ) , ( — 1, + 1 ) или (-И , — 1).
Выбор нужной последовательности и момент переклю чения
управления в двух последних случаях происходят в зависимо­сти от значений у 1 и у 2 на концах рассматриваемого интервала.
Пусть, например, ^ = 0; г/!(0) = 0; у 2(0 ) = 1; у 1(г2) = 2 \ у 2(12)=*= 0. Закон движения на участке от 0 до т, получаемый из урав­нений движения, запиш ется в виде
У2 ( 0 = V (I) + у 2 ( 0 ) , у 1(I) = VI2/ 2 + 1у2 (0) + у 4( 0) ,или
у 2 = VI +1,

у х = VI2/ 2 + I.

*) Решение этой задачи очевидно, так что последующие вычисления
служат лишь для иллюстрации применения принципа максимума.

Выбор нужной последовательности управлений можно осу­ществить методом перебора. На начальном участке [0, т] выби­раем управление V = + 1 (режим разгона) и записываем урав­нения движения в видеу 2 = I + 1,

У1 = 1г!2 + I.

На участке [т, и] выбираем управление V = — 1 (режим тор­м ож ения). Уравнения движения представятся в видеу 2 = — I + си

у 1= — I1/ 2 + С\Ь + с2.

Д ля точки 12 получаем соотношения
У2 (^2) ^^2 “Ь"= 0, у г (^2) —^2/2 + С^ 2 + с2 = 2,откуда с 1= 12\ с2 = 2 — 1\/2. Д ля точки т из двух законов дви­ж ения имеем
У%(т) = т + 1 =*= — т + си

у 1(т) = т2/2 + т = — т2/2 + С1Т + с2,откуда 2т = С! — 1 = 1г — 1, или т — (12 — 1)/2. Подставляя этозначение в последнее уравнение, найдем

[4 Р> - 1)]' + 4 «, - 1) - « . ( ^ ) - (2 - 1 ) - О,пли ^2 + 2^2 — 9 = 0. Следовательно, 1г = — 1 ±У1 + 9 = ±У10 — 1.
Из двух корней реальный физический смысл имеет лишь поло­жительный. Таким образом,12 = УТО - 1, т = ( * 2 - 1)/2 = У2^Г— 1.
Следовательно,разгоняясь
навременном
интервале
[0, У2,5 — 1] с максимальным ускорением г = 1 и затем тормозяс таким же максимальным ускорением, мы достигнем требуемой
точки у 1 = 2 за минимально возможное время, равное У1 0 — 1.
Случай неавтономных динамических систем можно, вводя но­вое основное переменное у п+1=свести к уже изученной зада­че для уравнений, не содержащих явно I в правых частях.
9.9.3.
Цифровое управление непрерывными динамическими
системами. Непрерывные технологические процессы и многие
другие объекты управления, встречающиеся на практике, хорогшо описываются с помощью дифференциальных уравнений. Ана­логовые вычислительные устройства и простые механические
регуляторы, которые в течение достаточно длительного времени
•были единственным средством автоматизации, такж е естествен­ным образом описываются языком дифференциальных уравне­ний. Применение для целей управления электронных цифровых
машин вызвало необходимость определенных видоизменений тео-»рии автоматического управления. Поскольку при применении
цифровых машин измерения параметров, характеризую щ их объ­екты управления, так или иначе производятся в дискретные мо­менты времени, производные йух!Л1 естественным образом заме­няются разделенными разностями Дуг/Ы. В результате возника­ет аппроксимация системы дифференциальных уравнений соот­ветствующей системой конечноразностных уравнений .
Теории этих двух классов систем (особенно в линейном слу­чае) в значительной мере параллельны друг другу. Подобно то­му как линейную систему дифференциальных уравнений м ож насвести к системе линейных алгебраических уравнений с по­мощью преобразования Лапласа, то же самое может быть сде­лано применительно к конечно-разностным уравнениям с по­мощью так называемого 2-преобразования.
Если функция /(^) на интервале 0 ^ 2< о о задана в дискрет­ном множестве точек с интервалом дискретности й, то ее 2-пре­образование Р(%) задается формулой
оо* ■ (* )- 2 /(гай) 2- " ,(9.54>

п=Огде 2 — комплексная переменная, 2 = х + гу. Обратным г-преобразованием, задаваемым формулой
/ (Ы) = ^(|) Р (я) 2й_1Й2,

к = 0, 1, 2, . . .

(9.55)(где замкнутый контур интегрирования в комплексной плоско­сти проходит внутри области сходимости ряда (9.54), охватывая
начало координат), можно восстановить исходную функцию 1(1)в заданном дискретном множестве точек 1 = кй (& = 0, 1, 2, . . . ) *В силу известной теоремы Коши, для любого полинома Р(%)имеем (|) Р (2) Й2 = О при любом (замкнутом) контуре интегри­рования. То же самое будет при замене Р(%) на дробь А ! ( г — а ) рпрн р = 2, 3, . . . И лишь при р = 1, если контур интегрирова­ния охватывает точку а, имеем

ф^ 2 Лд,%= А-2пг. Если подзнаком интеграла (9.55) стоит рациональная функция Р(%) от
2, то ее всегда можно представить в виде суммы полинома иДробей вида А /(2 — а ) р. При этом, в силу сделанного предпо­ложения о контуре интегрирования, все точки разрыва подын­тегральной функции (т. е. точки 2 = а) будут находиться внут­ри этого к о н ту р а* ). Тем самым функция }(кс1), вычисляемая п аформуле (9.55), будет равняться просто сумме числителей дро*) Ряд (9.54) сходится вне некоторой окружности с цептром в начало
координат, так что в этой области функция Р( г ) не имеет разрывов.

бей вида А ! { г — а)в разложении

подынтегральной

функции

Легко видеть, что 2-преобразование функции /(л й ) со «сдви­нутым» аргументом, т. е. функции /(и й —Ы ) , равно / ( —Ай) ++ 2-1/ ( к + 1)й + . . . + 2“ (Л-1,/ ( —г“кР ( 2). Зная начальные ус­ловия, т. е. значения функции 1(пс1) при п = — А, —А: + 1, . . . , —1,легко найдем требуемое 2-преобразование. К ак и для преобра­зования Лапласа, может быть построен словарь прямых и об­ратных преобразований распространенных функций, что позво­ляет способом, аналогичным описанному в п. 9.9.1, находить ре­ш ения систем разностных уравнений.
Поясним сказанное на простом примере. Пусть требуется ре­шить разностное уравнение у (пд) = 2у (пд — (I) + х (пд) при на­чальном условии у ( —(1)= 1. После применения к обеим частям
уравнения 2-преобразования получим 7 (2 ) = 2 + 22-1У ( 2) + Х ( 2),откуда

7 (2 ) ==2 (2 + X (2)).

Пусть х ( п й ) представляет со­бой единичный начальный импульс, т. е. # (0 ) = 1, х(пс1)= 0 при/ г > 1 . Тогда по формуле (9.54) # ( 2 ) = 1 . Т ак как 7 (2 )2 Л_1==
3*2^= ^ТГ2==гденекоторый ПОЛИНОМ ОТ 2, то поформуле (9.55) получаем / ( Ы ) = 3 - 2 * (к = 0, 1, . . . ) . Тем са­мым мы нашли требуемое решение заданного конечно-разност­ного уравнения. Заметим, что из полученной формулы для Цкс1)нельзя получить начального значения для /с = — 1. Это обстоя­тельство имеет место и в общем случае, так что при необходи­мости учитывать значения реш ения для отрицательных значе­ний аргумента (соответствующих начальным условиям) ихследует просто добавлять к решению непосредственно из условия
задачи.
По аналогии с п. 9.9.1 решаются такж е задачи анализа и син­теза систем автоматического управления. При этом управляю щ аяЭВМ должна моделировать некоторую систему уравнений в ко­нечных разностях, описывающую ее поведение как автомати­ческого дискретного регулятора. На универсальной ЭВМ можетбы ть смоделирована любая подобная система. Однако неудоб­ство универсальной (однопроцессорной) машины заключается втом, что все операции по фактическому решению моделируемойею системы она выполняет последовательно. В результате неисключено, что быстродействия ЭВМ может оказаться недоста­точно для выполнения функций дискретного регулятора с тре­буемым (достаточно малым) интервалом дискретности А. Поэтотому в качестве дискретных авторегуляторов иногда предпочита­ют использовать специализированные ЭВМ и, прежде всего, такназы ваемы е цифровые дифференциальные анализаторы (Ц Д А ).

В ЦДА наряду с обычными для универсальных ЭВМ устрой­ствами (например, сумматорами) широко используются цифро­вые интеграторы, т. е. устройства, реализующие описанный вначале § 9.9 простейший метод приближенного реш ения задачиКош и для обыкновенных дифференциальных уравнений. К акясно из его описания, этот метод решает, строго говоря, не си­стему обыкновенных дифференциальных уравнений, а аппрок­симирующую ее систему конечно-разностных уравнений, т. е.
выполняет (будучи реализован в ЭВМ) функции дискретного
авторегулятора. Благодаря возможности иметь на каждую опе­рацию подобного «дискретного интегрирования» свой собственный
интегратор скорость работы Ц ДА (в режиме авторегулятора)мож ет быть значительно выше по сравнению с построенной натой же элементной базе универсальной ЭВМ. Впрочем, того жесамого эффекта можно добиться, используя универсальную мно­гопроцессорную ЭВМ.
9.10. Станки с числовым программным управлением
Одним из важ нейш их направлений автоматизации техноло­гических процессов является числовое программное управление(Ч П У ) металлорежущ ими станками и другим оборудованием.
/Для реализации Ч П У станок должен быть снабжен и с п о л н и ­т е л ь н ы м и механизмами ( п р и в о д а м и ) , осуществляющими
взаимное перемещение режущего инструмента и обрабатывае­мой детали. Существуют два основных принципа построения та­ких механизмов. Во-первых, это шаговые двигатели, которые,получая двоичный сигнал ( + 1 ) , осуществляют перемещение
(обычно вращение) на один элементарный шаг в прямом илиобратном направлении (иногда только в прямом ). О сущ ествляя(с помощью точных, практически безлюфтовых передач) связьс перемещаемым объектом, шаговый двигатель способен обеспе­чить высокую точность (измеряемую микронами) элементарных
перемещ ений этого объекта (инструмента или стола). Второй
принцип — это следящие системы, представляющие собой двига­тели, устанавливающиеся в определенную позицию (чаще всего
угол поворота) в зависимости от получаемого ими цифрового
(полноразрядного) кода этой позиции. Существуют и промежу­точные решения, когда маломощный (информационный) шаговый
двигатель определяет устанавливаемую позицию, а аналоговое
следящ ее устройство устанавливает в ту ж е позицию мощный
(силовой) двигатель, перемещающий объект управления.
Решающим для выбора того или иного принципа построе­н и я исполнительного механизма является, с одной стороны, точ­ность, а с другой — развиваемое усилие. Последнее важно нетолько вследствие необходимости преодоления усилий, вызыва21 Г». М. Глушков

емых р а б о ч и м ходом (процессом резания), по и для обес­печения быстроты х о л о с т ы х ходов (перемещениях в новую
рабочую позицию), что связано с приданием управляемому объ­екту значительных ускорений, а следовательно, и соответствую­щих усилий. Одно время первенство в одновременном обеспе­чении двух, вообще говоря, взаимно противоречивых требова­ний точности и силы (быстроты) было за силовыми шаговыми
двигателями. Однако успехи в создании мощных и достаточно
высокоточных цифровых следящих систем составили им впоследние годы серьезную конкуренцию.
Заметим, что некоторые исполнительные механизмы в стан­ках с ЧП У — так называемые позиционные устройства — обеспе­чивают только холостые ходы рабочего органа станка, т. е. егоперемещение в нужную для работы позицию. Это имеет, напри­мер, место в случае сверлильных станков с ЧПУ, у которых об­работка (сверление) выполняется только после установки ра­бочего органа в требуемую позицию.
Однокоординатные рабочие устройства обеспечивают рабочийход режущего инструмента в одном направлении, например, про­движении сверла в глубь просверливаемого отверстия или движе­ние суппорта токарного станка (перемещение резца) в направле­нии, параллельном оси вращения обрабатываемой детали.
Многокоординатные рабочие устройства обеспечивают одно­временное перемещение рабочего органа в нескольких направле­ниях. Это имеет, например, место в трехкоординатных фрезер­ных станках с ЧПУ, обеспечивающих обработку сложных кри­волинейных поверхностей. Многокоординатные устройства назы­вают иногда поэтому контурными криволинейными системамиЧП У в отличие от контурных прямоугольных (естественнее бы­ло бы сказать прямолинейных) систем, каковыми являются од­нокоординатные устройства.
В последние годы получают все большее распространение
рабочие устройства, способные в процессе работы автоматически
менять режущий инструмент (сверла, фрезы и т. п .), производятем самым различные технологические операции без перемеще­ния детали с одних станков на другие. Подобные станки, полу­чившие наименование обрабатывающих центров, нуждаются,разумеется, в дополнительных (программно-управляемых) при­водах для автоматической установки в рабочую позицию нуж ­ного инструмента.
Рабочая программа, непосредственно управляю щ ая рабочими
устройствами, в простейшем случае должна состоять (в зависи­мости от вида привода) из последовательностей либо одноби­товых кодов (при шаговом приводе), либо полноразрядных ко­
дов (при следящем приводе). Впрочем, в последнем случае сцелью экономии, имея на приводе регистр-сумматор, можно не-редать полный код только один раз — в начале работы, а затем
ограничиться передачей лишь приращений этого кода. Соответ­ственно должна быть построена и рабочая программа.
Учитывая большую точность работы современных станковс ЧП У (малость элементарных перемещ ений), нетрудно видеть,что подобный простейший способ организации рабочей програм­мы привел бы к непомерному раздуванию ее размеров. Поэто­му на практике обычно поступают иначе, снабж ая станки с ЧП Успециальными электронными устройствами — интерполяторами
(сегодня, как правило, лиш ь цифровыми). Благодаря наличию
таких устройств рабочая программа может содержать информа­цию лишь об относительно небольшом числе так называемых
опорных точек, характеризующих позицию рабочих органов стан­ка в процессе обработки детали. Сигналы же, непосредственно
управляющие приводами (исполнительными механизмами), вы­рабатываются интерполяторами.
Об интерполяции достаточно подробно говорилось выше(§ 9.3). Поэтому мы ограничимся здесь лишь некоторыми заме­чаниями. Простейшим видом интерполяции является, как из­вестно, линейная интерполяция. Несмотря на ее очевидные не­достатки, прежде всего отсутствие гладкости (т. е. непрерывно­сти производной) при сопряж ениях двух соседних прямолиней­ных отрезков, линейная интерполяция находит достаточно ш и­рокое распространение в силу своей простоты. Кроме того, от­сутствие гладкости обрабатываемой поверхности, очевидно, небудет иметь места в однокоординатных (прямолинейных) систе­мах. Что же касается криволинейных (многокоординатных) си­стем, то отсутствие гладкости при линейной интерполяции мо­ж ет быть до известной степени скомпенсировано увеличением
числа опорных точек, хотя это и ведет к нежелательному уве­личению размеров рабочих программ.
В двух других, широко применяющихся на практике методах
интерполяции — параболической
икруговой — обеспечивается
гладкость (непрерывность первой производной) на стыках ин­терполяционных участков. Рассмотрим сначала случай парабо­лической интерполяции. Если интерполяционный полином напредыдущем интервале (между точками А ^ 1( х ^ и г/*-4), А г ( х {, у ())вы раж ался формулой у*-4 = а ^ х * +г+то полиному г = йгХ2 + Ъ{х + с< для следующего участка (между точками
А {(хи г/*), А^+^{x^+^, г/г-ц)) должен удовлетворять соотношениям
У{ == 0 >\%% Ч" Ь^Х\ -|-Уг + 1^г*^г+1 "Р"Р ^19Уг

2 а^—^Х^ -}-+= 2а\Х{+1 + &*.Из этих соотношений и находятся коэффи­циенты искомого интерполяционного полинома.
В случае круговой интерполяции (интерполирующая функ­ц и я — уравнение окружности) принцип нахождения окружностиДля интерполяции на следующем участке лучше всего уяснить
21*себе из рис. 9.9. Если 0,-_ 1— центр интерполирующей окружно­сти для участка между точками А г - 1 и Л», то центр интерполи­рующей окружности для следующего участка находится пересе­чением линии радиуса А {0 ^ 1 первой окружности с перпендику­ляром СгО{ к отрезку АгА{+1 в его середине. Радиусы окружно­стей после нахождения центров находят­ся по известной формуле для расстояния
между двумя точками. При применении
интерполирующих
полиномов порядка
выше второго можно обеспечить гладкость
сопряжения участков по второй и более
высоким производным. Однако на прак­тике подобный уровень гладкости сопря­ж ения обычно не бывает нужен.
Как при наличии интерполятора на
Рис. 9.9станке, так и при его отсутствии управ­ление работой станка может осуществ­ляться от простейшего программного устройства, способного чи­тать рабочую программу, записанную на том или ином м а ш и н ­н о м носителе. На большинстве станков с ЧПУ, работающих поэтому принципу, в качестве такого носителя употребляется стан­дартная 8-дорожечная перфолента, хотя не исключено использо­вание и других носителей (прежде всего магнитных лент и гиб­ких дисков).
При такой простейшей организации программного устройства
возникают два основных неудобства. Первое связано с необхо­димостью синхронизации темпа поступления команд от про­граммного устройства и скоростью работы станка. Это требует
либо пошагового управления движением носителя с программой
(что проще всего и, главное, без потери информационной емко­сти носителя реализуется на перфоленте), либо наличия специ­альной буферной (электронной) памяти. Второе неудобство ещеболее существенно. Дело в том, что в процессе работы станка
рабочий инструмент постепенно изнашивается, меняя свои пер­воначальные размеры (это особенно сказывается в случае шли­фовальных кругов). Необходимы поэтому соответствующие опе­ративные корректировки рабочей программы.
Подобные корректировки требуют отхода от описанного про­стейшего способа организации числового программного управ­ления, если мы хотим полностью устранить ручной труд для со­ответствующей переналадки рабочего органа станка. Радикаль­ным средством решения этой проблемы является управление
станком (или группой станков одновременно) н е п о с р е д ­с т в е н н о от управляющей ЭВМ. Появление дешевых микро­процессоров позволило вставлять изготовляемые на их основе
микро-ЭВМ непосредственно в каждый станок с ЧПУ.

Для организации обратной связи от процесса обработки соз­даются специальные автоматизированные измерительные комп­лексы. Производя автоматические измерения готовых деталей(в случае изготовления партий относительно простых деталей)или обрабатываемой поверхности в процессе работы (в случае
сложных деталей с длительным циклом изготовления), получа­ют исходную информацию об изменениях заданных параметровв результате износа рабочего инструмента. И прежде чем этиизменения выйдут за пределы установленных допусков, в управ­ляющих ЭВМ будут произведены необходимые корректировки
рабочих программ. Тем самым для числового программного уп­равления возникает принципиально новое качество — адаптив­ность. Для координации работы управляющих ЭВМ станков иизмерительных комплексов, выполняющих различные операции
единого технологического процесса, может возникнуть необходи­мость в специальной управляющей ЭВМ второго уровня. Темсамым осуществляется переход от автоматизации работы от­дельных единиц оборудования к автоматизации технологиче­ских линий, производственных участков и целых цехов.
Следует заметить, что, хотя наибольшее распространение чис­ловое программное управление получило для металлорежущих
станков, сам принцип ЧП У имеет гораздо более широкую сферу
применения. Его с успехом применяют в деревообработке, для уп­равления штамповочным, линейным, гальваническим производ­ством и во многих других случаях. Первоначально выражались
надежды, что принцип ЧПУ найдет свое главное применениев и н д и в и д у а л ь н о м производстве. Эти надежды пока неоправдались главным образом потому, что процесс п р о г р а м ­м и р о в а н и я для оборудования с ЧП У (несмотря на имею­щийся значительный прогресс) остается все еще достаточно тру­доемким. Образно выражаясь, во многих случаях оказывается
быстрее сделать деталь вручную, чем составить и, главное, от­ладить программу для станка с Ч П У * ).
Поэтому сегодня оборудование с ЧП У находит главное своеприменение в м е л к о с е р и й н о ми среднесерийном
производстве. Разумеется, его можно с успехом использоватьи в м а с с о в о м производстве. Однако в этом случае главное
преимущество оборудования с ЧПУ — именно гибкость (т. е.
возможность без переделок оборудования быстро перестраивать­ся на различные виды работы )— не будет фактически исполь­зоваться. А саму автоматизацию массового производства в боль­шинстве случаев можно осуществить более эффективно за счет*) Это, разумеется, не относится к очепь сложным деталям с длитель-»ным циклом изготовления. Кроме того, сегодня имеются работы, которые
могут быть выполнены только на станках с ЧПУ.

у з к о с п е ц и а л и з и р о в а н н о г о (а потому, как правило, бо­лее дешевого и высокопроизводительного) оборудования.
Дальнейшее продвижение оборудования с ЧПУ в индивиду­альное производство будет связано с процессом автоматизации
подготовки и отладки программ для него. В перспективе этотпроцесс должен изготовлять рабочие программы для оборудова­ния с ЧП У непосредственно с конструкторской документации,автоматически рассчитывая все технологические режимы. Дляпроверки же правильности составленных рабочих программ всестадии обработки деталей по этим программам желательно ав­томатически демонстрировать в регулируемом (чаще всего в сто­рону ускорения) темпе с возможностью автоматического расче­та и выдачи на дисплей любых показателей, характеризующих
процесс (температуру нагрева резца, величину прогиба детали
и т. п .). Пока автоматизация программирования для оборудова­ния с ЧП У в целом (за исключением отдельных примеров полуучебного характера) еще далека от такого уровня. Опишем
теперь кратко современное состояние этого вопроса примени­тельно к станкам с ЧПУ.
9.10.1.
Автоматизация программирования для станков с ЧПУ.
Каждый тип станка с ЧПУ в зависимости от числа и характе­ра приводов и других особенностей имеет свой собственный ма­шинный (в данном случае — станочный) язык программирова­ния. В набор команд такого язы ка могут входить перемещенияпо трем осям координат, повороты вокруг осей, изменения ско­рости вращения (шпинделя, сверла, фрезы и др.), величина по­дачи, выбор определенного инструмента для работы (в револь­верных станках и обрабатывающих центрах), управление ре­жимом охлаждения и др. Программирование непосредственно вмашинном языке представляет собой весьма трудоемкую зада­чу. Ее облегчение производится в основном теми же методами,какими решается задача упрощения программирования дляЭВМ в общем случае (см. гл. V ).
Первый уровень упрощения состоит во введении машинно­ориентированного язы ка с символическими обозначениями ко­манд (без двоичного кодирования), что сильно упрощает про­граммирование и уменьшает число ошибок. Дополнительно вслучае языков для ЧП У в машинно-ориентированном языке до­пускается использование метода опорных точек, даже если ста­нок, для которого составляется программа, не имеет собственно­го интерполятора. Программа-ассемблер (называемая при рабо­те с ЧПУ еще постпроцессором) не только произведет необхо­димое кодирование, но и введет в программу (в соответствии спринятым методом интерполяции) все промежуточные точки.
Команды перехода от одной опорной точки к другой, употреб­ляющиеся в исходной программе, могут рассматриваться какспецифические для Ч П У макрооператоры. На практике длястанков без индивидуальных интерполяторов используются так­же групповые интерполяторы, преобразующие ленты с закоди­рованными макрооператорами в ленты со станочными (самыми
мелкими) операциями.
Следующий уровень автоматизации программирования — ис­пользование проблемно-ориентированных (на проблемы ЧП У )входных языков и трансляторов с них. В Ч П У используется
обычно так назы ваемая кросс-трансляция, когда процесс транс­ляции осущ ествляется не на управляю щ ей машине, которая бу­дет реализовать эту программу (тем более что такая машина
может и не сущ ествовать), а в универсальной (как правило, до­статочно большой) ЭВМ, установленной в специальном ВЦ, ко­торый снабжает программами для оборудования с Ч П У целый
завод, а иногда и группу заводов.
К ак и все алгоритмические входные язы ки, входные (проб­лемно-ориентированные) язы ки для Ч П У содержат, во-первых,средства для описания объектов, с которыми они оперируют, вовторых, средства для вы раж ения действий (операций) над эти­ми объектами. Общим для всех входных языков Ч П У является
то, что в качестве объектов в них прежде всего выступают обраба­тываемые изделия (на разных стадиях обработки). С этой целью
могут описываться точки (с помощью задания их координат илив виде пересечения заданных линий), прямые линии (с помощью
двух точек или точки и углового коэффициента), дуги окружно­стей, а такж е (в развитых язы ках) любые кривые и поверхности,задаваемые их уравнениями. Вводятся такж е символические обо­значения для инструментов различных типов (фрезы, сверла
и т. д.), а такж е термины, задающие различную технологиче­скую информацию (тип интерпретатора, величина подачи и др.).
Операторы, идущие после описания, разделяю тся в зависи­мости от типа обработки. Д ля контурной обработки на фрезер­ных станках с Ч П У широко употребляется оператор ИДИ,после которого следует перечень элементов пути, который дол­жен проделать режущ ий к р а йфрезы. Например, ФРС Л;И Д И /П Р1, ОКРЗ, П Р4 ДО Т Ч К 5 означает, что край фрезы
(остающейся слева от обрабатываемого контура) должен прой­ти отрезок прямой 1, дугу окружности 3 и отрезок прямой 4до точки 5. Разумеется, все эти элементы должны быть предва­рительно точно описаны. Задача транслятора состоит в том, что­бы по этим указаниям
(дополненным данными в опи­сании сведениями о типе фрезы, величине подачи и другой тех­нологической информации) вычислить фактически необходимый
путь ц е н т р а фрезы и выдать на запись (с учетом типа ис­пользуемого станка и интерполятора) в кодированном виде ра­бочую программу. Холостые ходы указы ваю тся обычно опера­тором ИДИ В или ИДИ НА (с указанием идентификаторов точ­ки или кривой). Если отсутствуют дополнительные указания,холостой ход совершается но кратчайшему пути.
В СССР для программирования работы фрезерных станковс ЧП У разработаны и используются языки СПС-Т, СПС-ТАУи др. Поскольку языки для токарных станков, в отличие отфрезерных, описывают лишь тела вращения, они допускают оп­ределенные упрощения описаний. Например, нет необходимости
описывать любые поверхности, поскольку любая поверхность
вращения может быть задана соответствующей линией. Еще про­ще в принципе входные языки программирования для сверлиль­ных станков, хотя многошпиндельная обработка может внести
дополнительные трудности в разработку трансляторов. Исполь­зование современных входных языков для Ч1ГУ позволяет сокра­тить трудоемкость подготовки программ в 10—20 раз и стои­м ость— в 5—15 раз.
Заметим, что все упомянутые входные языки служат лишьдля описания движений инструмента и детали при ее обработ­ке на станке. Что же касается оптимизации этих движений сучетом необходимых технологических ограничений (по скоро­сти, точности и др.)? то она является предметом технологиче­ского проектирования, автоматизация которого представляет со­бой самостоятельную (и притом достаточно трудную) задачу.
В перспективе эти два направления автоматизации должны
слиться в единый процесс.
9.11. Промышленные манипуляционные роботы
Манипуляционные роботы, или манипуляторы, представляют
собой многоцелевые программно-управляемые устройства, имити­рующие в той или иной мере человеческую руку. Основные об­ласти их применений включают установочные, транспортные исборочные операции. Достаточно широкое применение находятони и в ряде других работ (сварка, покраска и др.)- Главным
рабочим органом робота-манипулятора служит механическая
«рука», оканчивающаяся «кистью», которую принято называть
схватом. В отличие от человеческой кисти с пятью пальцами,схват современных роботов имеет в большинстве случаев два,а иногда три механических пальца. Зато кисть робота обычно
снабжается возможностью неограниченного вращательного дви­жения (весьма удобного для операций завинчивания и отвинчи­вания, сверления и др.), чего кисть человека, как известно, ли­шена.
Кроме «вращательного сустава» в сочленении со схватом,рука робота имеет обычно еще один или несколько «суставов»,позволяющих изгибать руку. Наконец, для успешного выполне­ния роботами своих функций употребляются еще выдвижные
сочленения, позволяющие удлинять или сокращ ать те или иныеучастки руки.
В зависимости от назначения промышленного робота число
степеней свободы движ ения его руки колеблется сегодня от трехдо двенадцати (наиболее часто — от четырех до семи). Во вся­ком случае кинематическая схема руки робота достаточно слож­на, что создает определенные трудности как в программирова­нии ее движений, так и особенно — в их оптимизации. Задача
состоит в согласовании движений во всех суставах, с тем что­бы обеспечить оптимальную траекторию движения схвата (обыч­но наиболее быструю ). При ее решении приходится учитывать
ограничения подвижности в суставах, ограничения на ускоре­ния, вызванные ограниченной мощностью приводов, а такж еограничения, связанные с обходом возможных препятствий напути движения руки.
Решение этой задачи сводится в конечном счете к оптимиза­ции реш ения некоторой системы обыкновенных дифференциаль­ных уравнений, для чего может быть использован описанный
выше принцип максимума. Проблемы программирования мани­пуляционных роботов связаны, прежде всего, с задачей описа­ния траекторий и законов движения их исполнительных орга­нов (ру к). В этой части задачи программирования роботов в це­лом аналогичны подобным задачам для станков с ЧП У . Д ля об­легчения процесса транслирования с языков высокого уровня вспециализированные машинно-ориентированные язы ки, описыва­ющие движ ения руки робота, целесообразно вводить наборы мак­рооператоров, которые описывают согласованные движения в сус­тавах для выделенных элементарных движений руки в целом.
Привод для осущ ествления движений, как и в станках ЧПУ,у роботов осущ ествляется либо с помощью шаговых двигателей,либо с помощью следящих систем. Д ля управления выдвижными
сочленениями могут употребляться одноступенчатые или много­ступенчатые (на 1/2 полного движения, на 1/4 и т. д.) электро­магнитные (соленоидные) или гидравлические приводы. Гидрав­лические (а иногда для маломощных роботов — пневматические)системы применяю тся для осущ ествления движений и других
типов (особенно схвата). Компоновка приводов бывает различ­ной. У маломощных роботов двигатели предпочитают размещ атьпрямо в суставах. У мощных роботов двигательный блок чащевсего размещ ается у «плечевого» сустава, а передача усилий
осуществляется механическими тягами или гидроприводом.
Роботы-манипуляторы первого поколения представляют собой
программно-управляемые механизмы в чистом виде (без обрат­ной связи ). Поэтому их применение ограничивается теми обла­стями, где объекты, с которыми работают роботы, строго п о з и-ц и о н и р о в а н ы , ибо подобный «неочувствленный», строго за­программированный робот не способен правильно захватить сме­щенный из заданной позиции предмет. Главная область приме­нения таких роботов — это машиностроение и приборострое­ние. Будучи установлены (в жестких позициях) рядом с другим
программно-управляемым оборудованием, такие роботы способ­ны перемещать обрабатываемое изделие от одной единицы обо­рудования к другой. Тем самым станки с ЧП У , прессы и дру­гое программно-управляемое оборудование превращается в ав­томатические технологические линии.
В отличие от автоматических линий докибернетической эпо­хи, эти линии обладают большой гибкостью: после смены про­грамм, без всяких п е р е д е л о к оборудования, линия может
начать выпускать совершенно иную продукцию, чем прежде. Длясогласования работы всех единиц оборудования, составляющих
линию, обычно используется дополнительная управляю щ ая ЭВМ.
При автоматизации сборочных операций добиться строгого
позиционирования удается далеко не всегда. То же самое про­исходит при постановке руки робота на самодвижущуюся те­леж ку для обслуживания нескольких единиц оборудования илипри автоматизации подъемно-транспортных операций. Для этихцелей требуются «очувствленные» роботы, способные в какойто мере адаптироваться к изменениям окружающей обстановки,вводя соответствующие корректировки в параметры управляю­щих программ.
Подобные адаптивные роботы (относящиеся к так называе­мому второму поколению роботов) снабжаются простейшими
«органами чувств». Это, прежде всего, тактильные (осязатель­ные) датчики на схвате, способные регистрировать прикоснове­ния схвата к другим предметам. Благодаря большому числу та­ких датчиков (обычно несколько десятков) по их показаниям
можно во многих случаях восстановить ориентировку при нару­шениях позиционирования. Подобную же роль играют различ­ного рода аналоги органа зрения. В простейшем случае — этосистемы датчиков, способных реагировать на специальные мет­к и , нанесенные на предметы, с которыми оперирует робот. Д ат­чики эти могут быть магнитными или оптическими.
У так называемых интеллектуальных роботов, или роботов
третьего поколения, «органы чувств» (особенно зрение) получа­ют дальнейшее развитие. Они способны распознавать достаточно
сложные изображения (сегодня, правда, в основном имеющие
правильные геометрические формы), в частности изображения
машинных деталей, рассматриваемых под различными ракурса­ми и при различном освещении. Важной особенностью интел­лектуальных роботов является также возможность самостоя­тельно вырабатывать (и, разумеется, осуществлять) планы до­стиж ения тех или иных (относительно простых) целей и менятьэти планы в соответствии с изменениями ситуации. О методахреш ения указанны х задач мы расскажем ниже (в главе об ис­кусственном интеллекте). Сейчас ж е заметим только, что ин­теллектуальные роботы открывают широкие перспективы дляавтоматизации самых разнообразных процессов. Однако на путиих широкого внедрения в народное хозяйство стоит пока до­статочно высокая их стоимость (в десятки раз превосходящая
стоимость роботов первого поколения). Однако успехи микро­электроники открывают перспективы резкого снижения стоимо­сти ЭВМ высокой производительности, а вместе с ними и ин­теллектуальных роботов.
Следует подчеркнуть, что манипуляционными роботами от­нюдь не ограничивается круг устройств, которые современная
наука и техника понимает под термином «робот». Сюда сегодня
принято относить все устройства с «человекоподобным» поведе­нием, не обязательно связанным с наличием «рук». Существу­ют, например, роботы для подводных исследований, роботы-ав­топилоты (способные вести самолет на сверхнизких высотах и вдругих сложных условиях) и т. д. Возможности и перспективы
подобного рода роботов связаны с исследованиями по искус­ственному интеллекту, о которых говорится в последней главе
настоящей книги.
9.12. Электронная вычислительная техника в бытуПоявление микропроцессоров вызвало резкое уменьшение
габаритов и стоимости универсальных управляю щ их ЭВМ(в случае, когда они не нуж даю тся во внешней памяти и опера­тивной памяти большой емкости). Это обстоятельство привело Когромному расширению круга применений таких машин и, вчастности, к началу широкого их внедрения в бытовую техни­ку. Перечислим кратко основные направления такого внедрения.
Обыкновенный телефонный аппарат, снабженный простей­шим микропроцессором с небольшой памятью, предоставляет або­ненту по крайней мере две дополнительные услуги. Одна из
них — свойство повторного вызова. Если после набора номера оноказывается заняты м, микропроцессор запоминает номер и по­вторяет вызов до тех пор, пока не произойдет соединение. Вто­рая услуга — возможность вместо длинных номеров использоватьпри вызове короткие (обычно двузначные) коды. Соответствие
между часто вызываемыми номерами и их двузначными кодами
устанавливает (и по своему ж еланию меняет) сам абонент.
Обычно используется таблица до ста номеров (более ста номе­ров закодировать двузначными кодами н ельзя). При установке
Дополнительной аппаратуры на АТС встроенный в аппарат мик­ропроцессор может предоставить абоненту и третий вид услуг.
Речь идет об автоматической переадресации вызовов, приходя­щих на данный аппарат, на любой другой номер (по которомув данный момент находится владелец аппарата).
Вторым бытовым прибором, являющимся объектом автомати­зации, является телевизор. Встроенный в телевизор микропро­цессор способен превратить его экран в своеобразный домаш­ний дисплей, на который можно выводить буквенно-цифровуюи графическую информацию. Ввод такой информации можно
производить с помощью специальной приставки, снабженной со­ответствующей клавиатурой, а также, в случае необходимости,рукоятками, позволяющими перемещать по экрану точечный кур­сор или целые изображения (например, изображение теннисной
ракетки). Используя эту приставку, с помощью специальных
программ (встроенных в сменяемые миниатюрные ДЗУ) можно
сделать подобный автоматизированный телевизор партнером посамым разнообразным играм (шахматы, шашки, «теннис» и др.).
Будучи снабжен электронными часами, микропроцессор мо­жет осуществлять включение и выключение телевизора, а также
переключения с одной программы на другую в любые заданные
пользователем моменты времени. Очень важным новым каче­ством, которое приобретает телевизор с микропроцессором и со­ответствующим ЗУ, является способность воспринимать бук­венно-цифровую и графическую информацию, передаваемую непо широкополосному телевизионному, а по узкополосному кана­лу. Используя аппаратуру разделения обычных (эфирных) ка­налов или специальную кабельную разводку, можно выводитьна экраны телевизоров информацию по индивидуальным запро­сам. Разумеется, для этой цели при телецентре должен бытьорганизован специальный автоматический справочно-информа­ционный центр. Для передачи запросов в этот центр можно ис­пользовать обычную телефонную связь. Если при этом микро­процессор телефонного аппарата соединен с микропроцессором
телевизора, то из центра через запрашивающий абонентский
телефон может быть выдан в телевизионный приемник (дляавтоматической настройки) номер подканала, по которому будет
выдана запрашиваемая информация*).
Третьим объектом автоматизации является пишущая машин­ка. Если снабдить ее дисплеем с ЗУ и возможностью автомати­ческой печати, то владелец машинки получает возможность ре­дактирования текста на экране дисплея перед его окончатель­ной печатью. С этой целью печатаемый первоначально сырой
(неотредактированный) текст запоминается в ЗУ и отобража­*) Информация может выдаваться и непосредственно через телефон­ную линию,ется на дисплее. Автор текста с помощью перемещаемого кур­сора и специальных редакторских клавиш вносит те или иныеисправления в текст (вписывает или вычеркивает буквы, словаили целые фразы, меняет их местами, делает переразбивку аб­зацев и т. п .). После того как текст отредактирован, электрифи­цированная пиш ущ ая маш инка печатает его с большой ско­ростью. Возможен такж е вариант передачи отредактированно­го текста по телефону (с использованием модема) для печати
текста на аналогичной машинке в любом другом месте, вариант
автоматического изготовления машинно-читаемых копий (на ме­сте или у удаленного абонента) и т. д.
Имея в виду относительно высокую стоимость обычных дис­плеев, их можно заменять автоматизированными по описанному
выше образцу бытовыми телевизорами.
Следующими объектами автоматизации являю тся такие бы­товые приборы, как стиральные машины, холодильники, элект­роплиты и др. С помощью встроенных управляю щ их микро-ЭВМможно осуществлять программное управление этими приборами,например, включать и выключать горелки электроплиты в н а­значенное время, программно менять интенсивность нагрева
и т. п.
Большой эффект дает автоматизация с помощью управляю ­щ ей микро-ЭВМ и соответствующей системы датчиков системы
приготовления бензовоздушной смеси и управления зажиганиемв обыкновенном автомобильном моторе. У читывая не только ско­рость вращ ения вала двигателя, но и его (угловое) ускорение,а такж е температуру воздуха, атмосферное давление и ряд дру­гих параметров, микро-ЭВМ обеспечивает гораздо более эконо­мичные режимы работы двигателя
(экономия топлива до
10— 1 2 % ), а такж е устранение неполного сгорания топлива исвязанного с этим загрязнения окружаю щ ей среды.
При наличии в городе центра автоматического управления
уличным движением, способного передавать автоматически (порадио) информацию о текущей дорожно-транспортной ситуации
(закрытых проездах, автомобильных пробках и т. п .), оказы вает­ся полезной бортовая микро-ЭВМ—штурман. Вводя в нее заданиена поездку (координаты начального и конечного пунктов), мож ­но в считанные секунды получить от ЭВМ оптимальный марш ­рут движения (с учетом текущ ей ситуации).
Все указанны е применения ЭВМ в быту уж е наш ли своюреализацию в мировой и частично отечественной практике, хо­тя процесс широкого внедрения вычислительной техники в бытнаходится еще лишь в начале своего развития (не считая кар ­манны х калькуляторов). Имеются и другие бытовые применения
ЭВМ, однако и того, что уж е перечислено, достаточно, чтобы
оценить перспективы прогресса в этом направлении.

Глава

XАВТОМАТИЗАЦИЯ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ
10.1. Общие сведения об информационных технологиях
Технологические процессы, которые рассматривались в пре­дыдущей главе, относились к материальному производству с ма­териальными исходными и конечными продуктами. Имеется, од­нако, большое число процессов, где основной перерабатываемой
продукцией является информация. Разумеется, перерабатывае­мая информация связана с определенными материальными но­сителями (до последнего времени главным образом с бумагой).
Однако главную роль в процессах, о которых идет речь, играетне непосредственно сам носитель, а связанная с ним инфор­мация.
Подобные процессы, примерами которых могут служить
проектно-конструкторские работы или редакционно-издательская
деятельность, будем называть информационными технологиями.
Особую роль среди информационных технологий играет техноло­гия организационного управления, которой будет посвящена от­дельная глава.
Автоматизация информационных технологий приводит к вы­теснению бумажных носителей, доводящему их роль до разум­ных (удобных человеку) пределов. Это положение следует осо­бо подчеркнуть, поскольку абсолютно неправомерно связывать сбезбумажной информатикой полное изгнание бумаги как носи­теля информации. Книги, газеты, журналы, будучи удобнымии привычными для человека, надолго сохранят в основном своюнынешнюю форму (разве лишь обычная бумага будет заменена
более прочным и более дешевым пластиковым эквивалентом).
Максимальному сокращению подлежит прежде всего канце­лярская переписка, а также многочисленное переписываниеи перепечатка информации в процессе подготовки к пуб­ликации.
Чтобы высказанное положепие прочнее закрепилось в памя­ти, мы начнем наше изложение с области, где оно проявляетсяв наиболее полном, понятном и законченном виде.

10.2. Автоматизация редакционно-издательской
деятельности^К ак известно, в традиционной технологии редакционно-изда­тельского дела приходится многократно переписывать и перепе­чатывать материал в процессе его подготовки к изданию. Вопервых, это делает сам автор. Во-вторых, редактор правит полу­ченный текст, после чего его обычно снова требуется перепе­чатать. Дополнительные исправления (чаще всего в сторону
укорочения) могут производиться при монтаже номера газетыили ж урнала. Наконец, при типографском наборе, как правило,возникаю т ошибки, что вызывает необходимость изготовления
верстки, ее корректировки и исправления замеченных ошибок
набора. Лиш ь после этого начинается в достаточной мере авто­матизированный процесс печати.
При комплексной автоматизации многие из указанных эта­пов попросту исчезают. Вручную (точнее, в диалоге с ЭВМ)происходит лишь процесс редактирования и монтажа материа­л а. Выглядит это следующим образом. Материал для печати по­ступает от авторов либо на м а ш и н н о - о р и е н т и р о в а н н о мносителе (в случае применения ими автоматизированных пишу­щих машинок, описанных в § 9.12), либо читается и автомати­чески вводится в ЭВМ с помощью читающих автоматов (еслиматериал поступил в обычном машинописном виде). В случае,когда материал передается в редакцию по телетайпу, можно,не производя его распечатку, с помощью несложной дополни­тельной доработки телетайпной станцией осуществить его н еп о с р е д с т в е н н ы й ввод в ЭВМ.
Во всех случаях поступающий в редакцию сырой (неотредактированный) материал вводится в ЭВМ автоматически илипочти автоматически (ручной труд сводится к загрузке посту­пивших машинописных текстов в читающий автомат или к по­становке на редакционную ЭВМ текстов на машинных носите­л я х ). Введенный в ЭВМ материал распределяется между редак­торами, каждый из которых работает за алфавитно-цифровым
дисплеем с набором возможностей для редактирования и может
управлять выводом нужного материала (не только редактируе­мого текста, но и различного рода справок из машинного редак­ционного архива).
Отредактированные тексты могут вызываться в преобразо­ванном виде на специальный дисплей для монтажа страниц илигазетной полосы. Преобразование, о котором идет речь, состоит
просто в замене абзацев прямоугольниками в соответствующем
масштабе. Аналогичное преобразование делается с рисунками.
Подобный к о м п о н о в о ч н ы й дисплей должен сопровождаться
средствами для перемещения абзацев (например, световым пе­ром ). В случае, если материал не вмещается в требуемый фор­мат, принимается решение о дополнительном редактировании то­го или иного материала. Этот процесс может повторяться не­сколько раз.
После окончания монтажа (и редактирования) материал по­ступает в автоматические наборные м аш ина (непосредственноот ЭВМ или с помощью переноса приготовленных на ЭВМ ко­пий на машинных носителях, воспринимаемых наборными ма­ш инами). Ввиду большой надежности автоматики необходимостьв корректировке верстки практически исключается, хотя в слу­чае большой ответственности печатаемого материала просмотр
пробного экземпляра в принципе не исключается.
Редакционный автоматизированный архив, о котором шларечь выше, в современных автоматизированных редакциях (на­пример, редакции газеты «Нью-Йорк Таймс») может содержатьвсе материалы, печатавшиеся ранее в газете. Строится он обыч­но как информационно-поисковая документальная двухуровневая
система дескрипторного типа (см. гл. VI ) . Благодаря тому, чтов словарь дескрипторов обычно включаются все собственные
имена (фамилии, географические названия и др.), он может до­стигать огромных размеров (многие десятки и даже сотни тысяч
дескрипторов). Благодаря наличию подобного архива редакция
может вести статистику опубликованных материалов и соответ­ственным образом планировать новый материал. Разумеется, ар­хив полезен и для многих других целей (унификация тран­скрипций иностранных имен и названий, проверка правильно­сти ссылок и т. п.).
Заметим, что в рассматриваемой системе бумажная инфор­мация фигурирует только на входе (и то не всегда) и на выхо­де. Вся же промежуточная бумажная стихия полностью унич­тожается.
10.2.1. Автоматизация издательств переводной литературы*При автоматизации издание переводов иностранной литературыв принципе не отличается от уже описанной схемы, если пере­водчик работает вне издательства, однако при этом в значитель­ной мере сокращаются возможности автоматизации самого пе­ревода. Для сколько-нибудь качественного автоматического пе­ревода требуется ЭВМ большой мощности. При наличии такой
ЭВМ (с соответствующим программным обеспечением) работа
может строиться следующим образом. Подлежащее переводу из­дание разброшюровывается и с помощью читающего автоматаего содержание вводится в редакционную ЭВМ. Редактор-пере­водчик (эти обязанности желательно совместить в одном лице)'снабжается пультом с двумя алфавитно-цифровыми дисплеями*На первый выводится очередной абзац текста на исходном языке,а на второй — его перевод, сделанный м а ш и н о й . Редактор-переводчик читает оба текста и делает, в случае необходимости*соответствующий поправки.
Переведенный и отредактированный таким образом в диало­говом режиме текст перевода подвергается далее тем автомати­зированным операциям, которые были описаны выше.
Отметим, что автоматизация перевода в диалоговом реж имеимеет два весьма ощутимых преимущества. Во-первых, м ож назапускать в работу (и получать практическую отдачу) далекиеот совершенства автоматические программы перевода. В аж н елишь, чтобы их использование повышало производительность
труда переводчика и убыстряло весь процесс издания переводной
литературы. Второе преимущество состоит в том, что в диалого­вом режиме возникает информация об относительной частоте
редакторских поправок различного типа, что дает разработ­чикам программ автоматического перевода весьма ценные дан­ные о желательных направлениях совершенствования программи тем самым значительно убыстряет практический прогресс нэтой области.
Речь здесь идет, разумеется, о переводах прозы, а не поэзии.
Но даже в областях художественной прозы построение систем
полностью автоматизированного высококачественного перевода
требует вложения в систему большого объема знаний о мире.
Решение этой задачи связано с общей проблемой искусственного
интеллекта и разбирается ниже (в гл. X II).
10.3. Автоматизация научных исследований
Научные исследования, как известно, охватывают много раз­личных форм работы. Это, прежде всего, экспериментальные ис­следования и обработка их результатов, дедуктивные построе­ния, связанные зачастую со сложными вычислениями, подбор иознакомление с необходимыми публикациями, отпечатками, ав­торскими свидетельствами и т. п. Наконец, появление ЭВМ по­родило принципиально новый метод исследования — эксперимен­ты с информационными моделями (кибернетическое моделиро­вание). Этот метод занимает промежуточное положение меж дуклассическим экспериментальным и классическим дедуктивным
методами.
Его отличие от классического экспериментального метода со­стоит в том, что эксперименты производятся не с самими (ма­териальными) объектами исследований, а с их описаниями натом или ином формализованном, понятном машине язы ке с со­ответствующим программным обеспечением. От классического*Дедуктивного метода его отличает то, что при наличии форма­лизованного описания объекта исследований (что характерна
^В. М. Глушков

для дедуктивного метода) с этим описанием
зроизводятся
никакие дедуктивные построения (формальные /Преобразования,оформленные в соответствии с правилами логико/доказательства).
С описанием производятся именно эксперименты, которые с чис­то формальной стороны совершенно аналогичны экспериментамс реальными (материальными) объектами. /Системы автоматизации, имеющие дедо с перечисленными
экспериментами, и, прежде всего, систему автоматизации экспе­риментов получили общее наименование систем автоматизации
научны х исследований (АСНИ). Иногда под это название подво­дятся и системы испытаний, описанные в предыдущей главе.
10.3.1.
Автоматизация экспериментальных исследований. По-существу, об этом предмете уже достаточно подробно говорилосьв предыдущей главе, ибо автоматизация научных исследова­ний — это в первую очередь автоматизация измерений. Необ­ходимо подчеркнуть лишь несколько моментов, характерных
именно для научных исследований. Во-первых, наряду с рутин­ными измерениями, для которых достаточны раз и навсегда
заданные конфигурации измерительных систем, в научном экспе­рименте довольно часто приходится перекомпоновывать экспери­ментальные установки, а следовательно, и вносить соответствую­щ ие изменения в систему автоматизации измерений. В этомслучае особые удобства представляют системы автоматизации,набирающиеся из отдельных модулей, как это имеет, например,место в упоминавшейся выше (в гл. II) системе Камак. Доста­точно оперативной должна быть и система автоматизации про­граммирования для быстрого изготовления необходимых комп­лектов программ (особенно для вторичной, наиболее сложной
обработки).
Второй момент связан с настройкой экспериментальной уста­новки и управлением экспериментом. В ряде случаев автоматиза­ция именно этих участков работы является решающим факторомъ повышении производительности труда экспериментатора.
С подобным положением приходится сталкиваться, напри­мер, при экспериментах на ускорителях элементарных частиц.
Установки по автоматизации управления экспериментом стро­ятся в целом по тем же самым принципам, что и системы ав­томатизации управления классическими (материальными) тех­нологическими процессами. Ввиду их огромного разнообразия,к а к и в случае АСУТП, их невозможно описать сколько-нибудь
полно не только в пределах одного параграфа, но и целой кни­ги. Общие же принципы построения АСУТП и соответствующий
математический аппарат уже были описаны в предыдущей главе.
Третий момент связан с планированием эксперимента. Об­щ ей целью такого планирования является уменьшение затрат
ресурсов и времени для получения результата, ради чего и про-

\
10.3. АВТОМАТИЗАЦИЯ НАУЧНЫХ ИССЛЕДОВАНИЙ

339

\
\

изводится эксперимент. У ниверсальных рецептов для оптималь­ного планирования экспериментальных исследований, разумеется,,не существует. Приведем лиш ь одну идею подхода к такому
планированию. Предположим, что целью эксперимента является
выбор из множеству М одной из априорных гипотез, объясняю ­щих исследуемое явление. Пусть тем или иным способом до на­чалаэксперимента
установлены
априорные
вероятностиР и Р г > • • •» Рп справедливости указанны х ги п о тез* ). Степенью
неопределенности нашего знания об объекте исследования(в данном случае о теории, которой долж на стать одна из ги­потез) является так назы ваем ая энтропия заданного распреде­ления вероятностей, вы раж аем ая формулой
Я2(1 0 .1 )г=1где логарифм берется по любому фиксированному основанию^большему единицы, например (и чаще всего) по основанию 2.
Если из априорной энтропии Я вычесть математическое ож и­дание Нк энтропии распределения вероятностей <р; гипотез после
проведения к-то эксперимента (из имеющегося априорного набо­ра экспериментов), то в результате получим приращ ение инфор­мацииА /й = Я — Н к.
Естественно, при прочих равных условиях (в частности, п р яравной сложности экспериментов), стремиться к выбору такого
эксперимента, для которого это приращ ение получает макси­мально возможную величину: А / = ш ах А1к.
кЧетвертый момент, который должен учитываться при авто­матизации научных исследований, особенно трудно повторяемыхи дорогостоящих, состоит в желательности создания и хранения(на машинных носителях) банков данных п е р в и ч н ы х (не­обработанных) экспериментальных данных. Дело заклю чаетсяв том, что по истечении определенного времени могут появить­ся новые, более совершенные методы обработки полученных
данных, которые позволят добыть новые сведения из старого
экспериментального материала (без новых экспериментов). Н еисключено и такое положение, когда старые экспериментальные
данные могут быть обработаны под новым углом зрения, кото­рый был в свое время неактуален. Например, данные геофизи­ческой разведки, обработанные первоначально с целью поиска
*) При отсутствии какой-либо априорной информации о величинах по*лагают р х = р 2 = . . . = Рп = 1/л.

Iнефтяных месторождений, могут быть обработаны впоследствиио целью нахождения месторождений урана. Р ^у м еется, накап­ливаемые (в цифровом виде) банки данных первичной экспери­ментальной информации должны быть соответствующим образом
каталогизированы и сделаны доступными {лучше всего через
сети ЭВМ).
10.3.2. Автоматизация вычислительных {>абот. Главным в раз­витии этого аспекта автоматизации является «доставка» вычис­лительных услуг непосредственно на каждое рабочее место на­учного работника. Д ля простейших вычислений эта задача ре­шается развитием и широким распространением микрокальку­ляторов. Для более сложных вычислений организуются рабочие
места с алфавитно-цифровыми дисплеями, связанными с более
мощной вычислительной техникой и с сетями ЭВМ. При этомпрограммное обеспечение (прежде всего сервисная часть паке­тов прикладных программ и языки манипулирования данными)должно строиться таким образом, чтобы каждый исследовательмог осуществлять диалог с машиной на привычном для негоязы ке.
10.3.3. Автоматизация информационного обеспечения наукии техники. Через те же рабочие места, которые открывают до­ступ к вычислительным мощностям, исследователи должны иметь
доступ к мощным банкам данных, накапливающим разнообраз­ную научно-техническую информацию. Прежде всего, это все­возможные виды публикаций (статьи, монографии, отчеты, ав­торские свидетельства и т. п.). При современном состоянии вы­числительной техники наиболее целесообразно подобные банки
организовывать по двухконтурной схеме: в первом контуре (вовнешней памяти ЭВМ) хранятся рефераты и поисковые обра­зы, а полные тексты (во втором контуре) представлены в видемикрофишей с возможностью быстрого автоматического изготов­ления копий обычного (удобного для читателя) размера. В слу­чае необходимости подобные копии могут высылаться почтой,а в пределах помещения, в котором расположен банк данных,возможно, и автоматической пневмопочтой.
Для быстрейшего и ц е л е н а п р а в л е н н о г оразвития
науки и техники принципиально важно, чтобы (автоматизиро­ванные) банки данных о готовых научных результатах допол­нялись банками проблем. Подобные проблемы могли бы выстав­ляться как непосредственно с производства, так и различными
проектно-конструкторскими и исследовательскими коллектива­ми. При наличии таких банков резко упрощается планирование
научной работы, увеличивается ее отдача и в з а и м о с в я з ьразличных разделов науки и, наконец, может быть, самое глав­ное — существенно облегчается внедрение результатов научных
исследований в практику.

Среди автоматизированных банков данных должны занять
свое место и банки экспериментальных данных, в том числе бан_ки первичной экспериментальной информации, о которых гово­рилось выше. Само собой разумеется, что эффективное исполь­зование автоматизированных банков данных (вклю чая меж ду­народный обмен научно-технической информацией) предполага­ет широкое развитие сетей ЭВМ и автоматизированных рабочих
мест (терминалов) для доступа к ним.
10.3.4. А втоматизация дедуктивных построений. В последние
годы достигнуты определенные успехи в автоматизации дедук­тивных построений (логического вывода) в диалоговом режиме.
В первую очередь это касается формульных преобразований валгебре и анализе.
Однако и в доказательствах сложных теорем (например, в.знаменитой теореме о четырех красках или в некоторых пробле­мах теории чисел) вычислительные машины уж е сыграли хотяпока еще и вспомогательную, но тем не менее весьма важную
роль (такую, что обойтись без их помощи было бы практически
невозмож но). Более подробно проблемы автоматизации доказа­тельства теорем разбираются ниже (в гл. X II). Здесь же мыспециально подчеркнем, что реальное практическое значение се­годня имеет не задача полной замены математика-исследо­вателя машиной, а задача увеличения производительности еготруда. Поэтому главное направление в развитии автоматизации
дедуктивных
построений
сегодня — этодиалоговые
си­стемы.
10.3.5. Кибернетическое моделирование. Спектр задач, кото­рые решаются методами кибернетического моделирования, весь­ма широк. Сегодня практически ни одна серьезная большая си­стема (будь то в материальном производстве, организованном
управлении или в обороне) не реализуется без предваритель­ного всестороннего моделирования на ЭВМ. При моделировании
технических систем, характеризую щ ихся числовыми параметра­ми, широко используется аппарат систем обыкновенных диффе­ренциальных и разностных уравнений, уравнений математической
физики, теории вероятностей и других разделов современной
математики. Описать весь этот аппарат в рамках одной кни­ги, разумеется, невозможно. Заметим лишь еще раз (об этомуж е говорилось в гл. V ), что для описания таких систем и ма­ш инны х экспериментов с этими описаниями созданы специаль­ные алгоритмические язы ки (с трансляторами), в том числе оте­чественные язы ки слэнг и недис. Результатами машинных экс­периментов обычно являю тся гистограммы экспериментальных
законов распределения тех или иных параметров, характеризую ­щих свойства моделируемых систем и, главное, их поведение втех или иных условиях.

Не вдаваясь более подробно в описание этого вида модели­рования, остановимся несколько подробнее на моделировании си­стем, характеризующихся так называемыми качественными па­раметрами, т. е. параметрами, способными принимать лишьконечные множества значений (например: отлично, хорошо, удов­летворительно, плохо или холодно, тепло, ж арко). Такими пара­метрами в основном характеризуются различного рода биологиче­ские и социальные системы. Заметим, что, какие бы названияни имели подобные параметры, их всегда можно заменить
эквивалентными числовыми значениями, например, писать вме­сто «отлично» 5, вместо «плохо» 2 и т. п. Кроме того, не ис­ключено, что отдельные характеризующие систему параметры
могут принимать обычные числовые (непрерывные или дискрет­ные) значения.
Заметим, что при наличии обычных числовых параметров ихвсегда можно «загрубить», заменив их (с соответствующим при­ближением) должным образом подобранными качественными
значениями, например, вместо точной величины кровяного дав­ления довольствоваться качественными выражениями «понижен­ное», «нормальное», «повышенное». В случае необходимости
большей точности число градаций качественных оценок может
быть увеличено. Учитывая приведенную возможность, мы огра­ничимся описанием одного вида модели, имеющей лишь качест­венные параметры, которая была впервые предложена автором
в 1969 г.
Прежде чем приступить к моделированию той или иной си­стемы с качественными параметрами, необходимо выполнить не­сколько этапов предварительной подготовки, объединяемых (вме­сте с этапом собственно моделирования) общим термином си­стемный анализ.
На первом этапе производится так называемая структуриза­ция изучаемого объекта (системы), т. е. разложение его на от­дельные подсистемы, блоки и элементы. Например, если объ­ектом изучения является человеческий организм, то в нем выде­ляются отдельные органы (печень, желудок, селезенка и т. д.),различного рода системы регулирования (например, система ре­гулирования содержания сахара в крови или температуры те­л а). Выделяются факторы внешнего воздействия на изучаемый
объект. Например, в случае, когда объектом является человече­ский организм, такими факторами могут быть режим питания,различного рода лечебные и профилактические процедуры и т. д.
Следующим этапом является параметризация изучаемого объ­екта. На этом этапе четко устанавливается система параметров(с областями их значений), которые характеризуют как самобъект, так и все внешние воздействия на него. Заметим, чтоодин структурный элемент может характеризоваться нескольки-тми параметрами. Н апример, такой элемент воздействия на че­ловеческий организм, как утренняя гимнастика, целесообразно
характеризовать по меньшей мере тремя параметрами: типом
гимнастики, ее интенсивностью и, наконец, степенью регулярно­сти ее исполнения (для каждого из этих параметров вырабаты­вается своя ш кала качественных оценок).
К ак структуризация, так и параметризация изучаемого объ­екта не имеют строгой регламентации своего выполнения. Ихвыполнение поэтому в значительной мере опирается на опыт иинтуицию исследователя. Общие требования к этим этапам со­стоят в том, чтобы никакие важ ные для функционирования изу­чаемого объекта элементы и параметры не выпали из рассмот­рения и чтобы степень детализации значений параметров дава­ла нужный уровень «загрубления» модели. Ясно ведь, что, какправило, нет смысла точно учитывать в модели значения одно­го параметра (иметь много градаций для н и х), когда другой,не менее важ ный для функционирования модели параметр неможет быть даже сколько-нибудь точно измерен (например, тем­перамент человека).
В процессе структуризации и параметризации объекта обыч­но выделяются главные параметры, которые имеют решающее
значение для ц е л и исследования. В случае человеческого орга­низма такими параметрами могут быть, например, степень рабо­тоспособности, общее самочувствие и т. п.
После выполнения параметризации начинается основной этапсоставления модели — установление зависимостей между пара­метрами. Вид таких зависимостей определяется в значительной
мере видом самих параметров. Если параметры выражаю тсяобычными числами (вещественными или целы ми), то между ни­ми могут существовать детерминированные или стохастические
(случайные) зависимости, выражаемые строгими математически­ми закономерностями.
Для моделей с качественными параметрами зависимости —это алгоритмы (системы правил), позволяющие по распределе­нию вероятностей значений параметров в предшествующие мо­менты дискретного времени вычислить такие распределения влюбой текущий момент времени. Ч ащ е всего такие зависимости
Даются логиков ременньши правилами вида: если параметры x ^(^)чх г{1), .. . , х п(1) в моменты времени I — 1, %— 2, . . . , I — к при­нимали некоторые заданные (вообще говоря, неоднозначно) зна­чения, то параметр х т(1) в момент времени I примет значения
а2, . . а{ соответственно с вероятностями р и р 2, . . Ри ЕслиУсловия в левой части правила не выполняются, то обычно пред­полагается, что д а н н о е правило предполагает сохранение дляпараметра х т(1) в момент времени I того распределения вероят­ностей, которое существовало для него в предшествующий момент

времени 1 — 1. Неоднозначность, о которой идет речь, означает,что для любого параметра х>(1) (г = 1, 2,п) в любой момент
времени I — 1, I — 2, . . I — к может допускаться не одно, а не­сколько различных значений.
Например, может быть высказано правило: если х {( 1 - 1 ) = 1
или 2, а х 2(1— 1) — х 2(1— 2) = 3, то х 3(1) с вероятностью 0,8примет значение 0 и с вероятностью 0,2 — значение 1 (посколь­ку 0,8 + 0,2 = 1, то остальные значения параметра х 3(1), еслитаковые существуют, имеют вероятности, равные нулю).
Если для х 3(1 — 1) вероятности равенства 0 и 1 были равны
0,5, а вероятности равенств х 1(Ь — 1 ) = 1, х^(1 — 2 ) = 2, х г (1 — 1) == 3, х 2(1 — 2) = 3 равны соответственно 0,1; 0,2; 0,6; 0,5, то собы­тие х 2(I — 1) = х 2{I — 2) = 3 имеет вероятность р^ = 0,6 • 0,5 = 0,3.
Событие х ^ Ь — 1 ) = 1 или х 2(Ь— 1) = 2 имеет вероятность р2 == 0 ,4 + 0 ,2 = 0,6 (поскольку, в отличие от классической матема­тической логики, в данном случае мы имеем дело с исключающим
«или», т. е. не допускающим одновременное выполнение обоих
условий от!(^ — 1 ) = 1 и х^(1 — 1) = 2).
Вероятность р 3 выполнения условия, стоящего в левой части
нашего правила, будет равна, очевидно, произведению р^р2, т. е.
0,18. Тогда, в соответствии с данным правилом, вероятность того,что #3(*) = 0, будет равна 0,18 • 0,8 + (1 — 0,18) • 0,5 = 0,144 ++0,41 = 0,554, а вероятность того, что х 3(1;) = 0, будет равна
0,18 • 0,2 + (1 — 0,18) • 0,5 = 0,036 + 0,41 = 0,446.
При наличии нескольких (возможно, даже противоречащих
друг другу) правил для вычисления распределения вероятностей
одного и того же параметра х т(1) им придаются нормированные
весовые коэффициенты
(сооставляющие в сумме единицу).
Для вероятностей каждого значения прогнозируемого параметра,вычисленных (по соответствующим правилам) аналогично тому,как это сделано в только что разобранном примере, находится
средневзвешенное значение р = 2 ^\Р% (где сумма берется по
2=1всем правилам, определяющим значения параметра х т(1)).
Все правила, устанавливающие зависимость от предыстории
значений всех параметров, характеризующих исследуемый объ­ект, записываются в определенном формализованном входном
языке и вводятся в память ЭВМ. Туда же вводится необходимый
отрезок предыстории изменения значений этих параметров дотекущего момента (с которого начинаются эксперименты с мо­делью ), а такж е значения всех параметров внешних воздействий
(или законы их изменения) на все время, в течение которого
исследуется поведение моделируемого объекта. Используя этиданные, специальная система (пакет) программ определяет (в со­ответствии с описанной выше процедурой) законы распределе-я и я вероятностей значений параметров, характеризующ их объект
последовательно для моментов времени 2 = 1, 2, . . Т. Распреде­ления (прежде всего главных параметров) в момент времени
I = Т выдаются (в качестве результата машинного эксперимента)па дисплей или на печать. Разумеется, при ж елании можно вы­вести распределения и в другие моменты времени.
П акет для экспериментов с моделью строится таким образом,чтобы было возможно оперативно (в диалоговом режиме) изме­нять любые элементы модели. В первую очередь это касается
внешних воздействий. Однако в случае необходимости можно
столь же оперативно вносить изменения в систему правил, весо­вые коэффициенты и т. п. Тем самым создается возможность
многократного повторения эксперимента в различных условиях.
Т ак, построив модель человеческого организма (и притом и н ­д и в и д у а л ь н о г о , а не среднего), можно на машинных экспе­риментах подобрать наилучш ие последовательности внешних воз­действий, с тем чтобы в возможно более короткий срок и повозможности без нежелательных побочных эффектов излечитьего от той или иной болезни (если это вообще в принципе воз­мож но). Аналогично, построив модель сложной социальной си­стемы, можно подобрать в машинном эксперименте такое управ­ление, которое приводит систему в желательное состояние. Оченьваж но при этом, что в машинном эксперименте (особенно надбиологическими и социальными объектами) можно воспроизво­дить такие условия, которые в реальном эксперименте получить
невозможно прежде всего в силу связанного с экспериментом
риска, а такж е, возможно, и просто в силу длительности и вы­сокой стоимости экспериментов на реальных объектах.
Разумеется, успех машинного моделирования и практическая
ценность его результатов определяются в первую очередь каче­ством самой модели. Поэтому необходимо сказать несколько слово том, каким образом строятся системы определяющих модель
правил. Если не удается найти какие-либо правила, справедли­вость которых можно было бы установить с точностью, с которой
устанавливается справедливость физических теорий, то в запасе
остается, во всяком случае, метод коллективных экспертных оце­нок, который мы будем называть такж е методом коллективного
мозга.
Сущность этого метода в основе своей предельно проста ипонятна: правила, определяющие модель, задают специально по­добранные люди — эксперты, исходя из собственного запаса зна­нии, опыта и интуиции. Возражение, что людям свойственно
ошибаться и что поэтому ценность подобных моделей сомнитель­на, на первый взгляд звучит достаточно убедительно. Однако
вспомним, что лечение живых людей, как правило, происходитн а основании опыта и интуиции одного человека (лечащего вра­ча) или весьма небольшого коллектива (консилиума) врачей.
В описанной же модели имеется возможность сконцентрироватьна выборе метода лечения больного (и притом, подчеркнемеще раз, индивидуального, а не среднестатистического больпого)знания, опыт и интуицию многих тысяч (а если надо, то и боль­ше) лучших специалистов. При этом особо подчеркнем, что каж ­дый из привлекаемых экспертов отвечает за свою группу пара­метров, так что при огромном общем числе привлекаемых экспер­тов за тот или иной конкретный параметр отвечает относительно
небольшое число (обычно от 3 до 12) действительно лучших
специалистов в данной области.
Важнейшая особенность модели, таким образом, состоит ввозможности неограниченного дальнейшего развития специализа­ц и и знаний без потери ц е л о с т н о г о взгляда на объект иссле­дования. Что же касается сохранения в модели специфическихи н д и в и д у а л ь н ы х черт исследуемого объекта, о котором уж едважды упоминалось выше, то дело здесь просто в выборе со­ответствующих параметров, которые эту индивидуальность ха­рактеризуют. Применительно к человеку такими параметрами
могут служить типы наследственности и темперамента, характер
работы, болезни и травмы, перенесенные в прошлом, т. д. Кроме
того, конкретные значения того или иного параметра общего
характера (например, величины кровяного давления) также ха­рактеризуют индивидуального больного и выбираются в модели
применительно именно к нему, а не к кому-либо другому.
Очень важным является вопрос о наличии (особенно в меди­цине и социологии) различных школ, а зачастую и прямо про­тивоположных взглядов по одному и тому же вопросу. Предло­женной модели в принципе это ни в коей мере не вредит,поскольку речь идет не о нахождении единственно правильного
результата, а лишь о распределении вероятностей возможных
исходов. Более того, чтобы не впасть в одностороннее суждениепри наличии разных школ по одному и тому же вопросу, к фор­мулировке правил, составляющих модель, следует привлекать
лучших специалистов в с е х этих школ. Правда, наличие прямо
противоположных правил увеличивает энтропию ответа (т. е. ме­ру нашего незнания об исследуемом объекте). Но каждый сог­ласится, что лучше получить расплывчатую картину, о б ъ е к ­т и в н о о б у с л о в л е н н у ю недостаточным уровнем знания обисследуемом объекте, чем впасть в иллюзию ложного детер­минизма.
В связи с последним замечанием отметим еще одну важную
особенность описываемой модели. В состав ее программного обес­печения включаются специальные программы, которые анализи­руют, какого рода вопросы в наибольшей мере способствуют
росту неопределенности результатов работы с моделью. С этойцелью должны быть измерены уменьш ения энтропии конечных(на момент времени Т) распределений при замене группы про­тиворечащих друг другу правил (относящихся к предсказанию
значений одного и того же параметра) тем или иным строго
детерминированным правилом. По величине такого уменьшения
можно ранжировать по относительной важности задачи уточне­ния закономерностей зависимостей одних параметров от других.
Тем самым появляется возможность ц е л е н а п р а в л е н н о г оуправления развитием соответствующей области знания.
Важным является вопрос о выборе относительных величин
весовых коэффициентов Я*, с помощью которых «взвешиваются»оценки, даваемые различными экспертами. Не вдаваясь в под­робности, заметим лишь, что при этом учитываются оценки экс­пертов, даваемые ими своему уровню компетентности в задава­емых им вопросах, и места по уровню компетентности, которыеони дают своим коллегам.
Используется такж е ретроспективный анализ, т. е. примене­ние данного набора правил для моделирования случаев, ужеимевших место ранее и соответствующим образом документиро­ванных. По мере накопления банков данных в соответствующих
областях знания этот метод будет приобретать все большее зна­чение. Его можно применять не только для корректировки весо­вых коэффициентов уж е имеющихся в модели правил, но и дляпополнения ее новыми правилами. Программное обеспечение
должно позволять выполнять подобные операции в диалоговом
режиме без существенных задержек в работе системы модели­рования. Наличие подобной возможности позволяет, в частности,вводя нулевые весовые коэффициенты для оценок, данных темиили иными экспертами, исключать тем самым учет их мненийиз процесса моделирования.
Специальные программы, анализирующие динамику измере­ний распределений вероятностей значений главных параметров
моделируемого объекта во времени, позволяют находить те мо­менты времени, в которые происходят наиболее резкие их пово­роты к худшему. Тем самым внимание исследователя концент­рируется на тех моментах, когда особенно важно изменить наме­ченные внешние воздействия на объект моделирования с целью
достижения лучших результатов управления. Благодаря этому
достигается убыстрение процесса диалоговой оптимизации управ­ления моделируемым объектом.
Х отя мы вели наше изложение применительно к моделям скачественными параметрами, легко заметить, что все описанные
приемы применимы в принципе к моделям с параметрами любой
природы. Ведь в конечном счете при реальных вычислениях на
ЭВМ (если не иметь в виду аналитические методы) всегда имеют
Дело с конечным числом значений л ю б о г о параметра, будь опцелочисленным или непрерывным. Поэтому в конечном счете
(при численных расчетах) с любым параметром можно опери­ровать как с качественным в нашем смысле (т. е. принимаю­щим конечное число значений). Другое дело, что языки дляописания зависимостей между параметрами с очень большим
числом возможных значений, равно как и языки для описания
законов распределения вероятностей этих значений, целесообраз­но изменить по сравнению с языками, ориентированными на«истинно» качественные параметры (с малым числом значе­ний). То же самое касается и методов (программ) для факти­ческого нахождения распределений вероятностей значений па­раметров.
10.4. Автоматизация обработки данных в медицине
В 70-е годы начался процесс быстрого проникновения элект­ронной вычислительной техники в медицину. Особенно усилилсяон после появления и широкого распространения микропроцес­соров. Микропроцессоры и микро-ЭВМ, встроенные в измеритель­ную аппаратуру, позволили резко ускорить выполнение необхо­димых для медицины исследований, улучшить их, а в ряде слу­чаев получить принципиально новое качество. С помощью ЭВМв настоящее время производится быстрый и качественный анализ
крови, анализируются кардиограммы и энцефалограммы, делают­ся гистологические исследования и многое другое.
Рентгеновский томограф представляет собой установку, гдеузконаправленное рентгеновское излучение обследует поворачи­вающееся тело. Для этого излучающая рентгеновская головка
перемещается по окружности кольца, в которое постепенно мел­кими шагами вдвигается исследуемое тело (благодаря чему ис­следуется много круговых разрезов). Датчик, воспринимающий
прошедшее сквозь тело рентгеновское излучение, через аналогоцифровой преобразователь подключен к ЭВМ, которая с помощью
достаточно сложных вычислений дает картину изменения плот­ности тканей (с точностью до 1% ) на каждом из участков ис­следуемого тела.
Результаты этих расчетов выводятся на экран дисплея (чащевсего — цветного) в виде наглядных изображений любого инте­ресующего врача разреза. Обработка на ЭВМ использует то об­стоятельство, что благодаря круговому перемещению излучателякаж дая точка разреза многократно пронизывается лучом с раз­ных направлений. Это позволяет применить интегрирование иустранение помех, благодаря чему резко усиливается контраст­ность и четкость изображения. Использование же при отображе­нии на дисплее разных цветов для тканей разных плотностей

позволяет врачу особенно наглядно видеть скрытые дефекты изачатки болезненных изменений тех или иных органов.
Главной частью звуковизора является звукоизлучаю щ ая (и од­новременно звукоприемная) головка, прикладываемая к иссле­дуемому участку тела. В головке находятся излучатели ультра­звука — пьезокристаллы, посылающие короткие импульсы ульт­развука в глубь тела по различным направлениям. О траженныеот границ, разделяющих друг от друга различные ткани, импуль­сы воспринимаются чувствительными элементами головки. И з­меряются амплитуда и время задержки прихода отраженных
импульсов. Обрабатывая результаты этих измерений, ЭВМ вос­станавливает (с точностью до 1 мм) пространственную картину
исследуемого объема и отображает ее на экране дисплея.
При этом с помощью так называемого стробирования (т. е.
отсекания всех сигналов, кроме тех, которые пришли в задан­ные временные интервалы) можно удалить из демонстрируемогона экране дисплея изображения все, что находится дальше илиближе исследуемого объекта. В результате врач может увидетьна экране бьющееся человеческое сердце, которое совершенно нескрывает грудная клетка. Дисплей звуковизора обычно снабж а­ется перемещаемым с пульта курсором (световой точкой). Под­водя курсор к тем или иным точкам изображения, можно с по­мощью ЭВМ практически мгновенно вычислять координаты этихточек, а по ним — размеры и положение различных интересую­щих врача объектов (органов, опухолей и т. п.).
Головки звуковизоров выполняются либо в виде плоского
поля неподвижных излучателей (сегодня до 400 ш тук), пере­ключаемых электронным коммутатором, либо в виде перемещаю­щегося механически излучателя или, чаще всего, вытянутой ьпрямую линию группы излучателей (что позволяет осуществлять
механическое сканирование не в двух, а лишь в одном на­правлении).
Важное значение для развития медицины имеет автоматиза­ция ведения медицинской документации. Прежде всего, речь идет*о первичной документации, т. е. об историях болезней. Создание
автоматизированных банков историй болезней создает большие
удобства для лечащих врачей, разумеется, при том непременном
условии, чтобы они были снабжены средствами доступа к банкам
(лучше всего дисплеями) непосредственно на рабочих местах.
Необходима такж е максимальная автоматизация процесса попол­нения банка новыми данными, возникающими после каждого
очередного обследования больного. С этой целью современная
диагностическая аппаратура, снабж енная микро-ЭВМ, может бытьотносительно легче доработана для автоматической регистрации:результатов обследования на носителе, пригодном для непосред­ственного переноса на ЭВМ, ведущих автоматизированный банкI

данных. Возможно также и непосредственное подключение из­мерительной (диагностической) аппаратуры к ЭВМ для автома­тического пополнения (актуализации) банка данных.
Разрабатываются универсальные измерительные кресла; уса­див в него больного, можно сразу снять и автоматически передатьв ЭВМ много данных (кровяное давление, температуру, кривые,характеризующие пульс, шумы сердца, магнитограммы и т. д.).
Другой источник для пополнения банка данных — это ответы
самого больного на те или иные стандартные вопросы (о само­чувствии, ранее перенесенных болезнях и т. п.). В мировой прак­тике постепенно устанавливается порядок, что такие вопросы(с перечнем возможных ответов) высвечиваются автоматическив определенном порядке на дисплее, установленном в приемной
врача. Пациенту, ожидающему приема, необходимо при очеред­ном вопросе нажать клавишу с номером нужного ответа. Чтобы
идентифицировать личность пациента, перед началом опроса ЭВМдолж на получить его регистрационный номер (номер истории
болезни). Ввод этого номера в принципе можно поручить самому
пациенту (после ввода номера на экране для контроля ж ела­тельно иметь не только этот номер, но и имя пациента). Однако
более удобен и, главное, более защищен от ошибок другой спо­соб, когда у пациента имеется регистрационный жетон со всеми
необходимыми для его идентификации данными. На пульте ря­дом с дисплеем монтируется специальный регистратор, автома­тически считывающий данные с этого жетона.
Подобный программно-управляемый диалог можно употреб­лять и при вводе данных, формируемых врачом. С этой цельюпа экране дисплея у врача высвечивается наименование очеред­ного требуемого действия (например, прослушивание шумов
сердца) и перечень всех мыслимых результатов этого действия.
Выполнив действие, врачу достаточно нажать клавиш у с номе­ром установленного им результата (признака), чтобы этот ре­зультат оказался автоматически занесенным в историю болезни.
Врачу при этом предоставляется широкий выбор возможных
процедур осмотра, которые он запускает (набором номера тре­буемой процедуры) в зависимости от симптоматики заболевания.
Если врач не удовлетворяется ни одной из имеющихся стандарт­ны х процедур, он может применить любую предпочитаемую иминдивидуальную процедуру. В этом случае, правда, ему потре­буется гораздо больше времени, чтобы ввести в ЭВМ (с клавиа­туры дисплея) даже специальные укороченные коды сделанныхнм в результате осмотра заключений.
Для упрощения работы врача в этом случае могут исполь­зоваться специальные многоклавишные пульты или их имитацияна дисплее с возможностью отметки обнаруженного симптомаили заключения световым пером, а также устройства графиче­ского ввода, на поле которого нанесены наименования возмож­ных заключений. Возможен и другой путь, когда сделанные за­ключения записываются на диктофон, а затем вводятся в ЭВМвспомогательным персоналом в специальном диктофонном центре(он может обслуживать не одно, а несколько лечебных учреж ­дений) .
Кроме того, врачу должна быть предоставлена возможностьс помощью персонала, обслуживающего автоматизированный банкданных, включить свою индивидуальную процедуру осмотра вчисло стандартных и при повторных ее применениях пользоватьсяуж е описанным выше упрощенным (программно-управляемым)вводом. Само собой разумеется, что врач по своему ж еланию
может вызвать на экран своего дисплея любой раздел историк
болезни осматриваемого пациента, в том числе и разделы, за­полненные в процессе текущего осмотра. Н ужно подчеркнуть,,однако, что это не относится к записям, сделанным на диктофон.
В этом состоит основной недостаток диктофонного метода: сде­ланные с его помощью записи смогут быть вызваны врачом надисплей лиш ь после их обработки в диктофонном центре. П равда,в последние годы достигнуты значительные успехи в автомати­зации ввода произвольной информации в ЭВМ непосредственно
голосом. Однако подобные системы пока еще достаточно слож ны,дороги и потому не получили еще сколько-нибудь широкого при­менения *).
10.4.1. Автоматизация диагностики и выбора метода лечения.
Автоматизация диагностики в принципе может быть организо­вана тем же самым методом коллективного мозга, который был:описан выше (см. п. 10.3.5). Единственное отличие состоит втом, что в правилах, определяющих зависимость (качественных)параметров, которые характеризую т диагноз, от параметров, ха­рактеризующих симптоматику и результаты обследований, отсут­ствует время. Однако, если требуется не просто установить диаг­ноз, а дать прогноз развития заболевания, то описанная в п. 10.3.5
методика может действовать без всяких изменений. То же самоа
касается и коллективного (автоматизированного) консилиума, н апримере которого и была объяснена указанная методика. Зам е­тим лишь, что при автоматизации диагноза большую роль могут
сыграть не только модели с качественными параметрами, но иразличного рода количественные модели и подмодели.
При автоматизации врачебных назначений (с коллективным
копсилиумом или без него) существенное значение имеет нали­*) Имеются относительно простые системы автоматизации ввода от­дельных слов из ограниченного словарного набора. Однако такие устройства
фактически (после стандартизации процедуры ) эквивалентны у ж е описан­ному программно-управляемому вводу.

чие у автоматизированного места работы врача возможности
автоматического изготовления твердых копий, т. е. зафиксиро­ванных на бумаге рецептов и предписаний врача, которые боль­ной может забрать с собой. При этом тек~т назначения вызыва­ется (по короткому коду) из памяти ЭВМ на экран дисплея,прочитывается и в случае необходимости корректируется вра­н о м * ). Лиш ь после этого (в результате нажима на специаль­ную кнопку) изготовляется копия текста с экрана дисплея. Придальнейшем развитии безбумажной информатики возможна пря­мая передача выписанных рецептов на автоматизированные ра­бочие места в аптеке.
10.4.2. Автоматизация медицинской статистики. При наличии
автоматизированных банков данных всей первичной медицинской
информации их объединение в сеть дает возможность автомати­зировать любые мыслимые формы медицинской статистики. В ор­ганизации этой работы нет никаких принципиальных отличий оторганизации других форм общегосударственной и территориаль­ных систем учета. Поэтому мы не будем останавливаться на бо­
лее /летальной ее характеристике. Отметим лишь, что наличие воз­можности быстро выполнять анализ данных по многим миллио­нам историй болезней в любых разрезах позволяет подвести подразличного рода медицинские рекомендации и методы несрав­ненно более солидную базу, чем это делается сейчас на основа­нии наблюдений и сравнения нескольких сотен или в лучшем
случае нескольких тысяч различных больных.
10.4.3. Автоматизация управления медицинскими учрежде­ниям и. Автоматизация учета различного рода ресурсов, которы­ми располагает медицина (персонал, помещения, оборудование,лекарства и др.), позволяет существенно улучшить использова­ние этих ресурсов. Такой эффект наблюдается у нас уже сейчаспри автоматизации процесса распределения путевок в профсоюз­ные санатории в ряде районов страны. Задачи распределенияреш аю тся в таких системах в диалоговом режиме и, как правило,не требуют особо сложных математических методов (хотя зада­ч а оптимизации распределения путевок с учетом всех возможных
требований представляет собой достаточно сложную задачу диск­ретного программирования). Важнейшее значение в подобных
системах имеет дисциплина а к т у а л и з а ц и и сведений об осво­бождении ресурсов (например, о досрочном отъезде отдыхаю­щ их) и о любых других изменениях (например, необходимости
-экстренного ремонта помещений), которые могут повлиять нараспределение (путевок, мест в больницах и т. п.).

* ) Это делается тем ж е способом, что и редактирование текстов, опи­санное в § 10.2.

Организация заказов и поставок расходуемых ресурсов (на­пример, лекарств) делается в соответствии с общими принципа­ми управления запасами, которые описываются в следующей
главе.
Заметим еще, что принципы нахождения и ранжирования
узких мест в пашем знании о моделируемых объектах, изложен­ные в п. 10.3.5, будучи применены к моделям человеческого
организма в норме и в различных формах патологии, дают объек­тивный исходный хматериал для ранжирования целей развития
медицинской науки, т. е. в конечном счете для управления ееразвитием. При этом влияние разнообразия форм патологии идругих индивидуальных особенностей человеческого организма наранжирование целей можно устранить, воспользовавшись меди­цинской статистикой для оценки степени общественной важноститех или иных из этих особенностей (прежде всего степени рас­пространенности).
10.5. Автоматизация обученияВо многих странах (особенно в Японии) уделяется большое
внимание автоматизации обучения с помощью ЭВМ на всех уров­нях — от детских садов до высшей школы. Основой служат такназываемые программированные учебники и учебные пособия,которые могут принести немалую пользу й сами по себе. Отли­чие программированного учебника от обычного состоит прежде
всего в более строгом дозировании изучаемого материала. К аж ­дая порция снабжается хорошо продуманным набором контроль­ных вопросов и задач, на которые заранее заготавливаются серии
возможных ответов, причем лишь один является правильным.
Остальные ответы подбираются в соответствии с характерными
ошибками, которые обычно делаются учащимися.
Прочитав очередную порцию материала и осмыслив ее, уча­щийся переходит к первому контрольному вопросу (или задаче),обдумывает его (или реш ает задачу) и выбирает из приведенных
ответов тот, который представляется ему правильным. Осущест­вив выбор, он заглядывает в конец учебника и при правильном
ответе переходит к следующему контрольному вопросу. В случае
неправильного ответа, в зависимости от вида сделанной ошибки,учебник объясняет сущность этой ошибки и, если надо, отсы­лает учащегося к повторному изучению (или просмотру) ужеизученных им ранее порций материала.
Из сказанного ясно, что самостоятельная работа с програм­мированным учебником требует большой самодисциплины (тре­буется удержаться от заглядывания в конец учебника до реше­ния контрольной задачи, строго следовать указаниям о возвра23 в. М. Глушков

щении к уже пройденному материалу и т. д.). Поэтому напрактике лучше всего организовать самостоятельную работу суказанными программированными учебниками (без заключитель­ной оценочной и направляющей частей) на специальных авто­матизированных местах, лучше всего, снабженных дисплеями склавиатурой, присоединенными к ЭВМ, которая управляет процес­сом обучения. Поскольку обычные дисплеи пока еще достаточно до­роги, для целей обучения часто используются упрощенные спе­циализированные устройства отображения информации. На каж ­дом дисплее ЭВМ высвечивает задание, которое должен выпол­нять сидящий за дисплеем (и снабженный учебником) учащийся
(название порции материала, который надо изучить, или номер
контрольного примера, который надо решить). Окончив выпол­нение задания, учащийся сообщает об этом ЭВМ, нажимая спе­циальную кнопку, если это конец изучения очередной порции,или номер правильного ответа, если это было решение контроль­ного примера. После этого учащийся видит на дисплее либопросто следующее задание (обычно со словами одобрения), либообъяснение совершенной ошибки и опять-таки следующее задание.
При этом ЭВМ автоматически регистрирует совершенные
ошибки и по программе, параметры которой определены учебни­ком (и, возможно, скорректированы преподавателем), выстав­ляет оценки учащимся. Во время самостоятельной работы уча­щихся преподаватель с помощью специального пульта может ножеланию контролировать работу, выполняемую каждым учащим­ся, и получаемые им оценки, оказывать им дополнительную
помощь, давать дополнительные разъяснения т. д. Возможно
также, что некоторые разделы учащиеся изучают не по учебни­ку, а в устном изложении преподавателя, особенно если изуче­ние сопровождается демонстрацией наглядных материалов, про­ведением опытов и т. д. В развитых системах автоматизации
обучения предусматривается автоматическое управление показом
демонстрационных материалов, в том числе отрывков учебных
кинофильмов (иногда с их выводом в нужное время на индиви­дуальные дисплеи, хотя сегодня это обходится еще достаточно
дорого).
Американской фирмой «Контрол Дейта» (Соп1го1 Ба1а) раз­работана система для обучения чтению в детских садах: на ин­дивидуальные дисплеи выводятся картинки, изображающие раз­личные предметы и явления, и обозначающие их английские
слова. Ребенок пальцем указывает на дисплее слово, обозначаю­щее выведенное изображение и получает (в наглядном виде) надисплее ту или иную реакцию в зависимости от правильностиили ошибочности данного ответа. В системе используется плаз­менный плоский дисплей (см. гл. IV ), так что из ЭВМ на неговыводятся лишь слова, а картинки высвечиваются на экран

дисплея сзади с помощью дешевого, хотя и управляемого от ЭВМдиапроектора.
При автоматизированном обучении число контрольных вопро­сов и задач к каждому разделу обычно стремятся увеличить
таким образом, чтобы иметь возможность давать разные вопросы
различным учащимся. При этом, разумеется, нет необходимости,чтобы каждый учащийся ответил на все контрольные вопросы.
Более способным ученикам могут быть предложены для прора­ботки дополнительные разделы или может быть задано больше
контрольных вопросов (в том числе повышенной сложности),менее же способные могут ограничиться лишь необходимым ми­нимумом.
В таком индивидуальном подходе к учащимся, возможно,заключается самое главное преимущество автоматизированного
обучения. Ведь при традиционном (групповом) методе обучения
преподаватель вынужден ориентироваться на некоторый сред­ний уровень. В результате более способные ученики недорабаты­вают и скучают во время занятий, а менее способные перена­прягаются или попросту не усваивают всего требуемого мате­риала. Второе (не менее важное) преимущество автоматизиро­ванного обучения состоит во всеобщем и постоянном к о н т р о л еи объективной оценке успехов каждого, в отличие от выбороч­ного периодического контроля, характерного для традиционного
метода обучения. Указанные преимущества обеспечивают, какправило, гораздо большую эффективность автоматизированного
обучения по сравнению с традиционным.
Вместе с тем нельзя не видеть и серьезные недостатки авто­матизированного обучения в том варианте, который был толькочто изложен. Ясно, например, что далеко не одно и то же, вы­брать правильный ответ на вопрос из уже готовых формулиро­вок или самому сформулировать его. В изложенном варианте
автоматизированная система не учит самостоятельно формули­ровать свои мысли, она не способна оценить ход решения зада­чи, а оценивает лишь результат этого решения. Таким образом,никак не оценивается оригинальность подхода к решению задачи,хотя, разумеется, такая оценка чрезвычайно важ на для развития
творческих способностей учащихся. Поэтому на нынешнем этапе
развития автоматизированные системы обучения должны приме­няться в разумной пропорции с традиционными методами.
Заметим, что преодоление указанных недостатков нынешнего
этапа автоматизации обучения обеспечивается развитием работно искусственному интеллекту. Прежде всего — это работы пофункционированию ЭВМ в естественных человеческих язы ках(с распознаванием смы сла), а такж е работы по диалоговым си­стемам автоматизации дедуктивных построений (логического вы­вода), о которых говорится в гл. X II. В этом направлении уже23*достигнуты определенные результаты, однако сегодня еще не­сколько рано говорить об их широком внедрении в практику
автоматизированного обучения.
Правда, когда учащийся излагает свои ответы на понятномдля современных ЭВМ языке, решение всех указанных вопросов
резко упрощается и реализуется на практике уже сегодня. Речьидет об автоматизации обучения программированию на различных
входных языках ЭВМ (включая, разумеется, и обучение самим
этим язы кам). Подобные системы (например, отечественная си­стема СПОК) ускоряют изучение входных алгоритмических язы ­ков современных ЭВМ в несколько раз, обеспечивая одновременно
более прочное и глубокое овладение изучаемым материалом.
10.5.1.
Управляемые ЭВМ — тренажеры. Системы автомати­зированного обучения особенно эффективны тогда, когда речьидет об обучении определенным н а в ы к а м, например, пилоти­рования самолетов. Подобные системы называют обычно трена­жерами. В простых случаях они могут быть выполнены сред­ствами обычной автоматики, в сложных — основываются на ис­пользовании ЭВМ (порою даже очень мощных).
Поскольку число типов тренажеров очень велико, опишем(и притом кратко) только один из них, а именно.авиационный
(самолетный). Наиболее заметной частью такого тренажера яв­ляется кабина управления, которая берется прямо из самолета
требуемого типа. С помощью телевизионных установок на фона­ре кабины воспроизводится обстановка, которую тренирующийся
нилот должен был бы видеть в реальном испытательном полете.
В простейшем случае воспроизведение обстановки производится
передающей телевизионной камерой, имеющей возможность дви­гаться (с помощью управляемой системы подвесок) над моделью
местности (включая модель аэродрома), выполненной в соответ­ствующем масштабе. Динамика самолета и закономерности отоб­ражения обстановки (визуально через телекамеры и через си­стему установленных в кабине приборов) моделируются с помощью
вычислительного комплекса, который чаще всего в тренажерах
данного типа состоит из аналоговой и цифровой ЭВМ.
Воздействие пилота на находящиеся в кабине органы управ­ления через соответствующие преобразователи передается на вы­числительный комплекс и в преобразованном виде (в соответствиисо смоделированной схемно-программной динамикой самолета именяющейся окружающей обстановкой) отображается пилоту ви­зуально и на приборную доску. Для полноты иллюзии в систему
отображения включаются управляемые через вычислительный
комплекс динамики, воспроизводящие сопровождающие действия
пилота звуковые эффекты (шум заводных двигателей, стук уби­рающегося шасси, грохот взрыва при «аварии» и т. п.). В неко­торых случаях пилотская кабина тренажера укрепляется надлинной штанге, приводящейся в движение мощными сервопри­водами. Управление этими сервоприводами также осуществля­ется вычислительным комплексом через модель динамики само­лета, так что пилот будет испытывать на себе (в пределах под­вижности конца штанги) результаты своих собственных действий
(толчки, крены, перегрузки и т. п.).
Огромным преимуществом тренажеров является возможность
многократного воспроизведения опасных и аварийных ситуаций,что, разумеется, нежелательно или даже вовсе невозможно вреальных испытательных полетах. Кроме того, несмотря па до­вольно большую стоимость современных авиационных тренаже­ров, «полеты» на них обходятся все же намного дешевле, чемреальные испытательные полеты (особенно на современных сверх­звуковых или большегрузных самолетах). Прежде всего этимобстоятельством, а такж е высокой эффективностью (в сочетаниис безопасностью) обучения, объясняется ш ирокая распростра­ненность авиационных тренажеров. То же самое (а порою и в зна­чительно большей мере) относится к тренажерам для других типов
сложной современной техники (особенно космической). Перед темкак садиться за реальный пульт управления, всевозможные си­туации тщательно проигрываются на соответствующих тренажерах.
Появление микропроцессоров и дешевых микро-ЭВМ открыло
широкую дорогу развитию тренажеров для обучения навыкам
управления практически всеми машинами и технологическими
процессами, в том числе и такими, для которых эго ранее былоэкономически невыгодно.
10.6. Автоматизация проектно-конструкторских работ
Хотя автоматизация сложных проектно-конструкторских ра­счетов— ровесница вычислительной техники (первые ЭВМ дела­лись в первую очередь для этой цели), однако системы автома­тизированного проектирования (САПР) появились значительно
позднее. Главное отличие этого нового этапа — переход от авто­матизации расчетов к комплексной автоматизации всего процесса
проектирования в целом. В полном виде современные САПР пре­дусматривают полную автоматизацию всех расчетных и всехчертежных работ (кроме, быть может, эскизных набросков, вы­полняемых от руки, без всяких чертежных инструментов), а так­же практически полную (за исключением подписей и неформа­лизованных пояснений) автоматизацию изготовления всей необ­ходимой документации
(чертежей, спецификаций, нормати­вов и т. п.).
Важной особенностью современного этапа в развитии САПРявляются все большее слияние и взаимопроникновение собствен­но к о н с т р у к т о р с к о г о и т е х н о л о г и ч е с к о г о этапов про­оптирования. При ориентации проектов на автоматизированное
производство (в первую очередь на программно-управляемое обо­рудование) проектно-техническая документация традиционного
(ориентированного на человека) вида в значительной мере теряет
свое значение. На первое место выходит технологическая доку­ментация на машинных носителях, которую можно непосредст'венно использовать для управления оборудованием с ЧПУ. Дляцелей контроля (осуществляемого человеком) будет готовиться
только упрощенная документация крайне ограниченного объема
(разумеется, в том случае, если человек не пожелает иметь боль­ш его). Тем самым в полной мере (в разумном для человека
смысле этого слова) будет осуществлен переход к безбумажной
технологии автоматизированного проектирования.
Чтобы проще и лучше представить себе современное состоя­ние работ по САПР, мы начнем свое изложение идеализирован­ным описанием полностью автоматизированного крупного К Б илипроектного института относительно близкого будущего. Прежде
всего подчеркнем, что полная автоматизация понимается здесьне в смысле полного исключения человека из процесса проекти­рования, а в смысле освобождения его от всех рутинных работ.
Основой описываемого идеализированного САПР является мно­гомашинный вычислительный комплекс, состоящий из крупных
(общеинститутских) ЭВМ, мини-ЭВМ в отделах и отдельных
группах и, наконец, из микро-ЭВМ, вмонтированных в автомати­зированные рабочие места (АРМ) каждого сотрудника.
Все мини-ЭВМ, как правило, снабжаются автоматическими
линиями по производству технической документации (чертежные
автоматы, АЦПУ, копировальные и брошюровочные машины,выводные устройства, выпускающие носители с соответствующи­ми программами для оборудования с Ч П У ). Еще более мощными
линиями такого рода снабжается общеинститутский ВЦ. В рядеслучаев подобный центр подготовки технической документации
(ЦПТД) может исключить необходимость иметь подобные линиипри отдельных мини-ЭВМ.
Вычислительный комплекс через Государственную сеть вы­числительных центров должен иметь автоматический выход нацентрализованные специализированные банки данных по мате­риалам, стандартным конструктивным элементам, комплектую­щим деталям, оборудованию и т. п. В случае отсутствия сетикаждый проектный институт (или К Б) должен заводить упро­щенные (ориентированные на свои нужды) банки такого рода.
Нет нужды доказывать, что централизованные (пополняемые раз­работчиками всей страны и всеми доступными зарубежными
материалами) банки данных могут обеспечить гораздо более пол­ный и качественный сервис для проектантов, чем любые упро­щенные доморощенные варианты.

Под автоматическим выходом на централизованные банки
данных здесь понимается возможность для к а ж д о г о сотруд­ника, не сходя со своего р а б о ч е г о м е с т а , оперативно полу­чить все необходимые ему сведения (вклю чая чертежи) об ин­тересующем его объекте. Поскольку данные получаются через
институтский вычислительный комплекс, то при решении исполь­зовать запрошенный стандартный элемент в своем разделе про­екта сотрудник не должен вводить никаких данных (кроме име­ни требуемого элемента) в ЭВМ. Нужно заметить, что борьба сручным вводом информации в ЭВМ является одной из главных
отличительных черт комплексной автоматизации вообще и САПРв особенности.
Вычислительный комплекс САПР должен быть обеспечен ма­шинным автоматизированным архивом проектов, выполненных вданном институте или К Б . Из этого архива в установленном
порядке (с минимальной задержкой после окончания разрабо­ток) должны пополняться соответствующие централизованные
банки. Кроме того, сам институт (или К Б ) может вести одинили несколько (специализированных) централизованных банков
данных (в соответствии с произведенным распределением). Ковсем этим данным в принципе такж е должна быть обеспечена
возможность оперативного доступа непосредственно с рабочих
мест.
Чтобы избежать возможных недоразумений, заметим сразу,что возможность оперативного доступа к данным ограниченного
пользования реализуется только для лиц, имеющих на то соот­ветствующее право. О средствах защ иты информации от не­санкционированного доступа уже говорилось выше (в гл. VI ) .
Помимо уже перечисленных банков данных, носящих в тойили иной мере архивный характер, в системе должен иметься
главный оперативный банк данных, а именно банк данных те­к ущ и х проектов (выполняемых институтом или К Б в н а с т о я ­щ е е врем я). Этот банк включает в себя прежде всего графиче­скую информацию от самой подробной до обобщенной (от черте­жей отдельных деталей и конструктивных элементов до чертежей
общего вида). К графической информации на всех уровнях «при­вязывается» вся другая информация (размеры, виды материалов,точность обработки и др.).
Банк должен быть снабжен программами, осуществляющими
агрегацию и дезагрегацию данных. Смысл агрегации состоит вуменьшении степени подробности описания отдельных элементов
конструкции при включении их в описания более высоких уров­ней (описывающих целые блоки или всю конструкцию в целом).
Дезагрегация — обратный процесс, позволяющий выбирать изописаний высших уровней те или иные их части, восстанавливая
детализированные описания этих частей. При этом возникает

естественная иерархически строящаяся система описания конст­рукции: на верхних уровнях — описания укрупненной докумен­тации (технические задания, чертежи общего вида и т. и.), нанижнем уровне — самая подробная документация (включая тех­нологическую), описывающая первичные элементы, из которых
строится данная конструкция. Документация более высоких уров­ней, описывающая сборки, должна включать в себя описания
технологии сборки и соответствующих (питающих сборку) ма­териальных потоков.
Все требования, высказанные до сих пор, удовлетворяются виерархических базах данных (см. гл. V I). Однако для САПРиерархическая структура базы данных обычно оказывается недо­статочной. Необходимо учитывать «горизонтальные» связи, воз­никающие между взаимодействующими друг с другом элемента­ми конструкции,— связи, находящиеся на одном и том же уровне
иерархии (пара сцепляющихся зубчатых колес, мотор и приво­димый им в движение агрегат и т. п.). Подобные связи лучшеи естественнее всего учитываются в сетевых структурах баз дан­ных. С определенной степенью условности, по тоже достаточно
просто, они могут реализоваться и в реляционных структурах спомощью введения специальных отношений соседства.
Если в «данных пересечениях» горизонтальных связей указа­ны границы соприкосновения соседствующих конструктивных
элементов, то с помощью специального программного обеспечения
нетрудно автоматически передавать вдоль таких связей данныеоб изменениях этих границ. Тем самым через базу данных изме­нения, вносимые в процессе конструирования на одних рабочих
местах, будут автоматически сигнализировать о необходимости
изменений на всех рабочих местах, связанных с ними логикой
проекта. Путем приведения в действие процедур агрегированияи дезагрегирования сведения о произведенных изменениях могут
автоматически передаваться на другие рабочие места по линиине только горизонтальных, но и вертикальных (иерархических)связей.
Благодаря наличию описанных автоматических связей рабо­чих мест через базу данных работа над проектом может бытьорганизована в диалоговом режиме, где партнером системы вдиалоге будет коллектив ответственных конструкторов примернос тем же самым разделением функций по конструктивным эле­ментам и уровням иерархии проекта, какое имеет место и в обыч­ном, не автоматизированном проектировании. Различие состоит
прежде всего в том, что каждый конструктор работает с системойв одиночку, без многочисленных помощников и вспомогатель­ного персонала.
Получая исходные данные для работы через систему с выше­стоящего уровня (самый верхний уровень — от Т З ), ответствен-иый конструктор работает в диалоговом режиме с системой через
свой АРМ, в состав которого должен входить прежде всего гра­фический дисплей со световым пером или произвольно переме­щаемым курсором и с соответствующей клавиатурой. В случае
необходимости одновременной работы с тремя проекциями папульте могут быть смонтированы три графических дисплея. С по­мощью светового пера и клавиатуры конструктор может вводитьв систему с экрана дисплея различного рода эскизные наброски
конструкторских решений. При этом стандарные конструктив­ные элементы вместе со всеми необходимыми описаниями могут
вызываться конструктором из соответствующих баз данных ивключаться в состав проектируемого им блока.
Используя программы для геометрических преобразований,разнообразные расчетные программы, а также программы дляавтоматической компоновки требуемых конструктивных элемен­тов в заданном объеме или на заданной площади и внося в слу­чае необходимости те или иные поправки в сделанные эскизные
наброски, конструктор оформляет в памяти системы порученныйему участок в цельный проект со всеми необходимыми описа­ниями. При изменениях других участков проекта он в соответ­ствии с указанием своего руководителя вносит дополнительные
поправки. Наконец, когда проект будет полностью завершен, поуказанию руководителя проекта приводятся в действие автома­тические линии по производству всей необходимой технической(и технологической) документации.
Важной особенностью описанной технологии автоматизированног ^ проектирования является минимизация работы по вводу
данных в систему. Необходимые данные для расчетов берутся изсистемы указанием их имени или просто идентификацией рас­считываемого объекта путем прикосновения светового пера к егоизображению на дисплее. С помощью светового пера конструк­тор может двигать на экране отдельные элементы конструкции,добиваясь улучшения компоновки. Расчетные программы, равнокак и программы геометрических преобразований, также вызы­ваются по их именам, а наиболее простые из них — нажимом
соответствующих кнопок на клавиатуре дисплея. Благодаря этому
становится выгодно автоматизировать не только сложные, но ипростые расчеты, которые при отсутствии комплексной автома­тизации было невыгодно выполнять па ЭВМ, потому что эконо­мия, полученная от автоматизации вычислений, не компенсиро­вала потерю времени на ввод исходных данных.
Следует иметь в виду, что при проектировании сложных объ­ектов (например, сверхзвуковых самолетов) нередки случаи,когда точные методы расчета еще до конца не разработаны.
Тогда прибегают к физическому моделированию (например, к ис­пытаниям моделей самолетов в аэродинамических трубах). Прикомплексной автоматизации процесса проектирования все этапы
физического моделирования (изготовление модели, планирование
эксперимента, его реальное проведение, съем получаемых дан­ных и их ввод в систему) такж е автоматизируются. На этапе
изготовления модели в процесс включаются соответствующие
автоматические линии с ЧПУ, на этапе самих испытаний — си­стемы АСНИ. В случае подобного объединения автоматизирован­ных систем различного назначения получаемая в результате
система комплексной автоматизации называется обычно интегри­рованной автоматизированной системой.
В полной мере для большинства видов сложных проектов
описанная технология еще не внедрена. Однако отдельные еечасти получают все большее распространение. Для простых кон­струкций (фермы мостов, подпорные стенки, электросчетчики,простые автоматические регуляторы и др.) уже сегодня сущест­вуют полностью автоматические системы проектирования, кото­рые выдают полный набор технической документации по техни­ческому заданию. Достаточно широкое распространение получили
системы автоматического раскроя (одномерного или двумерного),системы автоматического проектирования (размещения элемен­тов и трассировки) печатных плат и больших интегральных схем,автоматического проектирования трубопроводов и др.
10.6.1.
Проблемно-ориентированные комплексы. Из приведен­ного описания системы комплексной автоматизации проектно­конструкторских работ ясно, что для ее реализации необходима
специфическая структура технического комплекса (включающего
специализированные АРМ ). Кроме того, значительная часть про­граммного обеспечения практически пе зависит от вида проек­тов, для которых оно предназначено,— прежде всего, программы
работы с графической информацией и расширение операционной
системы, обеспечивающие взаимодействие АРМ через специали­зированные базы данных. То же самое можно сказать о тради­ционных расчетных программах в рамках общеинженерных кур­сов, изучаемых в технических вузах.
Создавая системы генерации описанного «общепроектного»программного обеспечения применительно к различным возмож­ным конфигурациям технических комплексов, мы фактически
создаем своеобразные «заготовки» для автоматизации любых
проектно-копструкторских работ. По предложению автора, подоб­ные заготовки получили название проблемно-ориентированных
комплексов (П О К ). Они могут быть ориентированы не только наавтоматизацию проектирования, но и на другие системные при­менения ЭВМ (например, на автоматизацию испытаний). Полу­чив такие комплексы, можно гораздо быстрее создать соответст­вующие автоматизированные системы, дополняя ПОК специали­зированными программами, прежде всего расчетного характера.

С этой целью в состав ПОК включаются средства той или инойтехнологии автоматизированного программирования (см. гл. V ).
10.6.2.
Автоматизация исследовательского проектирования.
В последние годы все большее внимание уделяется автоматизациии с с л е д о в а т е л ь с к о г о этапа проектирования, т. е. того эта­па, на котором оформляются основные идеи будущего проекта.
При этом ЭВМ с соответствующим программным обеспечением
активно участвует в процессе, автоматизируя значительную часть
изобретательской деятельности.
При автоматизации исследовательского проектирования ис­пользуется небольшое число базовых идей. Первая из них —создание автоматизированного банка различного рода явлений ипроцессов, известных современной науке. При этом стандартное
программное обеспечение банка данных дополняется программа­ми, позволяющими автоматизировать процесс комбинирования
таких явлений в цепочке, приводящей к решению поставленной
задачи. Например, если требуется сконструировать прибор, из­меряющий поворотом стрелки указателя величину освещенности,ЭВМ может выбрать из банка и связать в цепь три хорошо изве­стных физических явления: преобразование света в электрический
ток, тока — в магнитное поле, а магнитного поля — в отклонение
стрелки.
В хорошо организованных системах, использующих эту идею,в банк включаются известные технические реализации рассмат­риваемых явлений, а такж е необходимые количественные дан­ные, позволяющие автоматически рассчитать «стыки» объеди­няемых в цепочку явлений с целью определения практической
реализуемости выбираемых комбинаций и их ориентировочных
параметров (например, точности). Наряду с известными техни­ческими реализациями исходных явлений в байк могут бытьвключены другие их известные реализации, например, в живых
организмах. Практика показывает, что при достаточно большой
величине исходного банка явлений система способна автомати­чески находить новые технические решения, находящиеся пауровне изобретений.
Вторая базовая идея — построение так называемых алгебр
конструкций и автоматизация с помощью специального про­граммного обеспечения различного рода формальных преобразо­ваний в таких алгебрах. Конструкция представляется при этомв виде формулы (или системы формул) в некоторой алгебре.
Возможные преобразования конструкции задаются с помощью^так называемых определяющих соотношений, аналогичных соот­ношениям а + Ь = Ь + а, а(Ь + с) = а • Ъ + а • с и др. из обычной
алгебры. При этом преобразовании, меняя конструкцию, не ме­няют ее функционального назначения, точно определяемого призадании соответствующей алгебры.

Например, любая комбинационная схема, как было показапо
в § 1.6, может быть задана системой формул булевой алгебры.
Преобразования этих формул с помощью соотношений булевой
алгебры меняют конкретные реализации комбинационных схем,не меняя задаваемых ими отображений.
Другой пример: форма поперечного се­чения (профиля) п о д п о р н о й стен­ки (рис. 10.1) может быть задана си­стемой уравнений /Дх, г/) = 0 (г = 1,
2, . .., к) его границ. Подвергая левые
части этих уравнений различного родапреобразованиям,неменяющим
Рис. 10.1
высоты Н и усилия Р, выдерживаемо­го стенкой, мы реализуем алгебру про­филей подпорных стенок. Имея алгебру, можно ставить те илииные задачи нахождения оптимальных профилей, например про­филей минимальной площади. Таким способом были найдены но­вые формы профилей, составившие предмет изобретений.
Автором была решена задача построения алгебр алгоритмови программ, позволившая автоматизировать глубокие преобразо­вания схем преобразователей дискретной информации вместе сих математическим обеспечением.
Смысл использования алгебр конструкций на этапе исследо­вательского проектирования состоит в том, что, найдя тем илииным способом какую-нибудь реализацию полученного задания
(обычно достаточно плохую), конструктор может последователь­но улучшать найденное решение. При этом важно, что в про­цессе такого улучшения могут меняться не только отдельные
количественные параметры, характеризующие конструкцию, но ипоявляться принципиально новые качественные решения. Н а­пример, с помощью алгебры алгоритмов и программ автомати­чески, с помощью ЭВМ, находится идея позиционной системы
счисления, на изобретение которой в истории математики былизатрачены многие сотни лет.
Объединение описанных базовых идей подводит серьезную
основу для автоматизации изобретательской работы (в процессе
диалога с человеком) в различных сферах проектно-конструктор­ской деятельности.
10.6.3.
Автоматизация системы первичной подготовки техно­логических нормативов, Для автоматизации организационного
управления важное значение имеет достоверная информация онормативах трудовых и материальных затрат, необходимых дляреализации проектов новых сооружений и конструкций. Так,если речь идет об организации производства новой машины, не­обходимы нормы расхода различных материалов и комплектую­щих изделий в расчете на одну машину, а также затраты вре­мени работы оборудования и рабочих для ее производства взапроектированной технологии.
Подготовкой нормативной информации должен заканчиваться
процесс изготовления технологической документации каждого про­екта. Не вдаваясь в специфику расчетов окончательных нормати­вов, остановимся подробнее на методике предварительной оценки
нормативов на р а н н и х стадиях проектирования, т. е. в э с к и з ­н о м проекте или даже в а в а н п р о е к т е . Т акая оценка важна,во-первых, для решения вопроса о том, в каком направлении
следует двигаться дальше, т. е. какие варианты развивать наследующих, более длительных и дорогостоящих этапах проекти­рования — в технологическом и рабочем проектах. Во-вторых,такая информация крайне важ на для долгосрочного планирова­ния производства (о чем пойдет речь в следующей главе).
В то же время дать даже грубую оценку нормативов (с точ­ностью до 5 —10% ) на ранних стадиях проектирования совсем
непросто. Более того, обычные методы получения подобной ин­формации от проектантов зачастую просто не срабатывают. Успех
достигается, как правило, лишь в том случае, когда в описанную
выше схему комплексной автоматизации проектирования вводит­ся специальный, направляемый ЭВМ диалог с коллективом про­ектантов. Прежде всего, ЭВМ задает вопросы главному конст­руктору — руководителю проекта — относительно того, из каких
блоков и узлов будет состоять проектируемый объект и ктоперсонально будет отвечать за их проектирование. Далее, вклю­чая по мере необходимости в диалог ответственных исполнителей
соответствующих разделов проекта, ЭВМ путем серии целена­правленных вопросов уточняет, какие прототипы из автоматизи­рованного архива простых проектов или соответствующих цент­рализованных банков данных ближе всего отвечают задачам,поставленным исполнителям. Затем последовательно извлекая избанка прототипов различные технологические нормативы, ЭВМпросит исполнителей или главного конструктора оценить в про­центах отличие от них соответствующих нормативов нового про­екта. При затруднениях в такой оценке (в частности, в случае
отсутствия подходящего прототипа) ЭВМ предлагает следующий,более детальный уровень разузливания рассматриваемых частей
проекта с указанием прототипов и относительной оценки нор­мативов для соответствующих более мелких узлов.
Полученные оценки автоматически переводятся из относи­тельных показателей в абсолютные и нормативы по одинаковым
позициям на разные узлы суммируются (например, по расходу
электроэнергии). В результате получается полная оценка норма­тивов по всему проекту в целом.
10.6.4.
Автоматизация процесса агрегации нормативов. Приподготовке данных для систем планирования на различных уров­нях (от предприятия до Госплана СССР) возникает необходимость
агрегации (укрупнения) технологических нормативов. Сущест­вуют два вида агрегации. В первом из них в рамках одного итого же изделия (проекта) происходит агрегация по различным:группам материалов, оборудования или рабочих специальностей.
Например, нормы расхода на одно изделие стали различных
марок агрегируется в норму суммарного расхода стали всех ма­рок на это изделие.
При подобной агрегации выполняются операции двух типов.
Во-первых, это пересчет агрегируемых нормативов на одни и тоже единицы измерения. Скажем, в случае расхода стали различ­ных марок — переход от квадратных метров к килограммам илитоннам. Уточнение выбора общей единицы измерения может
производится в режиме диалога. В случае отсутствия общего н ат у р а л ь н о г о показания всегда возможен выбор общей единицы
измерения за счет перехода к с т о и м о с т н о м у показателю
(рублю). Программы пересчета должны быстро и просто (обычнов режиме диалога) адаптироваться к любым возможным изме­нениям, в первую очередь — к изменениям цен. Второй тип опе­рации — это прямое сложение агрегируемых нормативов, приве­денных к общей единице измерения.
Агрегация второго вида предполагает объединение нормати­вов по группе изделий (проектов). Например, речь может идтиоб определении средней нормы V расхода стали на один легко­вой автомобиль, при условии, что выпускаются автомобили празличных марок с нормами расхода стали
и2, ..., ип соот­ветственно. Для определения подобной усредненной нормы не­обходимо задать (обычно в диалоговом режиме) предполагаемые
объемы Хг или относительные доли а*- выпуска автомобилей
различных марок за период, на который рассчитывается усред­ненный норматив. При этомхг
а%= *1 + * 2 + ••• + *»’ 1 = 4’ 2 ’V=+ а 2и2 + . . . + аЛ*Управление агрегацией ведется с помощью задания соответст­вующих автоматизированных классификаторов, в случае необходи­мости изменяемых в диалоговом режиме. В системах автоматизироного планирования подобная агрегация ведется обычно на сетяхЭВМ по мере перехода от очередного уровня планирования кследующему по цепочке: предприятие, объединение, отрасль*Госплан. Возможно включение в эту цепочку цеха, а такж е тер-*риториальных уровней агрегации.
10.6.5.
Автоматизированные системы контроля правильности
нормативов. Поскольку первичная информация о нормативах ис­ходит от людей, необходимы соответствующие системы контроляза ее правильностью. Ввиду невозможности полной автоматиза­ции подобного контроля необходим контроль людьми требуемой
квалификации. Чтобы не занимать в системе контроля слишком
много людей, его необходимо максимально автоматизировать.
Но даже при таком условии хорошо организованная система
контроля предполагает, как правило, лишь выборочную провер­ку. Чтобы быть при этом достаточно эффективной и надежной,система контроля должна подкрепляться соответствующей систе­мой стимулирования.
Опишем одну из возможных систем автоматизированного
контроля, удовлетворяющих выдвинутым требованиям. Первая ееособенность — наличие строгой персональной ответственности заинформацию (в данном случае — за нормативы). Вторая особен­н о сть— наличие автоматизированного архива, организованного
так, чтобы по требованию системы контроля могла быть опера­тивно подобрана информация, поданная тем или иным лицом
(или группой лиц) в течение любого периода на несколько летназад. В случае необходимости проверки мотивировки выбора
проверяемым исполнителем той или иной информации системе
контроля открывается доступ к использовавшейся им системе
автоматизированного проектирования (включая банки прототи­пов). Кроме того, если к моменту проверки проект уже реализо­ван в производстве, системе контроля должен быть открыт доступк автоматизированной системе управления производством с целью
получения оттуда объективной информации о реально достигну­тых нормативах.
Производя проверку правильности дававшейся информации,в соответствии со строго определенной процедурой группа конт­роля делает заключение о величине зарплаты всех проверенных
лиц. В случае отсутствия обнаруженных нарушений добросове­стности в выданной информации действует процедура медленного(из месяца в месяц) повышения зарплаты с установленного ми­нимального уровня г до некоторого максимального (существенно
большего, чем г) уровня 2 * ) . В случае обнаружения нарушений
достигнутая к моменту их обнаружения надбавка над минималь­ным уровнем зарплаты может быть полностью или частично
снята и для ее восстановления до прежнего уровня потребуется
снова проработать достаточно длительное время.
Принципиально важно при этом, что проверке подвергаетсяне только текущ ая, но и прошлая информация. В противном
случае при выборочности контроля могли бы возникать надежды
как-то «проскочить» проверку, что, как показывает практика,*) Такое повышение производится и тогда, когда никаких проверок непроизводилось, а значит, отсутствуют о б н а р у ж е н н ы е нарушения.

резко снижает эффективность контроля. Попытки уйти от ответ­ственности в прошлом путем перехода на новую работу должны
быть пресечены специальной общегосударственой процедурой
установления начального уровня зарплаты на новом месте рабо­ты. Если меняющий работу хочет на новом месте сохранить за­работанный на старом месте стаж добросовестной работы и со­ответственно повышенный уровень зарплаты, за ним должна
быть сохранена ответственность за возможную недобросовест­ность, допущенную на прежнем месте работы. В противном слу­чае он должен начинать на новом месте «с нуля», т. е. с мини­мального уровня зарплаты.
Наличие описанного «груза ответственности за прошлое» по­зволяет получить достаточно эффективное воздействие контроляна правильность всей нормативной информации при охвате вы­борочное™ проверками лишь 10—15% ее общего объема. По­скольку выработка нормативов составляет лишь относительно
небольшую часть работы проектантов, а сама проверка все ж енесколько проще, чем первоначальная разработка, можно по­строить весьма действенную систему контроля, задействовав вней относительно небольшое число людей (порядка нескольких
процентов от общею числа людей, заняты х проектно-конструк­торской деятельностью ).
Сделанную оценку не увеличивает сколько-нибудь существен­но даже необходимость иерархического построения системы конт­роля и определенного процента дублирования контроля с целью
контроля самих контролеров. Иерархическое построение означает
наличие контрольных групп на разных уровнях управления (отуровня отдельного предприятия или организации до общегосу­дарственного уровня). При этом на каждом очередном уровне
иерархии контрольный аппарат должен быть существенно мень­ше (в 5—6 раз и более), чем на предыдущем, более низком уров­не. Чтобы большинство нарушений вскрывалось контрольными
органами нижних уровней иерархии, должна быть введена си­стема зависимости уровня зарплаты от стаж а добросовестной
работы не только у проектантов, но и у контрольных органов,а такж е у руководителей организации, где эти проектанты рабо­тают. При вскрытии нарушений органами контроля «своего»уровня, эти контрольные органы (а такж е руководители соот­ветствующего уровня) не только не теряют стаж добросовестной
работы, но даже могут получить разовую прибавку к нему (илиспециальную премию). Если же нарушения вскрываются конт­рольными органами вышестоящего уровня, то процедура сниже­ния достигнутого уровня зарплат распространяется в той илииной степени на контрольные органы и руководство проверяемо­го уровня (особенно если наруш ения вскрыты в информации,уже проверенной контролем проверяемого уровня).

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

10.7. Автоматизация в кредитно-финансовой системе
Автоматизация работы банков была одной из первых в миро­вой практике областей системного использования ЭВМ. Смыслее состоит прежде всего в переводе счетов клиентов с бумажных
носителей во внешнюю память ЭВМ. Сотрудники банка, работаяна специальных автоматизированных рабочих местах (банковскихАРМ) , осуществляют ввод требований клиентов на те или иныеоперации с их счетами — прежде всего, переводы со счета насчет, а такж е вкладывание на счет или получение с него налич­ных денег. Поскольку сами операции со счетами выполняются
автоматически, при такой автоматизации существенно увеличи­вается пропускная способность банков, а значит, и увеличивается
производительность труда.
Переводы со счета на счет в масштабах одного автоматизи­рованного банка выполняются тривиальным способом в пределах
одной ЭВМ или одного многомашинного комплекса. Организация
переводов между счетами, находящимися в разных банках, мо­жет осуществляться либо автоматически по каналу связи (еслибанковские ВЦ объединены в сеть), либо путем почтового обмена
между банками информацией на машинных носителях. Во вто­ром случае применяется соответствующая группировка операцийс разными счетами на одном носителе с целыо его более эконом­ного использования.
Ш ирокая автоматизация банковских систем в капиталистиче­ских странах позволила резко расширить круг их клиентов, обес­печить возможность распространения безналичных расчетов прак­тически на все население. Первой формой безналичных расчетовявились обычные чековые операции. В этой форме каждый кли­ент банка получает от него ч е к о в у ю книжку. *Расплачиваясь,.
владелец книжки вырывает из нее чек, пишет на нем уплачи­ваемую им сумму, расписывается и оставляет чек вместо денег.
Лицо, получившее чек, проставляет на нем номер счета, на ко­торый должна быть переведена уплаченная сумма, и направляет
2А^

В. М. Глушков

оформленный чек в банк, где находится его счет, а там всвою очередь, пересылая чек в выдавший его банк, обеспечи­вает соответствующий перевод со счета клиента на счет по­лучателя.
По мере насыщения системы торговли, общественного пита­ния и др. специальными кассовыми аппаратами создается воз­можность перехода к форме бесчековых расчетов. В этом случае
используется специальная чековая книжка, обычно с фотогра­фией и с вклеенным в нее кусочком магнитной ленты. В банке
владельца книжки специальный автомат производит считываниеи запись информации на эту ленту. На нее заносится, в частно­сти, код банка и номер счета клиента, остаток вклада, а также,возможно, специальный (обычно двузначный) контрольный код,запоминаемый клиентом с целью исключить возможность исполь­зования без специальной аппаратуры его чековой книжки вслучае ее попадания в чужие руки. Этот же автомат может пожеланию клиента распечатать в книжке или на отдельном листе
бумаги все операции с момента последней распечатки (снятиясо счета и поступления на счет).
Чтобы расплатиться с помощью книжки, клиент вставляет-ее в специальный кассовый аппарат и вводит в него свой конт­рольный код, после чего книжка становится доступной для опе­раций на этом аппарате. В число таких операций входит съемнеобходимой суммы с величины остатка вклада, указанной навклеенной магнитной ленте, и формирование платежного пору­чения банку владельца книжки для фактического перевода сня­той суммы на счет получателя. Оформление платежного пору­чения может производиться либо путем изготовления соответ­ствующего документа для последующей пересылки в банк, либопутем прямой (автоматической) связи в ВЦ банка владельца
книжки. Подобные кассовые аппараты обычно связаны с ЭВМ,ведущей бухгалтерские расчеты у получателя денег. Это позво­ляет формировать не индивидуальные, а групповые платежные
поручения на машинных носителях, подобно тому, как это де­лается при обмене информацией между автоматизированными
банками.
Если клиент ввел в аппарат неправильный контрольный код,ему обычно предоставляется вторая попытка. После повторной
неудачи формируется сигнал тревоги, извещающий, что книжкой
пытается воспользоваться другой человек. В случае автоматиче­ской связи кассового аппарата с ВЦ банка контрольный код нозаписывается на ленту, а хранится непосредственно в банков­ском счете клиента; при этом система защиты счета при воз­можной утере книжки становится еще более совершенной.
Проводятся эксперименты по автоматической идентификации
клиента по отпечаткам пальцев или по индивидуальным особен-йостям его голоса. Однако, в силу большой сложности и доро­говизны, подобные системы идентификации не получили сколь­ко-нибудь заметного распространения в кредитно-финансовой
деятельности, в то время как для ряда специальных целей по­добные системы находят все более широкое применение (преж­де всего в криминалистике).
При небольших суммах, записанных на встроенной ленте,можно обходиться вообще без контрольных кодов. На этом осно­ван, например, многоразовый билет, используемый для оплаты
поездок в общественном транспорте. При покупке билета навстроенный в него кусочек магнитной ленты записывается раз­мер уплаченной суммы. В общественном транспорте устанавли­ваются унифицированные кассовые аппараты, оперирующие обилетом как с чековой книжкой (без контрольного кода). Всеоперации последовательного съема с уплаченной при покупка
билета суммы распечатываются кассовым аппаратом тут же набилете. Одновременно выпечатываются признаки, по которым
можно определить, где и когда произведена уплата (чаще всего*время и номер аппарата).
Многие банки используют специальные автоматы, с помощыа
которых клиентам выдаются небольшие суммы наличных денег(по постоянным чековым книж кам). Такие автоматы устанав­ливаются обычно у входа в банк, так что ими можно восполь­зоваться и в то время, когда банк закрыт, в частности, поздно
вечером или даже ночью.
По образцу банков автоматизируются и обычные сберкассы.
В случае, когда по той или иной причине используются сбер­книжки без встроенных магнитных лент, для идентификации
личности клиента могут служить обычные удостоверения лич­ности (чаще всего — паспорт). В этом случае на пульте операI тора сберкассы производится автоматическая распечатка выполI ненных операций прямо на самой сберкнижке. Автоматизиро­ванные сберкассы сильно облегчают выполнение постоянных
поручений клиентов по безналичным расчетам за квартиру,,коммунальные услуги и т. п. При автоматизации начисления
зарплаты и других видов выплат клиентам организации, осу­ществляющие эти выплаты, могут принимать постоянные иливременные поручения о переводах получаемых сумм на тот илииной счет в выбранной клиентом сберкассе. Получение налич­ных денег по счету при комплексной автоматизации системы
сберкасс можно производить в любой сберкассе, включенной кобщую систему.
10.7.1. Социальное значение системы безналичных расчетов*| Развитие системы безналичных расчетов создает большие удоб| ства для пользователей и сильно сокращает количество находяI Щихся в обороте бумажных денег. Отметим также, что в социа24*листических странах подобные системы могут если не полностью
закры ть дорогу, то, во всяком случае, сильно ограничить такие
явления, как воровство, взяточничество, спекуляцию. С этойцелью необходимо создать наряду с обычной системой вкладовв сберкассах специальную систему индивидуальных безналичных
вкладов, которые в законодательном порядке было бы запрещено
пополнять с помощью наличных денег. Хотя брать с них налич­ные деньги в принципе не запрещалось бы, подобные вклады
предназначались бы в первую очередь для безналичной оплаты
покупок и услуг, предоставляемых государственными учрежде­ниями (магазинами, ресторанами, транспортом и др.). Пополне­ние таких вкладов также должно быть возможно лишь за счетперечислений от государственных учреждений всех или опреде­ленной части законных выплат (зарплата, премии, гонорары,пенсии и т. п.).
Предоставляя преимущества в приобретении товаров и услугза счет перечислений с подобных вкладов, можно соответствую­щим образом повышать р е а л ь н у ю ценность законных дохо­дов по сравнению с любыми видами незаконных доходов. Пре­имущества, о которых здесь идет речь, должны прежде всего
обеспечить (в законодательном порядке) п е р в о о ч е р е д н о еудовлетворение спроса, покрываемого за счет безналичных вкла­дов. Для товаров и услуг, составляющих предмет вожделений лю­бителей незаконных доходов (золото, автомобили, банкеты в мод­ных ресторанах и т. п.), можно было бы даже пойти на полное
запрещение отпуска их за наличные деньги. Другой мерой повы­ш ения реальной ценности законных доходов было бы установле­ние меньших цен на товары и услуги в случае оплачивания ихпо безналичному расчету.
Нетрудно понять, что любое заметное повышение реальной
ценности законных доходов явилось бы одним из самых мощных
стимулов повышения общественной производительности труда.
Разумеется, при этом необходимо обеспечить правильную оценкуи оплату труда в соответствии с его количеством и качеством.
Важнейшее значение здесь имело бы широкое использование си­стем контроля добросовестности, аналогичных описанной выше(п. 10.6.5) системе контроля добросовестности подготовки нор­мативной информации. Легко видеть, что такие системы пригод­ны для контроля не только чисто информационной, но и любых
видов производственной деятельности.
Развитие системы безналичных персонифицированных расче­тов, как это было показано автором еще в 1963 г., открывает ре­альный путь к постепенному переходу к полностью бесплатному
распределению товаров и услуг.

Одной из важнейших информационных технологий, в которой
автоматизация на основе ЭВМ приобрела большой размах, явля­ется различного рода учетная работа. Учет тесно связан с конт­ролем, являясь основой его информационной базы. Поэтому в ря*де случаев учет трудно отделить от контроля. Так, описанные
в § 9.6 автоматизированные системы контроля оборудования, по­мимо собственно контрольных (сигнализирующих) функций,обычно выполняют также учет времени работы оборудования иего простоев по тем или иным причинам. Задачей учета являют­ся периодическая фиксация, классификация и запоминание техили иных факторов, значений различных параметров, характери­зующих протекающие процессы, и т. п. При этом в автоматизи­рованных системах п е р в и ч н о г о учета стремятся к макси­мальному сокращению труда, затрачиваемого на ввод исходной
учетной информации в память ЭВМ. Обработка информации наэтой стадии сводится обычно к выполнению простейших арифме­тических действий. Системы в т о р и ч н о й обработки учетных
данных могут включать в себя процедуры группировки данныхно тем или иным признакам, нахождение законов изменения раз­личных параметров, корреляционных функций, выдачу различ­ного рода таблиц, кривых, гистограмм и т. п.
Учет делится на материальный и финансовый. В первом слу­чае используются натуральные единицы измерений (штуки,квадратные метры, тонны и т. п.), во втором — денежные (рублии копейки). В автоматизированных системах учета, как правило,должна предусматриваться возможность быстрого пересчета учи­тываемых величин из одних единиц измерения в другие. С этойцелью в память ЭВМ закладываются специальные таблицы, ко­торые в случае необходимости легко заменяются без перепро­граммирования самих процедур пересчета.
Для ведения автоматизированного учета создаются классифи­каторы учитываемых объектов (изделий, материалов, основных
фондов и т. п.). В таких классификаторах каждому объекту при­писывается с целью экономии памяти по возможности более ко­роткий буквенно-цифровой код. При этом кодам с одинаковыми
начальными (старшими) позициями соответствуют группы род­ственных объектов. При такой организации классификаторов
сильно облегчается организация автоматизированного поиска.
Если в каком-то звене экономики (цехе, предприятии, отрасли)Употребляется лишь небольшая часть классифицированных объ­ектов, то для него возможно построение укороченных локальны хклассификаторов. Для возможности выхода на другие звенья всоставе программного обеспечения соответствующих автоматизи­рованных систем предусматриваются автоматические перекодировщики из локальных классификаторов в общесоюзные.

Поскольку в условиях динамично развивающегося общества
номенклатура учитываемых объектов подвержена постоянным
изменениям, необходима система автоматизированного ведения
классификаторов. Такая система подготавливает и распределяет
между пользователями (на машинных носителях или по каналам
связи) все изменения в классификаторах. При этом, в случае
наличия перекодировщиков, они также должны автоматически
подстраиваться под все происходящие изменения. Наиболее раз­работанными и унифицированными являются, как известно, си­стемы бухгалтерского учета.
Остановимся на особенностях, которые привносит автомати­зация в различные конкретные виды учета.
10.8.1.
Складской учет. Операции учета на складах сводятсяк фиксации прихода и расхода изделий, материалов или полу­фабрикатов, хранящихся на складе, и к вычислению остатка повсем позициям номенклатуры в заданный момент времени. Прибольшой номенклатуре вычисление остатка по каждой позиции
этой номенклатуры после к а ж д о й приходно-расходной опера­ции возможно лишь при условии автоматизации учета. Для та­кой автоматизации, как правило, не требуется ЭВМ с большим
быстродействием. Требования же к внешней памяти определяют­ся прежде всего размером складской номенклатуры. При совре­менном состоянии дел с внешней памятью наиболее удобно те­кущие остатки (обновляемые после каждой приходно-расходной
операции) по всем позициям номенклатуры хранить на магнит­ных дисках, а архив приходно-расходных документов (ведомо­стей) вести на магнитных лентах. По мере заполнения архивные
ленты могут перерабатываться в соответствии с принятыми спо­собами ведения безбумажного архива и помещаться на хранениев лентотеку.
Оформление приходно-расходных операций может произво­диться разными способами в зависимости от степени комплекс­ности автоматизации не только самого складского учета, но ивсех взаимодействующих с ним звеньев. При локальной автома­тизации, когда на входе и выходе сохраняются бумажные доку­менты, кладовщик оформляет на каждую операцию документ напишущей машинке, снабженной перфоприставкой или непосред­ственно связанной с ЭВМ, так что ввод подготовленного доку­мента в ЭВМ не требует дополнительных ручных операций поподготовке данных.
При комплексной автоматизации оформление приходно-рас­ходных операций в принципе может осуществляться без всякой
работы на клавиатуре. Простейший способ для этого — сопро­вождение материальных ценностей, поступающих на склад и вы­даваемых со склада, машинно-читаемыми сопроводительными до­кументами (накладными, заборными картами, специальными мет­ками на упаковке и т. п .). С помощью специализированного ввод­ногоустройства — складского
регистратора — осуществляется
.автоматическое считывание этих документов и оформление соот­ветствующей приходно-расходной операции. При этом обычно
производится автоматическое нанесение на документ отметок опроведенной операции, а возможно, и подготовка новых (машин­ночитаемых) документов.
При наличии непосредственной связи между ЭВМ склада иЭ В М , пользователей складом объем информации на подобных со­провождающих документах может быть сведен к минимуму, не­обходимому для идентификации абонента. Вся остальная инфор­мация может быть передана путем прямого межмашинного
обмена.
Заметим, что автоматизация складского учета поднимается наболее высокий уровень в комплексно-автоматизированных скла­дах, где автоматизируются не только учетные, но и чисто техно­логические операции. В их число входит поиск нужного объектаили места на складе, погрузочно-разгрузочные и транспортные
операции (в пределах склада). Автоматизация технологических
процессов на складах выполняется с помощью специализирован­ного подъемно-транспортного оборудования с ЧП У , управляемогоот центральной ЭВМ. В памяти ЭВМ содержится схема разме­щения продукции на складе, оформленная в виде специализиро­ванной базы данных с возможностью быстрого поиска места раз­мещения любого требуемого объекта по его имени или инвентар­ному номеру.
10.8.2.
Учет выпускаемой продукции. При наличии на произ­водственном участке выходного склада учет продукции, выпу­скаемой этим участком, сводится к соответствующему складско­му учету. При отсутствии таких складов для автоматизации учета
произведенной продукции употребляются специальные автомати­ческие и ручные датчики. На нефтепромыслах такие датчики
фиксируют количество добытой нефти, на сборочных конвейе­рах — количество шагов конвейера, на отдельных станках и ста­ночных линиях — количество изготовленных деталей и т. п.
С целью устранения случайных или преднамеренных искажепий информации в систему учета вводятся различного рода про­цедуры контроля (особенно в случае ручных датчиков). Ониосновываются прежде всего на постоянном сравнении данных оьыпуске продукции на отдельных участках с данными о поступ­лении этой продукции на последующие этапы ее обработки, хра­нения или транспортировки. Эта цепочка проверок доводитсяДо выходных складов предприятия или процедур оформления
Документов на отгрузку готовой продукции внешним потреби­телям (по отношению к данному предприятию или объеди­нению).

I

Важными источниками информации о выпущенной продук­ции являются открытие и закрытие нарядов на работы, произво­димые бригадами или отдельными рабочими. Д ля устранения по­вторного ввода информации и максимального его упрощения по­добные процедуры выполняются на специализированных ввод­ных устройствах — так называемых регистраторах производства
( регистраторах информации).
Отечественный регистратор информации РИ-7501 предназна­чается для формирования, первичной обработки и регистрации
алфавитно-цифровой информации на первичных документах иперфоленте, а также для ввода-вывода ее по телефонному каналу
связи. Он осуществляет автоматический ввод с перфокарты иперфожетона, с блока набора условно-постоянных признаков(БН У П П ). В условиях производства на БН УПП может бытьнабрана заранее дата, номер смены, номер цеха и другие призна­ки, сохраняющие свои значения в течение длительного времени.
На перфокартах могут быть сформированы задания, а перфоже­тоны (емкостью по 15 десятичных разрядов) используются дляидентификации рабочих. Вставляя перфокарту и перфожетон исоответствующие прорези, осуществляют операцию фиксации вы­дачи задания рабочему. В случае необходимости дополнительные
данные могут быть введены вручную с алфавитно-цифровой кла­виатуры.
В регистратор встроено специализированное вычислительное
устройство, обеспечивающее возможность выполнения арифмети­ческих операций, автоматическое формирование порядкового но­мера сообщения, контроль достоверности вводимых данных, пере­дачу и прием данных по выделенному каналу связи с ЕС ЭВМ(и с ЭВМ типа М-4030). Обработка данных, формирование па­кета документа и сообщения осуществляются по программе, вво­димой перед началом работы с 80-колонной перфокарты. Уст­ройство изготавливает печатный документ (со скоростью 10 зн/с)н а бумажной ленте шириной 30 см с количеством копий до 5 эк­земпляров.
10.8.3.
Учет кадров, труда и зарплаты. Осповой для учета
труда и зарплаты являются автоматизированные системы (с руч­ным вводом) кадрового учета на отдельных предприятиях и объ­единениях. Из первичной базы данных, содержащей все требу­емые законодательством анкетные данные, автоматически фор­мируется вторичная база для системы учета труда и зарплаты.
В нее включаются лишь те анкетные данные, которые влияют наспособность выполнения той или иной работы, на зарплату иналоги (занимаемая должность, квалификация, стаж работы, ко­личество детей и др.). К этой базе обращаются при различного
рода назначениях и перемещениях. Ее можно использовать так­ж е при оформлении нарядов на те или иные конкретные работы.

Процедуры учета результатов труда используют данные учета
продукции, закрытия нарядов, а также данные систем контроля
качества и проверки исполнения, о которых пойдет речь ниже.
Начисление зарплаты в автоматизированных системах произво­дится в соответствии с установленными законом процедурами.'Ввиду их многообразия и изменчивости вряд ли целесообразно
подробно описывать эти процедуры. Заметим лишь, что автома­тизация дает возможность гораздо более полной и достоверной
оценки количества и качества труда и позволяет в полной мередовести хозрасчет до каждой бригады и даже до каждого рабо­чего. При автоматизированном начислении зарплаты сильно об­легчаются также безналичные перечисления на счета в сберкас­сы, о которых говорилось при рассмотрении вопроса об автомати­заций кредитно-финансовой системы. Облегчается такж е реализа­ция различного рода мероприятий, направленных на уменьшение
текучести кадров. В частности, в зависимости от размера
непрерывного стаж а работы на данном предприятии (или в дан­ном учреждении) оно может осуществлять прогрессивно нара­стающее кредитование соответствующих работников. Иными сло­вами, такие работники могут делать покупки по безналичному
расчету в кредит (до определенного уровня отрицательного саль­до на счете в сберкассе). О других мероприятиях такого рода мыговорим ниже, в пункте, посвященном общегосударственной си­стеме учета.
10.8.4.
Учет основных фондов. Автоматизация учета основ­ных фондов производится обычно путем ручного первичного
ввода паспортов на соответствующие фонды (землю, строения,оборудование и т. п.), а затем — внесения всех происходящих
изменений. Поскольку при таком дифференциальном учете изме­нений возникающие ошибки могут накапливаться, время от вре­мени производятся переписи (инвентаризация), в процессе кото­рых осуществляются необходимые поправки. Заметим, что припереписи нет необходимости осуществлять новый первичный
ввод всей информации. Более рациональна процедура машинного
вывода измененных паспортов (лучше всего на дисплей) и срав­нение их с наличным состоянием фондов. При отсутствии оши­бок соответствующие паспорта оставляются без изменений, приналичии ошибок в них вносятся необходимые исправления, по­добно тому, как это делается при автоматизированном редакти­ровании текстов (см. § 10.2).
Исходный первичный ввод может быть также автоматизиро­ван по мере развития систем автоматизированного проектирова­ния. В процессе автоматизированного проектирования новых
объектов (или реконструкции старых) должны автоматически
приготовляться на машинных носителях паспорта всех вводимых
заново или реконструируемых основных фондов.

Процедуры периодической инвентаризации необходимы не­только для системы учета основных фондов, но и для всех си­стем, использующих дифференциальный метод учета. Это отно­сится, в частности, к системам складского и кадрового учета, уж ерассмотренным выше.
10.8.5.
Учет в розничной торговле. Поскольку об автоматиза­ции складского учета уже говорилось ранее, необходимо расска­зать лишь о системе оперативного учета отдельных поку п о к*).
Т акая система, возможная лишь в условиях автоматизации, поз­воляет оперативно учитывать изменение спроса на товары, про­гнозировать будущий спрос (путем экстраполяции) и тем самым
своевременно реагировать на эти изменения с помощью коррек­ции заказов промышленности и сельскому хозяйству.
Наиболее просто система учета отдельных покупок реализует­ся при продаже штучных товаров (в том числе заранее расфасо­ванных). Существуют два основных способа обеспечения возмож­ности такого учета в процессе и з г о т о в л е н и я таких товаров.
При первом способе к товару прикрепляется специальная биркас условным кодом этого товара (единым в общегосударственном
масштабе). При продаже бирка отрывается и бросается в специ­альный контейнер (почтовый ящ ик). После окончания работы
содержимое контейнеров доставляется в ВЦ, где с помощью спе­циальных вводных устройств бирки автоматически прочитывают­ся и их содержимое автоматически вводится в ЭВМ. Разумеется,при этом должны быть обеспечены высокая надежность и доста­точная простота считывания. Иными словами, бирки должны
быть машинно-ориентированными.
Заметим, что способ учета с помощью бирок весьма эффекти­вен при организации учета неудовлетворенного спроса. Имея кобороте запас с п е ц и а л ь н ы х бирок, отличных от бирок на то­варах, для всех видов товаров, которыми может торговать мага­зин, можно ввести следующую процедуру: если покупатель спра­шивает товар, которого в данный момент нет в продаже, то про­давец обязан опустить соответствующую бирку в специальный
контейнер неудовлетворенного спроса. Обработка этих бирок про­изводится в ВЦ тем же способом, что и обработка бирок на про­данные товары.
Второй способ обеспечения учета единичных покупок — про­ставление кода на самом товаре в процессе его изготовления илина его фабричной упаковке. Код должен быть нанесен так, чтобы
специальный кассовый аппарат мог произвести его автоматиче­ское считывание и н е м е д л е н н ы й ввод в ЭВМ, в памяти ко­торой имеется таблица цен на товары, из которой автоматически
*) Учет в оптовой торговле осуществляется в процессе банковских опе-*раций, об автоматизации которых уж е говорилось выше,выбираются и посылаются в кассовый аппарат цена покупаемого
товара, а также итоговая сумма (если делается несколько поку­п ок). Т акая система особенно удобна тем, что таблица цен может
меняться оперативно (даже в течение рабочего дня) без необхо­димости остановки работы для переинвентаризации.
Описанная система, продолжающая внедряться в мировой
практике, достаточно дорога, поскольку требует переоборудова­ния всей системы первичного учета (кассовых аппаратов), а так­же ЭВМ, работающей в режиме реального времени.
В упрощенном варианте код товара вводится кассиром вруч­ную. При отсутствии непосредственной связи с ЭВМ это означает
необходимость ручного ввода такж е и цены товара. При исполь­зовании полных кодов национального классификатора потреби­тельских товаров (а при торговле товарами иностранного произ­водства и межнационального) такая процедура усложняет работу
кассира. Упрощение ввода возможно при использовании локаль­ных классификаторов (в крупных универмагах даже разныхдля разных отделов), особенно таких, у которых цена товара
является составной частью локального торгового кода (несущей
нагрузку, идентифицирующую товар). Закрепление кассовых
аппаратов за отделами позволяет впоследствии при обработке
лент кассовых аппаратов на ЭВМ автоматически перейти к лю­бому требуемому классификатору, которым пользуется данный
магазин. Разумеется, при этом необходимо оснащение ВЦ специ­ализированными вводными устройствами для автоматического
считывания информации с лент кассовых аппаратов (после до­ставки этих лент в ВЦ ).
Использование описанных систем автоматизации учета от­дельных розничных продаж вместе с системами автоматизации
складского учета дает возможность вести оперативную инвента­ризацию товаров (с точностью по крайней мере до одних суток)по огромной специфицированной номенклатуре, достигающей
многих сотен тысяч наименований. Поскольку структура спросана подавляющее большинство товаров зависит от дислокации м а­газинов, данные подобной инвентаризации позволяют за счетоперативного перераспределения товаров между магазинами су*ществсппо увеличить суммарный объем продаж. Опыт зарубеж ­ных фирм показывает, что увеличение товарооборота при этомможет достигать 10— 15%, а в отдельных случаях 20% и более.
Распространение описанных систем автоматизации учета еди­ничных покупок на развесные товары возможно при введениив коды локальных классификаторов показателей, связанных с ве­
сом. Разумеется, наилучшие результаты дало бы прямое сочета­ние цифровых весов (снабженных микропроцессором) с кассовым
аппаратом. Однако, поскольку принцип предварительной расфа­совки создает многие дополнительные преимущества как для тор­говли, так и для покупателей, подобные системы вряд ли имеют
большие перспективы для развития.
Заслуживают упоминания также системы автоматизации вторговле по предварительным заказам. Если заказ оформляетсяв виде машинно-читаемого документа, то оформление всех необ­ходимых операций и учет делаются очевидным образом, с мини­мальной затратой ручного труда. Торговля по заказам при усло­вии автоматизации не только в системе заказов, но и в промыш­ленности, продукция которой поставляется по этим заказам, даетвозможность осуществлять новые виды сервиса. Так, многие ав­томобильные фирмы предоставляют своим заказчикам право ин­дивидуального выбора многих варьируемых особенностей заказы ­ваемого автомобиля (цвет, форма руля, внутренняя обивка и др.)*В совокупности это приводит к такому числу комбинаций, реали­зовать которые в нужное время в условиях массового производ­ства без автоматизации управления невозможно.
10.8.6.
Учет на пассажирском транспорте. Для городского об­щественного транспорта и местных автобусных линий учет должен
обеспечивать решение задачи определения пассажиро-потокови точности выполнения расписания движения. Попутно дол­ж на решаться и финансовая сторона вопроса: оплата поездок*Весьма проста и вместе с тем достаточно совершенна с этой точ­ки зрения система автоматизации в нашем метрополитене. С од­ной стороны —■автоматическая регистрация и контроль оплаты
проезда, с другой — простым взвешиванием массы пятаков, из­влеченных из автоматов, оценивать поток пассажиров, входящихна тех или иных станциях.
Однако далеко не столь же просто определить распределение
потоков по маршрутам. Для решений этой задачи в автобусах,троллейбусах и трамваях применяют систему автоматического
взвешивания пассажиров (с помощью встроенных в рессоры дат­чиков). Фиксируя этот вес на каждом перегоне, можно оценивать
число пассажиров, сошедших и вошедших на каждой останов­к е * ) . Закладывая в места стоянок автобусов и троллейбусов поддорожным покрытием специальные индукционные петли, через
которые пропускается электрический ток, можно фиксировать
автоматически время прихода соответствующих транспортных
средств на каждую остановку и тем самым контролировать рас­писание их движения. Обычно индукционный датчик реагирует
просто на величину находящейся над ним металлической массы.
Однако, в случае необходимости, нетрудно снабдить каждую
транспортную единицу своим индивидуальным ответчиком на*) Во многих случаях достаточно хорошие исходные данные для учета
пассажиро-потоков дает регистрация водителем степени заполнения салона
пассажирами по 5-балльной или даж е 3-балльной системе нажатием соот*ветствующ их кнопок.

!

сигналы индукционной петли и тем самым сделать учет и конт­роль движения общественного транспорта еще более совер­шенным.
Об усовершенствованных автоматических кассах, способных,работать с билетами со встроенной магнитной лентой, уже гово­рилось выше (в § 10.7). Для продажи билетов разной стоимости
используются специальные автоматы со встроенными микропро­цессорами. Набирая на пульте пункт назначения, пассажир по­лучает на небольшом дешевом специализированном дисплее ве­личину суммы, которую требуется уплатить, и, опустив в кассу
соответствующее количество металлических денег, получает тре­буемый билет и сдачу. Подобные автоматы для работы с бумаж­ными деньгами пока не нашли применения ввиду большой слож­ности надежного автоматического распознавания банкнот (осо­бенно изношенных).
Для дальних пассажирских перевозок на всех видах транс­порта широкое распространение получили автоматизированные
системы заказа и оформления билетов. Подобные системы комп­лектуются специализированными терминалами с наборной кла­виатурой и печатающими устройствами, которые впечатываютв пустой бланк билета необходимые реквизиты. Терминалы со­единены с ЭВМ, в памяти которой сохраняется информация о за­полненных и проданных местах на каждый рейс (поезда, авто­буса, самолета, теплохода) в пределах максимальной длительно­сти предварительного заказа. Н абирая на клавиатуре терминала
требуемые пассажиром условия (прежде всего дату и классность
места), кассир через автоматизированную информационно-поис­ковую систему находит те или иные варианты, и в случае согла­сия пассажира автоматически оформляет билет, а также произ­водит необходимые изменения в базе данных. Для просмотра
различных вариантов желательно, чтобы терминал имел в своем
составе алфавитно-цифровой дисплей. Современные автоматизи­рованные системы заказа билетов обеспечивают решение задан
оптимизации маршрутов с пересадками (с любыми дополнитель­ными условиями, формулируемыми пассажиром), автоматическо­го резервирования мест в пунктах пересадки и др.
10.8.7.
Учет на грузовом транспорте. Для автоматизации уче­та на грузовом транспорте перевозимые грузы снабжаются ма­шинно-читаемыми сопроводительными документами (накладны­ми). При распределении грузов по отдельным транспортным
средствам формируются машинно-читаемая сводная марш рутная
карта. В ней указываются наименование, характер и пункты на­значения грузов, находящихся в данной транспортной единице,,а также дополнительные сведения, необходимые для лучшей ор­ганизации разгрузки в пункте назначения (схема расположения
грузов в трюме судна и т. п .). В пунктах остановок для пере-I

компоновки грузов на специальных терминалах происходит пересоставление маршрутных карт. При необходимости учета движе­ния грузов по маршруту в любых других запланированных зара­нее пунктах остановки (в случае железнодорожного транспор­т а — на сортировочных станциях) маршрутные карты вставляютсяв специальные регистраторы, которые либо просто фиксируют
время регистрации на самой карте, либо передают по линиям:связи необходимую информацию в специальный ВЦ, контролиру­ющий движение грузов по маршруту.
В случае железнодорожного транспорта имеются системы
(правда, еще не всегда надежно действующие) для автоматиче­ского считывания номеров вагонов на замедленном ходу, припрохождении через станции. Поскольку при этом копии марш­рутных карт находятся в памяти ЭВМ на центральном пункте
учета движения, то получаемая таким образом информация до­статочна для ответа на вопрос, где в настоящее время находится
любой интересующий нас груз.
Для учета работы грузовых автомобилей, особенно больше­грузных машин на дальних перевозках, используется специаль­ное автоматическое регистрирующее устройство, которое в соот­ветствии с заданным режимом фиксирует на магнитной ленте
время записи, а также показания спидометра и встроенного врессоры датчика веса (в моменты остановок или в заданные за­ранее моменты времени). Возможна, разумеется, фиксация по­казаний и других приборов. После каждого очередного рейса
лента с записями изымается из регистратора и с помощью спе­циального вводного устройства ее содержимое автоматически
вводится в ЭВМ. По введенным данным можно судить, насколь­ко выдерживал водитель заданные ему маршрут и режим движе­ния, соотнести эти данные с общим расходом горючего и т. п. ^Имея столь подробную информацию, можно строить весьма со­вершенные и эффективные системы стимулирования. Разумеет- ;ся, необходимым условием действенности подобных систем дета- ]лизированного учета будет существенно более высокая оплата
■труда водителей на автомобилях, снабженных такими систе- |мами.
I
10.8.8.
Учет в связи и в сетях ЭВМ и ВЦ коллективного поль- ]зования. Развитие автоматической междугородной связи заста- ;вило разработать и внедрить электронные системы учета дли­тельности телефонных разговоров с автоматическим начислением <платы за них. Переход от обычных АТС с электромеханической *коммутацией на квазиэлектронные, а затем и чисто электронные |АТС (со встроенными в них управляющими ЭВМ) открывает ;возможность распространить автоматическую систему учета на *все виды телефонных разговоров, не только междугородных. Осо­бое значение приобретает развитие таких систем при широком ^распространении системы индивидуальных дисплеев и других
терминалов, с помощью которых через системы телефонной и те­леграфной связи многочисленные потребители будут подключать­ся к сетям ЭВМ и к автоматизированным банкам данных. Па­раллельно с развитием государственной сети вычислительны^центров будут развиваться и системы автоматического учета
услуг, предоставляемых ей системой связи.
Что касается автоматических систем учета работы ЭВМ, тосегодня такие системы встраиваются в математическое обеспече­ние ЭВМ. С помощью встроенного в ЭВМ таймера учитывается
время, на которое каж дая задача занимает центральный процес­сор и другие устройства. Производится также учет объема опера­тивной и внешней памяти, занимаемой отдельными задачами^объявленных пользователями приоритетов задач, а также объемаи вида баз данных и архивов, которые создаются в ВЦ отдель­ными пользователями. Специальная программа с легко заменя­емыми таблицами тарифов на разные виды услуг производит
автоматическое начисление платы каждому пользователю за этиуслуги.
10.8.9.
Учет в системе коммунально-бытового хозяйства. В це­лях экономии расхода электроэнергии, газа, воды, тепла целесо­образно производить учет таких расходов у каждого потребителя
системой датчиков (счетчиков и расходомеров), что сегодня де­лается еще не для всех видов услуг. Главная трудность здесь —необходимость в специальном штате учетчиков, что сильно удо­рожает систему учета, делая ее в ряде случаев просто нерента­бельной (например, при учете расхода воды).
Выход из этого положения заключается прежде всего в объ­единении систем учета отдельных услуг в единую систему уче­та. Дальнейшая возможность повышения рентабельности систе­мы учета состоит в возложении на штат учетчиков дополнитель­ных функций (например, функций, связанных с опросами обще­ственного мнения). Еще более радикальное решение вопроса —создание систем автоматического дистанционного опроса датчи­ков. При условии полной телефонизации подобные системы мо­гут создаваться в процессе нового жилищного строительства. З а­метим, что для дистанционного опроса электрических счетчикок
может в принципе быть использована обычная электропроводка.
Если каждый счетчик снабдить ответчиком, отзывающимся насвою собственную частоту, индивидуальную в пределах данного
Микрорайона, то такой опрос может делаться из трансформатор­ных будок без какой-либо дополнительной проводки для переда­чи сигналов. Организация учета на предприятиях бытового обслу­живания (например, в прачечных) в принципе не отличается ог°рганизации учета на обычном производстве и сводится к ком­бинации уже описанных выше компонент учета.

10.8.10.
Учет населения и трудовых ресурсов. Сегодня во мно­гих странах уже созданы автоматизированные банки данных дляучета населения. Для малых стран такой банк создается в одной
центральной ЭВМ с соответствующим объемом внешней памяти(на магнитных дисках). В больших странах он может быть рас­средоточен По нескольким регионам с непременным условием
возможности автоматизированного обмена информацией между
ними (по линиям связи или на машинных носителях). Источни­ком основной информации для подобных банков являются учреж­дения, регистрирующие рождение, смерть, браки, разводы, а так­ж е акты иммиграции и эмиграции. Кроме того, в такие банки
обычно направляется дополнительная информация об измене­ниях постоянного местожительства, изменениях образовательногои имущественного ценза, об отношении к воинской службе и т. п.
Возможна и другая организация дополнительных способов
учета населения, а именно — организация специализированных
банков данных. В число таких банков включаются уже рассмот­ренные выше банки с данными о состоянии здоровья населения
(§ 10.4). При этом над первичными банками с историями болез­ней создаются вторичные банки, несущие лишь некоторую обоб­щенную информацию о состоянии здоровья населения данного
региона. Разумеется, при этом должпа быть задействована систе­м а автоматизированной актуализации подобных вторичных бан­ков. К числу специализированных банков данных, связанных сбанком учета населения, относятся обычно также банки, регист­рирующие различного рода правонарушения, судимости и т. п.
Связь основного банка со специализированными осуществляется
через единый учетный код, однозначно идентифицирующий каж ­дого человека данной страны. В одной из паиболее распростра­ненных систем такой код представляет собой десятичное число,первые две цифры которого указывают год рождения (48 — для
1948 г., 01 — для 1901 г.), следующие две цифры — номер меся­ц а рождения. Далее, две цифры отводятся для даты рождения,затем следуют цифры, идентифицирующие место рождения, и на­конец, цифры, индивидуализирующие различных людей, у кото­рых все описанные выше старшие разряды кода совпадают.
Среди специализированных банков данных, связанных с уче­том населения, особого внимания заслуживают банки учета тру­довых ресурсов. Создаваемые в регионах, центрами которых яв­ляю тся крупные города, такие банки фиксируют все трудоспособ­ное население данного района (извлекая необходимые сведенияиз основного банка учета населения и систем учета труда напредприятиях и организациях), связывая каждого человека пре­ж де всего не с местом его проживания (как в основном банке),-а с местом его работы. Основной задачей такого банка является
учет динамики соотношения различных категорий трудящихся,а такж е перетоков трудовых ресурсов. Особо большое значение
подобные банки приобрели бы в том случае, если бы они не про­сто фиксировали существующие перетоки, а прогнозировали быбудущие и анализировали бы их причины.
С этой целью каждый локальный банк учета трудовых ресур­сов должен организовать систему приема и регистрации в памя­ти ЭВМ запросов трудящ ихся об изменении места и вида своей
работы по возможности с указанием п р и ч и н такого рода за­просов. Постоянный анализ этих причин дал бы ценную инфор­мацию для организации систематической работы по их устране­нию задолго до того, как уж е возникшие реально перетоки соз­дадут трудноразрешимые проблемы дефицита работников тойили иной специальности. Следует особо подчеркнуть, что мерычисто воспитательного характера по уменьшению перетоков, безустранения причин, их порождающих, чреваты большой опасно­стью. Сдерживая до поры до времени реальные перетоки, онисоздают иллюзию мнимого благополучия и тем самым объектив­но мешают с в о е в р е м е н н о м уустранению порождающих
причин. Из сказанного отнюдь не следует, однако, что меры вос­питательного характера не нужны. Более того, их следует ещеболее усилить, но при обязательном условии дополнения рабо­той, направленной на своевременную регистрацию пожеланий вбанке учета трудовых ресурсов запросов об изменении работы.
Для устранения возможных причин, сдерживающих поступ­ление подобной информации, необходимо гарантировать заяви­телю тайну его «информационного вклада». Кроме того, банкдолжен взять на себя обязанность оперативно информировать
заявителей о возникновении вакансий, соответствующих выска­занным ими пожеланиям. С этой целью все объявления о вакан­сиях должны своевременно регистрироваться в банке желательноеще до реального возникновения самих вакансий.
10.8.11.
Автоматизация подсчета результатов голосования иопросов общественного мнения. В настоящее время разработанои применяется несколько систем автоматизации подсчета резуль­татов голосования. Д ля небольших коллективов (типа ученых со­ветов) одной из самых удобных является отечественная система
Форум. Кресла в зале, в которых производится голосование, снаб­жаются специальными фигурными четырехполюсными гнездамидля подсоединения выдаваемых членам совета индивидуальны хприборов голосования (И П Г ). На соответствующие позиции (по­люсы) каждого гнезда выходят проводники, подсоединяемые кчетырем шинам — проводам, уложенпым под полом зала и выхо­дящим на регистрирующий прибор, расположенный в пульте
председателя.
Каждый ИПГ включает в себя калиброванное сопротивление
(одинаковое для всех И П Г ), которое с помощью специального
25 В. М. Глушков

трехпозиционного переключателя может включаться в одну изтрех позиций, как это показано на рис. 10.2. Точки, обозначен­ные 0, + , —, ~ , подсоединяются к четырем полюсам фигурного
разъема, вставляемого в гнездо, а через это гнездо — к шинам,которым также присвоены обозначения 0,Таким обра­зом, обладатель ИПГ, манипулируя переключателем, может
включать свое сопротивление между
^шиной 0 и любой из трех других шин.
Регистратор на пульте содержит
аналого-цифровой преобразователь, ко­торый преобразует величину тока отпостоянного источника, текущего меж­ду шиной 0 и тремя остальными шиРис. 10.2
нами, в количество сопротивления, на­ходящегося в соответствующей пози­ции. Тем самым возникают три числа: голосующих «за» ( +) ,«против» (— ) и воздержавшихся ( ~ ) . У проводящего голосова­ние на пульте высвечивается общее количество подключенныхк системе ИПГ. Убедившись, что все выданные участникам ИПГподсоединены, он просит членов совета голосовать. Получив под­тверждение, что все голосующие установили свои ИПГ в пози­ции, соответствующие их мнениям, председатель нажимом спе­циальной кнопки фиксирует результат голосования в памяти
прибора. Одновременно производится отображение результата набольшом экране и впечатывание его в итоговый документ.
Точность аналого-цифрового преобразователя обеспечивает
надежное функционирование описанной системы для ста голосу­ющих. При большом числе голосующих систему можно допол­нить специальным коммутатором, подключающим последователь­но группы мест (числом до 100 мест в каждой группе) к ужеописанному регистратору, в состав которого вводится дополни­тельный (цифровой) групповой сумматор. В случае, когда нетребуется точный подсчет голосов, а нужна лишь оценка мнения
присутствующих, описанный принцип может применяться в «чи­стом» виде и в больших залах. При этом с целью упрощения
процедуры ИПГ, выдаваемые под расписку, заменяются постоян­ными трехпозиционными переключателями, встроенными в руч­ки кресел.
Достаточно проста система автоматизации подсчета результа­тов голосования с помощью цифрового прибора, регистрирующего
суммарное число нажатий каждой из кнопок, имеющихся на егопульте. Голосующий должен зайти в кабину, в которой находит­ся прибор, и наж ать кнопку, соответствующую его выбору. Приэтом с целью избежать возможности многократного наж атиякнопки одним и тем же лицом употребляются различные систе­мы блокировки, включающие прибор для нового голосования

лишь после того, как очередной проголосовавший покинет каби­ну. Соответствующие меры принимаются также для защиты отповторного прохода кабины одним и тем же лицом. Эти мерыупрощаются, если вместо наж атия кнопок голосующим предо­ставляется право бросить заранее выданные им жетоны в одноиз нескольких отверстий. Существуют такж е системы, автомати­чески подсчитывающие метки, проставленные голосующими вбюллетенях стандартизованной формы.
Последний способ широко применяется при выборочных
опросах общественного мнения. С целью избежать возможных
ошибок и упростить процедуру опроса простановка меток в спе­циальном бюллетене-анкете делается опрашивающим лицом наосновании устных ответов опрашиваемых.
В системе опроса общественного мнения отметим особо зада­чу прогноза потребительского спроса, что чрезвычайно важно дляплановой экономики. Т акая задача может реш аться путем выбо­рочных опросов на выставках-ярмарках новых потребительских
товаров. Целесообразно такж е на ранних стадиях проектирования
новых потребительских товаров и услуг изготавливать специаль­ные рекламные проспекты, описывающие как сами будущие то­вары и услуги, так и их ориентировочную цену. Пользуясь та­кими проспектами, служба опросов общественного мнения моглабы изучать будущий спрос на рекламируемые товары и услуги.
При развитии систем буквенно-цифрового телевидения с воз­можностью установления двусторонней связи с телезрителями
опросы общественного мнения можно производить, формируя во­просы на экранах телевизоров и получая короткие (цифровые)ответы на них, подобно тому, как это делается в системах авто­матизированного обучения (§ 10.5). Подобная процедура комп­лексно автоматизирует не только анализ ответов, но и процедуру
самого опроса.
Заметим, что все опросы общественного мнения носят, какправило, выборочный характер. О степени репрезентативности
(представительности) выборочных опросов и достоверности вы­водов, делаемых на их основании, можно судить, используя ме­тоды математической теории статистического контроля, основы
которой излагаются ниже (п. 10.9.3).
10.8.12.
Общегосударственная автоматизированная система
учета. Государственная сеть вычислительных центров (ГСВЦ),описанная в гл. V II, позволяет связать все локальные системы
автоматизированного учета, рассмотренные в предыдущих пунк­тах, в общегосударственную автоматизированную систему учета.
В такой системе могут реализоваться как регулярные процедуры
агрегации учетной информации, так и любые разовые обращенияк учетным данным. Благодаря безбумажному методу обмена ин­формацией в ГСВЦ достигается несравненно более быстрая, гиб25*кая и производительная обработка учетной информации, чем вныне действующей системе ЦСУ. Особенно это касается разовых
запросов, которые могут потребовать быстрой агрегации учетной
информации для представления ее в любом нетрадиционном
разрезе.
Среди регулярных процедур агрегации отметим процедуру
вычисления средних текущих зарплат (и тенденций их измене­ния) по разным категориям работающих в разрезах различных
ведомств и регионов. Наличие подобной п о с т о я н н о действу­ющей системы позволит в значительной мере децентрализовать
управление зарплатой, не теряя централизованного контроля надее средними уровнями, что чрезвычайно важно для предотвра­щения возможных инфляционных процессов. В случае нежела­тельных тенденций в изменении средних уровней зарплат мерымогут приниматься лишь по отношению к ведомствам и регио­нам, имеющим наибольшие величины нежелательных отклонений.
Уникальную возможность для резкого улучшения управления
экономикой дает система учета (и оперативной агрегации) лю­бых видов материальных ресурсов на складах в с е х у р о в н е й(вплоть до внутрицеховых). Для правильного использования
земли, как основного сельскохозяйственного ресурса, огромное
значение имеет подробный автоматизированный земельный ка­дастр (доведенный до отдельных полей и участков). В нем на­ряду с общими сведениями (размеры участков, тип почвенного
покрова и др.) должны содержаться данные об истории исполь­зования земли, необходимые для выбора правильных сево­оборотов.

10.9. Автоматизация в системах контроляКак уже отмечалось выше, функции учета и контроля папрактике оказываются зачастую столь тесно переплетенными,что установить границу между ними можно лишь условно. По­этому ряд вопросов автоматизации контроля (например, контро­ля за средним уровнем зарплат) уже был нами рассмотрен
в § 10.8. Еще ранее (в п. 10.6.5) был рассмотрен вопрос о конт­роле добросовестности подготовки нормативной информации.
Аналогичным образом может быть организован контроль за доб­росовестностью исполнения любых других, достаточно точно оп­ределенных обязанностей. Нам остается сделать несколько до­полнительных замечаний об особенностях организации систем
автоматизированного контроля в двух важных областях, а имен­но контроля за исполнением приказов и распоряжений и систем
контроля качества продукции.

10.9.1. Автоматизация контроля исполнения. Идея автомати­зации контроля исполнения очень проста. Все поручения, данныетем или иным должностным лицам, вместе со сроками исполне­ния помещаются в память ЭВМ на «счет» соответствующих лиц.
По установленной процедуре, за определенное число дней доистечения срока, ЭВМ автоматически формирует напоминание оданном поручении. Если поручение не выполняется, подобные
напоминания формируются в момент наступления срока испол­нения, а в случае необходимости и после этого срока. Одновре­менно происходит подсчет дней просрочки исполнения. Напоми­нания и подсчет просрочек прекращаются после ввода в ЭВМ(лицом, ответственным за контроль исполнения) информацияоб исполнении (закрытии) данного поручения.
Автоматически для каждого должностного лица ведется сум­марный подсчет числа дней просрочек исполнения всех данныхему поручений (возможно, умноженных на коэффициент важно­сти поручений). Д ля эффективности работы системы весьма важ ­но, чтобы взыскания за неисполнение поручений выносились неслучайно, а в соответствии с общим числом дней просрочки. Т а­кая процедура способствует быстрому подъему исполнительской
дисциплины, особенно в том случае, когда поручения распреде­ляются между должностными лицами достаточно равномерно.
Необходимая информация о степени загруженности сотрудников
должна предоставляться системой лицам, дающим поручения,и учитываться ими при определении исполнителя каждого оче­редного поручения.
10.9.2. Автоматизация контроля качества продукции. Приавтоматизации контроля качества продукции во всех случаях,когда это возможно, желательно использовать автоматизацию из­мерений и испытаний, о которых говорилось в предыдущей гла­ве. При отсутствии такой возможности (например, при оценке
внешнего вида изделия) оценка, даваемая контролером, должна
вводиться в ЭВМ наиболее простым и быстрым способом (напри­мер, с помощью наж им а на одну из кнопок на специализирован­ном пульте). В случае необходимости одновременного изготов­ления документа может применяться следующий прием: бланк
документа закладывается в металлический переплет с нескольки­ми окошками на его лицевой стороне. Контролер ставит штампна документ специальным штемпелем через одно из этих окошек.
Местоположение штампа на документе (соответствующее вы­бранному окошку) означает ту или иную оценку качества, сде­ланную контролером. Одновременно (этим же ударом штемпеля)через датчики, помещенные на задней крышке переплета, посы­лается соответствующий сигнал в ЭВМ. Возможны и другие си­стемы совмещения операций подготовки документа и ввода ин­формации в ЭВМ.

Хотя во многих современных производствах (особенно в ра­диоэлектронике) организуется полная система контроля, далеконе утратили своего значения методы выборочного или так назы ­ваемого статистического контроля (в первую очередь в массовом
производстве относительно простых изделий и особенно отдель­ных деталей). Рассмотрим кратко математические методы, поло­женные в его основу.
Выборочная дисперсия представляет собой приближение дис­персии (т. е. меры разброса значений) генеральной совокупности
(хотя ее математическое ожидание несколько меньш е). Она поз­воляет также оценить дисперсию а ' и среднее квадратичное от­клонение а- выборочной средней от генеральной средней. Д лятак называемой бесповторной выборки при числе элементов гене­ральной совокупности, равном N. используется формула
( 10.2)При малой величине отношения п /N применяется приближенная
____формула
а- « о / У п — 1.
(10.3)
Бесповторная выборка производится следующим образом. Изгенеральной совокупности случайным образом выбирается первое
изделие, затем из оставшегося множества, также случайным об­разом,— второе и т. д. Другой тип выборки (называемой повтор­ной) получается, если после выборки и измерения очередного
изделия его снова возвращают в генеральную совокупность, со­храняя таким образом за ним шанс быть выбранным повторно.
Для повторной выборки
(10.4)
Приведенные формулы позволяют оценить степень достовер­ности определения генеральной средней х . При достаточно боль­ших выборках (на практике для п > 20) вероятность
того, чтовыборочная средняя будет отличаться (в ту или другую сторону)меньше, чем на А (А > 0 ) , определяется по формуле
А/о-х
(10.5)

Выражение, стоящее в правой части формулы, являющееся
функцией от А/о-, принято обозначать Ф (Д /о-), В учебниках потеории вероятностей обычно приводятся таблицы значений функ­ции Ф ( Х ) , так что для подсчета вероятности
можно не вы­числять интеграл, а воспользоваться этими таблицами. Для ма­лых выборок в курсах по математической статистике приводятся
специальные таблицы, показывающие зависимость /?д от А/ои от числа п элементов выборки.
Например, при п = 10
А = 1,83а-, р д = 0,9;
А = 3,25а-,р А = 0,99;

Д = 4,78а-,,ра =0,999.

Используем эти результаты для следующего примера. Пустьв результате бесповторной случайной выборки 10 изделий из 1000получены значения контролируемого параметра: х { = 1,01; х 2 == 0,98; х 3 = 1,02; х к = 1,00; х 5 = 0,99; #6= 0,97; х 7 = 1,02;#8= 1,01; #9 = 0,98; х {0 = 1,02. Требуется на основании произве­денной выборки установить интервал, в котором с вероятностью
0,99 заключено среднее значение параметра х для 1000 изделий.
Выборочное среднее равно
ю

1V
.
^
Ю 'Ьак ^*г=1выборочная дисперсия равна а 2= 10“ *(0,01 2+ 0,02 2+ 0,02 2+ О2 4*+ 0,01 2+ 0,032 + 0,02 2+ 0,01 2— 0,02 2+ 0,022) = 10"5(1 + 4 + 4 +4- 1 + 9 + 4 + 1 + 4 + 4 ) = 3 ,2 • 10“\ а = 0,018, Среднее квадра­тичное отклонение выборочной средней равно
о

0,013

л ппа

а- »
/■
= —т=- = 0,006** Уп- 1
У9
На основании приведенного выше табличного значения заклю­чаем, что с вероятностью 0,99 генеральная средняя отличаетсяот единицы (т. е. от выборочной средней} не более чем на
3,25 •а - = 3,25 - 0,006 & 0,02.
Большой интерес с точки зрения контроля качества пред­ставляет оценка ошибки (отклонения от заданного значения) па­раметра х для генеральной совокупности по результатам выбор­ки. Пусть заданное значение параметра х равно 1. Тогда дляприведенной выше выборки ошибки (взятые по абсолютной ве­личине) равны 61 = 0,01; 62= 0,02; 63= 0,02; 64= 0; 65= 0,01;
66= 0,03 ; 67= 0,02; б 8= 0,01; 69= 0,02 ; 8ю = 0,02. Выборочное
среднее ошибки:
ю

-

IV

Выборочная дисперсия ошибки: а | = 10 1 (0,006 2 + 0,0042 ++ 0,0042 + 0,0162 + 0,0062 + 0,0142 + 0,042 + 0,0062 + 0,0042 ++ 0,0042) = 10“ 7(36 + 16 + 16 + 256 + 36 + 196 + 16 + 36 ++ 16 + 1 6 )= 64 • 10“6. Выборочное среднее квадратичное откло­нение Об = 0,008. Среднее квадратичное отклонение выборочной
средней:Об — аб/У9 ~ 0,003.
При Д = 4,78, Об = 0,013 на основании приведенного выше таб­личного значения имеем рд = 0,999. Таким образом, с вероят­ностью не менее чем 0,999 можно утверждать, что средняя ошиб­ка в генеральной совокупности не превысит б + Д = 0,016 ++ 0,013 = 0,029.
Третий пример связан с оценкой доли брака р в генеральной
совокупности. Предположим, что по техническим условиям изде­лие бракуется, если отклонение параметра х от 1 больше илиравно 0,03. В нашем примере при таком условии бракуется лишьодно (шестое) изделие сделанной выборки. Доля г брака в вы­борке составит 0,1 (10% ). Величину г можно трактовать каксреднее величин а*, равных 0, если 2-е изделие годно, и 1, если2-е изделие бракуется. Дисперсия равна а2 = 10"1(г2 + г2 + г2 -Ь+ г2 4- г2 4- (1 — г )2 4- г2 + г2 + г2 + г2) . Легко понять, что при лю­бой выборке эта дисперсия выражается формулой а2 = ( 0 — г) 2Х
Х (1 — г) + (1 — г )2г = г(1 — г). Итак, при подсчете доли бракав выборке
а2 = г(1 — г).
(10.6)
В нашем случае а2 = 0,1квадратичное отклонение

• 0,9 = 0,09, откуда а = 0,3. СреднееПри Д = 3,25, оР ~ 0,3 имеем р* = 0,99. Таким образом, с вероят­ностью, не меньшей, чем 0,99, можно утверждать, что доля бракав генеральной совокупности не превысит г 4- Д = 0,1 4- 0,3 = 0,4.
Д ля более точной оценки доли брака в генеральной совокупности
нужно увеличить размер выборки.
В качестве четвертого примера определим размер выборки,при которой с заданной вероятностью 0,99 можно утверждать,что доля брака в выборке отличается от доли брака в генераль­ной совокупности не более чем на 0,01 (т. е. на 1%) .
Трудность задачи состоит в том, что заранее неизвестна вели­чина дисперсии выборки о2. Д ля решения задачи нужно оценить
величину а2 сверху. Если нет никакой другой оценки, то из фор­мулы (10.2)’ легко видеть, что максимум равен а2 = 0,25 приг = 0,5. В ряде случаев на практике эту оценку можно улуч­шить. Предположим, например, что доля брака г не может пре­высить 0,1. Тогда из формулы (10.2) имеем о2 < 0,1 • 0,9 = 0 ,0 9
и о ^ 0,3.
При бесповторной выборке п элементов из N среднее квадра­тичное отклонение ор доли брака в выборке от доли брака в ге­неральной совокупности найдем по формуле

Поскольку выборка должна быть, очевидно, большой, дляоценки вероятности дд можно воспользоваться формулой (10.1).
По таблице значений Ф (х ) находим, что Д = 2,6 • оР для р д == 0,99. Но нам задано, что А ^ 0,01. Отсюда получаем
илиТ ак как о < 0,3, то наше неравенство будет выполнено, если> 6,76• 10* •0,09 « 6 • 103.

Тогда п (1 + 6000/Л?) > 6000 +4- 1. Единицей в правой части можно пренебречь, так что окон­чательно имеем
6000
1 + 6000/^ •П ри N = 1000 имеем п > 6000/7 « 860, т. е. выборка должна
практически охватить всю генеральную совокупность. Однако,как показывает полученная формула, при очень больших N. на­пример, N = 600 000, для достижения требуемой точности оцен­ки оказывается достаточной выборка 6000 элементов, что может
составлять сколь угодно малую долю генеральной совокупности.
При проведении выборок для статистического контроля чрез­вычайно важным является соблюдение условия случайности вы­борки. Дело в том, что любая регулярность выборки, например,выборка каждого десятого изделия, сходящего со станка, может
дать совпадение с тем или иным производственным ритмом и ис­казить результат. Т ак получится, например, если каждое десятое
изделие выпускается в начале смены или после смены режущего
инструмента и т. п.
Д ля достижения полной случайности выборки могут употреб­ляться специальные датчики случайных чисел. В простейшем
случае такой датчик генерирует случайную последовательность
нулей и единиц, в которой единицы встречаются с заданной ча­стотой (регулируемой в случае надобности). Смена показаний
датчика управляется потоком изделий. Если в момент прохода
какого-то изделия мимо датчика его показание равнялось еди-нице, изделие идет на контроль, при нулевом показании датчика
изделие в выборку не попадает и не контролируется.
Другой метод — использование специальных таблиц случай­ных чисел. Если, например, имеется таблица 4-значных случай­ных чисел и необходимо устроить случайную выборку, скажем
60 изделий из 10 000, то достаточно отобрать изделия, порядко­вые номера которых будут совпадать с первыми 60 числами
таблицы.
В ряде случаев генеральная совокупность естественно делит­ся на части: например, из общего числа N изделий М1 изделий
выпущено на первом станке, N 2 — на втором и т. д. Тогда средгч-' 2ние Хг и дисперсии а* берутся по выборкам из каждой части,а общая средняя х и дисперсия средней а2 находятся по фор­
мулам
'Ч /

~
^ + ^

+ • • • + *кЯк+ .. . + * к^~2Э Д + ЭД+...+0«ЛГ»(* 1 + Л'2 + .
‘10.10. Другие информационные технологии
Рассмотренными в настоящей главе случаями далеко не ис­черпываются все виды информационных технологий. Достаточно
напомнить о таких массовых видах информационных технологий,как библиотечное дело, системы страхования и др. Особое местов списке информационных технологий занимает технология орга­низационного управления. Важность этой технологии заставляетнас посвятить проблемам ее автоматизации и соответствующего
математического аппарата особую главу.

АВТОМ АТИЗАЦИЯ
ОРГАНИЗАЦИОННОГО У П РА В Л Е Н И Я
11.1. Общие сведения об организационном управлениии процессе его совершенствованияК ак уже отмечалось выше, организационное управление отли­чается от управления технологическими процессами прежде всего
тем, что его объектом являю тся не столько машины (оборудова­ние), сколько люди, коллективы людей. Разумеется, граница,определяющ ая это отличие, достаточно условпа. Например, управ­ление цехом, оборудованным обычными (не автоматическими)станками, осуществляется через задания работающим на них лю­
дям — стапочникам. В силу нашего определения управление долж­но в этом случае рассматриваться как организационное. Заменимв цехе обычные станки на станки с ЧП У . При этом процедуры
оперативного планирования и диспетчерского управления могут
остаться в основном практически неизменными. Однако сравни­тельно небольшое изменение, заключающееся в том, что передача
управляющей информации будет теперь производиться прямо настанки, минуя человека, заставляет, согласно принятому опреде­лению, отнести соответствующую автоматизированную систему
управления к классу технологических систем.
Заметим, что в силу того ж е определения современные систе­мы управления движением уличного или воздушного транспортамы такж е относим к классу организационных систем. Мы специ­ально рассмотрим такие системы несколько ниже. Они занимают
промежуточное положение между технологическими и чисто орга­низационными системами. В чистом виде организационные систе­мы, как правило, включают в себя планирование на достаточно
длительные сроки. В наиболее развитом виде на высоких уровнях(в масштабе отрасли или всего народного хозяйства в целом)возникают разные виды планирования: долгосрочное, среднесроч­ное и краткосрочное (текущ ее) планирование. В случае особен­но больших сроков (15—20 лет и более) планирование обычпо
заменяется прогнозированием,При наличии планов задача управления состоит прежде всегов о р г а н и з а ц и и их выполнения (а в случае необходимостии корректировки). Обратная связь при таком управлении осуще­ствляется обычно через систему учета, проблемы автоматизации
которой уже были разобраны в предыдущей главе. Одной из важ ­нейших задач управления является также своевременное пролон­гирование планов. При автоматизации организационного управ­ления обычно стремятся перейти к так называемому непрерыв­ному планированию. В случае пятилетки переход на непрерывное
планирование означает обычно, что по истечении каждого оче­редного года пяти летний план подвигается на один год вперед*).
Годовой план продвигают вперед не реже чем через каждый
квартал или даже месяц. Аналогичное положение имеет местои для более краткосрочных планов. Непрерывность планирования
ликвидирует неизбежные потери, связанные со стыковкой двухнепересекающихся плановых периодов. Обеспечивается гораздо
более гибкая адаптация планов к меняющимся условиям, благо­даря чему достигается существенное ускорение темпов научнотехнического прогресса. Имеются и некоторые иные, более мел­кие преимущества (равномерность загрузки плановых органов,большее суммарное время для оптимизации планов и др.).
В отличие от технологического управления, организационное
управление не может быть полностью а в т о м а т и ч е с к и м ,а лишь автоматизированным. Это означает, что люди (управлен­ческий аппарат и в первую очередь руководство) являются н е ­о т ъ е м л е м о й составной частью системы управления. Сегодня
даже в условиях полной комплексной автоматизации организаци­онного управления за людьми остаются по крайней мере триважные функции: п о с т а н о в к а задач управления (в частно­сти, выбор критериев оптимизации), окончательный в ы б о руправленческих решений и придание им юридической силы(утверждение решений) и, наконец, т в о р ч е с к а я часть трудапо выработке планов и решений, выполняемая обычно в диалогес ЭВМ.
Следует заметить, что граница, отделяющая творческую часть
труда от нетворческой, диалектически изменчива. По мере про­гресса науки и электронной вычислительной техники все боль­ш ая часть труда, считающегося сегодня творческим и являюще­гося поэтому исключительной прерогативой человека, будет фор­мализоваться и передаваться машинам. Что же касается первьщ
двух функций, то в организационных системах при л ю б о му р о в н е развития автоматизации они, по всей видимости, оста*) Утверждение пятилетних планов при этом может производиться, каки теперь, один раз в пять лет. Но как расчетная едипица пятилетка дела­ется непрерывной.

яутся в своей наиболее существенной части за человеком. И делоздесь не в принципиальной технической невозможности перело­ж ить их на плечи машин.
Речь идет скорее о соображениях социально-этического харак­тера, поскольку речь идет об управлении л ю д ь м и : ведь поста­новка задач управления в чисто организационной (социальноэкономической) сфере в социалистическом обществе связана
прежде всего с удовлетворением (личных или общественных)ж еланий людей. Еще менее приемлемой для человека может ока­заться перспектива, когда машина предписывает ему то или иноеповедение (т. е. принимает окончательные управленческие ре­ш ения).
Поскольку люди представляют собой органическую составную
часть всякой системы организационного управления, их функциив этой системе должны быть спроектированы с той же степеньют щ а т е л ь н о с т и и п о д р о б н о с т и , как и собственно ма­ш инная часть системы (техника, информация и программное
обеспечение). Иными словами, организационные структуры управ­лен и я становятся сегодня предметом тщательного инженерного
проектирования. В отношении структуры и функций персоналав ответственных системах диспетчерского управления это в зна­чительной мере имеется уж е сегодня. Однако в чисто организа­ционных системах, где просчеты в проектировании организацион­ных структур и функций выявляются не столь быстро и, глав­ное, не столь наглядно, как в случае диспетчерских систем,положение пока значительно хуже. А ведь такие просчеты обхо­дятся обществу в конечном счете гораздо дороже (особенно, вкрупномасштабных системах).
Необходимо подчеркнуть, что, говоря о проектировании орга­низационных структур, мы имеем в виду весь комплекс вопросов,связанных с функционированием людей (должностных лиц) в со­ставе систем организационного управления. Этот комплекс во­просов подразделяется на два больших класса. Во-первых, эточисто о р г а н и з а ц и о н н ы е вопросы: структура органов управ­ления, функциональные обязанности органов управления, их под­разделений и отдельных должностных лиц, процедуры подготовкии принятия решения, документооборот, контроль исполнения иоценка деятельности всех звеньев системы. Во-вторых, в систе­мах управления народным хозяйством это вопросы х о з я й с т ­в е н н о г о механизма: экономические показатели, ценообра­зование, системы материального и морального стимулирова­ния и т. д.
К этим двум комплексам вопросов, на которых зиждется орга­низационное управление, добавляется еще комплекс вопросов,связанных с т е х н и ч е с к о й б а з о й систем управления. Сюдавходят оргтехника, техника связи, ЭВМ с соответствующей,периферией,необходимое
программное
иинформационное
обеспечение и др.
Необходимо особо подчеркнуть взаимосвязанность всех трехперечисленных комплексов вопросов. К ак правило, в современ­ных условиях усовершенствование одного из них не дает ж елае­мых результатов без одновременного согласованного усовершен­ствования в двух других комплексах. Например, введение опи­санного в предыдущей главе регистрирующего прибора для учета
работы грузового автотранспорта бесполезно без перестройки
организационной структуры учета и соответствующей системы
стимулирования. Второй пример: ведение строительства в усло­виях точного согласования сроков строительно-монтажных работс графиками подачи на стройку необходимых материалов и эле­ментов конструкций в масштабе одного-двух небольших объектовне составляет большого труда и может быть осуществлено засчет мер чисто организационного характера. Одной из таких мерявляется концентрация управленческих и материальных ресурсовна избранных стройках (как правило, в ущерб всем остальным).
Попытка же распространить этот метод на в с е о б ъ е к т ы приограниченных ресурсах заведомо обречена па неудачу, если неизменить коренным образом техническую базу системы управле­ния и учета и не внести соответствующие коррективы в хозяй­ственный механизм.
Очень важным вопросом является организация процесса со­вершенствования систем организационного управления. Прежде
всего необходимо подчеркнуть, что этот процесс непрерывен втом смысле, что пока существует организационное управление,будет существовать и постоянная потребность в его усовершен­ствовании. Это происходит в силу непрерывного изменения усло­вий, в которых функционируют организационные системы управ­ления. Поэтому даже системы, которые идеально отвечали всемусловиям в момент их становления, рано или поздно уменьшают
свою эффективность, а иногда просто становятся тормозом даль­нейшего развития. Вместе с тем непрерывность процесса совер­шенствования систем организационного управления никоим обра­зом нельзя понимать в том смысле, что они должны находитьсяв процессе непрерывной реорганизации. Реорганизация (особен­но крупная) должна производиться относительно редко, причемона должна (и это самое главное) т щ а т е л ь н о и з а б л а г о ­в р е м е н н о готовиться.
Процесс совершенствования систем организационного управ­ления в общих чертах должен выглядеть следующим образом. Вопервых, организуется постоянное методическое н а б л ю д е н и еза действием с у щ е с т в у ю щ е й системы, тщательно анализи­руются причины возникновения нежелательных задержек илиошибок в ее работе. Для такого наблюдения максимально исполь­зуются средства автоматизированного учета и контроля, возмож­но, специально расширенные и дополненные для реш ения этойзадачи. В случае возможности устранения причин выявленных
задерж ек и ошибок мелкими улучш ениями действующей систе^мы такие улучш ения делаются незамедлительно. Однако в боль­шинстве случаев подобная практика постепенных мелких улуч­шений действующей системы управления имеет свои пределы.
Рано или поздно наступает такой момент, когда для приведения
системы управления в соответствие с изменившимися условиями
требуется достаточно р а д и к а л ь н а я ее перестройка. В рядеслучаев это может вылиться в необходимость перехода к п р и н ­ц и п и а л ь н о новой технологии организационного управления.
Именно в такой технологической революции состоит суть перехо­да на автоматизированное управление (на основе ЭВМ ). Непони­мание этого момента при разработке и внедрении автоматизиро­ванны х систем организационного уп равления (АСОУ) является
главной причиной малой эффективности таких систем.
Необходимым условием эффективности любой радикальной
организационной перестройки (не обязательно связанной с внед­рением ЭВМ) является сегодня наличие разработанного во всехдеталях проекта новой технологии организационного управленияи подробного плана мероприятий по переходу от действующей
технологии к новой. Этот план обязательно должен включать всебя заблаговременное обучение всего административно-управлен­ческого персонала работе в новой системе до ее фактического
введения. В процессе такого обучения, помимо изучения новых
должностных инструкций (расписанных во всех деталях), целе­сообразно включать специальные тренировочные занятия и про­верку усвоения особенностей работы в новых условиях. Разуме­ется, при этом каждый должен знать свое место в будущей си­стеме и, проводя подготовку для работы в ней, продолжать доб­росовестное исполнение своих обязанностей в старой системе.
Лучш им стимулом для этого послужило бы стремление сохранить
стаж добросовестной работы в условиях действия описанной впредыдущей главе системы стимулирования за добросовестность.
Заметим, что обязательное требование отсутствия безработицы впашем обществе предусматривает определение в проекте реорга­низации места будущей работы для каждого должностного лицадействующей системы (исключая возможный уход на пенсию).
Не обязательно, конечно, чтобы это место было в рамках именно
данной системы.
При описанном способе перехода на новые управленческие
технологии (когда, образно вы раж аясь, «каждый солдат знает
свой маневр>>) не возникает никаких издержек переходного пе­риода, в чем состоит основная беда традиционных реорганиза­ций. Хорошо известно, что реорганизация, выполняемая по тра­диционной схеме: сначала реорганизация, потом подбор и расстаповка кадров и лишь затем их «притирка» к своим местам,приводит к тому, что реорганизованный (или вновь созданный)орган управления в течение длительного времени (до года и бо­лее) работает не с полной отдачей.
Совершенно ясно, что выполнять весь описанный объем работпо совершенствованию систем организационного управления самиэти системы не в состоянии. Необходимо наряду с действующей
системой организационного управления иметь также непрерывно
действующую систему совершенствования этой системы (как этоуже делается во многих зарубежных фирмах). По существу, втакой постановке вопроса нет ничего принципиально нового. Ведьименно так организована сегодня система совершенствования тех­нологии м а т е р и а л ь н о г о производства при ее сколько-нибудь
радикальных изменениях. Если, например, речь идет о принци­пиально новой технологии добычи угля, то она разрабатывается
отнюдь не теми, кто сегодня сам добывает уголь, а специальны­ми проектно-технологическими институтами. Вообще, в связи сразвитием специализации и разделения труда давно сложилосьи вошло в практику, что заводы проектируют, строят и рекон­струируют не те, кто на них потом работает, самолеты — не те,кто на них летает, дома — не те, кто в них живет, и т. д. Иначе
было лишь тогда, когда объекты, о которых идет речь, былиочень просты, а технология их изготовления — примитивна. Со­временные системы организационного управления — это, как пра­вило, весьма сложные объекты, научное проектирование кото­рых — не менее сложное дело, чем проектирование самолетов и,уж во всяком случае, жилых домов. Однако, к сожалению, про­должает бытовать мнение, что системы организационного управ­ления могут спроектировать и запустить в работу между делом
сами управленцы (с помощью комиссий, действующих на обще­ственных началах). Это обстоятельство стало сегодня серьезным
тормозом на пути совершенствования системы управления народ­ным хозяйством на действительно научной основе.
В настоящее время существуют и действуют различные систе­мы совершенствования организационного управления. Во всехслучаях эффективность таких систем обуславливается так назы­ваемым принципом первого ли ца . Суть его состоит в том, что всяработа по совершенствованию управления в том или ином звене
должна проводиться по заданиям и под общим руководствомп е р в о г о л и ц а , т. е. главного руководителя соответствующего
звена.
Однако, далее, наилучшие результаты получаются в том слу­чае, когда непосредственное повседневное руководство этой рабо­той осуществляется специальным заместителем первого лица,освобожденным от всех других обязанностей. При таком руково­дителе создается необходимый административный аппарат (обыч­но немногочисленный, но весьма квалифицированный). Кроме
того, в его непосредственном распоряжении должны находиться
научные и проектно-конструкторские подразделения, специализи­рованные на различных аспектах совершенствования уп равлен и я.,В его же руках должна находиться и система переподготовки
административно-управленческих кадров (в рамках соответству­ющего звена, включая руководящие кадры этого звена). Этомуже руководителю обычно подчиняется и вся техническая базасистем организационного управления звена (ВЦ с соответству­ющей периферией и ВЦ, замыкающиеся в данном звене).
В иерархических системах управления, состоящих из звеньев
различных уровней, описанная организация совершенствования
управления повторяет эту иерархию. При этом наряду с непо­средственным руководителем — первым в данном звене лицом —ответственность за совершенствование управления имеет и дру­гой прямой (функциональный) руководитель — ответственный засовершенствование управления в следующем по уровню иерархии
вышестоящем звепе.
В системе совершенствования организационного управления,как и в любых других системах, основанных на творческих нача­лах, помимо обычной системы стимулирования за добросовестную
работу должна действовать и другая, не менее мощная система
стимулирования — за величину творческого вклада, приносящего
реальную пользу. Это могут быть специальные премии или над­бавки к зарплате, начисляемые в зависимости от эффективности
разработанных систем, продвижения по служебной лестнице и т. п.
11.2. Основные принципы проектирования
организационных систем управленияКак правило, проектирование любой организационной систе­мы управления начинается с исследования объекта, которым этасистема должна управлять (объекта управления). Формируются
цели управления и система критериев, позволяющих судить, на­сколько спроектированная система удовлетворяет этим целям.
Цели и критерии согласуются с руководителем (первым лицом)звена, для которого создается система. Далее строится и описы­вается (в укрупненном неформализованном виде) база данных обобъекте управления и работающий на этой базе алгоритм управ­ления. Укрупненное описание алгоритма достигается за счет ис­пользования крупных блоков, например: «решается задача ли­нейного программирования с целевой функцией и ограничениями
заданного вида». В случае неформализованных блоков, реализуе­мых людьми, на этой стадии допускаются описания вида: «по
1 таким-то документам (содержащим предложения или просьбы)*2б в. М. Глушксш

принимается положнтельпое или отрицательное решение». Допус­каются ссылки на уж е разработанные и хорошо известные
управленческие процедуры, например: «оперативно-календар­ное планирование осуществляется по Новочеркасскому методу»и т. д.
Дальнейшие этапы проектирования заключаются прежде все­го в последовательном разукрупнении полученных описаний наотдельные (хотя обычно и взаимосвязанные) блоки. С каждым
блоком (как и со всей системой в целом) связываются и описы­ваются потоки входной (выходной) информации. На определен­ных стадиях разукрупнения уточняется, какие блоки алгоритма
управления будут выполняться людьми, а какие — ЭВМ. Соответ­ствующим образом последовательно уточняется и структура базыданных. На каждом очередном этапе процесса разукрупнения
блоков в процесс проектирования вовлекаются, вообще говоря,все новые и новые исполнители. Конечная цель этого процесса —довести описание блоков, исполняемых ЭВМ, до машинных про­грамм, а блоков, исполняемых людьми, до должностных инструк­ций, написанных столь подробно, чтобы люди с соответствующим
(указанным в проекте) образовательным цензом, но, быть может,не имеющие специального опыта работы, могли самостоятельно
разобраться в инструкциях, однозначно интерпретировать их ифактически исполнять описываемые в них управленческие дей­ствия (сначала, возможно, в замедленном ритме).
Еще ранее (до достижения самой подробной стадии) осуще­ствляется «привязка» отдельных блоков алгоритма к конкретным
типам ЭВМ и к конкретным категориям управленческих работ­ников (прежде всего по образованию, а возможно, и по опыту
работы). Производятся оценки времени исполнения отдельных
блоков и частоты их повторяемости. При этом в одних случаях
(регулярных) могут возникать детерминированные оценки, а вдругих (стохастических) — вероятностные. Последние даются
обычно в виде законов распределения вероятностей величин соот­ветствующих оценок. Ввиду трудности простых расчетов, оценки,о которых идет речь, делаются обычно в результате моделирова­ния на ЭВМ в части, касающейся машинной обработки информа­ции. Для блоков, исполняемых людьми, подобное моделирование
может (и в большинстве случаев должно) дополняться прямыми
натурными экспериментами (например, для оценки времепи, не­обходимого для ознакомления с теми или иными документами,подготовки проекта решения и т. п.).
После получения оценок становится возможным оценить со­став технических комплексов, а также общую численность и ква­лификацию управленческого аппарата, необходимые для реали­зации заданного алгоритма управления. Если эти оценки не удов­летворяют заказчика (т. е. первое лицо) или не укладываютсяв заданные априори ограничения, то алгоритм управления может
быть пересмотрен с целью его упрощения. Поскольку упрощение
алгоритма, как правило, уменьшает эффективность управления,при подобных пересмотрах целесообразно применять методы си­стемной оптимизации, описанные в гл. V III. При этом в случае
значительного ухудшения качества управления границы априор­ных ограничений могут соответствующим образом передвигаться(с разреш ения первого лица), находя в конце концов необходи­мый компромисс между сложностью управляющей системы иобеспечиваемым ею качеством управления.
После нахождения компромисса наряду с процессом дальней­шего разукрупнения блоков и детализации их описания произво­дится проектирование организационной структуры, обеспечива­ющей своевременное и качественное исполнение всех спроектиро­ванных управленческих процедур. При этом разукрупнение бло­ков должно доводиться до процедур, исполняемых отдельными
должностными лицами, а для вопросов, являющ ихся предметом
коллегиального обсуждения,— процедур проведения соответству­ющих заседаний, рабочих совещаний и т. п. Разумеется, алго­ритмом управления должны охватываться не только собственно
управленческие процедуры (подготовки и принятия реш ений),но и все учетно-контрольные, а такж е различного рода вспомо­гательные процедуры (связанные с делопроизводством, ведением
архивов и т. п.). Таким образом, фактически речь идет о проек­тировании не одного алгоритма, а целой системы алгоритмов.
Следующим этапом проектирования, который такж е начинает­ся до полного окончания работы по разукрупнению блоков и де­тализации описаний, является составление перечня администра­тивно-управленческого персонала, необходимого для выполнения
всех спроектированных управленческих процедур. На этом этапедля всех регулярных процедур составляются подробные расписа­ния их выполнения (включая необходимый обмен данными). Приэтом должны обеспечиваться выявление и исключение в расписа­ниях возможных н а к л а д о к , при которых одно и то же долж­ностное лицо в одни и тот же момент времени оказывается заня­тым в нескольких несовместимых процедурах. Точные математи­ческие методы решения подобной задачи содержат большой
элемент перебора и являются поэтому чересчур громоздкими итруднореализуемыми.
На практике предпочитают методику последовательного чело­веко-машинного улучш ения первоначально составленного несо­вершенного расписания (с накладкам и). При этом накладки вКаждом рассматриваемом варианте выявляются автоматически: порасписаниям выполнения отдельных процедур и таблице распре­деления процедур между отдельными должностными лицами ЭВМочевидным способом составляет расписания занятости в регуляр26 *пых процедурах для каждого должностного лица. В расписаниях
занятости все накладки сразу выявляются и сообщаются проек­танту. По его указаниям (с помощью ЭВМ) вводятся измененияв расписания выполнения регулярных процедур, снова выявля­ются накладки и т. д., до полного устранения накладок.
Подобный диалоговый режим проектирования позволяет
учесть многие дополнительные ограничения и пожелания, на­правленные на обеспечение большей комфортности для работы всистеме (в частности, правильное чередование работы разных ви­дов, обеспечение достаточно больших «окон» в расписании длявыполнения нерегулярных процедур и т. д.). Заметим, что отра­ботка расписаний должна предусматривать подменно-аварийные
рёжимы, связанные с исполнением управленческих процедур вусловиях отсутствия тех или иных сотрудников (отпуска, болез­ни и т. п.).
После получения достаточно удачного н е п р о т и в о р е ч и ­в о г о (без накладок) расписания выполнения регулярных управ­ленческих процедур таблица распределения процедур между со­трудниками распространяется (также в диалоговом режиме) нанерегулярные (случайные) процедуры. При этом учитывается
во-первых, характер закрепленных за сотрудниками регулярных
процедур (а значит, и их должностное положение), во-вторых,объем их рабочего времени, не занятого регулярными процедура­ми. Используя методы теории массового обслуживания, излагае­мые ниже (в § 11.3), можно рассчитать эти дополнительные на­грузки, чтобы не создавать информационных заторов (очередей)при исполнении нерегулярных процедур как в нормальном, таки в подменно-аварийных режимах. Не исключено, что для реше­ния этой задачи придется ввести дополнительное увеличение
штата, а в случае необходимости и перераспределение регуляр­ных процедур. Окончательная проверка правильности проведен­ного распределения обязанностей производится на математиче­ской модели проектируемой системы, в результате работы кото­рой должны быть получены графики — гистограммы загрузки
каждого сотрудника (и каждой единицы оборудования), а также
экспериментальные законы распределения длин очередей на об­работку информации и возможных задержек в выработке управ­ленческих решений, ответов на запросы и другой выходной ин­формации (как в основном, так и в подменно-аварийных ре­ж имах).
Заметим, что если проектируемая система управления дейст­вительно нужна для управления объектом (не является лишним
звеном), то любые задержки в выдаче информации чреваты, какправило, большими издержками и потому их стремятся по воз­можности избежать. Однако в этом случае, как показывает тео­рия (см. § 11.3), распределение нерегулярных процедур должно

быть сделало так, чтобы у исполняющих их сотрудников окна врасписаниях занимались с необходимыми резервами свободного
времени. Эти резервы могут быть использованы для повышения
квалификации сотрудников и, в частности, для изучения новых
должностных инструкций (прежде всего расписаний и описаний
процедур) при подготовке очередной крупной реорганизации(в соответствии с тем порядком, который был описан в предыду­щем параграфе).
При распределении управленческих процедур между сотруд­никами попутно реш ается вопрос о распределении сотрудниковно соответствующим структурным подразделениям. Процесс тако­го распределения реализуется в человеко-машинном режиме. Ж е­лательно, чтобы структурные подразделения охватывали тех со­трудников, у которых информационные связи, замыкающ иесямежду ними (в соответствии с закрепленными за ними процеду­рам и), превалируют над внешними информационными связями.
В случае, когда подобная возможность отсутствует, при образо­вании структурных подразделений руководствуются и другими
принципами (как правило, плохо формализуемыми). На первое
место здесь выступает содержательная родственность процедур,которые предстоит выполнять формируемому подразделению
(бухгалтерский учет, м ате­риально-техническое снаб­жение и т. п .).
Наглядным инструмен­том для представления ал­1горитмов (и систем алго­2ритмов) в виде совокуп­ности взаимодействующих
друг с другом блоков яв­ляются так называемые
8
блок-схемы. Пример блоксхемы изображен на рис.
Рис. 11.1
11.1. На этой схеме име­ются7квадратиков —лроцедур (алгоритмических блоков) и 16 стрелок — информаци­онных потоков. Чтобы использовать рис. 11.1 в качестве описа­ния алгоритма управления, необходимо описать процедуры (ал­горитмы), выполняемые всеми 7 блоками, а также дать описание
всех 16 информационных потоков (состав, форма представления,периодичность, и т. п.). Заметим, кроме того, что в состав описа­ний процедур будут входить, вообще говоря, и описания исполь­зуемых ими локальных баз данных (принадлежащих отдельным
процедурам).
В случае, если все процедуры исполняются людьми, информа­ционные потоки представляются в виде обычных бумажных до­кументов, так что изображенная на рис. 11.1 схема может рас­сматриваться как схема документооборота в данной системе
организационного управления. Чтобы превратить ее в структур­ную схему организации, необходимо закрепить должностных лицза отдельными процедурами, т. е. построить таблицу распределе­ния процедур. В простейшем случае, когда за каждой процеду­рой закреплено отдельное должностное лицо, рис. 11.1 может
рассматриваться как основа структурной схемы проектируемой
организации (органа управления). Для дальнейшего уточнения
схемы органа в ней выделяют в случае необходимости те илииные структурные подразделения. Исходя из принципа миними­зации внешних связей, наиболее целесообразным представляется
выделение двух подразделений (подсистем): А, Б, В, Г и Д, Е,Ж . С другой стороны, по принципу родственности выполняемых
процедур возможно и другое разбиение на подразделения: А, Д(прием и первичная обработка входящей информации), Б, В, Е(внутренние процедуры подготовки и принятия решений), Г, Ж(оформление и рассылка выходных документов). Часто первоеи третье подразделения, осуществляющие внешние связи орга­низации (прием и рассылку документов) объединяют в одно под­разделение, называемое канцелярией или секретариатом.
Необходимо подчеркнуть, что та или иная структуризация
организации (т. е. выделение в ней тех или иных структурпых
подразделений) хотя и имеет некоторое значение, но отнюдь неявляется решающим фактором для эффективного функциониро­вания организации. Главным и решающим является четкое и доконца детализированное описание алгоритма управления, разбие­ние его на отдельные процедуры, закрепление этих процедур заотдельными людьми и обучение людей правильному выполнению
этих процедур. Что же касается функций контроля за правиль­ностью исполнения спроектированных процедур, то предполага­ется, что эти функции являются неотъемлемой составной частью
самого алгоритма управления и описываются в виде одной илинескольких составляющих его процедур.
При структуризации (разбиении на блоки) алгоритма управ­ления зачастую удается выделять такие комбинации блоков, ко­торые почти не связаны с остальными блоками. Такие комбина­ции принято называть подсистемами. Алгоритмы в рамках от­дельных подсистем можно в принципе проектировать и внедрятьдо известной степени независимо друг от друга. Разумеется, этоне вызовет серьезных ухудшений работы всей системы в целом,при том непременном условии, что подсистемы выделены пра­вильно, т. е. действительно слабо связаны между собой. Такое
положение имеет, например, место в подсистемах текущего пла­нирования и управления производством и подсистемах управле­ния капитальным строительством. В то же время планпрованпе

капитального строительства, как правило, неотделимо от долго­срочного планирования производства. Весьма неудачным (приво­дящим, как правило, к ухудшению эффективности управления)представляется в большинстве случаев все еще широко практи­куемое выделение в особые подсистемы (отличные от системы
планирования и управления производством) функций материаль­но-технического снабжения и сбыта. Нетрудно понять, что лю­бые изменения в планах производства должны тотчас же нахо­дить подкрепление в планах сбыта и материально-технического
снабжения, соответствующим образом скорректированных.
При автоматизации организационного управления на основе
использования ЭВМ следует помнить, что главным залогом ееуспеха является коренное изменение традиционной технологии
организационного управления (основанной на бумажных доку­ментах). Попытка вставить ЭВМ в традиционную технологию
управления эквивалентна попыткам установить реактивный дви­гатель на телегу или построить мощную тепловую электростан­цию, в котлы которой уголь подбрасывался бы лопатами.
Первым (и самым главным) отличием новой технологии орга­низационного управления от традиционной технологии является
форма представления и пути движения информации в системах
управления. Основные потоки информации как внутри отдельных
органов управления, так и между ними в традиционной техноло­гии осуществляются в виде бумажных документов. Если привнедрении ЭВМ эти потоки оставить без изменения, как это по­казано на рис. 11.2, то, как правило, эффект от автоматизации
будет сильно снижен или даже станет отрицательным.
Органуправления
ПИнформация
----------------------

УИнформация
ЭВМ1Рис. 11.2

Дело в том, что возникает необходимость иметь большое ко­личество «переводчиков» документов на язы к машины и обратно.
В качестве таких переводчиков выступает прежде всего персо­нал, обслуживающий на ВЦ устройства подготовки данных. Рас­ходы на его содержание далеко не всегда в наших условиях
могут быть скомпенсированы уменьшением расходов па управ­ленческий персонал, высвободившийся в результате применения
ЭВМ. То же самое зачастую происходит и со с к о р о с т ь ю ре­шения управленческих задач. Поскольку ручной ввод документав ЭВМ — операция существенно более трудоемкая и длительнаяпо сравнению с простым чтением документа человеком, потери
времени на вводе далеко не всегда могут быть скомпенсированы
экономией, получаемой в результате гораздо более быстрого ре­шения задачи п о с л е ее ввода в ЭВМ.
Поэтому главной отличительной особенностью новой техноло­гии организационного управления, называемой автоматизацией
документооборота, является замыкание всех или по крайней мереподавляющего большинства информационных потоков непосред­ственно через ЭВМ, как это показано на рис. 11.3. Обмен инфор­мацией между отдельными органами управления, а также между
ними и объектами управления производится при этом по кана­лам связи, на машинных носителях или через автоматизирован­ные системы сбора и распределения информации. Многочислен­ные конкретные примеры реализации подобного безбумажного
информационного обмена были рассмотрены в двух предыдущих
главах. Обычные бумажные документы (для текущей работы,справки или публикации) в любой момент, по первому требова­нию лиц, имеющих на то право, могут быть быстро изготовленына выходных устройствах ЭВМ из огромных информационных
запасов, накапливаемых в памяти (в основном внешней).
Информация

ОрганИнформация

упрабяения
V

Л

ЭВМ
Рис. 11.3

Автоматизация документооборота не только ликвидирует опи­санные выше источники потерь времени и денег. Гораздо более
важно другое: она дает возможность резко увеличить информа­ционные потоки в системах организационного управления, нетолько не захлестывая людей нескончаемыми потоками бумаг,но даже резко уменьшая эти потоки.
Тем самым создается возможность решать п р и н ц и п и а л ь ­н о н о в ы е управленческие задачи, недоступные не только дляобычных (не автоматизированных) систем управления, но и дляЭВМ без автоматизированного документооборота. В качестве при­мера такой задачи можно указать рассмотренную в предыдущей
главе систему автоматизированного оперативного учета в рознич­ной торговле. П ринцип новых задач в отдельных случаях может
быть реализован и может принести немалый эффект и без авто­матизации документооборота. Это имеет место, например, приме-нительио к некоторым задачам оптимизации долгосрочных планов.
Однако, как правило, принцип новых задач и принцип автома­тизации документооборота должны реализоваться вместе, поддер­ж ивая и дополняя друг друга. Только на этом пути подводится
прочная современная база для неограниченного совершенствовавния организационного управления.
Проблема максимального сокращения потерь времени на вводданых в ЭВМ получает свое законченное решение, если принцип
автоматизации дополняется двумя новыми принципами, а именно
принципом интегральной информационной базы и принципом од­норазового ввода данны х. Первый принцип состоит в том, что вЭВМ создается единая для всех управленческих задач первичная
база данны х с минимумом избыточности (необходимым для под­держ ания сохранности и целостности базы ). На эту базу замы­кается система учета, осущ ествляющая ее постоянную оператив­ную актуализацию и периодически повторяющиеся инвентариза­ции. Благодаря этому принципу система учета развязы вается отсобственно системы управления и может проектироваться ивнедряться самостоятельно *). Принцип о д н о р а з о в о г о в в о д атесно связан с первым принципом: при наличии единой базыданных любая новая информация помещается в эту базу для по­следующего, как правило, многократного использования без необ­ходимости повторного ввода. Разумеется, принцип одноразового
ввода не исключает дублирования ввода, вызванного соображе­ниями надежности.
Заметим также, что, хотя система учета замыкается на еди­ную информационную базу, управленческие задачи в большин­стве случаев могут работать со своими собственными локальными
базами данных. Однако в правильно построенной системе органи­зация и поддержание таких баз обычно не требуют никакого
дополнительного ввода, поскольку они формируются и актуали­зируются как вторичные базы данных непосредственно или по­следовательно иерархически из исходной (первичной) интеграль­ной базы.
В развитых системах АСОУ локальные базы данных могут
выноситься из центральной ЭВМ в сателлитные мини ЭВМ, об­служивающие относительно небольшие группы автоматизирован­ных рабочих мест — управленческих АРМ. Такие базы должны
снабж аться гибкими системами адаптации языков манипулирова­ния данными к индивидуальным требованиям пользователей.
В большинстве случаев в качестве управленческих АРМ целесо­образно употреблять алфавитно-цифровые дисплеи (желательно
*) В этом одна из причин, заставивших нас выделить проблемы авто­матизации учета из проблем автоматизации организационного управленияя рассмотреть их заранее в преды дущ ей главе.

с возможностью изготовления твердых копий выводимой на эк­ран информации).
Еще один важный признак хорошо спроектированного
АСОУ — соблюдение принципа динамической целостности инфор­мационной модели объекта управления. Речь идет, во-первых,о правильном толковании понятия информационной модели объ­екта. Эта модель должна отражать не только нынешнее состояние
объекта, но и его б у д у щ е е , выраженное в планах развития
данного объекта (динамичность модели). Целостность же модели
понимается в том смысле, что внесение тех или иных измененийв какую-либо из частей модели должно автоматически и н и ц и и ­р о в а т ь процедуры (обычно человеко-машинные) соответству­ющих изменений всех остальных, зависящих от нее частей (на­пример, изменения в плане производства должны инициировать
изменения в планах сбыта и материально-технического снаб­жения) .
Кроме того, обмен данными между взаимосвязанными про­цедурами алгоритма управления должен осуществляться внутриЭВМ через соответствующие промежуточные базы данных, кото­рые также должны рассматриваться как часть информационной
модели, по не самого объекта, а системы управления. Тем самым
реализуется принцип системного единства всех процедур управ­ления.
Очень важным является принцип типовости информационногои программного обеспечения АСОУ. Суть его заключается в том,что многие индивидуальные особенности объектов управления,подверженные частым изменениям (число цехов, технологические
связи между отдельными участками и т. п.), не «забиваются»жестко в программы, а выносятся в легко заменяемые таблицы,с которыми работают более универсальные программы. Следует
заметить, правда, что чрезмерная универсализация программ мо­жет вызывать заметное падение их эффективности. Поэтому уро­вень универсализации программ должен быть разумным компро­миссом между уменьшением их эффективности и расширением
возможности применений.
К этому принципу непосредственно примыкает принцип мо­дульности построения технического, программного и информаци­онного обеспечения АСОУ. Он помогает легко адаптировать
АСОУ к меняющимся условиям, производить помодульное разви­тие и совершенствование системы. Заметим, что принцип мо­дульности позволяет решить одно существенное противоречие встановлении АСОУ. С одной стороны, изложенные выше принци­пы (особенно принципы единой информационной базы и автома­тизации документооборота) требуют достаточно длительного вре­мени для своей реализации. С другой стороны, желательно начать
получать отдачу от АСОУ на самых ранних этапах ее развития.

требование толкает многих разработчиков на антисистемный позадачный подход. Суть его состоит в том, что из об­щего алгоритма управления выхватываются и автоматизируются
отдельные процедуры. Д ля этих процедур организуются собст­венные базы данных со своим вводом (обычно неавтоматизиро­ванны м ). Основной порок позадачного метода состоит в том, чтодаж е при условии автоматизации всех процедур единая система
управления не получается и эффект автоматизации оказы ваетсяв результате достаточно низким. Пользуясь принципом модуль­н о с т и , можно внедрять отдельные задачи на фоне одновременной
работы по созданию системы управления, удовлетворяющей пере­численным принципам. При этом по мере развития общесистем­н о й части подобные локальные очаги автоматизации включаютсяв качестве готовых модулей в создаваемую систему.
Вместе с принципами первого лица, необходимости отдельной
системы непрерывного совершенствования управления и едипства организации, социально-экономических механизмов и тех­ники принципы, перечисленные в настоящем параграфе, состав­ляют основу для организации проектирования действительно эф­фективных АСОУ.
П оследн ее

11.3. Теория массового обслуживанияВ теории массового обслуживания рассматриваются задачи
планирования работ по удовлетворению потока требований, воз­никающих случайно и требующих различного, заранее точно не­предсказуемого времени для их удовлетворения. Такого родазадачи встречаются при проектировании нерегулярных процедурв АСОУ (см. § 11.2). Типичными производственными задачами
такого рода являю тся работы по ремонту и наладке оборудова­ния. Другие примеры задач: обслуживание покупателей в мага­зине, медицинское обслуживание, продажа билетов, организация
информационно-справочной службы, телефонная и телеграфная
связь и т. п.
Хотя каждое индивидуальное требование в системе массового
обслуживания возникает случайно, потоки таких требований
удовлетворяют тем или иным закономерностям статистического
характера. Д ля простейшего, пуассоновского, потока вероятностьфо появления требования в любой бесконечно малый промежуток
времени й% пропорциональна (с точностью до бесконечно малых
высших порядков) длине этого промежутка: йр = а й1 и не зави­сит от того, возникли или нет требования в предшествующие
моменты времени.
Величина а , назы ваемая интенсивностью (или плотностью)потока, может быть постоянной или меняться во времени поопределенному закону: а = а (*), В первом случае поток назы ­вается стационарным, во втором — нестационарным. Термин про­стейший поток обычно применяется к стационарному пуассоновскому потоку.
Пуассоновские потоки описывают реально возникающие по­токи требований во всех перечисленных выше примерах. В рядеслучаев, однако, приходится рассматривать потоки более общего
вида, например, часто встречающиеся на практике неординарные
(групповые) пуассоновские потоки. Моменты возникновения тре­бований в таких потоках распределены как и в обычном, орди­нарном, потоке, но в каждый такой момент возникает не одно,а целая группа требований. Величина этой группы п также слу­чайна и описывается некоторым законом распределения, зада­ющим тем или иным способом вероятности р п того, что в группе
содержится ровно п требований (тг = 1, 2, . . . ) . Характерными
примерами такого потока являются потоки коллективных заявокна билеты, обслуживание организованных групп туристов и т. п.
Имеются и другие обобщения, связанные с тем, что возникно­вение требования может изменять (обычно уменьшать) вероят­ность возникновения новых требований в последующие проме­жутки времени.
Важной характеристикой любого потока требований является
время Т между моментами возникновения одного требования инепосредственно следующего за ним. Эта величина случайна ихарактеризуется некоторым законом распределения. Для пуассоновского потока с интенсивностью а вероятность того, что вре­мя Т заключено в пределах от х до х + йх, с точностью до бес­конечно малых высших порядков равна ае~ахйх. Таким образом,вероятность Р{Т ^ А] того, что Т < 4 , равна
АоСледовательно, вероятность того, что Г > Л , равна е~аА. Этотак называемый показательный закон распределения. В непуассоновских потоках это распределение отлично от экспоненциаль­ного.
Другой важной характеристикой потока является количество
N требований, возникающих в заданный интервал времени дли­ны I. Эта величина также случайна и для простейшего (стацио­нарного пуассоновского) потока задается распределением *)*) р{№ — &} есть вероятность того, что в течение времени % будет по­лучено к требований.

Это — так называемое распределение Пуассона (по имени кото­рого и назван соответствующий п оток).
Кроме перечисленных характеристик, описывающих моменты
возникновения требований, важное значение для расчета систем
массового обслуживания имеет такж е рассмотрение закономерно­стей распределения длительности обслуживания каждого требо­вания. Обычно считается, что эта закономерность является об­щей для всех требований. Наиболее часто рассматриваются двачастных случая: когда длительность обслуживания постоянна икогда она имеет показательное распределение. Во втором случае
вероятность Р { т > В } того, что длительность обслуживания тпревышает В , равна е~кв, где Я — некоторый постоянный коэф­фициент. Величина а, обратная этому коэффициенту (а = 1/Я)г
равна, как нетрудно подсчитать, средней длительности обслу­живания.
Показательное распределение достаточно хорошо описывает
распределение длительности телефонных разговоров и ряд дру­гих задач. Д ля описания многих случаев требуются различные
обобщения этого распределения, одним из них является распре­деление Эрланга, предельными случаями которого являю тся по­казательное распределение и постоянная длительность обслужи­вания.
Все законы распределения, характеризующие поток требова­ний, могут задаваться либо на основе априорных соображений
общего характера, либо в результате специального эксперимен­тального исследования соответствующего потока. Примером пер­вого задания может служить телефонная станция, обслуживаю­щая большое количество индивидуальных абонентов. Априорным
соображением здесь является естественное предположение о не­зависимости телефонных звонков различных абонентов и полной
случайности момента, когда такой звонок последует. Из этихпредположений следует, как доказывается в теории, что рассмат­риваемый поток будет пуассоновским. На долю эксперименталь­ного исследования остается лишь определение интенсивности аэтого потока. Д ля стационарного потока эта величина может
быть получена в результате определения числа N звонков в те­чение достаточно большого момента времени Т и деления первой
величины на вторую: а ~ А / Г . Если априорные соображения,позволяющие определить вид закона распределения, отсутствуютили имеются основания сомневаться в их справедливости, необ­ходимо более детальное экспериментальное исследование рас­сматриваемого потока. Д ля этой цели в течение достаточно дли­тельного промежутка времени фиксируются моменты поступле­ния требований и потребовавшиеся фактически длительности
обслуживания. На основании полученных данных строятся экспе­риментальные кривые распределения, которые затем обычно ап­проксимируются формулой, желательно из числа законов распре­деления, хорошо изученных в теории.
Кроме закономерностей, характеризующих поток требований,для расчета систем массового обслуживания необходимо задатьсятой или иной дисциплиной обслуживания. Дисциплина обслужи­вания определяет порядок, в котором данная система обрабаты­вает поступающие требования. В системе с потерями всякое тре­бование, поступившее тогда, когда все средства системы заняты
обслуживанием ранее поступивших требований, теряется. Такобстоит дело, например, для обычных АТС. В системе с очередьювсе вновь поступающие требования ждут своей очереди для об­служивания. Встречается и смешанный случай, когда при дости­жении некоторой длины очереди вновь поступающие требования
теряются. Возможен случай отпугивающей очереди, когда приувеличении длины очереди возрастает вероятность того, что вновь
поступившее требование не станет в очередь и потеряется.
В понятие дисциплины обслуживания входит также порядок
обработки поступивших требований. На практике чаще всего
встречается случай обработки в порядке поступления. Возможны
также случаи, когда требования разделяются по определенным
приоритетам и обслуживание производится в порядке приоритет­ности требований*). Встречаются также системы, в которых об­работка производится по принципу «последнее требование обслу­живается первым».
Основным э л е м е н т о м дисциплины обслуживания является
порядок, в котором система выделяет средства обслуживания.
Этот вопрос возникает в кратных системах — когда любое из по­ступивших требований может обслуживаться одним из несколь­ким приборов (рабочих мест), имеющих общее назначение (на­пример, парикмахерская). В этом случае возможны три основные
дисциплины обслуживания. Во-первых — циклическое обслужи­вание, когда первое требование поступает па первый прибор,второе — на второй и т. д. Этот вариант наиболее прост для ма­тематического анализа, но относительно редко встречается напрактике. Более употребительные два других варианта. В первомиз них образуются различные очереди к разным приборам и вмомент поступления нового требования принимается решение,к какой из очередей его присоединить. Во втором варианте име­ется одна общая очередь, из которой требования поступают наобслуживание к первому из освободившихся приборов.

*) Обычно при этом не происходит прерывания уж е начатой обработ­ки. Однако в так называемых системах с абсолютными приоритетами лю­бое требование высшего приоритета прерывает обслуживание требований
более низкого приоритета.

Задача расчета системы массового обслуживания состоит втом, чтобы определить законы распределения и средние значения
различных (случайных) величин, связанных с этой системой.
К числу таких величин относятся длина очереди, время ожида­ния обслуживания, время занятости приборов и т. п.
Ниже излагаются два основных метода реш ения указанной
задачи.
11.3.1.
Метод математического моделирования. Сущность это­го метода состоит в том, что специальная программа, поставлен­ная на ЭВМ, повторяет шаг за шагом все действия рассматри­ваемой системы массового обслуживания: определяет случайным
образом, в соответствии с заданным законом распределения,моменты появления требований и длительности их обработки,в соответствии с заданной дисциплиной обслуживания произво­дит постановку на очередь, выделяет обслуживающие приборы
и т. п. При этом специальная часть программы все время ведет
подсчет интересующих величин (длин очередей, простоев обслу­живающих приборов и т. п.) и строит экспериментальные кривые
распределения вероятностей (частот) — гистограммы. По полу­ченным гистограммам вычисляю тся средние значения, дисперсии,среднеквадратичные
отклоне­ния и другие характеристики
экспериментальных
распреде­лений. Например, пусть было30проделано сто вычислений дли­25
20
ны очереди. Откладывая по го­10юризонтали различные значения
~пдлины, а по вертикали — часто­
/
>
4
5
1
ту, т. е. количество раз, в тече­Рис. 11.4
ние которых длина очереди
принимала заданные значения,получаем некоторую гистограмму
(рис. 11.4), из которой
видно, что длина очереди, равная нулю, встречалась 10 раз,а длина очереди, равная трем, 25 раз, что соответствует
экспериментальным
вероятностям
Р 0 = 10/100 = 0,1,
Р3= 25/100 = 0,25. Среднее значение длины очереди равно
По = 0Р 0 + 1Л + 2Р 2 + 3Рг + 4 Р 4 + 5 Р 3 == 0 + 0,2 + 0,6 + 0,75 + 0,4 + 0,25 = 2,2.
Наиболее вероятная длина очереди равна, очевидно, 2. Дисперсия
равна
й = 2 (I - щ )* Р 1= 2 , 22- 0,1 + 1, 22- 0,2 +1=0+ 0,22-0,3 + 0,82•0,25 + 1,82*0,1 + 2,82-0,05 = 1 ,3 0 7 .

Среднее квадратичное отклонение равно
о=й = 1,14.

Д ля облегчения построения моделирующих программ исполь­зуются алгоритмические языки, ориентированные специально назадачи моделирования (симула, симскрипт, слэнг и др.)* ЭВМснабжается специальным устройством или программой, генери­рующей случайные числа, обычно числа заданного отрезка (на­пример, [0, 1]), с равной вероятностью выбора любого такого
числа. Специальные операторы язы ка моделирования могут пере­водить получаемое 'таким образом равномерное (равновероятное)распределение в распределения по любым другим, употребляю­щимся на практике законам, например, в экспоненциальное рас­пределение, распределение Пуассона и т. п. Языки моделирова­ния обычно располагают также операторами для регистрации
очередей, построения гистограмм и т. п.
Методом математического моделирования в принципе могут
быть решены любые задачи по расчету систем массового обслу­живания, в том числе и сложных систем с переменной дисцип­линой обслуживания (зависящей от состояния системы). Отри­цательной чертой этого метода являются большие затраты
машинного времени, поскольку для получения устойчивых стати­стических характеристик исследуемой системы приходится про­изводить большое число (многие тысячи) экспериментов.
11.3.2.
Аналитические методы. Эти методы позволяют пред­ставить интересующие нас характеристики в виде функций отисходных характеристик. К сожалению, простые аналитические
(формальные) выражения для такого рода функций удается по­лучать лишь в простейших случаях.
Рассмотрим пример аналитического расчета одной из простей­ших систем массового обслуживания. Пусть поток исходных тре­бований является стационарным пуассоновским потоком с интен­сивностью а . Длительность обслуживания задана экспоненци­альным законом
Р { Т > В } = е~2В.
Дисциплина обслуживания предусматривает наличие очереди,обрабатываемой в порядке поступления требований. Искомые ве­личины: длина очереди п (случайная величина) и коэффициент
полезного действия ц, т. е. среднее относительное время, в тече­ние которого система занята обслуживанием.
Строго говоря, для ответа на указанные вопросы необходимо,кроме уже приведенных данных, знать состояние системы в на­чальный момент времени (т. е. длину очереди и признак, занятаона обслуживанием или нет). Однако в теории для широкого
класса систем массового обслуживания, заведомо включающего

рассматриваемую систему, доказывается наличие у них так на­зываемого свойства эргодичности. Сущность этого свойства со­стоит в том, что для моментов времени, достаточно удаленныхот начального, влиянием начального состояния на состояние си­стемы в рассматриваемый момент можно пренебречь. Для любой
оргодичной системы обычно ищется устойчивое (случайное) ре­шение, к которому она стремится при I -> «>. Расчет переходного
процесса, в течение которого система переходит в устойчивое
состояние (с некоторой заданной точностью), представляет собой
самостоятельную задачу (как правило, гораздо более трудную).
Переходя к решению поставленной задачи, заметим прежде
всего, что состояние системы можно охарактеризовать лишь од­ним числовым показателем — длиной очереди п, если считать, чтослучай п = 0 соответствует нулевой очереди при занятости систе­мы, а случай п = —1 — нулевой очереди при свободной (не заня­той обработкой) системе. Заметим далее, что если система в тече­ние времени г0 была занята обработкой некоторого требования,то вероятность окончания обработки в промежутке [^0, ^о + Д^]есть условная вероятность*Для показательного распределения е~и величина в числителе
равна(с точностью до бесконечно малых более высокого
порядка, чем Дг), а в знаменателе е“ 2Ч Таким образом, вероят­ность окончания уж е начатого обслуживания в любой бесконеч­но малый промежуток времени равна 2Д* и не зависит от време­ни начала обслуживания.
Обозначим через Рг(г) вероятность того, что рассматриваемая
система в момент времени I находится в г-м состоянии ( / = — 1,0,
1, 2, . . . ) . Вычислим те же вероятности в близкий момент вре­мени %+ Д^. Для того чтобы система в момент времени I + Д^оказалась в состоянии —1, имеются две возможности. Первая со­стоит в том, что система была в этом состоянии ( —1) в момент
времени I и в промежутке от I до I + Д^ не приняла ни одного
нового требования. Вероятность такой возможности равна *)р~{ (/) (1 —а Д /), поскольку вероятность возникновения нового
требования за элементарное время Д^ для рассматриваемого по­тока равна аДг. Вторая возможность состоит в том, что в момент
времени I система находилась в состоянии 0, а за последующий
отрезок времени Д^ закончилось обслуживание обрабатывавшего­ся требования и не поступило нового требования. Вероятность
*) Все вычисления производятся с точностью до бесконечно малых ве­личин порядка, более высокого, чем Д*,^7 в м. Глушков

такой возможности равна р о ^ к А Ц ! — а&1) ~ ра(1)Х/М. Объеди­няя обе эти (независимые) возможности, получаем соотношение
Р - 1 Ц + Д*) = Р - 1 ^ ) (1 — а М ) + р 0(1)ХМ,или
Р_{(* + Д О - Р _ ! (О

,

/А

/А

------------ дТ------------- = *Р0 (0 — а р -1 (()■
Переходя к пределу при А1 -*■ 0, получаем дифференциальное
уравнение
йр_х (*)= Хр0 (I) — ар -1 (I).
(11.1)
й1Для состояния I Ф —1 рассмотрим три случая.
1. В момент времени I состояние системы было г — 1; за вре­мя А 1 пришло новое требование и не закончилась обработка
старого. Вероятность этой возможности равна
/?г- -1(г)аДг(1 —ЯД/) ~ р г - 1 ( 0 а Д**
2. В момент времени I система находилась в состоянии г + 1 ;за время А 1 закончилась обработка старого требования, а новое
требование не пришло. Вероятность равна
Рг+1(!:)КАЦ1 — аА1) ~ Рг+1(1)ХМ.
3. В момент времени I система была в состоянии г; за времяМ не закончилась обработка старого требования и не пришло ниодного требования. Вероятность равна
Рг( 1) (1 — аДг) (1 —Ш ) ~ р { (1) — ( а + к ) р {( 1 ) А 1 .
Существует и четвертый случай, когда система сохраняет со­стояние I, закончив за время А1 обработку старого требования иполучив за это время новое требование. Однако вероятность та­кой возможности, равная рг(()аДЛД^, есть бесконечно малая ве­личина порядка, более высокого, чем Дг, и поэтому должна бытьотброшена.
Объединяя три случая, получаем дифференциальное уравне­ниед,рл (О(О — (а + Я.) р { (0 +(I).
(11.2)
Решение полученной (бесконечной) системы дифференциальных
уравнений (11.1) и (11.2) полностью определяет (при задании
начального состояния) дальнейшее поведение системы. Пользуясь
свойством эргодичности системы (заведомо справедливым приа < Х ) , будем искать лишь установившееся решение, для кото­рого, как нетрудно понять, ра= соп81; и производные й р г ( 1 ) / й 1(г = —1, 0, 1, . . . ) должны обращаться в нуль. В результате

имеем систему обычных алгебраических уравнений:Хр0 — а/?_1 = О,(11.3)а— (а + К) рг + Крг+1 = 0,

г = 0, 1,, •, . •Эта система позволяет по р~х найти р 0, по этим двум величи­нам — Ри 110 величинам р 0 и р { — величину р2 и т. д. Если обоз­начить через г величину а/Х, то решение системы (11.3) запи­шется в видеДля определения значения р - { воспользуемся тем очевидным
соображением, что сумма вероятностей всех состояний, равнаяоосю

2 Рг = Р—1 2 г т = Р- 1 Г ~ 7*
1=—1
1=—1
должна равняться 1. Отсюда
1 - Г,(11.4)

р{ = г‘+*(1 — г ) .

(И .5 )

Р_, =При выводе соотношений (11.4), (11.5) предполагаем, что г —— а А < 1 . В противном случае полученные для вероятностей
значения приводят к абсурду. Этот результат легко понять, есливспомнить, что 1А есть средняя длительность обслуживания,а 1 /а — средняя величина интервалов времени между моментами
поступления очередных требований. При г > 1 первая величина
больше второй, и, как легко понять, система не будет справлять­ся с обработкой поступающих требований, очередь будет неогра­ниченно расти, и стремление к какому-либо устойчивому состоя­нию не будет иметь места.
Полученное распределение вероятностей различных состояний
(11.4), (11.5) представляет собой геометрическое распределение.
Величина 1 —= г есть искомый коэффициент полезного дей­ствия системы:т) = г = а/%.
Вероятность того, что длина очереди будет не меньше А,равнаОтсюда следует, что при стремлении «выжать» из системы боль­шой к. п. д. неизбежно будет расти очередь. Так, при ц = 0,9вероятность того, что в очереди находится не менее пяти требо­ваний, равна 0г95 = 0,59.

Средняя длина очереди I в геометрическом распределении
равна
оо

,

2

.

г' Н

+ 1

( !

-

г )

= г = г г-

2=0При г = 0,9 приходим к значению I = 9. Таким образом, стремле­ние к максимальной загрузке обслуживающих приборов неизбеж­но приводит к росту очередей. При расчете систем массового
обслуживания необходимо поэтому находить разумный компро­мисс между этими противоречивыми тенденциями.
Необходимость поиска такого компромисса — одна из особен­ностей систем со случайными потоками требований, отличающих­ся от регулярных систем, где в принципе достижим сколь угодно
высокий к. п. д. использования имеющихся ресурсов.
Для решения задачи на оптимум в случае систем массового
обслуживания необходимо прежде всего задаться удельной (заединицу времени) ценой а потерь в результате пребывания тре­бования в системе. Как показывается в теории, в рассмотренной
выше простейшей задаче массового обслуживания вероятность
того, что время I пребывания требования в системе заключено вбесконечно малом интервале [2, 2 + <Й], равна (X — а )е ~ {Х~а)1с11.
Отсюда среднее время пребывания требования в системе равнооо

1 1 (Л — а)= т ^ .
оЗа единицу времени в среднем возникает а требований. Тогда
общие потери в результате задержек в системе будут в среднем
равны
а
га
X— а а

1 — г*

Уменьшить эти потери можпо только за счет наращивания
обслуживающих мощностей, суммарная пропускная способность
которых обратно пропорциональна г = а/Х, т. е. к. п. д. ис­пользования. Удельные расходы, отнесенные на едипицу временя
работы системы, которые необходимы для создания и эксплуата­ции этих мощностей, равны с/г, где с — некоторый постоянный
коэффициент.
Суммарная цена обслуживания и происходящих в результатеего ожидания потерь естьНетрудно проверить, что минимум этой функции достигается при
г = 1/(1 + Уа/с). Это есть оптимальный к. п. д. рассматриваемой
системы массового обслуживания.

11.4. Автоматизированные системы диспетчерского
управления
Системы диспетчерского управления предназначены для управ­ления сложными человеко-машинными системами в реальном
масштабе времени. Они представляют собой как бы переходный
этап от систем технологического управления к чисто организа­ционным системам. Подобные системы нередко автоматизирова­лись еще до появления ЭВМ (как это имело, например, местопри диспетчерском управлении в энергосистемах или на железно­дорожном транспорте). Применение ЭВМ позволяет оперативноп р о г н о з и р о в а т ь изменения состояния объекта управленияи тем самым (предвидя заранее многие назревающие ситуации)существенно улучшить управление. С этой целью в ЭВМ закла­дывается динамическая модель управляемого объекта, используе­мая* различными способами (и в различных целях) в различных
системах. Имея в виду большое разнообразие существующих си­стем диспетчерского управления, рассмотрим лишь некоторые
примеры, наиболее характерные теми или иными особенностями.
11.4.1.
Управление воздушным движением. Диспетчерское уп­равление воздушным транспортом охватывает все стадии процес­са его использования, т. е. погрузку и разгрузку самолетов, руле­ние, взлеты и посадки, движение в зоне круга аэродрома и, на­конец, управление движением самолетов непосредственно намаршрутах. Остановимся подробнее именно на последнем этапе,поскольку возникающие здесь проблемы и методы их решения
характерны для многих других систем диспетчерского управления.
На большинстве маршрутов регулярного движения самолетових положение фиксируется с интервалами порядка десяти секунд
наземным радиолокатором кругового обзора. Высота и скорость
(вектор скорости) полета такж е могут быть определены с по­мощью наземной аппаратуры, хотя чаще всего эти величины
измеряются бортовой аппаратурой и передаются диспетчеру зо­ны, в которой находится самолет в данный момент. При диспет­чировании с помощью ЭВМ все эти сведения, равно как и сведе­ния о типе самолета, номере рейса, пункте прибытия и др., поме­щаются в память ЭВМ и высвечиваются в виде изображений
самолетов с соответствующими формулярами на специальных
графических дисплеях — АРМ диспетчеров зон. Хотя пересека­ющиеся или встречные маршруты обычно разносятся по высоте
(эшелонируются), однако не исключено, что в случае ошибокв определении высот возможны нежелательные сближения само­летов в воздухе и даже столкновения. С целью избежать возник­новения подобных ситуаций ЭВМ, «зная» маршруты движения,скорости и высоты самолетов, все время э к с т р а п о л и р у е т ихДвижение на определенное время вперед. В случае, когда такая

экстраполяция укажет на возможность опасного сближения,изображения сближающихся самолетов на экране дисплея начи­нают мигать, приковывая тем самым к себе внимание диспетче­ра. В режиме диалога с диспетчером вырабатывается решение,которое затем передается на борт самолетов. Оно может состоятьв изменениях скоростей самолетов или их эшелонирования по вы­
соте. Возможно также, если есть, гарантированное разнесение
самолетов по высоте (и притом достаточное для безопасного рас­хождения), разрешить им следовать далее в прежнем режиме.
ЭВМ также решает задачу определения расчетного времени
вхождения каждого самолета в зону круга аэропорта назначения.
С целью избежать очередей самолетов, ожидающих разрешенияна взлет и посадку, рассчитываются изменения путевых скоро­стей самолетов (с учетом ветра), направляющихся к любому
данному аэропорту. Эти изменения (передаваемые на борт через
систему диспетчерской связи) обеспечивают равномерность при­бытия самолетов в аэропорт даже при различного рода наруше­ниях расписания их движения.
11.4.2.
Управление уличным движением. Для получения ин­формации о движении автотранспорта все контролируемые пере­крестки снабжаются датчиками, реагирующими на проезд пере­крестка отдельными транспортными средствами. Сегодня в боль­шинстве случаев для этой цели используются индукционные
датчики, о которых уже упоминалось выше (в п. 10.8.6). Петля
провода с током, уложенная под дорожным перекрытием, способ­на не только регистрировать прохождение над ним отдельных
транспортных средств, но и определять их тип (легковые, грузо­вые автомобили, автобусы и т. д.), а если надо, то и скорость ихдвижения. Для различения спецавтомобилей (скорая помощь,пожарные машины и др.) они снабжаются специальными ответ­чиками, которые могут не только передать в петлю информациюо типе спецмашины, но и в случае необходимости полностью
идентифицировать ее. Все данные от датчиков передаются вуправляющую ЭВМ.
Главное отличие рассматриваемой системы от системы управ­ления воздушным движением состоит в том, что (за исключением
отдельных спецмашин) наблюдения за движением каждой инди­видуальной машины не ведется и маршруты пх движений дис­петчерской системе неизвестны. Поэтому вместо прогнозирования
движения каждой транспортной единицы прогнозируется в е л и ­ч и н а и х п о т о к о в . В простейшем случае используется опе­ративное прогнозирование на один шаг, т. е. на (среднее) время
перемещения наблюдаемых потоков к следующим по направле­ниям их движения контролируемым перекресткам. Исходя изтакого прогноза, вычисляются моменты переключения сигналов
управляемых от ЭВМ светофоров с целью минимизировать сум­марные задержки транспорта на регулируемых перекрестках(с учетом необходимости внеочередного пропуска различного ро­да спецмашин).
Кроме того, могут делаться более долгосрочные прогнозы,основанные на статистическом материале или специальных иссле<доваииях. Они учитывают регулярные (или почти регулярные)изменения потоков, возникающие в течение суток (начало и ко­нец работы), недели (массовые выезды за город в конце недели)или более длительных периодов. То же касается массовых меро­приятий разового характера (демонстраций, спортивных соревно­ваний и т. п.). Для быстрого рассасывания подобных, заранее
планируемых потоков вырабатываются специальные алгоритмы
управления.
Заметим, наконец, что широкое распространение дешевых
микрокомпьютеров делает возможным создание своеобразных
«автоматических штурманов» на индивидуальных транспортных
средствах, включая личные автомобили. Установленная на авто­мобиле микро-ЭВМ должна при этом иметь возможность уста­навливать автоматическую двустороннюю радиосвязь с центром
управления уличным движением. Водитель вводит в память свое­го штурманского микрокомпьютера начальный и конечный
пункты планируемого маршрута, после чего «штурман», общаясьс центром управления, вырабатывает полный маршрут движения,наиболее целесообразный в данных конкретных условиях. Пришироком развитии подобных систем (начало которым положенов Японии) центр управления может располагать предполагаемы­ми маршрутами значительной части транспортных средств и пе­рейти на более совершенные методы диспетчирования (аналогич­ные тем, которые были изложены в предыдущем пункте). Р азу­меется, при этом потребуется значительное увеличение мощности
управляющих компьютеров.
11.4.3.
Диспетчерское управление на производстве. Рассмот­рим два характерных примера такого управления. Первый при­мер относится к диспетчированию отдельных производственных
участков, работающих друг на друга через буферные емкости
(склады, резервуары, газгольдеры и т. п.). Смысл диспетчерского
управления здесь состоит в следующем.
Отслеживая и прогнозируя потоки выходной продукции (всего
предприятия в целом) и учитывая при этом возможные останов­ки тех или иных производственных участков (для переналадки,профилактики или в результате аварий), а такж е ограниченность
буферных емкостей,— находить оптимальные режимы работы от­дельных производственных участков. При этом обычно требуется
безусловное поддержание планируемого потока выходной про­дукции (с высокой, устанавливаемой заранее степенью вероят­ности). В качестве критериев оптимизации чаще всего выступают

различного рода технико-экономические критерии (наиболее ща­дящие режимы эксплуатации оборудования, минимальная себе­стоимость продукции, минимальный расход энергии, лучшее ка­чество продукции и т. п.). Если режимы работы участков уста­навливаются локально (без учета темпа выпуска конечной про­дукции), то их оптимизация (например, по показателю наивыс­шей производительности) может принести не пользу, а вред.
Работая что называется «на всех парах», участок может внезап­но остановиться в результате переполнения буферной емкости.
В результате производившаяся «гонка» (связанная, как правило,с дополнительными затратами, усиленным износом оборудова­ния и т. п.) окажется в конце концов напрасной, ибо тех жесамых к о н е ч н ы х результатов можно было добиться ценой
меньших усилий.
Второй пример связан с оперативным управлением взаимосвя­занным множеством работ, между которыми отсутствуют буфер­ные емкости. Наиболее характерный пример такого рода — сбо­рочный конвейер. В своем классическом виде сборочный кон­вейер имеет лишь один управляемый параметр — темп движения
конвейера. Управлять таким процессом (ввиду его однопараметричности) просто. Однако при этом возникают неудобства дляработающих. Для одних заданный темп может оказаться чрез­мерно высоким, а для других — низким. Поскольку степень под­готовленности рабочих и их физическое состояние — величины
переменные, технологам, планирующим разбиение операций наконвейере, практически невозможно создать условия равнонагруженности каждого рабочего места. Этого можно достичь лишь врезультате оперативного управления числом рабочих мест для каж ­дой операции, а также, возможно, и характером самих операций.
Наиболее простой способ решения этой задачи — создание
бригад, за которыми закрепляются крупные операции на кон­вейере. Разукрупнение этих опера^ций между членами бригады произ­водится оперативно самой бригадойв зависимости от степени их работо-Xспособности в каждый данный мо­
мент. Расчеты перераспределения
работ могут выполняться методами
теории
массового
обслуживания
Рис. 11.5( в сложных случаях — с помощью
ЭВМ). Еще более радикальное ре­шение задачи — построение конвейера не в виде одной линии,а в виде направленного графа с продольными и поперечными
связями вида, изображенного на рис. 11.5. Горизонтальные ли­
нии (последовательности стрелок) на этом графе могут рассмат­риваться как обычные (линейные) конвейеры, которые настраи­ваются на одну и ту же работу. На каждую операцию при этомимеется несколько рабочих мест (на рис. 11.5 — тр и ). Если накаком-то рабочем месте имеет место отставание от графика, тос помощью поперечных связей (на рис. 11.5 — вертикальных)можно перераспределять работу между этими местами.
При практической реализации этой идеи обычно используют
одну транспортную линию, вдоль которой на специальных тележках перемещаются собираемые объекты (например, телевизоры).
Рабочие места расположены не прямо на этой линии, а рядомс ней (рис. 11.6). О тцепляя тележ ку от транспортера, рабочий
перемещает ее на свое рабочее место, выполняет требуемую опе­рацию и снова возвращ ает тележ ку на транспортер для переме­щ ения к следующей группе рабочих мест (ответственных за вы-,иолнение следующей технологической операции). Управление
подобным конвейером осущ ествляется с помощью изменения нетолько общего темпа работы, но и числа задействованных рабо­чих мест на каждой операции (на рис. 11.6 эти числа равны
соответственно 3, 2, 3, 2, 4 ). При условии овладения каждым
рабочим несколькими операциями подобное управление может
производиться без изменения общего числа людей, занятых наконвейере. Алгоритм управления настраивается на обеспечение
наиболее высокой суммарной производительности с учетом реаль­ной возможности и ж елания каждого работающего. За счет этого,как правило, удается добиться одновременного реш ения двухпротиворечивых задач — увеличения производительности и по­выш ения уровня комфортности работы на конвейере.
1

~~7К

2

Л

3

4

Ж

Я

В

7

□й'й йй ййЬ йй йййЪРис. 11.6

В случае, когда детали и узлы, монтируемые на каждом рабо­чем месте, невелики по размерам (как это имеет место для боль­шинства операций по сборке телевизоров), они могут запасаться
впрок на рабочих местах, пополняясь лиш ь время от времени.
При тяж елы х деталях (например, при сборке автомобилей), по­мимо основного (сборочного) конвейера, возникает необходимость
иметь транспортные конвейеры для доставки в нужные моменты
времени на нужные рабочие места нужных деталей и блоков.
Д ля сборки отдельных блоков (например, автомобильного мото­ра) организуются дополнительные сборочные конвейеры. Процес­сы взаимодействия всех этих конвейеров должны быть строго
синхронизированы по времени в соответствии с заданным темпом

выпуска конечного изделия. Хотя расчеты по синхронизации са­ми по себе тривиально просты и вряд ли требуют дополнитель­ных пояснений, при переходе к управлению числом задейство­ванных рабочих мест по всем взаимосвязанным линиям они ста­новятся практически неосуществимыми вручную и требуют нали­чия центральной диспетчерской ЭВМ.
При автоматизации управления системой конвейеров (сбороч­ных, отладочных и транспортных) возникает возможность инди­видуализации сходящих с конвейера изделий. Например, многие
автомобильные фирмы предоставляют возможность заказы ватьавтомобили с различными индивидуальными особенностями (фор­ма руля, тип радиоприемника, цвет и материал отделки салона
и т. п .). ЭВМ, осуществляющая диспетчеризацию сборки, обеспе­чивает при этом управление навеской деталей (заготовок) натранспортные конвейеры таким образом, чтобы к моменту нача­ла очередной сборочной операции на данное рабочее место попа­ла нуж ная деталь. Разумеется, технологи обеспечивают при этоммаксимально возможную идентичность самих сборочных опера­ций на каждом рабочем месте, независимо от вида подаваемыхдля этой цели деталей.
В современных машиностроительных и приборостроительных
предприятиях, выпускающих массовую или крупносерийную про­дукцию, синхронизация распространяется не только на сборочнотранспортные, но и на все остальные операции (вклю чая работу
заготовительных цехов). Однако, благодаря возможности созда­ния буферов в виде запасов деталей и заготовок на разных ста­диях обработки, требования к точности решения задачи синхро­низации снижаются. Необходимо помнить вместе с тем, что дажепри отсутствии априорных ограничений на величину буферных
емкостей (складов) этими емкостями нельзя злоупотреблять, со­здавая слишком большие запасы. Помимо расходов на хранение,возможности потерь от порчи запаса и замораживания оборотных
средств нужно еще считаться с тем обстоятельством, что излиш ­ние запасы являю тся тормозом на пути научно-технического про­гресса. При переходе на новый вид продукции они ставят пред­приятие перед дилеммой: либо задержать внедрение новшествадо полной выработки сделанных запасов, либо выбросить запасы,не нужные для производства новой продукции, понеся соответ­ствующие материальные потери.
Более подробно встающие здесь вопросы разобраны в следу­ющем параграфе, посвященном управлению запасами. В заклю­чение же настоящего параграфа заметим, что существуют слу­чаи, когда создание буферных запасов невозможно или неж ела­тельно. В наиболее полной форме с подобным обстоятельством
приходится встречаться в электроэнергетике. Здесь синхрониза­ция процессов выработки и потребления энергии осуществляетсяза счет наличия резерва мощностей по выработке электроэнергиии использования этого резерва при увеличениях потребления.
При этом в задачу диспетчерского управления входит, каки обычно, оперативное прогнозирование изменения уровня по­требления электроэнергии и своевременное подключение и отклю­чение резервных мощностей (в качестве которых удобно исполь­зовать агрегаты гидроэлектростанций). При решении задачи
управления мощностями учитываются необходимые перетоки
электроэнергии по линиям электропередач и связанные с нимипотери. Кроме того, принимаются в расчет различная себестои­мость электроэнергии, производимой разными агрегатами, гра­фик их предполагаемого отключения на ремонты и профилакти­ку, уровни запасов топлива на тепловых электростанциях и запа­сов воды в водохранилищах (и гидроаккумуляторах) на гидро­электростанциях. В более изощренных алгоритмах управления
учитываются также прогнозы изменения запасов, в частности
запасов воды в результате ожидаемых ее поступлений от выпав­ших дождей, перетоков с вышерасположенных каскадов и т. шПри этом возникают сложные оптимизационные задачи, для ре­шения которых в реальном масштабе времени для крупных энер­госистем требуются весьма мощные ЭВМ и многомашинные
комплексы.
11.5. Управление запасами и оперативно-календарное
планирование
Оперативно-календарное планирование представляет собой
следующий (за диспетчерским управлением) уровень организа­ционного управления экономическими объектами. К ак и при дис­петчировании, главная задача здесь состоит в обеспечении син­хронизации работы взаимодействующих участков для надежного
функционирования всего объекта в целом. Хорошо известно, чтолюбая задержка в одном из мест цепочки взаимосвязанных участ­ков может привести к лавинообразному нарастанию задержекв других местах и в результате — к большим потерям. Для тогочтобы получить высокую степень надежности всего процесса вцелом при относительно небольшой надежности отдельных егочастей, прибегают к использованию резервов. Резервы могут
быть либо в виде незадействованного оборудования, либо в видезапасных частей, при помощи которых осуществляется быстрый
ремонт оборудования, либо, наконец, в виде запасов материалов,полуфабрикатов и готовых изделий для снабжения цепи при вре­менных выходах из строя отдельных звеньев.
Установление правильных уровней запасов различных видов,их постоянный контроль, пополнение и использование — цент­ральный вопрос комплекса задач оперативного планирования иуправления. Многие системы оперативно-календарного планиро­вания могут строиться как системы управления запасами.
Задачи управления запасами делятся на статические и дина­мические. В статических задачах вопрос о создании того илииного запаса выступает как единичный акт; для задач динамиче­ских расходование и периодическое пополнение запасов рассмат­ривается как процесс, развертывающийся во времени.
Характерным примером статической задачи является пробле­ма закупки запасных частей вместе с каким-либо уникальным
дорогостоящим оборудованием (например, с прокатным станом,турбогенератором большой мощности и т. п.). При изготовлении
заказанного оборудования поставщик может изготовить запасные
части по относительно низкой цене. Если же закупать их по про­шествии определенного времени, когда в них возникает потреб­ность, то их цена может оказаться значительно большей (в силунеобходимости заново осуществить подготовку производства у по­ставщ ика). Кроме того, могут иметь место значительные потериот простоя оборудования в ожидании изготовления необходимой
•запасной части (вместо вышедшей из строя). Вопрос состоит втом, какое количество запаспых частей покупать вместе с обору­дованием.
Чтобы ответить на этот вопрос, предположим, что цена неко­торой запасной части в момент поставки оборудования равна
1000 р., убытки же от ее отсутствия в момент аварии равны
20 000 р. (включая закупку ее по более дорогой цене). Пусть,далее, вероятность р0 того, что за время эксплуатации данная
запасная часть не потребуется, равна 0,90; вероятность того, чтоона потребуется один раз, равна щ = 0,08, а два раза — р 2 = 0,02.
Если не покупать с оборудованием ни одной запасной части, томатематическое ожидание убытка равно Зо = 0,08 • 20 000 ++ 0,02 • 2 • 20 000 = 2400 р. При покупке одного экземпляра
5! = 1000 + 0,02 - 20 000 = 1400 р., а при покупке двух экземпля­ров 8 2 = 2 • 1000 = 2000 р. Таким образом, минимальные потери
будут во втором случае и, следовательно, правильная политика
состоит в закупке запасной части в одном экземпляре.
В качестве второго примера рассмотрим случай разового зака­за магазином какого-либо скоропортящегося продукта. Пустьр ( п) есть вероятность того, что спрос за время реализации будетне менее чем п единиц; А — прибыль, получаемая при продаже
одной единицы продукта, В — убыток на каждую единицу непро­данного продукта. Тогда математическое ожидание прибыли отп -11 единицы продукта выразится формулой
Е(п) = А р ( п ) - В [ 1 - р ( п ) ] .
Легко понять, что закупка п-й единицы будет целесообразной,если Е ( п ) > 0. Из неравенства Ар { п ) — В [ \ — р ( п ) ] > 0 получаем

Следовательно, правильной политикой будет закупка наибольше­го числа п единиц продуктов, при котором еще имеет место это*неравенство.
В динамических моделях управления запасами заказы на по­полнение запасов даются многократно. Важнейшим здесь явля­ется определение точки заказа, т. е. момента времени, в которой
должен быть произведен заказ, и размеров партии, т.е. количе­ства одновременно заказываемого продукта.
Предположим, что скорость V расходования запаса постоянна
(простейший, так называемый л и н е й н ы й случай), а в моментего исчерпания поступает новая партия, пополняющая запас;снова происходит его расходование и т. д. Мы будем называть
такую политику заказов политикой нулевы х страховых запасов.
Пусть А — расход на подготовку выполнения заказа у поставщи­ка. В первом приближении можно считать, что эта величинане зависит от размера N заказываемой партии. В таком случае
прибавка стоимости на каждую единицу заказываемого продуктавы разится величиной А / N . При скорости расходования запаса,равной V, запас величиной N исчерпывается за время Т = N / 0 ,Среднее время Гср хранения одной единицы продукта равно
1 т
2 1

2и‘

При затратах на хранение одной единицы продукта в течение
одной единицы времени, равных Б , общие затраты на хранение,отнесенные на единицу продукта, представляются в виде Б/У/(2г;)>Общая сумма 5 дополнительных расходов на единицу заказы вае­мого продукта равна

*=г +

ш-б)

При сделанных предположениях (постоянство величин А , Б , и)
имеем
08_
А_
М
/V2 2у
*Оптимальный размер партии /У0 (дающий минимум дополнитель­ных расходов) достигается при Й5АБУ = 0, откуда
/У0 = У2 иА /В .

(11.7)

Величина дополнительных расходов 5 0, приходящ аяся на едини­цу заказываемого продукта, при оптимальной партии выразится

формулой, получающейся подстановкой значения УУ0 в выраже­______
ние (11.6):
8 0= П А В / и .
Время Т о, через которое должно проходить периодическое обнов­ление запаса (поступление нового заказа), равно N^/V, т. е.
Т 0 = У2А/ ( иВ) .
( 11 .8 )Назовем это время периодом оптимального обновления запаса.
Если скорость V потребления запаса переменна, но меняется от­носительно медленно, то для расчета объемов оптимальных пар­тий и периодов оптимального обновления можно пользоваться
теми же формулами (11.7) и (11.8), принимая в качестве соот­ветствующего значения среднюю скорость иср расходования запа­са в течение времени Т0.
Величины уср и Т 0 находятся последовательным приближени­ем. Пусть V = сек\ где к — достаточно малая величина. Прини­мая сначала 1>ср = и(0) = с, найдем
Т 'о ===

2 АЦсВ),1>ср = у( 1 + у ек^ 2А/(сВ)По этой новой средней скорости найдем новое значение

Если величина к!/ 2А/ ( сВ) мала по сравнению с единицей, тоуказанный процесс быстро приведет к нахождению удовлетвори­тельных значений для объема оптимальных партий и периода
оптимального обновления запаса. Разумеется, указанные значе­ния будут меняться с течением времени.
Малость величины Щ 2А ! (сВ) означает, что скорость расходо­вания запаса за период его оптимального пополнения меняется
мало. При быстрых изменениях скорости расходования запаса
выведенные формулы уже неприменимы и должны быть замене­ны более сложными приемами, основанными, как и прежде, наминимизации величины добавочных расходов, но уж е без пред­положения о постоянстве величины V.
Может быть, например, применен следующий метод последо­вательной приближенной оптимизации. Вначале, на основании
какой-то средней скорости (выбираемой без особых претензий наточность), находят первое приближение для очередной точки за­каза Т 0. Затем начинают изменять Т 0 в направлении, в котором
сумма дополнительных расходов уменьшается до тех пор, покаона не станет увеличиваться. Иными словами, применяется об­щ ий (градиентный) метод оптимизации, описанный в § 8.1. Та­ким образом, последовательно, одну за другой, определяют оче­редные точки заказа и соответствующие размеры оптимальных
партий.
При использовании подобных общих методов могут приме­няться более сложные алгоритмы для определения величины до­полнительных расходов, связанных с выполнением заказа и хра­нением заказанного продукта. Например, можно учесть непо­стоянство расходов на подготовку выполнения заказа, возника­ющих в том случае, когда при больших размерах заказа нужно
вести параллельную подготовку нескольких параллельных техно­логических линий или менять оснастку в процессе выполнения
заказа. П оявляется возможность учета нелинейного характера
расходов на хранение, если при больших размерах запасов воз­никает необходимость в оборудовании дополнительных складских
помещений. При хранении жидких и газообразных продуктов мо­гут возникнуть ограничения, связанные с наличным объемом
буферных емкостей. Такие же ограничения на размер запасов
могут быть наложены в результате тех или иных директив выше­стоящих органов.
Нелинейность зависимости расходов на хранение от времени
хранения имеет место такж е в том случае, когда при хранении
возникают потери. Эти потери могут иметь как физическую при­роду (например, уменьшение сахаристости свеклы при ее дли­тельном хранении), так и технико-экономическую (например,опасность морального устаревания хранимого продукта в резуль­тате возможного изменения технологии, при которой этот про­дукт сделается ненуж ны м ). В стоимость хранения должны бытьвключены такж е те дополнительные проценты роста омертвляе­мых в запасах денежных средств, которые могли бы быть полу­чены при включении этих средств в более активные формы
оборота *).
К ак было указано выше, при формировании заказов ж ела­тельно указы вать размеры потерь при изменении сроков их вы­полнения. При досрочном выполнении заказа возникают допол­нительные расходы на хранение (вклю чая проценты с омертвлен­ных денежных сумм при досрочной оплате заказов). В простей­шем (линейном) случае, описанном выше, подобные расчеты невызывают особых трудностей: прямые дополнительные расходына хранение в расчете на одну единицу продукта составят ЯД*,где А* — время, на которое данный заказ опередил назначенный
срок. Дополнительные потери от замораж ивания денежных
*) Эти потери обычно учитываются лишь при превышении оптималь­ных размеров запасов, рассчитанных описанными методами.

средств на одну единицу продукта равны р(1 + г)Д г/т, где р —стоимость единицы продукта; г — процент роста средств в оборо^те; т — период времени, за который начисляется этот процент.
В случае задержки поставки заказа на время Д* при полити­ке нулевого страхового запаса это время представляет собой чис­тый простой для рассматриваемого объекта. Потери будут исчис­ляться суммой затрат и амортизационными отчислениями за этовремя плюс потери от сдвига на соответствующий период заказа,который выполняет данный объект. Размер этих последних по­терь предполагается определенным у заказчика в момент форми­рования заказа.
Политика нулевого страхового запаса приводит к тому, чтозадержки на самом объекте и в системе его материально-техни­ческого снабжения оборачиваются значительными потерями ираспространением задержек по всем последующим цепочкам тех­нологических связей. Поэтому на практике стремятся планиро­вать снабжение таким образом, чтобы поступление очередной
партии заказанного продукта происходило не в момент полного
исчерпания имевшегося запаса, а при сохрапении некоторой стра­ховой величины запаса Л^тр.
В линейном случае (при постоянной скорости V расходования
запаса) обычно величину /Устр выбирают постоянной. При этом,как легко проверить, ни размер /У0 оптимальной партии, ни вели­чина Т 0 периода оптимального обновления запаса не меняются,т. е. могут по-прежиему вычисляться по формулам (11.7) и (11.8).
Дополнительные же расходы увеличатся на величину В N С^Р/V исоставят
8^^2АВЬ +В П ^.
Средний объем запаса в течение периода обновления Т 0 равен
"2“(^ стр + -^стр +N0) = Д^стр + у .

Расходы на хранение в расчете на одну единицу заказа равныВ (А'гпр ■+ Vщ2) Т о

В (* ст р + * о / 2 ) - V *_л у стр ,V+го'что лишь постоянным слагаемым В N СТV/ ^ отличается от расходовна хранение в схеме с нулевым страховым запасом.
При расчетах объемов страховых запасов такж е возможны по­дстановки задач на оптимум. Для этой цели необходимы те илииные гипотезы о вероятностях задержек поставок заказанны хпартий продуктов и о потерях заказчика от этих задержек. Рас­смотрим один из простейших примеров. Предположим, что длякаждой заказанной партии возможна задержка, не зависящ ая отзадержек, имевших место при поставках других заказанны х пар­ти й , причем вероятность р(^) того, что эта задерж ка превзойдет
время 2, вы раж ается экспоненциальной зависимостью р(1) = е~ы.
Пусть, далее, потери у поставщ ика за каждую единицу времени
простоя постоянны и равны Р . Обозначим время /Устр/г;, на кото­рое хватит страхового запаса при работе с постоянным расходом
V, через гср. Вероятность того, что задерж ка выполнения заказа
лежит в пределах I, ^ + с^^у равна —йр{1)^= ке~к1й1. Если I > ^СТР1то потери при такой задержке будут равны—М атема­тическое ожидание этих потерь представится формулойосЕ =^ Р Ц — 1СТр) ке~м И = у <г '* 'стр = ^или, в расчете на единицу продукта в заказываемой партии,Дополнительные же расходы от хранения страхового запасав расчете на единицу заказываемого продукта равны, как уж ебыло отмечено выше, В N СТV/V. М инимизация суммы этих расхо­дов (приравниванием нулю производной по /Устр) приводит копределению оптимального размера страхового запаса:(11.8а)Разумеется, размер потерь от простоя объекта в единицу вре­мени должен превышать расходы на хранение заказываемой пар­тии продукта в единицу времени № N 0 ), иначе эксплуатация объ­екта стала бы невыгодной, а для величины страхового запаса поформуле (11.8а) было бы получено отрицательное значение.
При более сложных законах изменения вероятности р(1), ха­рактеризующих степень надежности поставщика, равно как и придругих отступлениях от принятых выше простейших предполо­жений, задача минимизации дополнительных расходов (точнее,их математических ожиданий) за счет выбора оптимальных раз­меров страховых запасов услож няется и требует применения об­щих приемов нахождения экстремумов (см. гл. V II I ).
Представляет значительный интерес вопрос о месте, в кото­ром следует иметь страховые запасы. Далеко не всегда выгодно
создавать запасы у потребителей. Действительно, нетрудно по­нять, что в случае, когда число поставщиков гораздо меньше, чемчисло потребителей (что чаще всего и имеет место), а работа
транспорта абсолютно надежна (что бывает далеко не всегда),значительно выгоднее создавать страховые запасы у поставщик
^В. М. Глушков

ков. Разумеется, при этом необходимо обеспечить соответству­ющие формы ответственности поставщиков за безусловное соблю­дение сроков поставок. Если принимать во внимание ненадеж­ность транспорта, то страховые запасы необходимы и у потреби­телей, однако их размер будет меньшим, поскольку ненадежность
одного транспорта меньше суммарной ненадежности транспортаи поставщика.
Рассмотренные примеры иллюстрируют лишь простейшие слу­чаи, возникающие при решении проблем управления запасами.
Обобщения и усовершенствования могут идти в различных на­правлениях. Одно из обобщений возникает в том случае, когда
доставка заказа представляет собой не разовый акт, а равномер­ное поступление продукции в течение некоторого времени I, со­ставляющего часть периода Т 0 оптимального обновления запаса*I = гГ0,0<г<1.

При этом скорость пополнения запаса и скорость его расходова­ния связаны соотношением V = ги. Случай г = О соответствует
рассмотренному выше случаю разовой поставки всего запаса.
Размер оптимальных партий, величина дополнительных расходов(на единицу продукта) и период оптимального обновления запа­са выразятся в общем случае формулами2АВ и (1 — г)Другие обобщения связаны с введением случайных колеба­ний в скорость V расходования запаса, что приводит к необходи­мости создания страховых запасов.
Большой интерес представляет собой многопродуктовая мо­дель, когда запасы создаются по нескольким различным видам
продуктов. В этом случае помимо задачи определения оптималь­ных размеров заказов по различным продуктам возникает задачао взаимном расположении точек заказа. Дело в том, что одновре­менный заказ различной продукции может привести к необходи­мости иметь значительный запас денежных средств для оплаты
всех этих заказов. Более равномерное распределение точек заказаво времени при сохранении средней суммы оборотных средств,вложенных в запасы, приводит к уменьшению максимальных
стоимостей всех имеющихся на данный момент запасов. Иными
словами, в многопродуктовой модели обычно стремятся к более
равномерному использованию денежных средств, предназначен­ных для оплаты заказов. Решение этой задачи может быть полу­чено общими методами поиска экстремума для оценочной фуик^ции 5 (*!,
М , где переменные 1 и *2, . . и представляют
собой искомые точки заказов соответствующих продуктов. Функ­ция задается алгоритмом, описывающим скорости пополнения ирасходования запасов.
В реальных системах управления запасами учитывается так­же задерж ка между временем заказа и временем получения за­казанного продукта. Если это время обозначить через т, размер
страхового запаса — через Астр, постоянную скорость расходова­ния запаса — через V, то точка заказа определяется моментом,когда уровень запаса 5 станет равным
^ == А стр + их.
Этой формулой обычно и пользуются в АСУ, ведущих непрерыв­ный учет состояния запасов для определения точек заказов. Еслиучет запасов ведется с интервалом 2уч, то размер запаса, опреде­ляющий точку заказа, вычисляется по формуле
8= N СХр + V ^Х +

В противоположность описанной системе, в которой определя­ется оптимальный размер заказа и которую при V = сопз1; можно
назвать системой с постоянным размером заказа, иногда употреб­ляю тся и другие системы управления запасами. Хотя они и неминимизируют дополнительных расходов, но могут быть удобны­ми в других отношениях, прежде всего для упрощ ения вычис­лений.
Так, в системе с постоянным уровнем запасов фиксируется
некоторый максимальный уровень запасов и через равные проме­жутки времени проверяется уровень запасов. В результате про­верки формируется заказ размером
А

^тах

^ тек

$н еп ол*где 5 гаах — принятый максимальный объем запаса; З'тек— факти­ческий запас на момент проверки; 5 Непол — сделанные, но еще неполученные заказы (при х > 1уч). М аксимальный уровень запаса
определяется по формуле$тахА ^стр

V {х Н“ ^уч ) <При V = сопз1 средний уровень запасов равен
I^сред — Астр +Иногда применяется система с двум я уровням и. В ней, как ив предыдущей системе, размер заказа определяется формулойА=== «З'тах*^ трк

$непол*Однако решение о производстве заказа принимается не при каждой
28 *проверке (через время ^уч = сопз1), а лишь в том случае, когда
$тек^непол ^ ^зак “ N Стр “Ь У(Т “Н^уч/2) ,где 5 зак <и представляет как раз второй уровень запаса,по которому производится регулирование и который дал название
данной системе.
При переменной скорости V расходования запаса вместо членов у (т + *уч), ^ (т + ^ / 2 ) применяются прогнозные оценки длявеличины расхода за соответствующие промежутки времени.
Имеются вариации методов управления запасами, использую­щие несколько точек заказа. Например, кроме максимального
размера запаса
может существовать не одна точка заказа,а две: 8 ± и 8 2 (8 ^ > 8 2). При снижении уровня запаса 5 ниже(но выше 8 2) при очередной проверке дается заказ размером
N =— б'хех — ^непол, а при 5 < ^2 размер заказа определяетсябез учета неполученных заказов: N = 5 так — б'™*. Такой способ
применяется в том случае, когда между очередными проверками
возможны быстрые изменения скорости расхода запаса, так чтоожидание неполученных заказов может привести к возникнове­нию дефицита.
Применение теории управления запасами к оперативно-кален­дарному планированию основано на расчленении технологических
маршрутов на отдельные участки, выступающие по отношению
друг к другу как поставщики и потребители. Для возможности
отделения одного участка от другого необходимо наличие буфер­ных емкостей для хранения запасов продуктов, выпускаемых
одним участком и потребляемых на другом участке. При отсут­ствии таких буферов отдельные участки соединяются в одинучасток, называемый поточной линией , на котором производи­тельности отдельных составляющих его участков должны бытьстрого согласованы между собой. Примером поточной линии яв­ляется обычный конвейер, хотя, разумеется, поточные линии мо­гут строиться и без него.
Для каждого участка формируется поток заказов. В заклю­чительных участках (например, сборочных цехах) такие задания
формируются из заданий для всего рассматриваемого экономиче­ского объекта для других участков — из заказов участков, распо­ложенных впереди по соответствующим технологическим марш­рутам. Результатом расчета календарного плана должны бытьсменные задания на выполнение необходимых производственных,подготовительных и ремонтных операций, а также формированиеи привязка к точным калепдарпым срокам заказов другим участ­кам и заданий на материально-техническое снабжение всего
объекта.
Для иллюстрации задач, возникающих при оперативно-кален­дарном планировании, рассмотрим пример. Рассчитаем календаре

||яый план работы производственного участка, работающего в двес м ен ы по 8 ч с двумя выходными днями в неделю (на ию нь);выходные дни приходятся на числа 1, 7, 8, 14, 15, 21, 22, 28, 29.
У ч а с т о к выпускает два вида деталей: I и II. На изготовление де­та л и типа I тратится 10 мин, а на изготовление детали типаII — 50 мин. Подготовительные операции (переналадка оборудо­в а н и я ) для выпуска партии деталей типа I занимают 1 ч, а де­т а л е й типа II — 2 ч.
Производственное задание участку формируется в следующем
виде: 9 июня к началу первой смены поставить партию из
400 шт. деталей типа I, 12 июня к началу второй смены — 60 шт.
деталей типа II, 18 июня к началу второй смены — 400 шт. дета­лей типа I, 26 июня к началу второй смены 120 шт. деталей ти­
па II и 1 июля к началу первой смены — 200 шт. деталей типа I.
Заданные сроки поставок будем называть контрольными сроками.
Предполагается, что описанное задание сформировано в резуль­тате предварительного реш ения двух типов оптимизационных за­
дач. Во-первых, при объемно-календарных расчетах была произ­ведена оптимизация распределения месячного задания между от­дельными участками. Во-вторых, при определении точек заказаи размеров партий использовались описанные выше методы тео­рии управления запасами. К сожалению, на практике при со­гласовании работы большого числа участков не удается пол­ностью выдержать оптимальные размеры партий, удается лишьприближаться к ним, как к желательному ориентиру. Это об­стоятельство нашло место и в приведенном выше задании.
Отправным пунктом календарных расчетов является общее
количество ресурсо-часов (или ресурсо-мииут), которыми мы рас­полагаем до моментов, когда необходимо осуществлять поставку
заказанных партий продукции. В соответствии с приведенным
заданием имеются пять таких моментов (9, 12, 18, 26 июня и
1 ию ля). Поскольку мы не расчленяем участок на более мелкие
составные ч асти * ), то все его ресурсы могут рассматриваться какединый ресурс и исчисляться просто в минутах работы всего
участка. Нетрудно подсчитать, что до первого момента распола­гаем 10 сменами, или 4800 мин, между первым и вторым момен­т а м и - 7 сменами (3360 мин) и т. д. Все данные расчета приве­дены в табл. 11.1.
Определяем общий резерв времени, т. е. разность между име­ющимся и необходимым для выполнения всех заданий временем:2 0 1 6 0 — 19 0 0 0 = 1160 мин = 1 9 ч 20 мин. Допустим, что в пред­стоящем месяце необходимо осуществить плановый текущ ий ре­монт оборудования, что должно занять по нормам 12 ч. Осталь­*) Весь участок может сводиться к одному станку и одному рабочему
Месту.

ное время (7 ч 20 мин) может быть использовано на переналад­ки и создание оперативного резерва рассматриваемого участка.
Пусть к началу планового периода (т. е. 2 июня) участок былнастроен на выпуск детали I. Тогда для подготовки выпуска всехпяти заказанных партий потребуются четыре переналадки общей
продолжительностью 2 + 1 + 2 + 1 = 6 ч. Оперативный резерв
времени составит лишь 1 ч 20 мин, что означает очень плотную
загрузку участка.
Т а б л и ц а 11.1
Контрольные сроки

9 июня начало 1-й смены
12 июня начало 2-й смены
18 июня начало 2-й смены
26 июня начало 2-й смены
1 июля начало 1-й смены
Итого

Тип
деталей

I
II
I
II
I

Размер пар­тии, шт.

400
60
400
120
200

Время для выполнения за­дания, миннеобходимое

имеющееся

4 000
3 000
4 000
6 000
2 000

4 800
3 360
3 840
5 760
2 400

19 00020160

В практике планирования может встретиться и такой случай,когда этот резерв отрицателен. Тогда уменьшают общее число
переналадок, объединяя несколько партий, или плановые ремон­ты осуществляют не в рабочие смены и т. п. Разумеется, объеди­нение заказов означает отступление от оптимальных размеров
партий и, как следствие этого, дополнительные финансовые по­
тери. Может возникнуть необходимость и в сдвиге сроков поста­вок, что, как уже отмечалось выше, должно производиться лишьна основании расчета объемов потерь, возникающих при этому заказчика.
При наличии резервов времени возникает вопрос об их рас­пределении между различными подынтервалами планового пе­риода. Д ля этой цели составляется баланс времени (и ресурсов)на весь плановый период нарастающим итогом с учетом необхо­димых переналадок (табл. 11.2).
Поскольку необходимый суммарный расход времени на 26 июнялиш ь на 360 мин (6 ч) меньше наличного запаса времени, то
12-часовой плановый ремонт может быть отнесен лишь на по­следний интервал (между 26 июня и 1 ию ля). Остающийся ре­зерв времени (1 ч 20 мин) настолько мал, что вопрос о его рас­пределении по плановому периоду не имеет существенного зна­чения. При большей величине этого резерва обычно стремятся
распределить его равномерно вдоль всего планового периода, что­бы обеспечить равномерную загрузку участка и возможность
маневрирования при возникновении непредвиденных обстоя­т ел ь ст в . Наличие резервов позволяет производить загрузку обо­рудования в соответствии с экономическими критериями, сохра­н я т ь оптимальные размеры партий и минимально необходимые
размеры запасов.
Таблица

11.2---Контрольные
сроки

9 нюня
12 июня
18 июня
26 июня
1 июля

Номерпартии

12
3
5
5Время пере­наладки, мин

0
120
60
120
60

Рабочее вре­мя, мин

4000
3000
4000
6000
2000

Время от начала планового
периода, минрасход

запас

4 000
7 120
И 180
17 30019 3604 800
8160
12 00017 76020 160Когда имеется значительная вероятность появления новых за­даний, более целесообразно придерж иваться политики сохранения
резервов до момента появления этих новых заданий, с тем чтобы
облегчить возможность быстрой коррекции плана.
В рассматриваемом случае естественно принять стратегию,основанную на заданной последовательности заданий, поскольку
сделанная в табл. 11.2 раскладка времени ни к одному из конт­рольных сроков не обнаружила дефицита. Плановый ремонт, какуже было отмечено выше, относится на конец периода. Сменные
задания можно планировать непосредственно с учетом данных
табл. 11.2:
8 смен 2, 3, 4, 5 июня: выпуск 384 деталей типа I (по 48 де­талей в смену);1-я смена 6 июня: 0 —240 — выпуск 16 деталей типа I (по­ставка 400 деталей типа I ) , 240— 440 — переналадка, 440—800 —выпуск 4 деталей типа II;
2-я смена 6 июня4 смены 9 и 10 июня: выпуск 48 деталей типа II;
1-я смена 11 июня: 0—640 — выпуск 8 деталей типа II (по­ставка 60 деталей типа II досрочно), 640—740 — переналадка,740—800 резерв;2-я смена 11 июня: выпуск 48 деталей типа I;
6 смен 12, 13, 16 июня: выпуск 288 деталей типа I;
1-я смена 16 июня: выпуск 48 деталей типа I;
2-я смена 16 июня: 0 —240 — выпуск 16 деталей типа I (по­ставка 400 деталей типа I досрочно), 240—440 — переналадка,440—800 — выпуск 4 деталей типа II;

10 смен 17, 18, 19, 20, 23 июня: выпуск 96 деталей типа II;
2 смены 24 июня: выпуск 19 деталей типа II, 10 мин — ре­зерв;1-я смена 25 июня: 0 —О50 — выпуск одной детали типа Ц(поставка 120 деталей типа II досрочно), О50—800 — ремонт;2-я смена 26 июня: 0 —450 — ремонт, 450— 550 — переналадка,550—8°° — выпуск 13 деталей типа I;
2 смены 27 июня и одна смена 30 июня: выпуск 144 деталей
типа I;^ -я смена 30 июня: 0—710 — выпуск 43 деталей типа I (по­ставка деталей типа I), 710—800 — резерв.
После составления сменных заданий проводится расчет мате­риально-технического обеспечения участка. Описанными вышеметодами определяются объемы страховых запасов, размеры пар­тий и точки заказа для заготовок, материалов, инструмента и т. п.
Аналогичным образом заказываю тся вагоны и другие транспорт­ные средства для вывоза готовой продукции. Определяется ожи­даемое время поступления платежей за поставленную продукциюи на каждый день принятого планового периода рассчитывается
величина сумм по различным статьям, которая будет находитьсяна текущем счете предприятия.
Составленный план непрерывно пополняется и уточняется.
Д ля этой цели он постоянно держится на машинных носителях
(лучше всего — на дисках) в состоянии готовности. Для облег­чения работы с планом создается специальное математическое
обеспечение (специализированная операционная система), позво­ляющее пользователю быстро вносить необходимые изменения,сохраняя полную сбалансированность плана. Например, при из­менении срока выполнения задания должны автоматически из­меняться сроки поставок материалов, заготовок инструмента
и т. п. В систему должны быть включены специальные програм­мы-макрооператоры, позволяющие быстро подсчитывать различ­ные временные и технико-экономические характеристики плана.
Иными словами, нужно иметь возможность непрерывной рабо­ты с планом и принятия решений по его улучшению на основе
машинного моделирования возникающих ситуаций и предлагае­мых путей устранения возникающих трудностей. Динамичность
плана должна проявляться, в частности, в том, что в нем по­стоянно корректируются запасы времени до соответствующих
контрольных точек. Например, в табл. 11.1 на начало рабочего
дня 9 июня в первой строке последнего столбца указано 4800 ра­бочих минут до первой контрольной точки. На начало следующе­го рабочего дня эта цифра должна быть заменена на 3840 мини т. д.
Существенную роль играет связь системы планово-календар­ных расчетов с другими системами. Например, если размер стра­ховы х запасов по заготовкам деталей типа I был определен в

100 шт., а из системы технической подготовки производства по­ступает информация о том, что к концу месяца ожидается изме­нение технологии, устраняющ ей необходимость использования
детали типа I, то система должна обеспечить постепенную вы­работку накопленного страхового запаса к моменту выхода при­каза об изменении технологии.
Описанные задачи и приемы их реш ения являю тся общимидля всех производств дискретного характера. Особенность про­изводств, имеющих дело со сложными изделиями с длительными
циклами изготовления (корабли, прокатные станы и т. п.), со­стоит в том, что основу оперативно-календарного планирования
составляют сетевые графики (хотя и здесь управление заказамина сравнительно большие партии деталей может строиться наописанных при нц ип ах).
Свои особенности имеет такж е массовое производство (произ­водство холодильников, телевизоров и т. п .). Одна из важных
задач, которую приходится реш ать в этом случае,— задача на­хождения оптимального ритма производства. Смысл ее состоитв том, чтобы через промежуток времени Г, называемый цикломили ритмом работы объекта, повторялись все сменные задания,которые имели место на предшествующем цикле. Обычно стре­мятся найти минимальный цикл Гтш, выражаемый целым чис­лом смен или дней.
Для примера рассмотрим работу заготовительного участка,обеспечивающего сборочный цех деталями п различных типов.
Пусть /л — время, затрачиваемое на изготовление одной детали
г-го типа; тг — время на подготовку выпуска деталей г-го типа;— скорость расходования этих деталей на сборке(г == 1, 2, . . . , п ). Чтобы обеспечить сборку, заготовительный уча­сток за время Т должен произвести 8 {Т деталей ъ-то типа. Время,необходимое для изготовления 8 {Т изделий, равно т { + 8 {Т /р {уа суммарное время не должно превосходить Т;откуда
(11.9)

Минимальное (целое) значение Г, удовлетворяющее неравенству
(11.9), и представляет собой искомый минимальный ритм рабо-»ты рассматриваемого объекта.

При Т1 = т 2 = т3 = 0,5,Рг = 30, р 3 = 100= 10,

52 = 15,

5 3 = 20,гр \__________ 1^5____________ ________ У*^ 1 — ( 1 / 4 + 1 / 2 + 2/ 10)
1 — 0,95

= 40^

ОА

'

Это означает, что возможен минимальный ритм работы с перио­дом в 30 смен.
11.6. Программно-целевое управление
Программно-целевым управлением называется разновидность
организационного управления, направленная на достижение от­носительно небольшого числа точно очерченных целей. Первый
этап программно-целевого управления — составление программы„Суть его состоит в том, что помимо первоначально заданных конечных целей программы формулируются промежуточные (вспо­могательные) цели (называемые также подцелями), которых не­обходимо достичь прежде, чем будут достигнуты основные конеч­ные цели. Очень важно, чтобы при этом были по возможности
выделены и о б ъ е д и н е н ы все промежуточные подцели, необ­ходимые для достижения нескольких целей (основных или про­межуточных). После подобной структуризации системы целей
описываются работы, которые необходимо выполнить для их до­стижения. Производится оценка времени и ресурсов для выпол­нения описанных работ (трудовых, материальных и финансовых).
На этом этапе отдельные работы еще не привязаны ни к ка­ким конкретным срокам. Математическим аппаратом, с помощью
которого описываются составленные программы, являются сете­вые графики, описываемые ниже (§ 11.7). Специальными мето­дами определяются минимальное время и суммарные ресурсы,необходимые для выполнения программы. Если эти величины неудовлетворяют руководителя программы, производится дальней­ш ая работа по улучшению программы (в большинстве своем неформ ализуем ая). Окончательные (улучшенные) варианты про­грамм вводятся в ЭВМ.
С помощью специального программного обеспечения состав­ляющие программы работы привязываются к конкретным времен­ным интервалам. В результате такой привязки, которую мы бу­дем такж е называть проекцией, появляется возможность рассчи­тать, временные графики расходов (помесячные, поквартальные
и т. п.) всех видов ресурсов, необходимых для выполнения про­грамм. Эти графики сравниваются с наличными запасами ресур­сов на каждый интервал времени. В случае превышения требо­ваний к ресурсам по сравнению с их наличием производится
изменение проекций отдельных работ (обычно в человеко-машин­ном реж им е), составляющих программы на конкретные времен­ные интервалы. Применяя методы системной (многокритерпаль-*ной) оптимизации, описанные в § 8.12, осуществляют направлен­ное управление как проекциями работ, так и ограничениями, по­ка не получат реальный (обеспеченный ресурсами) план выпол­нения всех программ с соблюдением окончательно формируемыхв процессе системной оптимизации ограничений по времени, ре­сурсам, равномерности использования ресурсов (уменьшающейих потери) и по любым другим возможным критериям, характе­ризующим качество составленного плана реализации программ.
При управлении выполнением программ в соответствии с со­ставленными планами сохраняется д и н а м и ч е с к о е представ­ление этих планов в памяти ЭВМ. Это означает, что в ЭВМ хра­нится не только составленный календарный план работ, но ипрограммы в их первоначальном виде (не привязанном ко вре­мени) вместе с соответствующими отображениями программ напланы. В случае изменения условий в процессе выполнения пла­нов процесс системной оптимизации может быть продолжен(с соответствующей коррекцией планов). При этом динамическое
представление планов обеспечивает при любых их коррекциях
сохранение увязки всех целей и работ, предусмотренной в исход­ных программах, т. е. целостность программ.
Обеспечение целостности программ представляет собой ф ак­тически ту же самую синхронизацию работ отдельных участков,которая уж е была разобрана выше (в §§ 11.4, 11.5), но уж е при­менительно не к массовому и крупносерийному, а к е д и н и ч н о ­м у (и, возможно, к мелкосерийному) производству, а также кстроительству, реконструкциям, проектно-конструкторским, науч­но-исследовательским работам и т. п.
К ак и раньше, для обеспечения надежного выполнения пла­нов, в случае программно-целевого управления, в руках руково­дителей программ должны находиться определенные резервы,которые могут использоваться для компенсации тех или иныхотклонений в процессе оперативного управления выполнением
программ. При значительных отклонениях, а такж е при возник­новении дополнительных возможностей по улучшению планов
может производиться уж е упоминавш аяся выше коррекция пла­нов на основе продолжения процесса системной оптимизации.
Заметим, что описанная здесь общ ая схема программно-целе­вого планирования и управления несколько отличается от клас­сической американской системы П Е РТ , в которой этап планиро­вания предшествует этапу программирования (система П П Б: пла­нирование, программирование, бю джет). Впрочем, в значитель­ной мере это различие носит не принципиальный, а чисто тер­минологический характер *).
*) Под планированием ПЕРТ попимается не планирование в принятомУ нас смысле слова, а лишь предварительное располагание.

Второе замечание связано с тем, что для долгосрочных проек­тов большой сложности, в первую очередь для проектов созда­ния и внедрения принципиально новых образцов техники и тех­нологии, этапу программирования должен предшествовать этапнаучно-технического прогнозирования. С одним из методов такого
прогнозирования (принадлежащим автору), особенно удобнымдля программно-целевого планирования, мы познакомимся ниже(в § 11.8).
Еще одно замечание связано с тем, что для удобства сопря­ж ения систем программно-целевого и обычного (объемно-кален­дарного) планирования и управления вводится четкое разделение
ресурспой части управления на собственно ресурсную часть,в которую включаются рабочая сила и основные фонды (обору­дование), и материально-техническое снабжение, в которое вклю­чаются все поставки материалов и комплектующих изделий изсистем, внешних по отношению к рассматриваемым программно­целевым комплексам. В программное обеспечение автоматизиро­ванных систем программно-целевого управления вводятся средст­ва быстрого вычисления временных графиков поставок матери­ально-технического снабжения после осуществления любой про­екции программы на временную ось.
В математическое обеспечение автоматизированных систем
программно-целевого управления вводятся специальные средства,позволяющие объединять цели и работы (обычно в диалоговом
человеко-машинном реж им е), осуществляя тем самым укрупне­ние форм представления программ (сетевых граф иков). Посколь­ку исходные представления программ при этом сохраняются впамяти ЭВМ (на соответствующих уровнях системы управления),то в случае необходимости можно автоматически осуществить
разукрупнение (дезагрегацию) любого участка программы иливсей программы целиком.
11.7. Сетевые графики
Сетевые графики представляют собой математический аппа­рат для представления, изучения и управления сложными комп­лексами взаимосвязанных работ, направленных к достижению
относительно небольшого числа четко определенных целей. Н аи­более простыми являю тся одноцелевые сетевые графики, с кото­ры х мы и начнем наше рассмотрение. Целью здесь может яв­ляться окончание строительства того или иного объекта, созда­ние уникального изделия, выполнение научно-исследовательскойили опытно-конструкторской работы, завершение реконструкцииили ремонта и т. п.
Простейший пример одноцелевого сетевого графика изобра­ж ен на рис. 11.7. Сетевой график состоит из объектов двух ви­дов: узлов, обозначенных круж ками, и соединяющих их направ­ленных ребер, обозначенных стрелками. Каждому узлу соответ­ствует некоторое событие, заключающееся в окончании того илииного этапа работ, например «закладка фундамента окончена»,«технический проект принят комиссией» и т. д. Каждой стрелке
соответствует та или иная работа, понимаемая как процесс, а некак результат, например про­цесс сооружения стен, процесс
оформления эскизного проекта
и т. д. Д ля каждой работы
задается
еепродолжитель­ность, измеряемая в единицах,фиксированных для данного
графика (часы, дни, недели,месяцы ).
Смыслграфика
состоит
прежде всего в том, чтобы у ка­зать все технологические свя­зи, определяющие возможные
Рис* И-7последовательности работ. Из
рис. 11.7 видно, что работа 6 может быть начата лишь после
окончания работы 1, а работа 7 — лишь после окончания ра­
бот 3 и 4. В ряде случаев для задания связей приходится поль­зоваться так называемыми фиктивными работами, имеющими
пулевую продолжительность и обозначаемыми на графике пунк­тирными стрелками. Роль фиктивных работ легко уяснить из
рис. 11.7. Работа 7 может выполняться после окончания работ 3
п 4, а работы 5 и 9 — после окончания работ 2, 3 и 4. Если бы мыобъединили узлы III и IV, то работе 7 пришлось бы ж дать окон­чания не только работ 3 и 4, но и работы 2. При наличии ф ик­тивной работы необходимость такого ожидания исключается.
На любом одноцелевом сетевом графике выделяются два со­б ы т и я — начальное и конечное. Начальное событие (событие I)характеризуется тем, что в него не входит ии одна стрелка,а конечное (событие V I ) — тем, что из него не выходит ни однастрелка. Все остальные события носят название промежуточных.
Начальное событие соответствует началу работ (нулевой момент
времени), конечное — завершению всех работ (достижению по­ставленной цели).
Первой задачей, возникающей при анализе сетевых графиков,является определение времени наступления каждого события ивозможностей варьирования времени начала и окончания каж ­дой работы. Алгоритм реш ения этой задачи весьма прост. Пред­положим, что для графика, изображенного на рис. 11.7, продол­жительность работ задается ^1= 3; *2 = 7; ^з = 5; ^4= 3; ^> = 5;
~ 65 I-} — 3| ^8“ 2*, ^9— 6.

Событию I соответствует момент времени 7Т1 = 0. Чтобы найти минимальный срок Г* наступления любого другого события
(I ^ 2 ) , необходимо, очевидно, просчитать суммарные затраты
времени по всем путям, ведущим из начального узла в узел,соответствующий этому событию, и выбрать из них максималь­ное значение. Всякий раз, когда для какого-то события срок егонаступления установлен, можно строить дальнейшие пути, отправляясь от этого события как от начального. Для события II,
к которому ведет только один путь (работа 1), получим Г 2 == Г 1+ ^1 = 0 + 3 = 3.
Для события I II имеем два пути. Учитывая лишь работу 3,получим первое (не окончательное) значение для времени и на­ступления этого события: Г 33) = Г 1 + г3 = 0 + 5 = 5. Соответ­ствующее вычисление по работе 4 приводит к значению Г 34) == Г 2 -М 4 = 3 + 3 = 6. Наибольшее из этих двух значений идает искомый срок наступления события III: Г3 = 6.
Д ля события IV Г 42) = 7^ += 0 + 7 = 7; Г(4фикт> = Т %++ 0 = 6 + 0 = 6. Отсюда Г4 = 7. Д ля события
V Т ^( = Т %++ ^ = 3 + 6 = 9; Т17) = 7\, + *7 = 6 + 3 = 9; Г '5) = Г4 + 1 Ь == 7 + 5 = 12. Таким образом, Г5 = 12. Наконец, 7в8) = Т ъ ++= 12 + 2 = 14; Т 89) = Т ^ + 19 = 7 + 6 = 13, откуда
= 14.
Получив минимальный срок Г 6 наступления конечного собы­тия, а значит, и время окончания всех работ, мы можем, отправ­ляясь от него и выполняя описанную процедуру в обратном по­рядке, вычислить максимально возможные сроки
наступления
всех событий графика, исходя из необходимости закончить всеработы в вычисленный срок. Для конечного события полагаем
Гб = Г6 = 14. Для события V имеем Г5 = Г6 —*8 = 14 — 2 = 12.
Д ля события IV имеем две возможности (двигаясь от событий V
и V I в направлении, обратном стрелкам):Г 45) = Г 5— *5= 7 ;Г 49) = Г б — г9 = 14 — 6 = 8. Из полученных чисел необходимо,очевидно, выбрать^ минимальное, т. е. _Г4 = 7. Для события I IIполучаем Г 37) = Г 5 — Х1 = 12 — 3 = 9; 7^фикт) = 7, Таким обра­з о в Г3 = 7. Для события II= Г 5 — = 12 — 6 = 6; Г 24) == Г 3 — = 7 — 3 = 4, откуда Г 2 = 4.
При правильности вычисления время наступления_начального события всегда должно быть равно 0. Проверяем: Г*1* = Т 2 —- * ! = 1; Г ? ) = Г 4 - %2 = 7 - 7 = 0; Т[3) = Г , ~ *з = 2.
Мини­мальное значение равно 0. Таким образом, Г 1= 0, что подтверж­дает (хотя и не с абсолютной гарантией) правильность прове­денных нами вычислений.
Сведем полученные значения в табл. 11.3. Из этой таблицы
видно, что для событий II и I I I допустимо опоздание на едини­цу времени без изменения общего срока выполнения работ. Длясобытий I, IV, V, VI никакие опоздания недопустимы: лю баязадержка в их наступлении влечет за собой увеличение общего
срока всех работ. Про события, обладающие таким свойством*принято говорить, что они находятся на критическом пути.
Таблица

11.3

События
Сроки

Ь
Тг

I

II

0
0

III

IV

V

VI

3

6

7

12

14

4

7

7

12

14

Чтобы найти критический путь для каждой /-й работы, вы­числим минимально и максимально возможные сроки начала иокончания работы:ТТПП ___ гр
Г,?нач
— * р»

гттГПШ

___гр

1 .?кон — *■ р

гпах
гр
Г;нач
— 1 д

,

Ч»

грхпах
■*;кон —

1р

.

.

"Т Чя

д»

где р — событие, стоящее в начале работы /; у — в ее конце. Р е­зультаты расчетов сведены в табл. 11.4.
Таблица

11. 4

Виды работ
Сроки

Р тш
1 з начт ш ах

1

2

я

4

5

6

7

8

9

0

0

0

3

7

3

6

12

7

1

0

2

4

7

6

9

12

8

т т т
3 кон

3

7

5

6

12

9

9

14

13

т тах
1 ^он

4

7

7

7

12

12

12

14

14

3

7

5

3

5

6

3

2

6

1 з начч-Р ,1 азНОСТЬ/р т а х— -/ ;начтлгтп>тттах

;?нач — *- .?кон —

™тш п

~7р

;кон — * д

гр

■* р

.

Ч

~

О у-

дем называть резервом времени для /-й работы. Работы, у кото­рых резерв времени равен нулю, составляют критический путь.
В нашем случае критический путь составляют работы 2, 5 и 8.
Остальные работы имеют меньшие или большие ненулевые ре­зервы времени. Разумеется, при использовании сетевого граф икав качестве инструмента управления, а не только как средстваДля начального анализа, необходимо осущ ествлять регулярное
обновление информации (как об ожидаемой продолжительности
работ, так и о фактическом их состоянии) и каж ды й раз заново

вычислять все показатели. При этом может меняться не только
ожидаемое время наступления событий (в том числе и конечно­го), но и критический путь. Основное преимущество управленияна основе сетевого графика состоит в том, что внимание руко­водства может сосредоточиваться на тех работах, которые явля­ются решающими с точки зрения сроков окончания всех работ.
На этапе предварительного планирования определение крити­ческого пути сопровождается анализом возможностей сокраще­ния продолжительностей работ, находящ ихся на этом пути. Учетэтих возможностей с соответствующим пересчетом всего графика
определяет новый критический путь, для которого вновь ищутся
возможности сокращ ения сроков, и такдалее,покане будут
исчерпанывсе возможности дальнейшего улучшения графика. Эта работа должна продолж аться постоянно и в процессе
фактического выполнения работ, по­скольку здесь могут открываться новые возможности улучш ения графика,недоступные на этапе предваритель­ного планирования, либо могут возни­кать новые задачи по улучшению граРис. 11.8
фика в связи с изменениями критиче­ского пути.
При переходе от одноцелевых сетевых графиков к многоце­левым описанная выше методика временного анализа по суще­ству не меняется. Разница состоит лишь в том, что максимально
возможные сроки
наступления событий должны вычислятьсядля каждой из поставленных целей. Самый поздний из этих сро­ков определяет время реш ения задачи, т. е. достижение всехконечных целей.
Рассмотрим .двухцелевой сетевой график, изображенный на
рис. 11.8, для которого продолжительность работ задана
табл. 11.5.
Таблица

11.5

Виды работ

1

2

3

4

5

6

7

8

9

10

И

Срок (1.)

4

3

4

2

3

4

4

6

5

2

4

Действуя точно так же, как и в предыдущем примере, опреде­лим минимальные сроки наступления всех событий (табл. 11.6).
Д ля определения максимально возможных сроков
наступления
событий полагаем Т 7 — Т 1 = 12; Г8 = Г 8 = 14. Обозначим через
Г^У11) и 71УШ) максимально возможные сроки наступления собы-

!

|
;
1

тия I с точки зрения задач достижения отдельно взяты х целей
V II и V III соответственно. Тогда
— 00 > поскольку дости­жение цели V II не_ требует наступления события VI. С другой
стороны, Т бУШ) = Т 8 —= 10. Максимально возможный срокнаступление события VI с точки зрепия достижения обеих це­лей равен 716 = Ш1п(оо? 10)== 10.
Таблица

11. бСобытия

I

11

III

IV

V

VI

VII

VIII

Срок (Г.)

0

4

3

8

6

7

12

14

Для события V получаем
275У11> = Т 7 — = 12 — 5 = 7;
Г<у ш > =_ *10 = 12. Тогда Г 5 = ш т ( 7 , 12) = 7. Продолжая
таким же образом, находим сроки Т { для всех событий
(табл. 11.7).
Таблица

11.7

События

I

II

III

IV

V

VI

VII

VIII

Срок (Т. )

0

4

4

8

7

10

12

14

Для вычисления минимально и максимально возможных сро­ков начала и окончания работ можно пользоваться теми же фор­мулами, что и раньше, если речь идет о^ достижении обеих це­
лей. Зам еняя в формулах 7\ на Г*х11) и 7Т*УП1), находим соответ­ствующие сроки с точки зрения задач достижения каждой
изцелей V II и V III в отдельности. Например,/ттГШП

___ гр

лггчпах ___ 7 р.

1 4нач — 1 §

*4 —

___ /

1 4нач — 1 2 —т(У 1 1 )таХ___* 4нач/х » (У 1 1 )— 15^ (У П П ш ах =

^ Ш

)

.

Ь
— г

гч

г.

___

су

г

^

Э

4 = 12 — 2 = 10.

Соответственно,/тпГП1П __ гр
1 4К011 —.
2I__ О .

*4 — ог (У Н )ш ах
т(У Щ* 4НОН
— 1 5—

О___ г .

/тт'пах __ Тр___6 — О,

1 4КОН —5— «5/ т т ( У Ш т а х _ _ т ( У III) _ _• 1 1 4НОН
—
5
—
7 .

Аналогичным образом вычисляем сроки для всех остальпых
работ.
До сих пор при рассмотрении сетевых графиков мы имели
дело с проблемами, касающимися лишь сроков выполнения н
в. М. Глушков

продолжительностей работ. Гораздо более трудными являю тсяпроблемы, связанные с распределением ресурсов при планирова­нии и управлении на основе сетевых графиков. Такие проблемы
сводятся к задачам нелинейного целочисленного программиро­вания весьма большого объема, решение которых представляет
большие трудности даже при использовании самых мощных
ЭВМ. Поэтому на практике ограничиваются упрощенными по­становками задачи и частичной оптимизацией, без гарантии до­стижения абсолютного оптимума.
Для лучшего уяснения сущности проблем, встающих в связис оптимизацией распределения ресурсов при планировании иуправлении на основе сетевых гра­фиков, рассмотрим следующий
пример. Пусть совокупность под­лежащих выполнению работ опи­сывается сетевым графиком, изо­браженным па рис. 11.9. Предпо­ложим, что имеются всего дваресурса: П { и Н2, которые подле­ж ат распределению (рабочие двухг Рис. 11.9
специальностей или оборудование
двух различных видов).
На всем протяжении работ располагаем двумя единицами
первого ресурса (например, двумя бригадами рабочих) и тремя
единицами второго ресурса. Предположим, что время работ ис­числяется месяцами, а затраты ресурсов (в ресурсо-месяцах)для работ 1, 2, . . . , 12приведены в табл. 11.8. В последнем
столбце указаны суммарные затраты, необходимые для выпол­нения всех работ. Деля эти затраты на имеющиеся в наличии

Ресурсы

Я1

1

2

3

2
3

4
3

6
0

Виды работ
|1
1
11
1 5 |1 6 7 8
11 ^ |

2
3

0
3

2
0

2
3

2
3

Т а б л и ц а

11.8

9

10

11

12

X

0
3

2
0

2
3

4
0

28
30

ресурсы, получим минимальное время для выполнепия всех р а­бот: 7\ = 28/2 = 14 мес.; Т 2 = 36/3 = 12 мес. Критическим ресур­сом (ограничивающим снизу срок выполнения работ) в данном
случае будет Д 4. Минимально возможное время выполнения всехработ Т ^ 14 мес. Это время представляет собой теоретический
предел для оптимизации плана выполнения работы (пе всегда
достижимый).

Составляем начальный план, при котором соблюдается техно­логическая последовательность выполнения работ, заданная рас­сматриваемым сетевым графиком. В нашем случае в качестве
такого плана может быть принято, например, последовательное
выполнение всех работ в порядке роста их номеров. При этомкаждый раз все имеющиеся ресурсы полностью направляются навыполнение одной работы и лишь после ее окончания перебра­сываются на следующую.
Для первой работы как по первому, так и по второму ре­сурсу времяее выполнения одинаково и равно 1 мес. Потерь
ресурсов (простоев) при этом нет. При выполнении второй р а­боты критическим является первый ресурс. Вычисленное по не­му время исполнения работы
равно 4/2 = 2 мес. По второму
ресурсу при работе в течение этого срока располагаем 3 X 2 = 6ресурсо-месяцами. Поскольку фактически для выполнения второй
работы требуются лишь 3 ресурсо-месяца, то по ресурсу В 2 обра­зуется потеря, равная 6 — 3 = 3 ресурсо-месяцам. Продолжая
аналогичным образом, сведем время, а такж е суммарные затра­ты и потери ресурсов при выбранном порядке выполнения ра­бот нарастающим итогом в табл. 11.9.
Т а б л и ц а 11.9
Виды работ
Показатели

1

2

3

4

5

6 1

7

8

9

10

11

12

Затраты К г
Я2

2
3

6
6

12
6

14

14
12

16
12

18
15

20
18

20
21

22

9

27

24
30

28
36

Потери Их
я2

0
0

0
3

0
12

0
12

2
12

2
15

2
15

2
15

4
15

6
15

6
15

6
15

Время

1

3

6

7

8

9

10

11

12

14

15

17

Очевидный недостаток построенного плана состоит в том, чтопроисходят потери критического (первого) ресурса. Именно врезультате этих потерь полученный срок выполнения работ
(17 мес.) на 3 мес. больше, чем теоретически допустимый предел.
Предположим, что ресурсы /?! и В 2 допускают независимое
использование и при выполнении любой работы могут расходо­ваться в любом п о р яд ке* ). Основная идея по улучшению на­чального плана при таком предположении состоит в том, чтобы
*) Взаимозависимые ресурсы, например каменщики и подъемные ме­ханизмы, обычно объединяю тся в единый комплексный ресурс. Если работа
Допускает использование ресурсов только в одном порядке, то ее следует
свести к нескольким работам, введя новые события на исходном сетевом
графике.

начинать использование освободившегося ресурса для выполне­ния последующих работ, не дожидаясь полного высвобождения
всех ресурсов. Очевидно, что такая тактика приведет к успехулиш ь в том случае, когда работа, в которой начинается исполь­зование освободившегося ресурса, является критической в отно­шении именно этого ресурса. Это достигается изменением по­рядка выполнения работ, разумеется, при строгом соблюдении
условий очередности работ, вытекающих из исходного сетевого
графика.
Для облегчения выбора надлежащей очередности выполнепия
работ разделим их на три группы: критичные по первому, повторому и по обоим ресурсам. В первую группу попадают рабо­ты 2, 3, 6, во вторую — работы 5, 9, 10 и в третью — работы 1,
4, 7, 8, 11, 12. Работы последней группы могут выполняться влюбое время, допускаемое исходным сетевым графиком, не созда­в ая нежелательных потерь ресурсов. Проблема состоит в опре­делении правильной последовательности работ первой и второй
групп.
Т а б л и ц а 11.10
Г.ИДЫ раГч)т
Пока затсли

Время начала ис­пользования
ресурса Н1Время окончания
использования
ресурса /?!
Время начала ис­пользования
ресурса /?2Время окончания
использования
ресурса / ? 2Время начала ра­ботыВремя окончания
работы
Использование /?,Потери
/?2

1

о

5

4

7

6

9

о*

10

9

п

12

0

1

3

3

4

5

6

6

9

10

И

12

1

3

3

4

5

6

6

9

10

11

12

14

0

1

2

3

4

5

5

6

6

10

11

12

1

2

3

4

5

5

6

6

8

И

12

14

0

1

2

3

4

5

5

6

6

10

И

12

1
2
3
0

3

3

6

6

10

12

20

9

12

15

И
22
27

12
24
30

14
28
36

0

0

0

0

0

0

0

0

0
0

15
0
0

12
18

9
18
18

10

6

4
8

5

6
6

3

б

0
6

0
6

0
6

0

0
0

24

Поскольку при выполнении второй работы образуется резерв
3 ресурсо-месяца по ресурсу Я 2, то желательно; не дожидаясь
окончания этой работы, начать критичную по Я 2 работу, в ко­торой этот ресурс желательно полностью использовать. Такой
является, очевидно, работа 5. Для работы 3 такими могут бытьработы 5, 9, 10, а для работы 6—9, 10. Одним из возможных

решений, дающих требуемую очередность, служит последова­тельность выполнения работ 1, 2, 5, 4, 7, 6, 9, 3, 10, 8, И , 12,для которой все показатели приведены в табл. 11.10.
В рассматриваемом случае удалось достичь теоретического
предела для времени выполнения работ и полностью избежать
потерь критического ресурса. Нетрудно понять, что поскольку
речь идет о нахождении надлежащей перестановки исходного
порядка выполнения работ, то вместо примененного приема уга­ды вания нужного порядка можно применить общий метод дина­мического программирования, аналогичный тому, который былприменен в задаче о коммивояжере. Отличие состоит лишь втом, что рассмотрению подлежат не все возможные подстанов­ки, а только те, в которых последовательность работ удовлетво­ряет требованиям исходного сетевого графика.
В общем случае при оптимизации использования ресурсов
приходится рассматривать возможности параллельного выполне­ния работ, что еще более усложняет задачу.
11.8. Целевое прогнозированиеМы рассмотрим лишь одну, принадлежащую автору, модель
целевого прогнозирования. Чтобы проще уяснить себе сущность
модели, рассмотрим ее в конкретной интерпретации — как зада­чи прогнозирования научно-технического прогресса. Предполо­жим, что требуется оценить вероятное время и пути решения
некоторого числа нерешенных научно-технических проблем
$ 1, $2, . . $т . Среди них могут быть как проблемы прикладного
характера (например, проблема повышения производительности
труда в угольной промышленности в 10 р аз), так и абстрактные
проблемы (например, построение единой теории поля). Пред­положим далее, что каждой из указанны х проблем
приписан
некоторый весовой коэффициент А,*, определяющий относитель­ную важность этой проблемы по сравнению с остальными (&== 1, 2, . . . , га). Поставим в качестве цели решение всех указан­ных проблем, а в качестве критерия качества управления —минимизацию суммыгде т* — срок, потребовавшийся дляреш ения проблемы $« при заданных суммарных ресурсах В , от­пущенных на решение всех этих проблем.
П ервоначальная структуризация проблемы состоит в том,чтобы дополнить список поставленных проблем
$2, .
.
на­
зываемых далее конечными или основными целями, новыми
проблемами — промежуточными целями $т+1, . . . , $т+п, решение
которых может оказаться необходимым или полезным для дости­ж ения конечных целей. Параметризация состоит в приписыва­нии каждому из выделенных элементов
двух булевых пара­метров а г(*),( г — 1, 2, . . . , т + п), из которых первый ха30 В. М. Глушков

рактеризует состояние элемента (проблема
решена или не ре­ш ена), второй — управляющее воздействие (проблема з* постав­лена в план и финансируется или нет). Введем такж е оценку
вероятности /?*(2) того, что к моменту времени I проблема
ока­ж ется решенной, т. е. вероятность того, что а* (2) = 1 (2 = 1, 2,
т + п ).
С целью установления зависимости между параметрами длякаждой проблемы з, привлекается группа экспертов, формулиру­ющих условия, состоящие в том, что некоторые из целей
з^считаются уже достигнутыми, и дающих оценки времени и до­стиж ения цели 5,- после выполнения поставленного условия. Этаоценка может производиться для нескольких различных величин
ассигнований
которые могут быть отведены для реш ения про­блемы з„ так что 1г являются в общем случае функциями от у».
В результате возникают зависимости между параметрами ас
аг(1) = ац(1; — и)агг(1 — и ) . . . а г к {Ь — и).

( 11.10)Для каждого 2 будет получено несколько таких зависимостей*в соответствии с числом привлеченных экспертов (некоторые
зависимости могут, разумеется, совпадать, но нам все равно
удобно считать их различными). К аж дая из зависимостей полу­чает весовой коэффициент гу, где 2 — номер цели, / — номер
эксперта в группе, оценивавшей эту ц е л ь * ). Из зависимостей
вида (11.10), установленных различными экспертами, получаем
следующую очевидную формулу для вычисления вероятности:I)
2 г аРщ (1~ 1а) Рц% (1- *«) • • • Р ш (1~ 'у)— ------------------------Т)------------------------------ * (11.11)
2 ги
3=1

где г/1, 2/2, . . 1]к] — номера промежуточных целей, выдвину­тых /*-м экспертом в качестве условия достижения цели з*, а че­
рез %ц обозначена его оценка времени достижения цели з* поело
выполнения поставленного условия.
Д ля того чтобы по уравнениям вида (11.11) можно было по­следовательно найти функции р*(2) для всех целей з* (2 = 1, 2, . . .
... , т + п ), нужно в процессе построения модели произвести
дополнительные уточнения. Один из возможных путей заключа­ется в том, чтобы, вводя новые вспомогательные цели и допол­нительно работая с экспертами, добиваться расслоения всех це­
лей (как конечных, так и вспомогательных) на пересекающиеся
множества М 0, Л/1} . . . , М Р. Множество М 0 составляется из целей,имеющих лишь безусловные оценки времени своего достижения.
*) Процедура подсчета г ц включает в себя самооценку эксперта, егооценку другими экспертами и ряд дополнительных приемов.

Д ля целей в любом из множествв качестве условий могут
выступать лишь цели из множеств М 0, М и ..., Мг- 1 ( 2 = 1, 2, . . .
. .. , р). При выполнении этого требования формулы (11.11)
оказываются достаточными для вычисления вероятностей р*(0для всех целей при всех значениях I (с некоторым интервалом
дискретности).
Чтобы лучше уяснить себе сущность таких вычислений, рас­смотрим простейший пример. Пусть нам заданы две конечные
целии $2 с весами 2 и 1 соответственно и две вспомогатель­ные цели 53 и $4, каж дая из которых оценивалась двумя экспер­тами. Данные оценок сведены в табл. 11.11 (для простоты пре­небрегаем здесь зависимостью оценок времениот размера вы­деляемых ассигнований).
Т а б л и ц а 11.11
ЦелиЭксперты
Условные
Оценки вре­мени, 1.
Вес Г1 -*Ч
1 2(*2* Ф ( 53» Ч)

Ч
1 2(53> ф ( 5з)

5з
1 2
—
Ы

1 2
—

2 3
3 2

2 4
2 3

1 2
1 3

2 3
3 2

Из табл. 11.11 непосредственно видно, что цели распадаютсяпа слои М 0 (цель $4), М 1 (цель $3), М 2 (цель $2),(цель $4).
Ф ункции рг( 1 ) будем задавать векторами (д*(0), р»(1), р,*(2),Рг(3), . . . )• Н ачиная с некоторого *, все р {( 1 ) в этих векторах
равняю тся 1 и в этих местах векторы могут быть оборваны (ибонедостающие компоненты при необходимости легко могут бытьвы писаны ). Если при оценке цели эксперт не выдвинул никаких
условий, то произведение Гцр{ п ( 1 — и , ) . . . р т ( 1 — из) в уравнениях
(11.11), очевидно, должно быть заменено на—где<?(*) = О при * < 0 и ()(* )= 1 приВ таком случае имеем

= | (0; 0; 1; 1) + | (0; 0; 0; 1) = (0; 0; 0,6; 1);Р з(0 =

— 2) +*) =- 4 (0; 0; 1; 1; 1) + ± (0; 0; 0; 0,6;

р%( о =—

1) = (0; 0; 0,75; 0,9; 1);2>р* — 2) + т РзV— 4) == (0; 0; 0; 0; 0,18; 0,36; 0,85; 0,94; 1);

Рх ( 0 =уР, (* - 2) р , (* - 2) + | Ря (* - 2) р 4 (I -3) == (0; 0; 0; 0; 0; 0,18; 0,47; 0,61; 0,91; 0,97; 1).

>Полученные данные могут быть использованы для прогноза
наиболее вероятного времени достижения каждой из рассматри­ваемых целей. Обычно в качестве такого времени принято счи­тать медиану распределения, т. е. время I, для которого вероят­ность рг( 1 ) равна 0,5. Если считать, что между найденными
точками вероятность Рг( 1 ) меняется по линейному закону, к акуказано для случая рь{ 1 ) на рис. 11.10, то медианы N 1 рас­пределений рг( 1 ) будут
равны
N 1= 6 14 ^ 6 , 2 1 ;5 4^ 5,29;N 0 == 1^ 1,67;N = 1—
1в

1,83.

N . =

Степень неопределенности прогноза характеризуется обычпот ак называемыми квартилями: нижний квартиль (?г есть значе­ниепри котором />,(*) = 0,25, а для верхнего квартиля (имеем р (<?1) = 0,75. Нетрудно подсчитать, например, что=5•*3= 1 ^ ^ 1,42, (?4 = 2 ^ 2,38. В качестве единой меры неопре­деленности А(?г может быть выбрана разность (?г — (?г. Д лячетвертой цели эта разность равна Д(?4 = 23/24 « 0,96.
Д ля уточнения прогноза экспертиза делается непрерывной:всякий раз, когда тот или иной эксперт изменяет свое мнение,он посылает соответствующее сообщение в систему, где каж дыйраз осущ ествляется пересчет функций распределения р*(*). Что­бы ускорить процесс улучш ения прогноза, производится ранж и­ровка целей (как основных, так и промежуточных) в соответ­ствии с их информационной значимостью. Наибольшей информа­ционной значимостью обладают цели, для которых уточнение
прогноза вызывает наибольшее уточнение прогноза для основ­ных целей.
Количественной мерой информационной значимости 1-й целиможет служить специальный коэффициент Л, вычисляемый сле­дующим образом. Прежде всего, распределение /?<(*) заменяется
дельта-распределением р^Ь) с той ж е самой м еди ан ой ^гО М О )= *= 0 при К N 1 1 1 Рг(Ь)=*1 приД ля основных целей
$1, . • 8 т вычисляются уменьш ения й) разностей Д()< между
соответствующими квартилями (/ = 1, 2,т ) щТогда величину
т

/

т

М / 2
I

2=1

к

естественно принять за меру информационной значимости г-й
цели. Понятие информационной значимости помогает концентри­ровать внимание на тех целях, по которым уточнение прогноза
является наиболее важным. Сам процесс уточнения может ис­пользовать различные процедуры дополнительного обращения кэкспертам, целенаправленное снабжение их информацией, про­ведение совещаний с соответствующими группами экспертов
и т. п.
Близким к понятию информационной значимости является
понятие значимости цели (по срокам). По определению, коэф­фициентом значимости г-й цели называется величинагде А^N^ — приращение медианы распределения РзЦ) при усло­вии сдвига вправо на один временной интервал распределения
Рг( 1 ), т. е. при замене функции р*(г) функцией Рг( 1 — 1).
В рассмотренном выше примере для вычисления коэффици­ента значимости 23 необходимо, сохранив распределение р4(0>заменить распределение Рз{1) = (0; 0; 075; 09; 1) на Р з ( 0 в (0;0; 0; 0,75; 0,9; 1). Тогда
Ръ (0 ~ “§■ Рз2) р 42) + у Рз4) == | (0; 0; 0; 0; 0; 0,75; 0,9; 1) (0; 0; 0; 0; 0,6; 1) ++ А (0; 0; 0; 0; 0: 0; 0,75; 0,9; 1) == (0; 0; 0; 0; 0; 0,3; 0,36; 0, 85; 0,94; 1);Р 1 (0 = - | Р-2 (* — 2) р4 (I — 2) + А р '3 (I — 3) р 4 (I — 3) == | (0; 0; 0; 0; 0; 0; 0; 0,3; 0,36; 0,85; 0,94; 1) X
X (0; 0; 0; 0; 0,6; 1) + - |( 0 ; 0; 0; 0; 0; 0; 0,75; 0,9; 1) X
X (0; 0; 0; 0; 0; 0,6; 1) == (0; 0; 0; 0; 0; 0; 0,3; 0,54; 0,62; 0,91; 0,96; 1).
Отсюда N 1 = 6 А ~ 6,83; АТ* = 6 у « 6,29. Поскольку Я.1= 2,= 1, то

=Коэффициенты значимости п р о м е ж у т о ч н ы х целей мо­гут употребляться для выбора начальных участков путей дости­ж ения к о н е ч н ы х целей, когда прогноз еще не доведен дотакой степени точности, чтобы был возможен однозначный выбор
всего оптимального пути. В самом деле, нетрудно понять, чтоцели с большими коэффициентами значимости являются наибо­лее полезными (а возможно, даже и необходимыми) для дости­ж ения конечных целей. Поэтому, когда неопределенность про­гноза еще не позволяет выбрать оптимальные пути для дости­жения конечных целей, задача управления переформулируетсяи временной целью управления может стать достижение наибо­лее важных промежуточных целей.
Еще в более непосредственном виде такая временная под­мена целей может быть достигнута введением весов для всехпромежуточных целей. Эти веса мы будем обозначать через
р ($ й). По определению,т

И' (^й) = 2 ^гРНн
2=1
где А,*-—вес г-й основной цели; р {к — вероятность того, что приее достижении окажется необходимым предварительно достиг­нуть к-ю промежуточную цель. Поскольку основные цели такж емогут выступать в качестве промежуточных (как, например,цель в рассмотренном примере), им могут быть приписаны, кро­ме исходных базовых весов Аг, такж е относительные веса р ($ г).
Для примера, рассмотренного выше, легко получаем р ($ 1) = Х1,
р. ($2) = 0,6^1 + Кг, Р (*з) = И (*4) =**,! + Х2.

Управление в описанных моделях состоит в переводе тех илииных целей в реальный план. Планом можно, разумеется, счи­тать и саму исходную модель, однако, благодаря наличию в нейальтернативных путей, при этом пришлось бы достигать многих
промежуточных целей, которые впоследствии могут оказаться
ненужными. Таким образом, сущность управления состоит в вы­боре альтерпатив (одной или нескольких) для достижения каж ­дой конечной цели. Эти альтернативы характеризуются множе­ствами всех целей, которые надо достичь в процессе достижения
данной цели.
Основанием для выбора той или иной альтернативы служаттри основных момента. Главным является степень уверенности,что дапная альтернатива приведет к рассматриваемой конечной
цели. Основанием для такой уверенности могут служить прежде
всего достаточно высокая вероятность данной альтернативы (за­висящ ая, в частности, от числа высказавш ихся за нее экспертов)и степень согласованности мнений экспертов, высказавш ихся заэту альтернативу. Мерой указанной согласованности может слу­жить разность Д(?г между квартилями распределения времени
достижения (конечной) целипри учете только рассматривае­мой альтернативы (с отбрасыванием всех остальных).
В рассмотренном выше примере для достижения конечной
цели имеем две альтернативы: ($3) и ($3, $4). Вероятность пер­вой из них равняется, очевидно, произведению вероятностей до­стиж ения $2 без $4 и $3 без $4, т. е. у

= 20 “ 0,45, а вероят­ность второй — ее дополнению до 1, т. е. 0,55. Распределение попервой альтернативе выразится функциями />з (0 = (0»01),/^ (0 =»8=8 Рз(* — 4) = (0; 0; 0; 0; 0; 0; 1; 1). Хотя степень неопределен­ности здесь равна нулю, это, разумеется, не. может служить
основанием для выбора первой альтернативы ввиду ее невысо­кой вероятности.
Вторым основанием для выбора альтернативы (после степе­ни уверенности) служит обычно ожидаемое время достижения
заданной конечной целипри отбрасывании всех прочих аль­тернатив (медиана распределения р<(*))- Третьим основанием
служ ат оценка затрат для достижения целипри данной аль­тернативе и мера ее неопределенности (среднее квадратичное
уклонение или разность между квартилями). Оценки затрат
Н ( 8 {) производятся экспертами для каждой цели 5* (как основ­ной, так и промежуточной) без включения затрат на достижение
промежуточных целей, выдвинутых в качестве условий. В этомслучае /?($,) можно считать независимыми случайными величи­нами и оценивать общие затраты по каждой альтернативе сум­мой затрат на все входящие в нее цели.
Выделение и оценка альтернатив могут производиться такж едля любых групп конечных или промежуточных целей. Так, не­трудно видеть, что в рассмотренном выше примере для группы
($!, з2) существует единственный вариант ($4, $2, $з, $4), требую­щий достижения всех рассматриваемых целей.
В случае, если не имеется достаточных оснований для выбо­ра единственной альтернативы, для осуществления управления
можно применять два основных приема. Один из них уже былописан выше — он заключается во включении в план ближайших
целей с наибольшими коэффициентами значимости (или с наи­большими относительными весами) без предопределения после­дующего развития плана. Второй прием заключается в объеди­нении близких альтернатив (отличающихся небольшим числом
элементов). Например, альтернативы ($ь $3, $5, $6) и ($4, $4, $5, «в)могут быть объединены в один вариант ($ь $3, $4, $5, $6). Длявозможности такого объединения существенно, чтобы цели, ко­торыми различаются объединяемые варианты (в данном случае
$3 и $4), имели сравнительно невысокие затраты для их реали­зации.

11.9. Объемно-календарное планированиеПри описании методов объемно-календарного планирования
(равно как и оперативно-календарного планирования) обычно
специфицируют это описание в зависимости от уровня планиро­вания (предприятие, объединение, главк, министерство) и отвида производства (непрерывное, дискретное, мелкосерийное,массовое и т. п.). Объем книги, однако, не позволяет провести
подобное описание во всей его полноте. Остановимся поэтомулиш ь на основных принципах объемно-календарного планирова­ния применительно к некоторой абстрагированной модели эконо­мического объекта (безотносительно его конкретной специфики).
Прежде всего, всякий экономический объект для организации
материального производства располагает некоторыми ресурсами,которые мы будем подразделять на два класса: трудовые ресур­сы (рабочие разных специальностей) и основные фонды (рабо­чие помещения, оборудование, земля, продуктивный скот и др.).
В соответствии с принятым режимом работы (сменность, выход­ные дни, отпуска), а такж е планами изменения ресурсов (набори подготовка рабочих, ввод в действие новых фондов, замена идемонтаж устаревшего оборудования) на заданный плановый
период Т вычисляется общее количество р е с у р с о - ч а с о в , ко­торым будет располагать предприятие (по каждому виду ресур­с а ). Вектор располагаемого числа ресурсо-часов по всем видам
ресурсов обозначим через Ь.
При построении систем автоматизации планирования необхо­димо иметь программное обеспечение, которое в диалоговом ре­жиме управляет возможными изменениями вектора Ъ. С этойцелью планы (целевые программы) работ, направленные на из­менение ресурсов (капитального строительства, реконструкций,подготовки кадров и т. п .), представляются (в памяти ЭВМ)в виде сетевых графиков. В руки же лиц, осуществляющих диа­лог, даются средства, позволяющие изменять проекции этих гра­фиков в заданный плановый период Г. Под проекцией здесь,как и выше (§ 11.6), понимается задание конкретных значенийдля моментов времени начала и конца каждой работы сетевого
графика. Разумеется, при этом предполагается сохранение взаи­мозависимостей сроков окончания одних работ и начала других
(технологической последовательности работ), определенных ис­ходным сетевым графиком. В равной мере предполагается, чтосроки выполнения работ в их реальных проекциях в плановый
период не выходят за рамки первоначальных оценок их мини­мальных длительностей.
После задания проекции программное обеспечение должно
автоматически рассчитывать графики и суммарные расходы ре­сурсов и материалов всех видов на выполнение всех работ гра­фика, попавших в плановый период Г. Вычисляются такж е,в пределах планового периода, определяемые сделанными про­екциями сроки полного окончания работ, приводящих к измене­ниям тех или иных ресурсов основного производства и количе­ства часов, которые эти ресурсы должны отработать до конца
планового периода. Тем самым вектор Ъ располагаемого числа
ресурсо-часов оказывается заданным полностью и притом д и н а ­м и ч е с к и (со всеми возможными вариациям и).
Далее, в соответствии со спецификой рассматриваемого эко­номического объекта определяется и запоминается в ЭВМ но­менклатура продукции, которую он м о ж е т (но не обязательноб у д е т ) производить. Для каждого вида продукции фиксиру­ются предполагаемые единицы ее измерения (штуки, тонны, руб­ли и т. д.), а такж е таблицы и алгоритмы (программы, пользу­ющиеся этими таблицами) для перевода количества продукции
разных видов из одних единиц измерения в другие.
Следующий вид информации, необходимый для планирова­ния,— технологические карты, описывающие технологию произ­водства различных видов продукции на данном экономическом
объекте. В карте указы вается прежде всего последовательность
технологических операций на рассматриваемом объекте для про­изводства соответствующего вида продукции. Удобным средствомдля представления таких последовательностей являются сетевые
графики. Для каждой операции указываю тся (в расчете на однуединицу выпускаемой продукции) нормы расхода ресурсо-часов
всех видов, используемых в данной операции (обычно агрегиро­ванны е), а такж е нормы расхода материалов и комплектующих
изделий в данной операции. У казываю тся такж е минимальные
технологические сроки выполнения каждой операции (которые
нельзя уменьшить за счет любой возможной концентрации ре­сурсов), а такж е (в случае серийного и массового производства)рациональные размеры партий поставляемой и выпускаемой
продукции и размеры страховых запасов.
Для структурированных экономических объектов, которые
разбиваются на отдельные подразделения (предприятия, цехи,участки), имеющие свои собственные планы у технологические
карты выделяют группы операций, выполняемые отдельными
подразделениями. Заметим, что в соответствии с общей концеп­цией ведения нормативного хозяйства, описанной в предыдущей
главе, прогнозные (ориентировочные) технологические карты
должны составляться на самых ранних стадиях проектирования
новой продукции и будущей технологии ее производства. Всеони должны находиться в памяти ЭВМ и уточняться по мерепродвижения разработок новых технологий и соответствующей
подготовки производства (создания необходимых инструментов,обучения рабочих и т. п .). При изменениях структуризации

объекта соответствующие изменения в группировках операций
такж е должны немедленно вноситься в технологические карты.
В программное обеспечение описанной технологической базыданных вводятся описанные в предыдущей главе процедуры
агрегации и дезагрегации нормативов. Заметим, что при агрега­ции в один (агрегированный) вид продукции может объединяться
несколько видов продукции специфицированной номенклатуры,например легковые автомобили разных марок, костюмы раз­личных размеров и фасонов и т. п. Другой вид агрегации пред­полагает нахождение средних нормативов на производство одногои того же вида продукции, выполняемого с помощью различны хтехнологий. К ак известно, средний (агрегированный) норматив дполучается изчастных
(специфицированных)нормативовуп по формуле
1 > = 2

г=1

«г? ..

2 « г

=

1-

(1 1 .1 2 )г=1Здесь через а* обозначены относительные доли производства от­дельных специфицированных продуктов (или специфицирован­ных технологий) в производстве агрегированного продукта заданный плановый период Т. При оптимизации планов коэффи­циенты ос* могут служить управляемыми параметрами, разумеет­ся, лишь в том случае, если состав оперативного продукта незадан жестко вышестоящими плановыми органами.
Особенно важно подчеркнуть значение коэффициентов
иформулы (11.12) при агрегации технологий производства одногои того же вида продукции или последовательно улучшаемогопри переходе к новым технологиям. В таком случае управление
агрегацией (т. е. коэффициентами а,-) представляет собой длярассматриваемого объекта по существу управление научно-тех­ническим прогрессом. В случае, когда речь идет о выборе между
технологиями, уже с у щ е с т в у ю щ и м и на объекте, мы имеем
дело просто с расчетной задачей (выбора значений коэффициен­тов а*). Будем называть такой выбор прямым управлением агре­гацией.
Еще более важ ен случай, когда речь идет о вновь внедряе­м ы х технологиях. Подобный процесс неизбежно связан с допол­нительными затратами (инвестициями) на разработки, подготов­ку производства, закупку нового оборудования, реконструкциюп даже на новое строительство. В этом случае имеет место про­цесс косвенного управления агрегацией, поскольку выбор коэф­фициента, определяющего относительную долю работы, выпол­няемой по новой технологии, зависит от длительности функцио­нирования этой технологии на рассматриваемом объекте. В своюочередь эта длительность определяется сроками окончания ра­бот по внедрению данной (2-й) технологии и следующей, более

совершенной ( ( г + 1 ) - й ) технологии. Тем самым управление
агрегированным нормативом идет не непосредственно, а через
систему управления инвестициями (разработками, подготовкой
производства, капитальным строительством и т. п .). В резуль­тате выбор направления инвестиций, планирование и управле­ние этим процессом на рассматриваемом объекте оказываются
подчиненными в конце концов задаче улучш ен и я нормативов
основного производства на этом объекте.
Тем самым вместо обычных (последовательно развертывае­мых во времени) д и н а м и ч е с к и х моделей производства дляучета влияний на него инвестиций предлагается необычный сточки зрения эконометрики подход проекции динамики в стати­к у . Смысл его состоит в том, что через агрегированные по пе­риоду планирования нормативы динамические (развернутые вовремени) планы инвестиций оказывают влияние (вычисляемоепо формуле (11.12)) на с р е д н и е технико-экономические по­казатели о с н о в н о г о производства по всему плановому перио­ду Г. Разумеется, этот плановый период можно произвольным
образом варьировать, получая, в частности, любые разбивки
планов основного производства по подпериодам. В результате
такой разбивки окончательное представление планов основпого
производства может быть выполнено в динамическом виде. Ины­ми словами, чисто объемные планы (по всему периоду Т) могут
быть доведены до уровня объемно-календарных планов (пяти­летний план разбит на годовые, годовые на квартальные и ме­сячные и т. п.).
К ак известно, в эконометрике (математической экономике)при работе с инвестициями используются динамические модели,развертывающие процесс функционирования рассматриваемого
экономического объекта во времени в соответствии с динамикой
инвестиций. При этом нормативы д* являю тся не постоянными
величинами, а функциями времени (зависящими от динамики
инвестиционных процессов), что делает задачи оптимизации вподобных моделях чрезвычайно сложными. По существу, напрактике для сколько-нибудь сложных объектов речь идет о за­дачах динамического программирования в пространствах столь
большой размерности, что точные методы оптимизации даже приусловии применения самых мощных ЭВМ оказываются попросту
неприменимыми. Попытки упрощать задачу за счет сильной
агрегации моделей превращают эти модели из реального инстру­мента планирования в лучшем случае в средство для предпла­новых ориентировок, которые могут служить, как правило, лишьдля чисто к а ч е с т в е н н ы х , а не точных к о л и ч е с т в е н н ы хрешений.
Предлагаемый метод проекции динамики в статику представ­ляет собой по существу математическое оформление традиционно

сложившегося на практике метода, когда этап объемного плани­рования предшествует этапу календарной разбивки планов. Приэтом оптимизационные расчеты резко упрощаются, поскольку накаждом этапе планирования приходится иметь дело с постоян­ными нормативами и в основном с линейными (или близкимик ним) моделями. Что же касается управления нормативами,в чем как раз и состоит основная задача оптимизации, то оновыполняется целенаправленным (после выяснения степени важ ­ности возникающих ограничений) изменением границ областей
оптимизации, как это предусматривается в общей методологии
системной оптимизации (§ 8.12). В данном случае соответству­ющие границы (зависящие от средних значений нормативов)определяются направлениями инвестиций и сроками их реали­зации. Хотя при этом, как и вообще при использовании методов
системной оптимизации, вообще говоря, не получается абсолют­ного оптимума в строгом математическом смысле этого слова,однако, благодаря работе в реальных (неупрощенных) простран­ствах (как планов, так и критериев), в результате получаютсяне н а м е т к и оптимального плана (которые еще требуется рас­шифровать и детализировать), а реальный план производства иразвития объекта, причем в разумной степени (определяемой
реальными возможностями) оптимизированный. Заметим, чтов процессе расшифровки и детализации точного оптимального
плана, полученного на высокоагрегированной модели, происхо­дит, как правило, значительно большее отклонение от действи­тельно оптимального реального плана, чем при предлагаемом
методе системной оптимизации.
Целью объемного планирования основного производства лю­бого экономического объекта является прежде всего нахождение
объемов выпуска продукции различных видов

вектора х =хпа1материально-за плановый период Т, а такж е вектора ааптехнического снабжения, т. е. объемов поставок извне продукции
разных видов (материалов и комплектующих изделий), необхо­димых для выполнения данного плана. При этом план должен
быть сбалансирован по ресурсам. Иными словами, запасы ресурсо-часов по различным видам ресурсов, которыми располагает
объект на период Г, должны быть достаточны для выполнения
плана. Оптимальность плана означает, что соответствующая емуточка г = (г4,гн) в пространстве критериев г{ должна бытьс т о ч к и з р е н и я ЛП»Р (лица, принимающего реш ения) л у ч ­ш е точек, соответствующих другим возможным планам.
Необходимо отметить, что априорное задание функции г =* = /(г 1, ..., гп), сводящей многокритериальную задачу оптимиза-ции к однокритериальной, на практике оказы вается чащ е всего
невыполнимой задачей. В большинстве случаев эта ф ункция за­дается столь сложным алгоритмом, что вместо его задания априо­ри предпочитают оценивать «качество» различных точек в прост­ранстве критериев в процессе прямого диалога с Л П Р . При этомроль предварительного (априорного) анализа пространства кри­териев сводится обычно к максимально возможному «сжатию»(уменьшению размерности) пространства критериев. Посколькудля различных объектов в разное время и в разны х ситуациях
действуют разные системы критериев (прибыль, производитель­ность труда, фондоемкость, различного рода качественные кри­терии и т. п.), при построении автоматизированных систем объ­емно-календарного планирования целесообразно «критериальную»часть программного обеспечения строить как открытую систему.
Иными словами, наряду с законченными программами для быст­рого вычисления общеупотребительных критериев, в системе н е­обходимо иметь средства для быстрого включения в нее программ
вычисления любых других критериев, которые могут быть при­думаны и законодательно утверждены.
Предполагая, что планы инвестиций (т. е. проекции в задан­ный плановый период Т соответствующих целевых программ)вместе с их материальным и ресурсным обеспечением заданы,мы должны иметь возможность быстрого вычисления вектора Ъобщ их запасов ресурсо-часов не только на заданный плановый
период Г, но и на любой его подпериод. Заметим, что при одно­временном существовании на объекте ресурсов одинакового н а ­значения (предназначенных для выполнения одних и тех ж еопераций), но различной производительности, целесообразно
предусматривать возможность их агрегации в один ресурс, вводя
соответствующие коэффициенты для перевода в ресурс однойи той же производительности.
Далее, из технологической базы данных (массива технологи­ческих карт и списка полных технологий) и планов инвестиций
(определяющих сроки готовности тех или иных технологий)с помощью специальных программ вычисляются матрицы коэф­фициентов полны х затрат А = Иа*Д В = НЬ^Н по всем позициям
материально-технического снабж ения и соответственно по всемвидам ресурсов (точнее, ресурсо-часов). Коэффициент а{} озна­чает полные затраты г-& позиции материально-технического
снабж ения (материалов или комплектующих изделий) на про­изводство одной единицы продукции по /-й технологии, а коэф ­фициент Ъц — полные затраты на то ж е самое производство
ресурсо-часов по *-му ресурсу. Тогда с помощью формул

определяются в первом приближении вектор материально-техни­ческого снабжения а и вектор Ъ полных затрат ресурсо-часовдля плана производства, выражаемого вектором х , где через
обозначено общее количество продукции, выпущенное за периодТ по /-й технологии (/ = 1, 2, . . . , в).
Слова «в первом приближении» отмечают прежде всего тотфакт, что производственный процесс не замыкается рассматривае­мым плановым периодом. Вступая в этот период и выходя ивнего, рассматриваемый объект обладает некоторыми оборотными,фондами, которые материализованы в так называемом незавер­шенном производстве. В незавершенное производство Р(1) налюбой данный период времени I включаются запасы продукции,получаемой предприятием по материально-техническому снаб­жению, а такж е вся продукция (выпускаемая на объекте), на­ходящ аяся на той или иной стадии обработки и еще не постав­ленная потребителям. Поэтому истинные размеры материальнотехнического снабжения и затрат ресурсов за период Т будут,вообще говоря, отличаться от векторов а и 6, находимых по фор­мулам (11.13). Кроме того, для уменьшения размерности задачи
обычно не все технологические изменения, меняющие техноло­гические коэффициенты аг; и Ъц, выделяются в новые техноло­гии. Чащ е всего прибегают к агрегированным (смешанным)технологиям. Но в таком случае при изменении пропорций,в которых смешиваются агрегируемые технологии, будут проис­ходить изменения коэффициентов а{}, Ьу, а следовательно, и век­торов а, Ъ.
Однако, несмотря на приближенный характер формул (11.13),
ими обычно можно воспользоваться для предплановых оптими­зационных расчетов, особенно в случаях, когда технологический
цикл производства мал по сравнению с периодом планирования
Г, а рост производства в течение периода Т не очень велик.
С этой целью выделяют какой-либо критерий *уг или какую-либофункцию ф(^!, . . . , у*) от этих критериев и находят оптималъный план производства х(по выделенному критерию ч*гили ф) за период Т в области, задаваемой системой неравенств;Вх<Ь,(11.14)где Ь — вектор запаса ресурсо-часов, которым будет располагать
рассматриваемый объект в течение планового периода Т. К этимнеравенствам, в случае наличия априорных ограничений по ма­териально-техническому снабжению, могут добавляться все иличасть неравенств видаНаконец, вышестоящим плановым органом могут быть зада­ны априорные ограничения на все или на некоторые плановые
показатели
которые в общем случае будут иметь видх ^х<х",х'>0.

(11.16)

При отсутствии ограничений по /-й компоненте плана соот­ветствующее неравенство сводится к тривиальному неравенству
О < X} < °о, которое предполагается выполненным во всехслучаях.
Если критерий оптимизации представляет собой линейную
функцию от компонент
плана х , то мы приходим к задаче ли­нейного программирования, методы реш ения которой были рас­смотрены в гл. V III. Это будет, например, при использовании
критерия максимума валовой продукции: ш ах рх, где р == И/?1, . . . , рвИ— вектор оптовых цен на продукцию, выпускае­мую различными технологиями на рассматриваемом объекте.
Другие возможные критерии могут оказаться нелинейными. Т а­ким будет, например, прибыль при нелинейной зависимости
зарплаты от величины выработки (что чаще всего имеет место)или максимальный относительный уровень потерь использования
основных фондов различных видов. В подобных случаях реш а­ются задачи нелинейного (чаще всего — выпуклого) программи­рования, такж е описанные в гл. V III.
Наконец, в случае мелкосерийного производства, когда вы­пуск продукции измеряется штуками, возможно использование
методов целочисленного программирования.
После нескольких туров подобных оптимизационных прики­док с разными критериями оптимизации Л П Р могут сформули­ровать один из вариантов реального плана, использующих этиприкидки (т. е. вариантов с упором на наиболее выгодную про­дукцию в условиях действий заданных априорных ограничений
(1 1.16)). При этом целесообразно в выделенном для дальнейшей
работы варианте плана несколько выйти за рамки ограниченийпо ресурсам и материально-техническому снабжению, задавае­мых неравенствами (11.14) и (11.15). При этом в векторах
Ъ — В х и а — А х возникают некоторые отрицательные компонен­ты, свидетельствующие о дефицитах по соответствующим пози­циям ресурсов и материально-технического снабжения. Про­граммное обеспечение ранж ирует эти дефициты по их о т н о с и ­т е л ь н ы м величинам (в процентном выражении) и выдает ихплановикам и Л П Р для отработки неформализованных мер поих уменьшению или даже полной ликвидации. Главными из та­ких мер являю тся изменения планов инвестиций, управление
будущими нормативами на ранних стадиях проектирования, из­менения структуры производства (за счет увеличения относи­тельны х долей продукции, некритичной к возникшим дефици­там ), возможные изменения режимов работы (например, пере­ход от двухсменной работы к трехсменной) и т. п.
Очень важно, что в возникающем таким образом процессе
системной оптимизации плана основного производства осуществ­ляется целенаправленное управление инвестиционным процессоми проектно-конструкторскими работами, обеспечивающее оптими­зирующее влияние на основное производство не стихийного,,а сознательно управляемого научно-технического прогресса. По­этому в строящейся по этому принципу АСОУ нет возможности
выделить из общего процесса управления такие традиционно
обосабливаемые подсистемы, как системы управления капиталь­ным строительством, НИОКР, а тем более подсистемы сбыта иматериально-технического снабжения. Все они оказываются
объединенными в общей (интегрированной) динамической моде­ли рассматриваемого объекта. Поэтому строящиеся по этому
принципу АСОУ принято называть интегрированными. Разум е­ется, интеграция на уровне организационного управления в рам­ках одного объекта не исключает и другие виды интеграции..
В первую очередь это интеграция организационного и техноло­гического управления в рамках одного объекта, а такж е инте­грация в Общегосударственную автоматизированную систему
(ОГАС) систем управления отдельными объектами одинаковыхили различных уровней. Объединение систем управления одина­ковых уровней (например, предприятий) принято называть го­ризонтальной интеграцией, а разных уровней (например, пред­приятие — гл ав к )— вертикальной интеграцией.
Для осуществления вертикальной интеграции каждый эконо­мический объект, за исключением самого мелкого, структуриру­ется, т. е. разбивается на соответствующие подразделения. Вза­имодействия с системами управления своих подразделений
система управления объектов осуществляет структуризацию най­денных планов. Поскольку каждое подразделение может рас­сматриваться как отдельный экономический объект, то процесс
объемного планирования для него производится в принципе темж е способом, который уже был описан для объекта в целом.
В случае, когда подразделение выступает в качестве неотдели­мой составной части в едином технологическом процессе, сплани­рованном для всего объекта целиком, оно получает соответству­ющее плановое задание в готовом виде. В процессе же после­дующей
диалоговой
оптимизации
могутпрорабатываться
различного рода изменения этих заданий (по инициативе каксверху, так и снизу). Те из них, которые дали положительный
результат (в смысле уменьшения величины имеющихся дефи­цитов), должны приниматься и включаться в план. В случае
невозможности полного устранения дефицитов в процессе си­стемной оптимизации для получения окончательно сбалансиро-ванного плана необходимо уменьшение плановых заданий. По­добное решение принимается Л П Р такж е целенаправленно засчет отклонения в первую очередь таких позиций плана, кото­рые наименее отражаются (с точки зрения Л П Р ) на системе
показателей, характеризующих качество плана.
Заметим, что все изменения в планах в процессе как опти­мизации, так и окончательной балансировки инициируются
людьми прежде всего в направлении уменьшения максимальногоиз имеющихся на данный момент относительных дефицитов иобсчитываются на ЭВМ для нахождения точной величины такого*уменьшения (если оно вообще имеет место). Для ориентировкио местах, откуда можно черпать ресурсы для покрытия дефици­тов, из ЭВМ выводятся сведения не только о дефицитах, но иоб имеющихся избытках ресурсов. В задачу оптимизации пла­нов входит не только уменьшение дефицитов, но и максимальна
возможное устранение имеющихся избытков. С этой целью рас­сматриваются предложения о перераспределении тех или иных,ресурсов между различными подразделениями, а также предло­ж ения о загрузке избыточных ресурсов дополнительным произ­водством такой продукции, которая не затрагивает неизбыточ­ных, а тем более дефицитных ресурсов.
После окончания процесса системной оптимизации объемных
планов этот процесс повторяется для всех выделенных подпериодов исходного планового периода Т . Он выполняется тем же спо­собом, который уже был описан выше, и поэтому не требует до­полнительного описания. Заметим лишь, что при использовании
проекции динамики в статику сбалансированность плана по все­му периоду в целом не обязательно гарантирует его сбаланси­рованность по отдельным подпериодам. Поэтому в процессе раз­бивки составленного плана по подпериодам, т. е. перехода кобъемно-календарному план у, может возникнуть необходимости
возврата на прежний (чисто объемный) уровень и дополнитель­ной корректировки ранее составленного объемного плана. Этотпроцесс может повторяться несколько раз.
Процесс системной оптимизации объемных и объемно-кален­дарных планов резко упрощается при переходе на непрерывное
планирование. Ведь в таком случае каждый раз речь идет нао полном плане на весь период Г, а о его дополнении на отно­сительно малый период Д Т. Поскольку до вновь планируемого
временного интервала [Г, Т + ДГ] план уж е был составлен иоптимизирован ранее, то проекцию можно сразу делать на этотпоследний интервал, дополняя ее проекцией на весь плановый
период только в относительно редких и, главное, более простыхв расчетном отношении случаях возникновения необходимости
внесения коррекций в ранее составленный план. Тем самым этапобъемного планирования для периода [Г, Т + АТ] фактически
в. М. Глушков

объединяется с задачей объемно-календарного планирования дляполного периода [ДГ, У' + ДГ].
Заметим еще, что при составлении объемных и объемно-ка­лендарны х планов для границ плановых периодов определяются
объемы незавершенного производства. При этом для производство длительными циклами изготовления продукции (например,в судостроении) может фиксироваться для неоконченного изде­л и я не только список уж е выполненных производственных опе­раций, но и степень завершенности незаконченных операций
(обычно в процентах). Для основных фондов на границах пла­новых периодов производятся такж е вычисления их текущ ихстоимостей (с учетом амортизации). Аналогичным образом наэтих границах фиксирую тся планируемые суммы денег на раз­личны х статьях банковских счетов рассматриваемых экономи­ческих объектов. На каждый же плановый промежуток рассчи­тываю тся (такж е по различным статьям) д е н е ж н ы е расходыи доходы этих объектов. Баланс расходов и доходов должен
быть при этом увязан с планируемыми переходными остатками
денег на соответствующих статьях банковских счетов. Алгорит­мы подобных расчетов хорошо известны из курсов бухгалтер­ского учета, так что их дальнейшую расшифровку мы опускаем.
Необходимо лишь иметь в виду динамический характер соответ­ствующего программного обеспечения: при любых изменениях
планов производства или инвестиций должны автоматически
выполняться необходимые корректировки всех позиций ф инан­сового плана (т. е. планируемых расходов, доходов и остатковпо всем статьям бухгалтерского учета).
Если основной плановый период Т достаточно велик, то подпериоды, на которые он делится, могут быть такж е достаточно
большими. В этом случае обычно первый из подпериодов (на­пример, первый год пятилетки) разбивается на еше более мел­кие подпериоды (например, месяцы ). Для первого из самых
мелких подпериодов объемно-календарного плана осущ ествля­ется оперативно-календарное планирование, доводящееся досменных заданий на отдельные производственные операции.
Внутри же очередной смены производственный ритм в случае
необходимости может рассчитываться по часам, минутам и дажесекундам. Вся эта иерархия планов разной длительности и сте­пени дезагрегации должна храниться в памяти ЭВМ в динами­ческом виде — с автоматическим распространением на все вза­имосвязанные компоненты планов любых, вносимых в планы
изменений.
При наличии подобной динамической иерархической системы
непрерывно пролонгируемых планов текущее управление ихвыполнением состоит главным образом в регистрации всех возни­каю щ их отклонений и их у с т р а н е н и и . Устранение отклоне-иий может производиться за счет использования з а р а н е е за­планированных резервов (как для отдельных подразделений, таки для всего объекта в целом). Если этих резервов оказывается
недостаточно, производятся быстрые пересчеты планов, которые
вначале затрагивают самый короткий начальный подпериод,и лишь затем, в случае невозможности устранения отклоненийв этом подпериоде, распространяются на более дальние участки
планов.
11.10. Автоматизация плановых расчетовна общегосударственном уровне
Здесь мы опишем (в упрощенном виде) лишь одну из воз­можных схем макроэкономического (общегосударственного) пла­нирования в условиях безбумажной информатики. Она основанана выдвинутой автором концепции новой технологии планирова­ния, так называемой системы Дисплан, которая тесно увязана сизложенными выше идеями (прежде всего в § 11.9).
Основной принцип, на котором строится система,— планиро­вание от конечного продукта с использованием иерархической
системной оптимизации, причем вместо классического экономи­ческого подхода к динамическим макроэкономическим моделям
широко используется принцип проекции динамики в статику,уже излагавшийся в § 11.9. Под конечным продуктом в узком
смысле слова понимается все внеэкономическое потребление,подразделяющееся на личное потребление (одежда, пища, куль­турно-бытовые товары и т. п.), системы коллективного пользо­вания, обслуживающие непосредственно население (жилищно­бытовое общественное хозяйство, медицина, общее образование,культура, средства массовой информации, общественный транс­порт и др.) и системы, обслуживающие интересы всего обществав целом (оборона, охрана общественного порядка, фундамен­тальная наука и т. п .). В состав конечного продукта в широком
смысле слова дополнительно включается потребление, осуществ­ляемое всеми программами развития экономических ресурсов
(производственное строительство, прикладные исследования кразработки, профессионально-техническое образование и др.).
Исходным инструментом постановки целей для программ
(как национального, так и ведомственных масштабов) являю тсянепрерывно действующие системы прогнозирования, составляю­щие первый (прогнозный) блок описываемой системы. Важней­шую роль в ней играет система научно-технического прогнози­рования, описанная в § 11.8. Заметим сразу, что эта система(в виде, предложенном автором) дает не только цели научно-тех­нического прогресса, но и пути их достижения. Иными слова31*ми, она является постоянным источником для формирования
целевых программ. Прогноз социального развития, внеш неполи­тических ситуаций, а такж е прогноз цен на мировом рынке мо­гут выполняться средствами кибернетического моделирования,описанными в предыдущей главе. При условии применения пред­ложенного автором метода (§ 10.8) эти прогнозы такж е делаются
непрерывными. К ним добавляются (такж е непрерывно актуали­зируемые) прогноз изменения разведанных природных ресурсов,я такж е демографический прогноз. Эти виды прогнозов выпол­няются специальными средствами, описания которых мыопускаем.
Второй блок — блок программно-целевого управления — вклю­чает в себя фактически все р а з в и т и е как в производствен­ной, так и в непроизводственной сферах. Н аряду с крупными
мероприятиями, сразу формируемыми как программы нацио­нального масштаба (БАМ, Камаз, КАТЭК и др.), на макроэко­номическом уровне могут возникать агрегированные программы,представляющие собой объединение более мелких ведомствен­ных и территориальных программ (с соответствующим укрупне­нием этапов, а такж е номенклатуры ресурсов и материальнотехнического снабж ения). Будучи представлены на макроэконо­мическом уровне в виде укрупненных сетевых графиков, подоб­ные программы (которые могут исчисляться многими сотнямии даже тысячами) управляю тся методами, описанными в § 11.В.
П ри этом собственно ресурсное обеспечение программ замыка­ется в рамках рассматриваемого блока, а вектор с' = с т матери­ально-технического снабжения программного блока за период
планирования Т выдается на следующий — балансовый блок.
Уровень агрегации продукции при вычислении вектора стсоответствует агрегированной номенклатуре продукции, устанав­ливаемой для планового периода Т в балансовом блоке. Установ­ление списка агрегированной продукции делается так, чтобы
агрегация производилась лишь применительно к тем видам близ­кой по своему потребительскому назначению продукции, относи­тельные доли которых в агрегированном продукте в рассматри­ваемом плановом периоде не предполагается сколько-нибудь зна­чительно изменять. В противном случае (например, при резком
увеличении производства пластмассы определенного вида) соот­ветствующая продукция, вплоть до наиболее подробно специфи­цированной, должна выделяться в пределах данного периода вотдельную позицию номенклатуры Госплана. Подобная плаваю­щая номенклатура является еще одной особенностью, отличаю­щей предлагаемую методику. Значение этого факта легко по­нять, поскольку одной из основных задач плана является какр аз установление правильных пропорций производства тех илиины х видов продукции, а при агрегации эти пропорции, будучи

заданы априори, фактически перестают быть управляемыми па­раметрами (вычисляемыми в процессе оптимизации план а).
Вектор с' = ст представляет собой лишь одну из составляю­щ их конечного продукта, рассматриваемого в балансовом блоке.
Вторая составляющая с" = ст есть вектор непрограммного (те­кущ его) внеэкономического потребления. В него входят, в част­ности, пища, одежда и другие компоненты личного потребления
населения, а такж е текущее потребление систем коллективного
пользования, обслуживающих население (в том числе и обще­ство в целом). Компоненты этого вектора определяются систе­мами изучения потребительского спроса. Такие системы строят­с я сегодня прежде всего на основе экстраполяции потребитель­ского спроса, регистрируемого системами учета в розничной
торговле и описанными в предыдущей главе системами опроса
населения по выяснению будущего спроса на новые потреби­тельские товары и услуги. Заметим, что услуги (например, пе­ревозки пассажиров общественным транспортом или количе­ственные показатели медицинского обслуживания) такж е входятв агрегированную номенклатуру, о которой говорилось выше икоторая из соображений краткости называлась просто номенкла­турой продукции, а не номенклатурой продукции и у с л у г.
В заданной агрегированной номенклатуре формируются так­ж е векторы и = ит и V = ит экспорта и импорта за рассматри­ваемый период Г, а такж е вектор Дт-2 изменения (за тот жепериод) государственных запасов. По формуле
Ст = Ст -4- Ст 4“ ит — ит "4* Дг2(11.17)

определяется вектор конечной продукции (конечного продукта),которую надо произвести (вклю чая услуги) в стране за данный
период Т в чисто производственной сфере (исключая строитель­ство, реконструкции, опытно-конструкторские разработки и дру­гие конечные продукты программно-целевого блока).
После отработки программно-целевого блока (осуществления
проекций программ) появляется возможность рассчитать дина­мику нарастания ресурсов за рассматриваемый период и опреде­лить вектор Ъ = Ьт наличного запаса ресурсо-часов в течение
этого периода. При таком расчете (применительно к трудовым
ресурсам) учитывается планируемая политика в области изме­нений продолжительности рабочего дня, недели и года (отпуски,праздничные дни и т. п .), методами, описанными в гл. X, осу­ществляется агрегирование нормативов (включая нормативы дляновых технологий). В результате получаются матрицы А = На^Ии В = \\Ъц\\ нормативов прямых затрат продукции и ресурсов
(точнее, ресурсочасов): а{, — прямые затраты 1-го продукта, 6*, —прямые затраты ресурсо-часов /иго ресурса на производство од­ной единицы /-го продукта. Термин «прямые» применительно кзатратам означает, что учитываются лишь те затраты, которые
производятся в отрасли (ведомстве), занятой непосредственно
производством данного вида продукции. Эти затраты, вообще
говоря, меньше полны х затрат. Например, полные затраты элек­троэнергии на производство автомобиля складываются не толькоиз прямых затрат электроэнергии непосредственно на автомо­бильном заводе. В скрытом виде затраты электроэнергии содер­ж атся фактически в любой позиции материально-технического
снабжения, необходимого для производства автомобиля.
Обозначая через Л* = ||ау||матрицу нормативов полны хзатрат продукции (а{} — полные затраты г-й продукции на про­изводство одной единицы 7*-й продукции), легко показать, чтоона вычисляется по формуле
А * = ( Е - А ) ’ 1,

(11.18)где Е — единичная матрица. Умножая на эту матрицу вектор сконечного продукта, получим вектор х = с* полного продукта(и услуг), который нужно произвести за плановый период Т:х = с* = А*с.

(11.19)Полные ж е затраты ресурсов Ъ* (точнее, ресурсо-часов) наэто производство вы разятся формулой
==(11.20)Вычитая этот вектор из вектора 6, получим вектор А н евя зкиресурсов (ресурсо-часов):А = Ъ-Ъ*.
(11.21)О т р и ц а т е л ь н ы е позиции (компоненты) в этом векторе
соответствуют дефицитам соответствующих ресурсов (ресурсочасов), а п о л о ж и т е л ь н ы е — их избыткам. Сбалансирован­ность плана эквивалентна отсутствию дефицитов ресурсов. Од­нако в предлагаемой методике предполагается, что первоначаль­но построенный план является несбалансированным, т. е. по су­ществу не является планом, который можно принять к испол­нению. (Несбалансированность легко может возникнуть приувеличении потребления, но именно увеличение потребления иявляется конечной целью, во имя чего должна работать эко­номика.)Программное обеспечение балансового блока, помимо форми­рования матриц А , В векторов & и с и вычислений по формулам
(11.12) — (11.21), производит ранжирование дефицитов и избыт­ков ресурсов по их относительным величинам и выдает по тре­бованию л и ц , готовящих реш ения (Л Г Р ), списки максимальных

дефицитов и избытков. В процессе системной оптимизации ве­дется подготовка предложений Р» (1 = 1, 2, . . . ) , направленны хна уменьшение максимального (относительного) дефицита. Этипредложения могут готовиться параллельно в различных отрас­лях. Например, если максимальным является дефицит мощностейпо производству проката черных металлов, то могут одновре­менно готовиться предложения по экономии проката во всехпотребляющих его отраслях, предложения по увеличению про­изводства проката на существующих мощностях, предложенияно ускорению ввода новых мощностей по производству проката
и, наконец, предложения по изменению соотношения экспорта иимпорта проката в направлении увеличения и м п орта*).
Каждое предложение после отработки его на ЭВМ (в диало­говом режиме) представляется в виде (ДЛ , Д*/?, Дс, ДЬ), т. е.
в виде приращений, которые дает реализация этого предложения
матрицам А, В и векторам с, Ь (некоторые из приращений мо­гут быть нулевыми). Индекс г приращений ДЛ и А {В подчерки­вает, что благодаря отраслевому характеру предложений (соот­ветствующему специализации Л Г Р ) изменения нормативов врезультате любого подготовленного предложения будут затраги­вать лишь одну отрасль (технологию) или, иными словами,о д и н с т о л б е ц матриц А ж В (в данном случае 1-й ). Длятаких о д н о с т о л б ц о в ы х приращений имеет место формулаМ * == А* ^ А'а ‘ = й«- (11-22>

По этой формуле вычисление ДЛ * требует выполнения лиш ь
3 п 2 арифметических операций (п — размерность матрицы А )вместо порядка п3 операций, которые требует обращение мат­рицы (Е — А + А Л ) обычными методами.
Новый план выпуска с* + Дс* может быть теперь полученпо формуле
с* + Дс* = ( А * + А Л "*) (с + Д с ),(11.23)требующей порядка Зп2 арифметических операций, а новый век­тор д + Ад невязки ресурсов й + Ад, — по формуле
а + Ай = Ъ + АЪ - (В + А В ) (с* + Д с*),(11.24)по которой вычисление требует порядка 2шп арифметических
операций ( иг— число агрегированных ресурсов). К этому надодобавить п операций для вычисления матрицы А + А Л , чтобы
получить полностью пересчитанные величины, необходимые дляследующего тура расчетов. Таким образом, полный цикл работы
*) Для сохранения внешнеторгового балапса последние предлож ениядолжны предусматривать компенсацию увеличения импорта проката засчет увеличения экспорта другой продукции.

по обсчету одного предложения занимает порядка
N = 6га2 + 2т п

(11.25?

арифметических операций, что при больших ш и п значительно
экономит время для обсчета поступающих предложений по срав­нению с прямыми расчетами измененного плана, когда необхо­димо затрачивать порядка п3 операций.
Д аж е при т = п = 10 ООО формула (11.25) дает N = 0,8 • 109.
ЭВМ с быстродействием в 1 млн. операций в секунду выполнит
такой объем вычислений за 800 секунд или приблизительно за
13 минут (против 2 недель по традиционному методу).
Правда, благодаря «дифференциальному» характеру описан­ного метода (т. е. работы по приращ епиям) при большом числе
обрабатываемых предложений возможно нежелательное накоп­ление ошибок. Поэтому время от времени (после окончания
обработки достаточно большого потока предложений) можно
производить контрольные пересчеты плана традиционным мето­дом (с учетом принятых предложений).
Процесс принятия или отклонения очередного предложения
прост: если предложение уменьшает максимальный относитель­ный дефицит, оно принимается, в противном случае — отклоня­ется. ЭВМ должна при этом вести архив как принятых, так иотклоненных предложений. Имея такие архивы, в любой момент
можно отказаться от принятого ранее предложения Р , = (Д гЛ гД гЯ, Ас, ДЬ), произведя «принятие» противоположного предло­ж ения —Р* = (—Д,*А, —ДгВ, —Агс, —Д*Ь). Ввиду того, что в об­щем случае мы имеем дело с нелинейной задачей оптим и зации
подобные возвраты назад в принципе не исключены: хотя впредшествующей ситуации принятие предложения Р{ способ­ствовало уменьшению максимального дефицита, в новых усло­виях (после принятия ряда других предложений) подобный жеэффект может дать отказ от предложения Р* (т. е. принятие
предложения —Рг). Аналогично, отклоненное ранее предложениев новых условиях может оказаться полезным и может быть при­нято (для чего и нуж ен архив отклоненных предлож ений). Р а­зумеется, в линейном случае подобные изменения ценности
предложений в процессе оптимизации не имеют места, так что>раз принятые предложения не отбрасываются, а раз отвергну­тые — не принимаются при продолжении процесса. Заметим, чтас линейным случаем мы имеем дело, когда все рассматриваемые
предложения имеют либо вид ( А й , Д ,Д 0, 0 ), либо (0, 0, Ас, Д Ь ).
Если в описанном процессе удается полностью ликвидировать
дефициты, то мы получаем сбалансированный оптимизированныйп лан (но не обязательно оптимальный в строго математическомсмы сле), который может быть в принципе принят. Обычно, од­нако, полезно продолжить процесс оптимизации, загруж ая избы­точные ресурсы и тем самым либо увеличивая потребление, либоулучш ая сальдо внешнеторгового баланса (увеличивая валютные
поступления от внешней торговли). Если же в процессе опти­мизации полностью ликвидировать дефициты не удается, то,наоборот, производится «отключение» тех или иных блоков отвектора потребления или экспорта до достижения полной сба­лансированности плана. Разумеется, подобные отключения дела­ются лишь по разрешению Л П Р соответствующего ранга.
Описанному процессу системной оптимизации может помочь
дополнительный процесс агрегации планов, составленных отра­слями, в общий народнохозяйственный план х. Разность векто­ров х и с*:б = х — с* = я — А*с

(11.26)

представляет собой невязку планов, по которой можно такж епроизводить операции постепенного уничтожения невязок (в диа­логе с отраслями). Однако подобный процесс не дает столь глу­боких возможностей управления научно-техническим прогрессом(а следовательно, и оптимизации плана), как уж е описанный
выше процесс. Поэтому вектор невязок планов б целесообразнее
использовать в качестве дополнительной информации для Л П Рв целях лучшей ориентировки в подготовке предложений поулучшению планов.
В рамки описанной идеологии укладываю тся и вопросы де­нежного баланса (приходов и расходов населения); с этой цельюв общем балансе учитываются все расходы на денежные вы пла­ты населению (зарплата, пенсии и т. д.) в качестве одной изкомпонент затрат во всех производственных и непроизводствен­ных отраслях. В качестве же производимой продукции деньги
учитываю тся прежде всего в планировании розничной торговли,а такж е всех других отраслей, производящих платные услуги
(общественный транспорт, жилищно-бытовое хозяйство, кино,театры и т. п .). Все эти денежные поступления могут быть по­лучены простым перемножением вектора товаров и услуг, по­ставляемых населению (части вектора с " ) , на вектор средних
розничных цен на рассматриваемый плановый период. Для уп­равления денежным балансом, помимо уж е упомянутого вектора
невязок ресурсов, рассматривается еще один дополнительный
скалярны й показатель — сальдо денежного баланса. В случае н а­личия дефицита (отрицательного сальдо), точно так же как ивыше, рассматриваются различные предложения по его умень­шению и ликвидации. В число таких предложений наряду с уве­личением выпуска и продажи потребительских товаров и услуг
могут включаться такж е предложения по изменению уровня
розничных цен. Разумеется, вопрос о принятии таких предложе­ний должен реш аться Л П Р соответствующего (высокого) уровня*Заметим, что при подведении основного баланса (нахож дения
вектора невязки ресурсов) единицы измерения для различны хвидов продукции могут выбираться любыми. В частности, неко­торая (а если надо, то и вся) продукция может исчисляться вденежном выражении. Для стран, ведущих активную внешнюю
торговлю, может оказать немалую пользу возможность пересчета
плана в стоимостном выражении в соответствии с уровнем ценна мировом рынке. Такой пересчет делает ясной картину воз­можностей «производства» валюты различными отраслями.
Скажем несколько слов о планировании транспорта. При со­ставлении вариантов планов отдельными предприятиями, какправило, должны предусматриваться пункты доставки произво­димой ими продукции. Таким образом, вместе с объектами вы­пуска продукции в исходных планах появляются и объемы пред­стоящ их перевозок, по возможности разбитые по видам транс­портных средств, которые предполагается использовать. Транс­портные ведомства, ответственные за развитие и эксплуатацию
соответствующих средств, разрабатывают нормативы материаль­но-технического и ресурсного обеспечения перевозок различных
видов, которые в агрегированном виде должны включаться вконце концов в матрицы А и В, После этого программы разви­тия транспортных ресурсов и невязки по этим ресурсам вклю­чаются в рассмотренную выше схему системной оптимизации
наравне с другими товарами и услугами.
Аналогичным образом можно включить в общую схему ипланы развития и использования систем связи-и управления дляпроизводственных нужд. Что же касается планов удовлетворе­ния потребности населения в средствах связи, то соответствую­щие потребности (и плановые задания на их удовлетворение)должны изучаться в основном теми же приемами, что и потреб­ности в других услугах и в продуктах. Напомним, что соответ­ствующие задания должны включаться в правые части балан­совых уравнений (векторы с' и с " ) .
После выполнения балансировки и оптимизации по всему
плановому периоду Т те же самые процедуры используются дляотдельных его подпериодов Т\, Г 2, . . . , Т е. К ак и в общей схеме
объемно-календарного планирования (изложенной в § 11.9),
особенно просто такая разбивка делается при непрерывном пла­нировании. В этом случае задача пролонгирования плана с пе­риода [О, Т] на период [АТ7, Т + Д77] сводится по сущ еству к вы­полнению описанной выше процедуры балансировки и систем­ной оптимизации для периода [Т , Т + ДТ7] с возможными коррек­тировками для периода [ДТ7, Т\ (относительно небольш ими).
Сделаем несколько замечаний об отраслевом и территориаль­ном разрезе плана. При вычислении матриц А, В векторов
х = с*, б и 6* в исходном (общегосударственном) балансе про­дукция, ресурсы группируются по естественным технологиче­ским группам — условным отраслям (например, токарные стан­ки, литейное оборудование, телевизоры, мясные консервы и т. п .).
В действительности как оборудование, так и сама производимая
продукция должны быть разбиты не по условным, а по реально
существующим юридическим узаконенным отраслям (министер­ствам и ведомствам). С этой целью вектор Ъ наличного запаса
ресурсо-часов должен быть разбит по юридическим отраслям:Ь = 61 + Ь2 + . . . + Ь*. После этого первое (грубое) разбиение пла­на с* = х по юридическим отраслям может быть получено (ме­тодами, изложенными в § 8.6) из реш ения системы линейных
неравенств В х { <:Ьг ( 1 = 1 , 2, . . . , / ) с дополнительным условием
/(11.27)2 х 1 = X,где х { есть вектор плана производства для 1-го министерства иливедомства. Эта система неравенств при условии сбалансирован­ности исходного (общегосударственного) плана совместна (по­скольку В1>х1 =Ь = 26*). Однако следует учесть, что мат­рицы нормативов прямых затрат ресурсов В { для каждой юри­дической отрасли могут быть различными. Поэтому вместо нера­венств (11.27) в действительности имеют место уточненные
неравенства
(11.28)/% х г=х.
Если бы агрегация нормативов прямых затрат ресурсов вматрицу В производилась через юридические отрасли в соответ­ствии с пропорциями деления планов меэ/сду ним и, то система
неравенств (11.28) такж е должна была бы быть совместной. Од­нако в действительности точные значения этих пропорций ап ­риори (до реш ения неравенств (11.28)) неизвестны. Поэтому
действительная разбивка планов по отраслям должна претер­петь ряд итераций: отправляясь от системы (11.27), находим
первое приближение для разбивки планов. В соответствии спропорциями, определенными этой разбивкой, вычисляем новые
значения «отраслевых» матриц прямых затрат ресурсов, нахо­дим из (11.28) новую (уточненную) разбивку планов и т. д.
После получения разбивки плана по отраслям можно полу­чить уточненные отраслевые матрицы А 1— нормативы прямых
затрат продукции, получаемой извне в качестве материальнотехнического снабжения. Тогда соответствующие отраслевые век­торы а* материально-технического снабжения получаются поформулам
а1= А 'х \

г = 1, 2,/.

(11.29)Тем ж е способом, что и разбивка плана по отраслям, может
быть осуществлена его разбивка по территориям. При этом по­является дополнительная возможность оценить перетоки продук­ции с одних территорий на другие и тем самым уточнить транс­портные балансы. Заметим, что для планирования по любой
территории годится в исходном виде весь описанный метод це­лостного (без разбивки по отраслям и территориям) метода об­щегосударственного планирования, причем место экспорта и им­порта соответственно занимают вывоз и ввоз на данную терри­торию продукции с других территорий.
Сделаем еще одно замечание, касающееся планов развития
экономики (инвестиций). В рамках программно-целевого методав процессе составления программ попутно производится разбив­ка планируемых работ по отраслям и территориям, так что тер­риториально-отраслевая разбивка этой части планов по сущ еству
сводится лишь к переупорядочиванию информации, уж е имею­щ ейся в общегосударственных планах.
При планировании на всех уровнях, в том числе и на обще­государственном, должны быть предусмотрены резервы на слу­чай различных непредвиденных обстоятельств. Эти резервы мо­гут быть в форме страховых запасов, методы расчета которых
были изложены выше (в § 11.5). Д ругая форма — создание ре­зерва мощностей — используется в том случае, когда делать
запасы продукции невозможно (как это имеет место в электро­энергетике), трудно (в газоснабжении) или экономически невы­годно (в случае скоропортящейся или быстро меняющейся про­дукции). Размер резерва определяется минимизацией суммы
потерь от недоиспользования резервных мощностей для произ­водства продукции и математического ожидания суммарных по­терь в народном хозяйстве в результате случайных сбоев в ра­боте отдельных звеньев экономики, которые невозможно устра­нить при выбранной величине резерва.
11.10.1.
Предплановые ориентировки. К ак уж е упоминалось
выше, для предварительной ориентации Л П Р могут использо­ваться различного рода затрубленные макроэкономические мо­
дели. Ч ащ е всего загрубление предполагает использование моде­лей малой размерности. Другие направления загрубления — ис­пользование тех или иных априорных предположений о динамике
изменения нормативов, переход от многокритериальных поста­новок к однокритериальным и т. д. В то время как в реальном
планировании речь, как правило, идет о выборе между конеч­ным множеством реально подготовленных проектов, в предпла­новых ориентировках допустимы абстрактные постановки с не­прерывно меняющимися параметрами. В линейных моделях
такого рода получающиеся реш ения обычно требуют полного
«закрытия» одних технологий и максимального использования
других, что в реальной ж изни сделать сразу невозможно. Темне менее даже такие реш ения, указы вая желательные направ­ления «переключения» технологий, оказываются полезными к аккачественные ориентировки при формировании реальных пред­ложений по улучшению плана.
Например, имея набор технологий и соответствующие имматрицы А и В прямых затрат продуктов и ресурсов, можно ре­шить задачу об ориентировке экономики в направлении получе­ния наибольшего конечного продукта С в денежном выраж ении.
Д ля этого реш ается задача линейного программированияш ах р ( Е — А ) хприВ х< ,Ъ , х > 0 7

где р = II/?!, . . /?ПИ— вектор цен продукции различных видов.
предусмотренных в плане х =хп. К ак это обычно бывает прилинейных постановках задач оптимизации, решение полученной
задачи разделит продукцию на выгодную (Х{ > 0) и невыгодную
(ог< = 0), хотя, разумеется, в силу большого числа причин, в ре­альной ж изни нельзя принять предлагаемый план х сразу, по­скольку он связан с закрытием невыгодных производств с соот­ветствующим перемещением и переквалификацией рабочих, что,естественно, быстро осуществить невозможно (особенно при необ­ходимости перемещений рабочей силы в другие районы страны ).
Однако, получив подобную ориентировку, Л П Р получают
«начальный импульс» для выработки реальных предложений,изменяющих структуру плана в желательном направлении. По­добная ориентировка особенно полезна для реш ения задач спе­циализации экономики малых стран в рамках международного
разделения труда. В этом случае оптимизация с использованием
вектора р цен на мировом рынке определяет те отрасли нацио­нальной экономики ( # * > 0 ) , которые наиболее выгодно разви­вать в данной стране для максимального увеличения положи­тельного сальдо ее внешней торговли.
В качестве другого примера рассмотрим предложенную авто­ром модель для оптимизации распределения национального дохо­да между потреблением и накоплением (инвестициями) в усло­виях научно-технического прогресса. С этой целью разделим
экономику, как это принято в политэкономии, на г р у п п у А(производство средств производства) и группу Б (производствопредметов потребления). Подчеркнем сразу, что в группу Авключается не вся тяж елая промышленность (как это нередко
делается) и даже не все машиностроение. Например, производи

легковых автомобилей, идущих в личное потребление, вме­сте со всем его обеспечением (металл, пластмассы, лаки и т. н.)должно быть включено в группу Б. Сюда же включается и всяпродукция оборонной промышленности, идущ ая по ее прямому
назначению (разумеется, такж е со всем обеспечением). Анало­гично обстоит дело со строительством. Непроизводственное строи­тельство (жилые дома, культурно-бытовые объекты, больницы
и т. п.) относится по нашей классификации к группе Б, а про­изводственное (независимо от вида строящихся объектов) —к группе А. Кроме того, при вводе в строй новых производ­ственных объектов их необходимо снабжать оборотными фонда­м и , которые могут быть предметами потребления, но выступаютв данном случае в качестве средств производства.
Имея в виду перечисленные обстоятельства, на самом высо­ком уровне агрегации экономика может быть (с определенными
допущ ениями) сведена фактически к одной обобщенной отрасли,одна ч а с т ь которой работает в режиме группы А (производит
средства производства, т. е. основные и оборотные фонды новых
производственных объектов), а д р у г а я — в режиме группы Б(производит предметы текущего потребления). Допущения, о ко­торых идет речь, состоят в том, что предполагается возможность
беспрепятственного (мгновенного и без дополнительных затрат)переключения действующих технологий (прежде всего в строи­тельстве и машиностроении) с производства средств производ­ства (например, тракторов) на производство предметов потреб­ления (например, танков) и наоборот. Разумеется, подобное
допущение в полной мере никогда не имеет места на практике.
Однако, имея в виду высокую степень агрегации модели, ее на­правленность па качественные ориентировки, а такж е относи­тельную малость затрат на переориентацию существующих про­изводственных мощностей по сравнению с затратами на ихначальное создание, можно считать сделанное допущение доста­точно приемлемым. Его приемлемость становится еще более
обоснованной, если учесть, что обеспечивающие отрасли (напри­мер, топливная промышленность или электроэнергетика) в боль­шинстве случаев вообще не требуют никаких переделок при пе­реключении их продукции с режима А на режим Б и наоборот.
Введем две функции а ( т , I) и Р ( 0 , определяющие произво­дительность труда в группах (режимах работы) А и Б в раз­личных технологиях. Технологии мы будем характеризовать мо­ментами их разработки до такой степени, при которой возможны
прямые инвестиции для фактического их внедрения в народное
хозяйство. Сделаем естественное предположение, что позже со­зданные технологии лучше (обеспечивают более высокую произ­водительность труда) по сравнению с технологиями, созданными
ранее.
<угвоФ ункция а ( т , 2) (т < 2) равна количеству рабочих мест втехнологии в момент времени 2, в единицу времени в расчетена одного работающего в группе А в момент времени т. Ф унк­ция (3(0 означает выпуск продукции в единицу времени в груп­пе Б, приходящийся на одного работающего, по технологии вмомент времени 2. Будем считать, что в один и тот ж е момент
времени не создается двух различных технологий и что в про­межутке между созданием двух очередных технологий в каж дойиз групп А и Б внедряется первая из них. Ф ункции а ( т , 2)
и р(2) предполагаются и з в е с т н ы м и не только для прошлого,,но и для б у д у щ е г о времени. В последнем случае они исчис­ляю тся из прогнозных сроков создания новых технологий (см.
§ 11.9) и соответствующим образом агрегированных нормативов
трудовых затрат (в результате вклинивания новой технологии)Обозначим через # (т , 2) и у (г, 2) (где т<12) функции ин­тенсивности использования (коэффициента сменности) в момент
времени 2 рабочих мест в момент времени т соответственно в Аи Б. Эти функции предполагаются з а д а н н ы м и для прошлого'времени (2=^0) и н е и з в е с т н ы м и для будущего ( 2 > 0 ) . З а ­даны лишь границы изменения этих функций в будущем (поли­тика в области коэффициентов см енности): 0 < я (т , 2) <(2)г0 ^ у ( т , 2) < & 2( 2),гДе М * ) и М * ) — предполагаемые макси­мальные коэффициенты сменности в момент времени 2 (соот­ветственно в А и Б ). Ч ерез п(1) обозначим общее количество*рабочих, которым располагало (при 2 ^ 0 ) и будет располагать
(при 2 > 0) народное хозяйство, а через [0, Т] — предполагае­мый интервал долгосрочного планирования. Задача состоит в та­ком распределении рабочих в каждый момент планового периода
между различными местами в группах А и Б, при котором
обеспечивается максимальный объем выпуска продукции груп­пы Б (за плановый период) при условии полной занятости всехрабочих.
Обозначим через га (2) скорость создания новых рабочих меств экономике в момент времени 2 (способных по наш ему допу­щению работать в двух реж им ах А и Б ) . Ч ерез 20< 0 будем
обозначать момент создания наиболее старого из рабочих мест*существующих к началу планового периода (2 = 0 ). Тогда, к акнетрудно проверить, будут иметь место следующие соотношения:Iга (2) = ] я (т , 2 )а (т , 2 )га(т)й т(уравнение баланса производственных мощностей);гтг (0 = ] (х (г, 0 + у (т, *)) т (т) Ах

-(уравнение баланса трудовых ресурсов);г/(О =[ И * , <) Р (т) т (т) *{уравнение скорости выпуска предметов потребления).
В соответствии с приведенной выше постановкой, задача со­стоит в нахождении функций зс(т, I), у ( т, I), т(1) в интервале
т[О, Т ] из условия максимума функционала / ( / ) =прилдополнительных ограничениях 0< к 2(I) , 0 < I < Т. Отношение
2 (0 = ^ [ я(т,* )< & ,(* ), 0 ^ г / ( т ,|у ( т, 1 ) т ( х ) й тхарактеризует пропорцию деления национального дохода (в мо­мент времени I) между накоплением (группа А) и потреблением
(группа Б ).
В другой постановке предполагается априорное разделение
рабочих мест на группы А и Б. Относительная доля рабочих
мест в группе А ко всем рабочим местам, создаваемым в момент
времени т, обозначается через у ( т ). Коэффициент сменности
к(1) для всех технологий, созданных в моменты времени междуи ^ предполагается не зависящим от технологии (а за­висящ им лишь от момента времени I). Все технологии, создан­ные до момента времени а{1), в момент времени I не использу­ются вовсе. Таким образом, а(1) задает переменную временную
границу отбрасывания устаревших технологий. При сделанпых
предположениях приведенные выше уравнения примут видгт (1)=\ а (т, *) у (т) т (т) йт,
«(О
I
а(0
I

1(1)= 5 (1 — у(т))то(т)Р(т)<7т,где требуется найти неизвестные функции т(1) и у(1) ( 0 <^ г / ( ^ ) ^ 1 ) в плановом интервале [0, Т] при условии максимума
функционалаВ отличие от прежней постановки, определяющей политику
использования уже созданных универсальных мощностей, вторая
постановка определяет политику разделения средств в создании
новых специализированных мощностей в группах А и Б. Следует
заметить, что в обеих постановках принятый критерий оптими­зации приводит к эффекту минимизации задела на последующие
плановые периоды, т. е. к снижению темпов инвестиций к кон­цу рассматриваемого планового периода (в целом или в груп­пе А ). Поэтому правильную инвестиционную политику предпо­лагаем ая методика дает лишь для части планового периода от^ = 0 до 1 = Т 0< Т . В связи с этим необходимо все время кор­ректировать эту политику на последующие моменты в режиме
непрерывного планирования (прогнозирования конечного сро­ка Т).
11.11. Общегосударственная автоматизированная система
(ОГАС)
Автоматизация организационного управления в масштабах
всего народного хозяйства требует целенаправленной разработкии последующего целенаправленного взаимодействия автоматизи­рованных систем организационного управления (АСОУ) различ­ных уровней и различного назначения. В соответствии с действу­ющим у нас территориально-отраслевым принципом управления
создаются как отраслевые, так и территориальные АСОУ. В тер­риториальном разрезе АСОУ создаются для отдельных районов,городов, областей и республик. В отраслевом разрезе соответ­ствующая иерархия включает в себя АСОУ цеха, предприятия,объединения, отрасли (иногда с особыми АСОУ для отдельных
главков). На самом верхнем уровне иерархии территориальныйи отраслевой аспекты объединяются в общегосударственных
органах планирования и управления, включая функциональные
союзные министерства и ведомства (Госплан, Госснаб, ЦСУ,Минфин, Госкомтруд, Госкомцен, ГКНТ и др.).
В решениях 24-го съезда КПСС ОГАС определена как Обще­государственная автоматизированная система сбора и обработки
информации для учета, планирования и уп ра влени я. Функции
автоматизации учета па всех уровнях (включая общегосудар­ственный) были достаточно подробно разобраны выше (в § 7.7
и в гл. X ). Заметим лишь то, что система учета по уровнем иноменклатура агрегирования учетных данных должны быть увя­заны с системой планирования. Ибо основная задача учета всистемах организационного управления — отслеживать процесс
выполнения плана и своевременно информировать соответствую­щие уровни управления о возникающих отклонениях. Основная
задача системы текущего (оперативного) управления — своевре­менно реагировать на эти отклонения. В правильно спроектиро­ванной системе большинство отклонений должно компенсиро­ваться за счет приведения в действие резервов того или иногоуровня. При этом сбой как бы локализуется, т. е. остается в рам­ках породившего его звена экономики, не приводя к «цепной
реакции» распространения возникшего сбоя по всем связапны мс ним звеньям экономики (по цепочкам поставщики — потреби­тели). В тех относительно редких случаях, когда локализовать
сбой не удается, производится согласованный пересчет планов,во всех указанны х звеньях.
Помимо учета и текущего управления главной задачей вер­тикальных связей в ОГАС является обеспечение системы объем­но-календарного территориально-отраслевого планирования вовсех звеньях экономики (от Госплана СССР до цеха, участка,,а в краткосрочном планировании и до отдельных рабочих м ест).
Эта система фактически уж е была описана выше в двух пред­шествующих параграфах, так что остается сделать лиш ьнесколько дополнительных замечаний. Прежде всего ясно, чтоформирование заданий по конечному продукту в части удовлет­ворения потребностей населения должно вестись прежде всегов территориальном аспекте с учетом специфических особенно­стей населения различных районов страны. Н ачиная с районныхи городских АСОУ, должны вестись локальные программы ж и­лищного, культурно-бытового строительства, развития обществен­ного транспорта, торговли, медицины и других систем коллек­тивного обслуживания населения. Смысл вертикальных связей
ОГАС в этом аспекте состоит в том, чтобы обеспечить интегра­цию локальны х программ по всем уровням иерархии территори­ального управления, вплоть до общесоюзного уровня. С этойцелью обеспечивается динамическое представление программ впамяти ЭВМ и их автоматическое агрегирование по требованиям*задаваемым органами территориального управления и Госпла­ном СССР. Аппаратом для такой агрегации является Государ­ственная сеть вычислительных центров (ГСВЦ), о которой уж еговорилось выше (в § 7.7).
Заметим, что программы развития территорий должны бытьтесно увязаны с программами развития отраслей. С этой целью
варианты отраслевых программ после их предварительной тер­риториальной привязки передаются через ГСВЦ в АСОУ соот­ветствующих территорий, которые должны увязывать с нимисоответствующие территориальные программы. В процессе опти­мизации планов, описанном в предыдущем параграфе, возможно(и желательно) возникновение предложений по изменениям
дислокации предполагаемого производственного строительства.
Задачей ОГАС является автоматизация взаимодействия органов
территориального и отраслевого управления (через соответствуй

ющие АСОУ) при подготовке подобных предложений, с тем что­бы планы отраслевого и территориального развития оставались
постоянно взаимоувязанными.
При уменьшении заданий по конечному продукту, возмож­ному на этапе окончательной балансировки оптимизационных
общесоюзных планов, ОГАС обеспечивает соответствующее вза­имодействие с программами отраслевого и территориального раз­вития, чтобы производить сбалансированные отключения (илипереносы сроков) отдельных программных блоков, что призвано
сделать невозможным такое положение, когда, например, пре­дусматривалось бы жилищное строительство, не обеспеченное
соответствующим расширением торговой сети, развитием обще­ственного транспорта и т. п.
В отраслевом разрезе ОГАС обеспечивает описанные выше(в гл. X и в §§ 11.9, 11.10) процессы агрегации планов, норма­тивов и данных о наличных и планируемых ресурсах, а такж епроцесс системной оптимизации планов на основе начального
формирования и последующей агрегации предложений, направленны х на улучшение плана. О последнем процессе нужно ска­зать несколько слов особо. Может оказаться, что в процессе ра­боты по уменьшению дефицитов общесоюзного плана (описан­ного в § 11.10) родилось предложение, носящее первоначально
локальный характер, например предложение рационализатора обулучшении технологического процесса на своем рабочем месте.
Система агрегации предложений в ОГАС должна предусматри­вать последовательный подъем этого предложения по уровням
иерархии планирования па предмет его возможного использова­ния на других рабочих местах (данного предприятия, отраслии даже других отраслей). В случае, когда в процессе такого
подъема предложение обретает должный масштаб, оно можетв конце концов выйти на общесоюзный уровень системной опти­мизации в качестве предложения, привязанного к соответствую­щим отраслям, предприятиям и рабочим местам. В результате
происходит глубокая демократизация процесса общегосударствен­ного планирования (т. е. обеспечения участия в нем всех, ктоспособен вложить свою лепту в улучшение плана) и диалекти­ческое разрешение противоречия между необходимостью даль­нейшего развития централизации планирования и полного про­стора для личной инициативы. Принципиально важно, что про­цесс встречного планирования производится при этом н е п о с л есоставления общегосударственного плана (что чревато возмож­ностью возникновения опасных дисбалансов), а в процессе егосоставления.
Наличие в ОГАС взаимосвязанных автоматизированных си­стем планирования различных уровней обеспечивает доведение
планов до рабочих мест (вклю чая любые последующие измене**ния в них), что является непременным условием действенности
планов. Всякий план, не доведенный до рабочих мест, является
скорее набором пожеланий, чем руководством к конкретным
целенаправленным и взаимосогласованным действиям (обеспе­ченным к тому же всем необходимым для их реализации).
Сказанное до сих пор касалось прежде всего вертикальных
связей в ОГАС, т. е. связей, направленных (вверх и вниз) полиниям фактически существующей административной иерархии.
Т аких связей оказывается, однако, недостаточно для эффектив­ного управления экономикой. Важнейшую роль в таком управ­лении играют горизонтальные (межведомственные) связи. Делозаклю чается прежде всего в том, что при реализации однихлиш ь вертикальных связей остается еще много нерешенных
проблем по организации эффективного взаимодействия потреби­телей с поставщиками.
Действительно, в описанном выше (в § 11.10) процессе об­щесоюзного объемно-календарного планирования производится
разбивка планов по отраслям и территориям (включая планы
материально-технического снабж ения). Однако на общесоюзном
уровне эти планы носят по необходимости .агрегированный ха­рактер и привязываются к относительно большим промежуткам
времени (годам, кварталам, в лучшем случае — к месяцам ). Спе­цификация взаимных поставок (до самой подробной номенкла­туры) и точное (минимум до суток) указание их сроков воз­можны лишь при организации совместной работы АСОУ постав­щиков и потребителей на различных уровнях.
Получив от Госплана планы выпуска продукции на тот илииной плановый период (в результате совместной работы с нимпо вертикальным связям ), отрасли должпы организовать работупо детализации (спецификации) планов взаимных поставок.
С этой целью АСОУ отрасли, выпускающей ту или иную фи­н иш ную (законченную) продукцию (а не полуфабрикаты), спе­цифицирует вектор материально-технического снабжения, обеспе­чивающий этот выпуск, и в процессе взаимодействия с АСОУдругих отраслей производит распределение поставок по соответ­ствующим отраслям (в соответствии со спущенными из Госпла­на агрегированными планами производства). Кроме того, имеяплан распределения выпуска продукции по своим предприятиям
(или объединениям) и используя (в процессе взаимодействияАСОУ) аналогичные планы других отраслей, АСОУ отрасли,инициирующей взаимодействие, решает в процессе такого вза­имодействия задачу прикрепления предприятий-потребителей
(своей отрасли) к предприятиям-поставщ икам (своей и других
отраслей).
В целях оптимизации перевозок для прикрепления потреби­телей к поставщикам реш ается соответствующая транспортная

задача (см. п. 8.6.2). В случае возможностей «переброски» от­дельных частей планов между предприятиями-поставщиками
(лучшей специализации предприятий с учетом их собственных
расходов и расходов на перевозки) возникает более общая, такназы ваемая распределительная оптимизационная задача. Для еереш ения применяются общие методы решения задач линейного
программирования, а также некоторые более специальные прие­мы, сводящие эти задачи к нелинейным задачам меньшей раз­мерности. Заметим, что планы прикрепления потребителей к по­ставщикам (как и все другие планы) должны храниться в соот­ветствующих АСОУ в динамическом виде и могут подвергаться
согласованным изменениям в процессе системной оптимизации
общегосударственных планов.
Необходимо отметить также и то, что описанный простейший
(поотраслевой) подход к решению задачи прикрепления потре­бителей к поставщикам не обеспечивает его полной оптимиза­ции. Более полная оптимизация может осуществляться АСОУтакого межведомственного органа, как Госснаб. Собирая заявкипо материально-техническому снабжению от всех отраслей, этоторган должен решать распределительные задачи, фиксируя при­крепления предприятий-потребителей к тем или иным предприятиям-поставщикам.
Рассмотрим одну из возможных постановок распределитель­ных задач и возможные методы их решения в этой постановке.
Обозначим через I индекс (номер) потребителя (предприятияили оптовой базы Госснаба); через / — индекс поставщика (про­изводителя); через к — индекс поставляемой продукции; через
а — индекс, пробегающий множество технологических ограниче­ний на производство у поставщиков. Пусть, далее, А {к— потреб­ность (в рассматриваемом плановом периоде) 1-го потребителяв к - й продукции; с т — стоимость перевозки одной единицы к- йпродукции от /-го поставщика к г-му потребителю; 1%— техно­логические коэффициенты у /-го поставщика на производство
к - й продукции; с,к — себестоимость производства одной единицы
к -й продукции.
Обозпачим через х =план прикрепления потребителейк поставщикам. Здесь х т означает количество к-й продукции,которую I-й потребитель должен получить (в течение данного
планового периода) от /-го поставщика. Ясно, что х т > 0 . Тогда
распределительная задача представляет собой задачу линейного
программирования:(для всех / и а).

Е

(г,к)
32 в. М. Глушков

/(а )

. ^

т»(а)

^гзк ^5; 1 зП ри а = 1та)есть общее время (с учетом необходимого
резерва), которым располагает /-й поставщик; $ — время, за­трачиваемое им на производство одной единицы к-й продукции.
При й > 1 возможны любые другие типы ограничении; напри­мер, ограничение
означает, что у-й поставщик негможет выпустить более чем Т ^ единиц к-й продукции (здесь
= 1, Тп = 0 при 1=^к).
Во многих случаях на практике получаемая задача линей­ного программирования имеет столь большую размерность, чтообычные методы ее реш ения оказываю тся непригодными. Н а­пример, при прикреплении потребителей к прокатным станамдля поставок проката черных металлов в СССР число перемен­ных Хан достигает 5 • 105, а число ограничений — 2 • 104. Поэтому
сведем задачу к задаче нелинейного выпуклого программирова­
ния:
ш ах
( 2 } А {кпип ( ст + а.}к + 2— 2 Т]а)и]а)\.
М в>> о ) '1,л
* '
“
'
*'а
’
Здесь число «технологических» (двойственных) переменныхг^а) обычно значительно меньше (в случае задачи о прикрепле­нии к прокатным станам — не более 200—300). Используя обоб­щенные градиентные методы с растяж ением пространства, этузадачу удается решить с относительной точностью 10~6 но ф унк­ционалу за несколько сотен шагов (в случае прокатных ста­н о в — за 600—800). Далее, по формулам

2V^к = пип ( ст + а )к +*Ши<1а)0 \анаходим величины V^к. В случае, когда в правой части минимумс некоторой (заданной априори) точностью е достигается дляо д н о г о значения /, имеет место формула х т — А {к (т. е. заказ
А<к прикрепляется полностью к /-м у поставщ ику). Если мини­мум достигается на нескольких значениях / = ]\ , / 2, . . . , /*, т озаказ Агк следует распределить между поставщ иками с номе­рами / 1, / 2, . . . , / в. Для подобных заказов, которых на практике
бывает обычно немного, распределительную задачу можно ре­шить обычными методами линейного программирования, по­скольку размерность ее, как правило, значительно меньше раз­мерности исходной задачи. Возможно такж е применить прием
(аналогичный уж е примененному приему) сведения этой новой
задачи линейного программирования к задаче нелинейного(в данном случае квадратичного) программирования значитель­но меньшей размерности. В конечном счете в результате ука­занных вычислений получится объемно-календарный план при­крепления потребителей к поставщикам.

После получения планов такого прикрепления в процессе
взаимодействия АСОУ предприятий (потребителей и поставщи­ков) и транспортных организаций решаются вопросы о точной
спецификации поставок, определении размеров партий и точ­ного времени их доставки потребителям. Для решения этих за­дач в первом приближении могут употребляться описанпые
выше (в § 11.5) методы управления запасами. Критерием дляоптимизации при этом может служить минимизация с у м м а р ­н ы х п о т е р ь у поставщиков, потребителей и транспортных
организаций по сравнению с оптимальными планами производ­ства, поставок и перевозок, составленными по раздельным длякаждого предприятия и каждой транспортной организации кри­териям. Как уже отмечалось выше, буферные запасы при этомлучш е всего создавать на предприятиях-поставщиках. Запасына существующих территориальных базах Госснаба можно былобы тогда использовать в качестве общегосударственных резерв­ных (страховых) запасов. Заметим, что наличие таких базвносит дополнительные усложнения в решение распределитель­ной задачи, поскольку подобные базы могут выступать одновре­менно и в качестве потребителей, и в качестве поставщиков.
Само собой разумеется, что вся перечисленная система пла­нов взаимных поставок по горизонтальным связям должна авто­матически и притом согласованно пересчитываться при всяком
изменении взаимоувязанной по вертикальным связям системы
объемно-календарных планов различных уровней.

12.1. Естественный интеллект и проблемы его моделированияК ак известно, материальным носителем человеческого интел­лекта является его мозг, который в соответствии с современны­ми представлениями состоит примерно из 10 миллиардов нерв­ных клеток, называемых н ей р о н а м и * ). К аж дая нервная клетка
состоит из тела клетки (с внутренним ядром) и отростков — од­ного аксона и одного или нескольких дендритов. Тело клеткиг
равно как и толщина отростков, имеют микроскопические раз­меры. Н евелика обычно и длина дендритов. В то же время
аксоны могут иметь значительную длину (измеряемую иногда
многими десятками сантиметров). Различают чувствительные
нейроны, получающие информацию из внешней среды, вставоч­ные нейроны, связывающие одни нейроны с другими, и эффекторные нейроны, посылающие импульсы к исполнительным ор­ганам (например, к мышечным волокнам). Чувствительные ней­роны называются
такж е
сенсорными
илиафферентными,а эффекторные — эфферентными. Вставочные нейроны иногда
именуются такж е интернейронами.
Чувствительные нейроны получают информацию либо непо­средственно от внешних раздражителей, либо (через свои дендриты) от специальных рецепторных клеток, реагирующих натакие раздражители. Сигнал, вырабатываемый любым нейроном,передается от тела клетки через аксон. Аксоны, заключенные вспециальную оболочку, образуют так называемые нервные во­локна, Сигналы по этим волокнам передаются электрохимиче­ским путем со скоростью от нескольких метров до нескольких
десятков метров в секунду. Каждый такой сигнал представляет
собой конечную последовательность нервных импульсов. Частота
следования импульсов ограничивается тем, что нервное волокно,пропустив очередной импульс, должно в течение некоторого вре­*) Мы опускаем здесь из рассмотрения другие структуры, входящ ие омозг (например, систем у кровоснабж ения), которые играют мепее сущ ест­венную роль собственно в процессе мышления.

мени, называемого периодом рефракторности, восстанавливать
свою проводимость. В течение этого периода (длящегося обычно
от 0,001 до 0,005 с) нервное волокно «отдыхает» (точнее, «на­капливает силы») и неспособно проводить сигналы.
Каждый нейрон можно рассматривать как преобразователь
информации, входные сигналы которого передаются через дендриты, а выходной сигнал — через аксон. В в о з б у ж д е н н о мсостоянии нейрон передает через аксон на выход серию импуль­сов, интенсивность которой зависит от степени возбуждения.
Если рассматриваемый нейрон не является эффекторным, то еговыходной сигнал (через аксон) поступает на входы (дендриты)других нейронов через так называемые синапсы — промежутки
микроскопического размера между кончиками аксона одной клет­ки и дендрита другой. В этом промежутке под влиянием сиг­нала у , пришедшего на аксон, выделяется специальное химиче­ское вещество — так называемый медиатор, возбуждающий сиг­нал Хг соответствующего дендрита. Таким способом отдельные
нейроны связываются в сложные структуры, аналогичные рас­смотренным в гл. I комбинационным и последовательностным
схемам.
Имеются, правда, и существенные отличия от схем, рассмот­ренных в гл. I. Во-первых, нейроны представляют собой не чи­сто дискретные элементы, поскольку в зависимости от величины
возбуждения могут испускать сигналы разной интенсивности.
Во-вторых, под влиянием тех или иных условий может менятьсяп р о в о д и м о с т ь синапсов (синаптических контактов), что эк­вивалентно возможности перестройки соответствующих дикретноаналоговых схем. Совокупность имеющихся фактов делает практичеки достоверной гипотезу, что величины р; проводимости
всех синаптических контактов мозга составляют содержание егодолговременной памяти, в то время как величины я* = 2*(г) те­кущего возбуждения всех его нейронов — содержание его опе­ративной (краткосрочной) памяти. Синаптические контакты де­лятся на возбуждающие и тормозящие. В первом случае возбуж­дение синапса способствует, во втором — препятствует возбуж­дению нейрона, дендрит которого «подключен» к данному
синапсу. Если среди т дендритов какого-либо нейрона первыек дендритов подключены к возбуждающим синапсам, а послед­ние пг — к дендритов — к тормозящим синапсам, то условие этого
нейрона в первом приближении представится формулой
Ь = р1х 1 + р2х 2+ . . .+ р л - р и Л +1 - . . . - ртХт - а ^ о .

(12.1)

Здесь через р* обозначены проводимости синапсов, через х { —пришедшие на них (через аксоны других нейронов) входные
сигналы, а через а — порог возбудимости данного нейрона. Ве­личина 2 возбуждения рассматриваемого нейрона зависит отуровня превышения порога, т. е. от величины Ъ (при Ь < 0 воз­буждение отсутствует полностью).
Что же касается механизма перевода информации из опера­тивной памяти в долговременную, то, с нашей точки зрения,наиболее вероятна гипотеза различного изменения проводимости
р* синаптического контакта в случае различных сочетаний уров­ней возбуждения двух подключенных к нему нейронов; присовпадении возбуждений проводимость возбуждающих синапсов
увеличивается, а тормозящих — уменьшается, при несовпадении
возбуждений изменения происходят в противоположном направ­лении (так называемая положительная обратная связь). Величи­на изменения при этом, по-видимому, зависит как от самих
нейронов, так и от истории их предшествующих возбуждений
(т. е. от достигнутых значений проводимости).
При моделировании нейронов зачастую игнорируют аналого­вую сторону их поведения, ограничиваясь лишь дискретной. Ч а ­ще всего в качестве такого искусственного нейрона выбирают
пороговый элемент задержки с двумя состояниями (0, 1) и вход­но-выходными сигналами, такж е принимающими лишь состоя­ния 0 и 1. Величины р* в условии (12.1) выбираются при этомравными единице, так что условие возбудимости элемента вс л е д у ю щ и й момент дискретного времени I + 1 имеет вид
к(1)-1(1)>а,(12.2)
где через к(1) и 1(1) обозначены соответственно количества воз­бужденных (в настоящий момент времени I) возбуждающих итормозящих входов данного порогового элемента, а через а == СОП81 — величина порога. Комбинацией подобных элементов (сразличными величинами порогов) можно смоделировать любуюп о с л е д о в а т е л ь н о с т н у ю схему (конечный автом ат).
Моделирование отдельных нейронов и составление из полу­чаемых моделей тех или иных схем представляют собой одиниз возможных методов (путей) построения искусственного и н­теллекта, который мы будем называть структурным. Этот путьвесьма привлекателен с точки зрения задачи изучения челове­ческого мозга. Вместе с тем при современной технологии онне привел пока к созданию искусственного интеллекта, способ­ного всерьез потягаться с естественным интеллектом хотя бына одном поприще, важном в практическом отношении. Причи­на здесь та, что уже для моделирования (даже не очень точ­ного) одного нейрона требуются достаточно сложные электрон­ные схемы, а для проявления сколько-нибудь интересных дляпрактики интеллектуальных свойств требуется создавать ансамб­ли из весьма большого числа нейронов (по крайней мере мно­гих десятков, если не сотни ты сяч).
Кроме того, необходимо выбрать достаточно хорошую схемупх соединения, соответствующую схемам, реализующимся в че­ловеческом мозгу. Современная же экспериментальная нейро­физиология прямыми методами может разобраться в схемах
соединения в лучшем случае нескольких десятков нейронов. Воз­можности же косвенных методов также пока не очень велики.
Ввиду перечисленных трудностей прямого (структурного)моделирования, при построении искусственного интеллекта напрактике обычно используется совершенно иной подход, который
естественно называть феноменологическим (или функциональ­ны м). Сущность его состоит в том, чтобы строить и воспроиз­водить на универсальных ЭВМ различные а л г о р и т м ы , оп­ределяющие те или иные ф у н к ц и и человеческого интеллекта.
Среди таких функций особый интерес представляют собой за­дачи классификации, задачи распознавания образов (прежде
всего зрительных и слуховых), задачи обучения (накопления
знаний), способность вести разговор на естественных язы ках,способность к целенаправленным действиям, к логическому вы­воду и др. Нашей дальнейшей задачей в этой главе будет оз­накомление с некоторыми методами моделирования перечислен­ных функций.
Заметим, что задача построения искусственного интеллекта
может ставиться (и уже ставится на практике) в двух различ­ных постановках — у з к о й и ш и р о к о й . В узкой постановке
задача создания искусственного интеллекта отделяется от задачи
моделирования органов чувств, человеческой речи и т. п. Припято считать, что подобная задача будет решена, когда удастся
создать систему программ и соответствующее информационное
наполнение для ЭВМ, которое позволит ей тем или иным спосо­бом вести любые осмысленные диалоги с человеком на есте­ственном языке (через пишущую машинку, алфавитно-цифровой
дисплей и т. п.). При этом ЭВМ должна обнаружить з н а н и я( у м е н и е ) и способность к о б у ч е н и ю новым знаниям (уме­нию ), так, чтобы человек, ведущий с ней диалог, в течение
сколь угодно большого промежутка времени не смог отличитьего от организованного аналогичным образом диалога с обычным
собеседником — человеком.
Это условие, называемое обычно тестом Тьюринга, еще недостигнуто в сколько-нибудь полном объеме, хотя эффективные
системы диалога ЭВМ — человек в определенных (заранее ог­раниченных) предметных рамках созданы и работают, полностью
имитируя диалог человек — человек. То же касается умения:в определенных областях интеллектуальной деятельности (на­пример, в игре в шахматы) уже созданы программы, намного
превосходящие умение среднего шахматиста.
Вторая — более ш ирокая постановка задачи создания искус­ственного интеллекта — требует моделирования не только соб-ствепно интеллектуальной деятельности, но и органов чувств
(прежде всего зрения и слуха), а такж е речи и двигательных
(моторных) функций (прежде всего функций человеческой ру­ки ). Эта задача стоит сегодня как практическая задача создания
интеллектуальных роботов.
Хотя задача создания универсальных интеллектуальных ро­ботов, способных заменить человека в любом виде физического
труда, в чисто интеллектуальном плане может вполне доволь­ствоваться уровнем теста Тьюринга, для автоматизации многих
видов умственного труда такой уровень уже явно недостаточен.
Ясно, например, что вообще не было бы никакого смысла соз­давать ЭВМ, если бы они могли выполнять в ы ч и с л и т е л ь ­н у ю работу лишь на уровне рядового интеллекта.
Очевидная необходимость на отдельных направлениях авто­матизации интеллектуальной деятельности намного превосходить
рядовые возможности часто рождает максимализм в требовани­ях к искусственному интеллекту. Задача же превзойти в искус­ственном интеллекте наивысшие достижения человеческого ин­теллекта на в с е х направлениях (или хотя бы сравняться сними), разумеется, несравненно сложнее задачи моделирования
рядового человеческого интеллекта. Не исключено, что необхо­димость решения подобной задачи в полном объеме п р а к т и ­ч е с к и никогда и не возникнет.
Необходимо, однако, подчеркнуть, что никаких а п р и о р ­н ы х ограничений для автоматизации интеллектуальной деятель­ности не существует. Нередко в качестве доказательства наличия
таких ограничений приводят знаменитую теорему Гёделя о не­полноте арифметики. Суть ее заключается в том, что любая
формальная теория, заключающ ая в себе арифметику натураль­ных чисел, неполна в том смысле, что в ней обязательно су­ществуют содержательно истинные, но формально недоказумые
предложения (не выводимые из аксиом данной теории).
Данный аргумент, однако, неубедителен, поскольку ограни­чения, обуславливаемые теоремой Гёделя, справедливы в равной
мере не только для машины, но и для человека, остающегосяв рамках данной теории. В то же время ничто не мешает ма­шине (так же, как и человеку) выйти за пределы чисто аб­страктного мышления, включив в состав своих действий зна­менитую ленинскую триаду: наглядное созерцание (экспери­мент) — абстрактное мышление — практика.
К ак уже отмечалось выше, ЭВМ успешно применяются дляавтоматизации как первого элемента триады (эксперимент), таки последнего (управление технологическими процессами). Н е­трудно показать, что при таком (естественном) расширении про­цесса приобретения знаний теорема, аналогичная теореме Гё­деля, уже не имеет места.

I

12.2. Математические основы классификациии распознавания образов
Задача классификации состоит в группировке заданных объ­ектов в некоторое конечное число классов си с2, . . . , с*. Обычно
предполагается, что эти классы не имеют общих элементов (объ­ектов); классы могут быть заданы простым перечислением ихэлементов:с* = {си ,(г = 1, 2, . . . , к ). В более сложных
случаях классификация предполагает составление описаний объ­ектов и правил, определяющих по этим описаниям принадлеж­ность объектов к тем или иным классам. Процедура применения
таких правил к какому-либо объекту (т. е. установления класса,к которому он принадлежит) называется распознаванием обра­зов. Понятие образа в этом определении эквивалентно понятию
класса.
Классификация на основании описаний не обязательно долж­на быть детерминированной. Широко распространены методы
вероятностной классификации (и распознавания), задачей кото­рых является установление вероятностей принадлежности класси­фицируемого (распознаваемого) объекта к тому или иному клас­су. Широко распространены постановки задач адаптивной клас­сификации, называемых, иначе, задачами обучения распознава­нию образов. При обучении специальному обучающемуся алго­ритму (программе) предъявляются один за одним описания
некоторых объектов вместе с именами классов, к которым онипринадлежат. Обучающийся алгоритм с каждым очередным ш а­гом обучения (предъявлением очередного классифицируемого
описания) уточняет правила классификации. После работы в те­чение определенного времени в режиме обучения алгоритм пере­ключается на режим экзамена. При экзамене наименования
классов, к которым принадлежат предъявляемые алгоритму объ­екты, определяются с помощью выработанных правил класси­фикации. Путем сравнения их с истинными классами (изве­стными экзаменатору) определяется процент правильных рас­познаваний, по которому судят о качестве обучающегося ал­горитма.
Помимо алгоритмов обучения, в классификационных задачах
используются и алгоритмы самообучения. Их задача состоит втом, чтобы сгруппировать предъявляемые описания объектов вклассы на основании свойств самих этих описаний (без указа­ния имен классов априори).
Трудность задачи состоит в том, что правила классификации
заранее не • фиксируются. Они вырабатываются самим алгорит­мом в результате анализа предъявляемых описаний. Разумеется,обойтись полностью без всякого априорного знания ни одинпрактически действенный алгоритм самообучения не может. Сте­пень совершенства алгоритма определяется прежде всего тем,насколько глубоко упрятаны эти знания. В наиболее развитой
форме алгоритмы самообучения связываю тся со 'случайными м у ­тациями первоначально заложенных (тоже случайных) класси­фикационных правил и алгоритмами отбора полезных мутаций
(аналогичными естественному отбору в развитии живых орга­низмов) в процессах и с п о л ь з о в а н и я на практике получае­мых классификаций.
12.2.1.
Байесовские процедуры. Из теории вероятностей хо­рошо известно правило Байеса вычисления условмой вероятно­сти р ( В \А ) совершения события В при условии, что произошло
событие А:(12.3)
где р ( А ) — (безусловная) вероятность совершения события А ;р ( А , В ) — вероятность одновременного совершения событий В
II А .
Байесовский подход к распознаванию образов заключается ввыведении правила, устанавливающего вероятность р ( А {\В5) од­ной из взаимно исключающих друг друга г и п о т е з А и А 2, . . .
. . . , А к о состоянии (принадлежности) наблюдаемого объекта взависимости от исходов В и В 2, . .., В п эксперимента (результата
наблюдения) с этим объектом. Для такой условной вероятности(в зависимости от исхода эксперимента) в общем случае имеет
место формула
(12.4)

Используя формулы (12.3) и (12.4), можно вычислять ве­роятность того или иного события А { в зависимости от исходаВз эксперимента с ним. При этом предполагается, что известныне только априорные (безусловные) вероятности гипотез А {,но и условные вероятности различных исходов эксперимента вслучае, когда любая данная гипотеза действительно имеет ме­
сто. Эти последние вероятности могут вычисляться по формуле
(12.3), для чего должны быть известны вероятности р ( А и 2?,).
Для пояснения сказанного рассмотрим следующую задачу:пусть требуется в коллективе спортсменов, состоящем из баскет­болистов (гипотеза А {) и футболистов (гипотеза А 2) осуществ­лять вероятностное распознавание принадлежности спортсменак одной из двух категорий по его росту. Предположим, что рас­сматриваю тся три градации роста: высокий ( # 4), средний (В 2)и низкий (#*). Пусть, далее, известно, что 60% коллектива
составляю т баскетболисты и 40% — футболисты, а условные ве-1роятности
р(В>\Аг)соответственноравныр ( В х\ А 1) = 0,7;
р ( В г\А х) = 0,3;
р ( В 3 \ А х) = 0;
р ( В х\А 2) = 0,1;
р ( В г\А г) = 0,8;
р ( В 3 \ А ^ = 0 Л.
Иными словами, 70% баскетболистов имеет высокий рост,30% — средний, а баскетболистов низкого роста нет вовсе. Ана­логично, среди футболистов доля спортсменов высокого роста
составляет 10%, среднего — 80% и низкого — 10% . Допустим,мы случайно встретили одного из спортсменов высокого роста.
Какова вероятность того, что он — баскетболист? Ответ на этотвопрос дает формула (12.4) при г = 1, / = 1:
г>(А \ Н \Р И х I 1/р

Р ( В 1 \ Л 1 ) ' Р ( Л 1)

| А1) . Р { А 1) + Р {В г | А 2) . р {А 2)“~ 0 91

0 ,7 -0,6 + 0 , 1 *0,4 ~Таким образом, признак высокого роста в рассматриваемом
коллективе достаточно информативен: он с большой вероятно­стью указывает на принадлежность спортсмена к первому клас­су. П ризнак среднего роста менее информативен: с вероятностью
0,64 он определяет принадлежность спортсмена ко второму клас­су. П ризнак низкого роста в рассматриваемом случае наиболее
информативен. Он однозначно (с вероятностью 1) идентифици­рует футболиста.
Таким образом, байесовский подход позволяет не только ре­ш ать (вероятностную) задачу распознавания, но и ранжиро­вать наблюдаемые признаки (исходы экспериментов) по их ин­формативности. Однако крупным недостатком этого подхода,сильно ограничивающим его практическое применение, является
необходимость большого объема предварительных данных об объ­ектах классификации, а именно вероятностей р ( А {) и р{В ^\А {).
Поскольку описанная процедура дает в общем случае лишьвероятности принадлежности объекта к тем или иным классам,окончательный выбор класса, к которому следует его отнести,сопряж ен с возможностью ошибок, которые могут вызывать теили иные потери. Величина (математическое ожидание) потерь(?п при отнесении объекта с исходом эксперимента (описанием)В х к классу Аз обычно задается формулой видаС л -(12.5)

г=1
где через со# обозначены некоторые заданные постоянные коэф­фициенты. Объект относится к тому классудля которогоож идаемая величина потерь
принимает наименьшее возмож­ное значение.
Если этот минимум достаточно велик, то переходят к более
подробным описаниям В 1ч (делают дополнительный эксперимент)*Если при этом известны условные вероятностито мож­но повторить только что описанную процедуру классификациидля нового (расширенного) описания. Если минимальная вели­чина потерь все еще велика, можно производить дальнейш еерасширение описания. Часто в подобной п о с л е д о в а т е л ь ­н о й процедуре классификации при решении вопроса о про­должении экспериментов (расширении описаний) принимают вовнимание не только величину возможных потерь в результате
неправильной классификации, но и цену эксперимента для по­лучения новой информации. При этом минимизируется сумма
величины потерь в окончательной классификации и цен всехпроделанныхдля ее осуществления
экспериментов,чтоприводит к достаточно сложным задачам динамического програм­мирования.
В случае, когда вероятности р (С {) и р(В ,\С {) заранее неиз­вестны (что чаще всего имеет место на практике), применяются
другие классификационные процедуры, описываемые ниже.
12.2.2.
Процедуры классификации по расстоянию. Если опи­сания объектов можно представить в виде точек в метрическом(в частности, евклидовом) пространстве, то одни из простейших
процедур классификации и распознавания основаны на опреде­лении расстояний г ( х , х {()) вновь предъявляемой точки (описа­ния) х от ранее предъявленных точек х {{) или других точек,характеризую щ их сформулированные классы объектов. В евк­лидовом пространстве для каждого класса А , составленного източек # (1), х {2\ >. х Ы) можно различным способом определить
расстояние г ( х , А ) от новой точки х до класса А. Можно, на­пример, в качестве г ( х , А ) выбрать расстояние г(х, а) до точки
а= —и ( х (1)х<т))(предполагается, что точки заданы на-борами своих евклидовых координат). Другой способ — положитьг (х , А) = Ш1ПГ(Х, #<й)в
гВозможны и другие способы определения расстояния г ( х , А ).
Когда же способ определения такого расстояния выбран, а не­которые начальные классы А и . . . , А к уже сформированы, томожно распознавать предъявляемую точку х, относя ее к бли­жайшему по расстоянию классу. Этим способом может бытьорганизован и процесс пополнения классов А и . . . , А к в режиме
самообучения. Если априори известно, что минимальное рас­стояние 5 между двумя точками разных классов больше макси­мального расстояния I между двумя точками одного и того ж екласса, то при известном $ или I очевидным образом строится
процедура самообучения (автоматической классиф икации), на­чиная «с нуля» (т. е. с пустых начальных классов). Если, на­пример, известна величина 5, то, отнеся первую точку х {1) кклассу А и следующую точку х {2) мы отнесем к тому же классу,«если г ( х {' \ х (г}) < 8 , и к другому классу, если г ( х {1\ х (2)) > з.
П родолж ая аналогичным образом, легко построить требуемую
классификацию.
В более сложных случаях может оказаться, что интересую­щ ие классификатора классы могут получаться как объединения
построенных только что указанным способом первичных классов
(например, в один класс под именем «дом» могут объединяться
внеш не не похожие друг на друга одноэтажные хижины и не­боскребы). Для правильной классификации в этом случае тре­буется дополнить режим самообучения режимом обучения, в ко­тором представители объединяемых классов указываю тся извне.
Разум еется, правильное объединение возможно и в режиме са­мообучения, но при условии переведения описаний в простран­ство других признаков (связанных в данном случае, прежде
всего, с назначением объекта, т. е. с целью, которую он вы­полняет).
12.2.3.
Линейные классификационные процедуры. Предполо­ж им , что описания объектов представляют собой точки х =~ ( # 1, # 2, •••, Ят) в евклидовом пространстве Кт , заданные сво­им и координатами. Принято говорить, что система функций
^^(x), . . . , 1 к(х) отделяет (в пространстве Кт ) классы А и Л 2, . . .
. . . , А к, если объект с описанием х тогда и только тогда при­надлеж ит классу Л,-, когда /Д л ) = т а х {/Дж), ] = 1, . . . , к) (г == 1, 2, . . . , к ). Классы А и . . . , А к называются линейно отде­лим ы м и (в пространстве К ш), если все функции /Д я) линейны,ч. е. если /; (х) = а ^ х г + . . . + Щшх ш + а ;т+1 (/ = 1, . . ., к) с по­стоянными коэффициентами аИ. Процедуры линейного отделения
классов носят наименования ли н ейн ы х классификационных про­ц ед ур . Для удобства записи описания х = ( х и . . . , х т) обычнозам еняю тся эквивалентными описаниями у = (у\, . . . , У1), где^=
1, Уг = х { ( 1= 1, . . . ,1), УI = 1. Тогда роль функций/Д х ) выполняют скалярные произведения (*/*аД, где а5 — век­тор (ац, О]2, . . . , ал) ( 1 = т + 1). Векторы а^ составляют к Х 1матрицу Л, которую мы будем называть классификационной
матрицей.
Если априори известно, что классы А и . . . , А к линейно от­делимы, то существует такая обучающаяся классификационная
процедура:Выбирается некоторая начальная матрица Л (1) (обычно ну­левая) и строится последовательность Л (1), Л (2), . . . , Л (п) клас­сификационных матриц. Переход от матрицы Л (п) к матрицеЛ (п+1) (п = 1, 2, . . . ) осущ ествляется после предъявления дляклассификации очередного описания у {п) по следующим пра­вилам:1)Если описание у (п) оказалось отнесенным к правильному
классу, то Л (п+1) = Л (п\2)Если произведена неверная классификация, т. е. еслиобъект с описанием у (п) оказался отнесенным не к своему клас­су А и то найдутся такие /, что у {п)а{]1) ^ у{п)а \п), где а\п) и а\п) —соответственно ;-я и 1-я строки матрицы А Ы). Для каж ­дого такого / полагаем
я1”! 1* — а\п) + у{п\ а(Г1/+1) = а{,\} — у(п\Тем самым формируется новая классификационная матрицаЛ (п+1), некоторые строки которой отличны от соответствующих
строк матрицы Л (п).
Доказано, что в случае линейной отделимости заданных клас­сов описанпая процедура через конечное число шагов приводитк правильной классификационной матрице Л (т). Возможны идругие обучающиеся процедуры линейной классификации, ко­торые не обязательно приводят к той же самой классификаци­онной матрице Л (т).
12.2.4. Об одной нелинейной классификационной процедуре»Если отделяющими функциями 1г(х) являются полиномы (отпеременных х и х 2, . . . , х т) некоторой степени $ > 1, то для на­хождения их коэффициентов можно применить процедуры ли­нейной классификации, перейдя от признаков х и . . . , х т к при?*2

ЧТП

.

I

•

I

знакам х и х 2, . . х т, х {х 2, х^х^ .. .,хх х { , . . . , х т , где 1 Х-г и - г . .*. . . + 1т =Поскольку полиномами можно аппроксимировать
функции более сложной природы, при достаточно большом $с помощью указанного приема можно осуществить практически
любую нелинейную классификацию. Однако, поскольку размер­ность пространства новых признаков очень быстро (экспонен­циально) растет с ростом 5, на практике подобный прием све­дения нелинейны х классификационных процедур к линейным
употребляется лишь при небольших значениях 5.
12.2.5. Персептрон. Гипотетическое классификационное уст­ройство, называемое персептроном, представляет собой факти­чески нелинейную классификационную процедуру особого вида*работающую в пространстве булевых признаков ( х и х 2, . . х гп)Напомним, что булева переменная (в данном случае признак)может принимать лишь два значения: истина (и) и ложь (л)»Удобно сводить, однако, булевы признаки к арифметическим,полагая и = 1, л = 0.
Персептрон представляет собой двухуровневое устройство
(процедуру). На первом уровне с помощью системы булевых
функций Уг==и ( х и х 2, . . . , х т) (1 = 1, 2, . . . , п), называемых
первичными предикатами, происходит преобразование системы
первичных булевы х признаков ( х и х 2, . . . , х т) в систему вто­ричны х булевы х признаков ( у и у 2, . . . , у п)• При этом, хотя длякаждой булевой функции /* выписан полный набор аргументов
(х\, # 2, . . . , #ш), не обязательно, чтобы она фактически зависе­ла от них всех. Более того, как правило, на практике более

употребительны так называемые локальные предикаты, каждыйиз которых зависит от относительно н е б о л ь ш о й части при­знаков х и. . . , Хщ. Персептрон называется ограниченным к -гопорядка, если все его первичные предикаты являю тся булевыми
функциями не более чем от к переменных ( к < т ) .
Производя арифметизацию (и = 1, л = 0) булевых призна­ков у и . . . , у п, мы погружаем пространство этих признаков вобычное евклидово пространство, в котором организуется та илии н ая линейная процедура обучения классификации, например та,которая была описана в п. 12.2.3. Классификационные способ­ности персептронов при удачном выборе первичных предикатов
могут быть очень высокими. Более того, если на первичные
предикаты не налагать никаких ограничений, то персептрон
можно обучить классификации произвольных разделенных об­разов (попарно непересекающихся классов). Для этой цели длякаждого образа (класса) А; (/ = 1, 2, . . . , к) нужно построить
первичный предикат Уз = ^ { х и . . . , х т ), принимающий значение
и = 1 на всех описаниях, принадлежащ их классу А$, и значе­ние л = 0 на всех остальных описаниях, а в пространстве вто­ричных признаков ( у и у 2, . . . , ук) в качестве классификацион­ной матрицы выбрать матрицу А = Нау11 (аи = 1,
= 0 при г ФФ ] для всех г, / = 1 , 2 , . . . , к ) .
Более сильным является утверждение о том, что любая клас­сиф икация может быть реализована персептроном, у которогов множество первичных предикатов входят все так называемыем а ски. Под маской здесь понимается предикат, который прини­мает значение и = 1 тогда и только тогда, когда все заданные
признаки (признаки маски)Х(2, .
^ п р и н и м а ю т значения
и = 1, т. е. конъю нкция (логическое произведение) заданных
признаков
х
. .., х ^ .
12.2.6.
Общий случай преобразования описания. Если клас­сифицируемые объекты характеризую тся признаками х и х 2, . . .
*.., х т, каждый из которых может принимать любое заданное
множество значений (зависящ ее от номера признака), то с целью
удобства последующей классификации часто применяют прием
замены первичных признаков х и х 2, . . . , х т вторичными призна­ками у и у г, . . . , Уги вычисляемыми по заданным формулам: у ( == ^ ( х и ...» #ш) (&= 1, ...» п ). В случае распознавания классов
двумерных или одномерных функций вещественного перемен­ного в качестве первичного (приближенного) представления бе­рутся просто таблицы значений этих функций в выделенном
множестве точек, достаточно густо заполняющих области опре­делений этих функций. Такие таблицы и будут первичными
описаниями исследуемых объектов.
Например, пг X гс-матрица ъ = И2у1
1 может рассматриватьсяк а к таблица значений двумерной функции 2 = /(х , у) в точкахс координатами а,-, а, (I, / = 1, 2, . . . , т ). Ее можно тракто­вать как числовое (приближенное) представление некоторогор исун ка , если считать значение
степенью черноты рисункав точке (а,-, а,-). Если, скажем, матрица ъ имеет вид
1
0
0
0
1

0
1
0
1
0

0
0
1
0
0

0
1
0
1
0

1
0
0
0
1

то ее можно трактовать как изображение черного знака умноже­ния X на белом фоне.
Получаемые таким образом непосредственно из «изображе­ний» классифицируемых функций первичные признаки
обыч­но даже вообще не называются признаками. Наименование
признаки присваивается только получаемым из них вторичным
признакам VI = 8 1 ( 211 , . . %пп). С такой терминологией мы будем
иметь дело ниже, рассматривая зрительные (графические) извуковые образы.
12.2.7.
Системы признаков, инвариантны е относительно пре­образований. Очень часто, особенно при распознавании зритель­ных образов, возникают ситуации, когда в один класс зачис­ляю тся объекты, получаемые один из другого с помощью техили иных преобразований. Например, в один класс геометриче­ских фигур зачисляются обычно все квадраты, независимо огих расположения и размеров. В данном случае все представите­ли класса квадратов могут быть получены из одного фиксиро­ванного квадрата путем применения к нему преобразований по­добия, смещения и поворота. В других случаях для порождения
всех элементов класса может оказаться недостаточно одного
элемента и потребуется использовать для этой цели некоторое
множество элементов.
В случае возникновения описанных ситуаций проблемы клас­сификации и распознавания существенно упрощаются при пере­воде описаний объектов в пространство признаков, инвариант­н ы х относительно рассматриваемых преобразований. Смысл ин­вариантности состоит в том, что признаки должны иметь однии те же значения для объектов, получаемых один из другогос помощью рассматриваемых преобразований. Например, еслиотдельный треугольник на плоскости характеризуется шестью
параметрами (обычно координатами верш ип), то класс равных
(конгруэнтных) треугольников может быть характеризован тре­мя параметрами (например, длинами сторон). Эти параметры
(признаки) инвариантны по отношению ко всем сдвигам и по­воротам. Для характеристики всех подобных треугольников си­стемой инвариантных параметров могут служить величины двух■углов или отношения длин двух любых сторон к длине третьей
стороны.
12.2.8.
Группы, полугруппы и частичные группы преобра­зований. В рассмотренных случаях допустимые преобразования,т. е. преобразования, которые не выводят преобразуемые объек­ты за пределы рассматриваемого класса, образуют группу пре­образований С. Это означает, что для любых двух допустимых
преобразований ^ и 72 их произведение 4 ^ 2 (последовательное
выполнение преобразований ^ и 72) такж е допустимо. Тожде­ственное преобразование е (сохраняющее преобразуемый объект
неизменным), очевидно, всегда допустимо. Оно обязательно
включается в любую группу преобразований. Кроме того, в груп­пу включаются преобразования 7“ 4, обратные всем преобразова­ниям группы. Обратное преобразование, выполненное после пря­мого преобразования, возвращает объект в исходное состояние,т. е. 7 • 7”1= е; аналогично, 7“47 = е.
Если исключить из условий обязательное наличие обратного
элемента и тождественного преобразования е, приходим к более
широкому понятию полугруппы преобразований. Если к томуже произведение 7172 не обязательно принадлежит допустимому
множеству преобразований (или вообще не сущ ествует), то го­ворят о частичной полугруппе (или частичной группе) преоб­разований.
Чтобы пояснить необходимость введения частичных полу­групп (групп) допустимых преобразований, рассмотрим пример
распознавания буквы Е. При небольших поворотах исходного
образца этой буквы она продолжает идентифицироваться как таже буква. Однако при повороте на 90° против часовой стрелкиона примет вид и и будет идентифицироваться как другая бук­ва (буква «ш»). Поскольку поворот на 90° может быть пред­ставлен в виде произведения малых поворотов, то в данном
случае допустимой будет не группа (и даже не полугруппа),а лишь частичная группа преобразований.
Часто (как это имело место и в рассмотренных случаях)допустимые преобразования задаются конечными наборами (ве­щественных) непрерывных параметров 7 = 7 (^1, *2, . . ^)» при­чем законы перемножения и обращения преобразований явля­ются непрерывными функциями этих параметров. Подобные
группы (частичные группы) называются непрерывными группа­ми (непрерывными частичными группами) или группами Л и(частичными группами Ли) . Наиболее часто частичные группыЛи состоят из всех преобразований, достаточно б л и з к и х (позначениям характеризующих их параметров) к тождественному
преобразованию е (или, как принято иначе выражаться, состав­ляющих некоторую окрестность преобразования е ). Подобные
образования принято называть локальными группами Л и .
33 в. М, ГлушковНа понятии локальной группы Ли может быть основан одиниз наиболее мощных типов классификационно-распознающих
процедур, которые мы будем называть процедурами локальных
покрытий классифицируемых образов. С этой целью для каждого
класса А выбирается конечное множество образцов-эталонов
а2, . . аг этого класса, для каждого из которых строятся
локальные группы Ли преобразований 24, 22, . . гг, не выводя­щих преобразованный объект (а* = I (я*)) за пределы рассмат­риваемого класса или по крайней мере не приводящих его вдругие 'классы. Обозначая через а{г{ множество объектов, полу­чаемых из объекта а{ всеми преобразованиями из 2*, выбирают
такое число эталонов аи чтобы множества а&{ в совокупности
покрывали все множество А, т. е. чтобы каждый элемент а ^ Авходил в состав хотя бы одного из множеств а*2*.
Осуществив подобные покрытия всех классифицируемых об*разов, мы полностью решим задачу классификации. При предъ­явлении для распознавания нового объекта д осуществляется
решение задачи минимизации расстояния (в пространстве при­знаков) между объектом д и объектом каждого из множеств а*2,(для всех классов Л ). Объект будет принадлежать тому классу,для которого это расстояние равно нулю (на практике — доста­точно близко к нулю).
В общем случае решение задачи распознавания подобным
образом может приводить к весьма громоздким вычислениям.
На практике, однако, достаточно часто приходится встречаться
ч; частным случаем, когда, во-первых, все 2* одинаковы (равныг) и, во-вторых, 2~‘ = 2, т. е. для каждого элемента из г суще­ствует обратный элемент, также входящий в 2. Тогда для ре­шения задачи распознавания какого-либо объекта а необходимо
найти такой эталон а*, для которого минимальное расстояние
между шаблоном и элементами множества 2 имеет наименьшее
значение. Н а практике это обычно означает, что выбирается не­которое число элементов 1и /2, . . . , 13 из 2 и находится пара( сЦр а}) с минимумом расстояний между элементами пары. Воз­можно, разумеется, и применение общих приемов нахождения
минимума между элементами пары (а(*4, *2, . . . , и ) , а,), гдеа(1и *2, . . . , и ) есть результат воздействия на объект а пере­менного преобразования 1(11у 1г, . . . , *г), пробегающего всю ло­кальную группу 2.
Вместо вычисления расстояний между векторами а, и а, иног(аГаз)д а прибегадют к вычислению коэффициента р*,;*= ,„ ., где
1а М1 Лв числителе стоит скалярное произведение векторов ах и аи а взнаменателе — произведение их длин. Ищется пара (/, /) , длякоторой коэффициент ри принимает максимальное значение,лосле чего объект относится к классу с полученным таким об-разом номером /. Ввиду аналогии между приведенной формулойи формулой (9.16) гл. IX ( § 9 . 4 ) , коэффициент ри иногда на­зывают коэффициентом корреляции между /-м эталоном и пре­образованным объектом.
12.2.9.
Формальные грамматики. Перечисленные выше про-,цедуры классификации и распознавания наиболее эффективныпри распознавании относительно простых объектов. Для состав­ных объектов обычно применяются комбинированные процеду­ры, состоящие из нескольких уровней. На нижнем уровне про­изводятся классификация и распознавание отдельных составных,частей объекта, а на последующих уровнях — их различных
комбинаций. Один из наиболее простых случаев подобной много­уровневой классификации представляет собой классификации
лексических образов, выражаемых словами или фразами на фор­мальном или естественном языке. Средством для подобной клас­сификации лексических образов служат так называемые грам­матики, или, более точно, формальные грамматики. Рассмотрим
сначала так называемые контекстно-свободные грамматики.
Для построения языка совокупности лексических объектовс помощью такой грамматики задаются двумя классами (алфа­витами) символов. Так называемые терминальные символы, ко­торые мы будем обозначать строчными буквами русского алфа­вита, представляют собой элементарные единичные объекты рас­сматриваемого языка (слова или буквы). Нетерминальные сим­волы, обозначаемые прописными буквами латинского алфавита*а также их сочетания будут обозначать те или иные лексиче­ские образы (классы фраз или отдельных слов). Сама грамма­тика С задается с помощью конечного числа правил подстано­вок, называемых продукциями. Пусть, например, алфавит не­терминальных символов содержит буквы р, 5, у, о, а алфавит*терминальных символов включает все буквы русского алф авитаи дополнен знаком пробела □ .
Рассмотрим систему продукций:р -> $ С ]у$ —>■волк
у->-ест
р - ^ Щ у Щ о $ -> л и са
5 -► белка
5туш канчик

у - увидит
онебоо ->• мясоОтправляясь от единственного начального символа, в каче­стве которого выберем символ р, будем производить соответ­ствующие подстановки вместо левых частей продукций их пра­вых частей. На первом уровне подстановок получим два обоб­щенных лексических образа зЩу и зЩуЩо, которые будут
обозначать классы фраз, состоящих в первом случае из подле33*

жащ его ( 5) и сказуемого (г), а во втором — из подлежащего
{5), сказуемого (и) и дополнения (о). Осуществляя дальней­шие подстановки, получим фразы русского язы ка: «волк ви­дит», «белка ест», «лиса видит дерево», «белка ест мясо»,«волк ест небо» и т. п.
Все полученные фразы являю тся правильно построенными сточки зрения синтаксиса русского языка, хотя с точки зрения
семантики язы ка (т. е. его смыслового содержания) последниедве фразы лишены смысла. Однако с помощью грамматик мож­но описывать не только синтаксис, но и семантику языка. Дляэтой цели в грамматику вводятся дополнительные нетерминаль­ные символы. В данном случае достаточно объекты, выполня­ющие роль подлежащего ( 5), разделить на два класса (отряда):хищников (С) и грызунов (/?). Тогда система продукций:р
5 □ ест
онебо рС □ ест □ мясор—□ видит
видит П о

о

мясо

8-* С

С -> в о л к
С-+ лиса
/?->- белка
/?->- туш канчик

будет порождать лишь осмысленные (семантически правильные Уфразы русского языка.
Построение подобных семантических грамматик может бытьположено в основу классификации фраз любого естественногоязы ка по принципу осмысленных и лишенных смысла. Правда,ограничение лишь классом контекстно-свободных грамматик вы­нуждает при этом, как правило, значительно увеличивать какчисло нетерминальных символов, так и число продукций.
Более мощным средством формального представления син­таксиса и семантики языков являются так называемые контек­стно-зависимые грамматики. Продукции в таких грамматиках
имеют вид |Лг)^ г ) , где нетерминальный символ А заменяет­ся последовательностью из нетерминальных и терминальных
символов, лишь находясь в контексте |. ц двух последова­тельностей | и т] нетерминальных и терминальных символов.
Простая замена А на Р (независимо от контекста) не допуска­ется. В случае, когда последовательности | и ц пусты, возвра­щ аемся к уже рассмотренным выше контекстно-свободным про­дукциям.
Контекстно-зависимые грамматики, будучи более сложнымидля изучения и оперирования, обеспечивают вместе с тем наи­более мощное средство для порождения языков. Среди контек­стно-зависимых языков, содержащих бесконечное множество
фраз, нетрудно найти примеры языков, не порождаемых ника­кими конечными контекстно-свободными грамматиками.

Заметим, что, используя понятия «близко», «далеко», «внут­ри», «снаружи», «справа», «слева» и др., можно описать линг­вистическими образами пространственные (зрительные) образыдля составных объектов. Тем самым круг применения грамма­тического подхода к задачам классификации может быть суще­ственно расширен.
12.2.10.
Семантические сети, фреймы и сценарии. Для обыч­ны х языковых форм характерно линейное представление ин­формации. Это обстоятельство вносит дополнительные трудно­сти в представление семантических связей между отдельными
элементами языка. Поэтому гораздо удобнее вместо линейных
структур пользоваться более общими структурами данных. Осо­бенно большое значение в задачах искусственного интеллекта
приобрели сетевые структуры (см. гл. VI ) , которые в этом слу­чае получили специальное наименование семантических сетей.
Б вершинах таких сетей располагаются различные понятия, на­правленные же связи между вершинами соответствуют различ­ного рода отношениям между этими понятиями. Заметим, чтоструктура языка, включающая в себя не только терминальные
записи, но и все дерево вывода, определяемого формальной
грамматикой, представляет собой иерархическую структуру (см.
тл. VI ) , являющуюся, как известно, частным случаем сетевой
структуры. Для целей искусственного интеллекта возможно ис­пользование и реляционных структур данных.
По линиям вертикальных (иерархических) связей располага­ются отношения вхождения в классы: например, понятие «бел­ка» является частным случаем понятия «грызун» (представитель
отряда грызунов). Понятие же «грызун» является частным слу­чаем понятия «млекопитающее», «животное» и т. д. По линиям
боковых связей располагаются другие отношения. Например,понятия «белка» и «шерсть» связаны между собой отношением
«быть покрытым».
Семантические сети могут быть сделаны обучаемыми и ра­стущими. Последнее означает возможность автоматического до­бавления в сеть новых узлов по мере появления в опыте еоиспользования новых понятий. При стабилизации числа узлов
сети в процессе ее обучения между узлами могут устанавли­ваться новые связи. В ряде случаев оказывается целесообраз­ным устанавливать силу связей, придавая им характеризующийэту силу параметр с вещественными значениями. Значению
этого параметра, равному нулю, соответствует фактическое от­сутствие указанной в структуре сети формальной связи. Увели­чение значения параметра означает усиление роли данной свя­зи, чтц может быть использовано при установлении порядка
распределения «возбуждения» от одних узлов сети к другим.
Т ак, в зависимости от аспектов рассмотрения (зависящего отхарактера использования сети) связь понятий «белка» — «хвост»может оказаться более важной, чем понятий «белка» — «шерсть»ги наоборот. Значения весов связей увеличиваются при каждом
полезном использовании связи (например, для целей классифи­кации) и уменьшаются, когда она длительно не используется.
Короче говоря, обучение семаптической сети напоминает про­цесс обучения естественных нейронных сетей.
В семантические сети общеязыкового назначения включают­ся обычно лишь универсальные (всегда существующие) связи.
Возможны такж е семантические сети, описывающие ситуациии составные образы, которые могут иметь частное значение и.
зависеть от точки зрения или личного опыта наблюдателя. В ка­честве примера можно указать на связь понятий «сердитый»или «добрый» с именем конкретного человека, понятия «ок­но» с понятием «комната» (бывают ведь комнаты без окон)*наконец, связи между отдельными элементами поверхно­сти геометрического тела (например, куба), рассматривае­мого с определенной позиции. Семантические сети, описы­вающие
подобные ситуации, принято называть фреймами.
С помощью фреймов описываются те или иные конкрет­ные сцены.
Для описания п о с л е д о в а т е л ь н о с т и действий исполь­зуются так называемые сценарии, т. е. конечные множества
сцен, связанных между собой условиями перехода от одних сцен(фреймов) к другим. Таким образом, отдельные статические
фреймы оказываются связанными в семантическую сеть (блоксхему алгоритма развертывания сценария), создавая в резуль­тате сложный динамический фрейм. Например, сценарий, за­ключающийся в том, что наблюдатель, рассматривавший в пер­вой сцене куб с его торца (когда видима лишь одна грань) гсместился во второй сцене вправо и вверх (в результате чегаему оказались видимыми пары граней), может быть представ­лен в виде последовательности двух фреймов (рис. 12.1). Здесь
через А обозначено понятие «куб», через В — «поверхность ку­ба», через х — «квадрат», через у — «параллелограмм». Отноше­ние «а» связывает куб с его поверхностью, а отношения е, (3,•у, б — поверхность с составляющими ее элементами. Отношения
V, ц представляют собой отношения примыкания (соседства)элементов (сверху, справа, сверху). Описания сцен на рис. 12.1
соответствует видимым картинкам на рис. 12.2.
Разумеется, отношение примыкания должно включать в себятребование п о л н о г о совпадения соответствующих сторон при­мыкающих друг к другу параллелограммов (для простоты мысчитаем видимые элементы поверхности параллелограммами, чтоможно считать справедливым при достаточном удалении наблю­дателя от куба).

К ак и в случае общих семантических сетей, для фреймов
может быть задействован режим обучения. Кроме того, часто
применяются фреймы с избыточными элементами, которые присравнении контрольного фрейма с заданной оценкой могут опу­скаться, так что узнавание сцены будет происходить по непол­ному совпадению.
оА

а
9В
У

7 1

<ьх

Рис. 12.1

Рис. 12.2

Фреймы могут формироваться из семантических сетей. Т ак,найдя в семантической сети узел, соответствующий понятию
«комната», мы можем, начиная от него, двигаясь по связям, вы­ражающим отношение «входит в состав» (является составной
частью ), восстановить все предметы, которые могут быть в ком­нате, включая и составляющие ее элементы (стены, пол, пото­лок, окно, дверь, стол, стул, кровать и т. д.). Добавляя к най­денным узлам связи, выражающие относительное расположение
объектов (окно в стене, стул на полу и т. д.), сформируем пол­ный фрейм, соответствующий понятию «комната». Параметрыоил связей будут отражать частоту встречаемости соответству­ющих комбинаций узлов в практике обучения семантической
сети.
12.3. Распознавание зрительных образов
Зрительные образы в задачах автоматического распознавания
обычно формируются с помощью оптических систем на прямо­угольной решетке искусственных рецепторов (фотоэлементов),называемой, по аналогии с человеческим глазом, сетчаткой (ре­тиной). Каждый рецептор образует аналоговый сигнал (величи­н у уровня освещенности), который затем преобразуется в циф­ровую форму или, как иногда еще говорят, к в а н т у е т с я поуровням. В простейшем случае двухуровневого квантования навыходах рецепторов возникают булевы сигналы, достаточныед л я распознавания контурных рисунков; при многоуровневом
квантовании сигналы интерпретируются как целые или рацио­нальные числа, кодирующие полутоновые рисунки. Устанавли­вал рецепторы для различных цветов, можно кодировать и цвет­ные изображения.
Помимо описанного параллельного ввода зрительных образов
может применяться и более простой последовательный ввод. Све­товой (точечный) зайчик обегает распознаваемый рисунок в тойили иной последовательности (системе развертки), а отраж енный
свет, фиксируясь фотоумножителем, преобразуется в аналоговый*а затем и в цифровой сигнал. Полученный таким образом на­
бор (последовательность) сигналов, так же как и в параллель­ном случае, удобно представлять в виде матрицы 11агу11, где х —булевы или числовые величины.
Распознавание зрительных образов в общем случае основы­вается, как правило, на методах, уже описанных в предыдущем
параграфе. В случае простых (не составных) образов наиболее
употребителен метод сравнения с эталонами, описанный я
п. 12.2.8. Например, если требуется распознавать детали какоголибо механизма или прибора, можно запомнить в качестве эта­лонов трехмерные образы всех таких деталей с соответствующей
градацией окраски их поверхностей. Затем последовательно ре­шают для каждого шаблона задачу проекции эталона в переме­щающийся глаз наблюдателя (на двумерную сетчатку) при егоосвещении перемещающимся источником света. Если через
(х , г/, г) обозначить координаты глаза, через (и, у, ю) — коор­динаты источника света, а через I — интенсивность этого источ­ника, то на сетчатке воображаемого глаза возникнет изображе­ние Иг/^1, каж дая компонента которого будет функцией семипеременных: х, г/, г, гг, V, гг;, I. Находя минимум расстояния
между заданным изображением Иж*,-Н и переменным изображе­нием эталона \\уцII, считают распознаваемое изображение изо­бражением того эталона (детали), для которого указанный ми­нимум имеет наименьшее абсолютное значение.
Указанный метод в чистом виде на практике почти не при­меняется, ввиду сложности вычислений. Размерность задачи
(число переменных) можно уменьшить. Во-первых, вводя в зри­тельную систему дальномер, можно определить расстояние отглаза до распознаваемой детали и тем самым уменьшить число
независимых координат (х , г/, г), определяющих положение гла­за относительно детали, с трех до двух. Далее, вводя вместо
абсолютных освещенностей относительные (в сравнении с какойлибо фиксированной точкой детали), можно устранить перемен­ную I. Наконец (и этот прием наиболее часто применяется напрактике), можно предварительно выделить контуры наблюдае­мой детали и осуществлять сравнение также с контурной про­екцией эталона на сетчатку воображаемого глаза. При этом ос­вещенности вообще исключаются из рассмотрения, а варьируе­мыми (при наличии дальномера) оказываются только два пара­метра, определяющие относительное расположение глаза и на­блюдаемой детали. В случае наличия эталонов с одинаковыми
жонтурами, различающ ихся окраской, цвет (или чередование по­лутонов) отдельных частей поверхности детали может бытьпривлечен для распознавания в качестве дополнительного при­знака.
Даже при всех указанны х упрощениях задача распознаваниядаж е не очень сложных объемных деталей требует достаточно
большого объема вычислений. Чтобы решать ее за разумное
время (сравнимое с восприятием человека), требуется ЭВМ вы­сокой производительности. Поэтому задача эффективного и при­том достаточно дешевого распознавания зрительных образов тре­бует создания специализированных схем, в которых выделение
признаков (в частности, контуров изображения) и преобразова­ний эталонов выполняется не последовательными, а параллель­ными процедурами. В случае распознавания двумерных изобра­ж ений (например, букв и цифр) положение еще более упроща­ется, поскольку (в соответствии с п. 12.2.8) можно подвергать
преобразованиям (притом не всей группы движений, а лишьлокальной группы сдвигов) не эталоны, а само распознаваемое
изображение. На этом принципе построены и успешно работают
высокоэффективные читающие автоматы (превосходящие воз­можности человека), специализированные на чтении печатных
букв и цифр.
Высокоэффективные (и притом обучающиеся и переобуча­ющиеся) системы автоматического распознавания относительно
простых зрительных образов строятся такж е на принципе персептрона (см. п. 12.2.5).
При распознавании сложных (составных) изображений наи­более эффективными оказываются многоуровневые (чаще все­го — двухуровневые) автоматические распознающие системы.
Н а первом (нижнем) уровне производится распознавание от­дельных деталей и описание их взаимного расположения. Навтором уровне производится сопоставление полученных описа­ний с заполненными в ЭВМ фреймами — эталонами. Задача рас­познавания деталей на изображениях составных п р о с т р а н ­с т в е н н ы х объектов, как правило, усложняется за счет того,что изображения одних деталей могут частично перекрывать
изображ ения других деталей. С помощью дальномера, однако,можно разобраться, какие детали находятся ближе, а какие
дальше. Тем самым появляется возможность определить, какая
часть наблюдаемой детали заменяется более близко расположен­ными деталями. Это обстоятельство учитывается соответствую­щим отсечением частей эталонов, проектируемых на воображаесмую сетчатку, так что опознание идет не по целому изображе­нию, а по некоторой его части. Разумеется, при таком опозна-нии возможны ошибки, которые, однако, имеют место и в слу­чае обычного (человеческого) распознавания.
Заметим, что при распознавании рукописных букв и цифр*,написания которых варьируются в достаточно широких преде­лах, бывае.т удобно рассматривать их как составные объекты.
Например, цифра 3 считается при этом составленной из двух«деталей», буква А — из трех «деталей» и т. п. При распозна­вании подобных «деталей» используются специальные признаки
(например, углы наклонов касательных в начале и в конце «де­тали»), Можно такж е использовать более сложные, не сводя­щ иеся к сдвигам и поворотам, локальные группы Ли преобра­зований наблюдаемых деталей для их последующего сравненияс эталонами либо, наконец, просто иметь достаточно много эта­лонов для возможных вариаций начертаний каждой детали.
При вписывании букв и цифр в специальные шаблоны (как этоимеет, например, место при индексации писем) возможны и бо­лее простые методы распознавания. Примером таких методов
может служить метод подсчета числа пересечений контура рас­познаваемого знака с некоторыми отрезками (векторами), поло­жение которых относительно поля знака точно фиксировано (на­пример, системы горизонтальных и вертикальных отрезков, пере­секающих поле зн ака).
Следует подчеркнуть, что задача распознавания зрительных
образов произвольной природы представляет собой одну из важ ­нейших задач искусственного интеллекта. В этом нетрудно убе­диться, вспомнив, что у человека решением этой задачи занята
добрая половина нейронов головного мозга. Поэтому создание
систем машинного зрения, которое по в с е м параметрам пре­взошло бы (или хотя бы сравнялось) зрительные способности
человека,— задача не такого уж близкого будущего. Практиче­ски же сегодня задача ставится таким образом, чтобы к концу
столетия системы машинного зрения превзошли возможности
человека во всех (или хотя бы почти всех) областях, важ ны хдля прикладных целей и, прежде всего, для обеспечения функ­ционирования интеллектуальных роботов. В определенных об­ластях (например, в быстром отыскании мелких различий рас­познаваемого отображения от эталона) эта задача уже решена.
Неплохо решается сегодня задача автоматического распознава­ния букв и цифр, напечатанных стандартным шрифтом. ЭВМделает это не только быстрее человека, но и надежнее распо­знает плохо пропечатанные знаки (правда, пока лишь в томслучае, когда человек не прибегает к угадыванию неразборчи­вых букв из контекста). Однако в целом в автоматизации рас­познавания зрительных образов предстоит выполнить еще не-»малый объем работ, чтобы достичь упомянутой выше практи­ческой цели.

12.4. Генерация изображений
Задача генерации изображений оОратна задаче распознавания
зрительных образов. В задаче распознавания по изображению
надо дать его словесное описание (в простейшем случае — ука­зать имя класса, к которому оно принадлеж ит). В задаче гене­рации, наоборот, по словесному описанию производится восста­новление описываемого изображения на экране дисплея или спомощью графопостроителя. В простейшем случае эта задачареш ается тривиально: по имени класса выбирается из памятиЭВМ один из эталонов, принадлежащ их этому классу, и про­изводится его отображение. Поскольку эталон, как правило,представляет собой просто закодированные цифровым кодом зпачения освещенности различных точек сетчатки, проблема сводит­ся по существу к простому цифро-аналоговому преобразованию.
При необходимости генерации изображений составных объ­ектов используют в качестве исходной информации их фреймы.
При этом в качестве изображений элементарных объектов бе­рутся соответствующие эталоны, а их комбинация в составной
объект производится в соответствии с отношениями, заданнымиво фрейме.
Наиболее сложна задача генерации изображения по произ­вольному (неформализованному) его описанию на одном из ес­тественных человеческих языков. Она распадается на две за­дачи: перехода от неформализованного описания к формализо­ванному (обычно в виде фрейма) и генерации изображения пополученному формализованному описанию. Первая задача по су­ществу эквивалентна пониманию с м ы с л а текстов на естествен­ных язы ках. Она пока еще (в полном виде) далеко не реш ена.
Однако основные принципы ее решения достаточно ясны. Речьидет о распознавании лингвистических образов, прежде всего —законченных фраз. К их классификации и распознаванию мож­но применить рассмотренный выше (в п. 12.2.9) аппарат фор­мальных (семантических) грамматик или расширенных семан­тических сетей, в которых для выраж ения понятий и отношений
между ними фиксируются различные (по возможности все) ихконкретные языковые представления. Сети должно быть изве­стно, например, что отношение «А слева от Б» эквивалентно
отношению «Б справа от А», что в состав описания отношения
могут быть включены слова «находится», «расположен» и т. п.
12.5. Распознавание и генерация речевой информации
Подобно тому как письменная речь представляется последо­вательностью букв (вклю чая пробел и знаки препинания), уст­ная речь может быть представлена в виде последовательности
элементарных звуков (включая паузу), называемых фонемами.

Обычно для русского язы ка достаточно использовать 42 фонемы,которые включают в себя паузу, гласные звуки а, о, у, э, и, ыгполугласный й, твердые согласные ж, ш, ц, з, мягкую согласнуюч и два варианта (мягкий и твердый) всех других согласных;увеличение количества фонем улучш ает описание тонких ню ­ансов произношения, но затрудняет решение задач генерациии распознавания речи.
Записы вая отдельные фонемы на специальные аналоговые ЗУ(например, на специальный магнитный барабан или диск), мож­но (с помощью ЭВМ) управлять выборкой и воспроизведениемна громкоговорителе этих фонем в любых желаемых последова­тельностях. Такие последовательности задаются в обычной (циф­ровой) памяти ЭВМ текстами, которые вместо обычных бук»используют символы соответствующих фонем. При упрощенном
(42-фонемном) представлении речи задача автоматического пере­вода текстов с обычного (буквенного) представления в фонем­ное не представляет особых затруднений, так как описанный
автоматический синтезатор речи может переводить в звуковую
форму обычные (письменные) тексты.
Подобные устройства созданы и работают в различного родасправочно-информационных системах. Правда, при сокращенном
наборе фонем и отсутствии управления интонациями подобная
синтаксическая речь имеет не вполне человеческое звучание, ногбудучи полностью (и притом без особого напряж ения слуха) по­пятной и разборчивой, вполне удовлетворяет обычным требова­ниям к такого рода системам. Впрочем, пути дальнейшей шли­фовки машинной речи достаточно ясны, так что в случае воз­никновения надобности в ее дальнейшем «очеловечивании» осо­бых затруднений не предвидится. Заметим такж е, что для целей
автоматического обучения дикции и правильному произношению
(при изучении иностранных языков) может употребляться дру­гой способ искусственного воспроизведения речи. В этом способев аналоговую память записываются не фонемы, а отдельные
слова, части фраз и даж е целые фразы, произносимые дикторомс хорошо поставленным голосом; по заданному письменному тек­сту ЭВМ воспроизводит нужные комбинации этих записей.
Задача автоматического распознавания речи несравненно
сложнее задачи ее автоматического синтеза (генерации) и ре­ш ается сегодня на уровне, пока еще существенно уступающем
возможностям человеческого слуха. Прежде всего сделаем не­сколько замечаний о превращении речевых сигналов в дискрет­ные (цифровые) описания. Наиболее простой путь — прямые
замеры, с превращением в цифровую форму, амплитуд речевого
сигнала в достаточно близкие моменты времени (обычно равно­отстоящ ие). При подобном прямолинейном подходе к кодирова­нию речевой информации, с тем чтобы не потерять нужной дляраспознавания информации, на одну секунду звучания речидолжно приходиться порядка 7000 замеров амплитуд с точностью
порядка 1%, что составляет около 50 тысяч бит информации наодну секунду звучания речи. Это количество чересчур великодля эффективного решения задачи распознавания. Поэтому напрактике употребляются различные способы сжатия первичной
информации о речевом сигнале.
Мы опишем кратко лишь один из наиболее употребительныхна практике методов сж атия первичной речевой информации,относящийся к классу так называемых параметрических мето­дов. При его использовании спомощью
аналого-цифровых
устройств непрерывно вычис­ляю тся значения параметров,характеризующ их огибающуюи тонкую структуру текущего
спектра воспринимаемого ре­чевого
сигнала.
Например,огибающая,показанная
на
рис. 12.3, может быть прибли­женно представлена параболой«лу = а0 + а 4ф + а 2ф 2,атонкая
структура — синусоидой
у =•= Ь 8т(& ф + с), так что весь изображенный на рисунке спектр
может быть представлен шестью параметрами: а 0, а,, а2, Ъ, &, с(в действительности их может быть, разумеется, и больш е).
Речевая информация характеризуется тем, что полученные па­раметры являются относительно медленно меняющимися функ­циями времени, так что дискретность их измерений может бытьсделана достаточно большой. В результате таких измерений уда­стся сж ать первичную информацию до 2400 и даже до 1200 битна секунду звучания речи. Именно к этой информации (илик сжатой любым другим способом) будут применяться описы­ваемые ниже методы классификации и распознавания.
Наиболее просто задачи классификации и распознавания р е­ш аются для отдельно произносимых слов, когда число таких
слов невелико (обычно от 20 до 50). В этом случае достаточно
эффективно действует простейший механизм сравнения (по рас­стояниям или коэффициентам корреляции) с эталопами. П р ав­да, для надежного распознавания голосов различных факторов
чаще всего требуется иметь свой набор эталонов для каждогоиз них. Для настройки системы на голос нового диктора емутребуется произнести в определенном порядке все распознавае­мые слова. Пофонемный метод распознавания при малом коли­честве слов оказывается более сложным, поскольку границы
между фонемами в параметрическом представлении (как, впро­чем, и в непосредственном функциональном) установить нелегко.

При распознавании слитпой речи трудности еще более воз­растают, особенно в том случае, когда размеры словаря (коли­чества используемых слов) вырастают до нескольких сотен итем более нескольких тысяч слов. Здесь, как и в случае фопсм,нелегко определить границы между отдельными словами. При­чин такого положения по крайней мере три: во-первых, между
словами может не быть четких пауз; во-вторых, паузы чащевсего заполняются шумами, трудно отличимыми от речевого сиг­нала; в-третьих, паузы внутри слов (например, в слове «четы­ре») могут быть более длительными, чем паузы между словами.
В силу этих причин для распознавания слитной речииспользую тся методы динамического программирования, миними­зирующие различие не между отдельными распознаваемыми сло­вами и соответствующими эталонами, а между п о с л е д о в а ­тельностями
словиразличными последовательностями
эталонов. При этом используются различные сегментации (чле­нения фразы на отдельные слова) и минимизируются суммы
различий сегментов от эталонов при разных сегментациях.
Подобная процедура весьма трудоемка и при реализации науниверсальны х ЭВМ требует очень высокого быстродействия дляраспознавания речи в темпе ее произнесения (или, как обычно
говорят, в реальном масштабе времени).
Выход здесь, как и при распознавании зрительных образов,состоит в создании специализированных (относительно дешевых)схем, распараллеливающих процесс распознавания. Заметим т а к ­же, что описанный метод предполагает предварительную пастройку системы на распознаваемый голос. Настройка состоитв создании эталона каждого используемого слова, для чего не­обходимо произнести и ввести в систему (по одному разу) вопределённом порядке все слова заданного словаря. Одним изпреимуществ рассматриваемого метода является возможность
относительно быстрой смены (с последующей настройкой) ирасш ирения используемого словаря.
Подобный же метод варьируемых сегментаций и минимиза­ции различий последовательностей можно применить не для по­словного, а для пофонемного распознавания (хотя переход кпофонемному распознаванию связан обычно с увеличением ко­личества ошибок). Для увеличения надежности пофонемного
распознавания следует более тщательно изучить различные кон­кретные формы представления одних и тех ж е фонем, произно­симых различными голосами, с различными интонациями, в раз­личных темпах и в различных словах. Короче говоря, необхо­димо изучить и найти достаточно удобные и экономные пред­ставления для локальных групп Л и возможных преобразований
различны х фонем. В этом случае можно применить описанныевы ш е (в п. 12.2.8) общие методы классификации и преобразо­вания. Еще более простые методы реш ения этих задач сталибы возможными при нахождении параметрических представле­ний отдельных фонем, инвариантных относительно преобразо­ваний построенных (локальных) групп (см. п. 12.2.7).
На практике сегодня построены адаптивные (настраивающие­ся на любой заданный голос) системы распознавания слитной
человеческой речи со словарем до 1000 слов, способные доста­точно надежно работать даж е на фоне шумов. Системы распо­знавания отдельных слов с небольшим словарем строились ещев 60-е годы. Развитие микропроцессоров позволило выпускать
компактные и достаточно дешевые системы распознавания от­дельных слов с достаточно большими словарями (несколько со­тен слов).
12.5.1. Общая задача распознавания звуковой информации.
Н а описанных принципах могут быть построены системы рас­познавания не только речевой, но и любой другой звуковой ин­формации. Для распознавания нот (автоматического переклады­вания на ноты) мелодий, исполняемых одним музыкальным ин­струментом, такие системы оказываются даж е проще систем дляраспознавания речевой информации. Для более специальных це­
лей (например, диагностики неисправностей механизмов по из­даваемому ими шуму) могут с успехом использоваться другие
методы классификации и распознавания, изложенные в § 12.2.
12.6. Проблема понимания текстов на естественных языках:и обучения знаниям
Ответ на вопрос о путях автоматизации понимания текстов*затрудняется отсутствием общепринятого определения того, чтопредставляет собой понимание. С нашей точки зрения, суть по­нимания текста состоит в возбуждении этим текстом всех узлов
семантической сети, связанны х с понятиями и отношениями,используемыми в тексте. Разумеется, речь идет прежде всегоо возбуждении всех узлов, н е п о с р е д с т в е н н о связанных сданным текстом. Такое возбуждение в свою очередь должно вы­звать возбуждение новых узлов (но уж е в более слабом виде)и т. д. В результате на сети как бы «высвечиваются» фреймы,сцены и сценарии, расширяющие фреймы и сценарии исходного
текста (в соответствии с накопленными в сети знаниям и). Н а­пример, ф раза «я вхожу в комнату» должна вызвать высвечи­вание фреймов конкретных комнат после возбуждения узлов
«дверь», «окно», «стол» и других понятий, связанны х с поня­тием «комната». Сочетание слов «комната» и «вхожу» должно
приводить к тому, что наиболее ярко высветится понятие, свя­занное с ними обоими, а именно понятие «дверь» (разумеется,,если предшествующий опыт, проторивший связи в сети, был свя­зан с более частым вхождением в комнату через дверь, а нечерез окно или, скажем, простую дыру в стене).
Дальнейш ая задержка внимания на приведенной фразе мо­жет привести к дальнейшему расширению круга высвечиваемых
понятий. В их число могут войти, например, понятия «квар­тира», «дом» и др. В случае, когда в предложенной фразе речьидет не об абстрактных категориях, желательно дополнить про­цесс высвечивания фреймов выводом соответствующих ему зри­тельных (а возможно, и звуковых) образов. Адекватность по­следовательностей таких образов распознаваемому тексту явится
внешним свидетельством того, что система действительно поняла
предъявленный ей текст. Способы генерации зрительных и звуковых образов по их описаниям (включаемым в фреймы) ужеизлагались выше.
Следует подчеркнуть, л то в семантическую сеть, помимо по­нятий и отношений, которые можно определить через другие,более простые понятия и отношения, могут включаться и пер­вичные объекты (неопределимые словесно). Для их понимания
системой необходимо включать в сеть описания образов таких
объектов (наглядных примеров). Например, для объяснения от­ношения «справа от» может использоваться несколько картинок,изображающих те или иные объекты, расположенные справа отдругого объекта, или группы объектов. Описания таких образов
помещаются в семантическую сеть (в виде некоторых ее узлов)наравне с понятиями, выражаемыми словами.
Далее, проблема понимания текстов на естественных язы кахне может считаться до конца решенной, если предназначеннаядл я этих целей автоматическая система не способна вести ос­мысленный диалог с человеком и, самое главное, обучаться врезультате такого диалога. Обучение состоит в изменении и рас­ширении семантической сети системы. Встретив в процессе диа­лога незнакомое ей слово, например «банан», система должна
опросить: что это такое? Получив объяснение типа «банан естьразновидность плода», «банан съедобен», «он имеет продолго­ватую форму» и т. п., система должна автоматически ввести всеть узел с именем «банан» и связать его с уже известными ейпонятиями «плод», «съедобный», «продолговатый» и др. Ж ела­тельно такж е, чтобы в дополнение к подобным словесным опи­саниям системе были представлены образцы реальных бананов
(или их рисунков). Составляя их зрительные описания и за­поминая полученные в результате эталоны, система связываетях с понятием «банан» в качестве наглядных примеров этого
понятия.
При ведении диалога важно уметь осуществлять автомати­ческий перевод с внешнего языкового представления на языксемантической сети и обратно. С этой целью удобно использовать

аппарат формальных семантических грамматик с процедурами
классификации и объединения языковых оборотов, равнознач­ных по смыслу. Поскольку описания классов эквивалентных обо­ротов в полном словаре были бы очень громоздкими, можно
употребить специальные способы сжатия таких описаний с по­мощью использования возможно более общих понятий (нетер­минальных символов грам м атики). Например, вместо того, что­бы запоминать огромное количество эквивалентностей типа: ф ра­за «человек идет» эквивалентна фразе «идет человек», фраза
«заяц бежит» эквивалентна фразе «бежит заяц» и т. д., следует
запомнить лишь одну эквивалентность: фраза «объект движет­ся» эквивалентна фразе «движется объект».
Разумеется, любые семантические эквивалентности в языкедо известной степени условны, поскольку даже в приведенных
примерах перестановка подлежащего и сказуемого заключает всебе небольшое изменение смысловых акцептов. Однако именно
подобные условные эквивалентности позволяют системе изложить
предъявленный ец текст «своими словами», что такж е является
одним из признаков понимания его смысла. Более того, длявозможности упрощенного изложения предъявленного системе
текста, помимо эквивалентностей, необходимо использовать ипроцедуры усечения фраз, например отбрасывание дополненийи определений, и т. п. В состав описания классов эквивалент­ности могут быть введены коэффициенты предпочтительности
различных (эквивалентных друг другу) языковых оборотов. Приусловии использования в первую очередь наиболее употреби­тельных оборотов система как бы получает свой индивидуаль­ный «литературный стиль». Формированию такого стиля способ­ствует такж е введение предпочтительности тех или иных сокра­щений или, наоборот, вставок, относительно мало влияющих насмысл фраз, но придающих им особый языковый колорит.
Следует заметить, что построение семантических грамматикв значительной мере облегчается применением процедур, строя­щих семантическую классификацию в результате анализа предъ­являемых системе правильных и неправильных фраз (как с точ­ки зрения синтаксиса, так и с точки зрения семантики). Одиниз способов такой классификации был предложен автором еще
в 1901 г. Суть его состоит в следующем. Имея набор правильных
сочетаний разных подлежащих с одним и тем же сказуемым,например «студент говорит», «профессор говорит», «отец гово­рит», «сын говорит» и т. д., система автоматически объединяетвсе такие подлежащие в один класс (в данном случае в класс
говорящих) и дает ему некоторое имя А . Далее, если оказыва­ется, что определенная часть объектов построенного класса со­четается с другим сказуемым, например со сказуемым «дума­ет», то система выдвигает гипотезу, что это верно и для осталь34 в. М. Глушков

ных объектов данного классса. Сформулировав (случайпым об­разом) некоторые фразы с новым сказуемым, например «сту­дент думает», «отец думает» и получив подтверждение от че­ловека, что это — правильные фразы, система объединяет обасказуемых в один класс В и образует фрагмент грамматики:АВ, Астудент, А -*■ профессор, Асын, А -*■ отец; В -► гово­рит, В -+■ думает.
В последующем опыте система может узнать, что образован­ный ею класс А может быть назван именем «человек» и темсамым включает соответствующий нетерминальный символ всвою семантическую сеть. Разумеется, описанная процедура неисключает того, что первичная классификация окажется невер­ной (например, что профессор будет помещен в один класс сграммофоном). Однако в последующем опыте подобные ошибки,как правило, выясняются и исправляются.
12.6.1.
Формальные диалоговые системы. От описанных си­стем, ведущих осмысленный диалог с человеком (которые покаеще достаточно далеки от полной реализации), следует отличать
формальные диалоговые системы, которые могут вести внешне
осмысленный диалог на достаточно узкую тему. Понимание во­проса (или ответа) человека здесь заменяется обычно выделе­нием из него заранее записанных в память системы слов — де­скрипторов и формированием в зависимости от них одного иззаранее записанных в память системы (или формируемых спе­циальной вероятностной или детерминированной процедурой) от­ветов (вопросов). Например, на вопрос «какая сегодня погода»,выделив дескрипторы «погода» и «сегодня», система может сфор­мировать ответ: «тепло, но сыро», а на вопрос «какая погода
была вчера» — ответ: «ясно, но прохладно». При повторении
первого вопроса может быть сформирован ответ: «об этом меняуже спрашивали». При наличии в вопросе неизвестных системе
дескрипторов она обычно формирует просьбу: «сформируйте во­прос иначе», а при вторичном непонимании ей остается при­знаться в своей несостоятельности или перевести разговор взаданное русло.
В настоящее время построено довольно много автоматических
диалоговых систем подобного рода. В ряде из них вместо про­стой идентификации дескрипторов используется грамматический
анализ фраз. При достаточно большом словаре такие системы
производят впечатление довольно умного и даже интересного
собеседника. Однако, не будучи способны обучаться и не имеядостаточно мощной семантической сети, они не могут считаться
действительно интеллектуальными системами. Их ограниченность
обычно легко обнаруживается при изменениях темы разговораи особенно при попытке научить систему какому-нибудь целе­направленному поведению, например какой-нибудь игре.

12.7. Планирование целенаправленных действий
Проблема планирования целенаправленных действий может
возникать как в статическом виде, когда цель в процессе еедостижения не меняется, так и в динамическом, когда цель пе­ременна. С первой постановкой мы сталкиваемся, например, ког­да требуется спланировать движение руки робота, чтобы захва­тить заданный неподвижный предмет, со второй — когда этотпредмет перемещается. В обоих случаях речь идет о нахожде­нии законов изменения некоторых непрерывных параметров.
Иными словами, задача планирования возникает здесь в непре­рывной постановке. К ак уже отмечалось в гл. 1, любая непре­рывная задача в результате ограниченной точности измерений
сводится к дискретной, когда характеризующие планируемое
действие параметры меняются дискретными шагами.
В чистом виде дискретная постановка задачи планирования
целенаправленных действий заключается в нахождении некото­рого пути на графе. Более того, задается некоторое конечное
множество состояний {а а2, . . . , ап} (вершин графа) и некото­рое Множество элементарных действий (операторов) {ф,, ф2,..., фА), под воздействием которых состояния могут переходить
друг в друга: ф(а, = ак, где к — некоторая функция от I и /.
Предполагается, что в начальный момент времени объект нахо­дится в состоянии а,. Если теперь задать конечную цель пла­нируемых действий в виде некоторого множества М состоянийаи в которые объект требуется перевести, то планом достижения
поставленной цели считается последовательность ф = ф^, .
ф^элементарных действий, которая переводит рассматриваемый
объект из состояния а{ в одно из состояний множества М.
Состояния, которые проходит объект при последовательном
применении к нему элементарных действий Ф^,следует
рассматривать как промеокуточные цели при достижении конеч­ной цели сра1. Поскольку все эти цели так или иначе опреде­ляются при решении задачи планирования достижения конечной
цели, то такую задачу иногда называют задачей целеполагания
или, более точно, задачей промежуточного целеполагания. Дляпояснения постановки и методов решения задачи планирования
целенаправленных действий (целеполагания) рассмотрим конк­ретный пример, в качестве которого выберем известную логи­ческую задачу о волке, козе и капусте. Смысл ее в том, что влодке, вмещающей, кроме лодочника, лишь один объект (волка,козу или капусту), требуется перевезти три объекта с одного
берега на другой. При этом нельзя оставлять на одному берегубез присмотра лодочника, волка с козой, а козу с капустой.
Предположим, что первоначально все три объекта вместес лодкой находились па правом берегу. Обозначая наличие
34*

объекта единицей, а отсутствие — нулем и располагая объекты впоследовательности: волк, коза, капуста, лодка, в начальный
момент на правом берегу имеем состояние 1111, а на левом —0000. Ясно, что всего имеются 16 различных состояний, которые
можно изобразить номерами от 0 до 15 так, как это сделанов табл. 12.1. По условиям несовместимости волка с козой, а ко­зы с капустой из этих 16 состояний допу­стимыми будут лишь 10 состояний, отме­ченных в табл. 12.1 звездочками.
Элементарными действиями будут по­рожние рейсы лодки, в которых одна по­следняя единица перемещается с одного бе­рега на другой, а также рейсы с грузом,для которых характерны аналогичные пере­мещения пар единиц:первой с четвертой,второй с четвертой и третьей с четвертой.
Эти действия дают граф (составленный
только из допустимых состояний), который
изображен на рис. 12.4. Из этого рисунка
непосредственно следует, что имеются двакратчайш их плана, характеризуемых после­довательностями состояний 0, 5, 4, 7, 2, 11,
10, 15 и 0, 5, 4, 13, 8, 11, 10, 15.
В обоих из них первоначально на левый
берег перевозится коза (достижение цели5 ), затем лодка возвращается на правый берег (цель 4), пере­возит на левый берег капусту в первом и волка во втором
варианте (цели 7 и 13), возвращается на правый берег с козой
(цели 2 и 8 ), перевозит на левый берег оставшийся на правом
берегу объект (цель 11), затем снова
совершает пустой рейсна правый берег
(цель 10) и, наконец, перевозит на левый бе­рег козу (цель 15).
При нахождении кратчайш их путей на графе с помощыоЭВМ наиболее просто реализуется так называемый алгоритм
Таблица
NЛ евы й б ер егП равы й б е р е г/VЛ евы й б ер ег

0*
1
2*
3
4*
5*
6
7*

0000
0001
0010
0011
0100

1111
1110
1101
1100
1011
1010
1001
1000

8*
9
10*
11*
12
13*
14
15*

1000
1001
1010
1011
1100
1101
1110
111 1

9101

ОНО
0111

12.1

П равы й б е р е г

0111

ОНО
0101
0100

ООН
0010
0001
0000

перебора в ш ирину. При этом последовательно исследуются вер­шины графа, отстоящие от начальной вершины а1 на один эле­ментарный шаг (т. е. на шаг, получаемый в результате одного
элементарного действия). Будем говорить, что эти вершинын е п о с р е д с т в е н н о следуют за вершиной а 4. Затем точно
таким же образом последовательно вовлекаются в рассмотрениевсе новые вершины, непосредственно следующие за найденны­ми па предшествующем шаге. Продолжая этот процесс, раноили поздно мы либо придем к одной из заключительных вершин
(конечной цели), либо придем в тупиковое состояние, когда
процесс перестанет порождать новые вершины. Поскольку вовтором случае процесс останавливается (стабилизируется), недойдя ни до одной из заключительных вершин, поставленная
задача промежуточного целеполагания оказывается неразре­шимой.
Описанный процесс дает п о л н ы й перебор всех путей награфе в порядке возрастания их длины. Будучи в принципе
хорош для машины, он мало подходит для человека, который
обычно применяет так называемый алгоритм перебора в д лину.
При этом исследуется до к о н ц а (тупика или заключительно­го состояния) сначала один путь, потом другой и т. д., пока недостигается одно из заключительных состояний либо пока неисчерпаются все пути. Такой алгоритм может применяться (иобычно применяется именно так) без предварительного отсева
недопустимых состояний и полного построения связей. Вместо
этого граф как бы заново порождается вдоль исследуемых пу­тей от начальной вершины, а каж дая вершина, вновь появив­ш аяся на этом пути, проверяется на ее допустимость. В случае
допустимости вершины, если задача ею не решается, процесс
порождения новых вершин продолжается далее; в противном
случае последнее из примененных элементарных действий за­меняется па другое и процесс исследования продолжается
далее.
Алгоритм перебора в длину, как и алгоритм перебора в ши­рину, может быть легко реализован на ЭВМ, однако уже безгарантии того, что первое же найденное решение представляет
собой наилучший (т. е. наикратчайший) план. Для рассмотрен­ного примера оба эти алгоритма быстро приводят к нахождению
решения (причем первый алгоритм находит оба решения, а вто­рой — одно из пих).
Дальнейшие усовершенствования алгоритмов поиска путей награфе связаны с введением функций, характеризующих степень
близости вершин к множеству М заключительных вершин. Ис­пользуя такие функции, можно организовать более целенаправ­ленный поиск (особенно в случае перебора в длину). Выбор
очередной достижимой подцели (следующей по порядку верши-*ны графа, добавляемой к исследуемому пути) производится впервую очередь по принципу максимизации ее близости к за­ключительному множеству М. Подобные стратегии целенаправ­ленного перебора могут, разумеется, заводить и в т у п и к , длявыхода из которого надо пойти на временное удаление очеред­ной вершины от множества М . В рассмотренном примере этоделается, когда коза, уже перевезенная на нужный (левый)берег, временно возвращается назад.
Сложность задачи поиска кратчайшего пути к цели при ис­пользовании различного рода оценочных ф ункций для промежу­точных целей определяется в первую очередь количеством иглубиной подобного рода тупиков. По мере исследования по­добных тупиков в алгоритме перебора в длину производится
размечивание ведущих к ним дуг и вершин графа (т. е. подпутей), с тем чтобы в процессе поиска не повторять заходов вте же самые тупики. Заметим, что при наличии оценочных
функций задача нахождения минимального пути на графе, ве­дущего к заданной статической цели, обычно сводится к зада­чам дискретной оптимизации, о методах реш ения которых мыдостаточно подробно говорили выше (§ 8.8).
Большое значение в сложных задачах планирования ц еле­направленного поведения могут приобретать различного родаэвристические приемы (обычно формируемые в результате при­обретенного опыта) постановки достаточно крупных промежу­точных целей и применения описанных выше методов достиже­ния целей применительно не к конечным, а именно к этимпромежуточным целям. Именно так поступает, например, ш ах­матист, ищущий пути к выигрышу партии. Нередко при этомприходится осуществлять поиск на одном и том же графе, но сразличными начальными и заключительными состояниями.
В этом случае обычно производится последовательное изучение
этого графа, запоминание удачных эвристических приемов ипросто участков путей (или алгоритмов их нахож дения), веду­щих к требуемой цели. Последнее в случае шахматной игрыприобретает вид запоминания стандартных алгоритмов для вы­игрыша (или достижения ничьей) в различных видах эндшпи­лей или в некоторых классах позиций более ранних стадий
игры. Кроме того, в таких случаях полезно запоминание воз­можно большего числа начальных участков путей (дебютов),ведущих нас в желательном направлении.
12.7.1.
Игровые задачи. В игровых задачах (например, в ш ах­матах) участники обычно преследуют различные и даже прямо
противоположные цели. Процесс проведения игры — это процесс
последовательного разворачивания некоторого пути на графе
всех возможных состояний игры. При парной игре ее участники,делая ходы поочередно, на каждом ходе пытаются повернуть

путь в сторону «своего» заключительного множества. Поэтому,реш ая задачу целенаправленного планирования, каждый игрок
должен планировать ходы и за себя и за_ противника. В слож­ных играх (какими являются, например, шахматы) методы пол­ного перебора (обычно путем использования перебора в шири­ну) могут работать на относительно небольшую глубину (обыч­но порядка 3—5 ходов с каждой стороны). Поскольку глубина
дерева игры обычно значительно больше, используют оценочные
функции, оценивающие анализируемые заключительные (дляданного уровня перебора) позиции и выбирают очередной ходтаким образом, чтобы при любых возможных продолжениях
минимальное значение целевой функции («промежуточного вы­игрыша» игрока, делающего ход) было бы максимальным.
Использование подобной нехитрой стратегии при достаточно
удачном выборе целевой функции (функции оценки позиции)может приводить к неплохим практическим результатам, осо­бенно, если при этом используются описанные выше приемы,основанные на запоминании схем действия в «стандартных» по­зициях. Так, использующая этот метод ш ахматная программа
«Ве11» (СШ А), реализованная на специализированном шахмат­ном процессоре, достигла в 1980 г. по силе своей игры уровня
кандидата в мастера. Ее рейтинг (основанный на результатах
игры с людьми) достиг 2150, что намного превышает оценку
силы среднего шахматиста. Следует подчеркнуть, что использо­вание специального шахматного процессора (автомата, модели­рующего шахматную доску и ходы различных фигур) повысило
скорость анализа шахматных позиций в сотни раз (по сравне­нию с обычными универсальными ЭВМ), что дало возможность
увеличить глубину перебора по сравнению с другими шахмат­ными программами минимум на один ход (два полухода).
Идея полного перебора по своей сущности глубоко антиинтеллектуальна: ведь человек (в данном случае шахматист) обыч­но так никогда не поступает. Применение же к сложным иг­рам, вроде шахмат, процедур целенаправленного перебора приобычно принятых способах построения оценочных функций ве­дет к возникновению большого числа тупиков, что в конце кон­цов по существу тоже возвращает нас к полному перебору.
В случае шахмат в качестве оценочной функции позиции вы­бирается обычно функция, равная разности сумм п о с т о я п н ы х весов фигур каждого игрока, дополненная в лучшем слу­чае компонентами, оценивающими такие позиционные элемен­ты, как слабые поля, наличие сдвоенных пешек, открытых ли­ний и т. п. При таком выборе оценочной функции всякая ком­бинация, связанная с в р е м е н н о й жертвой материала, ведет
сначала к ухудшению оценки, т. е. представляет собой типично
тупиковую ситуацию.

М. Ботвиннику принадлежит идея разбивки постановки це­лей в шахматной игре на цели отдельных фигур и и з м е н ен и я в зависимости от их вклада в общую цель относительной
ценности фигур. Тем самым оценочная функция приобретает
динамический характер, т. е. меняется при изменении достигае­мой конкретной цели (на данный момент игры). Такой подход
позволяет резко уменьшить количество тупиковых ситуаций итем самым резко сократить перебор (а иногда и вовсе устра­нить), находя ходы, улучшающие целевую функцию на каж ­дом шаге.
12.7.2.
Динамическое целеполагание. Случай, когда достига­ется цель, разбивается на два основных случая. В первом изних цель меняется н е з а в и с и м о от действий, предпринимае­мых для ее достижения. В этом случае планирование дости­ж ения цели разбивается на две задачи: определения закона из­менения цели М(1) (множества заключительных состояний) исобственно планирования действий для ее достижения. Первая
задача сводится фактически к нахождению закона изменения
цели по нескольким наблюдениям и соответствующей экстрапо­ляции на его основе положения цели в каждый последующий
момент времени. Методы решения этой задачи были рассмот­рены в § 9.3. Что же касается задачи планирования достиже­ния цели, то каждый шаг в поиске плана должен сопровож­даться оценкой времени, необходимого на этот ш аг (равно каки на все предшествующие шаги) при последующей реализации
плана. Поэтому, например, в методе перебора в длину (глубину)с каждой очередной исследуемой вершиной
будет связана
оценка времениее достижения при реализации плана. Задача
будет решена, если а{^ М ( и ) .
Практически задача экстраполяции решается чаще всего незаблаговременно, а в процессе ф а к т и ч е с к о г о достижения
цели. При этом после выполнения очередного шага по достиже­нию цели уточняется как экстраполяция(в результате
появления новых наблюдений), так и, вообще говоря, план до­стижения цели (поскольку может измениться описание законасе изменения). Подобный метод динамического уточнения пла­на достижения цели применим и во втором случае, когда цельм е н я е т свое поведение в зависимости от наших действий.
Таким способом могут решаться задачи динамического целеполагания в игровых постановках, изучаемых в так называемой
теории дифференциальных игр (в дискретном случае — разно­стных) , и прежде всего — так называемые задачи погони вобычном евклидовом пространстве.

12.8. Автоматизация дедуктивных построений
Дедуктивные построения разбиваются на два класса задач.
Первый из них связан с постановкой проблем, т. е. с формирова­нием высказываний, справедливость (истинность) или ошибоч­ность (ложность) которых нужно д о к а з а т ь . Поиск самого
доказательства (в случае истинности высказывания) или опро­вержения (в случае его ложности) носит наименование логиче­ского вывода. При этом предполагается, что в процессе дока­зательства (опровержения) могут использоваться лишь ранее
приобретенные формализованные знания, а не новые экспери­менты и наблюдения. Именно это обстоятельство подчеркива­ется применением термина дедуктивный к рассматриваемым на­ми построениям. Формализованные знания могут заключатьсякак в высказываниях, истинность которых была установлена ра­
нее (теоремы) либо постулируется априори (аксиомы), так ив процедурах (алгоритмах), позволяющих строить доказатель­ства и опровержения. Для сокращения описаний высказыванийи процедур в систему формализованных знаний обычно включа­ются такж е определения различных понятий, которые могут ис­пользоваться в формулировках.
Ф ормализация знаний, о которой идет речь в данном слу­чае, заключается в их организации в так называемое исчисле­ние, Основой всякого исчисления является прежде всего фор­мальный язык, с помощью которого записываются предложения
данного исчисления, называемые обычно формулами данного ис­числения. Вторая часть исчисления — процедуры
(правила)вывода.
При автоматизированном выводе они могут представляться
либо непосредственно в виде машинных программ, либо в видеалгоритмов, записанных на том или ином входном языке про­граммирования. Во втором случае в состав автоматизированной
системы должна включаться соответствующая программа-интер­претатор, позволяющая применять эти алгоритмы для фактиче­ского вывода (или опровержения) предъявляемых системе пред­ложений (формул исчисления) из уже имеющихся в ней пред­ложений.
12.8.1.
Исчисление высказываний. Простейшее из исчисле­ний, называемое исчислением высказываний (или пропозицио­нальным исчислением), оперирует с высказываниями, построен­ными из элементарных высказываний с помощью операций этотго исчисления. В качестве таких операций в исчислении выска­зываний применяются уж е рассматривавшиеся в гл. I элемен­тарны е булевы операции (см. п. 1.5.1): конъю нкция ( Д) , дизъ­ю нкц ия ( V) , отрицание (~ |) и еще так называемая операцияим пликации (-*•). Элементарные высказывания мы будем обо-*значать буквами латинского алфавита (с индексами или безних) и рассматривать как булевы переменные, принимающие
лишь два значения: «истина» (сокращенно «и» или 1) и «ложь»(сокращенно «л» или 0). Значения функции истинности дляконъюнкции, дизъюнкции и отрицания были приведены в
п. 1.5.1. Для импликации полагаем, что значения 0 - ^ 1 , 00,
1 - ^ 1 функции АВ являю тся истинными, а значение 10—ложным.
В число процедур вывода исчисления высказываний мы бу­дем включать эквивалентные преобразования формул исчисле­ния, являющ иеся результатом последовательного выполнения
элементарных соотношений видах ~+у = { ~\ х ) У у*

у = у V х> * Л у = у А х>

А (" I» ), П (* А у) — П * ) \/С ~ Ы >х V (у V *) = (* V у) V г, х д {у д *) = (х д у) д *.

г-](~)х) = х, “ |( * V «/) = ( “»Благодаря двум последним соотношениям (называемым прави­лами ассоциативности) можно конъюнкции (равно как и дизъ­юнкции) любого числа членов писать без скобок. Благодаря
двум соотношениям перед ними, называемым правилами де Мор­гана, можно все отрицания довести до элементарных высказы­ваний. Еще два соотношения
х Д (у \/ т) = (х Д у) у (х Д г) их V (У А 2) = (Х УУ) Л( х \ / 2)1
называемые правилами дистри­бутивности, вместе с остальными соотношениями могут привести
любую форму исчисления высказываний к дизъюнктивной иликонъюнктивной форме. П ервая из них представляет дизъюнкцию
К 1У К 2 V . . .V К ш конечного числа конъюнктивных термов К {,
а вторая — конъюнкцию
Д В 2 А . . . А Оп конечного числа
дизъюнктивных термов Д . Конъюнктивный (соответственно
дизъюнктивный) терм представляет собой конъюнкцию (соот­ветственно дизъюнкцию) элементарных термов, в качестве ко­торых могут выступать элементарные высказывания (булевы
переменные) или их отрицания.
У читывая соотношения
(правила) к о м м у т а т и в н о с т их У у — У У х и х [ \ у = у / \ х для дизъюнкции и конъюнкции,а такж е соотношения х \ / х ■= х / \ х = х, (~\ х) \ / х = 1, (~~\ х) /\ х —*= 0, 1 \ / х = 1 , 0 \ / х = х , 1 / \ х = х, 0 / \ х = 0, можно добиться,чтобы в одном и том же конъюнктивном или дизъюнктивном
терме не было одинаковых элементарных термов, равно как и
пар (х, ~1х). Дизъюнктивные (конъюнктивные) формы с этимдополнительным условием принято называть нормальными фор­мами (соответственно д. н. ф. и к. н. ф .).
Если задан набор элементарных высказываний А и А г, . .
то задача постановки проблем в исчислении, построенном на ихбазе, состоит в генерации формул этого исчисления и реш ается

весьма простым (очевидным) алгоритмом. Задача логического
вывода состоит в том, чтобы определить, к какому из трех воз­можных классов принадлежит рассматриваемая формула. Пер­вый класс составляют так называемые тождественно истинные
формулы (теоремы исчисления). Они характеризуются тем, чтодля любых комбинаций значений истинности входящих в нихэлементарных высказываний они оказываются всегда истинны­ми. Второй класс составляют тождественно ложные формулы,ложные при любых возможных комбинациях значений входящихв них элементарных высказываний. Наконец, класс вы полни­м ых формул включает в себя все формулы, истинные хотя быпри одной комбинации значений входящих в них элементарных
высказываний. Все тождественно истинные формулы являю тсявыполнимыми, но обратное, разумеется, не имеет места.
Легко проверить, что формула А -> А тождественно истинна,формула ” 1{АА) тождественно ложна, а формула ( ~] А).-> Авыполнима, но не тождественно истинна (она истиннд при
А = 1 и ложна при А = 0 ) . Проверка на тождественную истин­ность (ложность) или выполнимость всегда может быть выпол­нена фактическим вычислением ее значений при всех возмож­ных комбинациях значений входящих в нее элементарных вы­сказываний. Если число таких высказываний равно /г, то число
различных комбинаций их значений равно, очевидно, 2”, т. е.
при больших значениях может становиться непомерно большим.
Поэтому, хотя процедура прямого вычисления значений форму­лы при всех таких комбинациях дает решение вопроса, являетсяли заданная формула теоремой исчисления высказываний или
нет (т. е. является одной из возможных процедур логического
вывода), на практике она почти не применяется.
Одной из наиболее удобных процедур логического вывода висчислении высказываний является процедура, основанная натак называемом принципе резолюции. В этой процедуре, кото­рую мы будем называть Н-процедурой, вместо заданной форму­лы Р, предполагаемой тождественно истинной, рассматриваютее отрицание П Р и пытаются доказать ее противоречивость
(тождественную лож ность). Это так называемое доказательствоот противного. В процедуре требуемая противоречивость (еслиона действительно имеет место) устанавливается как одновре­менная справедливость двух исключающих друг друга высказы­ваний Ь иЬ, как это имеет место и в обычном варианте до­казательства от противного.
Для этой цели формулуР приводят к конъюнктивной нор­мальной форме
Р = Д Д * .. Д Дг. Принцип резолюции со­стоит в поиске двух дизъюнктивных термов Д и Д , в одиниз которых входит какой-либо элементарный терм А , а во вто­рой — его отрицание
А* Тогда, если Д = / ? У А , а Д == * С У ( ~ \ А ) , то из термови Д в ы в о д и т с я новый термО п+1= В V С, называемый резольвентой членов Д и Д ., кото­рый может быть добавлен к конъюнктивной нормальной форме-Д Л Д Л • • • Л Д • Разумеется, такое расширение формы но­вым членом Д п+, следует делать лишь в том случае, когда этотчлен ранее отсутствовал в рассматриваемой нормальной форме.
Процесс вывода (резолюции) новых членов продолжается дотех пор, пока новых членов получаться уже не будет (это всег­да возможно ввиду конечности числа таких членов). При этомвозможны два случая. В первом из них мы закончим процесс,получив тождественно ложную резольвенту из двух взаимно про­тиворечивых термов О к = С и Д = ~~] С. В этом случае получен­ное противоречие доказывает тождественную ложность форму­лы *”| Р и, следовательно, тождественную истинность исходной
формулы Р. Если же процесс вывода резольвент оборвется, неприведя к противоречию, то формула П ^ оказывается выпол­нимой, а следовательно, формула Р не может быть тождествен­но истинной. Иными словами, высказанная теорема неверна.
Применим Д-процедуру к доказательству тождественной ис­тинности формулы
Р = (А Д Д )-> Л . Предположим противное:ч р _ п ((А Л В) -+А) = 1 (■п (А Л В) V А) = (А Л В) Л с1 а ) == (А) Д (В) Д ( “] А). Поскольку имеется противоречие (термы А
и ~| А ), то теорема доказана.
Преимущество Д-процедуры заключается в том, что при над­леж ащ ем выборе последовательных резолюций противоречие мо­жет быть выявлено (и, следовательно, исходная теорема дока­зана) намного раньше, чем исчерпывается возможность выпол­нения новых продуктивных резолюций (поставляющих новые
конъюнктивные терм ы ). Поэтому такая процедура обычно на­много экономнее упомянутой выше процедуры прямого вычис­ления значений исследуемой формулы при всех значениях пе­ременных. Нахождение кратчайшего пути к доказательству сво­дится к задаче нахождения кратчайшего пути на графе. Однако,поскольку в этом случае этап планирования слит в единое целоес этапом реализации плана, поиск лучшего плана должен бытьцеленаправленным: от добытого с большими трудностями опти­мального плана (например, с помощью метода перебора в ши­рину) в подобной ситуации мало пользы. Разработано много
эвристических правил (стратегий), позволяющих улучшить це­ленаправленность перебора в Д-процедуре. Например, при на­личии в конъюнктивной нормальной форме одночленных дизъ­юнктивных термов целесообразно начинать резолюции именнос них. Недостаток места не позволяет нам более подробно оста­новиться на этом вопросе.
Заметим еще, что существует двойственная процедура, ког­да прямо доказывается (или опровергается) тождественная ис­тинность исходной формулы Р. С этой целью формула Р при­водится к дизъюнктивной нормальной форме Р = К х V . . .V К пи вводится в действие правило двойственной резолю ции, порож­дающее новый конъюнктивный терм А'т+1 = В Д С из двухконъюнктивных термов К { = А Д В и= ("] А) Д С. К ак ив прямой /^-процедуре, процесс заканчивается доказательством
тождественной истинности формулы Р при выполнении (двой­ственной) резолюции вида (А) \ / ( “ | А)1.
Возникновение
подобной ситуации означает, что в дизъюнктивной нормальной
форме К Л V ••• Vпоявляется терм А у (~] Л),которыйпри любом значении переменной А (элементарного высказыва­ния) тождественно равен единице, что, очевидно, достаточно длятождественной истинности всей формы, а следовательно, и ис­ходной формулы Р.
Для рассмотренного выше примера применение двойственной
процедуры дает= М Д Й )-> Л = ^ ( Л Д ^ ) \ / В = ( “] Л) V
У ( П ^ ) V В = 1- Тем самым тождественная истинность формулыР доказана.
12.8.2. Узкое исчисление предикатов и формальные теории.
В основу узкого исчисления предикатов кладется некоторая
предметная область или множество М объектов
х 2, . . накоторых определены функции (предикаты)зна­чениями которых является истина или ложь.
Предикаты представляют собой высказывания. Поэтому, ес­л и дано некоторое множество первичных предикатов Р и Р 2, . . .
. . . , Рт, то над ним может быть построено исчисление выска­зываний, каж дая формула которого может рассматриваться каксоставной предикат; число предметных (содержательных) пере­менных х 1ч от которых зависит предикат, называется его ме­стностью. Мы будем различать таким образом нуль-местные
предикаты Р (не зависящие от предметных переменных), одно­местные предикаты Р ( х ) , двуместные Р( х, у) и т. д.
Заметим, что в узком исчислении предикатов все первичные
предикаты (в том числе и нуль-местные) представляют собой
конкретные высказывания и сами по себе, без учета предмет­ных переменных, от которых они зависят, не могут рассматри­ваться как переменные. В частности, нуль-местные предикаты
Р,в узком исчислении предикатов всегда рассматрива­ются как конкретные постоянные высказывания.
Помимо операций исчисления высказываний, в узкое исчис­ление предикатов вводятся операции связывания предметных
переменных так называемыми кванторами. Различаю т квантор
всеобщности У х (для всех х) и квантор существования З х (су­ществует такое х ) . Кванторы ставятся обычно впереди преди­ката, составляя так называемую кванторную приставку. С такой
приставкой предикат превращ ается, вообще говоря, в новое вы­сказывание. Например, выражениеУ х З у Р ( х , у)означает
высказывание «для всякого х существует такое у , *1то имеет ме­
сто. Р( х, у )». Это высказывание можно, разумеется, такж е рас­сматривать как предикат (в приведенном примере как нульместный), в котором из числа свободных предметных перемен­ных исключены переменные, связанные кванторами.
Формулы исчисления предикатов, не содержащих свободных
предметных переменных, делятся на истинные (теоремы исчис­ления)
и ложные.
Например,формула
Ух(Р(х)-+Р(л))истинна, а формулаР ( х ) ) - +Р ( х ) ) ложна для любого
предиката Р ( х ) , принимающего хотя бы при одном значении хзначение «ложь».
Предметная область М, заданная абстрактно в рамках соб­ственно логического исчисления, может конкретизироваться прип р и л о ж е н и я х этого исчисления. Таким образом, на базеданного логического исчисления возникают те или иные фор­мальные теории. Например, если М есть множество чисел (0, 1,.
2, . . . }, на котором заданы обычные арифметические операции(в случае, когда они выполнимы) и обычные арифметические
отношения (первичные предикаты) = , Ф, > , < ,то с по­мощью добавления формализмов узкое исчисление предикатов,превращ ается в формальную арифметику неотрицательных чи­сел, если выделить некоторое нужное множество высказыванийв качестве аксиом и задать соответствующую процедуру логи­ческого вывода следствий из этих аксиом.
Задание аксиом, разумеется, определяется видом рассматри­ваемой теории. Что же касается логического вывода, то он вклю­чает в себя прежде всего процедуры общелогического характера
(применимые ко всякой формальной теории). Помимо уже опи­санных процедур вывода в исчислении высказываний, в ис­числении предикатов возникают дополнительные операции скванторами.
Прежде всего опишем, каким образом производится вынесе­ние кванторов в начало формулы. Если имеет место выражениеК ( Р ( . . . , х, . . . ) ) V У х ( К ' ( ( ?( . . . ,. . . ))),
где К и К' - про­извольные кванторные приставки, то оно преобразуется в экви­валентное ему выражение
У х (К (Р ( . х, ...) ) ) ,в котором
вхождения переменной х, не охваченные выносимым за скобки
квантором, заменяются на новую переменную х, отличную отвсех остальных переменных формулы. Тот же самый прием
применяется и при вынесении квантора З х . Он же действует,если выносится за скобки первый квантор приставки К или ког­да вместо дизъюнкции V в формуле участвует конъюнкция ДПри вынесении кванторов Ух , З х за знак отрицания они пере­ходят один в другой: ~| У х А эквивалентно Э # ( Й ^ К а ~ } З х Аэквивалентно У ^("1^). Вынесению кванторов за знак имплика­ции можно предварить ее выражение через операции отрицанияи дизъюнкции, так что особых правил для действий с неюможно не вводить.
После вынесения кванторов к оставшейся бескванторной
формуле могут быть применены процедуры приведения к конъ­юнктивной и дизъюнктивной нормальным формам и использо­ваны различные обобщения принципа резолюции для доказа­тельства или опровержения построенных таким образом выска­зываний. Мы, однако, не будем останавливаться на этих обоб­щ ениях, а опишем другой подход к реализации логического
вывода в логических теориях, основанный на использовании такназываемых функций Сколема.
12.8.3. Ф ункции Сколема. Начнем рассмотрение с частного
случая. Выражение
УхЗуР(х,у)узкого исчисления преди­катов можно трактовать таким образом, что существует предметкая ф ункция у = {( х) , определенная на всех х и такая, чтопри ее подстановке в предикат Р ( х , у) он превращ ается в вы­сказы вание Р( х ) = Р( х , 1( х) ) , истинное для всех х. Эта функ­ция, позволяющая устранить кванторную приставку, называетсяф ункцией Сколема для исходного выражения
\/хЗуР(х,у).
Если квантор существования стоит впереди:3 у У х Р (х, у), тоф ункция Сколема сведется к константе /, а исходное высказы­в а н и е — к высказыванию Р ' ( х ) = Р ( х , /) . При сложных кванторных приставках число соответствующих им функций Сколема
будет равняться числу вхождений в приставки кванторов суще­ствования. Процесс сворачивания кванторов и выписывания со­ответствующих функций Сколема идет слева направо. При этомпеременные, связанные квантором всеобщности, добавляются всписок переменных (вначале пустой), от которых будут зави­сеть все последующие функции Сколема. К аж дая же перемен­ная у , связанная квантором существования, порождает очеред­ную функцию Сколема у = {(хц, . . . ,), зависящую от всехпеременных, включенных в список на данный момент. Н апри­мер, для выражения
Р = V хЗуЗъЧ иЧ иЗю Р(х , у , 2, и,
V, IV) порождаются три функции Сколема */ = / ( #) , 2 = 8( х ) ,ю = к( х, и, и), а выражение приводится при этом к бескван­торному виду: Р = 6 ( х , и , у ) = Р ( я , / ( л) , #( л) , и, и, к ( х , и, у) ) .
12.8.4. Метод логического вывода, основанный на синтезе
функций Сколема. Каждое верное предложение (аксиома илитеорема) любой данной формальной теории может быть пред­ставлено (в соответствии с описанной в предыдущем пункте
процедурой) совокупностью порождаемых им функций Сколемаи тождественно истинным бескванторным предикатом. Рассмот­рим процесс последовательного развертывания формальной тео­рии в результате присоединения к ее первоначальной базе зна­н и й (состоящей из аксиом) новых верных предложений по мереих доказательства. Текущ ая база знаний теории будрт включатьв себя, таким образом, некоторое конечное множество 5 конк­ретных (определенных в аксиомах или построенных в ходе до­казательств теории) функций Сколема / ии некоторое
конечное множество Т конкретных тождественно истинных пре­дикатов Р и . . Р п. Сюда нужно добавить различные приемы
(алгоритмы) порождения различных функций (в порядке р о с тих сложности) в заданной предметной области, например, дляарифметики натуральных чисел, функций / ( ^ ) = = ^ + 1 , /(# , у) =— х + у и т. д. Такие функции мы будем называть независимо
порождаемыми.
Пусть в этом состоянии теории предъявляется новое предло­жение Р (не содержащее свободных переменных), которое тре­буется доказать. Приводя это предложение к бескванторному
виду, получаем множество пока неизвестных функций Сколема.. .,и бескванторный предикат Р , в состав которого входятэти функции. Предложение Р будет доказано, если мы построимп р е д с т а в л е н и я неизвестных функций. ..,в виде су­перпозиции известных функций / ь . . . , / т и независимо порож­даемых функций /,/г, . . . так, чтобы предложение 0 = {Рг ДД Р 2 Д . . . / \ Р п) - ^ Р было выводимым (т. е. являлось тожде­ственно истинной формулой) в и с ч и с л е н и и в ы с к а з ы в а ­н и й . Это именно тот способ, каким математик строит своидоказательства. Заметим лишь, что, поскольку истинность пред­ложения Р априори неизвестна, описанные манипуляции произво­дятся обычно не только с предложением Р, но и с его отрицани­ем ~| Р. После окончания доказательства использовавшиеся длянего функции и предикат добавляются к текущей базе зпанин.
Разумеется, на практике в доказательстве используется лишьчасть (притом обычно небольшая) накопленных в теории функ­ций /* и предикатов Р^ Выбор нужных для доказательства функ­ций и предикатов в обычном (не автоматизированном) доказа­тельстве определяется интуицией математика. При автоматиза­ции на смену интуиции приходят разнообразные эвристические
правила, разработка которых находится еще в самом начале сво­его развития. Поэтому целесообразно развивать (особенно напервых порах) наряду с чисто автоматическими диалоговые
(человеко-машинные)методы логического вывода. Основная
трудность здесь — и создании эффективных языков для такого
диалога, с тем чтобы человек понимал трудности, возникающиеу машины, и вовремя давал необходимые подсказки. В этомсмысле подход к выводу на основе функций Сколема наиболее
эффективен, поскольку он фактически моделирует мышление
математика.
Н а базе этого подхода автором разработаны принципы по­строения язы ка описания знаний и язы ка диалога, относящих­ся к классическому язы ку узкого исчисления предикатов при­мерно так, как развитые входные языки программирования от­носятся к языкам, описывающим поведение простейших авто­матов — так называемых машин Тъюринга. Важно такж е под­черкнуть, что в принятом подходе основной (и наиболее труд^ный) этап доказательства — синтез функций Сколема— дела­ется на основе «крупноблочного» метода, использующего нетолько аксиомы теории, но и все накопленное в ней богатство
знаний. Благодаря этому конструкции суперпозиций получаются
относительно несложными («малоэтажными», или, лучше сказать,,«малозвенными»), что упрощает их нахождение обычными мето­дами перебора (с относительно простыми эвристиками).
12.8.5.
Ограниченные кванторы. На практике относительно
редко случается, чтобы предметная область была однородной.
В нее обычно включаются объекты различной природы (множе­ства, числа, функции и т. п.). Кроме того, даже внутри одногои того же класса объектов с помощью специальных предикатов*которые мы будем называть определяющими или ограничива­ющими, можно выделять удовлетворяющие им объекты ^ (напри­мер, конечные множества, простые числа и т. п.). Поэтому вформальных теориях обычно используются ограниченные кван­торы, которые с помощью системы ограничивающих предикатов
(включающих в себя предикаты принадлежности объектов к тем.
или иным классам) с п е ц и ф и ц и р у ю т области определений
связываемых или предметных переменных.
Мы будем обозначать ограниченные кванторы символами У зи Эр, где через 8 и () обозначены спецификации кванторов*,т. е. системы ограничивающих их предикатов. При описанных
в п. 12.8.2 операциях над кванторами (в частности, при выне­сении кванторов за знак отрицания) эти спецификации не ме­няются. В процессе логического вывода принадлежащие специ­фикациям предикаты добавляются к текущему базису рассмат­риваемой формальной теории. При построении же суперпозиций
необходимо дополнительно проверять их допустимость. Это оз­начает, что при подстановке вместо некоторой переменной упредметной функции у = / ( ^ 1 , . . . ,область значений функ­ции должна входить в область определения переменной у . Самиже эти области задаются спецификациями кванторов, связыва­ющих соответствующие переменные в исходных предложениях,а для независимо порождаемых функций — описаниями задаю ющих их алгоритмов.
В результате проверок на допустимость суперпозиций могут
возникать дополнительные предложения, которые требуется до­казать прежде, чем будет доказано исходное предложение. Темсамым происходит автоматическое размножение целей логиче­ского вывода.
35 в. М. Глушков

12.8.6.
Современное состояние автоматизации /дедуктивны хпостроений. Что касается постановки проблем, /го автоматиза­ция этого процесса в принципе не составляет ^особых трудно­стей. Трудно лишь выделить из порождаемых/маш иной проблем
действительно и н т е р е с н ы е проблемы. Некоторые подходык решению этой задачи уже наметились, однако в целом проб­лема все еще далека от решения.
Логический вывод в рамках простейших логических исчис­лений (особенно в исчислении высказываний) машины выпол­няют сегодня гораздо быстрее и надежнее человека. Что жекасается содержательных (внелогических) разделов математики,то здесь успехи автоматизации пока еще невелики. Правда, ужеесть примеры, когда ЭВМ помогла решить до конца некоторые
трудные математические проблемы (например, знаменитую проб­лем у четырех красок). Однако эти впечатляющие успехи достиг­нуты в результате составления программ, специально предназ­наченных для реш ения данных к о н к р е т н ы х проблем, и негодятся в других случаях.
Развитие же универсальных автоматических систем логиче­ского вывода пока делает свои первые шаги.

Безбумаж ная информатика развивается исключительно бы­стрыми темпами. Во всех развитых странах темпы увеличения
числа ЭВМ, АСУ, терминалов и особенно суммарной производи­тельности ЭВМ и объемов накопленной в них информации рез­ко опережают темпы роста всех других показателей, характери­зующих экономику и научно-технический прогресс. Сращивание
средств телекоммуникации с машинной информатикой (реали­зующихся в сетях ЭВМ и ВЦ с удаленными терминалами) у ж епривело к появлению нового термина телематика. Наиболее
рьяные апологеты телематики предсказывают, что уже недалектот день, когда исчезнут обычные книги, газеты и журналы.
Взамен каждый человек будет носить с собой «электронный
блокнот», представляющий собой комбинацию плоского дисплеяс миниатюрным радиоприемопередатчиком. Н абирая на клавиа­туре этого «блокнота» нужный код, можно (находясь в любом
месте на нашей планете, вызвать из гигантских компьютерныхбаз данных, связанных в сети, любые тексты, изображения (в,том числе и динамические), которые и заменят не только со­временные книги, ж урналы и газеты, но и современные теле­визоры.
Зайдет ли дело в обозримом будущем столь далеко — гадать
трудно. Несомненно одно, что прогресс электронной технологии*машинной информатики и телематики происходит столь бурны­ми темпами, что фантастика в этой области становится реаль­ностью буквально на наших глазах.
В. М. Г лу ш к о вСПИСОК Л И Т Е РА Т У РЫ
4. А й ц м а н П. 3. С и ЦМД ЗУ — новые компоненты для высококачестч
венных компонент памяти//Электроника.— 1979.— № 8.
2. А к и н ф и е в А. Б. и др. Развитие запоминающих устройств в ЕСЭВМ//Вопросы радиоэлектроники. Сер. ЭВТ.— 1980. Вып. 3.
3. А м о с о в Н. М. и др. Автоматы и разумное поведение.— Киев: Наукова думка, 1973.
4. А м о с о в Н. М. Алгоритмы разума.— Киев: Наукова думка, 1979.
3. Б а й ц е р Б. Архитектура вычислительных комплексов.— М.: Мир,1974.— Т. 1 . - 4 6 8 с.; Т. 2 . - 5 6 6 с.
6. Библиография работ по технологии программирования//Технология про­граммирования.— Киев: ИК АН УССР, 1979.— С. 52—70.— (Тезисы докл.
1 Всес. конф.)7. Б о н г а р д М. М. Проблема узнавания.— М.: Наука, 1967.
в. Б о т в и н н и к М. М. О кибернетической цели игры.— М.: Сов. радио,1975.
9. Б о т в и н н и к М. М. О решении неточных переборных задач.— М.: Сов.
радио, 1979.
40. Б о т е в М. и др. Перспективные внешние ЗУ на магнитных дисках длямини Э В М /П риборы и системы управления.— 1980 — № 6.
11. Б р у с е н ц о в Н. П. Миникомпыотеры — М.: Наука, 1979.— 272 с.
12. В е л ь б и ц к и й И. В., Х о д а к о в с к и й В. Н, Ш о л о м о в Л. И. Тех­нологический комплекс программиста на машинах ЕС ЭВМ и БЭСМ-6.—
М.: Статистика, 1980.— 263 с.
13. В и р т Н. Систематическое программирование.— М.: Мир, 1977.— 183 с.
14. Вопросы проектирования преобразователей формы информации/Под ред.
Кондалева А. И.— Киев: Наукова думка, 1977.— 244 с.
45. Вычислительная машина и мозг//Кибернетический сб. № 1. М.: ИЛ,
1960.— С. 11—60.
16. Г л а д к и й А. В. Синтаксические структуры естественного языка в ав­томатизированных системах общ ения.— М.: Наука, 1985.— 144 с.
17. Г а а з е — Р а п п о п о р т М. Г. Автоматы и живые организмы.— М.:Физматгиз.— 1961.
18. Г л у ш к о в В. М. Введение в АСУ.— Киев: Техника, 1974.— 317 с.
19. Г л у ш к о в В. М. Введение в кибернетику.— Киев: Изд-во АН УССР,1964.— 322 с.
20. Г л у ш к о в В. М. Макроэкономические модели и принципы построения
ОГАС.— М.: Статистика, 1975.— 160 с.
21. Г л у ш к о в В. М. Синтез цифровых автоматов.— М.: Физматгиз, 1962.
22. Г л у ш к о в В. М., Б а р а б а н о в А. А., К а л и н и ч е н к о Л. А. и др.
Вычислительные машины с развитыми системами интерпретации.— Ки­ев: Наукова думка, 1970.— 259 с.
23. Г л у ш к о в В. М., И г н а т ь е в М. Б. и др. Рекурсивная машина.—»Препринт/ИК АН УССР.— Киев, 1974.— № 74—57.

24. Г л у ш к о в В. М., К а л и н и ч е н к о Л. А. и др. Сети ЭВМ.— М.: Ра­дио и связь, 1977.— 279 с.
25. Г л у ш к о в В. М., К а п и т о н о в а Ю. В., Л е т и ч е в с к и й А. А. Ав­томатизация проектирования вычислительных машин.— Киев: Наукова
думка, 1975.
26. Г л у ш к о в Б. М., Ц е й т л и н Г. Е., Ю щ е н к о Е. Л. Алгебра, язы­ки, программирование.— Киев: Наукова думка, 1974.— 328 с.
27. Г о л о в к и н Б. А. Параллельные вычислительные системы.— М.: Нау­ка, 1980,— 519 с.
28. Голографические ИПС//Информационпые процессы и системы. Сер 2.—
1 9 8 0 .-№ 1. С. 7—11.
29. Г о р е л и к А. Г. Автоматизация инженерно-графических работ с по­мощью ЭВМ.— М.: Высшая школа, 1980.— 208 с.
30. Д а л У., Д е й к с т р а Э., X о а р К. Структурное программирование.—М.: Мир, 1978.— 275 с.
31. Д е й к с т р а Э. Дисциплина программирования.— М.: Мир, 1975.— 247 с.
32. Д р о з д о в Э. А., К о м а р н и ц к и й В. А., П я т и б р а т о в А. Я. Элек­тронные вычислительные машины единой системы.— М.: Машинострое­ние, 1976.
33. Единая система ЭВМ/Под ред. Ларионова А. М.— М.: Статистика, 1974.—
136 с.
34. Е р м о л ь е в 10. М. Методы стохастического программирования.— М.:Наука, 1976.
35. Й о д а н Э. Структурное проектирование и конструирование программ.—М.: Мир, 1979 - 410 с,
36. Информационные системы общего назначения/Под ред. Ющенко Е. Л.—
М.: Статистика, 1 9 7 5 .-4 7 2 с.
37. К а г а н Б. М. Электронные вычислительные машины и системы.— М.:Энергия, 1979.
38. К а н т о р о в и ч Л. В., Г о с т к о А. Б. Оптимальные решения в эконо­мике.— М.: Наука, 1972.— 232 с.
39. К е й п а с А. ЗУ : Обзор//Электроника.— 1978.— № 22.
40. К л и к о в Ю. И., Г о р ь к о в Л. Н. Банки данных для принятия реш е­н и й .- М.: Сов. радио, 1980.— 208 с.
41. К н у т Д. Искусство программирования.— М.: Мир.— Т. 1: Основные
алгоритмы.— 1976.— 735 с.; Т. 2; Получислеиные алгоритмы.— 1977.—
725 с.; Т. 3: Сортировка и поиск.— 1978.— 845 с.
42. К о р о л е в Л. Н. Структуры ЭВМ и их математическое обеспечение.—М.: Паука, 1978.— 351 с.
43. К о р о л е вМ. А., К л е м к о Г. Н., М и ш е н и н А. И. Информацион­ные системы и структуры данных.— М.: Статистика, 1977.— 184 с.
44. К о х а п Д., Я к о б с Г. Ю. Проектирование технологических процессови переработка информации.— М.: Машиностроение, 1981.— 312 с.
45. К о х а н е н Т. Ассоциативная память.— М.: Мир, 1980.— 236 с.
46. К р а й з м е р Л. II. Память кибернетических систем:— М.: Сов. радио,1971.
47. Л а р и о н о в А. М., Л е в и н В. К. и др. Основные принципы построе­ния и технико-экономические характеристики Единой системы ЭВМ//УСиМ.— 1973.— № 2 . - С. 1—12.
48. Л е б е д е в В. П., С о к о л о в А. П. Введение в систему программиро­вания ОС ЕС.— М.: Статистика, 1978.— 144 с.
49. М а л ь ц е в А. И. Алгебраические системы.— М.: Наука, 1970.
50. М а л ь ц е в А. И. Алгоритмы и рекурсивные функции,—М .: Наука, 1965.
51. М а р т и н Дж. Организация баз данных в вычислительных системах.—М.: Мир, 1978.
52. М и д о у Ч. Анализ информационно-поисковых систем.— М.: Мир,1 9 7 0 .- 367 с.

53. Микроэлектронные цифроаналоговые и аналоговые цифровые вычисли­тельные преобразователи информации./Под ред. Смолова В. Б .— Л :Энергия, 1976.— 336 с.
54. М и х а л е в и ч В. С. Последовательные алгоритмы оптимизации и ихприм енение//К ибернетика.— 1965.— № 1.
55. М и х а л е в и ч В. С., К у к с а А. И. Методы последовательной оптими­зации.— М.: Наука, 1983.— 207 с.
56. М и х а л е в и ч В. С., Ш о р Н. 3., Г а л у с т о в а Л. А. и др. Вычисли­тельные методы выбора оптимальных проектных реш ений.— Киев: Пау­кова думка, 1977.— 178 с.
57. Многопроцессорные вычислительные системы.— М.: Наука, 1975.— 143 с.
58. Мультиплексоры передачи данны х./П од ред. Лапина В. С., Корчинского А. И.— М.: Энергия, 1980.
59. М ультипроцессорные системы и параллельные вычисления.— М.: Мир,1976.— 384 с.
60. Н е в е л ь с о н М. Б., X а с ь м и н с к и й Р. 3. Стохастическая аппрокси­мация и рекуррентное оценивание.— М.: Наука, 1972.
61. Номенклатурный справочник к заявке 5— 13 на 1985 г. на ЭВМ и комп­лексы общего назначения, вычислительных машин специального назна­чения, аппаратуры передачи данны х телемеханики и изделий АСВТ.—М.: Изд-во АН СССР, 1983.
62. П е т р е н к о А. И., С е м е н к о в О. И. Основы построения систем ав­томатизированного проектирования.— Киев: Вища школа, 1985.— 294 с.
63. П о з и н И. Л., Щ е р б о В. К. Телеобработка данных в автоматизиро­ванных систем ах.— М.: Статистика, 1976.
64. П о с п е л о в Д. А. Фантазия или наука. На пути к искусственному ин­теллекту.— М.: Наука, 1982.
65. Р а б и н о в и ч 3. Л. Элементарные операции в вычислительных систе­м ах.— Техника, 1966.— 303 с.
66. С а а т и Т. Целочисленные методы оптимизации и связанные с нимиэкстремальные проблемы.— М.: Мир, 1973.— 304 с.
67. С е л т о н Д ж . Динамические библиотечно-информационные системы.—М.: Мир, 1979.— 558 с.
68. С е р г и е н к о И. В., Л е б е д е в а Т. Т., Р о щ и п В. А. П риближен­ные методы реш ения дискретных задач оптимизации.— Киев: Паукова
думка, 1980,— 273 с.
69. Система 1ЫЛАС - 1У//Труды ИИЭР.— 1972. - 60, № 4 . - С. 3 6 - 6 2 .
70. С к у р и х и н В. И., Ш и ф р и н В. Б., Д у б р о в с к и й В. В. Математи­ческое моделирование.— Киев: Техника, 1983.— 360 с.
71. Системы автоматизированного проектирования. Материалы конферен­ции 1Р1Р по системам автоматизированного проектирования/Иод ред.
Аллана Д ж .— М.: Наука, 1985.— 376 с.
72. Справочник по цифровой вычислительной технике: Процессоры и память./Под ред. Малиновского Б. Н.— Киев: Наукова думка, 1979.
73. Супервизор ОС ЕС ЭВМ/Под ред. Райкова Л. Д .— М.: Статистика. 1975.—
86 с.
74. С э л т о н Г. Автоматическая обработка, хранение и поиск информа­ции.— М.: Сов. радио, 1973.
75. Т в е р д о х л е б П. Е. Голографическая память и информационные ма­шины//Автометрия,— 1980.— № 2.— С. 9—24.
76. Теория самовоспроизводящ ихся автоматов.— М.: Мир, 1971.— 382 с.
77. Т е р б е р К. Дж . Архитектура высокопроизводительных вычислитель­ных систем.— М.: Наука, 1985.— 272 с.
78. Т е т е н е н б а у м Э. Многоуровневая организация ЭВМ.— М.: Мир,1979.— 547 с.
79. Ф л о р е с А. Организация вычислительных маш ин.— М.: Мир, 1972.—*430 с.

вО. X а с с о н С. Микропрограммное управление.— М.: Мир.— Вып. 1. 1973.—
240 с.; Вып. 2. 1974.— 477 с.
в1. X и г м э н Б. Сравнительное изучение языков программирования.— М.:Мир, 1974.— 204 с.
в2. X и л б у р н Д., Д ж у л и ч П. Микро-ЭВМ и микропроцессоры.— М.:Мир, 1979.— 464 с.
вЗ. Ч а ч к о А. Искусственный разум .— М.: Молодая гвардия, 1978.
84. Ш о л и х о в А. А., С е л и в а н о в 10. П. Вычислительные машины.—М.: Энергия, 1978.
85. Ш о р Н. 3. Методы минимизации недифференцируемых функций и ихприложения.— Киев: Наукова думка, 1979.— 200 с.
86. Э н д р ю А. Искусственный интеллект.— М.: Мир, 1985.— 264 с.
87. Ю щ е н к о Е. Л. Адресное программирование.— Киев: Техиздат, 1963.
88. Я к у б а й т и с Э. А. Вычислительные системы и сети.— Рига: Знание,1 9 7 7 .- 47 с.

Абонентская линия 196Абонентский пункт 114
Автокод 137
Автокорреляция 288
Автомат конечный 26— читающий 97Автомата анализ 29— синтез 29Автоматизация дедуктивных построений
341, 529— документооборота 408— издания переводной литературы 336— испытаний 303— контроля исполнений 389
качества продукции 389— научных исследований 337, 341~ обработки данных в медицине 348— обучения 353— программирования 136— редакционно-издательской деятельно­сти 335
Автоматизированная
информационная
система (АИС) 160---------- документальная 161—фактографическая 161— лентотека 85— система обработки данных (АСОД) 18
Автоматизированное
рабочееместо(АРМ) 115, 357
Автоматизированные и автоматические
системы управления (АСУ) 11, 12, 13,299, 302, 399, 485Автоматизированный земельный
ка­дастр 388
— измерительный комплекс 325
Автоматический регулятор 301
Автоматное отображение 29Агрегация технологических нормативов
365Агрегированные программы 472
Адаптер канал — канал 63, 194, 201
Административное обеспечение 178Администратор банка данных 178Адрес ранга 120— символический 138Адресация косвенная 120— непосредственная 120— неявная 118— прямая 120— составная (условная) 120
Аксон 492
Акустическая линия задержки 78Алгебра конструкций 363— отношений (реляционная алгебра) 181
Алгол-60 140Алгоритм 38— Маркова нормальный 41— перебора в длину 525— управления 405
Алфавит абстрактный 15— базисный 16Алфавит байтовый 16Алфавитно-цифровое печатающее устрой­ство 101, 102Аномалия манипулирования 180Антиградиент 221
Аппроксимация 280— чебышевская (минимаксная) 282
Арифметико-логическое
устройство(АЛ У) 35
Архивный накопитель на магнитных кар­тах 85Ассемблер 136База данных 10, 134, 160
распределенная 206Байеса правило 498
Байт 16Банк данных 160Барс 116, 196, 298, 299
Безбумажная технология 106Бекуса нормальные формы 17Библиотека стандартных подпрограмм
124Бинарное отношение 20
Бит 16
Битовые отображения 170Блочный синтез 28, 29
Бод 199Булева алгебра 20— величина 19Буферная зона 132
Буферные емкости 423
Вариационная задача 268
Взвешивание критериев 269
Виртуальная память 130Виртуальный регистр возврата 124— стек 124Внешняя память 86Вокодер 212Временная конфигурация ВЦ 213Встроенный указатель 170Выражение арифметическое 39— булево 39Высказывание 20Вычислительные центры коллективного
пользования (ВЦ КИ ) 205, 211Генератор калиброванных импульсов 47
Генерация изображений 515— конкретной ОС 158Гиперповерхность 233
Гистограмма 278
Государственная сеть вычислительных
центров (ГСВЦ) 12, 211, 387, 487
Градиент 220Грамматика контекстно-зависимая 508— контекстно-свободная 607.
•— формальная 507

Графопостроитель 103
Группа Ли 505
Дамп (распечатка) 149
Данные 18— составные 31/«-м-лл
Данными язык манипулирования (НМД)
175Данных актуализация 159— защита 176— логическая структура 176— пересылка 35— режим актуализации 178— структура 29Двоичная система счисления 18Двоичный счетчик 28Деревья 32Дескриптор 163Дешифратор 47
Джозсфсона эффект 23Диалоговый терминал 107Динамическое программирование 273— целеполагание 528
Диск гибкий (дискрет) 87— жесткий 87— магнитный с подвижными головками
83— мини 87Дисперсия 276Дисплей алфавитно-цифровой 108Допустимое множество 216
Дуаль-карта 98Дуплексный виртуальный канал 210Задержка 23Замок секретности 174Записи исходные 170— порожденные 170Запоминающее устройство (ЗУ) 32, 42— — магнитного типа 34— — полупроводниковое 71
с произвольным доступом 33■ферритовое 70Звуковизор 349
И'-ровая задача 527
Идентификатор 19—- индекса 29— процедуры 143Иерархический блочный поиск 166Именованная связь 172Импликация 530Инвертированный список 162— файл 162Индекс дорожек 168— томов 168-— цилиндров 168Индексно-последовательный метод орга­низации файлов 168Индексный метод адресации 166Индекс-регистр 120
Инженерное проектирование 397
Интегральные головки 85Интегратор 67Интеграция вертикальная 468— горизонтальная 468Интегрированная АСОУ 362
Интегрированные системы управления
производством 13Интеллектуальный робот 496Интерполятор 323
Интерпретация 136Интерпретирующая система 42Интерфейс 56, 57, 64, 86Интерфейс ввода-вывода 297
Информатика бумажная 9, 10— машинная 539
Информации динамичность 10— машинный носитель 11— переработка 9Информационно-диспетчерскийпункт(ИДИ) 211Информационный барьер 11Информация дискретная 14— непрерывная (аналоговая) 14— цифровая 15Искусственный интеллект 492, 494
Исчисление высказываний 529— отношений (реляционное исчисление)182Калькулятор 36, 65
Камак 117, 275, 337
Канал (периферийный процессор) 86— селекторный 86Каналообразующая аппаратура 197, 212
Канальный процессор 196Карта с карандашными отметками 98— с краевой перфорацией 96Кассетный накопитель на магнитных
лентах 77Квантор 533— всеобщности 182— ограниченный 537— существования 182
Квартиль 280Кибернетическое моделирование 337
Клавишный перфоратор 91Классификационная матрица 501— процедура 501
Ключ 48
Кобол 144Код с обнаружением ошибок 154Кодирование 15Кольцевая структура многомашинного
комплекса 194
Команда демаскирования 128— маскирования 128— останова 123— перехода 122Комбинационная схема 21, 47
Коммутатор 26, 47, 69
Коммутационный процессор (КП) 199,
207
Коммутация сообщений 200Компилятор 136, 140Комплекс с децентрализованным управ­лением 195— с централизованным управлением 194
Компьютер идеализированный 42— универсальный 44— фон Неймана 43, 44
Конвейерный метод выполнения команд
54Контроллер 50, 63, 64Контроль машинный 155— по четности 154Контрольник 91Концентратор 114, 200— локальный 297
Корректирующий блок 155Корреляция 288
Кортеж 179Критерий смыслового соответствия 163Критический путь 447
Курсор (световая точка) 349
Левосписковая ст р у к т у р а 170Лентопротяжный механизм 75Ленточный контроллер 76— накопитель 77Лингвистический образ 515
Линейное программирование 240
булево 251целочисленное 250
Лицо, готовящее решение (ЛГР) 475— , принимающее решение (ЛПР) 464,
467, 468, 477
Логическое условие 35, 39
Магнитный барабан 80— диск с фиксированными головками 80— домен 78Мажоранта 254
Макрокоманда 127
Макрооператор (подпрограмма) 40
Максимин 257
Манипулятор (робот) 328
Маркер 108Массив 30Матрица 31— игры 257— нормативов полных затрат 474
прямых затрат 474— рекурсов 474
Машинный каталог 125Медиана 279— распределения 456Медиатор 493
Метагюнятие 17Метод барьеров 230— вектора спада 252— ветвей и границ (МВГ) 250, 254— дискретной оптимизации прямой 252— коллективных
экспертных
оценок
345— координатного спуска (подъема) 239— наименьших квадратов 282— направляющих окрестностей 252— отсечений 250— перебора 220— последовательного анализа вариантов
270— растяжения пространства 234— релаксации 254— сглаживания 285— сопряженных градиентов 228— субградиентной оптимизации 234— формализованных технических зада­ний 151— штрафных функций 229— эллипсоидов 234Микрооперация 35Микропрограмма 36, 37
Микропроцессор 57
Микротакт 34Микрофильм 88Микрофиш 88Миникомпьютер 52Минимакс 258
Минимизация функций 217Миноранта 255Мнемокод 137
Многомашинный комплекс 63Многопроцессорная обработка 62Мода 279
Модем 113, 196, 199
Модуль загрузки 125Модуляция амплитудная 199— фазовая 199
Монитор 121, 125— сетевых абонентских служб 205Мультиплексный канал 93Мультиплексор 56, 297— передачи данных 114, 200•— программируемый 116

Мультиплексорный разветвитель интер­фейсов (РИМ) 112
Мультипрограммирование 66Мультипрограммный режим работы 128
Мультипроцессирование 131Мягкая архитектура 35Накапливающее суммирование 34Невязка планов 478
Недис 148Нейрон 492— вставочный 492— чувствительный (афферентный) 492— эффекторный (эфферентный) 492
Нормальная форма дизъюнктивная 531
конъюнктивная 531
Нулевой страховой запас 429
Обменная команда 135Обратная связь 27Общая задача дискретной оптимизации
Общегосударственная автоматизирован­ная система учета (ОГАС) 12, 387, 469,
485
— сеть передачи данных (ОГСПД) 213
Операнда код 43Оперативно-календарное
планирование
Оператор безусловного перехода 40— итерационного цикла 41— присваивания 39— пустой 41— составной 40— условного перехода 41— условный 40, 41— цикла 40Оператора код 42, 43
Операторные скобки 40Операционная система 45, 121дисковая (ДОС ЕС) 157
сети (ОСС) 204
Операционные усилители 67Оптимальное решение 216
Оптимизации двойственная задача 224— прямая задача 224— численные методы 225
Оптимизация 216— выпуклая 231— гладкая 220— многокритериальная 227— негладкая 239— однокритериальная 227— системная 270— стохастическая 239— функций 269, 270— функционалов 269, 270— целочисленная 220Относительный адрес 165
Отношение 20— порядка 29, 30
Пакет дисков 168— интеллектуальный 130— программ 130Пакетный метод обработки 66Памяти двоичный элемент 25— защита 157— структурирование 32, 62— элемент 26Память ассоциативная 33— виртуальная 67— внешняя (ВЗУ) 43— закрытая 32— конечная 28— массовая 72Память на магнитных доменах 79— оперативная (ОЗУ) 43— открытая 27, 32— составная 25— стековая 118— управляющая 37Параметризация 342
Параметрический метод сжатия речевой
информации 517
Переход но регистру или стеку возвра­та 122Период оптимального обновления запа­са 430Персеитрон 502, 513
Перфокарта 87, 89
Перфолента 93Планирование долгосрочное 395— краткосрочное (текущее) 395— макроэкономическое 471— об ьсмио-календарное 460— среднесрочное 395
Плоттер двухкоординатный 105— однокоординатный 105Подпрограмма 123— стандартная 124Позадачный подход 411
Поисковый образ 163запроса 163Полнота алгоритмических языков 41Положительная обратная связь 494
Полугруппа 30Последовательно печатающий механизм
99Последовательный файл 165
Постановка задачи многокритериальная
270
однокритериальная 270Поток требований нестационарный 412
пуассоновский 412
стационарный 412
Почти-градиент 233
Правила ассоциативности 530— де Моргана 531
Правила дистрибутивности 530Правила доминирования 265— коммутативности 530— разрешающее 265Предикат 20•— локальный 502— первичный 502— составной 533
Предикатов узкое исчисление 533
Предплановая ориентировка 463
Преобразование допустимое 504— тождественное 504
Преобразований группа 504— полугруппа 504(группа) частичная 504
Преобразователь аналого-цифровой 46— функциональный дискретный 47— цифро-аналоговый 46Прибор с зарядовыми связями 79Принцип динамической целостности 409— интегральной информационной базы409
— макроконвейера 62— модульности 411— новых задач 409— общей шины 64— одноразового ввода данных 409— оптимальности 265— первого лица 400— процедур управления 411— резолюции 531— тнновости 411
Проблема понимания текстов 519

Проблемно-ориентированный
комплекс(ПОН) 362
Прогнозирование 395, 471— научно-техническое 444— целевое 453
Программа 36, 40, 42— канала 134— прикладная 45, 121— синтаксического контроля 149— структурированная 152Программа-диспетчер 126
Программирование и управление вычис­лительным процессом 118— модульное 152— структурное 152Программирования технология 148Программированный учебник 353
Программно-целевое управление 442Программный блок 141— комплекс Кама 188— счетчик 121Программы блок-схема 150— отладка 149
Продукция (правило подстановки) 507
Пролонгирование планов 396, 479
Промежуточный носитель информации
89Протокол 198, 200, 207— пакетной коммутации 202— транспортный 203Процессор 34— абонентских сообщений 203— арифметический 142— векторный 55— интеллектуальный 144— магистральный 54— матричный 55— периферийный (канал) 56, 86— с плавающей запятой 52— с фиксированной запятой 52— терминальный 116— центральный ЕС ЭВМ 58
Пул 133Работа фиктивная 445Радиорелейные линии связи 197
Разделение времени 129Распараллеливание
вычислительного
процесса 131Распознавание зрительных образов 511— генерация речевой информации 515— образов 497
Распределение геометрическое 419— Эрланга 413
Распределения показательный закон 412
Распределительная оптимизационная за­дача 489
Региональный узел коммутации (РУК )Регистр 25, 52, 70— базовый 43— буферный 64— команд 122— однобитовый (флажок) 64— операнда ЗУ 70— признака 122Регистра разряд 25— состояние 25Регистратор производства 376Режим диалога 61— интерактивный 67— пакетный 61— разделения времени 61, 67— реального времени 61, 67
Резольвента 532
Резолюция двойственная 533

Рейтинг 527
Релевантность 164Реляционная структура данных 177. 179.
180Рефракторности период 493
Робот адаптивный 330— интеллектуальный 330Рычажная пишущая машина 100Сбалансированность плана 475Сбалансированный
оптимизированный
план 477
Световое перо (карандаш) 1ц
Сдвиг 35
Семантическая сеть 509
Сетевой график 171, 444— файл 171Сеть передачи данных 132— ЭВМ и ВЦ И, 192. 195— АКРА 207— СуЬегпе! 207— Сус1адез 207— Оепега1 Е1ес1Пс 207Симплекс-метод 241, 242
Симскрипт 148Симула 148Синапс 493
Сингулярный набор 173Синтезатор речи 516
Синхронная организация работы элемен­тов 24Система автоматизированного контроля
оборудования (САКО или УКО) 294
проектирования (САПР) 357— документирования программного про­дукта 153
— интегрированная 193— мультипроцессорная вычислительная
193— программированно-обучающих курсов
(СПОК) 356— с постоянным размером заказа 435---------- уровнем запасов 435— Темп ЭК 303— управления базами данных (СУБД)176
ОКА 188•распределенными базами данных
(СУРБД) 191— М А К К I, И, I I I 209Системная оптимизация 270, 271, 464Системный анализ 342— аналитик 176— теледоступ 188Ситуационная комната 116
Сканирование 120
Сколема функции 535Слово в абстрактном алфавите 17— состояния программы 128
Слэнг 148Смесь Гибсона 58
Событие конечное 445— начальное 445— промежуточЕюе 445Составной оператор 141Состояние элемента памяти 24Способ доступа ассоциативный 89стековый 89Справочник связей 170Средство программной защиты 156
Стек 34, 52
Страничный принтер 102Стробирование 349
Струйное печатающее устройство 100Структура иерархическая 32Структуризация 342

Субградиент 233
Сумматор аналоговых сигналов 68— параллельный 22Супервизор 126
Схема инверсии 48— интегральная 22— мажоритарного выбора 155— последовательностная 24— разделения 48— совпадения сигнала 48
Схемы быстродействия 23Сходимость 226Счетно-аналитическая машина 90Таблица соответствия 28Табулятор 90Таймер 126, 295Такт 24Тактовая частота 24
Тек 147Телекоммуникационный доступ 187
Телематика 539
Телетайп 94Теория игр 256Терминальная сеть 205Тест 149— Тыоринга 495Технология информационная 3,39
— организационного управления 339
Томограф рентгеновский 348
Точечный (игольчатый) механизм печа­ти 100Точка заказа 429
Транзакция 187
Транзистор 49Транспортная задача 246, 488— станция (ТС) 209
Триггер 27, 50
Тьюринга машина 537

Указатель 165
Умножитель 23Универсальный набор операций 21Упакованный код 19Управление агрегацией косвенное 462
прямое 462— данными 132— заданиями 129— задачами 129— запасами 426, 427— инвестициями 462— нормативное 463— оптимальное 301— программное 301— программно-целевое 472
Уравнение регрессии 288
Условие регулярности 221
Условия Куна — Таккера 221
Устройство ввода информации 44с перфокарт 44с перфолент 50— внешнее периферийное 44— вывода 44на перфокарты 92•
на перфоленты 96— отображения 36— подготовки данных 89— связи с объектом (УСО) 117, 275— считывающее 91— управления (УУ) 34
магнитными дисками 45Файл 31— в ассоциативных ЗУ 169— в ЗУ с произвольным доступом 169— вторичный 189

Файл иерархический 170— первичный 189
Физическая структура данных 133Флексорайтер 94Фонема 515
Форма дизъюнктивная 530— конъюнктивная 530Формальная грамматика 17Формальный язык 17Форматирование данных 143Формула выполнимая 531
ложная 531— — тождественно истинная 531
Фортран 143Форум система 385
Фрейм 508, 509, 515— динамический 508
Функционал 268
Функция выходов 25— Лагранжа 221— переходов 24Фурье ряд 290Целевая функция 216
Цена игры 258
Центр подготовки технической докумен­тации (ЦПТД) 358
Цикл 36— записи 33— обращения к ЗУ 70— чтения 33, 70
Циклический счетчик 82Цифровой дифференциальный анализа­тор 320— интегратор 321
Чип 23, 89Числовое
программное(ЧПУ) 321управление

Шаговый двигатель 47
ЭВМ архитектура 44, 62Эквивалентность по зависимости 183
Экстраполяция 280Экстремум абсолютный 217— локальный 217Электромеханическая сортировка 90Элемент задержки 26Эмулятор 137
Язык алгоритмический 38— макроассемблерный 138— манипулирования данными 160— машинно-независимый (входной языквысокого уровня) 139— машинно-ориентированный 137— машинный 38— проблемно-ориентированный 39, 140— процедурно-ориентированный 39, 140— символического автокода 138— управления заданиями 129— сойаву1 173— РЬЛ 147
Я-граф 151
Я-машина 151
Я-технология 151
Я-язык 151Предисловие ко второму изданию
Предисловие к первому и з д а н и ю ...........................................................................
Предисловие автора к первому и з д а н и ю ......................................................

35
7

В веден и е

9

,

.

.

Г л а в а I. Основные понятия об информации и ее преобразованиях
14
1.1. Непрерывная и дискретная и н ф о р м а ц и я ............................................... 14
1.2. Абстрактные а л ф а в и т ы ..................................................................................... 15
1.3. Слова и абстрактные я з ы к и ....................................................................... 17
1.4. Данные. Типы элементарных д а н н ы х ...................................................... 18
1.5. Модели и алгебры д а н н ы х .............................................................................20
1.6. Комбинационные с х е м ы .................................................................................... 21
1.7. Последовательностные схемы (конечные автоматы) . . .
24
1.8. Структуры данных и структурированная намять . . . .
30
1.9. П р о ц е с с о р ы ............................................................................................................34
1.10. Алгоритмы и алгоритмические я з ы к и ...................................................... 38
1.11. Алгоритмические с и с т е м ы .............................................................................. 42Г л а в а II. Преобразователи информации
. . . . . . . .
46
2.1. Преобразователи формы представления информации . . .
46
2.2. Функциональные дискретные преобразователи
. . . .
47
2.3. Конечные а в т о м а ты ............................................................................................ 50
2.4. П р о ц е с с о р ы ............................................................................................................51
2.5. Центральные процессоры ЕС Э В М ...............................................................58
2.6. Цифровые вычислительные м а ш и п ы .......................................................60
2.7. Аналоговые вычислительные м а ш и н ы .......................................................67
Глава
3.1.
3.2.
3.3.

III. Запоминающие у с т р о й с т в а ...................................................................... 69Запоминающие устройства с произвольным доступом
.
.
69Запоминающие устройства с последовательным доступом
74Запоминающие устройства с прямым доступом
. . . .
80

Г л а в а IV. Устройства ввода, вывода и подготовки данных . . .
90
4.1. П е р ф о к а р т ы ...........................................................................................................90
4.2. Мультиплексные к а н а л ы ..............................................................................93
4.3. П е р ф о л е н т ы ...........................................................................................................93
4.4. Читающие а в т о м а т ы ............................................................................................ 96
4.5. Печатающие у с т р о й с т в а ....................................................................................99
4.6. Устройства ввода и вывода графической информации.
.
. 102
4.7. Устройства подготовки данных на магнитных носителях
106
4.8. Диалоговые т е р м и н а л ы ..................................................................................107
4.9. Удаленные терминалы и абонентские пункты
. .
.
. 112
4.10. Автоматизированные рабочие места . ,
.
.
.
.
« 115
4.11. Сбор данных с автоматических д а т ч и к о в ............................................. 117
4.12. Исполнительные механизмы
. . . . . . . . .
117

Г л а в а V. Программирование и управление вычислительным про­цессом ................................................................................................................. И&
5.1.
Методы а д р е с а ц и и .................................................................................* 118
5.2. Управление однопрограммным п р о ц е с с о м ..................................... 121
5.3. Модули загрузки и мультипрограммирование..................................... 125
5.4.
Разделение в р е м е н и ................................................................................ * 130
5.5.
М у л ь т и п р о ц есси р о в а н и е........................................................................* 131
5.6. Управление д а н н ы м и ................................................................................... 132
5.7. Автоматизация п рограм м и рован и я............................................................435
5.8. Машинно-ориентированные языки программирования
. .
137
5.9. Машинно-независимые я з ы к и ...................................................................139
5.10. Технология п р огр ам м и р ован и я ................................................................... 148
5.11. Обеспечение надежности машинной обработки информации
154
5.12. Операционные системы ЕС Э В М .....................................................157
Г л а в а VI. Базы д а н н ы х .................................................................................... 159
6.1. Общие с в е д е н и я ...........................................................................................159
6.2. Справочно-информационные с и с т е м ы ....................................................160»
6.3. Организация последовательных ф а й л о в .............................................165
6.4. Организация иерархических ф а й л о в ..............................................170
6.5. Организация сетевых ф а й л о в ............................................................ 171
6.6. Языки для описания д а н н ы х ................................................................... 172
6.7. Языки манипулирования данными ( Я М Д ) .............................. 175
6.8. Системы управления базами данных (С У Б Д ).............................. 176
6.9. Реляционные базы д а н н ы х .......................................................................... 170’
6.10. Целостность баз д а н н ы х .....................................................................186
6.11. Телекоммуникационные методы д о с т у п а ......................................1876.12. Первичные и вторичные файлы в базах данных . . . .
188
6.13. Распределенные базы д а н н ы х ............................................................191
Глава
7.1.
7.2.
7.3.
7.4.
7.5.
7.6.
7.7.

VII. Многомашинные комплексы и сети ЭВМ. . . .
192
Многомашинные к о м п л е к с ы ....................................................................192Системы с в я з и ..................................................................................................195Сети Э В М ..........................................................................................................199
Вычислительные центры коллективного пользования
.
.
205Распределенные банки д а н н ы х .................................................................. 206
Некоторые иностранные сети Э В М ..................................................... 207
Государственная сеть вычислительных центров .
.
.
.
211

Г л а в а VIII. Математические методы о п т и м и з а ц и и .....................................216
8.1. Общие сведения об о п т и м и з а ц и и ............................................................216
8.2. Гладкая оптимизация. Общие с в о й с т в а .............................................2208.3. Численные методы гладкой о п т и м и з а ц и и ............................................ 225
8.4. Выпуклая о п т и м и за ц и я ................................................................................. 231
8.5. Негладкая о п т и м и за ц и я ..................................................................................239
8.6. Линейное п р о г р а м м и р о в а н и е ....................................................................240
8.7. Целочисленное линейное п р о гр а м м и р о в а н и е.....................................250
8.8. Общая задача дискретной о п т и м и з а ц и и .............................................252
8.9. Теория и г р ......................................................................................................... 256
8.10. Динамическое п р о г р а м м и р о в а н и е ..............................................
265
8.11. Вариационные з а д а ч и .................................................................................. 268
8.12. Систегиная о п т и м и з а ц и я ............................................................................270
Глава

IX. Автоматизация измерений и управления технологиче­скими п р о ц е с с а м и .................................................................................. 274
9.1. Технология автоматизации и з м е р е н и й ....................................................274
9.2. Первичная обработка результатов и зм ер ен и й .....................................276
9.3. Интерполяция, экстраполяция и аппроксимация
« 280

9.4.
9.5.
9.6.
9.7.

Корреляция и а в т о к о р р е л я ц и я ........................................................283
Спектральный а н а л и з ....................................................................... 290
Системы автоматизированного контроля оборудования .
.
294Автоматизированные и автоматические системы управления( А С У ) ........................................................................................................................ 299
9.8.
Автоматизация испытаний
...................................................303
9.9. Математическая постановка задач математического управле­ния..........................................................................................................................304
9.10. Станки с числовым программным управлением . . . .
321
9.11. Промышленные манипуляционные р а б о т ы ......................... 328
9.12. Электронная вычислительная техника в быту
•
.
*
. 331
Г л а в а X. Автоматизация информационных технологий
,
,
, 334
10.1. Общие сведения об информационных технологиях .
.
. 334
10.2. Автоматизация
редакционно-издательской
деятельности
335
10.3. Автоматизация научных и с с л е д о в а н и й .............................................337
10.4. Автоматизация обработки данных в медицине
. . . .
348
10.5. Автоматизация о б у ч е н и я ...........................................................................353
10.6. Автоматизация проектно-конструкторских работ
.
.
. 357
10.7. Автоматизация в кредитно-финансовой системе . . . .
369
10 8. Автоматизация у ч е т а .................................................................................. 373
1^9. Автоматизация в системах к о н т р о л я ....................................................388
10.10. Другие информационные т е х н о л о г и и .................................................... 394
Г л а в а XI. Автоматизация организационного управления
.
.
. 395
11.1. Общие сведения об организационном управлении и процес­се его сов ер ш ен ств ован и я ............................................................................395
11.2. Основные принципы проектирования организационных сис­тем у п р а в л е н и я ................................................................................................. 401
11.3. Теория массового о б с л у ж и в а н и я ........................................................... 411
11.4. Автоматизированные системы диспетчерского управления
421
11.5. Управление запасами и оперативно-календарное планирова­ние.........................................................................................................................427
11.6. Программно-целевое у п р а в л е н и е ...........................................................442
11.7. Сетевые г р а ф и к и .......................................................................................... 444
11.8. Целевое л р о г н о з и р о в а н и е ..........................................................................453
11.9. Объемно-календарное п л а н и р о в а н и е ................................................... 400
11.10. Автоматизация плановых расчетов на общ егосударствен­ном у р о в н е ........................................................................................................ 471
11.11. Общегосударственная автоматизированная система (ОГАС)485Г л а в а XII. Искусственный и н т е л л е к т .................................................................... 492
12.1. Естественный интеллект и проблемы его моделирования
492
12.2. Математические основы классификации и распознаванияо б р а з о в ................................................................................................................ 497
12.3. Распознавание зрительных о б р а з о в .................................................... 511
12.4. Генерация и з о б р а ж е н и й ........................................................................... 515
12.5. Распознавание и генерация речевой информации
. .
.
515
12.6. Проблема понимания текстов на естественных языках иобучения з н а н и я м ...........................................................................................519
12.7. Планирование целенаправленных д е й с т в и й .................................... 523
12.8. Автоматизация дедуктивных п о ст р о ен и й .............................................529З а к л ю ч е н и е ............................................................................................................................... 539
Список л и т е р а т у р ы ........................................................................................................... 540
Предметный указатель

544

1Е?2.
2*^Р*0931
Г ^ П5г [у'ДЕ■ ■1г.! *?2• ЧГ»ч» -• •— - — *--п я . _ : Г