Программа нахождения минимума функции двух переменных
Автор работы: Пользователь скрыл имя, 31 Мая 2012 в 21:22, курсовая работа
Описание работы
В курсовой работе в соответствии с заданием на проектирование решается задача поиска минимума функции .
В данной пояснительной записке приводится описание последовательности шагов по составлению программы на алгоритмическом языке Turbo Pascal 7.0 и результаты применения этой программы.
Рассматриваются вопросы математической формулировки и алгоритмизации задачи, разработки блок-схемы алгоритма ее решения, составления исходной Pascal-программы и реализация вычислений по составленной программе.
Содержание работы
Введение
1. Постановка задачи…………………………………………………….....5
2. Математическая формулировка задачи………………………...………6
3. Алгоритмизация задачи ………………………………………..…...…...8
4. Идентификаторы программы…………………………………………..10
5. Блок – схема алгоритма………………………………………………...11
6. Текст исходной программы…………………………………………….20
7. Результаты выполнения программы…………………………………...25
8. Анализ результатов……………………………………………………..28
9. Инструкция по работе с программой………………………………….29
Заключение
Список использованных источников
Файлы: 1 файл
Kursovaya.docx
— 167.69 Кб (Скачать файл)Белорусский национальный технический университет
Факультет горного дела и экологии
Кафедра «Горные машины»
Тема Программа нахождения минимума функции двух переменных
Исполнитель: студент факультета ГДЭ, 2 курса,
группы 102810 Хамицевич Дмитрий Николаевич
Руководитель проекта: старший преподаватель
Белорусский национальный технический университет
Кафедра «Горные машины»
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
к курсовой работе
по дисциплине «Информатика»
Тема Программа нахождения минимума функции двух переменных
Исполнитель: ______________________________
студент 2-го курса 102810 группы
Руководитель проекта: __________________________ Петренко С.М.
ст. преподаватель
Содержание
Введение
1. Постановка
задачи……………………………………………………....
2. Математическая формулировка задачи………………………...………6
3. Алгоритмизация
задачи ………………………………………..…...….
4. Идентификаторы программы…………………………………………..10
5. Блок –
схема алгоритма………………………………………
6. Текст исходной программы…………………………………………….20
7. Результаты
выполнения программы…………………………
8. Анализ
результатов…………………………………………………
9. Инструкция
по работе с программой……………………
Заключение
Список использованных источников
Введение
В настоящее время проникновение компьютерной техники в нашу жизнь очень велико. И это процесс приобрёл глобальные масштабы. В мире существует мало предприятий, на которых нет компьютеров, а также предприятий, которые не стремятся максимально автоматизировать производственный процесс.
Практически во всех научно-исследовательских институтах, конструкторских бюро, а также простых школьных лабораториях объёмные или очень сложные расчёты производят с помощью компьютера. К настоящему времени существует множество программ, способствующих автоматизации расчётов, а также значительному их упрощению. В большинстве своём - это специализированные программные продукты, предназначенные для нужд конкретного потребителя.
В курсовой работе в соответствии с заданием на проектирование решается задача поиска минимума функции .
В данной
пояснительной записке
Рассматриваются вопросы математической формулировки и алгоритмизации задачи, разработки блок-схемы алгоритма ее решения, составления исходной Pascal-программы и реализация вычислений по составленной программе.
1. Постановка задачи
Ставится задача составить программу поиска минимума функции методом квадратичной интерполяции-экстраполяции и методом поразрядного приближения.
f(x1,x2)=(x12+x22-1)2+(x13-x2)
Программа должна обеспечивать выбор метода пользователем посредством меню. Вид функции задаётся в подпрограмме –функции. Определить минимум функции (1).
Таким образом, программа должна обеспечивать возможность:
- выбора пользователем метода решения по средствам меню;
- ввода с клавиатуры исходных данных;
- реализацию функции в подпрограмме –функции;
- вывода результатов вычисления на дисплей в удобном для восприятия виде.
Кроме того, целесообразно предоставить пользователю возможность получить краткую справку по программе, а также давать подсказки по ходу работы с программой.
В результате сформулируем следующую задачу по созданию программы:
- программа после загрузки должна выводить на дисплей исходное окно-заставку, в которой отображаются общие сведения о статусе программы и её авторах;
- после выполнения указанной в строке подсказки процедуры перехода должно выводиться вертикальное меню с пунктами: «Справка», «Метод спирального координатного спуска», «Метод квадратичной интерполяции-экстраполяции» и «Выход»;
- при выборе в меню пункта «Справка» должна выводиться краткая, справка о назначении программы и порядке работы с ней;
- после выбора в меню пункта метода решения должно открываться отдельное окно, в котором будут выводиться запросы программы об исходных данных и в этом же окне после ввода исходных значений будет выводиться результат вычисления виде функции;
- при выборе пункта меню «Выход» программы должна завершать работу.
2. Математическая формулировка задачи
Многомерная оптимизация заключается в поиске экстремумов функций многих переменных F(x1,x2) (рис. 1).
Рис.1 Поиск экстремумов функции.
Одним из наиболее надежных методов прямого поиска экстремума функции N переменных является метод спирального координатного спуска.
Пусть задана функция n переменных:
Поиск минимального значения начинаем с некоторой начальной точки Xk и начального шага d(предельное значение для шага h). :
d 1 k=h.
Определяется
направление минимизации
Для этого
последовательно дают
Вычисляем значение функции в точках
F(X1,...,Xk-h,...,Pn),
F(X1,...,Xk,...,Xn),
F(X1,...,Xk+h,...,xn).
Если из этих трех значений функция минимальна в крайней точке, то принимаем ее за начальную, если в средней точке (X1,...,Xk,...,Xn), то она принимается за начальную, а размер шага по xk уменьшается на коэффициент r и становится равным по k-му аргументу: