ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 24.10.2024
Просмотров: 94
Скачиваний: 1
|
- 40 |
Пусть F j - |
число обращений к памяти при решении J —ой |
задачи» Тогда при |
заданном составе операций получим |
л„ F i “
где |
X1 |
|
« Njj |
' |
- |
оушарное количество операций в j -й |
|||||||
|
|
*■*’ |
|
|
|
задаче. |
|
|
|
|
|
||
Имея значения |
СЦ |
, найдем среднее |
значение критерия |
||||||||||
для класса |
задач в -!иде математического ожидания |
|
|||||||||||
|
И |
[ F ] |
|
№*■ + F*4'*+ ' “ 4 |
РяЯ'н |
^ |
|
г - Л |
|
||||
|
|
|
|
|
|
|
|
= Z t |
Q T i |
|
|||
|
|
|
|
|
|
& |
> |
■ |
|
;«t |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
а |
о учетом |
(1.33) |
получим |
|
|
m |
|
|
|
|
|||
|
|
|
|
m [ f1- 2 Л 1 2 Л ‘ * ч ■ |
|||||||||
|
|
|
|
|
|
|
i *1 |
|
|
|
|
|
|
|
|
Найдем величину |
|
M ' [ F ] |
• |
характеризующую среднее |
|||||||
чиоло обращений к памяти при вероятностном |
задании операций |
||||||||||||
в |
задачах |
|
Ctj |
в виде |
значений |
X |
ij |
. |
Используя тео- |
||||
рему о произведении вероятностей независим:ix событий, можно |
|||||||||||||
утверадать, |
что вероятность появления операций i - r o типа при |
||||||||||||
решении |
j |
-ой задачи |
подчиняется выражен.« |
|
|
||||||||
|
|
|
|
|
P i! |
= |
|
|
• |
|
|
i |
|
Действительно,если просуммировать величину |
|
г * , |
по Ь |
||||||||||
и |
|
] |
|
, то |
получим |
j . |
|
т |
|
|
|
|
|
|
|
|
|
|
|
|
1L |
|
Z |
^ |
|
r |
1- |
Тогда можно заш оать, |
что |
i* 1 |
|
i,«i |
|
|
|
|
|||||
^ |
|
|
|
|
|
|
|||||||
|
|
|
|
m ; [f ] - |
Z |
y i Z |
|
^ |
v |
||||
! |
|
|
|
|
|
|
и * |
/*1 |
|
|
|
том случае, |
|
|
Однако выражение (1.34) |
справедливо лишь в |
еоли выполняется уоловие
N t - N * * * ' * “ Nm,
41 *
т . е . ц р и одинаковых сложностях решаемых задач» При условии
N 1 |
N a Ф • ■ • ф N m |
|
вероятность Р ; |
появления операции |
L-ro типа для класса |
задач зависит от |
соотношения их оложноотей я равна |
При 8Т0М
м ' ш - i-i
- 42 -
Г Л А В А П МЕТОДЫ ОПТИМИЗАЦИИ ВЫЧИСШТЕЛЪНЫХ
АЛГОРИТМОВ ПО ИХ ПАРАМЕТРАМ
2.1. Содержательное описание процесса оптимизации
Исходным материалом для решения этой задачи является набор проотых алгоритмов по каждой функции или операции. Со ставление набора алгоритмов по каждой операции, а затем выбор из каждого набора по одному простому алгоритму, с помощью которых мойно реализовать алгоритм управления, есть менее тру доемкий процесс по сравнению с достижением необходимой эффек тивности всего алгоритма управления в целом.
При составлении такого набора алгоритмов проектировщику предоставляется возможность свободно выбирать систему команд при составлении каждого в отдельности алгоритма, а также вводить
специальные команды, которые позволяют изменять длину програм |
f |
мы вычислений и время реализации алгоритма в ту или другую |
|
сторону, изменять конструкцию УМ. По окончании составления |
■? |
каждой программы вычисления простой операции производится чис |
|
ленная, оценка параметров алгоритма.-Эти оценки записываются в |
|
виде кортежей. В связи с этим каждый алгоритм одного и того |
|
же набора будет отличаться от другого значением параметров. |
|
Разумеется, что алгоритм управления, составленный из проотых |
|
подалгрритмов, определяется параметрами, которые являются функ |
|
циями параметров простых подалгоритмов. . |
|
При решении задачи выбора появляются определенные труд |
|
ности, так как обеспечение необходимой эффективности алгорит |
|
ма управления связано с выполнением противоречивых требова |
|
ний [79] . |
|
Из множества простых алгоритмов можно выбрать такие, |
|
которые позволяют получить наименьшим один из параметров ал |
|
горитма управления..Например, для того, чтобы получить мини |
|
мальное время реализации алгоритма, необходимо выбрать из каж |
|
дого набора по одному алгоритму с ;' 'амал-ннм гремевсм релда,- |
|
эации. Однако по другим параметра, (дл я.а программ- , оиотема |
|
- 43 -
команд и др .) этот алгоритм может не удовлетворять поставлен ным требованиям.
Рассматриваемую задачу можно сформулировать следующим ' образом. Пусть в УВМ требуется реализовать вычисления множе ства операций .
где W -общее |
число операций (наборов); |
j - номер |
операции (набора). |
Каждая операция |
может быть реализована несколькими алго |
ритма»®, отличающимися своими параметрами: |
|
^ ЭЕ[Ajt], |
— ’ |
|
|
|
(2.2) |
|
||||
где |
H j- |
число алгоритмов в |
наборе |
|
f-j |
; |
|
|
|||
|
I - номер алгоритма в |
J j . |
|
|
|
• |
• |
||||
|
Так как |
в евою очередь является множеством элемен |
|||||||||
тов |
А]1 , то в дальнейшем будем |
|
именовать как подшожеот-* |
||||||||
ва |
р |
: |
|
|
|
|
|
|
|
|
| |
|
|
|
1. |
d |
р |
|
|
|
|
«(2.3) |
' ! |
|
|
|
|
— |
г |
• |
|
|
|
|
|
|
Тогда, ооглаоно (2.3) и определениям (2.1) |
и (2 .2 ), |
|||||||||
|
|
|
Ajt € F. |
|
|
|
(2.4) |
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
Из |
(2 .3) |
вытекают два частных |
случая: |
|
|
|
|||||
|
|
с |
F |
|
и |
) | |
- |
F . |
|
|
|
|
Для второго случая имеем, что множество Fсостоит |
из |
|||||||||
одного подмножества |
и, |
.согласно |
(2.4), |
|
|
||||||
|
|
F = |
{ A i l , |
A i z , . . . , |
A lH i} . |
(2.5) |
|
||||
|
Выражение |
(2.5) |
соответствует |
случаю, когда шожеотво, |
|||||||
состоит из множества простых алгоритмов |
одной и той же опера |
- 44 -
ции. Очевидно, что решить задачу не представляет труда, так как процесс решения сводится к выбору одного алгоритма мето-
дом перебора. |
|
|
|
|
|
|
|
|
|
Рассмотрим случай |
|
СП р |
при |
Ж > 2 |
. |
j |
|||
Пусть множество операций F |
4используется для составления не4 |
||||||||
которого алгоритма |
Ь\ , |
Если каждая |
j -ая операция харак |
|
|||||
теризуется набором алгоритмов Е jl |
, |
представленных простыми |
|||||||
кортежами, то для алгоритма |
М может быть составлена система |
||||||||
сложных матриц |
УХр, |
которая затем может быть преобразована |
, |
||||||
в оистему проотых ^матриц |
|
|
|
|
|
|
j |
||
|
|
|
|
|
|
|
|
(2. 6). |
|
Для получения некоторого |
|
- решения необходимо из |
|||||||
каждого набора (колонки) |
E j |
матриц |
|
X? |
выбрать по одной |
|
|||
компоненте |
. Над выбранными Ш компонентами каждой мат |
|
|||||||
рицы проводится операция |
0 |
, которая позволит |
получить |
■ |
|||||
значение некоторого параметра алгоритма |
И : |
|
^ |
||||||
|
ЭСрн e |
0 |
C ^ i)- |
|
|
|
|
Завиоимые параметры Л , V* могут быть получены только после операции 0 над независимыми параметрами (К- , G ) . Объем долговременной памяти алгоритма
jj)«* ciw + A m .
Врезультате этого получаем Z компонент простого
кортежа алгоритма |
И |
, Данный кортеж будет характеризовать' |
|
эффективность алгоритма |
М В |
-м варианте. |
|
Предположим, |
что нам удалось получить кортежи воех 6 |
вариантов. Каждое решение представляется вектором эффективнос
ти в |
% -мерном пространстве. |
|
|
| |
На рис. 2.1 |
изобразим множество решений в виде дискрет |
|
а х |
точек, которые |
являются концами вектора |
эффективности. |
Для удобства выбора оптимального варианта, |
по оси абсцисс от |
||
ложим значения минимизирующего параметра, а |
по оси ординат - |
- 45 -
значения параметров, на которые наложены ограничения, пред
ставленные прямой, параллельной оси абоцисс. |
|
|
|||||
Пусть алгоритм И |
имеет кортеж о |
£ = 4. |
Среди ком |
||||
понент кортежа |
^необходимо минимизировать пара |
||||||
метр X t |
при наложении на компоненты |
Х х , |
Хх, Х а |
ограни |
|||
чений |
X i ^ X I t Х х ^ Х х |
» |
Х а & Х а |
|
|
|
|
Пусть число решений |
8 = 8 , |
тогда множество |
его |
будет |
|||
иметь вид,изображенный на рио. |
2 .1 .__________________ __ |
! |
|||||
|
I |
|
|
|
|
|
|
К
- 46 - |
|
|
Ограничения, наложенные на параметры |
Х а |
, |
позволяют.сразу исключить из рассмотрения варианты 1,2,3,4,5, как не удовлетворяющие поставленным требованиям (ограничени ям). Из оставшихся вариантов, согласно определению оптималь
ного алгоритма, выбирается третий с |
win t |
а оптимальными |
EjL будут те, которые составляют алгоритм |
М в третьем |
|
варианте. Если несколько вариантов |
содержат компоненты Хзтш , |
равные между собой, то следует установить систему приоритетов на параметры, минимизируя при этом компоненты высших приорите тов.
|
Таким образом , для больших |
H j |
и |
число в се в о з |
||
можных вариантов S |
может достигать |
значительной величины, |
||||
что затрудняет выбор оптимального варианта. В этих случаях |
||||||
следует |
применять специальные формальные методы, позволяющие |
|||||
о меньшей трудоемкостью строго |
находить оптимальные решения. |
|||||
2 .2 . Методы перебора и последовательных |
приближений |
|||||
|
Метод перебора заключается в последовательном переборе |
|||||
всех S |
вариантов. |
Для каждого |
^ |
- |
решения составляется |
кортеж из полученных алгоритмов. Отбрасывая те варианты, ко торые содержат хотя бы одну компоненту, не удовлетворяющую
поставленным требованиям, мы из оставшихо: |
вариантов выбира |
||
ем тот, у которого минимизирующая компонег а имеет |
минималь |
||
ное значение. При. этом получим алгоритмы |
Е- j i |
, |
составля |
ющие паилучший вариант. Разумеется,метод перебора можно исполь"
!зовать |
при отыокании оптимальных алгоритмов для небольшого |
|
||||||
|чиола вариантов |
S |
. |
|
|
|
|
||
j |
Близким к методу перебора является метод |
последова |
|
|||||
тельных приближений. |
Пусть система приоритетов^по |
шраметрам |
|
|||||
алгоритма М |
составлена так, |
что первым следует минимизиро- |
|
|||||
вать 0Cj>M =* |
|
, |
Тогда последовательно перебираются в а - |
» |
||||
рианты |
)С\ |
, |
начиная с |
, который имеет Х?°н |
наи |
|
||
меньший, до варианта |
, |
у которого X f n min |
, |
а зое |
- |
остальные параметры удовлетворяют поставленным требованиям,.
Если Х р м ( Jfj ) |
- параметр алгоритма И |
в |
в | |
-м |
] |
варианте, a X f * |
параметр в ^ н - о и варианте, |
то |
при |
i- |
|
* |
|||||
|
|
|
|
|
n.viWhkV.v |
|
|
|
|
|
I |