97
Методы оптимизации конструкций Раздел курса «САЕ системы в авиастроении» Разработал: Шевцов С.Н. Ростов-на-Дону – 2010

Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

Методы оптимизации конструкций

Раздел курса «САЕ системы в авиастроении»

Разработал: Шевцов С.Н.

Ростов-на-Дону – 2010

Page 2: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

Оглавление

Лекция 1

Оптимизация конструкций. Общие понятия. Основные определения

Лекция 2

Оптимизация топологии с целью минимизации податливости структуры

Лекция 3

Level Set метод и его применение при оптимизации конструкций

Лекция 4

Решение задачи оптимизации топологии конструкции с помощью Level Set метода

на примере кронштейна

Лекция 5

ESO и BESO методы оптимизации топологии конструкций

Page 3: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

1

Лекция 1

Оптимизация конструкций. Общие понятия. Основные определения

Понятие оптимизации конструкций включает три тесно связанные, но различные по своей

постановке и решению проблемы оптимизации размеров, формы и топологии структур.

Проблема оптимизации размеров формулируется, например, как задача определения

оптимального распределения толщины пластины, или сечения стержня. Оптимальная распределение

толщины минимизирует такие физические величины как податливость, максимальные напряжения,

средняя энергия деформации, прогиб при удовлетворении условий равновесия и других ограничений на

состояние конструкции и (или) параметры проектирования (design variables).

К числу параметров проектирования может быть отнесена, например, толщина пластины, а к

переменным состояния – прогиб. Основной особенностью задач оптимизации размеров является то, что

область проектирования известна a priori, и она фиксирована в процессе оптимизации.

Целью задачи оптимизации формы является нахождение формы области, т.е. сама форма

является переменной проектирования.

Оптимизация топологии включает определение числа, формы и расположения «пустот» в

сплошной конструкции, а также правил задания связности в структуре. Цель оптимизации топологии -

нахождение оптимального распределения материала внутри заданной области проектирования (design

domain). Заданы: нагрузки, граничные условия, объем создаваемой структуры и, возможно, некоторые

дополнительные ограничения, такие как предопределенные расположения и размеры пустот и областей,

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

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

заданных в области проектирования. Эти функции параметризуют тензор жесткости среды, и их

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

Page 4: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

2

Оптимизация формы конструкции

Оптимизация формы конструкции на практике предполагает использование конечноэлементного

анализа для решения задачи механики и вычисления целевого функционала, заданного в той или иной

форме, а также геометрических и механических ограничений. При этом, так как в процессе итераций

должна изменяться форма конструкции, конечноэлементное разбиение области дизайна также должно

изменяться. Для такого переразбиения области дизайна необходимо задание некоторой параметризации,

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

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

1. Программный комплекс, включающий CAD и CAE систему конечноэлементного

моделирования, а также, возможно, внешнюю программу - оптимайзер.

Это наиболее эффективный способ, который реализован в пакете Simulia, разработанном Dassault

System. Однако в этом случае требуется наличие мощных вычислительных средств и развитых

программных интерфейсов. Параметризация осуществляется в среде CAD системы путем задания

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

конструкции. Далее производится экспорт CAD модели в конечноэлементный формат, решение задачи

механики, включая вычисление целевого функционала и ограничений. Эти результаты обрабатываются

встроенным в МКЭ или внешним оптимайзером, который назначает новые значения параметрам

конструкции. Эти значения передаются в CAD программу и т.д.

2. Перестроение конечноэлементной сетки при итерациях внутренними средствами системы

МКЭ моделирования.

В этом случае описание геометрии конструкции осуществляется в форме скрипта заданием

последовательности операторов, зависящих от значений ряда параметров, которые однозначно

определяют желаемые изменения геометрии конструкции при ее оптимизации. Для вновь созданной

геометрии перестроение сетки также задается последовательностью скриптов, которые могут зависеть

Page 5: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

3

или быть независимыми от параметров дизайна. Дальнейшая работа алгоритма оптимизации

осуществляется аналогично описанной выше.

3. Параметризованная геометрия и метод деформируемой сетки

Этот метод предполагает деформацию (т.е. движение элементов сетки без нарушения ее

топологии) первоначально построенной сетки в соответствии с заданным законом ее движения. Этот

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

этих уравнений заданы некоторыми соотношениями, в которые входят параметры, которые и

характеризуют допустимые изменения геометрии конструкции. Таким образом, согласно этому методу

модификация геометрии в итерационном процессе происходит вместе с деформируемой сеткой без

разрушения ее топологии. Деформируемая сетка является очень мощным средством, которое

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

мы рассмотрим основы теории, реализацию метода в Comsol Multiphysiscs, и сравнительно простой

пример решения задачи оптимизации конструкции, На этом примере будут обсуждены некоторые

особенности применения, трудности и ограничения метода.

Основы метода деформируемой сетки Деформируемая сетка может применяться, если границы области моделирования изменяются во

времени или как функция некоторых параметров. При этом перемещение узлов сетки согласовано с

движением границ. В COMSOL Multiphysics движением узлов перестраиваемой сетки можно управлять

тремя способами:

Путем распространения смещений движущихся границ внутрь области для получения гладкой

деформации сетки везде внутри области, что реализуется путем решения системы дифференциальных

уравнений в частных производных для смещений сетки (уравнения Лапласа и Винслоу сглаживания

движений сетки).

Путем задания явных выражений для деформаций сетки.

Page 6: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

4

Путем задания движений сетки, исходя из некоторых определяемых в связанной задаче

физических смещений, например, перемещений, вычисленных на границе в результате решения задачи

механики конструкций. Этот метод чаще всего применяется при решении задач о взаимодействии

жидкости с твердым телом.

Вычислительная техника для описания движущейся сетки называется методом Эйлера-Лагранжа

(an arbitrary Lagrangian-Eulerian (ALE) method). В специальном случае Лагранжева метода движение

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

конструкций при сравнительно малых перемещениях. Если движение материала более сложное, как,

например, в случае жидкости, применяется метод Эйлера, не учитывающий движение границ. ALE

метод является промежуточным.

Математическое описание движений сетки Движущаяся сетка может применяться в равной мере как в 3D, так и в 2D системах. Ниже

рассмотрен для простоты двумерный случай. Пространственные координаты в неподвижной системе

обозначим (x, y), а (X, Y) координаты узлов сетки при их начальной, недеформированной конфигурации.

Для описания пространственных координат этих узлов (x, y) после деформации используются функции

( ) ),,(;,, tYXyytYXxx == ,

где t - время или другой параметр. Преобразования координат рассматриваются в двух системах (или

фреймах - frames):

Пространственный фрейм (spatial frame), обычно представляет собой фиксированную

координатную систему с координатами (x, y). В этой системе сетка представляется движущейся, так что

координаты узлов (x, y) являются функциями времени.

В референтной системе координат (reference frame), задаваемой референтными координатами

(X, Y) узлы сетки фиксированы в их начальных положениях. Референтная система как криволинейная

система координат, соответствующая деформациям сетки, представлена на рисунке.

Page 7: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

5

Рис. Пространственный и референтный фреймы

а – Недеформированная сетка - пространственный и референтный фреймы совпадают;

б – деформированная сетка

Производные

Пространственные производные

Для зависимой переменной u вводятся два типа пространственных производных:

Производные в пространственном фрейме yx uu , , рассматриваемые как функции координат yx,

(и, возможно, t ). В Comsol обозначаются соответственно ux, uy.

Производные в референтном фрейме YX uu , , рассматриваемые как функции координат yx, (и,

возможно, t ). В Comsol обозначаются соответственно uX, uY.

Только один вид производных возможен, что зависит от типа фрейма, используемого в данном

приложении.

Page 8: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

6

Производные по времени

Они также могут быть определены в каждом из фреймов. В пространственном фрейме

производная yxt tuu

,∂∂= вычисляется при фиксированных координатах (x, y), т.е. в фиксированной

точке пространства. Обозначается как ut.

В референтном или сеточном фрейме YXTIME tuu

,∂∂= . Координаты (X, Y) фиксированы при

вычислении производной, т.е. вычисление производной осуществляется в точке, следующей за

движущейся сеткой. Такая производная обозначается uTIME.

Оба типа производных связаны соотношением

TIMEyTIMExTIMEt yuxuuu −−= ,

где ( )TIMETIME yx , представляют собой компоненты скорости сетки. Чаще всего производные по времени в

референтной сетке не очень важны, т.к. их значения зависят от скорости движения сетки, не имеющей

значения с точки зрения физики явления. Однако, в некоторых специальных случаях, когда сетка

следует движению материала (метод Лагранжа) производные по времени в референтном фрейме важны,

называясь материальными производными по времени.

При симуляции модели сольвер работает с ее дискретизацией на деформированной сетке,

используя временные производные в референтном фрейме как исходные данные. Затем производится

вычисление производных в пространственном фрейме по приведенной формуле. Это означает, что

уравнения в частных производных не нужно переформулировать применительно к деформированной

сетке.

Page 9: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

7

Фреймы при использовании деформируемой сетки в Comsol При формулировании задачи в Comsol до добавления приложения, реализующего движущуюся

сетку, по умолчанию задан только один референтный фрейм с независимыми переменными zyx ,, .

После выбора в списке Application modes режима Moving mesh (ALE) система автоматически

добавляет пространственный фрейм, и независимые переменные по умолчанию zyx ,, автоматически

переименовываются в ZYX ,, . Другим способом добавить пространственный фрейм можно после

нажатия клавиши Multiphysics в навигаторе модели и далее – клавиши Add Frame. Это приведет к

открытию диалогового окна, в котором можно задать имена координат фрейма.

Как правило, присоединяя некоторое приложение к фрейму, следует придерживаться таких

правил:

При использовании Параметризованной геометрии (Parameterized Geometry) следует

присоединять все приложения к пространственному фрейму.

При использовании Движущейся сетки (Moving Mesh (ALE)) присоединяют модуль механики

конструкций (Structural Mechanics) к референтному фрейму, т.к. при анализе конструкции вычисляются

смещения сетки, используемые как входные для модуля Moving Mesh (ALE), когда он определяет

пространственный фрейм. Все прочие приложения присоединяют к пространственному фрейму,

задаваемому модулем Moving Mesh (ALE).

Информацию об активных фреймах и их настройку можно произвести в окнах Application mode

properties Model Settings, запускаемых из меню Physics.

Page 10: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

8

Рис. Активация режима движущейся сетки (слева) и введение нового фрейма (справа)

Page 11: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

9

Рис. Информация об активных фреймах модели

Page 12: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

10

Режим движущейся сетки В этом режиме можно создавать модели, где геометрия (прежде всего сетка) меняется вместе с

изменениями некоторых эволюционирующих физических величин. Соответствующие настройки

производятся в диалоговых окнах Области, границы, ребра и точки.

Настройка областей (Subdomain Settings).

В закладке Mesh производятся настройки характера движений сетки в каждой области.

Free displacement. Режим установлен по умолчанию, он означает, что движение сетки

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

решения уравнений в частных производных.

Physics induced displacement. Установка используется, если смещения вычисляются в другом

режиме, например, в режиме механики конструкций. В этом случае в окошках для ввода значений dYdX , вводятся значения зависимых переменных из режима механики конструкций.

Prescribed displacement. Используется для ввода выражений, определяющих закон движения

сетки внутри области. Они не должны содержать переменных, вычисляемых при работе модели. При

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

управляющим движением сетки в режимах Physics induced displacement и Prescribed displacement

должны неукоснительно выполняться.

No displacement. Сетка полностью неподвижна.

Задание начальных условий производится во вкладке Init: для положений сетки zyx ,, , если

используется метод сглаживания Лапласа, или смещений сетки dzdydx ,, , если используется метод

Винслоу. Напомним, что метод сглаживания задается в окне Application mode properties (см. выше).

Настройка границ (Boundary Settings).

В окне настройки границ можно ограничить перемещения на всех границах или задать скорости

движения сетки при нестационарном анализе. Ограничения также могут быть наложены на границы

областей, где разрешено свободное смещение.

Page 13: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

11

Если имеется граница со свободным перемещением, целесообразно задать нормальную

компоненту скорости сетки равной нормальной компоненте скорости движения материала. Это можно

сделать, выбрав координатную систему Tangent and normal, и введя выражение nx*u+ny*v в окошко

для нормальной компоненты скорости и оставив неактивным чекбокс в окошке для тангенциальной

компоненты скорости. Это позволит сетке скользить вдоль границы с материалом, что улучшит

качество сетки. Отметим здесь, что (nx, ny) обозначает нормаль к деформированной сетке, тогда как

(nX, nY) – нормаль к недеформированной.

Если в граничные условия входят переменные из других приложений, использование обычных

ограничений или идеальных слабых ограничения может нежелательно отразиться на этих смежных

приложениях. Поэтому режим Moving Mesh (ALE) использует по умолчанию неидеальные слабые

ограничения.

Важно также отметить, что граничные условия должны быть совместимы с настройками

примыкающих областей. Если настройки области задают определенные смещения, смещения границы

должны быть с этим смещением согласованы.

Page 14: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

12

Методы сглаживания В областях, где задано свободное перемещение сетки, режим Moving Mesh (ALE) решает уравнения

для перемещения сетки. Это уравнение плавно деформирует сетку с учетом ограничений, заданных на

границах. Пользователь имеет возможность выбрать один из двух методов сглаживания: Лапласа и

Винслоу. Выбор метода осуществляется в диалоговом окне Application Mode Properties, которое

доступно, когда в меню Multiphysics активизировано приложение Moving Mesh (ALE). Для уяснения

различий этих методов, прежде всего, отметим, что yx, представляют собой пространственные

координаты, определенные работающим приложением (режимом моделирования физики процесса), а

YX , - координаты референтного фрейма. Если выбран метод сглаживания Лапласа, координаты

деформированной сетки yx, представляют собой дополнительные степени свободы модели. В

статическом случае для определения новых положений сетки решаются уравнения

0;02

2

2

2

2

2

2

2

=∂

∂+

∂=

∂+

Y

y

X

y

Y

x

X

x,

а в нестационарном случае уравнения

0;02

2

2

2

2

2

2

2

=

∂+

∂=

∂+

t

y

Yt

y

Xt

x

Yt

x

X.

Если же выбран метод Винслоу, решаются уравнения

0;02

2

2

2

2

2

2

2

=∂

∂+

∂=

∂+

y

Y

x

Y

y

X

x

X,

в соответствии с которыми YX , удовлетворяют уравнениям Лапласа как функции yx, .

Page 15: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

13

Перестроение сетки При деформировании сетки ее качество может значительно ухудшиться, поэтому достаточно

часто необходимо выполнять перестроение сетки при ее деформировании. Разрешение на перестроение

может быть дано в диалоговом окне Application Mode Properties путем активизации чекбокса Allow

remeshing. Когда эта опция активирована, система добавляет дополнительный фрейм. В этом случае имеют

место три фрейма: pg

Пространственный фрейм, обозначенный как ale или (наименование метода, управляющего

деформацией сетки). Это обычная координатная система, координаты которой обозначают по

умолчанию yx, .

Референтный фрейм, обозначаемый как ref, координаты описывают исходную конфигурацию

(до изменения сетки). Координаты этого фрейма обозначены по умолчанию YX , . Если движение сетки

следует за движением материала (как это обычно имеет место при моделировании механики

конструкций), этот фрейм называют материальным фреймом. В этом случае YX , представляют собой

координаты материальной точки в начальной конфигурации. Система сохраняет значения YX , для

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

изменяются только в том случае, когда пользователь нажимает Restart после перестроения сетки.

Сеточный фрейм, обычно обозначаемый как mesh. Эта координатная система описывает

конфигурацию сразу после последнего перестроения сетки. Соответствующие координаты называются

по умолчанию Xm, Ym.

Для остановки работы сольвера , когда качество сетки недопустимо ухудшается, в режиме

нестационарного или параметрического анализа имеется возможность остановки алгоритма в окне

Solver Parameters. Сольвер останавливается, если выражение в окошке Stop condition становится

отрицательным. По умолчанию значение, управляющее остановом, равно minqual1_ale-0.05, что

соответствует предельному ухудшению качества деформируемой сетки.

Page 16: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

14

Переразбиение сетки шаг за шагом.

Для активации этой опции следует установить чекбокс Allow Remeshing в положение On в окне

Application Mode Properties; Указать условия останова в диалоговом окне Solver Parameters; Если

сольвер остановится, не достигнув конечного значения времени моделирования, выполнить следующее:

Создать новую геометрию из деформированной сетки. Для этого в меню Mesh открыть диалоговое окно

Create Geometry From Mesh. Нажать клавишу Deformed Mesh для использования в качестве источника

создания новой геометрии деформированной сетки; Создать разбиение для только что созданной

геометрии (качество разбиения должно быть значительно лучше, чем после деформации сетки); В окне

Solver Parameters поменять начальное время (или начальное значение параметра, если используется

параметрический анализ) на то его значение, которое достиг решатель; Запустить продолжение расчета,

нажав клавишу Restart. Если сольвер остановится, не достигнув заданного конечного значения

времени, повторить описанные действия.

Ниже приведен простой пример переразбиения сетки.

Page 17: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

15

Пример переразбиения конечноэлементной сетки – нестационарный анализ изгибных

колебаний балки в воздухе Построенная модель c именем Beam_Vibrated_on_Air будет сохранена в папке Models. Действия

по ее построению и анализу иллюстрируются ниже.

1. После запуска программы в Навигаторе моделей Model Navigator, выбрать 2D из списка Space

dimension.

2. В списке режимов COMSOL Multiphysics, выбрать Deformed Mesh>Moving Mesh (ALE)>

Transient analysis.

3. Нажать клавишу Multiphysics, затем клавишу Add, чтобы добавить режим Moving Mesh к

структуре модели.

4. Из списка режимов выбрать Structural Mechanics>Plane Stress>Transient analysis.

5. ОК.

1. Построить прямоугольник шириной 1.6 и высотой 1.2, нижний левый угол которого находится

в точке с координатами (−0.6, −0.4).

2. Построить второй прямоугольник шириной 1.4 и высотой 0.2 нижний левый угол которого

находится в точке с координатами (−0.6, −0.2).

3. В диалоговом окне Subdomain Settings при активном режиме Plane Stress сбросить чекбокс

Active in this domain для области 1 (воздух).

4. Для установки параметров демпфирования с целью стабилизации нестационарного решения

выбрать область 2 (балка) и открыть вкладку Damping. Выбрать релеевское демпфирование Rayleigh из

списка Damping. Назначить параметры демпфирования: 1 для αdM, и 0.001 для βdK. Закрыть диалоговое

окно.

5. В окне Boundary Settings выделить границу 3 и активировать ограничения Rx и Ry , выбрав

соответствующий чекбокс. Перейти во вкладку нагрузок Load и выделить границы 4,6,8. Ввести силу

Fy, нарастающую со временем по закону -1[MN/m/s]*t.

Page 18: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

16

6. В меню Multiphysics выбрать режим Moving Mesh (ALE) (ale). В окне Subdomain Settings

выбрать область 2 и нажать клавишу Physics induced displacement. Ввести переменные u и v в окошки

dx и dy. Закрыть окно. Boundary Settings выделить границы 4,6, 8. В активизированных окошках dx и dy ввести смещения

сетки u и v. Выделить границы 1,2,5,7,9. Активировать чекбоксы dx и dy и оставить

предопределенные значения смещений сетки равными нулю.

8. Так как при нагружении балки должны возникнуть большие деформации, для получения

корректного решения следует активировать режим Plan stress, открыть диалоговое окно Application

mode properties и активировать чекбокс Large deformations – On.

Moving Mesh (ALE) (ale) Application mode propertiesAllow remeshing On.Произвести сеточное

разбиение простым нажатием кнопки Mesh mode, затем однократно участить разбиение. Это приведет к

построению треугольной сетки с общим числом элементов около 500.

Выполнить настройки сольвера:

1. В меню Solve открыть диалоговое окно Solver Parameters. В окошке Times ввести интервал

времени моделирования нестационарного процесса range(0,0.01,0.3).

2. Перейти во вкладку Time Stepping и активировать чекбокс Use stop condition. Условием

останов по умолчанию будет minqual1_ale-0.05, что означает снижение качества сетки хуже допустимого

уровня. Закрыть диалоговое окно и запустить вычисления.

Сольвер остановится примерно при t = 0.12, сообщив о выполнении условия останова.

Отметим, что при других разбиениях, например, более мелких, условие останова может быть не

достигнуто, и расчет проведен до конца.

Построение новой геометрии.

Page 19: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

17

Далее необходимо создать новую геометрию из актуального состояния сетки и выполнить

переразбиение вновь созданной геометрии. Для этого в меню Mesh открыть диалоговое окно Create

Geometry From Mesh. Нажать клавишу Deformed mesh, OK. Новая геометрия и сеточное разбиение

примут вид, представленный на рисунке. Затем следует произвести переразбиние сетки на новой

геометрии.

Page 20: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

18

Для запуска модели на счет вновь открыть окно Solver Parameters и ввести новые значения в

окошко Times. Начало моделирования должно соответствовать значению времени на последнем

успешном шаге.

Чтобы актуальное состояние модели было начальным условием для продолжения симуляции,

нажать клавишу Restart. Если расчет вновь остановится из-за ухудшения качества сетки, следует

повторить описанные действия.

Результаты расчета представлены ниже.

Рис. Постпроцесинг результатов моделирования нагружения балки

Слева – деформация сетки в теле балки, справа - деформация сетки в воздухе

Page 21: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

19

Режим параметризованной геометрии В этом режиме можно изучать эволюцию физических явлений при изменении геометрии области

моделирования, являющейся функцией некоторых изменяющихся параметров. Режим активен только

для 2D геометрий. Режим использует ту же технику вычислений движения сетки, как и рассмотренный

выше режим Moving Mesh (ALE). Разница заключается в доступных настройках внутри областей и на

границах.

Настройка областей.

Окно настройки областей в режиме Parameterized Geometry представлено ниже. Во вкладке

Mesh имеется возможность установить свободное смещение сетки внутри области - Mesh (по

умолчанию), при котором поле смещений сетки управляется только движением границ (решая

уравнения Винслоу), а также опция No displacement, при которой сетка внутри области неподвижна.

Настройки во вкладках Init и Element полностью соответствуют режиму Moving Mesh (ALE).

Рис. Окно настройки областей в режиме Parameterized Geometry

Page 22: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

20

Настройка границ.

Окно настройки границ представлено ниже.

Рис. Окно настройки границ в режиме Parameterized Geometry

В этом режиме возможна установка граничных условий трех типов:

Prescribed displacement – смещение границ задается выражением;

Linear displacement – этот вид граничных условий выбирается в том случае, когда в точках,

ограничивающих границу, смещения задаются некоторым выражением. Тогда установка Linear

displacement обеспечивает линейный закон изменения смещений между точками с заданным законом

смещений. Смещения являются линейными функциями YX , , или параметра кривой s , угловой φ или

радиальной r координаты (в полярной системе координат).

Page 23: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

21

В частности, если смещение Xxdx −= установлено как Linear in X, система накладывает

следующее ограничение на смещения

( )12

1121

XX

XXdxdxdxdx

−⋅−+=

Вдоль границы, где 1dxdx = в одной концевой точке 1XX = и 2dxdx = в другой концевой точке 2XX = .

Free – свободное перемещение границы без всяких ограничений.

Similarity transformation – Эта опция выбирается, когда задано движение в концевых точках

границы. Система сдвигает, поворачивает и масштабирует границу так, что условия в ограничивающих

точках выполняются. Так, если dx и dy представляют собой перемещения в направлениях x и y , 1dx и

1dy - смещения для 1XX = , а 2dx и 2dy - смещения для 2XX = , преобразования координат для

промежуточных точек будут вычислены в соответствии с соотношениями

( ) ( )( ) ( )

( ) ( ) ( ) ( )( ) ( )

( ) ( ) ( ) ( )( ) ( )2

12

2

12

12121212

2

12

2

12

12121212

111

111

YYXX

XXdydyYYdxdxb

YYXX

YYdydyXXdxdxa

dyYYaXXbdy

dxYYbXXadx

−+−

−⋅−+−⋅−−=

−+−

−⋅−+−⋅−=

+−−−=

+−−−=

.

Для условий Prescribed displacement и Linear displacement закон изменения каждой компоненты

смещения может быть выбран независимо.

В списке Coordinate system для смещений сетки выбирается координатная система при

использовании условий Prescribed displacement и Linear displacement:

Cartesian coordinates – в декартовых координатах смещения сетки задаются согласно

YydyXxdx −=−= ; .

Page 24: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

22

Polar coordinates – при выборе полярных координат задается центральная точка ( )00 , yx

координатной системы с радиальной координатой R и угловой координатой Φ .

Tangent and normal coordinate system in reference mesh – опция позволяет условия для

смещений нормально dynYdxnX ⋅+⋅ и тангенциально dytYdxtX ⋅+⋅ референтной границе.

Tangent and normal coordinate system in deformed mesh - опция позволяет условия для

смещений нормально dynydxnx ⋅+⋅ и тангенциально dYtydxtx ⋅+⋅ деформированной границе.

Настройка границ.

В диалоговом окне Point Settings устанавливаются ограничения на смещения сетки в точках, в

декартовой или полярной координатах.

Page 25: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

23

Ограничения в использовании деформируемой сетки Связность сетки должна оставаться неизменной в процессе ее деформации, откуда следует, что

изменения топологической структуры геометрии областей недопустимы.

Когда деформации сетки становятся значительными, качество разбиения ухудшается. В таких

случаях могут возникать инвертированные элементы и проблемы сходимости. Следует избегать

чрезмерных деформаций сетки.

Если физическая задача работает с конечными элементами, отличными от лагранжевых, решение

уравнений для деформированной сетки может столкнуться c проблемами сходимости. Выходом может

быть последовательное решение задачи для деформаций сетки, а затем – физической задачи.

Решение нестационарных задач для волнового уравнения несовместимо с движением сетки, т.к.

формула для вычисления вторых пространственных производных на сеточном фрейме не работает.

При использовании элементов второго и более высокого порядка для деформируемой сетки,

могут возникать элементы искаженной формы. Лучшим решением является использование для

деформируемой сетки элементов первого порядка. Выполнить это можно в окне настройки областей

или в окне Application mode properties.

Page 26: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

24

Пример

Напряженное состояние консольного стержня с параметризованной формой нижней границы Консольно закрепленный стержень, равномерно загруженный вертикальной силой по верхней

границе, имеет сечение первоначально постоянное вдоль оси, затем изменяющееся вдоль оси стержня

по кривой второго порядка. Используя режимы Plane stress и Parameterized geometry, определить

напряженное состояние стержня. (Задача носит вспомогательный характер)

Рисунок иллюстрирует постановку задачи. Линия второго порядка, ограничивающая нижнюю

поверхность балки, проходит через три точки: с координатами (0;-Y0), (l;-Y1) и точку (ξ,η), лежащую в

плоскости боковой поверхности балки. Варьируя значение Y1 и положение точки (ξ,η), можно менять

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

формулам, приведенным на рисунке.

Решение в Comsol Multiphysics/

В Навигаторе моделей выбрать режимы Plane stress и Parameterize geometry, сделав второй

режим ведущим, как показано на рисунке.

Построить геометрию модели – прямоугольник со сторонами 0,6 м и 2,0 м.

Выполнить сеточное разбиение. Этот этап работы можно выполнить произвольно, но на рисунке

сетка построена из диалогового окна Mapped mesh parameters.

Page 27: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

25

Page 28: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

26

Page 29: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

27

Открыть окно Constants и ввести имена и значения необходимых констант.

В окне Boundary expressions для границы 2 с изменяемой формой задать выражения для

коэффициентов линии второго порядка. Тем самым на границе 2 определены параметры a, b.

Page 30: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

28

Перейдя в режим Plane stress, сформулируем условия для области (их можно оставить по

умолчанию для материала - сталь) и для границ: левая граница зафиксирована, остальные свободны, к

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

Далее в режиме Parameterized geometry сформулируем условия для области (свободные

смещения) и всех границ. Все ограничения накладываются в декартовой системе координат. На левой

(заделка) и верхней горизонтальной границах смещения сетки запрещены, на правой границе запрещено

движение сетки по горизонтали и свободно по вертикали, на нижней – смещение сетки по вертикали

задано выражением, описывающим кривую второго порядка, по горизонтали запрещено (см.рис.).

Page 31: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

29

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

полной энергии деформации в теле балки и занимаемый объем (площадь в 2D). Отметим, что площадь

вычисляется в системе координат деформированной сетки, тогда как энергия – в неподвижном фрейме.

Page 32: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

30

В окне Application Mode Properties для режима параметризованной геометрии выполним

соответствующие настройки (см. вводную часть по теме Деформируемая сетка).

Запустим задачу на счет. Постпроцессинг решения, где активированы опции:

- Surface – Strain energy density:

- Contour – y-displacement (Parameterized geometry);

- Deformed shape – Displacement (Plane stress)

- Geometry edge

Представлен на рисунке.

Переприсвоив значения площади и энергии деформации глобальным выражениям, можно получить

доступ к их значениям из окна Postprocessing/Global Variables Plot (см. рисунок).

Page 33: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

31

Page 34: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

32

Пример

Оптимизация продольного сечения консольного стержня в режиме параметризованной геометрии

(формы нижней границы) Этот пример является непосредственным продолжением предыдущего, его модель может быть

построена на базе предыдущей. Целью оптимизации будет минимизация общей энергии деформации

балки при ограничениях на ее объем. В ходе выполнения итераций алгоритм оптимизации будет

варьировать координаты промежуточной точки с координатами ηξ , , тем самым деформируя нижнюю

границу балки, изменяя ее объем и напряженное состояние. Для реализации алгоритма оптимизации

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

ηξ , , введя в модель соответствующие настройки. Прежде всего, необходимо подключить

оптимизационный модуль к связанным режимам Plane Stress и Parameterized Geometry. Для этого в

меню Multiphysics открыть Model Navigator и выбрать Comsol Multiphysics / Optimization and Sensitivity /

Optimization, добавить режим нажатием кнопки Add, сделать его ведущим, OK (см. рис.).

Так как в процессе оптимизации необходимо будет выполнять проверку выполнения неравенств,

удобнее определить границы изменения переменных в области констант, как это показано на рисунке.

Выбор энергии деформации в качестве оптимизируемого функционала потребует вычисления

интеграла от плотности энергии деформации в теле оптимизационного модуля. Поэтому из числа

интегралов, вычисляемых по области, эта энергия должна быть исключена (см. рис).

Для настройки алгоритма оптимизации перейти из меню Multiphysics в режим Optimization. Окно

настройки области с настраиваемыми вкладками показано на рис. В этом окне формулируется вклад

интеграла по области в целевой функционал, а также все величины, входящие в ограничения и

вычисляемые интегрированием по области. Во вкладке Objective сформулирован вклад интеграла по

области от плотности энергии деформаций (переменной Ws_smps, встроенной в режим Plane stress) и

величина используемого конструкцией объема (в 2D площади конструкции).

Page 35: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

33

Page 36: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

34

Page 37: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

35

В окне настройки скаляров (ниже показаны 4 вкладки) указывается, что никакая скалярная

величина не дает вклада в целевой функционал, границы допустимого изменения объема и

варьируемых параметров, а также их начальные значения. Ранее эти величины были заданы как

константы.

Page 38: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

36

Необходимые настройки сольвера в окне Solver Parameters представлены на рис. Если настройки

оптимизационного режима выполнены корректно, в окошке Variables будут представлены имена

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

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

в окне Solver Manager открыть вкладку Initial Value и активировать опию Initial Value Expression.

Page 39: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

37

Во вкладке Solve For можно видеть структуру параметров, вычисляемых в процессе симуляции.

В данном случае это переменные оптимизационной задачи (design variables) ηξ , , смещения материала в

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

два лагранжевых множителя, связанных с учетом ограничений.

Page 40: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

38

Сразу после запуска задачи целесообразно в окне Progress – Solve problem дезактивировать

чекбокс Close automatically,что позволит скопировать и рассмотреть о завершении работы программы

эволюцию изменения целевого функционала (Objective).

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

рассмотреть ее деформированное состояние по завершении процесса оптимизации. Для этого в меню

Mesh выбрать Create Geometry from Mesh, что приведет к открытию одноименного окна (см. рис.).

Выбрать источником для построения геометрии следует Deformed Mesh. Нажатие ОК приведет к

визуализации структуры построенной сетки. Ее качество можно оценить, отметив в окне Plot parameters

во вкладке Surface параметр Mesh Quality (см. рис.) и дезактивировав все остальные чекбоксы. Как

видно из рисунка, качество сетки в зоне ее интенсивной деформации значительно ухудшено, что

объясняет появление сообщений об инвертированных элементах во вкладке Log окна Progress – Solve

problem. Приемы, исключающие появление инвертированных элементов, рассмотрены выше.

Page 41: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

39

Page 42: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

40

Анализ информации во вкладке Log представляет значительный интерес, т.к. содержит

информацию о ходе итерационного процесса. Совмещенный график зависимости величины целевого

функционала и ошибки от номера итерации представлены на рис..

Из меню постпроцессинга, после открытия окна Global Variables Plot устанавливаются

финальные значения параметров дизайна 302.0;977.0 == ηξ , целевого функционала (после 48 его

вычислений) и ограничения на объем 64.0=finV . Приведенные графики показывают, что в процессе

итерации целевой функционал не уменьшался, а практически монотонно увеличивался. Этот факт

объясним тем, что начальные значения параметров дизайна соответствовали конструкции, не

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

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

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

оптимизационный процесс.

Page 43: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

41

Прежде чем рассмотреть этот вопрос подробнее, зададим начальные условия такими, чтобы

исходная конструкция удовлетворяла наложенным ограничениям, и рассмотрим результаты работы

модели.

Задание начальных условий для 41.0;0.1 == ηξin , удовлетворяющих граничным условиям для

объема, приводит к финальным значениям 312.0;01.1 == optopt ηξ , тому же значению целевого

функционала 6.301 (после 29 его вычислений) и ограничения на объем 64.0=finV . Приведенные графики

показывают, что в процессе итерации целевой функционал вместе с ошибкой быстро снижаются.

Представляется очень полезным сформулировать решить аналогичную задачу при различном

характере нагружения, а также при различных формулировках целевого функционала и ограничений. В

частности, можно минимизировать средний по длине верхней поверхности прогиб балки, ее прогиб в

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

Page 44: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

42

Об алгоритмах оптимизации в модуле Optimization Lab системе Comsol Multiphysics Под оптимизацией любых функций, в том числе заданных в виде интеграла на

конечноэлементной модели, в системе Comsol Multiphysics понимается минимизация (или

максимизация) значения функции. Эту функцию обычно называют целевой (objective function или cost

function). Формулировка оптимизационной задачи обычно включает еще и ограничения. Общая

формулировка оптимизационной задачи в Optimization Lab выглядит следующим образом

( )

( )

≤≤

≤≤

≤≤

ublb

ublb

ublb

x

xxx

dxcd

bAxb

xfimizemin

. (1)

где: - )(xf - целевая функция, которая может быть определена различными способами;

- матрица A вместе с векторами ublb bb , определяет линейные ограничения;

- векторная функция )(xc вместе с векторами ublb dd , определяет нелинейные ограничения;

- векторы ublb xx , определяют допустимые границы изменения векторной переменной x .

Выражения (1) определяют ограничения в форме неравенств. Ограничения в форме равенств

можно задавать, устанавливая равными верхнюю и нижнюю границы, например, )()( jbjb ublb = . В

конкретных оптимизационных задачах, конечно, не все выражения из (1) могут использоваться. Задачи

без ограничений вообще не содержат ограничивающих соотношений.

Если некоторый вектор x удовлетворяет ограничениям, его называют допустимым (feasible).

В общем случае решения оптимизационных задач Optimization Lab применяется сольвер,

использующий операцию вычисления градиента ii xfg ∂∂≡ целевой функции и Якобиана функции

ограничений jiij xcJ ∂∂≡ .

Page 45: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

43

Стартуя из допустимой точки (возможно, после ее предварительной локализации) алгоритм

оптимизации вычисляет значения целевой функции и ограничивающих выражений в окрестности этой

точки, далее, движется в направлении убывания целевой функции, не нарушая ограничений. При этом

на каждом шаге итераций вычисляется также градиент i

ix

fg

∂≡ и матрица Гессе

)(xfxxx

gH

ijj

iij

∂≡

∂≡ , ni ...2,1= . (2)

Если целевая функция дифференцируема, она хорошо аппроксимируется первыми двумя

членами разложения в степенной ряд

hxgxfhxf T)()()( +≈+ , (3)

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

дважды дифференцируемых функций

hxHhhxgxfhxfTT )(

2

1)()()( ++≈+ (4)

обеспечивается значительно лучшая аппроксимация, которая используется в QP-квадратичном

алгоритме (quadratic programming). В составе Optimization Lab также имеется поисковый алгоритм

(optnm) для оптимизации без ограничений негладких функций, о дифференцируемости которых ничего

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

величиной «редуцированного» градиента (см. ниже) или достаточно малой величиной улучшения на

последних итерациях. Задача с нелинейными ограничениями решается методом последовательного

квадратичного программирования (SQP), в котором редуцированным градиентным методом решается

каждая QP подзадача.

Page 46: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

44

Условия оптимальности и множители Лагранжа

Рассмотрим ограничения в форме неравенств 0)( ≤xc . Если 0)~( =xc в точке x~ , то в этой точке

его называют активным, в противном случае его называют неактивным. Ограничения, которые

неактивны в точке оптимума, могут быть проигнорированы, а активные заменены равенствами.

Существенно, что заранее невозможно определить множество активных ограничений. Положим далее, что все возможные ограничения содержатся в описании функции )(xc .

Локальный оптимум задачи с ограничением в форме равенства

( )

( )

= 0

min

xc

xfimizex (5)

характеризуется условием оптимальности первого порядка

( )

=

=+

0

0

xc

yJgT

, (6)

которое говорит о том, что возмущение x , которое никак не влияет на ограничение (до 1 порядка),

приводит к изменению целевой функции менее первого порядка. Лагранжиан

)()(),( xcyxfyxL T+≡ , (7)

представляющий собой сумму целевой функции и сумму взвешенных функций ограничений

(умноженных на Лагранжевы множители y ) имеет стационарную точку в точке минимума задачи (6).

Для задач, содержащих ограничения в форме неравенств

( )

( )

≤ 0

min

xc

xfimizex (8)

условия оптимальности первого порядка имеют вид

Page 47: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

45

=+

0

0)(

0

y

xc

yJgT

(9)

Только активные ограничения имеют соответствующие ненулевые множители Лагранжа. Эти

условия обычно называют необходимыми условиями Кана-Такера.

Чтобы увидеть, как множители Лагранжа входят в формулировку оптимизационной задачи в

Optimization Lab, рассмотрим наиболее общую постановку оптимизационной задачи (1). Условия

оптимальности первого порядка имеют вид

( )

≤≤≤≤≤≤

≤≤≤

≥≥≥

=++++++

ublbublbublb

bcnclc

bcnclc

bcbcncnc

T

lclc

T

xxxdxcdbAxb

yyy

yyy

yyyyJyyAxg

lblblb

ububub

lbublbublbub

;;

0;0;0

0;0;0

0)()()()(

(10)

Положительные и отрицательные множители обозначают соответственно нижние и верхние

границы.

Множители Лагранжа сообщают полезную информацию: ненулевые значения являются

«стоимостью» целевой функции в единицах удовлетворения ограничений. Алгоритм для задач с

ограничениями предсказывает активное множество, решает задачу с ограничениями в форме равенств и

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

активного множества выбирает активное множество для следующего шага. Редуцированный

градиентный алгоритм для линейных ограничений выбирает активное множество внутри

ассоциированного подпространства, возможно, добавляя ограничения одно за другим к активному

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

Page 48: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

46

затем рассматривают освобождение активных ограничений и продолжают далее. Редуцированные

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

эффективно снижая размерность пространства поиска и исключая ограничения. Градиенты в этом

подпространстве называют редуцированными градиентами. Для задач с нелинейными ограничениями

SQP - алгоритм в конце концов решает QP - подзадачу, заданную в точке оптимума.

Page 49: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

1

Лекция 3

Level Set метод и его применение при оптимизации конструкций

Задание границ областей неявными функциями

Level Set метод использует идеологию неявного задания граничных (или, в терминах метода,

интерфейсных) линий и поверхностей посредством функций, линий (или поверхностей) уровня,

которые и определяют интерфейсную границу. Так, в двумерном случае, одномерным интерфейсом

является кривая, которая делит 2ℜ на две раздельные подобласти с ненулевой площадью. Ограничивая

рассмотрение замкнутыми кривыми, можно выделить внешнюю и внутреннюю подобласти.

Простейший пример функции ( ) 122 −+= yxxφ , где интерфейс определен равенством ( ) 0=xφ , которому

соответствуют изоконтур – единичная окружность 1==Ω∂ xx , внешняя область 1>=Ω+ xx и

внутренняя область 1<=Ω− xx (см. рис. 3.1). Явное представление этого интерфейса – это

единичная окружность 1==Ω∂ xx .

Рис.3.1. Неявное представление кривой 122 =+ yx

Page 50: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

2

В двумерном случае явное задание интерфейса требует указания всех точек на кривой. Хотя в

представленном случае это делается весьма просто, в общем случае могут возникнуть существенные

затруднения. Для кривой произвольного вида требуется ее параметризация с помощью векторной

функции ( )sx , где параметр пробегает значения в некотором интервале [ ]f

sss ,0

∈ . Условие замкнутости

кривой тогда принимает вид ( ) ( )f

ss xx =0

. Если аналитическое представление функции ( )xφ неизвестно,

она должна быть дискретизирована, например, на декартовой сетке ( ) njmiyxji

≤≤≤≤ 1,1, , причем,

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

Трехмерный случай может быть рассмотрен аналогично. Однако представление интерфейсной

поверхности в явном виде может быть достаточно сложным, особенно, если отсутствует ее

аналитическое представление. Тогда при дискретизации необходимо сохранять большое количество

точек и данные об их связности. Если в двумерном случае информация о связности точек интерфейса

задается просто последовательностью, соответствующей изменению параметра (т.е. ( )i

sx соединена с

( )1−isx и с ( )

1+isx ), то в трехмерном случае это встречает серьезные затруднения. Наиболее просто это

сделать, накрывая поверхность треугольной сеткой, где вершины всех треугольников принадлежат

поверхности, а ребра определяют связность. Однако и в этом случае возникают проблемы даже при

работе весьма совершенных алгоритмов, особенно при описании поверхностей с отверстиями или

динамически деформирующихся поверхностей.

Замечательным свойством неявных поверхностей является то, что при таком способе описания

нет необходимости привлекать связность при дискретизации. Вероятно, самое мощное свойство

неявных поверхностей заключается в возможности простого перехода от 2D к 3D и даже более высокой

размерности.

Page 51: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

3

Идеология неявного представления интерфейса включает несколько весьма удобных и мощных

геометрических инструментов. В частности, определив изоконтур уравнением ( ) 0=xφ , можно

определить принадлежность точки к внутренней ( )( )0<xφ или внешней ( )( )0>xφ подобласти. При явном

задании интерфейса получить ответ на этот вопрос можно только использованием более сложных

приемов. При дискретном задании поверхности, когда необходима аппроксимация, может показаться,

что численные ошибки аппроксимации могут сильно исказить результат определения интерфейса.

Однако, если поверхность достаточно гладкая, эти ошибки могут быть сведены к минимуму

надлежащим выбором разбиения, и только в этом случае можно применять численные методы,

использующие данные интерфейс.

Неявные функции делают более простыми Булевские операции и операции конструктивной

твердотельной геометрии (CSG).

В частности, если ( )x1

φ и ( )x2

φ - две разные неявные функции, то ( ) ( ) ( )( )xxx21

,min φφφ =

представляет собой неявную функцию, описывающую объединение внутренних областей функций ( )x1

φ

и ( )x2

φ .

Аналогично, ( ) ( ) ( )( )xxx21

,max φφφ = представляет собой неявную функцию, описывающую

пересечение внутренних областей функций ( )x1

φ и ( )x2

φ .

Дополнение функции ( )x1

φ может быть определено как ( ) ( )xx1

φφ −= .

Вычитание внутренней области ( )x2

φ из внутренней области ( )x1

φ описывается как

( ) ( ) ( )( )xxx21

,max φφφ −= .

Page 52: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

4

Градиент неявной функции, определяемый, как обычно, соотношением

( )Tzyx φφφφ =∇ (3.1)

всегда нормален изоконтуру и направлен в сторону возрастания φ . Поэтому, если точка 0

x

принадлежит нулевому изоконтуру φ , т.е. является точкой интерфейса, то φ∇ , вычисленный в точке

0x , есть нормальный к границе вектор, направленный вне области, а единичный вектор внешней

нормали равен

φφ ∇∇=N (3.2)

во всех точках интерфейса. Поскольку неявное описание предусматривает описание интерфейса

объектом на единицу большей размерности, оно дает значительно больше информации. Например,

вместо задания единичной нормали к границе уравнением (3.2) во всех точках интерфейса

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

На декартовой сетке производные в (3.2) заменяются конечными разностями, например, точными

до первого порядка прямыми разностями

x

ii

x∆

−≈ + φφ

φ 1 , (3.3)

сокращенно записываемыми как φ+D , обратными разностями первого порядка точности

xD ii

x∆

−≈≡ −− 1

φφφφ (3.4)

или разностями второго порядка точности

xD ii

x∆

−≈≡ −+

2

110 φφφφ (3.5)

Page 53: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

5

Следует иметь в виду, что в точках, где производные функции по координатам обращаются в

нуль, нормаль к изоконтуру функции не определена. При этом выбор той или иной формулы для

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

направление нормали может выбираться произвольно.

Средняя кривизна интерфейса определяется как дивергенция нормали ( )T

zyxnnn=N

z

n

y

n

x

nzyx

∂+

∂+

∂=⋅∇= Nκ (3.6)

Так что 0>κ для выпуклого региона, 0<κ для вогнутого региона и 0=κ для плоского региона

(см. рис. 3.2).

Рис. 3.2. К определению знака кривизны для выпуклого и вогнутого региона

Page 54: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

6

Используя конечные разности второго порядка, можно записать кривизну более компактно,

непосредственно вычисляя кривизну по функции φ . Подставив (3.2) в (3.6), получим

( ) 3222222 222 φφφφφφφφφφφφφφφφφφφφφφφ

φ∇+−++−++−=

∇⋅∇=

yyzyzzyzzyxxzxzzxzzxxxyxyyxyyxk (3.8)

Выражение кривизны в терминах первых и вторых производных.

Формулы второго порядка точности для конечных разностей, например, для второй производной

по x имеют вид

( )2

112

x

iii

xx∆

+−≈ +− φφφ

φ , (3.9)

что можно сокращенно записать в виде φφ +−−+ =xxxx

DDDD . Конечно-разностное представление второго

порядка точности для смешанной производной xy

φ имеет вид φφφ 0000

xyyxxyDDDD =≈ .

В одномерном примере ( ) 12 −= xxφ , где вектор нормали определен соотношением xx=N всюду,

за исключением начала координат 0=κ , где кривизна неопределенна,. Сингулярность в начале

координат может быть устранена, если положить ( ) 00 =κ . Нормаль 1=N направлена вправо для всех

0>x и влево ( 1−=N ) для 0<x .

В двумерном и трехмерном примерах (окружность и сфера) кривизна определена

соотношениями x1=κ и x2=κ соответственно, за исключением начала координат, где кривизна

неопределенна. В этих случаях сингулярность неустранима. Более того, 1=κ на одномерном

интерфейсе в двумерном случае, и 2=κ на двумерном интерфейсе в трехмерном случае. Это различие

обусловлено тем, что двумерная окружность в трехмерном пространстве есть цилиндр.

Page 55: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

7

Тот факт, что в двумерном и трехмерном случаях имеет место неустранимая сингулярность, не

должен вызывать беспокойства, т.к. моделирование интерфейса малого радиуса (порядка шага сетки

x∆ ) бессмысленно с точки зрения возможности получения устойчивого численного результата. Исходя

из этих соображений, на кривизну следует наложить условие xx ∆

≤≤∆

−11

κ . Если это условие

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

разрешенного диапазона.

Завершая обсуждение кривизны интерфейса, необходимо отметить, что когда значения функции

φ зашумлены, нормаль N и кривизна κ будут зашумлены в еще большей степени, т.к. вычисляются

путем взятия производных.

Page 56: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

8

Вычислительный инструментарий

Введем характеристическую функцию −χ для внутреннего региона −Ω по правилу

( )( )( )

>

≤=−

00

01

x

xx

φ

φχ

npu

npu, (3.10)

где граница произвольно отнесена к внутреннему региону. Характеристическая функция +χ для

внешнего региона +Ω вводится аналогично

( )( )( )

>

≤=+

01

00

x

xx

φ

φχ

npu

npu, (3.11)

причем граница опять отнесена к внутреннему региону.

Функции ±χ являются функциями многомерной переменной x . В ряде случаев

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

функция Хевисайда

( )

>

≤=

01

00

φ

φφ

npu

npuH , (3.12)

где φ зависит от x , хотя эта зависимость не обязательно должна быть явно выражена. Такое

определение позволяет работать с H в пространстве одного измерения. Из (3.10) – (3.12) следует, что

( ) ( )( )( ) ( )( )

xxx

xx∀

−=

=−

+

φχ

φχ

H

H

1.

Поэтому функция H представляет собой удобный и достаточно информативный инструмент для

работы с характеристическими функциями.

Page 57: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

9

Объемный интеграл (поверхностный или криволинейный интегралы в 2ℜ или 1ℜ ,

соответственно) от произвольной функции f по внутреннему региону −Ω определен как

( ) ( )∫Ω

− xxx df χ , (3.13)

где интегрирование распространяется на всю область Ω , т.к. функция −χ автоматически аннулирует

подынтегральное выражение во внешнем регионе. Используя введенную функцию Хевисайда,

выражение (3.13) для интеграла от функции f по внутреннему региону −Ω можно переписать в виде

( ) ( )( )∫Ω

− xxx dHf )(1 φ , (3.14)

и аналогично интеграл от f по внешнему региону +Ω

( ) ( )∫Ω

xxx dHf )(φ . (3.15)

По определению производная по направлению от функции Хевисайда в направлении нормали N

представляет собой дельта-функцию Дирака

( ) ( )( ) Nxx ⋅∇= φδ Hˆ , (3.16)

которая при таком определении представляет собой функцию многомерной переменной x , и отлична от

нуля только на интерфейсе Ω∂ , где 0=φ . Используя цепное правило, определение нормали (3.2) и

очевидное соотношение ( ) ( ) ( ) 2

xxx φφφ ∇=∇⋅∇ , (3.16) может быть переписано в виде

( ) ( )( ) ( ) ( )( )

( )( ) ( )xxx

xxxx φφ

φ

φφφδ ∇⋅′=

∇⋅∇⋅′= HHˆ . (3.17)

В одномерном случае дельта-функция представляет собой просто производную функции

Хевисайда

( ) ( )φφδ H ′= , (3.18)

Page 58: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

10

где ( )φH определена соотношением (3.12). Так как одномерная дельта-функция равна нулю всюду

кроме 0=φ , (3.16) и (3.17) могут быть представлены в виде

( ) ( )( ) ( )xxx φφδδ ∇⋅=ˆ . (3.19)

Поверхностный интеграл (криволинейный или в окрестности точки в 2ℜ или 1ℜ ,

соответственно) от произвольной функции f по границе Ω∂ определен соотношением

( ) ( )∫Ω

xxx df δ (3.20)

Где интегрирование распространяется на всю область Ω , т.к. функция δ автоматически аннулирует

подынтегральное выражение всюду кроме интерфейса. Используя (3.19), можно переписать (3.20) в

виде, более удобном для вычислений

( ) ( )( ) ( )∫Ω

∇⋅ xxxx df φφδ . (3.21)

Таким образом, объемные интегралы вычисляются путем выделения внутреннего региона −Ω , а

поверхностные – путем выделения границы Ω∂ . Фактически, за счет этого работа со сложной

двумерной поверхностью переводится в трехмерное пространство, а вычисление интегралов (3.14),

(3.15), (3.21) по всей области Ω исключает необходимость идентификации внутренней, внешней

областей и границы.

Рассмотрим поверхностный интеграл (3.21), для вычисления которого необходимо вычислять

одномерную дельта-функцию. Так как ( ) 0=φδ почти всюду, за исключением интерфейса, имеющего

меру нуль, маловероятно, что может быть подобрана ее хорошая численная аппроксимация,

позволяющая получить удовлетворительное численное значение интеграла. Поэтому для дельта-

функции используется ее дельта-образная аппроксимация первого порядка точности. Она может быть

получена на основе “размытой” функции Хевисайда

Page 59: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

11

( )

>

≤≤−

++

<

=

εφ

εφεε

πφ

πε

φεφ

φ

npu

npu

npu

H

1

sin2

1

22

1

0

, (3.22)

где настраиваемый параметр ε определяет ширину полосы численного “размытия”. Часто применяемое

значение x∆= 5.1ε (ширина размытия интерфейса составляет 3 размера декартовой сетки) соответствует

нормированию φ на функцию дистанции, при котором 1=∇φ (см. ниже).

Из (3.22) «размазанная» дельта-функция определяется как

( )

>

≤≤−

+

<

=

εφ

εφεε

πφ

εε

εφ

φδ

npu

npu

npu

1

cos2

1

2

1

0

. (3.23)

Определения (3.22) и (3.23) позволяют вычислять объемные и поверхностные интегралы,

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

Например, при вычислении объема области −Ω , используя интеграл

( )( )∫Ω

− xx dH )(1 φ (3.24)

с «размазанной» функцией Хевисайда (3.22), ошибка в вычислении интеграла будет ( )xO ∆ без учета

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

применять схемы более высокого порядка точности.

Page 60: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

12

Функции дистанции

Знаковые функции дистанции (signed distance functions) представляют собой подмножество

неявных функций, рассмотренных выше. Значения этих функций положительны во внешних

подобластях, отрицательны во внутренних, и тождественно равны нулю на интерфейсе. На них

наложено дополнительное условие ( ) 1=∇ xφ .

Функция дистанции (это не знаковая функция дистанции!) определена соотношением

( ) ( ) Ω∂∈∀−= III

d xxxxx

min . (3.25)

Это означает, что ( ) 0≡xd на границе, где Ω∂∈x . Для точки Ω∂∉x , не принадлежащей границе,

разыскивается ближайшая к ней точка границы, которую назовем C

x ; тогда ( ) ( )C

d xxx −= . Пусть C

x -

именно такая точка для точки x . Тогда для любой точки y , лежащей на отрезке, соединяющем x и C

x ,

точка границы C

x также будет ближайшей. Это очевидное утверждение легко доказывается!

Отрезок, соединяющий x и C

x , есть кратчайший путь от точки x до интерфейса. Иными

словами, путь от x к C

x есть путь скорейшего спуска для функции ( )xd . Вычисление d∇− в любой

точке на отрезке, соединяющем x и C

x , дает вектор, направленный от x к C

x . Кроме того, так как d

представляет собой Эвклидову норму длины вектора, соединяющего x и C

x ,

1=∇d (3.26)

(Докажите это утверждение самостоятельно!)

Уравнение (3.26) верно, исключая точки, эквидистантные по меньшей мере двум точкам на

интерфейсе. К сожалению, такие точки могут существовать. Важно отметить, что (3.26), в общем,

только приближенно удовлетворительно для численной оценки градиента. Одно из достижений level set

метода состоит в легкости, с которой такие вырожденные точки могут обрабатываться численно.

Page 61: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

13

Функции дистанции со знаком

Функция дистанции со знаком есть неявная функция φ , такая, что ( ) ( )xx d=φ для всех x .

Следовательно, ( ) ( ) 0== xx dφ для всех Ω∂∈x ; ( ) ( )xx d−=φ для всех −Ω∈x ; ( ) ( )xx d=φ для всех +Ω∈x .

Обладая всеми рассмотренными выше свойствами неявных функций, эти функции имеют ряд новых

свойств, в частности, уже отмеченное свойство

1=∇φ . (3.27)

Уравнение (3.27) снова верно в общем. Оно неверно для точек, эквидистантных как минимум,

двум точкам границы. Функции дистанции имеют излом на интерфейсе, где 0=d (локальный

минимум), что затрудняет вычисление производных на интерфейсе и вблизи него. Но знаковые

функции дистанции монотонны при переходе через интерфейс, и могут быть численно

продифференцированы с достаточно высокой точностью.

Для данной точки x , используя знаковую функцию дистанции ( )xφ , расстояние до ближайшей

точки интерфейса записывается как

( )Nxxx φ−=C

, (3.28)

где N - единичный вектор нормали в точке x . Это уравнение, опять верно только в общем, если

имеются две и более эквидистантных точек на интерфейсе.

Уравнения, которые истинны в общем смысле, могут быть использованы в численных

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

численного метода. Это общее правило для любого численного подхода.

В качестве примера рассмотрим функцию ( ) 12 −= xxφ , неявно определяющую границу 1,1−=Ω∂ .

Знаковая функция дистанции, определяющая эти же точки, есть ( ) 1−= xxφ ; она определяет ту же самую

границу, внутренний и внешний регион, как неявная функция ( ) 12 −= xxφ . Знаковая функция дистанции

( ) 1−= xxφ имеет модуль градиента 01 ≠∀=∇ xφ . В нуле функция имеет перелом, и ее производная не

Page 62: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

14

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

значение в интервале [ ]1,1− .

В двумерном случае функцию ( ) 122 −+= yxxφ заменим знаковой функцией дистанции

( ) 122 −+= yxxφ для определения границы – единичной окружности 1==Ω∂ xx . Здесь также

01 ≠∀=∇ xφ , и двумерный излом имеет место в начале координат. Он может быть сглажен, но эта

точка не представляет интереса, т.к. отстоит далеко от изоконтура, который и является целью анализа.

В трехмерном случае функцию ( ) 1222 −++= zyxxφ заменим знаковой функцией дистанции

( ) 1222 −++= zyxxφ для определения границы – единичной сферы 1==Ω∂ xx . Здесь также

01 ≠∀=∇ xφ , и трехмерный излом имеет место в начале координат, и может быть сглажен.

Во всех трех рассмотренных примерах излом существует в единственной точке. Нетрудно

привести примеры, когда такие изломы располагаются на линии (т.е. имеют размерность 1), или даже на

поверхности (размерность 2), но и в этих случаях изломы могут быть сглажены на декартовой сетке.

Так что равенство 1=∇φ нарушается только локально.

Page 63: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

15

Геометрия и вычислительный инструментарий

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

для знаковых функций дистанции. Как и выше:

- ( ) ( ) ( )( )xxx21

,min φφφ = представляет собой знаковую функцию дистанции, описывающую объединение

внутренних областей функций ( )x1

φ и ( )x2

φ ;

- ( ) ( ) ( )( )xxx21

,max φφφ = пересечение внутренних областей функций ( )x1

φ и ( )x2

φ ;

- ( ) ( )xx1

φφ −= - дополнение области, определенной ( )x1

φ ;

- ( ) ( ) ( )( )xxx21

,max φφφ −= - вычитание или исключение внутренней области ( )x2

φ из внутренней области

( )x1

φ .

Как отмечено выше, желательно, чтобы неявная функция, определяющая область, была

возможно более гладкой. С этой точки зрения знаковая функция дистанции является лучшим

кандидатом для неявного представления интерфейса. Тот факт, что 1=∇φ везде, кроме сглаженных

изломов, существенно упрощает формулы, приведенные выше.

Уравнение (3.2) для локальной единичной нормали упрощается до

φ∇=N (3.29)

Уравнение (3.7) для локальной кривизны упрощается до

φκ ∆= , (3.30)

где ∆ - оператор Лапласа в декартовых координатах (не путать с x∆ - шагом декартовой сетки).

Следует принимать во внимание, что такое упрощение верно вдали от изломов, где 1≠∇φ , поэтому

соотношения (3.29) и (3.30) вблизи изломов теряют силу. Однако вычисление градиента и лапласиана

при численном моделировании всегда необходимо.

Выражение для многомерной дельта – функции (3.19) заменяется на

( ) ( )( )xx φδδ =ˆ . (3.31)

Page 64: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

16

Поверхностный интеграл в (3.22) также записывается в упрощенном виде

( ) ( )( )∫Ω

xxx df φδ , (3.32)

где член ( )xφ∇ опущен.

Уравнения Гамильтона-Якоби и Level Set метод

Допустим, скорость каждой точки неявной поверхности дана, т.е. известно ( )xV для каждой

точки x , удовлетворяющей ( ) 0=xφ . Задавая поле скоростей ( )wvu ,,=V , мы хотим перемещать все точки

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

дифференциального уравнения (ODE)

( )xVx

=dt

d (3.33)

для всех точек фронта, т.е. точек x , удовлетворяющих ( ) 0=xφ . Это Лагранжева формулировка

уравнения эволюции интерфейса. Так как в общем случае имеется бесконечное число таких точек,

требуется дискретизация фронта на конечное число частей. Такими частями могут быть отрезки (2D)

или треугольники (3D). Это несложно выполнить, если связность поверхности не меняется, ее элементы

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

дисторсии граничных элементов, и точность метода может быстро ухудшиться, если периодически не

изменять дискретизацию для того, чтобы учесть эти деформации путем сглаживания и

упорядочения искаженных элементов поверхности. Кроме этого, необходимо понять, как

модифицировать дискретизацию интерфейса при изменении топологии. Эти хирургические методы для

отключения и повторного присоединения граничных элементов могут быть довольно сложными.

Использование Лагранжевой формулировки движения интерфейса (3.33) вместе с численными

методами сглаживания, регуляризации и лечения получило название методов отслеживания фронта.

Page 65: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

17

Чтобы избежать проблем неустойчивости, деформации элементов поверхности и сложных

хирургических процедур для восстановления топологии интерфейсов, предложено использовать

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

эволюции неявной функции φ используется уравнение простой конвекции (или переноса)

0=∇⋅+ φφ Vt (3.34)

где нижний индекс t обозначает производную по времени, а

zyxwvu φφφφ ++=∇⋅V .

Это уравнение в частных производных (PDE) определяет движение интерфейса ( ) 0=xφ в так

называемой Эйлеровой формулировке, согласно которому интерфейс захватывается неявной функцией

φ в противоположность Лагранжевому подходу отслеживания фронта. Уравнение (3.34) называют

также уравнением множества уровней. Оно также весьма популярно среди специалистов по теории

взрыва и горения, где получило название G-уравнения

0=∇⋅+ GGt

V , (3.35)

где ( ) 0=xG неявно представляет собой изоконтур реакции – поверхность фронта горения.

На декартовой сетке достаточно сложно работать с уравнением (3.34), если поле скоростей V

задано только на интерфейсе. Поэтому полагают, что оно задано не только на интерфейсе, где ( ) 0=xφ ,

но и за его пределами. Можно считать, что оно задано во всей области Ω , но для облегчения

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

содержащей интерфейсную границу. Ширина полосы зависит от численного метода решения уравнения

(3.34). Доопределение поля скоростей на всю полосу, если оно задано только на интерфейсе,

обсуждается в монографии [1].

Следует отметить, что ширина полосы ε должна быть существенно больше шага дискретизации

пространственной сетки x∆ во избежание того, что узлы сетки, не принадлежащие интерфейсу, но

Page 66: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

18

лежащие в его окрестности, дадут нулевой вклад в уравнение, если за пределами полосы скорость

положить равной нулю.

Относительно выбора скорости V используется правило: эта скорость принимается равной

скорости интерфейса в ближайшей его точке c

x . Поле скоростей, задаваемое в уравнении (3.34), может

создаваться различными источниками. Например, изоконтур ( ) 0=xφ может быть границей между двумя

различными жидкостями, движущимися согласно уравнению Навье-Стокса. Таким образом, скорость

интерфейса имеет пространственно-временную зависимость, и должна записываться в виде ( )t,xV , хотя

зависимость от координаты и от времени может быть опущена в записи для сокращения.

Формулы дифференцирования по времени и условие Куранта-Фридрихса-Леви

Как только ( )xφ и V заданы во всех точках сетки вблизи интерфейса, можно применять численные

методы для решения задачи о распространении ( )xφ по сетке во времени. В частности, явная формула

Эйлера дискретизации по времени

01

=∇⋅+∆

−+nn

nn

φφV , (3.36)

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

дифференцирования (3.3) – (3.5) неудовлетворительны. Перепишем уравнение (3.36), раскрыв

пространственные производные в виде

01

=+++∆

−+n

z

nn

y

nn

x

n

nn

wvut

φφφφφ

, (3.37)

И рассмотрим подробнее одномерный случай этого уравнения

01

=+∆

−+n

x

n

nn

ut

φφφ

, (3.38)

Т.к. nu может изменяться в пространстве, будучи определенной на узлах сетки

ix , (3.38) примет

вид

Page 67: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

19

( ) 0

1

=+∆

−+

n

ix

n

i

n

i

n

i ut

φφφ

, (3.39)

где ( )ix

φ обозначает пространственную производную от φ в узле i

x .Если точка интерфейса движется

вправо 0>i

u , необходимо использовать формулу численного дифференцирования (3.4), если же влево

0<i

u , то (3.3). Такой способ численного дифференцирования, когда выбор формулы осуществляется в

зависимости от знака правой части, называют дифференцированием «против течения», или неявным.

Явная формула Эйлера дифференцирования по времени и «против течения» по пространству

дают согласованную схему интегрирования уравнения (3.34). Стабильность численной схемы

обеспечивается выполнением условия Куранта-Фридрихса-Леви (CFL), вводящего ограничение на

временной шаг

( )u

xt

max

∆<∆ , (3.40)

в котором используется максимально возможное значение скорости. Выполнение условия Куранта-

Фридрихса-Леви обеспечивается обычно надлежащим выбором константы CFL

( )10

max<<=

∆∆ αα

x

ut . (3.41)

Близким к оптимальному значению является 9.0=α , а гарантированно устойчивая сходимость

имеет место при 5.0=α . В многомерном случае условие CFL принято записывать в модифицированном

виде

α=

∆+

∆+

∆⋅∆

z

w

y

v

x

ut max (3.42)

или

Page 68: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

20

( )( )

α=

∆∆∆⋅∆

zyxt

,,min

max V. (3.43)

Улучшение стабильности может быть достигнуто использованием численных формул

дифференцирования более высокого порядка точности, дальнейшим уменьшением временного шага

( )( )2~ xt ∆∆ и использованием методов типа Рунге-Кутта. Еще один искусственный прием состоит в

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

φµφφ ∆=∇⋅+ Vt

, (3.44)

где «коэффициент вязкости» µ выбирается пропорциональным x∆ . При этом с уменьшением шага

сетки снижается и коэффициент искусственно введенной вязкости.

Page 69: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

21

Лекция 4

Решение задачи оптимизации топологии конструкции с помощью Level Set метода

на примере кронштейна

Согласно используемому методу задача оптимизации (минимизации податливости ( )φC ) при

ограничениях на допустимый объем и заданном поле действующих сил f формулируется в виде

( ) ( )

( )( )( )

=⋅∇

Ω=

Ω

Ω

*

2

1min

VoldH

E

dDECT

φ

εφ

εεφφ

f , (4.1)

где Ω - область проектирования, σε , - тензоры деформаций и напряжений соответственно, E -

параметр оптимизации, определяемый посредством поверхности множества уровней

( ) ( ) ( )( )min0

1 EHHEE φφφ −+= , 0

E - модуль упругости материала, min

E - минимальный модуль упругости

(соответствует отсутствию материала), D - матрица упругости, *Vol - заданный в ограничении объем

материала в области проектирования, который всегда меньше общего объема материала ΩVol , ( )φH -

сглаженная функция Хевисайда, равная единице внутри области и нулю вне области, занятой

материалом.

С использованием множителя Лагранжа λ , задача (4.1) сводится к минимизации функционала

( ) ( ) ( )( ) Ω

−+= ∫

Ω

Ω dVolVolHDEJ T *

2

1,, φλεεφλφε , (4.2)

минимум которого достигается при 0=′J . Варьируя функционал (4.2) по φ на границе материала,

получаем

Page 70: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

22

( ) ( ) Ω⋅⋅∇⋅⋅

+−= ∫

Ω

dlDEEJT δφφδλεεδφ min0

2

1, (4.3)

где ( )φδ - сглаженная дельта-функция, равная нулю всюду кроме узкой полосы, содержащей границу,

lδ - вариация координаты вдоль нормали N к поверхности уровня 0=φ . Уравнение Эйлера-Лагранжа,

соответствующее минимуму функционала (4.2)

( ) ( ) 02

1min0

=∇⋅

+−−

∂φφδλεε

φDEE

t

T, (4.4)

которое должно быть решено с использованием начальных условий 0

φ , содержит вспомогательную

переменную t - псевдовремя. Множитель Лагранжа, представляющий собой параметр,

обеспечивающий сохранение заданной части объема, может быть выражен из (4.4) в явном виде при

условии, что начальное значение 0

φ удовлетворяет ограничению на заданный объем

( ) ( )

( )∫

Ω

Ω

Ω⋅∇

Ω⋅∇⋅⋅

=d

dDEET

φφδ

φφδεε

λ2

min02

1

. (4.5)

Для повышения стабильности численного решения (4.4) в его правую часть добавляется

диссипативный член

φαφφ

∆=∇⋅+∂

∂n

Vt

, (4.6)

где коэффициент вязкости α пропорционален размеру сетки и члену φ∇⋅n

V , который формально

может быть рассмотрен как скорость реакции. Согласованность метода обеспечивается устремлением

α к нулю.

Page 71: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

23

Таким образом, в 2D минимизация податливости конструкции формулируется как связанная

задача теории упругости и уравнение реакции-диффузии

( )( )

( ) ( )

∆=∇⋅

+−−

∂=⋅∇

φαφφδλεεφ

εφ

DEEt

E

Tmin0

2

1

f

(4.7)

с надлежащим начальным условием для 0

φ . Последнее означает, что ограничение на занимаемый

объем должно быть предусмотрено уже в начальном условии, т.е. требуемый объем материала

должен быть удален путем вырезания в области проектирования полостей какой-либо простой

формы.

Задание начального условия для φ в модели

В окне Constants задается радиус вырезаемых отверстий

radiu 0.797 0.797

В окне Scalar Expressions формируются булевские операции задания области, занятой

материалом. Это прямоугольник – область проектирования и 12 отверстий. Отверстия последовательно

попарно объединяются, затем вырезаются из прямоугольника 60;80 ≤≤≤≤ yx . В модели принято

определение функции φ , отличное от определения, данного в монографии [1], а именно,

( ) ( )( ) ( )

( ) ( )

Ω∈<

Ω∂∈=

Ω∈>

+

voidxx

boundaryxx

materialxx

0

0

0

φ

φ

φ

, (4.8)

т.е. в области, занятой материалом, функция φ положительна. В качестве φ используется знаковая

функция дистанции, определенная в [1].

Page 72: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

24

circle1 min(sqrt((x-1)^2+(y-1)^2)-radiu,sqrt((x-3)^2+(y-1)^2)-radiu

circle2 min(sqrt((x-5)^2+(y-1)^2)-radiu,sqrt((x-7)^2+(y-1)^2)-radiu)

circle3 min(sqrt((x-1)^2+(y-3)^2)-radiu,sqrt((x-3)^2+(y-3)^2)-radiu)

circle4 min(sqrt((x-5)^2+(y-3)^2)-radiu,sqrt((x-7)^2+(y-3)^2)-radiu)

circle5 min(sqrt((x-1)^2+(y-5)^2)-radiu,sqrt((x-3)^2+(y-5)^2)-radiu)

circle6 min(sqrt((x-5)^2+(y-5)^2)-radiu,sqrt((x-7)^2+(y-5)^2)-radiu)

circles1 min(min(circle1,circle2),min(circle3,circle4))

circles2 min(circle5,circle6)

circle_all min(circles1,circles2) Union of all holes

outframe min(min(x,8-x),min(y,6-y)) Design domain

level_ini min(circle_all,outframe) Initial level

Интересно определить долю начального объема, занятого материалом. Она равна

( ) 501.068

797.01268

68

1268 22

0

* =⋅

⋅⋅−⋅=

⋅⋅−⋅=Ω ππ radiu

VolVol .

Вычисление множителя Лагранжа (5)

Величина λ определяется путем интегрирования по области проектирования. Используемый

метод вычисления предполагает, что начальное значение 0

φ точно удовлетворяет ограничению на

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

Однако, так как в процессе оптимизации это ограничение может нарушаться из-за перемещения границ,

для соблюдения ограничения к функционалу (4.2) добавляется штрафной параметр

( )*_2

1Volarealm −β , (4.9)

Page 73: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

25

где β - аннулирующий фактор, arealm _ - значение объема материала на каждом шаге итерации,

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

выполнение ограничения и может использоваться даже в тех случаях, когда начальное значение 0

φ не

согласуется с ограничением на занимаемый объем. В частности, если ограничение имеет вид

( )∫Ω

Ω⋅=Ω VoldH 3.0φ

при начальном условии на 0

φ таком, что

( )∫Ω

Ω⋅=Ω VoldH 5.00

φ ,

как в рассматриваемом случае.

В модели используется встроенная функция Хевисайда h)flc2hs(x, , где h- ширина полосы

«размазывания». Дельта-функция h)fldc2hs(x, определяется в окне Functions как производная функции

Хевисайда. Ширина полосы «размазывания» 2.0=hmesh задается в окне Constants.

При решении уравнения (4.7) возникает необходимость вычисления скорости изменения

функции φ . Эту скорость нет необходимости определять на всей области проектирования, а достаточно

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

Ширина этой полосы, естественно, зависит от шага сетки. Здесь принята ширина, равная 1..2 размерам

сетки, обеспечиваемая радиальной базисной функцией

( )121 +−= rf

rbf, (4.10)

которая оформлена в окне Functions как

( ) )h)^-(phi/hmes()h)<((phi/hmes)h)>-((phi/hmeshmeshphiflrbf 12111, ⋅⋅= ,

а ее производная

Page 74: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

26

0111211d

d), i/hmesh)^/hmesh*(ph(-)h)<((phi/hmes)h)>-((phi/hmes

phi

flrbf⋅⋅= .

Это означает, что

( )

<

=

10

11

12

h

hhf

rbfφ

φφ

φ (4.11)

Так как в качестве φ используется знаковая функция дистанции, при движении границы в

итерационном процессе характеристики дистанции могут искажаться. Существует подход,

предусматривающий реинициализацию этой функции на каждом шаге, но требующий для этого

решения дополнительного уравнения типа Гамильтона-Якоби и прерывания итерационного процесса. В

модели использован иной подход, когда при решении (4.7) величина градиента функции φ заменяется

его предельной величиной согласно правилу

( )φφ ∇→∇ max,min grad . (4.12)

Величина maxgrad задается в окне Constants равной 1.

Механические свойства материала задаются следующим образом.

В окне Constants задан параметр youngdiff=0.999, далее последовательно:

В окне Scalar Expressions задается параметр

young_moduli=0.001+youngdiff*flc2hs(phi,hmesh),

равный единице в области, занятой материалом и 0.001 в пустотах.

Далее, в библиотеке материалов Library Material определяется материал Mat1 с параметрами 2.06E5*liyoung_moduMat1_E ==E

7800Mat1_rho ==rho

Page 75: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

27

0.3Mat1_nu ==nu .

Во всех используемых далее математических выражениях фигурируют параметры nurhoE ,, ,

получившие свои значения при задании свойств материала в окне Subdomain Setting (режим Plane Stress

(ps)).

Вычисление Лагранжевого множителя lm_beta производится путем последовательного

вычисления интегралов (Integration Coupling Variables – Subdomain Variables):

- знаменатель в формуле (4.5)

lm_dm = ∫Ω

Ωd fldc2hs(φ, h)×flrbf(φ, h) ×min(grad max, |∇φ|)

в модели имеет имя lm_fm и оформлен в модели как

lm_fm= ∫Ω

fldc2hs(phi,hmesh)*flrbf(phi,1.0*hmesh)*min(gradmax,sqrt(phix^2+phiy^2)).

- числитель в формуле (4.5)

( ) ( ) ( )

∇×××

−Ω= ∫

Ω

φφφεε max,min,,22

_ min0 gradhflrbfhhsfldcDEE

dnmlmT

в модели имеет имя lm_fz и оформлен в модели как

lm_fz= ∫Ω

Ωd -youngdiff/2*energy*fldc2hs(phi,hmesh)*flrbf(phi,1.0*hmesh)*

min(gradmax,sqrt(phix^2+phiy^2)),

где energy вычисляется в окне Scalar Expressions согласно выражению

energy= min(4.5,100000*E*(ex^2+ey^2+(1-nu)*exy^2/2+2*ex*ey*nu)/(1-nu^2)).

Лагранжев множитель lm_beta вычисляется как скалярное выражение в окне Scalar Expressions делением

lm_beta= lm_fz/lm_fm.

Page 76: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

28

Для вычисления ограничения (выражение (9)) в окне Integration Coupling Variables – Subdomain Variables определяется актуальная площадь конструкции на каждом шаге итерации

50202_ .*hmesh)-.hs(phi,flcdarealm ∫Ω

Ω= .

Вычисление целевой функции энергии деформации 2_ εε DenergylmT= также производится

интегрированием по области

∫Ω

Ω= )-nu^/(*ex*ey*nu)+/-nu)*exy^+(+ey^*E*(ex^denergylm 21222122100000_ .

Коэффициент при φ∇ в (4.7), имеющий смысл интенсивности источника в уравнении диффузии,

вычисляется также интегрированием по области.

( ) ( ) ( ) ( )φφεεφφδλεε ∇××

+⋅

−→∇⋅

+− max,min,_

22

1min0

min0gradhflrbfbetalmD

EEDEE

TT

Задание производится в окне Integration Coupling Variables – Subdomain Variables

Ω= ∫Ω *hmesh).hi,))*flrbf(p+phiy^^,sqrt(phix(grad

)**t*lm_areae-_beta-*energy+lmf/*(youngdifdsourcelm

0122maxmin

3125_

Значение lm_source служит для проверки сходимости градиентного спуска к нулю.

Структура уравнения для φ

Использована общая форма PDE

Fdetatta

=Γ⋅∇++ φφ , (4.13)

где:

- массовый коэффициент 0=a

e ;

- коэффициент демпфирования (диссипативный) 1=a

d ;

Page 77: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

29

- вектор потока

⋅−=Γ

y

x

φ

φ01.0 ;

- интенсивность источника *hmesh).hi,))*flrbf(p+phiy^^,sqrt(phix(grad

)**t*lm_areae-_beta-*energy+lmf/*(youngdifF

0122maxmin

3125=

Сравнивая полученное уравнение со вторым уравнением (4.7), приведенным ниже,

( ) ( ) φαφφδλεεφ

∆=∇⋅

+−−

∂DEE

t

T

min02

1,

заключаем, что умножение оператора «набла» на вектор потока дает лапласиан, а коэффициент 01.0=α .

Фактор arealm _ уже содержит ограничение на занимаемый объем 0.5, а аннулирующий фактор в (4.9)

равен te ⋅−= 312β .

Литература

1. Osher S., Fedkiw R. Level set methods and dynamic implicit surfaces // 2003 Springer-Verlag New York,

288 p.

Page 78: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

1

Лекция 5

ESO и BESO методы оптимизации топологии конструкций

Методы эволюционной оптимизации конструкций (Evolutionary Structural Optimization - ESO) и

двунаправленной эволюционной оптимизации конструкций (Bi-directional Evolutionary Structural

Optimization - BESO) наиболее интенсивно изучаются и развиваются в последние годы. Особенно

эффективно применение этих методов при оптимизации топологии непрерывных структур, т.е. при

нахождении наилучшего размещения и геометрии пустот внутри области моделирования. Кроме того,

этот тип оптимизации может применяться не только для оптимизации натурных достаточно

крупногабаритных конструкций, но и для оптимального дизайна материалов на микро- и наноуровне

Метод ESO, основанный на определении уровня напряжений

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

конечных элементов. Надежным индикатором неэффективного использования материала является

низкий уровень напряжений (или деформаций) в этой части. В идеале уровень напряжений в

конструкции должен быть одинаковым, близким к предельному, но безопасному значению. Из этой

концепции следует принцип удаления материала, согласно которому недостаточно нагруженный

материал может быть удален. Удаление материала приводит, таким образом, к удалению отдельных

элементов конечноэлементной модели.

Уровень напряженности каждого элемента определяется сравнением, например, напряжений

Мизеса этого элемента vm

eσ с максимальным значением напряжений Мизеса в конструкции vm

maxσ . Если в

результате конечноэлементного анализа элемент удовлетворяет условию

Rivm

vm

e ℜ<maxσ

σ, (5.1)

Page 79: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

2

где Riℜ - пороговое отношение удаления, то данный элемент удаляется. Цикл выполнения

конечноэлементного анализа выполняется до тех пор, пока в структуре не останется ни одного

элемента, удовлетворяющего условию (5.1). После выполнения этого цикла к пороговому отношению

удаления добавляется эволюционное отношение iℵ

iRiiR ℵ+ℜ=ℜ + )1( , (5.2)

и с увеличенным значением порогового отношения удаления цикл производится до достижения нового

стационарного состояния. Такой итерационный процесс двукратной вложенности продолжается до тех

пор, пока не достигнут желаемый оптимум. Например, пока не будет удален весь материал из областей,

где уровень напряженности не превышает 25% от максимального. Такой эволюционный процесс может

быть записан в форме алгоритма следующим образом.

Шаг 1. Дискретизация структуры с использованием густого конечноэлементного разбиения;

Шаг 2. Выполнение конечноэлементного анализа структуры;

Шаг 3. Удаление элементов, удовлетворяющих условию (5.1);

Шаг 4. Увеличение порогового отношения удаления согласно (5.2), если достигнуто стационарное

состояние;

Шаг 5. Повторение алгоритма с Шага 2 до Шага 4 до получения желаемого оптимума.

Page 80: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

3

Пример рамы, состоящей из двух стержней

Ниже приведен пример консольной рамы размерами 24*10м толщиной 1 мм. Сдвигающее усилие

интенсивностью 1 МПа приложено к центральному участку правого ребра области дизайна.

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

элементов. В расчете использованы значения %10 =ℵ=ℜR . Оптимальное решение в виде

двухстержневой рамы получено за 30 итераций.

Рис. Этапы процесса оптимизации

конструкции консольной рамы

Из рисунка, где изображен процесс

последовательного удаления

материала, видно как с увеличением

Riℜ конструкция все более

превращается в двухстержневую раму.

Riℜ последовательно принимает

значения 3%, 6%, 9%, 12%, 15%, 18%,

21%, 24%, 30%

Page 81: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

4

Пример двухопорной балки

Двухопорная плита нагружается посередине сосредоточенной силой. МКЭ разбиение 50*25

прямоугольных элементов. %5,0%;10 =ℵ=ℜR . Оптимальное решение в виде симметричной арки

получено за 50 итераций. Сравнение двух рисунков показывает, что результат сильно зависит от типа

опирания (неподвижное, скользящее).

Рис. Этапы процесса оптимизации конструкции двухопорной рамы. Обе опоры шарнирные.

Riℜ последовательно принимает значения 5%, 10%, 15%, 20%, 25%

Page 82: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

5

Рис. Этапы процесса оптимизации конструкции двухопорной рамы.

Левая опора шарнирная, правая – шарнир, допускающий скольжение вдоль горизонтального

направления.

Riℜ последовательно принимает значения 5%, 10%, 15%, 20%, 25%

Page 83: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

6

. Индекс чувствительности и эволюционная процедура

Жесткость является одним из ключевых факторов, принимаемых во внимание при

проектировании конструкций. Наряду с жесткостью рассматривается также средняя податливость -

величина обратная жесткости конструкции. Среднюю податливость можно определить как энергию

деформации конструкции или как работу приложенных внешних сил

ufT

C2

1= (5.3)

где f - вектор внешних сил и u - вектор смещений.

При конечноэлементном анализе уравнение статического равновесия выражается в виде

fKu = , (5.4)

где K - глобальная матрица жесткости. Когда i - й элемент удаляется из структуры, матрица жесткости

меняется на

i

*KKK∆K −=−= , (5.5)

где *K - матрица жесткости структуры после удаления i-го элемента, а iK - матрица жесткости i-го

элемента. Предполагается, что удаление элемента не повлияет на действующую нагрузку. Варьируя

обе части уравнения (5.4), и пренебрегая членами второго порядка малости, изменение вектора

смещения можно записать в виде

∆KuK∆u1−

−= . (5.6)

Из (5.3) и (5.6) следует

iC uKu2

1∆KuKf

2

1∆uf

2

1i

T

i

1TT=−==∆

− . (5.7)

где i

u представляет собой вектор смещения i-го элемента. Следовательно, индекс чувствительности для

средней податливости может быть определен как

Page 84: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

7

ii uKu2

1i

T

i=

lα (5.8)

Уравнение (5.8) показывает, что увеличение средней податливости в результате удаления i-го

элемента равно просто энергии деформации этого элемента. Для минимизации средней податливости

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

элементы с минимальным значением iα , чтобы увеличение податливости было минимальным.

Число элементов, подлежащих удалению, определено отношением удаляемых элементов Rℜ ,

которое представляет собой отношение числа удаляемых элементов на каждой итерации к общему

числу элементов актуальной конечноэлементной модели. Эволюционная процедура для оптимизации

жесткости записывается в форме следующего алгоритма:

Шаг 1. Дискретизация структуры с использованием густого конечноэлементного разбиения;

Шаг 2. Выполнение конечноэлементного анализа структуры;

Шаг 3. Вычисление индекса чувствительности каждого элемента по уравнению (5.8);

Шаг 4. Удаление элементов с минимальным индексом чувствительности, используя отношение Rℜ ;

Шаг 5. Повторение алгоритма с Шага 2 до Шага 4 пока средняя податливость полученной структуры не

достигнет предварительно заданного предела.

Необходимо отметить, что, в отличие от оптимизационной процедуры, использующей уровень

напряжений, оптимизация по средней податливости не может быть доведена до стационарного

состояния. Если достижение такого состояния не требуется, алгоритм может быть в ряде случаев весьма

эффективным. Однако, иногда ситуация осложняется тем, что в процессе оптимизации могут возникать

нестабильные структуры.

Page 85: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

8

Аналогично оптимизации по общей податливости структуры индекс чувствительности может

быть выведен при ограничениях на смещения, т.е. когда вводится ограничение на смещения в заданных

точках структуры.

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

результат существенно зависит от величины ℜ . Причем, уменьшение этой величины приводит к более

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

жесткости двухопорной балки, загруженной центральной сосредоточенной силой, при Rℜ =1%

использование материала составляет 50.33%, при Rℜ =2% - 52.42%, при Rℜ =4% - 54.25% (см. рис).

Подытоживая, можно сказать, что математическая основа метода ESO чрезвычайно проста и

понятна, а его программная реализация не требует сложных приемов программирования. Метод может

быть использован совместно с коммерческими конечноэлементными пакетами без внедрения в их

исходные коды. Метод не предполагает наличия "серых" областей. Метод в равной степени применим к

2D и 3D задачам. Удаление элемента производится присвоением его модулю нулевого значения, что

приводит к его игнорированию при последующем вычислении глобальной матрицы жесткости. По мере

удаления элементов в итерационном процессе число уравнений уменьшается, снижая вычислительную

трудоемкость задачи, что особенно важно для 3D задач.

Однако, удаленный на ранних итерациях материал может быть полезен на последующих, но

метод ESO не позволяет восстановить удаленный материал. Таким образом, в ряде случаев, он не

позволяет получить оптимального решения.

Эти недостатки в значительной степени устраняются в методе BESO.

Page 86: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

9

Рис. Зависимость объема использованного материала от порогового отношения удаления

(a) - Rℜ =1%. V*=50.33%; (b) - Rℜ =2%, V*=52.42%; (c) - Rℜ =4%, V*=54.25%

Page 87: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

10

Двунаправленный эволюционный метод оптимизации конструкций

Этот метод позволяет одновременно удалять и добавлять материал в области проектирования.

Принципиальное отличие метода от ESO заключается в том, что индекс чувствительности пустых

элементов определяется путем линейной экстраполяции поля смещений, получаемого в результате

конечноэлементного анализа. После этого заполненные элементы с минимальными значениями индекса

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

чувствительности заполняются материалом. Количества удаляемых и добавляемых элементов на

каждой итерации определены двумя независимыми друг от друга параметрами: отношением удаления

Rℜ и отношением включения Iℜ .

Метод BESO также применялся с использованием принципа максимальной напряженности,

когда удаление и добавление элементов производилось на основе использования критерия Мизеса и

задаваемых значений Rℜ и Iℜ . Такой способ ранжирования элементов весьма громоздок и нелогичен.

Пользователь должен тщательно выбирать значения Rℜ и Iℜ для получения оптимального решения.

Другая проблема ранних версий BESO – это достаточно малая вычислительная производительность,

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

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

функционала при этом весьма хаотична.

Теоретически задача оптимизации 0/1 топологии в общем случае в своей континуальной

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

конечноэлементной сетки введение большего количества пустот при том же объеме материала дает

более эффективную структуру. Это явление, может рассматриваться как численная нестабильность, при

которой вместе с измельчением сетки возникает все большее число пустот, и получило название

сеточной зависимости решения. Поэтому важнейшими вопросами, требующими решения при создании

Page 88: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

11

численного метода оптимизации топологии, являются корректность постановки задачи, возникновение

картин шахматной доски, сеточная зависимость и сходимость решения.

Постановка задачи и индекс чувствительности

Необходимо отметить, что в традиционных методах и подходах формулировки целевого

функционала и ограничений весьма нечетки, особенно, при оптимизации жесткости. Оригинальный

метод ESO формулируется как минимизация объема материала при заданной требуемой податливости

или смещении. Однако при больших значениях Rℜ или неудачном формулировании ограничений метод

может давать решения, значительно худшие, чем оптимальное. Чтобы избежать получения плохих

решений, Liang в качестве индекса производительности принимал произведение масса×податливость.

Когда значение этого индекса резко падало в процессе итераций, алгоритм останавливался.

Недостатком такого подхода была преждевременная остановка алгоритма.

Поскольку в методах ESO/BESO удаление или добавление материала производится путем

удаления или добавления элементов, сами элементы могут рассматриваться как переменные

проектирования. Задача оптимизации с ограничением на объем формулируется следующим образом

ufT

CMinimize2

1= (5.9а)

При

==−∑= 1

0;0

1

*

i

N

i

ii xxVV , (5.9, b,c)

где f и u векторы приложенных сил и смещений соответственно, а C имеет смысл средней

податливости. iV - объем одного элемента, *V - наперед заданный объем конструкции, N - количество

элементов в области проектирования. Переменная ix описывает наличие или отсутствие материала.

Page 89: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

12

Такая постановка задачи используется достаточно широко, но она отличается от постановки в

методах типа ESO/BESO, т.к. метод не сходится при ограничении на объем в форме (5.9,b). Когда один

материальный элемент удаляется из структуры, изменение средней податливости или общей энергии

деформации равно энергии деформации удаленного элемента. Это изменение называют индексом

чувствительности элемента и определяют как

ii

T

iuKu

2

1=∆= C

e

iα , (5.10)

где iu - вектор узлового смещения i-го элемента, i

K - матрица жесткости элемента. При разбиении с

неоднородной сеткой, очевидно, индекс чувствительности зависит от объема элемента. Тогда более

эффективно применение характеристики чувствительности в виде плотности энергии деформации

элемента

ii

e

i Ve

==

ii

T

iuKu

2

1α . (5.11)

Для пустых элементов индекс чувствительности изначально полагается равным нулю. Для

добавления материала внутри области проектирования используется схема фильтрации для пустых

элементов и для сглаживания индекса чувствительности внутри области проектирования. Такие схемы

обеспечивают также разрешение конфликтов, связанных с образованием «шахматного поля» и

зависимостью от разбиения.

Page 90: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

13

Схема фильтрации и улучшенный индекс чувствительности

Проблемы «шахматного поля» и зависимости от сеточного разбиения

При дискретизации непрерывной структуры на конечные элементы низкого порядка индекс

чувствительности может терпеть разрыв на границах элементов, что ведет к образованию топологии в

виде «шахматного поля», как это показано на рисунке. Такая топология не поддается

удовлетворительной интерпретации, а соответствующую «оптимальную» конструкцию трудно

изготовить. Чтобы предотвратить образование «шахматного поля» Li предложил простую схему

сглаживания усредненных индексов чувствительности соседних элементов. Эта схема, однако, не

позволяет избежать зависимости от сеточного разбиения.

Рис. Типичная картина «шахматного поля», возникшая при работе BESO – алгоритма оптимизации

топологии

Page 91: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

14

Смысл проблемы зависимости от сеточного разбиения заключается в получении различных

«оптимальных» топологий при изменении конечноэлементной сетки. При измельчении сетки алгоритм

оптимизации создает структуры с более мелкими структурными элементами, хотя в идеале этого быть

не должно. Для преодоления этой трудности применялись подходы, основанные на методе контроля

периметра и фильтрации индекса чувствительности. Так, Yang с сотрудниками продемонстрировали

способность алгоритма с контролем периметра получать решения, независимые от густоты сеточного

разбиения. Однако задание ограничения на периметр представляет собой достаточно сложную задачу, к

тому же носящую характер значительного произвола. Поэтому использование схем фильтрации

чувствительности представляется более обоснованным и предпочтительным.

Схема фильтрации в методе BESO

Перед применением схемы фильтрации определяются узловые индексы чувствительности

согласно

∑=

=M

i

e

ii

n

j w1

αα , (5.12)

где M - число элементов, примыкающих к j-му узлу, iw - весовые коэффициенты каждого i-го

элемента, удовлетворяющие соотношению

11

=∑=

M

i

iw

и определяемые равенством

−= ∑

=

M

i

ijiji rrM

w1

11

1, (5.13)

где ijr - расстояние между центром i-го элемента и j-м узлом.

Page 92: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

15

Введенная узловая чувствительность

должна быть далее преобразована в сглаженную

чувствительность элементов с использованием

фильтрации. Характерный размер фильтра minr не

должен изменяться с изменением сеточного

разбиения. Величина minr создает круговую

подобласть iΩ , центрированную в центре i-го

элемента, которая должна накрывать несколько

соседних элементов.

Узлы, расположенные внутри iΩ создают вклад в улучшенную чувствительность i-го элемента согласно

( )

( )∑

=

==

K

j

ij

K

j

n

jij

i

rw

rw

1

1

α

α , (5.14)

где K – общее число узлов, содержащихся в подобласти iΩ , и ( )ijrw - линейные веса, определяемые как

( )ijij rrrw −= min (5.15)

Очевидно, сглаживая индексы чувствительности по всей области проектирования, схема

фильтрации автоматически присваивает ненулевые значения индексов пустым элементам. Если такой

пустой элемент находится вблизи элемента с высоким индексом чувствительности, то этот пустой

Page 93: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

16

элемент может получить ненулевое значение индекса и быть заполненным на следующей итерации.

Предложенная схема фильтрации более предпочтительна в сравнении со схемой, разработанной

Sigmund и Petersson, использовавших в фильтре значения плотности, что приводило к бесконечным

значениям чувствительности пустых элементов.

В результате работы фильтра (5.14) пустым элементам, имеющим нулевое значение индекса,

присваивается ненулевое значение, зависящее от значений индексов прилежащих заполненных

элементов.

Описанная схема фильтрации является эвристической, но ее использование позволяет избежать

проблем, связанных с образованием «шахматных полей» и зависимостью «оптимального» решения от

конечноэлементного разбиения.

Стабилизация эволюционного процесса

При всей эффективности описываемых методов ESO/BESO в ряде случаев целевой функционал и

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

осцилляциях функционала и резких изменениях соответствующей топологии. Причиной этого является

использование целочисленных значений 0-1 переменных проектирования, что соответствует

отсутствию-наличию материала внутри элемента. Устранение этой трудности было предложено Huang

и Xie путем применения простой схемы усреднения

2

1−+

=ki

ki

i

ααα , (5.16)

где k - номер текущей итерации. На следующей итерации полагают kii αα = и т.д. Как показывает

пример на рисунке, применение техники стабилизации в соответствии с уравнением (5.16) существенно

повышает устойчивость итерационного процесса. Huang и Xie показано, что использование этого

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

Page 94: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

17

Рис. Сравнение историй эволюционного процесса без применения (а) и с использованием (b) схемы

фильтрации (5.16)

Добавление/удаление элементов и критерий сходимости

Перед добавлением или удалением элемента из проектируемой структуры ее желаемый объем

1+kV на следующей итерации должен быть задан. На каждом шаге итерации объем структуры будет

изменяться, пока не достигнет заданного значения *V . Эволюция объема в итерационном процессе

может быть выражена как

( ) ( ),...2,111 =ℜ±=+ kVV Ekk , (5.17)

Page 95: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

18

где Eℜ - скорость эволюции объема. Когда ограничение на объем удовлетворяется, т.е. при некотором

k, таком что *VVk = , дальнейшие итерации производятся без изменения объема, и определение индекса

чувствительности пустых и заполненных элементов производится, как описано выше. Элементы

сортируются согласно своим значениям индекса чувствительности (от больших - к меньшим).

Заполненные элементы удаляются (получают нулевое значение псевдоплотности), если th

deli αα ≤ , (5.18)

а пустые подлежат заполнению при выполнении условия th

addi αα > , (5.19)

где th

add

th

del αα , - соответственно пороговые значения чувствительности для удаляемых и добавляемых

элементов, причем всегда th

add

th

del αα < . Эти пороговые значения определяются следующей трехшаговой

процедурой:

Шаг 1. Полагают th

th

add

th

del ααα == , и thα определяют следующим образом, Пусть структура содержит в

области проектирования 1000 элементов, и 100021 ...ααα >> , а 1+kV соответствует структуре с 725

заполненными элементами. Тогда 725αα =th .

Шаг 2. Вычисляем отношение добавляемого объема Aℜ , которое вычисляется как отношение числа

добавляемых элементов к полному числу элементов в структуре. Если maxAA ℜ<ℜ , где maxAℜ есть

предопределенное отношение добавляемого объема, пропускаем шаг 3. В противном случае

пересчитываем th

add

th

del αα , как на шаге 3.

Шаг 3. Вычисляем th

addα , предварительно рассортировав индексы чувствительности пустых элементов.

Число элементов, заполняемых на этом шаге равно maxAℜ , умноженному на общее число элементов.

Page 96: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

19

th

addα представляет собой индекс чувствительности элементов, точно располагающихся ниже последних

добавленных элементов. th

delα затем определяется так, что удаляемый объем равен ( +− +1kk VV объем

добавляемых элементов).

Величина maxAℜ назначается такой, чтобы на одной итерации добавлялось не слишком много

элементов, это, как правило, несколько больше 1%. Следует отметить, что в новейшей модификации

метода BESO и пустые и заполненные элементы ранжируются совместно.

Цикл конечноэлементных вычислений и удаления/добавления элементов продолжается до тех

пор, пока достигается целевой объем *V , и удовлетворяется критерий сходимости

r

C

CC

ErN

i

ik

N

i

iNk

N

i

ik

=

∑∑

=

+−

=

+−−

=

+−

1

1

1

1

1

1

, (5.20)

где k - номер текущей итерации, r - допустимый параметр сходимости и N - целое число, обычно

принимаемое равным 5, что означает малость изменения средней податливости в течение последних 10

итераций.

Page 97: Раздел курса САЕ системы в авиастроенииcme.donstu.ru/attachments/Metod_CAESystem_24.03.04Avia_27.08.… · Лекция 1 Оптимизация

20

Основные процедуры метода BESO 1. Дискретизация области проектирования с использованием конечноэлементного разбиения и

присвоение начальных значений (0 или 1) всем элементам для создания начальной структуры.

2. Выполнение МКЭ анализа, определение индексов чувствительности элементов согласно

( ) ( )∑∑==

=K

j

ij

K

j

njiji rwrw

11

αα .

3. Усреднение индекса чувствительности в соответствии с историей, используя

2

1−+=

k

i

k

ii

ααα

и сохранение полученных данных для следующей итерации.

4. Определение целевого объема для следующей итерации согласно ( ) ( ),...2,111 =ℜ±=+ kVV Ekk

5. Добавление и удаление элементов в соответствии с алгоритмом, изложенным в разделе

«Добавление/удаление элементов и критерий сходимости».

6. Повторение шагов 2-5 пока ограничение на объем *V не будет выполнено и не достигнуто условие

сходимости

rCCCErN

i

ik

N

i

iNk

N

i

ik ≤−= ∑∑∑=

+−

=

+−−

=

+−

1

1

1

1

1

1