или (65)
2.3 Критерий сложности
Сложность алгоритма может быть оценена количеством математических операций, необходимых для его реализации; временем реализации алгоритма; параметрами его структуры; объемом памяти компьютера, необходимым для реализации алгоритма.
Все математические операции можно разделить на несколько уровней сложности j{1,2,3,4,5},
1 – сложение, сравнение, вычитание;
2 – умножение, деление;
3 – возведение в степень, извлечение корня;
4 – интегрирование, дифференцирование;
5 – определение логарифмов, тригонометрических функций.
Элементарными математическими операциями являются сложение и сравнение.
Время реализации алгоритма может быть рассчитано по формуле:
(66)
где – количество операций алгоритма, относящихся j-ому уровню сложности;
Dtj – средняя продолжительность выполнения операции j-ого уровня.
Следует заметить, что формула (66) является упрощенной и не учитывает неарифметические операции: такие как пересылки, обращения к запоминающим устройствам, трансляция с входного языка и т.д.
Другая формула для оценки времени реализации алгоритма:
(67)
где – количество элементарных операций алгоритма, определение которого является весьма трудоемкой задачей;
– время выполнения одной элементарной операции, определяемое быстродействием компьютера.
В.Т. Кулик в работе [2] предлагает рассчитывать сложность алгоритма по следующей формуле:
Q3 = aNNa + aППa + aММa (68)
где aN, aП, aМ – весовые коэффициенты, сумма которых равна 1;
Na – количество элементарных операций;
Пa – связность, которая оценивается максимальным числом промежуточных операций, удерживаемых в памяти, при выполнении алгоритма и массивом входных данных;
Ма – точность расчетов при реализации алгоритма.
Для рассматриваемого класса задач, решаемых с применением настольных компьютеров, связность практически не имеет значения, т.е. Пa » 0.
Тогда сложность алгоритма можно считать по упрощенной формуле:
= aN + aМ (69)
где и – нормированные (нормализованные) значения критериев М и N. Нормирование может осуществляться, например, по следующим формулам:
при Q3 → max;
при Q3→min , (70)
где – нормированный показатель.
2.4 Комплексный критерий качества прогнозирования
В работе [1] рекомендуется использовать следующий комплексный критерий рекуррентного типа:
Q(i) = bQ(i – 1) + a[q1(i) + gq2(i)], (71) где a, b, g – настроечные коэффициенты.
Численное значение весового коэффициента g выбирается в зависимости от важности q2(i) по отношению к q1(i).
Более сложный комплексный критерий, включающий три выше рассмотренных частных критерия Q1, Q2,Q3 , имеет вид:
, где - коэффициент важности (весовой коэффициент) r-го критерия, который определяется на основе опроса экспертов.
3.1 Постановка задачи
Дано:
1) Анализируемые алгоритмы (см. п. 1);
2) Характерные ряды модельных или натуральных данных (например, ежемесячный процент % брака проволочного стана за 1990 – 1993 г., приведенный в таблице 7);
3) Критерий эффективности алгоритмов: гладкость, точность, сложность (см. п. 2);
4) Метод анализа: на основе моделирования, которое заключается в непосредственной реализации алгоритмов на конкретных выборках и эмпирической оценки значений критериев эффективности.
Требуется:
1) Оценить критерии эффективности алгоритмов;
2) Сравнить эффективность алгоритмов.
3.2 Пример анализа алгоритмов
Дано:
1) Анализируемые алгоритмы: скользящего среднего (см. п. 1.1.1.), медианно-экспоненциального сглаживания (см. п. 1.1.4.), экспоненциального сглаживания первого порядка (см. п. 1.1.2.).
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.