Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Лоскутов В.И. Основы современной техники управления

.pdf
Скачиваний:
8
Добавлен:
25.10.2023
Размер:
13.85 Mб
Скачать

13.

АЛГОРИТМИЗАЦИЯ ПРОЦЕССОВ УПРАВЛЕНИЯ

Построение программы переработки исходной

информации

в совокупность предписаний для организованного

воздействия

на управляемый объект выполняется с помощью

алгоритмиза­

ции процесса управления.

 

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

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

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

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

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

Осуществляется это с помощью алгоритма управления, ко­ торый определяет направленное воздействие на соответствую­ щий объект для приведения его в более организованное со­ стояние на основе разработанной системы предписаний и пра-

240

вил по переработке исходной информации при формировании управляющих сигналов.

В автоматизированных системах управления реализация установленной последовательности арифметических и логиче­ ских операций выполняется электронно-вычислительными ма­ шинами.

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

ботки

исходной информации в условные логико-математиче­

ские

схемы. Качество получаемых

алгоритмов

оценивается

с точки зрения их эквивалентности

исходными

процессами

и их

экономичностью.

 

 

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

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

В этом случае алгоритм может рассматриваться не только как правило решения некоторого класса задач, но и как опи­ сание целого семейства процессов.

Каждый из разработанных алгоритмов должен удовлетво­ рять условиям определенности, массовости и результативности.

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

Условие массовости определяет возможность применения разработанного алгоритма для решения определенного класса задач и оперирования с различными вариантами исходных данных.

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

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

9

З а к а з № 1053

241

цепочке предписаний или когда процесс реализации алгоритма никогда не заканчивается.

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

//(a/<P) = - 2 P i l o g P „

п

где Р — условная вероятность появления результата при ис­ ходных данных.

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

'цен

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

Задача описания с помощью алгоритмов такого рода ди­ скретных процессов называется алгоритмизацией.

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

Используемые для записи управляющих алгоритмов опера­ торы делятся на три основные группы: основные, вспомога­ тельные и служебные.

Основные операторы используются для математического

представления отдельных

актов

имитируемого процесса,

а также для указания о

характере

взаимодействия между

ними.

 

 

242

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

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

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

пример,

Л is означает арифметический оператор № 15 из при­

нятой для них номенклатуры.

При

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

и логического оператора к рядом стоящему никаких дополни­ тельных обозначений не производится. Если же управление передается какому-либо другому оператору, то к соответ­ ствующему символу справа вверху приписывается номер опе­ ратора. Например, АІо обозначает, что от оператора Л2п управ­ ление передается оператору 31.

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

Передача управления в операционных схемах от логиче­ ских операторов указывается стрелками справа. Стрелка вверху указывает передачу управления к новому оператору в случае, если условие, проверяемое данными логическим опе­ ратором, выполнено. Стрелка, поставленная справа внизу, по­ казывает передачу управления для случая, когда проверенное оператором условие не выполнено. Например, символ Pis ^10

следует понимать

таким

образом,

что управление оператору

№ 3 5 передается

в том случае, если проверяемое условие вы ­

полнено, и оператору №

10, если не

выполнено.

При передаче управления данному оператору от другого оператора запись индекса ведется слева сверху и обозначается номером того оператора, от которого передается управле­ ние. Например, 5>і2Агі означает, что оператору Апередается управление от операторов 5 и 12.

9*

243

Для обозначения окончания вычисления в операторных схемах используется оператор Я.

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

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

Возьмем для иллюстрации операторного метода и построе­

ния графической блок-схемы

 

алгоритм решения

квадратного

уравнения

х* + рх + д = 0.

 

Нахождение

корней уравнения

производится

по формуле

 

Р

.

-, /~~Р*

 

 

х и = - т

±

Ѵ

T ~ q -

 

Вводные данные в ЭВМ в этом случае будут состоять из значения коэффициентов р, а и числа 2.

Введем следующие операторы для реализации установлен­

ного формулой алгоритма:

 

 

Ал

вычисление

— —

 

 

 

 

 

рг

2

 

 

 

Ла

вычисление

 

 

 

 

 

 

 

 

 

 

4

рг

 

 

 

А3

вычисление

S =

q

 

 

 

 

 

Ai

определение

R

=

 

 

 

Ръ

проверка условия

S > О

 

 

6

определение

действующих корней х~

±

R

 

 

 

 

 

Р

 

А7

определение

комплексных корней х=

— +

Rt

Яц окончание вычислений и выдача результатов.

 

Операторная

схема

рассматриваемого

алгоритма может

быть

представлена

в

следующем виде:

 

 

244

Реализация указанного

алгоритма может быть

представ­

лена в

виде

соответствующей

блок-схемы, как

это

показано

на рис.

47.

 

 

 

 

 

 

 

 

Аналогичным путем в виде операторных схем и блок-схем

изображаются

и другие

более

сложные

алгоритмы.

 

 

 

 

 

 

 

При

автоматизации

про­

 

 

Вычисление

-у-

 

граммирования

запись

алго­

 

 

 

ритма

часто

производится

 

 

 

 

 

 

 

 

 

 

в виде

граф-схемы. При по­

 

 

 

 

 

строении такой граф-схемы

 

 

Вычисленис

у

 

должны

выполняться опреде­

 

 

 

 

 

ленные условия. Один и при

 

 

 

 

 

этом единственный

ее

узел,

 

 

Вычисление

 

 

отмеченный символом Un, я в ­

ляется входом. В нем не кон­ чается ни одна стрелка. Граф -

*=Ѵ\Іі-<і\

°( Т)

К.

 

P

*і,г~

2 ± R

выдача

 

 

игзцль

mamaß (XhK2)

 

 

Рис. 47. Блок-схема алгоритма

Рис. 48. Граф-схема

для решения

квадратного уравне­

алгоритма

решения

 

ния

квадратного

урав­

нения

схема имеет также единственный узел (UK), называемый вы ­ ходом. Из выхода не исходит ни одна стрелка. Каждому из остальных узлов однозначно сопоставлен или некоторый оператор О,, или распознаватель Р. При начертании их

245

выполняются следующие условия: если а есть 0-узел, то из него выходит только одна стрелка, а если а есть Я-узел, то из него исходит две стрелки, отмеченные соответственно знаками

На рис. 48 представлена граф-схема алгоритма решения квадратного уравнения, записанного в форме

ахъ + Ьх~{-с = 0.

Вэтом случае отдельные операторы схемы представляются

вследующем виде:

Uп

— ввод а, Ь,

с

2,

4

 

 

0Х

— d =

b2—4ас

 

 

 

 

 

P , - d > 0

 

 

 

 

 

 

0г—хх

=

~ 6 + >^

;

S=Vd;

t = 2a

 

 

 

 

 

 

 

 

 

0-і — Х2

=

 

 

 

 

 

 

0 4

г =

- ;

t = 2a

 

 

 

 

 

 

 

 

 

 

0в

х = г im;

х2

=

гim

 

 

UK

— результат: хх

и

х2.

 

 

Одним из наглядных способов графического

представления

алгоритмов

является

способ,

предложенный

сотрудниками

Принстонского университета (США) Берксом, Голустайном и Фон-Нейманом. Принятые для этого обозначения можно найти

в изданной литературе по алгоритмизации [13].

 

В области управления иногда приходится

сталкиваться

с алгоритмически неразрешенными задачами,

входящими

в класс задач, для которых единый алгоритм решения отсут­ ствует. При этом некоторые задачи этого класса разрешимы, но общего конструктивного метода решения для всего рас­ сматриваемого класса нет.

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

Наиболее рациональным (оптимальным) считается алго­ ритм, требующий для своего выполнения наименьшего вре­ мени и наиболее простой структуры вычислительного агрегата.

При алгоритмизации процессов приходится сравнивать между собой различные варианты, а иногда и разные алго-

246

ритмы. Для сравнительной оценки алгоритмов вводится кри­ терий эквивалентности.

Эквивалентными считаются алгоритмы, при реализации

которых

результаты переработки одной и той же информации

совпадают

между собой.

 

Степень приближенно эквивалентных алгоритмов при их

сопоставлении оценивается величиной погрешности

 

 

 

|е|= - Лі — А 2,

 

где

 

I е I абсолютная величина погрешности,

которая д

А\,

А2

жна быть меньше заданной;

 

— алгоритмы, сравниваемые между собой по

сте­

 

 

пени эквивалентности.

 

Построение оптимального алгоритма связано со сравни­ тельным перебором ряда эквивалентных алгоритмов.

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

где г] — коэффициент, учитывающий сложность логической структуры алгоритма;

Na — число элементарных операций при реализации алго­ ритма.

Логико-математические действия при осуществлении алго­ ритма управления сопровождаются перемещением кодовых символов как между отдельными блоками машины, так и внутри самих блоков. Общая сумма символов, перемещенных

за время реализации алгоритма, составляет

его

информаци­

онную

емкость.

 

 

 

Важной величиной для характеристики принятого алго­

ритма является его связность.

 

 

 

Под

связностью алгоритма понимают максимальное

число

определенной информации при выполнении

наиболее

емкого

по вычислению цикла.

 

 

 

При сравнении двух алгоритмов, предназначенных для од­

них и

тех же целей управления, наиболее

организованным

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

В качестве сравнительной характеристики может быть при­ нята их информационная емкость, связанность и простота ло ­ гической схемы.

247

Качество алгоритма управления зависит от точности мате­ матического описания процесса и определения всех его коли­ чественных характеристик.

Последовательность операций при построении алгоритма управления сложным процессом показана на рис. 49.

Сложный производственный процесс в ряде случаев может быть расчленен на ряд элементарных процессов. При создании

 

 

 

алгоритма

 

управления

такой

Постановка задачи

управления

сложной системы

используется

объектом

 

 

комбинированная схема его по­

 

 

 

строения по нескольким задан­

Создание математической мо­

ным локальным алгоритмам для

ведения

 

расчлененных

про­

дели изучаемого процесса

 

цессов.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

При создании сложных алго­

Уточнение численных парамет­

ритмов применяются следующие

операции: объединение, повторе­

ров и нахождение решения

 

 

 

 

ние,

произведение,

построение

 

 

 

разветвления,

построение цикла,

Испытание модели

и получен­

продолжение

ветви.

 

 

ного решения

 

 

 

Обозначим каждый из эле­

 

 

 

ментарных алгоритмов с исход­

Выявление критерия оптималь­

ными данными у через букву

Аі(у)

и

графически

представим

ности и ограничений

 

его прямоугольником. Структур­

 

 

 

ные

связи

между

отдельными

Определение алгоритма управ­

алгоритмами

 

будем

изображать

в

виде

стрелок.

 

 

ления

 

 

 

по­

 

 

 

 

Операция

 

объединения

Рис. 49. Схема построения алго­

зволяет

получать

результаты

ритма управления

сложным

переработки

 

двух

алгоритмов

процессом

 

 

для одних и тех же исходных

 

 

 

данных.

 

 

 

 

 

Символически

операция

объединения

изображается в

виде

 

А3(у)

=

1(у),

 

А2{у)\,

 

 

 

 

где результативный алгоритм А3(у)

состоит из

параллельно

объединенных алгоритмов

Аі(у)

и

А2(у).

 

Структурные

связи

такой операции показаны на рис. 50, а.

 

 

 

 

 

Произведение

двух

алгоритмов

Аі(у)

 

и

А2(у)

образуется

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

248

Символически это изображается в виде

А3(у)^А21(у)Ь

Схема произведения двух алгоритмов показана на рис. 50, б. Произведение алгоритмов, в котором сомножители пред­ ставляют собой одинаковые алгоритмы, называется операцией повторения. Число сомножителей в операции повторения опре­ деляет кратность повторения. Повторение и-кратности алго­

ритма А (у) обозначают

Ап{у).

 

 

 

і

Схема операции повторения показана на рис. 50, в.

 

А, (У,)

 

У

 

Л

А2[А,(У)]

 

 

 

 

А, (У)

 

 

 

А33)

(У)

 

 

 

 

 

А2 2)

 

 

 

1б)

 

 

 

а)

 

 

 

 

У

 

 

 

 

 

А "(У)

А (У)

А (У)

 

 

А (У)

 

 

 

 

 

 

7

 

2

S)

 

 

 

 

 

 

 

 

 

 

 

А, (У)

 

 

 

 

 

 

<>Rs

 

У

 

Аг

(У)

 

А3 (У)

 

 

А,

(У)

 

 

г)

А,

(У)

 

д)

 

 

 

 

 

 

 

 

Рис. 50. Элементарные схемы конструирования алгоритмов

Операцию разветвления применяют в том случае, когда исходные данные у могут обладать некоторым признаком 50 . При наличии признака 5 к ним необходимо применять алго­ ритм Ai, а при отсутствии — алгоритм Л2.

Для распознания признака 5 применяется специальный алгоритм R .

Операция разветвления

символически представляется

в следующем виде:

 

У'

А2 (у)

Схема операции разветвления показана на рис. 50, г. Многократное применение одного и того же алгоритма Л4

к получаемым результатам переработки исходной информации

249