eof basics

This commit is contained in:
2024-10-30 15:18:31 +01:00
parent 6bbc072b7c
commit 34f218a144
8 changed files with 240 additions and 0 deletions

View File

@ -0,0 +1,39 @@
#Mikul<EFBFBD>s csomagok <EFBFBD>ssze<EFBFBD>ll<EFBFBD>t<EFBFBD>sa:
#A Mikul<EFBFBD>s csomag tartalma a k<EFBFBD>vetkez<EFBFBD> legyen - csoki, narancs, mogyor<EFBFBD>, virg<EFBFBD>cs, kindertoj<EFBFBD>s <EFBFBD>s gumicukor
#<EFBFBD>sszetev<EFBFBD> csomagok amib<EFBFBD>l v<EFBFBD>laszthatok -
#Az 1. csomag <EFBFBD>ra 5 p<EFBFBD>nzegys<EFBFBD>g - narancsot <EFBFBD>s mogyor<EFBFBD>t tartalmaz.
#A 2. csomag <EFBFBD>ra 10 p<EFBFBD>nzegys<EFBFBD>g - gumicukor, mogyor<EFBFBD>, csoki
#A 3. csomag <EFBFBD>ra 3 p<EFBFBD>nzegys<EFBFBD>g - gumicukor, kinder, virg<EFBFBD>cs
#A 4. csomag <EFBFBD>ra 4 p<EFBFBD>nzegys<EFBFBD>g - narancs, kinder, csoki
#A 5. csomag <EFBFBD>ra 6 p<EFBFBD>nzegys<EFBFBD>g - csoki, virg<EFBFBD>cs
#Milyen csomagokat vegy<EFBFBD>nk az <EFBFBD>ltalunk <EFBFBD>ssze<EFBFBD>ll<EFBFBD>tott Mikul<EFBFBD>s csomaghoz, <EFBFBD>gy hogy min<EFBFBD>l kevesebb k<EFBFBD>lts<EFBFBD>g<EFBFBD>nkbe ker<EFBFBD>lj<EFBFBD>n?
#Az el<EFBFBD>z<EFBFBD> feladat kieg<EFBFBD>sz<EFBFBD>t<EFBFBD>se-
#Ha valamib<EFBFBD>l felesleg marad, az<EFBFBD>rt b<EFBFBD>ntet<EFBFBD>s j<EFBFBD>r.
#A csoki<EFBFBD>rt 2 p<EFBFBD>nzegys<EFBFBD>g a b<EFBFBD>ntet<EFBFBD>s. A narancs 3, a mogyor<EFBFBD> 1, virg<EFBFBD>cs 4, kindertoj<EFBFBD>s 5 <EFBFBD>s a gumicukor 6 p<EFBFBD>nzegys<EFBFBD>g b<EFBFBD>ntet<EFBFBD>st von maga ut<EFBFBD>n. Milyen csomagokat vegy<EFBFBD>nk a Mikul<EFBFBD>s csomagunk <EFBFBD>ssze<EFBFBD>ll<EFBFBD>t<EFBFBD>s<EFBFBD>hoz, ha minim<EFBFBD>lisan szeretn<EFBFBD>nk k<EFBFBD>ltekezni <EFBFBD>s minim<EFBFBD>lis b<EFBFBD>ntet<EFBFBD>st szeretn<EFBFBD>nk kapni a v<EFBFBD>g<EFBFBD>n.
var csomag1 binary;
var csomag2 binary;
var csomag3 binary;
var csomag4 binary;
var csomag5 binary;
var plusszcsoki >= 0 integer;
var plussznarancs >= 0 integer;
var plusszmogyoro >= 0 integer;
var plusszvirgacs >= 0 integer;
var plusszkinder >= 0 integer;
var plusszgumi >= 0 integer;
s.t. csoki: csomag2 + csomag4 + csomag5 - plusszcsoki = 1;
s.t. narancs: csomag1 + csomag4 - plussznarancs = 1;
s.t. mogyoro: csomag1 + csomag2 - plusszmogyoro = 1;
s.t. virgacs: csomag3 + csomag5 - plusszvirgacs = 1;
s.t. kinder: csomag3 + csomag4 - plusszkinder = 1;
s.t. gumi: csomag2 + csomag3 - plusszgumi = 1;
minimize koltseg: csomag1 * 5 + csomag2 * 10 + csomag3 * 3 + csomag4 * 4 + csomag5 * 6 +
plusszcsoki * 2 + plussznarancs * 3 + plusszmogyoro * 1 + plusszvirgacs * 4 + plusszkinder * 5 + plusszgumi * 6;
end;

View File

@ -0,0 +1,45 @@
Problem: mikulasbuntetessel
Rows: 7
Columns: 11 (11 integer, 5 binary)
Non-zeros: 30
Status: INTEGER OPTIMAL
Objective: koltseg = 18 (MINimum)
No. Row name Activity Lower bound Upper bound
------ ------------ ------------- ------------- -------------
1 csoki 1 1 =
2 narancs 1 1 =
3 mogyoro 1 1 =
4 virgacs 1 1 =
5 kinder 1 1 =
6 gumi 1 1 =
7 koltseg 18
No. Column name Activity Lower bound Upper bound
------ ------------ ------------- ------------- -------------
1 csomag1 * 1 0 1
2 csomag2 * 0 0 1
3 csomag3 * 1 0 1
4 csomag4 * 0 0 1
5 csomag5 * 1 0 1
6 plusszcsoki * 0 0
7 plussznarancs
* 0 0
8 plusszmogyoro
* 0 0
9 plusszvirgacs
* 1 0
10 plusszkinder * 0 0
11 plusszgumi * 0 0
Integer feasibility conditions:
KKT.PE: max.abs.err = 0.00e+00 on row 0
max.rel.err = 0.00e+00 on row 0
High quality
KKT.PB: max.abs.err = 0.00e+00 on row 0
max.rel.err = 0.00e+00 on row 0
High quality
End of output

View File

@ -8,3 +8,21 @@
#A 5. csomag <EFBFBD>ra 6 p<EFBFBD>nzegys<EFBFBD>g - csoki, virg<EFBFBD>cs
#Milyen csomagokat vegy<EFBFBD>nk az <EFBFBD>ltalunk <EFBFBD>ssze<EFBFBD>ll<EFBFBD>tott Mikul<EFBFBD>s csomaghoz, <EFBFBD>gy hogy min<EFBFBD>l kevesebb k<EFBFBD>lts<EFBFBD>g<EFBFBD>nkbe ker<EFBFBD>lj<EFBFBD>n?
var csomag1 binary;
var csomag2 binary;
var csomag3 binary;
var csomag4 binary;
var csomag5 binary;
s.t. csoki: csomag2 + csomag4 + csomag5 >= 1;
s.t. narancs: csomag1 + csomag4 >= 1;
s.t. mogyoro: csomag1 + csomag2 >= 1;
s.t. virgacs: csomag3 + csomag5 >= 1;
s.t. kinder: csomag3 + csomag4 >= 1;
s.t. gumi: csomag2 + csomag3 >= 1;
minimize koltseg: csomag1 * 5 + csomag2 * 10 + csomag3 * 3 + csomag4 * 4 + csomag5 * 6;
end;

View File

@ -0,0 +1,36 @@
Problem: mikulascsomag
Rows: 7
Columns: 5 (5 integer, 5 binary)
Non-zeros: 18
Status: INTEGER OPTIMAL
Objective: koltseg = 12 (MINimum)
No. Row name Activity Lower bound Upper bound
------ ------------ ------------- ------------- -------------
1 csoki 1 1
2 narancs 2 1
3 mogyoro 1 1
4 virgacs 1 1
5 kinder 2 1
6 gumi 1 1
7 koltseg 12
No. Column name Activity Lower bound Upper bound
------ ------------ ------------- ------------- -------------
1 csomag1 * 1 0 1
2 csomag2 * 0 0 1
3 csomag3 * 1 0 1
4 csomag4 * 1 0 1
5 csomag5 * 0 0 1
Integer feasibility conditions:
KKT.PE: max.abs.err = 0.00e+00 on row 0
max.rel.err = 0.00e+00 on row 0
High quality
KKT.PB: max.abs.err = 0.00e+00 on row 0
max.rel.err = 0.00e+00 on row 0
High quality
End of output

View File

@ -0,0 +1,21 @@
#Egy <EFBFBD>zemben 2 term<EFBFBD>ket gy<EFBFBD>rtanak, 2 g<EFBFBD>pen folyik a gy<EFBFBD>rt<EFBFBD>s.
#T1 megmunk<EFBFBD>l<EFBFBD>sa 1. g<EFBFBD>pen 3 <EFBFBD>ra, m<EFBFBD>sodik g<EFBFBD>pen pedig 4 <EFBFBD>ra.
#T2 megmunk<EFBFBD>l<EFBFBD>sa 4 <EFBFBD>s 6 <EFBFBD>ra.
#G<EFBFBD>p1 kapacit<EFBFBD>sa - 130 <EFBFBD>ra
#G<EFBFBD>p2 kapacit<EFBFBD>sa - 200 <EFBFBD>ra
#Szerel<EFBFBD>se a term<EFBFBD>knek - T1 1<EFBFBD>ra, T2 - 2<EFBFBD>ra.
#Szerelde kapacit<EFBFBD>sa - 60 <EFBFBD>ra
#Elad<EFBFBD>si egys<EFBFBD>g<EFBFBD>r - T1 - 8
# T2 - 10
#Milyen term<EFBFBD>k<EFBFBD>sszet<EFBFBD>telben <EFBFBD>rdemes gy<EFBFBD>rtani, ha maxim<EFBFBD>lis <EFBFBD>rbev<EFBFBD>telre t<EFBFBD>reksz<EFBFBD>nk, <EFBFBD>gy hogy a g<EFBFBD>pek kapacit<EFBFBD>s<EFBFBD>t nem l<EFBFBD>pj<EFBFBD>k t<EFBFBD>l, a szerelde pedig teljes kapacit<EFBFBD>ssal (=) dolgozik.
var T1 >= 0 integer;
var T2 >= 0 integer;
s.t. gep1kapacitas: T1 * 3 + T2 * 4 <= 130;
s.t. gep2kapacitas: T1 * 4 + T2 * 6 <= 200;
s.t. szereles: T1 * 1 + T2 * 2 = 60;
maximize profit: T1 * 8 + T2 * 10;
end;

View File

@ -0,0 +1,38 @@
Problem: szerelde
Rows: 4
Columns: 2
Non-zeros: 8
Status: OPTIMAL
Objective: arbevetel = 330 (MAXimum)
No. Row name St Activity Lower bound Upper bound Marginal
------ ------------ -- ------------- ------------- ------------- -------------
1 szerelesiido NS 60 60 = -1
2 gep1 NU 130 130 3
3 gep2 B 190 200
4 arbevetel B 330
No. Column name St Activity Lower bound Upper bound Marginal
------ ------------ -- ------------- ------------- ------------- -------------
1 T1 B 10 0
2 T2 B 25 0
Karush-Kuhn-Tucker optimality conditions:
KKT.PE: max.abs.err = 0.00e+00 on row 0
max.rel.err = 0.00e+00 on row 0
High quality
KKT.PB: max.abs.err = 0.00e+00 on row 0
max.rel.err = 0.00e+00 on row 0
High quality
KKT.DE: max.abs.err = 0.00e+00 on column 0
max.rel.err = 0.00e+00 on column 0
High quality
KKT.DB: max.abs.err = 0.00e+00 on row 0
max.rel.err = 0.00e+00 on row 0
High quality
End of output

View File

@ -0,0 +1,13 @@
#Egy kis szab<EFBFBD>s<EFBFBD>gban ingeket <EFBFBD>s szokny<EFBFBD>kat k<EFBFBD>sz<EFBFBD>tenek. Egy ingen 4$ , a szokny<EFBFBD>n pedig 3$ nyeres<EFBFBD>ge van a szab<EFBFBD>s<EFBFBD>gnak. Egy ing elk<EFBFBD>sz<EFBFBD>t<EFBFBD>s<EFBFBD>hez 3m anyag <EFBFBD>s 5 <EFBFBD>ra sz<EFBFBD>ks<EFBFBD>ges. Egy szoknya eset<EFBFBD>n ez 4m <EFBFBD>s 2 <EFBFBD>ra. A c<EFBFBD>g vezet<EFBFBD>je elv<EFBFBD>rja a varr<EFBFBD>n<EFBFBD>kt<EFBFBD>l, hogy napi 10 <EFBFBD>r<EFBFBD>s munkaid<EFBFBD>ben dolgozzanak, <EFBFBD>s ezalatt legal<EFBFBD>bb 4 ruhadarabot k<EFBFBD>sz<EFBFBD>tsenek el, <EFBFBD>s legfeljebb 12m anyagot haszn<EFBFBD>ljanak.
#H<EFBFBD>ny ing <EFBFBD>s h<EFBFBD>ny szoknya megvarr<EFBFBD>s<EFBFBD>val <EFBFBD>rhet<EFBFBD> el egy varr<EFBFBD>n<EFBFBD> eset<EFBFBD>n a maxim<EFBFBD>lis profit?
var ing >= 0, integer;
var szoknya >= 0, integer;
s.t. ido: ing * 5 + szoknya * 2 = 10;
s.t. anyag: ing * 3 + szoknya * 4 <= 12;
s.t. minanyag: ing + szoknya >= 4;
maximize profit: ing * 4 + szoknya * 3;
end;

View File

@ -0,0 +1,30 @@
Problem: szoknyaing
Rows: 4
Columns: 2 (2 integer, 0 binary)
Non-zeros: 8
Status: INTEGER EMPTY
Objective: profit = 0 (MAXimum)
No. Row name Activity Lower bound Upper bound
------ ------------ ------------- ------------- -------------
1 ido 0 10 =
2 anyag 0 12
3 minanyag 0 4
4 profit 0
No. Column name Activity Lower bound Upper bound
------ ------------ ------------- ------------- -------------
1 ing * 0 0
2 szoknya * 0 0
Integer feasibility conditions:
KKT.PE: max.abs.err = 0.00e+00 on row 0
max.rel.err = 0.00e+00 on row 0
High quality
KKT.PB: max.abs.err = 1.00e+01 on row 1
max.rel.err = 9.09e-01 on row 1
SOLUTION IS INFEASIBLE
End of output