Introduction to Algorithms, Third Edition



Download 4,84 Mb.
Pdf ko'rish
bet572/618
Sana07.04.2022
Hajmi4,84 Mb.
#534272
1   ...   568   569   570   571   572   573   574   575   ...   618
Bog'liq
Introduction-to-algorithms-3rd-edition

if
b
k
0
//
is the initial basic solution feasible?
3
return
.
f
1; 2; : : : ; n
g
;
f
n
C
1; n
C
2; : : : ; n
C
m
g
; A; b; c; 0/
4
form
L
aux
by adding
x
0
to the left-hand side of each constraint
and setting the objective function to
x
0
5
let
.N; B; A; b; c; /
be the resulting slack form for
L
aux
6
l
D
n
C
k
7
//
L
aux
has
n
C
1
nonbasic variables and
m
basic variables.
8
.N; B; A; b; c; /
D
P
IVOT
.N; B; A; b; c; ; l; 0/
9
//
The basic solution is now feasible for
L
aux
.
10
iterate the
while
loop of lines 3–12 of S
IMPLEX
until an optimal solution
to
L
aux
is found
11
if
the optimal solution to
L
aux
sets
N
x
0
to
0
12
if
N
x
0
is basic
13
perform one (degenerate) pivot to make it nonbasic
14
from the final slack form of
L
aux
, remove
x
0
from the constraints and
restore the original objective function of
L
, but replace each basic
variable in this objective function by the right-hand side of its
associated constraint
15
return
the modified final slack form
16
else return
“infeasible”


888
Chapter 29
Linear Programming
I
NITIALIZE
-S
IMPLEX
works as follows. In lines 1–3, we implicitly test the
basic solution to the initial slack form for
L
given by
N
D f
1; 2; : : : ; n
g
,
B
D
f
n
C
1; n
C
2; : : : ; n
C
m
g
,
N
x
i
D
b
i
for all
i
2
B
, and
N
x
j
D
0
for all
j
2
N
.
(Creating the slack form requires no explicit effort, as the values of
A
,
b
, and
c
are
the same in both slack and standard forms.) If line 2 finds this basic solution to be
feasible—that is,
N
x
i
0
for all
i
2
N
[
B
—then line 3 returns the slack form.
Otherwise, in line 4, we form the auxiliary linear program
L
aux
as in Lemma 29.11.
Since the initial basic solution to
L
is not feasible, the initial basic solution to the
slack form for
L
aux
cannot be feasible either. To find a basic feasible solution, we
perform a single pivot operation. Line 6 selects
l
D
n
C
k
as the index of the
basic variable that will be the leaving variable in the upcoming pivot operation.
Since the basic variables are
x
n
C
1
; x
n
C
2
; : : : ; x
n
C
m
, the leaving variable
x
l
will be
the one with the most negative value. Line 8 performs that call of P
IVOT
, with
x
0
entering and
x
l
leaving. We shall see shortly that the basic solution resulting
from this call of P
IVOT
will be feasible. Now that we have a slack form for which
the basic solution is feasible, we can, in line 10, repeatedly call P
IVOT
to fully
solve the auxiliary linear program. As the test in line 11 demonstrates, if we find
an optimal solution to
L
aux
with objective value
0
, then in lines 12–14, we create
a slack form for
L
for which the basic solution is feasible. To do so, we first,
in lines 12–13, handle the degenerate case in which
x
0
may still be basic with
value
N
x
0
D
0
. In this case, we perform a pivot step to remove
x
0
from the basis,
using any
e
2
N
such that
a
0e
¤
0
as the entering variable. The new basic
solution remains feasible; the degenerate pivot does not change the value of any
variable. Next we delete all
x
0
terms from the constraints and restore the original
objective function for
L
. The original objective function may contain both basic
and nonbasic variables. Therefore, in the objective function we replace each basic
variable by the right-hand side of its associated constraint. Line 15 then returns
this modified slack form. If, on the other hand, line 11 discovers that the original
linear program
L
is infeasible, then line 16 returns this information.
We now demonstrate the operation of I
NITIALIZE
-S
IMPLEX
on the linear pro-
gram (29.102)–(29.105). This linear program is feasible if we can find nonneg-
ative values for
x
1
and
x
2
that satisfy inequalities (29.103) and (29.104). Using
Lemma 29.11, we formulate the auxiliary linear program
maximize
x
0
(29.109)
subject to
2x
1
x
2
x
0
2
(29.110)
x
1
5x
2
x
0
4
(29.111)
x
1
; x
2
; x
0
0 :
By Lemma 29.11, if the optimal objective value of this auxiliary linear program
is
0
, then the original linear program has a feasible solution. If the optimal objective



Download 4,84 Mb.

Do'stlaringiz bilan baham:
1   ...   568   569   570   571   572   573   574   575   ...   618




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish