Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика / Практическая работа №4 / Руководство. Основы. 2D проектирование и черчение.pdf
Скачиваний:
87
Добавлен:
20.04.2015
Размер:
16.78 Mб
Скачать

Оптимизация

Запускать. Параметр может принимать одно из значений:

Пользователь. Поиск решения задачи оптимизации будет производиться только при нажатии пользователем кнопки [Выполнить], расположенной в окне “Задания на оптимизацию”.

В сложных чертежах или 3D моделях оптимизация может занимать длительное время. В таком случае данная установка позволит не выполнять оптимизацию при пересчете модели.

При оптимальном пересчёте модели. Поиск решения задачи оптимизации будет производиться при оптимальном пересчёте (пересчёте изменившихся элементов).

При полном пересчёте модели. Поиск решения задачи оптимизации будет производиться при полном пересчёте.

Для выбора алгоритма оптимизации и задания его параметров используется графическая кнопка [Алгоритм…]. После её нажатия появляется окно диалога задания параметров алгоритма.

Влевой части окна отображается список доступных методов оптимизации:

Быстрый поиск. Данный алгоритм подходит для функций, имеющих один или два экстремума.

Метод дихотомии. Данный алгоритм подходит для функций, зависящих только от одной переменной. Плохо работает с ограничениями.

Последовательных приближений. Данный алгоритм подходит для функций, имеющих сложную структуру и много экстремумов.

Вправой части окна диалога отображается набор параметров, зависящий от выбранного метода оптимизации.

Кнопка [Ok] используется для закрытия окна диалога с сохранением внесённых изменений. Кнопка [Отменить] позволяет выйти из диалога без сохранения изменений.

Показывать текущее решение. При установленном флаге в окне “Поиск решения” отображается динамически изменяемые в процессе решения значения переменных.

Пересчитывать 3D модель. При установке данного флага на каждом шаге алгоритма оптимизации производится пересчет 3D модели. Если целевая функция оптимизации (переменная) связана с 3D элементами, то для получения результата оптимизации необходима установка этого флага.

Примеры применения оптимизации

Задача поиска положения натяжного ролика

В качестве примера оптимизации 2D модели рассмотрим задачу о нахождении положения натяжного ролика, обеспечивающего заданную длину ремня. Данный пример находится в библиотеке

“Примеры для документации\Двухмерное проектирование\Оптимизация\Натяжной ролик”.

599

Основы. Двухмерное проектирование

Пример представляет собой кинематическую

 

 

схему произвольного ременного механизма.

 

В данном примере

Допустим,

что одним из требований при

 

натяжной ролик

 

обеспечивет длину

разработке

этого

механизма

является

 

 

ремня равную 1000 мм.

неизменность длины ремня (1000 мм),

 

 

Оптимизация работает

регулируемая положением натяжного ролика.

 

автоматически при

Положение ролика зависит от угла поворота

 

изменении положения

рычага, на котором он закреплен.

 

Натяжной ролик

линий построения

 

 

Угол поворота рычага крепления натяжного

 

 

ролика на чертеже определяется параметром

 

 

соответствующей

линии

построения,

 

 

созданной как проходящая через узел под

 

Длина ремня: 1000 мм

углом к горизонтали. На этот параметр, т.е.

 

Угол: 125.348°

на угол поворота линии построения, была

 

 

назначена переменная “alfa”. Длина ремня определяется переменной “Length”.

Вызвав команду “PO: Оптимизировать модель”, создадим задание на оптимизацию нашей модели.

Вкачестве целевого условия зададим равенство переменной “Length” 1000 мм с допуском 0.0001.

Вкачестве переменной, значение которой будет находиться в процессе оптимизации, зададим переменную “alfa” и ограничим диапазон ее

изменения интервалом от 450 до 2250 .

Поскольку дополнительных условий на переменные нашей модели накладывать не требуется, ограничения не задаются.

В качестве условия запуска оптимизации выберем “При оптимальном пересчете модели”. Таким образом, любые изменения модели приведут к запуску оптимизации, т.е. она будет работать в “прозрачном” режиме. В качестве используемого алгоритма оптимизации выберем метод дихотомии.

После задания всех параметров оптимизации любого изменения чертежа достаточно для запуска оптимизации. Например, при перемещении одного

из рабочих роликов или изменения радиуса положение натяжного ролика будет определяться результатом оптимизации. Длина ремня при этом сохраняется равной или близкой к 1000 мм.

600

 

Оптимизация

Длина ремня: 1000 мм

Длина ремня: 1000 мм

Угол: 114.901°

Угол: 133.87°

Задача об оптимизации объема бутылки

 

Данный пример иллюстрирует применение оптимизации для 3D модели. Файл примера находится в библиотеке “Примеры для документации\Двухмерное проектирование\Оптимиза-

ция/bottle”.

Пример представляет собой решение задачи об объёме бутылки. В приведенном примере создана переменная “Volume”, равная ёмкости бутылки, т.е. объему налитой в нее жидкости. Переменная “H” определяет высоту бутылки, а “HW”

– высоту жидкости в ней.

Задача оптимизации состоит в том, чтобы при любом изменении высоты бутылки и высоты наливаемой в нее жидкости ёмкость бутылки была неизменной (0.5 л = 500000 мм3). Для достижения этой цели необходимо найти значение переменной “D”, отвечающей за максимальный диаметр бутылки (диаметр её средней части).

В команде “PO: Оптимизировать модель” было создано задание на оптимизацию “Volume”.

601

Основы. Двухмерное проектирование

Целевая функция: приравнять переменную “Volume”

к500000 с допуском 1.

Вкачестве изменяемой переменной задана переменная “D” с интервалом от 70 до 90.

На переменные модели не накладываются дополнительные условия, поэтому ограничений нет. Для наглядности процесса оптимизации включены флажки “Показывать текущее решение” и “Пересчитывать 3D модель”.

В качестве алгоритма оптимизации выбран метод дихотомии с максимальным числом итераций 100.

Параметр “Запускать” установлен на значение “Пользователь”, т.е. оптимизация будет выполняться только по запросу пользователя.

Создав задание на оптимизацию, изменим модель. Например, уменьшим высоту бутылки и, соответственно, уровень жидкости в ней, изменив значения переменных “H” и “HW”. Емкость бутылки при этом уменьшилась.

Для подбора необходимого диаметра бутылки достаточно вызвать команду “PO: Оптимизировать модель”, выбрать в появившемся окне задание “Volume” и нажать графическую кнопку [Выполнить]. В процессе подбора решения на экране будет отображаться вид модели при текущих значениях изменяемой переменной.

Приняв найденное решение нажатием кнопки [Ok], получим бутылку высотой 200 мм и ёмкостью 0.5 л.

602