Команда "PO" - Оптимизировать модель |
|
Вызов команды:
Пиктограмма |
Лента |
---|---|
Параметры → Инструменты → Оптимизация |
|
Клавиатура |
Текстовое меню |
<PO> |
Параметры > Оптимизация |
Команда предназначена для решения задач оптимизации 2D чертежа или 3D модели. Решением задачи является подбор значений существующих переменных, наилучшим образом удовлетворяющих поставленным условиям. Вызов команды возможен только при наличии в документе численных переменных.
После вызова команды появляется окно "Задания на оптимизацию", содержащее список сформированных задач оптимизации. В колонке "Имя" отображается имя переменной, оптимизацию значения которой определяет задание. Колонка "Комментарий" содержит текстовые строки, вводимые пользователем. Документ T-FLEX CAD может содержать любое количество заданий на оптимизацию.
Графические кнопки в нижней части окна позволяют выполнить следующие действия:
- Добавить. Ввод нового задания оптимизации.
- Удалить. Удаление задания, соответствующего текущей строке списка.
- Свойства. Выводит окно "Задание параметров" для задания, соответствующего текущей строке списка.
- Выполнить. Запускает расчёт оптимизации. При этом в соответствии с заданными параметрами оптимизации система производит поиск решения и пересчитывает чертёж или 3D модель в соответствии с найденными значениями переменных.
- Выход. Прекращает выполнение команды.
Новое задание на оптимизацию.
После нажатия кнопки "Добавить"на экране появляется окно "Задание параметров", содержащее следующие поля:
- Цель. Содержит текстовую строку, являющуюся комментарием задания на оптимизацию.
Далее следует поле выбора типа целевой функции (равенство, минимизация, максимизация), имени переменной и значения допуска. Выбор переменной осуществляется с помощью списка, содержащего все существующие в документе числовые переменные. Если выбран тип функции "Приравнять", то становится доступно поле для ввода целевого значения переменной. Значение допуска определяет интервал значений целевой переменной, в пределах которого значение переменной будет являться решением задачи оптимизации.
Далее расположен список ограничений. Ввод нового ограничения производится после нажатия кнопки "Добавить".
В поле "Переменная" выбирается из списка имя переменной (для одной переменной можно задать несколько ограничений). В поле "Условие" выбирается один из способов сравнения (<, >, <=, >=) значения переменной с граничным значением (поле "Значение").
Для изменения введённых ограничений используется кнопка "Свойства", позволяющая редактировать все поля текущей строки списка ограничений. При нажатии кнопки "Удалить" текущая строка списка ограничений будет удалена.
Необходимым условием формирования задания на оптимизацию является указание области определения хотя бы для одной из переменных. Графические кнопки "Добавить", "Свойства", "Удалить" действуют аналогично описанному выше разделу. При вводе новой записи необходимо заполнить следующие поля:
В поле "Переменная" выбирается из списка имя переменной (для каждой переменной можно задать только одну область определения). Поля "Минимум", "Максимум" определяют граничные значения области определения переменной. В процессе поиска решения задачи оптимизации производится перебор значений переменных с учётом заданных для них ограничений и области определения.
Если для переменной документа задано ограничение, то её имя не доступно для выбора при задании области определения, и наоборот.
Переменная, значение которой является целевой функцией оптимизации, не содержится в списках переменных при задании ограничений и области определения.
Параметр "Запускать" может принимать одно из значений:
- Пользователь. Поиск решения задачи оптимизации будут производится только при нажатии пользователем кнопки "Выполнить", расположенной в окне "Задания на оптимизацию". В сложных чертежах или 3D моделях оптимизация может занимать длительное время. В таком случае данная установка позволит не выполнять оптимизацию при пересчёте модели.
- При оптимальном пересчёте модели (<F7> - для 2D окна, <3><G> -для 3D окна). Поиск решения задачи оптимизации будет производится при оптимальном пересчёте (пересчёте изменившихся элементов).
- При полном пересчёте модели (<Ctrl><F7> - для 2D окна, <3><R><G> - для 3D окна). Поиск решения задачи оптимизации будет производится при полном пересчёте (пересчёте всего чертежа или модели).
Выбор алгоритма оптимизации.
1. Быстрый поиск. Данный алгоритм подходит для функций, имеющих один или два экстремума.
2. Последовательных приближений. Данный алгоритм подходит для функций, имеющих сложную структуру и много экстремумов.
3. Метод дихотомии. Данный алгоритм подходит для функций, зависящих только от одной переменной. Плохо работает с ограничениями.
- Показывать текущее решение. При установке данного флага на каждом шаге алгоритма оптимизации производится пересчёт 2D модели. При этом на чертеже визуально отображаются изменения, вносимые в процессе решения задачи.
- Пересчитывать 3D модель. При установке данного флага на каждом шаге алгоритма оптимизации производится пересчёт 3D модели. Если целевая функция оптимизации (переменная) связана с 3D элементами, то для получения правильного результата оптимизации необходима установка этого флага.
Задача об оптимизации объема бутылки
Данный пример иллюстрирует применение оптимизации для 3D модели. Файл примера находится в библиотеке “T-FLEX\Примеры 3D 15\Сервисные инструменты\Оптимизация\bottle”.
Пример представляет собой решение задачи об объёме бутылки. В приведенном примере создана переменная “Volume”, равная ёмкости бутылки, т.е. объему налитой в нее жидкости. Переменная “H” определяет высоту бутылки, а “HW” – высоту жидкости в ней. Задача оптимизации состоит в том, чтобы при любом изменении высоты бутылки и высоты наливаемой в нее жидкости ёмкость бутылки была неизменной (0.5 л = 500000 мм3). Для достижения этой цели необходимо найти значение переменной “D”, отвечающей за максимальный диаметр бутылки (диаметр её средней части). В команде “PO: Оптимизировать модель” было создано задание на оптимизацию “Volume”.
Целевая функция: приравнять переменную “Volume” к 500000 с допуском 0.5. В качестве изменяемой переменной задана переменная “D” с интервалом от 70 до 90. На переменные модели не накладываются дополнительные условия, поэтому ограничений нет. Для наглядности процесса оптимизации включены флажки “Показывать текущее решение” и “Пересчитывать 3D модель”. В качестве алгоритма оптимизации выбран метод дихотомии с максимальным числом итераций 100. Параметр “Запускать” установлен на значение “Пользователь”, т.е. оптимизация будет выполняться только по запросу пользователя. Создав задание на оптимизацию, изменим модель. Например, уменьшим высоту бутылки и, соответственно, уровень жидкости в ней, изменив значения переменных “H” и “HW”. Емкость бутылки при этом уменьшилась.
Для подбора необходимого диаметра бутылки достаточно вызвать команду “PO: Оптимизировать модель”, выбрать в появившемся окне задание “Volume” и нажать графическую кнопку [Выполнить]. В процессе подбора решения на экране будет отображаться вид модели при текущих значениях изменяемой переменной.
Приняв найденное решение нажатием кнопки [Ok], получим бутылку диаметром 86 мм и ёмкостью 0.5 л.
Смотри: Содержание , Параметризация