Московский государственный университет путей сообщения (МИИТ)
Кафедра «Управление и информатика в технических системах»
В.Г. Сидоренко
Реализация алгоритмов решения задач при проектировании САУ с использованием объектно-ориентированного языка программирования C++
Рекомендовано редакционно-издательским советом университета в качестве методических указаний
для студентов специальности
«УПРАВЛЕНИЕ И ИНФОРМАТИКА В ТЕХНИЧЕСКИХ СИСТЕМАХ»
Москва - 2008
Московский государственный университет путей сообщения (МИИТ)
Кафедра «Управление и информатика в технических системах»
В.Г. Сидоренко
Реализация алгоритмов решения задач при проектировании САУ с использованием объектно-ориентированного языка программирования C++
Методические указания к курсовой работе
для студентов специальности
«Управление и информатика в технических системах»
Москва - 2008
УДК 378:656.2:681.3
C-34
Сидоренко В.Г. Методические указания к курсовой работе «Реализация алгоритмов решения задач при проектировании САУ с использованием объектно-ориентированного языка программирования C++» для студентов специальности «Управление и информатика в технических системах». – М.: МИИТ. 2008. – 38 с.
В методических указаниях излагаются задания, структура и основные этапы выполнения курсовой работы по дисциплинам «Алгоритмы решения задач при проектировании САУ» и «Вычислительные алгоритмы при исследовании систем управления» для специальности 210100 «Управление и информатика в технических системах».
© Московский государственный
университет путей сообщения
(МИИТ), 2008
Введение
Решение задач проектирования и исследования систем управления напрямую связано с решением оптимизационных задач, а именно задач определения таких параметров системы, при которых выбранный критерий оптимальности достигает своего минимального значения. Существует множество методов решения оптимизационных задач для функций одной и многих переменных, каждый из которых обладает как преимуществами, так и недостатками по сравнению с другими. Современный уровень развития вычислительной техники позволяет автоматизировать процесс решения оптимизационных задач, использовать для их решения как стандартные программные продукты, так и создавать собственные специализированные. Необходимой составляющей систем автоматизированного проектирования является блок решения оптимизационных задач. Это определяет актуальность данной курсовой работы.
1 ЦЕЛЬ КУРСОВОЙ РАБОТЫ
Целью курсовой работы является формирование у студентов практических навыков решения оптимизационных задач при проектировании и исследовании систем управления с использованием программных средств.
2 Методы одномерной оптимизации
Постановка задачи:
Задана непрерывная унимодальная целевая функция
Рассмотрим следующие методы одномерной оптимизации [1, 3, 6-9, 14]:
– метод равномерного поиска или перебора;
– половинного деления;
– поразрядного поиска;
– золотого сечения;
– Фибоначчи;
– метод средней точки;
– метод Ньютона.
Два последних из перечисленных методов являются методами первого порядка. Их преимущество состоит в том, что они не требуют проведения трудоемких и объемных вычислений. Недостатком является требование задания целевой функции в аналитическом виде, унимодальности целевой функции в заданном интервале изменения переменной, дифференцируемости целевой функции.
2.1 Метод равномерного поиска
1. Задать допустимую погрешность вычислений точки экстремума
2. Определить число итераций
3. Вычислить значения независимой переменной в пробных точках:
4. Найти значения целевой функции в пробных точках
5. Определить минимальное значение целевой функции путем сравнения значений функции в пробных точках
Метод равномерного поиска требует выполнения большого числа вычислений.
2.2 Метод дихотомии (половинного деления)
1. Задать численные значения
2. Определить значения пробных точек
3. Вычислить значения
4. Сравнить
5. Определить полученную (достигнутую) погрешность
где
6. Если
7. Положить
2.3 Метод поразрядного поиска
1. Задать допустимую погрешность определения точки экстремума
2. Выбрать начальный шаг:
3. Положить начальную пробную точку
4. Положить следующую пробную точку
5. Сравнить
6. Если
7. Положить
8. Проверка окончания поиска: если
9. Изменить направление и шаг поиска положив
2.4 Метод Фибоначчи
Если необходимо определить минимум функции с наименьшим возможным интервалом неопределенности, но при этом выполнить только n вычислений функции, используют метод Фибоначчи. В этом случае значения функции, полученные в предыдущих шагах, определяют положение последующих точек. Поиск методом Фибоначчи, названный так ввиду появления при поиске чисел Фибоначчи, является итерационной процедурой и состоит в следующем.