
Информатика 2 сессия / Численные методы решения задач строительства на ЭВМ
.pdf
Численные методы оптимизации
возможность существования статически определимых и вырожденных ферм (т.е., допускает Fi = 0) и не вводится ограничений по жесткости и конструктивных, при учете которых задача оптимизации станет нелинейной.
nЗадача 8.3. Пусть требуется найти наивыгоднейшее сечение балки постоянного двутаврового сечения, загруженной равномерно распределенной нагрузкой (рис.8.6), которое удовлетворяло бы
требованиям прочности и жесткости.
Рис.8.6. К задаче 8.3
В качестве целевой функции возьмем объем балки [10]
Z(min)=F×l. |
|
|
(8.33) |
Условие прочности можно записать: |
|
||
М £ snW, или W - |
M |
³ 0 |
или |
|
|||
|
sn |
|
W - |
ql 2 |
|
|
³ 0 , |
|
|
||
|
8sn |
где М – максимальный изгибающий W –момент сопротивления сечения; sn напряжения.
(8.34)
момент в сечении балки;
– нормируемая величина
Условие жесткости: |
D £ Dn |
или |
|||
Dn - |
|
5ql |
³ 0 , |
(8.35) |
|
384EJ |
|||||
|
|
|
283

Численные методы оптимизации
где: D – максимальный прогиб балки; Dn – нормируемая величина прогиба; Е – модуль упругости материала балки; J – момент инерции сечения.
Для тонкостенного двутаврового сечения с точностью до малых величин можно считать
F = 2Fn |
+ Ht ; |
|
|
(8.36) |
|||||||
|
tH 3 |
|
|
F H 2 |
|
||||||
J = |
|
|
|
+ |
|
n |
|
|
|
; |
(8.37) |
12 |
|
|
|
2 |
|
||||||
|
|
|
|
|
|
|
|
||||
W = |
|
2J |
= |
tH |
2 |
|
+ F H , |
(8.38) |
|||
|
|
|
|
|
|
|
|||||
|
|
H |
|
6 |
|
|
|
n |
|
||
|
|
|
|
|
|
|
|
где Fn – площади полок двутаврового сечения; Fcm=Ht – площадь стенки сечения. Толщина стенки t считается заданной.
Отсюда |
|
F = |
W |
|
- |
tH |
; |
|
|
(8.39) |
||||
|
|
|
|
|
|
|
||||||||
|
|
n |
H |
6 |
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|||||||
|
|
F = |
|
2W |
+ |
2tH |
. |
|
(8.40) |
|||||
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
H |
3 |
|
|
|
||||||
Переменными проектирования можно считать момент |
||||||||||||||
сопротивления сечения W и высоту сечения балки h. |
|
|||||||||||||
Перейдем |
к |
безразмерным |
параметрам. |
Введем |
||||||||||
относительный параметр х1 по условию |
|
|
||||||||||||
|
|
W = x |
ql 2 |
|
|
|||||||||
|
|
|
. |
|
|
(8.41) |
||||||||
|
|
|
|
|
||||||||||
|
|
|
1 |
8sn |
|
|
||||||||
Тогда условие прочности (8.34) запишется как |
|
|||||||||||||
|
|
х1–1 ³0. |
|
(8.42) |
||||||||||
Замена момента |
инерции |
|
J |
его выражением (8.37) |
приводит |
|
x1H - |
5snl 2 |
|
условие жесткости к виду |
|
³ 0 . |
|
|
|||
|
|
24EDn |
284

Численные методы оптимизации |
|
|
||
Введем параметр х2 |
по условию H = x2 |
5snl |
2 |
, тогда условие |
|
|
|||
жесткости можно записать |
24EDn |
|||
|
|
|
||
|
х1х2-1³0. |
|
(8.43) |
Наконец, целевую функцию (8.33) также выразим через
безразмерные параметры х1 и х2. После подстановки и
преобразования получим
|
|
æ |
|
x |
1 |
|
|
|
|
|
|
ö |
|
|
|
|
||||||
|
|
ç |
|
|
|
|
|
|
|
|
÷ |
|
|
|
|
|||||||
|
V = Aç |
|
|
|
|
+ cx2 ÷ , |
|
|
|
|
||||||||||||
|
|
|
|
|
è x |
2 |
|
|
|
|
|
|
ø |
|
|
|
|
|||||
|
|
|
6 ql |
2 |
|
|
æ |
|
E |
ö |
|
D |
|
ö |
|
|
||||||
|
|
|
|
|
|
|
|
|
æ |
|
|
n |
|
|
||||||||
где |
A = |
|
|
|
|
|
|
|
|
ç |
|
|
|
|
֍ |
|
|
÷ , |
|
|
||
|
5 s |
|
|
|
|
|
|
|
|
l |
|
|
|
|||||||||
|
|
|
|
|
|
ç s |
|
|
÷ |
|
|
ø |
|
|
||||||||
|
|
|
|
|
|
|
n |
|
|
è |
|
|
|
|
è |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
n ø |
|
|
|
|
|
|
|||||
|
|
|
25 snt æ sn |
ö2 |
æ |
l |
ö |
2 |
||||||||||||||
|
c = |
|
|
|
|
|
|
|
|
|
|
|
ç |
|
|
|
÷ |
ç |
|
÷ . |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
216 |
|
|
q |
|
è E |
ø |
ç |
|
÷ |
|
||||||||||
|
|
|
|
|
è Dn ø |
|
(8.45),
(8.46)
(8.47)
Итак, мы сформулировали следующую задачу нелинейного программирования в безразмерных параметрах:
минимизировать целевую функцию
Zmin = |
x1 |
+ cx2 |
(8.48) |
x2 |
|||
при условиях прочности и жесткости |
|
||
х1–1 ³0; |
х1х2–1 ³0; |
(8.49) |
|
и ограничениях |
|
|
|
х1³0, х2³0. |
(8.50) |
Решение задачи мы получим позднее, когда рассмотрим методы решения задач нелинейного программирования.
285

Численные методы оптимизации
8.3. Задачи линейного программирования
Если говорить о математической стороне дела, то можно отметить, что наибольшее распространение получили методы линейного программирования. Это объясняется широким практическим приложением, а также доступностью и простотой использования программ для ЭВМ, реализующих эти методы. К
задачам ЛП удается свести большое количество задач управления и экономики и очень редко – задачи технического проектирования конструкций. Рассмотрим общую постановку задач ЛП, некоторые схемы типичного применения и методы их решения.
8.3.1. Общая постановка задачи ЛП
Задача линейного программирования (ЛП) формулируется следующим образом: требуется найти экстремум (min/max) линейной функции n независимых переменных (проектных параметров) x1, x2, .., xn [18, 21, 23]:
n |
|
Zmin = c1 x1 + c2 x2 + ... + cn xn = åci xi |
(8.51) |
i=1
при ограничениях, наложенных на переменные в виде линейных неравенств, m>n :
a11x1 +a12x2 +......... |
+a1n xn ≤ b1, |
|
|
a21x1 +a22x2 +......... |
+a2n xn ≤ b2 , |
(8.52) |
|
...................................... |
|||
|
|||
am1x1 +am2 x2 +......... |
+amnxn ≤bm. |
|
|
xi > 0, |
i = 1,2,..n . |
(8.53) |
Линейную функцию (8.51) – функцию цели – принято называть линейной формой задачи ЛП.
Наряду с задачей ЛП (8.51 – 8.53), называемой стандартной или естественной, существуют [17] и другие задачи ЛП, имеющие различные формы записи. Например, система неравенств (8.52) может быть смешанной, т.е. наряду с неравенствами система ограничений может содержать и равенства, или проектные
286

Численные методы оптимизации
параметры могут быть не все неотрицательны, т.е. не для всех из них выполняется условие (8.53), и наконец, в ряде случаев требуется найти максимум линейной формы, Zmax. Любая из них
может быть сведена путем несложных математических преобразований к эквивалентной ей задаче любого другого вида
[23].
8.3.2. Геометрический смысл системы линейных неравенств с двумя неизвестными
Рассмотрим линейное неравенство с двумя неизвестными х1, х2
a x1 + b x2 + c ³ 0. |
(8.54) |
Областью решения неравенства (4) является множество точек D , удовлетворяющих этому неравенству, т.е. полуплоскость Р, ограниченная прямой L: a x1 + b x2 + c = 0
Прямая L разбивает всю плоскость на 2-е полуплоскости. Для
определения какую из двух полуплоскостей описывает неравенство (8.54), достаточно выбрать точку М 0 (х10 , х20 ) и проверить, удовлетворяют ли координаты ее неравенству (8.54).
nПример 8.1. Найти полуплоскость, определяемую неравенством
|
x1 + 2 x2 - 2 ³ 0 . |
Рассмотрим прямую |
x1 + 2 x2 - 2 = 0 , разбивающую всю |
плоскость на две полуплоскости. Выбрав точку М(0,0), легко убедиться, что координаты ее не удовлетворяют исходному неравенству, и это значит, что неравенство определяет прямую и полуплоскость, расположенную «выше» этой прямой (рис.8.7).
x2
1 |
_ |
D |
|
|
x1 + |
|
x2 - |
|
x1 |
1 |
2 |
Рис.8.7. Область решения неравенства
287

Численные методы оптимизации
Предположим теперь, что задано не одно неравенство, а
система неравенств
a11 x1 + a12 x2 + b1 ³ 0, |
|
a21 x1 + a22 x2 + b2 ³ 0, |
|
................................... . |
(8.55) |
am1 x1 + am2 x2 + bm ³ 0.
Каждое неравенство определяет некоторую полуплоскость Pi, (i=1,2,..,m). Областью решений системы неравенств (8.55) является область пересечения конечного числа полуплоскостей, описываемых каждым отдельным неравенством. И этой областью является многоугольник.
Область решения системы (8.55) может быть замкнутым
(рис.8.8,а) или неограниченным (рис.8.8,б) многоугольником D ,
может быть пустой областью (рис.8.8,в), когда система (8.55) противоречива.
x2 |
_ |
D |
x1 |
а |
x2 |
_ |
D |
x1 |
б |
x2 |
x1 |
в |
Рис.8.8. Область решения системы неравенств
Область допустимых решений D обладает важным свойством – выпуклостью. Понятие выпуклости мы рассмотрим позднее.
Обобщим сказанное на случай большего числа переменных. При n=3 система (8.55) имеет вид
ai x1 + bi x2 + ci x3 + di ³ 0, i = 1,2,..,m . |
(8.55 а) |
288

Численные методы оптимизации
Каждая плоскость Pi : ai x1 + bi x2 + ci x3 + di = 0 (i =1,2,..,m) при этом разбивает пространство на два полупространства. Область решений (8.55а) образуется пересечением m полупространств и
представляет собой многогранную выпуклую область в трехмерном пространстве.
Совокупность точек n-мерного пространства, координаты которого удовлетворяют системе (8.52), есть выпуклая многогранная
область D , получающаяся в результате пересечения всех n полупространств, отвечающих неравенствам системы. Если эта область ограничена, мы называем ее выпуклым многогранником.
Опорной прямой (при n=2) называется прямая, которая
имеет с областью D , по крайней мере, одну общую точку. При
этом вся область D расположена по одну сторону от этой прямой. Например, на рис.8.9 L1 и L2 – опорные прямые. L1 проходит через
вершину области D , а L2 – через одну из сторон D .
L1
_
D
L2
Рис.8.9. К определению опорной прямой
При n=3 опорная плоскость может проходить через вершину многогранника, или его ребро, или его грань. Понятие опорной плоскости (гиперплоскости) легко обобщить на случай n>3.
8.3.3. Геометрический метод решения задач линейного программирования
Постановка задачи. Пусть задана целевая функция для двух проектных параметров x1 и x2 :
zmin = c1x1 + c2 x2 . |
(8.56) |
289

Численные методы оптимизации
Для определенности положим c2 > 0 . И пусть задана система линейных неравенств:
a11 x1 + a12 x2 + b1 ³ 0, a21 x1 + a22 x2 + b2 ³ 0,
................................... (8.57)
am1 x1 + am2 x2 + bm ³ 0, x1 ³ 0, x2 ³ 0.
Требуется среди допустимых решений системы неравенств (8.57) найти такое, при котором целевая функция (8.56) принимает минимальное значение.
Порядок решения
1. Область допустимых решений системы (8.57) – это
выпуклая многоугольная область D на плоскости Х1Х2 , лежащая в
первой четверти, и среди всех точек (x1, x2)Î D требуется найти такую, которая минимизирует функцию цели (8.56). Строим эту
область. |
|
2. Приравняем выражение функции цели |
какой-либо |
постоянной величине R: |
|
c1x1 + c2 x2 = R . |
(8.58) |
Уравнение (8.58) определяет на плоскости прямую, в точках |
|
которой функция Z принимает постоянное значение R. Такая |
|
прямая называется линией уровня функции цели Z. Изменим |
|
постоянную R и получим другую линию уровня |
c1x1 +c2x2 =R1, |
параллельную первой. |
|
Пусть R изменяется от 0 до +¥. Тогда прямая уровня смещается параллельно самой себе, “зачеркивая” целую
полуплоскость, границей которой будет c1x1 + c2 x2 = 0 . Таким образом, учитывая, что c2 > 0 прямая линии уровня с ростом R смещается вверх (рис.8.10, а ).
290

Численные методы оптимизации |
|
|
|
|
|
||||
x2 |
|
|
|
|
x2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
x1 |
|
|
|
|
|
|
|
с |
|
|
|
|
|
|
|
|
|
|
x |
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
+ |
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
с |
|
|
|
|
|
|
|
|
|
x |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
= |
|
|
|
|
x1 |
|
|
|
|
z=0 |
0 |
|
|
|
|
|
|
z |
|
||
|
|
|
|
|
|
|
|
|
|
с |
|
|
|
|
|
|
= |
|
|
|
|
|
|
|
|
- |
|
||
1 |
|
|
|
|
|
|
|
R |
|
x |
|
|
|
|
z |
|
|
1 |
|
+ |
|
|
|
|
|
|
|
||
1 |
|
|
|
|
= |
|
|
||
с |
|
|
|
|
|
|
|
||
|
z=R |
z=R |
z=R |
|
- |
|
|
||
2 |
|
|
|
|
|||||
|
|
|
2 |
|
|
||||
x |
z=R0 |
1 |
2 |
3 |
|
R |
|
|
|
= |
|
|
|
|
|
||||
2 |
|
|
|
|
|
|
|
|
|
0 |
a |
|
|
|
|
|
|
б |
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
Рис.8.10. Линии уровня целевой функции
При изменении R от 0 до –∞ прямая линии уровня смещается в противоположную сторону, “зачеркивая” вторую половину полуплоскости (рис.8.10 б). При возрастании R от –∞ до +∞ линия уровня (8.58), смещаясь параллельно самой себе в одну и ту же сторону, “зачеркивает” всю плоскость.
Вывод:
G Чтобы найти минимум целевой функции, зависящей от двух параметров, графическим способом, необходимо:
1.Построить область допустимых решений задачи D , описываемую системой ограничений;
2.Среди всех точек области D найти такую точку, в которой функция цели Z принимает наименьшее значение. Координаты этой точки и дают решение задачи. Причем, это будет первая
точка встречи линии уровня для Zmin с областью D при смещении линии уровня снизу вверх (при возрастании R от -∞ до +∞) [35].
291

Численные методы оптимизации
На рис.8.11 эта точка совпадает с началом координат. Для
любой другой точки из области D значение функции Zmin будет больше, чем в точке (0,0).
X2 |
|
|
|
|
3 |
|
|
|
|
|
|
M |
D |
|
2 |
|
|
|
|
1 |
|
|
|
|
-1 |
1 |
2 |
3 |
X1 |
|
|
|
|
z=R |
|
|
z=0 |
|
|
Рис.8.11. Графический метод поиска экстремума функции
При решении подобных задач возможны различные случаи: 1. При перемещении линии уровня соприкосновение ее с
областью D произойдет по целому отрезку границы области. В этом случае решений бесконечно много. Такой случай рассмотрен в
примере 8.3.
2. Область D является неограниченной фигурой, и прямая уровня Z = R для сколь угодно больших по абсолютной величине
отрицательных R имеет общие точки с областью D . В этом случае
минимальное значение функции цели в области D равно –∞. Линия уровня –x=R при всех значениях R ( − ∞ < R ≤ 0 ) пересекает
область D . Следовательно, функция цели в области не ограничена снизу, т.е. zmin = −∞ , иначе говоря, минимум функции не достигается. Такой случай приведен в примере 8.4.
3.Область допустимых решений D пуста, и задача (8.56-8.57)
вэтом случае не имеет решения.
292