Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Глава 2. Одномерная оптимизация с
применением пакета MATLAB …………………..23 2.1. Метод сканирования……………………………………………...23 2.2. Метод чисел Фибоначчи…………………………………………29 2.3. Метод локализации экстремума……………………………...35 2.4. Метод обратного половинного шага………………………..43 2.5. Метод золотого сечения………………………………………..51 Глава 3. Двухмерная оптимизация с применением пакета MATLAB……………………57 3.1. Метод сканирования……………………………………………...57 3.2. Метод Гаусса-Зейделя …………………………………………..61 3.3. Метод пробных движений ……………………………………..67
Предисловие Методы оптимизации широко применяются в настоящее время при компьютерном моделировании и проектировании химико-технологических процессов и решении задач энерго-ресурсосбережения химических производств. Поэтому приобретение знаний о постановке и решении задач оптимизации – необходимое условие подготовки современных специалистов химиков-технологов. Важной задачей является также обучение навыкам реализации конкретных методов оптимизации на компьютерах с применением математических пакетов решения конкретных оптимизационных задач программ, например, MATLAB. В учебном пособии представлены примеры решения задач одномерной и двумерной оптимизации c применением пакета MATLAB. С целью наилучшего понимания и усвоения методов оптимизации приводятся подробные коды программ, дана табличная и графическая интерпретация промежуточных и конечных результатов вычислений. Ограничение размерности рассматриваемых оптимизационных задач связано исключительно с необходимостью наилучшей интерпретируемостью результатов решений для случаев одномерного и двумерного поиска экстремумов. Для контингента студентов, имеющих недостаточный опыт работы с пакетом MATLAB, в отдельной главе изложены его основные функциональные возможности. Приведенные в пособии коды программных модулей включают многочисленные комментарии и могут использоваться при решении практических задач оптимизации химико-технологических процессов. Авторы настоящего учебного пособия с благодарностью отнесутся к замечаниям и предложениям по улучшению его смыслового содержания.
Глава 1. Краткие основы работы в MATLAB Интерфейс. Рис. 1.1. Интерфейс. Основное окно.
В рабочей области находится знак > > после которого расположен курсор. Эту строку называют командной строкой. В нее с клавиатуры вводятся команды. Нажатие Enter заставит выполнить команду и вывести результат в том же окне. (см. рис. 1.1.) Так как текст в окне по мере работы смещается (уступает место новым командам и выводимым данным) то для просмотра выехавшей за окно части текста используют полосы прокрутки или клавиши Page Up, Page Down. Клавиши ↑ и ↓ позволяют вернуть в командную строку ранее введенные команды или другую входную информацию (она вся обязательно автоматически хранится и всегда доступна). Кнопка ↑ помещает в командную строку предыдущую команду, а если еще раз ее нажать то еще предыдущую и так далее. Кнопка ↓ выводит команды (ранее набранные) в обратном порядке. Видимая часть информации (то есть то что поместилось в окне) называется зоной просмотра, а командная строка зоной редактирования. В зоне просмотра ничего нельзя исправить или ввести. Можно только выделить мышкой для копирования. Если команда заканчивается; то результат ее выполнения не отображается в командной строке. Иначе, то есть если строка не заканчивается на; то результат сразу же после нажатия на Enter выводится в окне ниже этой команды. (см. выше на рис. 1.1) Значения всех переменных, вычисленные в течение работы, сохраняются в специальной области памяти, называемой Workspace. (см. выше на рис. 1.1) Определения всех переменных и функций и их последние перед закрытием программы значения можно сохранить на диск в файл с расширением.mat но само содержание Command Window при выключении МАТЛАБа не сохраняется никаким способом. Примеры выполнения арифметических операций показаны на рис.1.1. Для строк символов необходимо текст помещать в ‘одинарные кавычки’. Для сложения строк символов используется операция strcat, как показано на рис.1.1. В главном меню (см. рис.1.1) следует обратить внимание на команду Desktop (настройка среды МАТЛАБ). При нажатии раскроется список, содержащий Desktop Layout который предлагает на выбор: · Default устанавливает настройку принятую по умолчанию, то есть открывает окна Command Window, Workspace, Command History, Current Directory. · Command Window Only открывает только окно Command Window. · History and Command Window открывает соответствующие окна. · All Tabbet показывает окно справки, окно управления М-файлами и внизу ярлычки рабочих окон, которые можно выбрать щелчком. Также работа может осуществляться в программном режиме, то есть в командной строке указывается имя М-файла (файл с расширением.m), который содержит программу действий (алгоритм) и может рассматриваться как функция, то есть при указании его имени (без указания расширения) в командной строке выполняются запрограммированные в нем операции. (см.рис.1.2). Как выгладит содержимое М-файла, см. рис.1.3. Числовые переменные могут быть с плавающей точкой (тогда указывается порядок, например 6.4713e+003) или с фиксированной точкой (например 81.5000). Текстовые комментарии начинаются со знака % (см.рис.1.2). Все функции разделяются на встроенные и определенные пользователем. Встроенные, например, это y=sin(x); y=atan(x); y=exp(x); y=log(x) натуральный логарифм, а вот y=log10(x) десятичный логарифм, y=fix(x) округление до ближайшего целого в сторону нуля, y=floor(x) округление до ближайшего целого в сторону отрицательной бесконечности, y=ceil(x) округление до ближайшего целого в сторону положительной бесконечности, y=round(x) обычное округление Массив задается так: ИМЯ_МАССИВА = НАИМЕНЬШ_ЭЛ-Т_МАСС: ШАГ_ИЗМЕН_ЭЛ-ТА_МАСС: НАИБОЛЬШ_ЭЛ-Т_МАСС; (см. рис.1.2). Обращение к элементу массива y=x_mas(2); где в скобках указывается порядковый номер (индекс) элемента массива (см. рис.1.2). Редактирование М-файлов «File»—«New»--«M-file» позволяет открыть окно Editor то есть Редактор М-файлов. В этом окне напечатать текст программы, которая должна быть выполнена, когда имя этого М-файла будет указано в командной строке в Command Window. Иначе можно запустить командой “Debug”—“Run” в меню редактора.
Рис. 1.4. Сохранение М-файла (то есть описанная в нем программа считается функцией и ее описание начинается с указания какого-нибудь имени этой функции, под которым она дальше и будет вызваться для исполнения). (см.рис.1.4.) Если какие-то М-файлы уже созданы ранее то их можно посмотреть командой File—Open и выбрать тот который нужен. При написании программы можно писать комментарии начиная их со знака %. (см.рис.1.3). Function y=f(x) %функция вычисляется от одного аргумента и возвращает одно %значение, или от вектора аргумента и возвращает вектор, каждый %элемент которого вычислен от соответствующего элемента вектора %аргумента y=(x+2).*(x-4); %поэтому перед знаком *умножения стоит.точка.* %если не ставить; точку с запятой в конце строки то произойдет вывод на %экран end символьная переменная в М-файле: str=’P I Pupkin’ ее символьное содержимое заключается в кавычки. Ввод: xleft=input('введите левую границу интервала поиска '); Вывод: disp('ВВОД ИСХОДНЫХ ДАННЫХ края диапазона поиска, точность по аргументу ИЛИ по функции '); disp(string); Популярное:
|
Последнее изменение этой страницы: 2017-03-03; Просмотров: 675; Нарушение авторского права страницы