![]() |
|
сделать стартовой | добавить в избранное |
![]() |
Компьютеры, Программирование
Программное обеспечение
Аппроксимация |
Министерство общего и профессионального образования Российской ФедерацииМосковский Государственный Строительный УниверситетКафедра информатики и прикладной математикиКУРСОВАЯ РАБОТА ПО ИНФОРМАТИКЕ на темы: Аппроксимация. Разработка модуля исключения нуль-уравнений в комплексе “Решение задачи линейного программирования”. Выполнил студент ЭОУС – I – 2: Моносов А. Л. Преподаватель: доцент Марьямов А. Г. Москва 1999. Оглавление. I. Математическая часть. Название 3. 1.1 Постановка задачи .3. 2.1 Изложение метода .4. 3.1 Блок-схема алгоритма. Описание исходных данных и результатов 5. 4.1 Листинг программы, исходных данных и результатов 6. 5.1 Список переменных основной программы 10. 6.1 Заголовки процедур и функций. Список их переменных .10. 7.1 Ручной расчет .11. 8.1 Обсуждение результатов с целью доказательства правильности алгоритма и программы .12. 9.1 Выводы .13. II. Экономическая часть. Название .14. 1.2 Постановка задачи линейного программирования и задание на разработку модуля .14. 2.2 Описание исходных данных и результатов решения задач линейного программирования .18. 3.2 Описание модуля типов .19. 4.2 Укрупненная блок-схема задачи линейного программирования.20. 5.2 Параметры и заголовки процедур задачи линейного программирования .21. 6.2 Блок-схема и параметры реализованной процедуры 21. 7.2 Листинг модуля, исходных данных и результатов машинного расчета .23. 8.2 Ручной расчет задачи линейного программирования .24. 9.2 Выводы .26. Список использованной литературы. .27. Математическая часть. Аппроксимация. Постановка задачи. Пусть величина y является функцией аргумента x. Это означает, что любому значению x из области определения поставлено в соответствии значение y. Вместе с тем на практике часто неизвестна явная связь между y и x, т.е. невозможно записать эту связь в виде y=f(x). В некоторых случаях даже при известной зависимости y=f(x) она настолько громоздка (например, содержит трудно вычисляемые выражения, сложные интегралы и т.п.), что ее использование в практических расчетах затруднительно. Наиболее распространенным и практически важным случаем, когда вид связи между параметрами x и y неизвестен, является задание этой связи в виде некоторой таблицы {xi yi}. Это означает, что дискретному множеству значений аргумента {xi} поставлено в соответствие множество значений функции {yi} (i=0,1 ). Эти значения - либо результаты расчетов, либо экспериментальные данные. На практике нам могут понадобиться значение величины y и в других точках, отличных от узлов xi. Однако получить эти значения можно лишь путем очень сложных расчетов или провидением дорогостоящих экспериментов. Таким образом, с точки зрения экономии времени и средств мы приходим к необходимости использования имеющихся табличных данных для приближенного вычисления искомого параметра y при любом значении (из некоторой области) определяющего параметра x, поскольку точная связь y=f(x) неизвестна. Этой цели и служит задача о приближение (аппроксимации) функций: данную функцию f(x) требуется приближенно заменить (аппроксимировать) некоторой функцией g(x) так, чтобы отклонение (в некотором смысле) g(x) от f(x) в заданной области было минимальным.
Функция g(x) при этом называется аппроксимирующей. Для практики весьма важен случай аппроксимации функции многочленом:g(x)=a0 a1x a2x2 amxm (2.1) При этом коэффициенты aj будут подбираться так, чтобы достичь наименьшего отклонения многочлена от данной функции. Если приближение строиться на заданном множестве точек {xi}, то аппроксимация называется точечной. К ней относятся интерполирование, среднеквадратичное приближение и др. При построении приближения на непрерывном множестве точек (например, на отрезке аппроксимация называется непрерывной или интегральной). 2.1 Изложение метода (Точечная аппроксимация). Одним из основных типов точечной аппроксимации является интерполирование. Оно состоит в следующем: для данной функции y=f(x) строим многочлен (2.1), принимающий в заданных точках xi те же значения yi, что и функция f(x), т.е. g(xi)=yi, i=0,1, . При этом предполагается, что среди значений xi нет одинаковых, т.е. xixk при этом ik. Точки xi называются узлами интерполяции, а многочлен g(x) - интерполяционным многочленом. Y X X0 X1 . . . X Рис. 1 Таким образом, близость интерполяционного многочлена к заданной функции состоит в том, что их значения совпадают на заданной схеме точек (рис.1, сплошная линия). Максимальная степень интерполяционного многочлена m= ; в этом случае говорят о глобальной интерполяции. При большом количестве узлов интерполяции получается высокая степень многочлена (2.1) в случае глобальной интерполяции, т.е. когда нужно уметь один интерполяционный многочлен для всего интервала изменения аргумента. Кроме того, табличные данные могли быть получены путем измерений и содержать ошибки. Построение аппроксимируемого многочлена с условием обязательного прохождения его графика через эти экспериментальные точки означало бы тщательное повторение допущенных при измерениях ошибок. Выход из этого положения может быть найден выбором такого многочлена, график которого проходит близко от данных точек (рис.1, штриховая линия). Одним из таких видов является среднеквадратичное приближение функции с помощью многочлена (2.1). При этом m ; случай m = соответствует интерполяции. На практике стараются подобрать аппроксимирующий многочлен как можно меньшей степени (как правило, m=1, 2, 3). Мерой отклонения многочлена g(x) от заданной функции f(x) на множестве точек (xi,yi) (i=0,1, , ) при среднеквадратичном приближении является величина S, равная сумме квадратов разности между значениями многочлена и функции в данных точках: S = 2 i=0 Для построения аппроксимирующего многочлена нужно подобрать коэффициенты a0, a1, ,am так, чтобы величина S была наименьшей. В этом состоит метод наименьших квадратов. dS/da1=22 xi=0; i=1 dS/dam 1=22 xim=0. i=1 C A B xi xim a1 yi = xi xi2 xim 1 a2 yixi xim xim 1 xi2m am 1 yixim 3.1 Блок-схема алгоритма. Описание исходных данных и результатов. i=1 i= j=1 Расчет первой строки матрицы С и вектора В i=1 i= i=1 i= j=m 1 i=1 j=1 j=m Расчет остальных строк матрицы С j=1 j= j=1 j= i=m i=1 j=m 1 шаг=-1 j=1 i= Исходные данные, а именно: m-число узлов аппроксимации.
- степень аппроксимирующего многочлена. X - вектор узлов аппроксимации. Y - вектор значений аппроксимируемой функции. Все эти значения мы заносим в файл ja .da , который работает только на чтение и файловой переменной является f1. Результаты: Все результаты выводятся в файл ja .res, работающий на запись и имеющий файловую переменную f2. Первоначально в этот файл выводятся исходные данные, которые берутся из файла ja .da , но при этом уже с описанием, то есть не просто числа, а скоментарием, что они означают. Затем выводятся результаты вычисления, проведенной машиной, при этом все результаты отформатированы: Выводится матрица С системы линейных уравнений для аппроксимации вместе с вектором правых частей. Затем выводится решение этой системы уравнений, что является вектором коэффициентов аппроксимирующего многочлена по возрастанию степени. И в конце выводится вектор погрешности аппроксимации Z.4.1 Листинг программы, исходных данных и результатов.program approx; uses cr ,gauss pu; co s m=20; ype vec 1=array of real; var c:ma r; a,b:vec ; x,y,z:vec 1; ,i,j,m:i eger; f1,f2: ex ; procedure Crea e BC( ,m:i eger; var x,y:vec 1; var c:ma r; var b:vec ); var i,j:i eger; r:vec ; begi for i:=1 o do r:=0; for i:=1 o do begi c; e d; for i:=1 o do r; e d; for i:=1 o m do begi for j:=1 o m do c:=0; for j:=1 o do c:=r; e d;e d; begi assig (f1,'ja .da ');rese (f1); assig (f2,'ja .res');rewri e(f2); readl (f1, );wri el (f2,'Число узлов аппроксимации =', :3); readl (f1,m);wri el (f2,'Степень многочлена m=',m:2); wri el (f2,'Вектор узлов аппроксимации x); wri e(f2,x:4:2,' '); e d; wri el (f2); wri el (f2,'Вектор значений аппроксимируемой функции y); wri e(f2,y:4:2,' '); e d; Crea e BC( ,m,x,y,c,b); wri el (f2); wri el (f2,'Матрица системы линейных уравнений для аппроксимации и вектор правых частей); for i:=1 o m 1 do begi for j:=1 o m 1 do wri e(f2,c:8:1);e d; gauss(m 1,c,b,a); for i:=1 o do begi z; z;e d; wri el (f2); wri el (f2,'Вектор коэфициентов аппроксимирующего многочлена по возрастанию); wri el (f2,'степени (m 1 элементов)'); for i:=1 o m 1 do wri el (f2,'a:6:2); wri el (f2,'Вектор погрешности аппроксимации в узлах X); for i:=1 o do wri el (f2,'z:5:3); close(f1);close(f2); e d.Исходный файл ja .da :10 2 1 6 0 3 8 2 12 9 2 5 9 4 13 7 3 9 3 1 4 2Файл результатов ja .res:Число узлов аппроксимации =10 Степень многочлена m=2 Вектор узлов аппроксимации x 1.00 6.00 0.00 3.00 8.00 2.00 12.00 9.00 2.00 5.00 Вектор значений аппроксимируемой функции y 9.00 4.00 13.00 7.00 3.00 9.00 3.00 1.00 4.00 2.00 Матрица системы линейных уравнений для аппроксимации и вектор правых частей 10.0 48.0 368.0 55.0 48.0 368.0 3354.0 159.0 368.0 3354.0 33428.0 1023.0 Вектор коэфициентов аппроксимирующего многочлена по возрастанию степени (m 1 элементов) a= 0.13 Вектор погрешности аппроксимации в узлах X z=-1.247 z=1.4545.1 Список переменных основной программы. В основной программе используются раздел констант и типов:co s m=20; ype vec 1=array of real;Следующие переменные так же используются в программе, которые описываются в разделе var: Переменная Тип переменной Описание переменной С ma r Матрица системы линейных уравнений для аппроксимации А vec Вектор коэфициентов аппроксимирующего многочлена по возрастанию степени (m 1 элементов) Х vec 1 Вектор узлов аппроксимации B vec Вектор правых частей Y vec 1 Вектор значений аппроксимирующей функции Z vec Вектор погрешности аппроксимации в узлах Х i eger Число узлов аппроксимации m i eger Степень многочлена i i eger Необходима для нумерации элементов массивов.
Он говорит нам, что действительные законы физики, по крайней мере, до сих пор, поддаются последовательной аппроксимации с помощью теорий, дающих лучшие объяснения и предсказания, и что задача открытия каждой теории при наличии предыдущей легко решалась с помощью вычислений при наличии уже известных законов и уже имеющейся технологии. Структура реальности должна быть многоуровневой (какой она и была) для более легкого доступа к самой себе. Подобным образом, если рассматривать саму эволюцию как вычисление, она говорит нам, что существовало достаточно много жизнеспособных организмов, закодированных ДНК, что позволило вычислить (т.е. эволюционировать) организмы с более высокой степенью адаптации, используя ресурсы, предоставленные их предками с низкой степенью адаптации. Таким образом, мы можем сделать вывод, что законы физики, кроме того, что удостоверяют свою собственную постижимость через принцип Тьюринга, гарантируют, что соответствующие эволюционные процессы, такие, как жизнь и мышление, не являются трудоемкими и требуют не слишком много дополнительных ресурсов, чтобы произойти в реальности
1. Сигналы и процессы в радиотехнике (СиПРТ)
3. Примеры разностных аппроксимаций
4. Анализ сигналов и их прохождения через электрические цепи
5. Решение дифференциального уравнения с последующей аппроксимацией
9. Аппроксимация характеристик нелинейных элементов и анализ цепей при гармонических воздействиях
10. Оповещение о чрезвычайных ситуациях. Сигналы оповещения ГО и действия населения по ним
11. Нормативное регулирование перемещения через таможенную границу транспортных средств
12. Государство Русь (IX - начало XII в.)
13. Аграрный вопрос в программах политических партий начала 20 века
14. Проблема Курильских островов в отношениях СССР/России и Японии во второй половине XX-нач. XXI вв.
15. Альтернативы развития событий в годы революций начала ХХ века в России
17. Project of decoding of "The Stermer Effect" (Сигналы из космоса, серии Штермера)
18. Художественные средства и их использование в творчестве живописцев авангарда начала XX века
19. Культура России начала XIX века
20. Микенская культура как начало европейской цивилизации
21. Менталитет русского народа через призму русской литературы 19-го века
25. Культура Руси до монгольского нашествия (IX - начало XIII вв.)
26. Подготовка и начало Второй Мировой войны (документы свидетельствуют)
27. Социально-политическая борьба в Новгороде XII- нач. XIII вв.
28. Культурно-бытовой облик учащихся начальной и средней школы XIX начала ХХ века
29. Квантование сигналов по времени
30. Образование через Internet
31. Защита компьютера от атак через интернет
32. Указатель "x-y" координат (история создания "мышки")
33. Применение методов линейного программирования в военном деле. Симплекс-метод
34. Переходные процессы в линейных цепях
35. Расчёт частотных и временных характеристик линейных цепей
41. Тригонометрические формулы на начало 10-го класса
42. Решение задач линейного программирования
43. Постановка задачи линейного программирования и двойственная задача линейного программирования.
44. Решение задач линейной оптимизации симплекс – методом
46. Приборы для регистрации электрических, акустических и тепловых сигналов организма человека
47. Транспорт веществ через биологические мембраны
48. Обучение информатике по опорным сигналам
49. Технология изготовления вафель с начинкой
50. Униженные и оскорбленные в изгнании /Россия, начало века/
51. Новые политические институты России конца XX-начала XXI вв.
52. Молодежные движения в России конца 20, начало 21 века
53. Расчет линейных цепей методом топологических графов
57. Cкремблирование и дескремблирование линейного сигнала
58. Сжатие речевого сигнала на основе линейного предсказания
59. Расчет переходных процессов в линейных цепях с сосредоточенными параметрами
60. Измерение больших линейных геометрических размеров
61. Начало христианства в Армении
62. Теплопроводность через сферическую оболочку
63. Два типа фазовых переходов и третье начало термодинамики
65. Русская философия 19 - начала 20 вв.
66. Коммерческие банки - начало развития на Украине
67. Духовные споры конца XV - начала XVI вв.
68. Планы сторон и начало русско-японской войны
73. Основные направления внешней политики конца XIX начала XX вв.
74. Правление Бориса Годунова. Начало Смутного времени
76. Российские судебные ораторы второй половины XIX начала XX века
77. Эпоха смуты начала XVII в.
78. Внешняя политика России, конец XVIII – начало XIX вв.
79. Выработка и начало осуществления НЭПа 1921-1923 гг.
80. История России начала 20 века
81. Кодификация и систематизация русского права: Соборное уложение - начало XX века
82. Культурно-бытовой облик учащихся начальной и средней школы XIX начала ХХ веков
83. Начало второй мировой войны и вступление в неё Советского Союза
84. Начало самодержавия в России, государство Ивана IV
85. Образование русского централизованного государства (14 - начало 16 вв.)
89. Из опыта работы военно-учебных заведений россии второй половины ХIХ - начала ХХ веков
90. Советское руководство и европейская интеграция (40-е — начало 50-х годов)
91. Новые тенденции изучения крестьянства России конца XIX - начала ХХ вв. в зарубежной историографии
92. Историческая обстановка к моменту начала княжения Александра Невского
93. Начало Вестготского королевства. Борьба с франками
94. Cмута конца 16 начала 17 веков
95. Когда и почему началась скифо-персидская война?
96. Игра вслепую. Из-за чего и как началась Вторая мировая война
97. Россия на окраине Европы. Исторический анализ событий и времен начала 20-го век
98. История развития теории оптимального приема многопозиционных сигналов
99. Ричард Хэмминг и начало теории кодирования
100. Гражданская авиация в период с 1956 года по 1960 год. Начало внедрения реактивной техники