
- •Информация как основа объективной реальности
- •Информатизация. Понятие информационного общества
- •Представление и кодирование информации
- •Бинарная логика вычислительной техники
- •Периферийные устройства
- •Организация и технологии компьютерных сетей
- •Архитектура операционных систем
- •Операционные системы семейства Microsoft Windows и Unix-подобные операционные системы
- •Сетевые операционные системы
- •Задачи компьютерной графики и вычислительной геометрии
- •Математические и алгоритмические основы компьютерной графики
- •Информационная безопасность компьютеров и сетей
- •Правовые основы защиты информации
- •Состав аппаратного обеспечения персонального компьютера
- •Алгоритмы и алгоритмизация вычислительных задач
- •Языки программирования и методы трансляции
- •Фундаментальные понятия теории баз данных и систем управления базами данных
- •Состав и функции баз данных и систем управления базами данных
- •Основные понятия экспертных систем и систем искусственного интеллекта
- •Компьютерные математические системы
- •Компьютерное моделирование
- •Компьютерное моделирование.
- •Системное программное обеспечение
- •Прикладное программное обеспечение
- •Инструментарий технологии программирования
- •Теория вычислительных погрешностей
- •Нечеткие вычисления
- •Этапы разработки и внедрения автоматизированных систем, программных комплексов, программных продуктов
- •Разработка алгоритмов программных продуктов
- •Методология и технология разработки информационных систем
Теория вычислительных погрешностей
Источники возникновения погрешностей. Классификация погрешностей. Запись приближенных десятичных чисел. Погрешность вычисления функции. Погрешности реальных вычислений. Распространение ошибок.
По объективным
причинам обрабатываемые числовые данные
в ЭВМ представляются с некоторой
погрешностью. Во внимание принимают
погрешности:
1) счёта. Напр: невозможно точно пересчитать
за ограниченное время большое кол-во
объектов; 2) замена бесконечности
процессов конечной последовательностью
действий. Напр: Если ряд
ограничить
n-ым
числом, а сумму ограниченного числа
принять за sinx,
то получим погрешность; 3) Округления.
Округление исх.данных(const
e,пи),
промежуточных и окончательных округлений;
4) Вносимые комп-ом обусловлены конечностью
разрядности сетки вычислительной
техники. Напр: если в комп-ом вычислении
врозникает число < еденицы последнего
разряда=>воспринимается как машинный
нуль; 5) Неточности задания исх.данных.
Напр: несовершенство измирительной
аппаратуры и инструмента, ошибки метода
измерений; 6) Вычислений, при выполнении
арифм.операций, расчёт функций по
нечётным аргументам. Напр: нельзя точно
10:33; 7) Моделей. Моделирование обусловлено
неточностями(абстрогированием описания
реального объекта или процесса;
8)несовершенство математ.методов. При
переходе от аналитической модели к
численной. Абсолютная точность на
практике не имеет смысла.
Абсолютная погрешность приближённого числа а* равна модулю разности м/у точным числом а и его значением, полученным в результате измерения или вычисления:Δа=/а-а*/. Чаще всего точное значение а неизвестно, поэтому вводят понятие: предельной абсол.погрешности – верхняя оценка абсол.погрешности. Предельная абсол.погр. Δа/ заведомо превосходит истинную абсол.погр: /а-а*/< Δа/. В этом случае точное значение лежит м/у границами а* - Δа/ и а* + Δа/. Напр: длинна отрезка L=215см измерена с абсол.погр.=0,01 см, тогда пишут L=215+-0,01 см. Пред.абсол.погр. ΔL`=0.01cм, а точное значение длины лежит в границах 214.99<L<215.01.
Относительной
погрешностью
приближённого числа а*
наз-ся отношение абсол.погр. к модулю
точного числа а:
/
.
Из опред-ия следует, что точность
прибл.результата увел по мере умен
относительной ошибки. Из практической
неизвестности точного значения а
его заменяют
на приближённое число а*:
/
.
Это приводит к погрешности 2-го порядка
малости. Относительную погрешность
часто вычисляют в %:
/
%.
Пример: const
π=3.14159…
ограничим до
3,14=>(0.00159*100)/3.14=0.056,еслиπ=3,142=>δ=(0.0041*100)/3.142=0.013
Определяющим точность вычисления явл-ся число значащих цифр результата.
Значащими цифрами приближённого числа а* называются все знаки в десятичном изображении, начиная с первой нулевой цифры. Напр: Число 0,0(2503), (6,0500), в скобках значащие. При написании целых чисел нули справа м.б как значащими, так и незначащими. Напр: число 899769 округлили (900)000, в скобках значащее. Относительная точность приближённого числа определяется только числом значащих цмфр. Значащие цифры м.б достоверными (верными) или сомнительными (недостоверными).
Верная ифра-погрешность, кот не превышает половины единицы следующего разряда, иначе сомнительная. Напр: в числе 28,6712 при Δа=0,005, 28.67(12), _-верны,()-сомнительны. Для сохранения нужного числа верных цифр приближённое число округляют. Ринцип Крылова: приближённое число записывают так, чтобы в нём все значащие цифры, кроме последней, были верными, и лишь последняя цифра была сомнительной, и притом не более как на 1-2 единицы. Напр: Пусть число 18832741 приближённое, 4-ая цифра «3» уже сомнительная, отсюда запишем 1,883*107;если сомнительная 5-ая цифра «2»,отсюда 1,8833*107
Правила округления чисел; 1) если первая слева из отбрасываемых цифр >5, то последняя из сохраняемых увел.на 1 (86,361=86,4); 2) если первая из отброшенных цифр>5, то последняя из оставшихся остаётся без изменений (55,62=55,6); 3) если в точном числе последней цифрой явл-ся 5, то предшествующая ей цифра увел.на 1, только в том случае, когда она нечётная (35,965=35,96 и 49,875=49,88). Так как при вычислениях избыточные и недостаточные числа встречаются приблизительно = число раз, то происходит взаимная компенсация погрешностей.
Погрешность
вычисления функции:
Пусть рассматривается непрерывно
дифференцируемая ф-ия аргументов
y=f(x1,x2,…,xn),
значения кот-х известны приближённо
(xj*,j=1.n).
Требуется найти погрешность приближённого
значения функции или приращение ф-ии
за счёт приращения её аргументов. Т.к
Δxj=xj-
xj*,
то приращение ф-ии есть модуль разности
/Δy/-/f(x1+Δx1,
x2+Δx2,…,
xn+Δxn)-f(x1,x2,…,xn)/.
С др.стороны полный дифферинциал от
ф-ии у= f(x1,x2,…,xn)
равен
.
Погрешности Δxj
достаточно малы, отсюда на практике их
квадратами и высшими степенями
пренебрегают. Т.к значение ф-ии /Δу/ можно
заменить дифферинциалом, а dxj=
Δxj,
отсюда
.
Если Δxj-предельная
абсолютная погрешность приближённого
значения ф-ии равна
.
Относительная погрешность приближённого
значения ф-ии
/
.Напр:
1)V=a3,dV=3a2da,ΔV=3a2Δa,
2) sinφ=a/c,
dφ=(c*da-a*dc)/(a2+c2),
Δφ=(c*Δaa-a*Δc)/(a2+c2).
Погрешности реальных вычислений:
Сложение чисел:
Пусть сумму l
приближённых чисел с разным кол-ом
верных цифр: S=
.
Тогда предельная погрешность вычисления
S
равна:
,
где Кj
– число верных цифр у j-го
слагаемого, причём k1=<k2=<…=<kl.
При сложении разных чисел с одинаковой
относительной погрешностью δ (случай
характерен для комп-х программ) имеем
следующее: 1) при сложении двух чисел
абсолютная погрешность после после
округления Δ2=δ*(а1+а2);
2) при сложении трёх чисел Δ3=δ*((а1+а2)+а3);
3) в общем случае Δn=δ*(…(а1+а2)+а3+…+an).
В наихудшем случае сумма абсол.погр
будет Δmax=Δ1+
Δ2+…+
Δn=
δ*((n-1)а1+(n-2)а2)+…+an).
Общая абсол.погр вычисления суммы (с
округлением): Δ=
Δmax+δ*(а1+а2+…+an)=δ*(nа1+nа2+(n-1)а3+…+3an-1+2an).
Напр: надо сложить точные числа
0,2897+0,4976+2,488+7,259+16,38+62,49+216,2+523,8+1403+5291, точный
результат =7522,9043.Если сложить сначала
большие числа, то имеем 7520 и Δ=2,9. с малых
7523 и Δ=0,1. Вывод: сначала надо складывать
малые числа, надо предварительно
ранжировать числа.
Вычитание чисел:
При вычитании одна особенность!
Относительная погрешность разности
чисел равна
и отсюда видно, что при вычислении
разности близких по значению чисел,
погрешность вычислений м.б значительно
выше δа
и δи,
чтобы не допустить потери точности
следует: задать эти числа с повышенной
точностью; преобразовать вычислительную
схему, чтобы разности величин вычислялись
непосредственно.Напр:Найдём разность
,где
α<<a,
a>0
Произведение чисел: При умножении n<10 приближённых чисел с k верными цифрами в наихудшем случае произведение будет иметь k-2 верных цифр (δ=<0.5*10-(k-2)). Для произведения 2 чисел δ=<0.5*10-(k-1). При этом у сомножителей необходимо иметь пару сомнительных цифр.
Деление чисел: при делении двух чисел c k верными цифрами частное имеет в наихудшем случае k-1 верную цифру при условии, что старшие значащие цифры делимого и делителя отличны от 1. В противном случае k-2 верных значащих цифр.
Рекомендации: 1) при сложении и вычитании приближённых чисел: выделить число наименьшей абсолютной точности; наиболее точные числа округлить так, чтобы сохранить в них на один знак больше, чем в выделенном числе; произвести вычисления, учитывая все сохранённые знаки; полученный рез-т округлить на один знак. Напр: числа 5,8+287,649+0,308064=5,8+287,65+0,31>293.76=293.8/
2)при умножении делении прибл. Чисел в результате следует сохранять столько значащих цифр, сколько их имеет сомножитель с наименьшим кол-ом верных значащих цифр. Напр: 0,256*0,11=0,02816=0,028. При возведении прибл.числа в квадрат или куб, необходимо в результате сохранить столько верных значащих цифр, сколько верных значащих имеет основание степени. Напр: (0,25)2=0,0625=0,062
3)при извлечении квадратных или кубических корней нужно брать столько значащих цифр, сколько верных цифр имеет подкоренное число. Напр: корень из 24,6=4,96
4)во всех промежуточных результатах, следует сохранять на одну цифру больше, чем в прав. 1-3.