Excel'de doğrusal kesim. Malzeme kesimini optimize etmek için programlar

  • 07.03.2022

Malzemelerin ekonomik doğrusal kesimi (kalıpların kesilmesi) birçok endüstri ve inşaat için geçerlidir. Bu, ağaç işleme, kesme çubukları, takviye çubukları, köşebentler, kanallar, borular, I-kirişlerde boşluklara kütükler ve levhalar kesmektir ...

Metal yapıların ve makine mühendisliğinin üretiminde, kağıt ve hafif sanayide ruloların kağıt ve kumaş ile enine kesimi.

Görünen basitliğe rağmen, lineer kesme problemlerinin çözümü çok kolay değil, buna değer. Kalıplanmış malzemeleri kesmek için bilimsel bir yaklaşımın tanıtılması, bunların maliyetini bazen %10'dan fazla azaltmanıza olanak tanır! Makaleyi sonuna kadar okuyun ve bu kelimelerin doğru olduğundan emin olun.

İncelenen konu, doğrusal programlama problemleriyle ilgilidir. Bu tür sorunları çözmek için bilim adamları son 70 yılda birkaç farklı yöntem geliştirdiler.

Endeks yöntemi L.V. Kantorovich ve V.A. Belli bir beceriye sahip olan Zalgallera, bilgisayar teknolojisini kullanmadan "manuel" doğrusal kesimi etkili bir şekilde gerçekleştirmenizi sağlar. Meraklı okuyuculara, yukarıda adı geçen yazarların “Endüstriyel Malzemelerin Rasyonel Kesimi” kitabını okuyarak bu yöntemi tanımalarını tavsiye ederim.

L.V.'nin fikirlerine dayanan simpleks yöntemi. Kantorovich, 20. yüzyılın ortalarında ABD'den bir dizi bilim adamı tarafından ayrıntılı olarak tanımlanmış ve geliştirilmiştir. Eklenti MS Excel "Çözüm arayın" (Çözücü) bu algoritmayı kullanır. İşte bu yöntemlemükemmelbu yazımızda lineer kesim problemini çözeceğiz.

Daha sonra genetik, açgözlü ve karınca kolonisi algoritmaları ortaya çıkmış ve geliştirilmiştir. Bununla birlikte, teoriler ormanına tırmanmadan kendimizi onları listelemek ve işe başlamakla sınırlayacağız (orada, “vahşi doğada” olmasına rağmen, çok ilginçtir).

Excel'i açalım ve metal çubukları parçalara ayırmanın basit bir örneğini kullanarak, pratik doğrusal kesme problemlerini çözmenin yollarından biriyle tanışacağız. Matematikçiler genellikle bu probleme "kesme problemi" derler.

Örnek için ilk verileri icat etmedim, ancak Pokrovsky M.A.'nın makalesinden aldım. FGBOU VPO "MSTU im. N.E. Bauman (bağlantı:ingilizce. bmstu. tr/ doktor/775784. html).

Takip ettiğim amaç, sorunu çözmenin sonuçlarını karşılaştırmaktı.

MS Excel'de doğrusal kesme problemini çözme örneği.

Şunda anlaşalım:

1. Kütük, çubuk, şerit, çubuk vb. şeklinde hammaddedir. aynı uzunlukta.

2. Detaylar, orijinal boşlukları parçalara ayırarak elde edilmesi gereken unsurlardır.

3. Testere genişliği, kesme, ovma sıfıra eşit alınır.

Görev:

Siparişlerden birini tamamlamak için, tedarik bölümü, 1500 mm uzunluğundaki aynı çubuk boşluklardan kombine makaslarda üç standart boyutta parça parçalamalıdır:

151 adet 330 mm uzunluğunda

206 adet 270 mm uzunluğunda

163 adet 190 mm uzunluğunda

Minimum malzeme kullanan ve buna bağlı olarak minimum fire veren optimal kesim planının bulunması gerekmektedir.

İlk veri:

1. Orijinal boşlukların uzunluğu LH milimetre cinsinden birleşik hücreye yazıyoruz

D3E3F3: 1500

2. numaralar atarız i hücrelerde en uzundan en kısaya kadar tüm standart boyutlardaki parçalar

D4; E 4; F4: 1; 2; 3

3. Parça uzunlukları LDi milimetre cinsinden yazıyoruz

D5; E5; F5: 330; 270; 190

4. Detay sayısı nDi parçalar halinde koymak

D6; E6; F6: 151; 206; 163

5. Çok önemli bir aşamaya geçiyoruz - kesme seçeneklerini doldurma.

Hatırlamak ve anlamak gerekir Bu işi yapmak için 2 ilke.

1. Atık uzunlukları en küçük parçadan ( 0< lo j < LDdk ).

2. Parçaları, en büyük ve en fazla sayıda iş parçasına sürekli olarak azalan yönde hareket ederek “döşemeye” başlıyoruz.

Kesim seçeneğinde parça boyutu yoksa hücreyi boş bırakıyoruz, tablonun görsel algısını kolaylaştırmak için sıfır yazmayacağız.

1 numaralı kesme seçeneği:

1 No'lu 5 parçayı bir boşluktan kesme girişimi imkansızdır, bu yüzden hücreye yazıyoruz

Ayrıca 2 numaralı parçayı veya 3 numaralı parçayı yuvaya eklemek imkansız, bu yüzden hücreleri boş bırakıyoruz

2 numaralı kesme seçeneği:

1 No'lu parça sayısını önceki versiyondan 1'er azaltıp içine yazıyoruz.

2 parça No. 2 eklemeye çalışıyoruz - çalışmıyor, bu yüzden ekliyoruz

Kesimi 3 numaralı detayla tamamlamak mümkündür. içine giriyoruz

Dile getirilen ilkelere bağlı kalarak, bu durumda mümkün olan tüm 18 kesme seçeneğini analojiyle dolduruyoruz.

Birkaç kesme seçeneği tablosunu kendiniz yaptıktan sonra, eylemlerin mantığını anlayacaksınız ve bu çalışma için birkaç dakika harcayacaksınız.

Kesim sırasında birinci prensip yerine getirilmezse, çıkış uzunluğu olan hücre otomatik olarak kırmızıya boyanır. G7…G24 hücrelerine uygulanan koşullu biçimlendirme bu çalışmada size açıkça yardımcı olacaktır.

H7 ... H24 hücrelerinde hiçbir şey yazmayın! Çözümün sonucunu göstermek için kullanılırlar!

Çözüm için hazırlanıyor:

* G7 ... G24 hücrelerinde, kesme sonucu kalan atık (kesme) uzunlukları formüle göre hesaplanır.

lo j = L H -Σ (LDi * nDij )

6. Uygulanan tüm yerleştirme seçeneklerine göre yapılan her standart boyutun parça sayısı, formüle göre D26, E26 ve F26 hücrelerinde hesaplanacaktır.

nDikireç = Σ (nDij * nHJ )

Çözümün sonunda bulunan kesim planındaki parça sayısı, belirtilen parça sayısına tam olarak karşılık gelmelidir!

7. Optimal kesme planını tamamlamak için gereken iş parçası sayısı, formül kullanılarak birleşik D27E27F27 hücresinde belirlenecektir.

n hesap =ΣN HJ

8. Tüm parçaların doğrusal bir yerleşimini gerçekleştirmek için gereken tüm boşlukların toplam uzunluğu, formül kullanılarak birleştirilmiş D28E28F28 hücresinde hesaplanacaktır.

LH Σ = L H*nhesaplamadan

9. Bulunan kesim planının yürütülmesinden kaynaklanan tüm atıkların toplam uzunluğu, formül kullanılarak kombine D29E29F29 hücresinde hesaplanacaktır.

Lhakkında Σ = Σ (LhakkındaJ * nHJ )

10. Kullanılan toplam malzeme miktarından optimal doğrusal kesim planı tarafından üretilen atık oranı, formül kullanılarak birleştirilmiş D30E30F30 hücresinde hesaplanacaktır.

o = Lo Σ /Lз Σ

Çözüm:

Hazırlık tamamlandı, bir iş parçasının parçalara en uygun şekilde kesilmesi için 18 seçenek belirlendi ve gerekli tüm formüller girildi. Şimdi ana sorunu çözmemiz gerekiyor: belirlemek optimum kesme planı - kaç boşluk ve hangi kesme seçeneklerine göre kesileceği Sonunda gerekli tüm parçaları minimum atıkla doğru miktarda elde etmek.

1. Ana menüde "Servis" - "Çözüm arayın ..." öğesini seçin.

2. Görünen aynı adı taşıyan "Çözüm arayın" penceresinde ayarları yapıyoruz.

2.1. Atığın toplam uzunluğunu amaç fonksiyonuna atarız. Lo Σ ve bağlantıyı hedef hücre penceresine girin.

2.2. "Equal:" anahtarını "minimum değer" konumuna getirin.

2.3. Değişken içeren hücreleri belirtin Nz j Hücreleri Değiştirme penceresinde.

2.4. Aynı adı taşıyan pencereye kısıtlamalar giriyoruz. Koşullar olarak, verilenlerin eşitliği ihtiyacını belirtiriz. Nd ben ve yerleşim Nd icalc parça sayısı ve değişkenler Nz j- seçenekleri keserek tahmini boşluk sayısı - bir kısıtlama getiriyoruz: bunlar tamsayı olmalıdır.

3. "Parametreler" butonuna basıyoruz ve açılan "Çözüm arama parametreleri" penceresinde aşağıdaki ekran görüntüsündeki gibi ayarları yapıyoruz. Tamam butonu ile pencereyi kapatın.

4. "Çözüm ara" penceresinde, "Çalıştır" düğmesini tıklayın ve Excel'in bir çözüm bulmasını bekleyin. Bu bir kaç dakika sürebilir.

5. Bulunan çözümü OK butonu ile kaydettikten sonra, sonuçlar Excel sayfasında H7 ... H24 hücrelerinde görüntülenecektir.

Aşağıdaki resim bulunan optimal lineer kesme planını göstermektedir.

Sonuç nedir?

Bu makalede tartışılana benzer görevler için Excel boşluklarında doğrusal kesim, yukarıda açıklanan yöntemle 10-15 dakika içinde gerçekleştirilir! “Manuel”, Kantorovich endekslerinin yöntemini bilmeden böyle bir zamanda bir çözüm bulamazsınız.

"Çözüm arayın"ı farklı arama parametreleriyle birkaç kez çalıştırarak, boşlukları kesmek için 5 farklı plan bulmayı başardık. 5 planın tümü aynı sayıda boşluk gerektirir - 93 ve yalnızca %2.21 atık verir!!! Bu planlar, Pokrovsky tarafından hesaplanan plandan neredeyse %6 daha iyi ve "Geleneksel" plandan %10'dan daha ekonomiktir (makalenin ilk bölümündeki orijinal kaynağa bağlantıya bakın). Hızlı ve pahalı programlar kullanılmadan çok değerli bir sonuç elde edildi.

Doğrusal programlama problemlerini çözerken simpleks yöntemini kullanan Excel Çözücü eklentisinin (“Çözüm arayın”) 200'den fazla değişkenle çalışamayacağına dikkat edilmelidir. Ele aldığımız lineer kesme problemine uygulandığında, bu, kesme sayısının 200 varyantı geçemeyeceği anlamına gelir. Basit görevler için bu yeterlidir. Daha karmaşık görevler için, "açgözlü" algoritmanın ve tek yönlü Çözücü yönteminin bir "karışımını" uygulamaya çalışmalı ve tam kesim listesinden en ekonomik 200'den fazlasını seçmemelisiniz. Sonra sabrımızı stoklar ve sonuçlara ulaşırız. Karmaşık bir sorunu birkaç basit soruna bölmeyi deneyebilirsiniz, ancak bulunan çözümün “optimum düzeyi” büyük olasılıkla daha düşük olacaktır.

Belki de lineer kesme sorunlarını çözmek için düşünülen seçenek “akrobasi” değildir, ancak birçok endüstrideki “geleneksel” yaklaşıma kıyasla kesinlikle bir adım ileridir.

MS Excel "Çözüm Ara" (Çözücü) eklentisinin kullanımı, bir makalede blogda zaten tartışılmıştı. Bu harika aracın yakın ilgiye değer olduğunu ve bir dizi yeni önemsiz sorunu zarif ve hızlı bir şekilde çözmeye bir kereden fazla yardımcı olacağını düşünüyorum.

not İnternette bulduğum en iyi ücretsiz lineer kesme yazılımına bağlantılar:

http://stroymaterial-buy.ru/raschet/70-raskroy-lineynih-izdeliy.html

http://forum-okna.ru/index.php?app=core&module=attach§ion=attach &attach_id=7508

http://forum.dwg.ru/attachment.php?attachmentid=114501&d=13823277 74

http://www.planetcalc.ru/917/

Son iki bağlantıdaki programlar açgözlü buluşsal yöntemler uygular ve 103 boşluk kullanarak makaledeki görevde doğrusal iç içe yerleştirme gerçekleştirir. Daha optimal planlarda çok fazla kesim seçeneği ile kesim işleminin toplam süresinin azaltılmasının gerekli olduğu durumlarda açgözlü algoritmaların kullanımı haklı çıkar.

"İncelemeler" bloğundaki yazının altına yorumlarınızı yazabilirsiniz sevgili okuyucular.

Yuvalama Sorunları için Doğrusal Programlama Modellerine bakın.

Örnek 1. Kağıt şirketinin ürünleri, her biri 2 metre standart genişlikte kağıt rulolar şeklinde üretilmektedir. Tüketicilerin özel siparişlerinde şirket, standart ruloların kesildiği diğer boyutlarda rulolar tedarik eder. Standart dışı boyutlardaki rulolar için tipik siparişler tabloda verilmiştir.


Alınan siparişleri minimum kayıpla (atık) tam olarak karşılamak için standart ruloları kesmek için bu tür farklı seçeneklerin kombinasyonlarını bulmak gerekir.
Standart bir rulo kesmek için tüm olası seçenekleri ele alalım, ilgili verileri Tabloda vereceğiz.
Rulo Genişliği (m)Rulo kesme seçenekleriMinimum rulo sayısı
1 2 3 4 5 6
0,5 0 2 2 4 1 0 150
0,7 1 1 0 0 2 0 200
0,9 1 0 1 0 0 2 300
m cinsinden atık 0,4 0,3 0,1 0 0,1 0,2 -

Değişkenleri tanımlayalım:
X j - seçeneğe göre kesilen standart rulo sayısı j, j=1, 2, 3,4,5, 6.
Sınırlamalar, gerekli sayıda standart dışı rulonun üretilmesini sağlama gerekliliği ile doğrudan ilgilidir. Tablodaki verileri kullanarak şunları elde ederiz:
2X 2 + 2 X 3 + 4 X 4 + X 5 \u003d 150 - 0,5 m genişliğinde rulo sayısı,
X 1 + X 2 + 2 X 5 \u003d 200 - 0,7 m genişliğindeki rulo sayısı,
X 1 + X 3 + 2 X 6 \u003d 300 - 0,9 m genişliğindeki rulo sayısı.

Toplam kağıt kaybı (atık) miktarı (m cinsinden) ifadesidir.
0,4X 1 + 0,3 X 2 + 0,1 X 3 + 0,1 X 5 + 0,2 X 6.

Böylece, genel matematiksel model şu şekle sahiptir:
min f (x) \u003d 0.4 X 1 + 0.3X 2 + 0.1X 3 + 0.1X 5 + 0.2X 6.
kısıtlamalarla:
2X 2 + 2 X 3 + 4 X 4 + X 5 = 150
X 2 + X 2 + 2 X 5 = 200
X 2 + X 3 + 2 X 6 = 300

Malzeme kesme sorunu

Bu görev, malzemeleri keserken minimum atıkla (uzunluk, alan, ağırlık, maliyet vb.) gerekli ürün setini sağlayan veya maksimum sayıda ürün seti sağlayan bir plan geliştirmektir. Örnek #2. Standart çelik sacların kesilmesi için en uygun planın geliştirilmesi, bir grup çelik sacdan dört tip farklı boşluğun kesilmesi gerektiği biliniyorsa, minimum toplam atıkla farklı türlerde planlanan sayıda işlenmemiş parçanın çıktısını sağlamalıdır. bi (i = 1, 2, ..., 4) adet miktarında. Standart boyutlardaki bir çelik sac dört şekilde kesilebilir. Her olası kesme yöntemi, bir kesme tablosuna karşılık gelir. Kesim tablolarından, a ij (i = 1, 2,…4; j = 1,2,…,4) ve ayrıca cj atık alanı (j = 1, 2) farklı türlerdeki iş parçalarının çıktısı ,…,n) j-inci kesme yöntemine göre bir çelik sacın kesilmesinde. İsrafın minimum düzeyde olması için şu veya bu şekilde kaç çelik levha kesilmelidir?

Tablo 3

Çeşit
boşluklar

Boşluk sayısı için görev planı (b 1)

Farklı tiplerde boşlukların (adet) çıktısı
yuvalama çizelgelerinden (a ij)

1 2 3 4
1 240 1 4 0 1
2 200 1 0 4 0
3 120 1 0 0 3
4 140 1 1 0 3
Atık alanı, m 2
(cj)
1,4 0,1 2,1 0,1

Sorunun ekonomik-matematiksel bir modelini yapalım. x j ile gösterelim - j yöntemlerinden birine göre kesilmesi gereken kaynak malzeme (çelik levhalar) miktarı. Görevdeki kısıtlamalar, çeşitli türlerdeki boşlukların planlanan çıktısına karşılık gelmelidir. Amaç fonksiyonu, kesim sırasında minimum israfı bulmaktır.

F=1,4 x 1 +0,1 x 2 +2,1 x 3 +0,1 x 4 →(dk..)
Tüm j kesme yöntemleri için i-th tipi boşlukların çıktısına ilişkin kısıtlamalar:

Örnek #3. Kesmek (kesmek, işlemek) için bir numunenin malzemesi bir birim miktarında sağlanır. Ondan b 1 , b 2 ,…,b l (tamlık koşulu) sayılarıyla orantılı miktarlarda l farklı bileşen yapılması gerekir. Her malzeme birimi n farklı şekilde kesilebilir ve i-inci yöntemi (i = 1, 2,…,n) kullanarak k-inci ürünün (k = 1, 2,…,l) ik birimlerini verir. ). Maksimum takım sayısını sağlayan bir kesim planı bulmak gerekir.
Sorunun ekonomik-matematiksel bir modelini yapalım.
x i, i-inci yöntemle kesilen malzeme birimi sayısını ve x üretilen ürün setlerinin sayısını göstersin. Daha sonra amaç fonksiyonu bulmaya indirgenir.

F=x→(maks),
kısıtlamalarla: çeşitli şekillerde kesilen birimlerinin toplamına eşit toplam malzeme miktarına göre; değişkenlerin tamlık ve olumsuzluk olmaması şartına göre.

Örnek #4. Şirketin, sırasıyla p 1 , p 2 , p 3 miktarında l 1 , l 2 , l 3 m uzunluğunda parçalar halinde kesilmesi gereken L m uzunluğunda kütükleri vardır.
Boşlukların çıkış planına bağlı olarak, minimum atık sağlayan malzemeyi kesmek için optimal bir plan hazırlamak gerekir. İlk veriler tabloda verilmiştir.

Bir görevUzunlukBoşluk boyutları, mBoşluk sayısı, adet.
1ben 2l3p1p2p 3
68 6,5 2,1 2,3 1,4 600 720 900

Çözüm: Önce problemimizin matematiksel bir modelini yapalım. Olası kesim seçenekleri ve her biri için fireler tablo şeklinde yazılacaktır.
iş parçası uzunluğuKesme seçenekleriboşluk sayısı
1 2 3 4 5 6 7
2,1 3 2 2 1 1 0 0 600
2,3 0 1 0 1 0 2 1 720
1,4 0 0 1 1 3 1 3 900
kalan, m0,2 0 0,9 0,7 0,2 0,5 0

x i ile i-inci seçeneğe göre kesilen kütük sayısını belirtin (i=1..7). Daha sonra toplam artık atık doğrusal bir fonksiyon olarak yazılacaktır:
Z = 0,2x1 + 0x2 + 0,9x3 + 0,7x4 + 0,2x5 + 0,5x6 + 0x7
Aynı zamanda, boşluk sayısı açısından planın yerine getirilmesi için koşullar yerine getirilmelidir, yani.
3x1 + 2x2 + 2x3 + x4 + x5 = 600
x2 + x4 + 2x6 + x7 = 720
x 3 + x 4 + 3x 5 + x 6 + 3x 7 = 900

Bu nedenle, belirtilen sorunu çözmek için minZ'yi kısıtlamalar altında bulmak gerekir. minZ = -max(-Z(x)) olduğundan, fonksiyon minimizasyon problemi yerine fonksiyon maksimizasyon problemini çözeceğiz:
Z = -(0.2x 1 + 0x 2 + 0.9x 3 + 0.7x 4 + 0.2x 5 + 0.5x 6 + 0x 7)

Örnek numarası 5. Bir ürünü dikmek için kumaştan 6 parça kesmeniz gerekir. Giysi fabrikasında kumaşı kesmek için iki seçenek geliştirildi. Tablo (aşağıda yer almaktadır) 10 m 2 kumaş, tamlık, yani. bir ürünü dikmek için gereken belirli bir türdeki parça sayısı. Bu tip dikim ürünleri için aylık kumaş temini 405 m 2 dir. Önümüzdeki akşam 90 parça dikilmesi planlanıyor.
Gelecek ay minimum miktarda atıkla terzilik planını tamamlamanıza izin veren problemin matematiksel bir modelini oluşturun.

Tablo - 10m 2 kumaş parçalarını kesmek için seçeneklerin özellikleri

Kesme seçeneği Parça sayısı, parça/kesim Atık, m 2 / kesim
1 2 3 4 5 6
1 60 0 90 40 70 90 0,5
2 80 35 20 78 15 0 0,35
Bütünlük, parça/ürün 1 2 2 2 2 2

Problemin matematiksel ifadesi

Görev Değişkenleri
Bu problemde istenilen değerler açıkça belirtilmemiş ancak 90 adet ürün dikmek için aylık bir planın tamamlanması gerektiği söylenmektedir. Ayda 90 ürünü dikmek için kesin olarak tanımlanmış sayıda parçanın kesilmesi gerekir. Kesimi 10 m 2 kumaş parçalarından iki farklı şekilde yapılır, bu da farklı sayıda detay elde etmenizi sağlar. İlk yöntemle ne kadar kumaşın ve ikinci yöntemle ne kadar kumaşın kesileceği önceden bilinmediğinden, istenen değerler olarak, yöntemlerin her biri ile 10 m 2'lik kumaş kesimi sayısını ayarlayabilirsiniz:
x 1 - Ay boyunca ilk yöntemle kesilen 10m 2 kumaş parçası sayısı, [kesim / ay];
x 2 - ay boyunca birinci yöntemle kesilen kumaş parçalarının sayısı, her biri 10m 2, [kesim / ay];

amaç fonksiyonu
Problemi çözmenin amacı, planı minimum miktarda israfla gerçekleştirmektir. Ürün sayısı kesin olarak planlandığından (90 adet/ay), bu parametre CF'yi tanımlamaz, ancak bir kısıtlamayı ifade eder, başarısız olması sorunun çözülmediği anlamına gelir. Ve planın uygulanmasının etkinliği için kriter, en aza indirilmesi gereken "atık miktarı" parametresidir. 1. seçeneğe göre tek parça (10 m 2) kumaş kesildiğinde, 0,5 m 2 atık elde edildiğinden ve 2. seçeneğe göre - 0,35 m 2 (bkz. tablo 1), kesim sırasında toplam atık miktarı ( CF) görünümü var
L(x) = 0,5x1 + 0,35x2 = dk,

Kısıtlamalar
Çeşitli şekillerde kumaş kesimlerinin sayısı aşağıdaki koşullarla sınırlıdır:

  • Ürünleri dikmek için bir plan yerine getirilmelidir, başka bir deyişle, toplam kesilen parça sayısı, ayda 90 ürün dikilebilecek şekilde olmalıdır, yani: 1. tipten en az 90 ve diğer tiplerden parçalar olmalıdır. - en az 180 (tablodaki eksiksizliğe bakın).
  • Kumaş tüketimi, depodaki aylık stoğu aşmamalı;
  • Kesilen kumaş parçası sayısı negatif olamaz.
Palto dikme planındaki kısıtlama, aşağıdaki anlamlı giriş biçimine sahiptir.
(Tüm seçenekler için 1 numaralı kesim toplam parça sayısı) ≥ (90 adet);
(Tüm seçenekler için kesilen toplam parça sayısı No. 2) ≥ (180 adet);
(Tüm seçenekler için kesilen toplam parça sayısı 6 numara) ≥ (180 adet);

Matematiksel olarak, bu kısıtlamalar şu şekilde yazılır: :
60x1 + 80x2 ≥90;
35x2 ≥180;
90x1 + 20x2 ≥180;
40x1 + 78x2 ≥180;
70x1 + 15x2 ≥180;
90x1 ≥180;

Doku tüketim limiti aşağıdaki kayıt biçimlerine sahiptir:
anlamlı
(aylık toplam kumaş kesimi)≤ (405m2)
matematiksel
x 1 + x 2 ≤405/10

Kesilen segment sayısının negatif olmaması şeklinde verilir.
x 1 ≥ 0, x 2 ≥ 0

Böylece, problemin matematiksel modeli şu şekildedir:
L(x) \u003d 0,5x 1 + 0,35x 2 \u003d dak [m 2 atık / ay],
60x1 + 80x2 ≥90;
35x2 ≥180;
90x1 + 20x2 ≥180;
40x1 + 78x2 ≥180;
70x1 + 15x2 ≥180;
90x1 ≥180;
x 1 + x 2 ≤40.5
x 1 ≥ 0, x 2 ≥ 0

Örnek numarası 6. Isıtma şebekesi için her biri 1070 cm olan 69 boru bulunmaktadır. 130, 150 ve 310 cm'lik borular halinde kesilmeleri gerekir, gelen boruları kesmek için, atığın minimum olacağı böyle bir seçenek bulun.

Aşama 1. Boruların en uygun şekilde kesilmesi için seçenekleri belirliyoruz.

Kesme seçenekleri 1 2 3 4 5 6 7 8 9 10 11 12 13
310 3 2 2 2 2 1 1 1 1 0 0 0 0
150 0 3 2 1 0 3 2 1 0 3 2 1 0
130 1 0 1 2 3 2 3 4 5 4 5 7 8
Kalıntılar 10 0 20 40 60 50 70 90 110 100 120 10 30

2. aşama.
Sorunun ekonomik-matematiksel bir modelini yapalım. x j ile gösterelim - j yollarından birine göre kesilmesi gereken boru sayısı. Amaç fonksiyonu, kesim sırasında minimum israfı bulmaktır:
10x 1 + 20x 3 + 40x 4 + 60x 5 + 50x 6 + 70x 7 + 90x 8 + 110x 9 + 100x 10 + 120x 11 + 10x 12 + 30x 13 → min

x 1 + x 3 + x 4 + x 5 + x 6 + x 7 + x 8 + x 9 + x 10 + x 11 + x 12 + x 13 = 69

Cevap: sadece ikinci kesim seçeneği kullanılmalıdır (sıfır atık)

Program, profillerin ve diğer uzun malzemelerin (çubuk, kütük, boru, pencere pervazına) kesilmesini optimize etmek için tasarlanmıştır.
"Yoğun istifleme" algoritması kullanılır, yani alınan ürün, üzerine yerleştirildiği iş parçasının en kısa kalan kısmına yerleştirilir. Herhangi bir yere sığmıyorsa yeni bir boşluk alınır. Optimizasyonun görevi, daha az boşluğun kullanılacağı ve iş düzeltmelerinin uzunluğunun daha uzun olacağı bir ürün dizisini bulmaktır. İlk ölçüde, eşyalar kamçılara rastgele sırayla yerleştirilir. Bir "ilk nüfus" var. Çözme sürecinde popülasyon mutasyona uğrar ve çoğalır, başarısız örnekler ölür ve en iyileri gelişmeye devam eder. Her şey, hayvan ve bitki dünyasında olduğu gibi + yapay seçilim.

Sitede canlı demo


Başlama

Avantajlar

  • Windowsoft:cutting, yüksek kaliteli kesim haritaları sağlar. Çok sayıda uygulama, 30 konturdan (~120 kesim) partileri optimize ederken gerçek kesme faktörünün %1'den fazla olmadığını doğrular
  • İlk verileri okumak ve kesim sonuçlarını kaydetmek için program, müşteri tarafından uygulanan muhasebe sistemleriyle entegrasyonu basitleştiren basit metin dosyası formatlarını kullanır.
  • Gerekirse, url, web soketi veya javascript nesneleri aracılığıyla parametreleri aktararak bir tarayıcı veya Node.js'de Linux veya OS X altında yuvalama yapılabilir.

Doğrusal optimize edici algoritmalar

Windowsoft:Cutting bir genetik algoritma kullanır. Özü şudur:
Ürünlerin her bir kamçı dağıtımına bir çözüm diyelim. Çözümlerin kalitesini karşılaştırmamıza izin veren bir amaç fonksiyonu tanımlayalım. Birkaç keyfi çözüm oluşturalım, onlara nesil diyelim. Gelecek nesli elde etmek için kuralları tanımlayalım. En iyi amaç fonksiyonuna sahip örnekler "gen havuzunun" çoğunu aktarır, bu bizim "yapay seçilimimizdir". Şimdi geriye, sistemi kendi haline bırakmak, mutasyona uğramasına ve kesme sonuçlarını optimize etmesine izin vermek kalıyor.
Geliştirme sürecinde, "instance"larımızın rastgele olduğu ve birbirine bağlı olmadığı durumlarda "Monte Carlo" yöntemi ve "Karınca algoritmaları" (ACO-ant koloni optimizasyonu) test edilmiştir. Tüm yöntemlerin oldukça verimli olduğu kanıtlandı, ancak genetik algoritmanın biraz daha verimli olduğu ortaya çıktı.

Teslim seçenekleri

Windowsoft için iki teslimat seçeneği vardır:kesme kesme modülü - Özel Üretim Yönetimi için entegre bir çözümün parçası olarak ve ayrı bir yürütülebilir dosya olarak. İlk senaryoda kesme programı ile etkileşim kullanıcıdan tamamen gizlenmiştir. Operatör standart 1C belgeleriyle çalışır:

  • Müşteri siparişlerine göre üretim planı oluşturulur.
  • Bir ürün listesi ve gerekli malzemeler ile plan - vardiya görevleri temelinde
  • Üretim emri içinde yerleştirme optimize edildi
  • Optimizasyon sürecinde, program, devam etmekte olan işten iş detayını çıkarır ve yeni oluşturulan iş detayını hücresel depoya yerleştirir.
  • Bir vardiya işi, manuel üretim için kesim formları yazdırabilir veya CNC makineleri için dosyalar oluşturabilir
  • Ayrıca, bir vardiyadan kesilen ürünler için etiketler ve arabalar ve piramitler için yerleşim şemaları yazdırılır.
  • Üretim görevleri temelinde, gereksinimler oluşturulur - ihtiyaçlar ve standart ambalaj dikkate alınarak malzemelerin atölyeye aktarılması için faturalar

Yazılım Arayüzü (Linear Nesting API)

Girdi veri dosyası setup.ini, yürütülebilir dosyanın bulunduğu klasöre yerleştirilir.
Çıktı veri dosyaları - result.txt, resultproduct.txt ve resultstick.txt - aynı klasörde oluşturulur.
Oknosoft:cuting demo datası ile dosyaları sayfanın sonundaki linkten indirebilirsiniz. Dosyalar aşağıdaki etiketleri kullanır:

  • Outputvariant - dosyanın çıktı dosyasının yapısı. Olası değerler: sekme, oknosoft, varsayılan oknosoft
    • "Oknosoft" seçeneğinde, sonuçürün.txt ve resultstick.txt dosyaları, ürünlerin boşluklara yerleştirilmesi ve sonuçta elde edilen trim hakkında bilgilerle oluşturulur.
    • "Sekme" varyantı, "sekme" karakterleriyle ayrılmış beş değeri görüntüler: ürün uzunluğu, kamçı numarası, kamçı uzunluğu, kesim numarası ve iş parçasının geri kalanı
  • Algoritma - kullanılan algoritma. Olası değerler: rastgele, muhafazakar, genetik, varsayılan genetik
    • Rastgele - seçeneklerin rastgele seçimi
    • Muhafazakar - bir sonraki yinelemenin örnekleri aynı "üst öğeden" gelir
    • Genetik - iki ebeveynden
  • Varyasyon - değişkenlik, "muhafazakar" ve "genetik" algoritmaların parametresi. Ne kadar yüksek olursa, yavrular ebeveynlere "benzer" o kadar az olur. Varsayılan 1'dir.
  • Nesiller - algoritma yineleme sayısı, varsayılan 40000
  • Kişiler - "nüfus"taki "örneklerin" sayısı, bir yinelemede kullanılan çözümlerin sayısı. "Rastgele" algoritma, yalnızca bir örnekle (çözüm) nesiller * yinelemeler yapar
  • Bıçak Genişliği - testere genişliği
  • StickLength - yeni çubuğun uzunluğu
  • Ürünler - ürün uzunluğu
  • Hurda - yuvada kullanılan hurdanın uzunluğu
  • Wrongsnipmin - "kötü" bir renk örneğinin minimum uzunluğu
  • Wrongsnipmax - "kötü" bir kesimin maksimum uzunluğu
    Optimizasyon sonuçlarında, Wrongsnipmin ve Wrongsnipmax arasında uzunluklara sahip kırpmalar olmayacak

çift ​​kesim

Çift testereyi destekleyen makineler için veri hazırlarken kullanılır. Bu durumda, makineye aynı anda iki profil kamçı yerleştirilir ve bir kesme döngüsünde iki özdeş yarı mamül ürün oluşturulur.

Çift kesme görevi, verileri optimizasyon programına aktarmadan önce gruplandırarak ve ardından kesme sonuçlarını ürün ve iş parçası çiftleri halinde çoğaltarak çözülür. UPZP'nin içine yerleştirme yaparken sistem, terminolojinin özelliklerini dikkate alır ve kesme makinelerinin özelliklerine bağlı olarak tekli veya çiftli kesme kullanır.

Çok sayıda ürünün kesilmesi

Bir yandan, yüksek kalitede bir optimizasyon elde etmek için, programın girişinde önemli sayıda farklı uzunluklarda ürün alınmalıdır, böylece optimize edicinin "neyi sıralayacağını" bilmesi gerekir. Öte yandan, çok büyük partilerle, numaralandırmanın sabit sayıda yinelemesinde maksimumu bulma olasılığı azalır. Deneyler, 60-120 boşluktan oluşan bir partinin optimal olduğunu göstermiştir (bu, eşleştirilmiş kesim ile 30-60 üründen oluşan bir üretim döngüsüne karşılık gelir). 120'den fazla iş parçasını optimize etmeniz gerekiyorsa, sorunu N parçaya bölerek ve her parça için ardışık optimizasyonlar gerçekleştirerek en iyi sonuçlara ulaşılabilir. Üretim görevleri partilerinin oluşumunun işlenmesi, ürünleri profil tipine göre gruplayabilir ve vardiya görevlerinde maksimum dağılıma sahip ürünleri seçebilir, operatörü üretim belgelerini derleme rutin işinden kurtarır.

Kesim örneklerini ve belgeleri indirin

  • Demo tek ve çift kesim kartları: 60.01 Kesme yaprağı
  • Belgeler ve örnek dosyalar:

Kesme Hattı - Doğrusal kesme programı

Sürüm: 2.49


Bit derinliği: 32bit


Tabletka: Kürlenmiş


Programların algoritmik kısmını geliştirirken ana kriter olarak atık minimizasyonu ilkesi seçilmiş, arayüz kısmını geliştirirken yazar programları günlük kullanımda basit ve kullanışlı hale getirmeye çalışmıştır.

Doğrusal boşlukların parçalara en uygun şekilde kesilmesi programı

Program aşağıdaki işlevlere ve özelliklere sahiptir:











Fiyat listemiz, ortak sıralama ve optimizasyon temasıyla ilgili üç ürünü içerir:

  • Profiller ve uzun malzemeler için doğrusal kesme programı
  • Cam, sandviç, sunta ve diğer sac malzemelerin iki boyutlu kesimi için program
  • Lojistik problemlerini çözmek için rota optimizasyon programı

Yerleştirme modülleri, hem entegre Windowssoft çözümü: Özel Üretim Yönetimi'nin bir parçası olarak hem de ayrı programlar olarak sağlanabilir. 1C'den kesme programlarını çağırırken, içe aktarma gerekmez - ara dosyalara veri aktarımı. Kullanıcı standart bir arayüzde çalışır ve 1C'nin harici optimize edicilerle etkileşiminin tüm incelikleri, tablo parçalarının doldurulması işlemini gerçekleştirir. Envanter bakiyelerinin muhasebeleştirilmesi amacıyla, üretimdeki iş süsleri ve malzemeler, standart belgeler ve tipik 1C konfigürasyonlarının kayıtları kullanılır.

Doğrusal kesim (profil, boru, kütük)

Envanter onaylı mahsul yüzdesi sağlar

Sitede canlı demo

Aşağıdaki örnek statik bir resim değil, çalışan bir web uygulamasıdır.
butonu ile profil kesimine başlayabilirsiniz. Başlama, ürün ve iş parçası ölçülerinizi belirleyin, optimizasyon ayarlarını değiştirin ve çözümü değerlendirin.
Tabii ki, tarayıcıdaki optimize edici yerel programdan daha yavaştır, ancak bilgisayarınıza herhangi bir şey indirip yüklemenize gerek kalmadan ücretsiz olarak uygulanabilir sonuçlar elde etmenizi sağlar.

20000 r.

Cam ve sac malzemelerin kesilmesi

En yüksek kalitede kesim tabloları oluşturur. Teorik sınıra yakın bir oranda malzeme tasarrufu sağlar. Çalışmayan artıkların alanı, kesilen malzemenin toplam alanı ve tüm yaprak sayısı gibi göstergelerde popüler Opty-Way, MaxCut, PerfectCut, Kesme vb. programlardan %10-12 daha iyi performans gösterir. Kullanılmış

Tüm 2D yerleştirme algoritmaları OOO Programs of Cutting, Novosibirsk, geliştirici: Shilyaev Vladimir Genrikhovich tarafından geliştirilmiştir. Oknosoft, geliştiricinin resmi satıcısıdır ve bir alt lisans sözleşmesi kapsamında programı hem ayrı bir ürün olarak satma hem de geliştirmelerimizin bir parçası olarak kullanma hakkına sahiptir.

40000 r.

Programda yuvalamayı neden optimize etmelisiniz?

Birçok müşteri şöyle diyor: "İyi bir testerem var. Camı ve kafadaki profili mükemmel bir şekilde kesiyor. Çöpe sadece üçgenler giriyor."
Çoğu zaman, bu doğrudur. Aynı zamanda, liderin görevlerinden biri, istikrarı sanatçıların dehasına bağlı olmayan öngörülebilir bir süreç düzenlemektir. Üretim planına dayalı yazılım kesim optimizasyonu, bu hedefi yakınlaştıran önlemlerden biridir.

Bir kişinin aynı süre içinde kafasında bir bilgisayardan daha fazla kombinasyon yapabileceğini varsayarsak, otomatik kesme ile elde edilen ~%1 kesme katsayısı, Genius'un sağlayabileceği kontrolsüz ve yönetilmeyen %1'den daha çekici görünecektir. Optimizasyon görevlerini programa aktarmak, işletme yararına harcayacağı ek zamanı (günde 1-2 saat) serbest bırakabilir.

Aslında, çoğu işletmede kırpma ile durum daha kötüdür. Şartnamede %4-7 mertebesinde katsayılar yer alır ve atölye %3-5 kırpma ile çalışıyorsa bu iyi bir sonuç olarak kabul edilir. Gerçek mahsul faktöründe% 3-5'lik bir azalma, malzemelere harcanan her milyon için 30-50 bin ruble tasarruf sağlar. Yine de bu, planlanan maliyete fazladan ruble dahil etmemeyi ve alıcıya daha uygun fiyatlar sunmayı mümkün kılacaktır.

Optimal malzeme tüketimi sorunu birkaç bölümden oluşmaktadır.

Ölçülen malzemelerin depo muhasebesi

İşletmenin özelliklerine bağlı olarak, müşteriler malzemeler için çeşitli muhasebe şemaları kullanır:

  • Üretim planına göre gereksinimler oluşturulur - ürünleri gösteren faturalar. Ek materyallerin verilmesi (yeterli değil) ayrı belgelere yansıtılır. Ürünlerin bu belgelerde belirtilmesi arzu edilir, ancak gerekli bir koşul değildir. Bu durumda, atölyeye sadece bugün üretilen ürünlerin özelliklerinde ve sadece gerekli miktarda olan malzemeler verilir. Bu yaklaşımın dezavantajı, daha fazla belge hazırlama ihtiyacı ve sahalarda malzeme stoğunun olmamasıdır (belki bu bir avantajdır?)
  • Gereksinimler - faturalar, master'ların isteklerine dayalı olarak üretim planına başvurulmadan eşzamansız olarak oluşturulur. Bu yaklaşım, depo sahibi için minimum operatör maliyetiyle "canlı bir depo" elde etmenizi sağlar, ancak aşırı malzeme harcamasına karşı koruma sağlamaz. Tüketimin şartnamelere uygunluğunun tüm sorumluluğu bu durumda ustalara ve işçilere aittir. Plan-gerçek maliyet analizi sapmalar gösterecektir, ancak çok geç olabilir

İş trimi için muhasebe

İhtiyaçların - faturaların üretim planına göre oluşturulduğu bir senaryoda mümkündür. Kesimin başlangıcındaki iş kesiminin geri kalanı özel bir kayıttan alınır ve gerçek dengeye göre operatör tarafından ayarlanabilir. Bir üretim ataması yapılırken, depodan alınması gereken malzeme miktarına ilişkin veriler gereksinimlere - faturalara yerleştirilir ve sonuçta ortaya çıkan iş kesimine ilişkin veriler kayıt defterine geri eklenir.

Sanatçıların Etkileşimi

Yuvalama iyileştiriciyi kullanıp kullanmamaya karar verirken şunları göz önünde bulundurun:

  • Otomatik kesim ile, bir ürünle ilgili segmentler optimizasyon haritası boyunca "dağınık" olacağından, ürünlerin "testere altından" kaynağını (montajını) organize etmek imkansızdır.
  • Üretim döngüsü uzuyor, boşlukları depolamak için bir havuz düzenlenmesi gerekiyor. Bir uzlaşma, 30 - 50 parçalık partiler halinde kesim yapmaktır. Aynı zamanda, yüksek kesme oranları elde edilir ve kaynak alanları ve bağlantı parçalarının düzgün bir şekilde yüklenmesi sağlanır.
  • Mağazanın plandaki değişikliklere yanıt verme verimliliği azalır. Bir yöneticinin bugünün planına yeni bir ürün eklemesi gerekiyorsa, bu optimizasyon sonuçlarını daha da kötüleştirecektir.

Doğrusal kesme yazılımı

Sürüm: 2.49
Geliştirici: Shibaev Yury Anatolyevich Ukrayna, Cherkasy
Geliştirici sitesi: http://www.cuttinghome.com/
Bit derinliği: 32bit
Windows 7 ile uyumlu: evet
Arayüz dili: İngilizce + Rusça
Tabletka: Kürlenmiş
Sistem Gereksinimleri: Minimum
Açıklama: KESME programı, malzemenin doğrusal parçalara optimum şekilde kesilmesi için tasarlanmıştır. Program ağaç işleme, mobilya üretimi, metal kesme, cam kesme vb. alanlarda kullanılabilir. Programlar, minimum atıkla hızlı bir şekilde kesim yapmanızı sağlayan benzersiz, yüksek hızlı bir algoritmaya dayanmaktadır.



Programların algoritmik kısmını geliştirirken ana kriter olarak atık minimizasyonu ilkesi seçilmiş, arayüz kısmını geliştirirken yazar programları günlük kullanımda basit ve kullanışlı hale getirmeye çalışmıştır.
Program aşağıdaki işlevlere ve özelliklere sahiptir:
. kesilecek isteğe bağlı sayıda iş parçası ve segmentin ayarlanması
. örneğin ad ve renk gibi belirli özelliklere göre boşlukları ve bölümleri ayarlama
. malzeme türünü dikkate alarak hesaplama (malzeme adı, renk)
. kesici takımın genişliğinin ayarlanması
. segmentlerin ve kalıntıların toplam uzunluklarının hesaplanması
. farklı kesme modları ayarlama
. geçerli oturumun önceki yuvalarını geri yükleme
. belirtilen iş parçalarını ve kesimleri spesifikasyon olarak kaydetme
. yeni bir analiz seçeneğine kaydedilmiş bir malzeme listesi ekleme
. yuvayı daha sonra kurtarma olasılığı olan bir dosyaya kaydetme
. Kesim sonuçlarının hem grafik hem de tablo biçiminde görüntülenmesi ve yazdırılması
. eksiksiz referans bilgi sistemi.

Fiyat listemiz, ortak sıralama ve optimizasyon temasıyla ilgili üç ürünü içerir:

  • Profiller ve uzun malzemeler için doğrusal kesme programı
  • Cam, sandviç, sunta ve diğer sac malzemelerin iki boyutlu kesimi için program
  • Lojistik problemlerini çözmek için rota optimizasyon programı

Yerleştirme modülleri, hem entegre Windowssoft çözümü: Özel Üretim Yönetimi'nin bir parçası olarak hem de ayrı programlar olarak sağlanabilir. 1C'den kesme programlarını çağırırken, içe aktarma gerekmez - ara dosyalara veri aktarımı. Kullanıcı standart bir arayüzde çalışır ve 1C'nin harici optimize edicilerle etkileşiminin tüm incelikleri, tablo parçalarının doldurulması işlemini gerçekleştirir. Envanter bakiyelerinin muhasebeleştirilmesi amacıyla, üretimdeki iş süsleri ve malzemeler, standart belgeler ve tipik 1C konfigürasyonlarının kayıtları kullanılır.

Doğrusal kesim (profil, boru, kütük)

Envanter onaylı mahsul yüzdesi sağlar<1%. Ряд клиентов приобрели наши алгоритмы для замены программ оптимизации, поставлявшихся производителями отрезных станков. В программе использован алгоритм плотной укладки и генетический алгоритм поиска решения. На вход поступают данные о количестве и размерах изделий и деловых отходов. На выходе формируются карты раскроя с указанием тележек и ячеек. При необходимости, формируются файлы для обрабатывающих центров, станков с ЧПУ и этикетки с подробной информацией об отрезаемой заготовке и примыкающих элементах.

Sitede canlı demo

Aşağıdaki örnek statik bir resim değil, çalışan bir web uygulamasıdır.
butonu ile profil kesimine başlayabilirsiniz. Başlama, ürün ve iş parçası ölçülerinizi belirleyin, optimizasyon ayarlarını değiştirin ve çözümü değerlendirin.
Tabii ki, tarayıcıdaki optimize edici yerel programdan daha yavaştır, ancak bilgisayarınıza herhangi bir şey indirip yüklemenize gerek kalmadan ücretsiz olarak uygulanabilir sonuçlar elde etmenizi sağlar.

20000 r.

Cam ve sac malzemelerin kesilmesi

En yüksek kalitede kesim tabloları oluşturur. Teorik sınıra yakın bir oranda malzeme tasarrufu sağlar. Çalışmayan artıkların alanı, kesilen malzemenin toplam alanı ve tüm yaprak sayısı gibi göstergelerde popüler Opty-Way, MaxCut, PerfectCut, Kesme vb. programlardan %10-12 daha iyi performans gösterir. Kullanılmış

Tüm 2D yerleştirme algoritmaları OOO Programs of Cutting, Novosibirsk, geliştirici: Shilyaev Vladimir Genrikhovich tarafından geliştirilmiştir. Oknosoft, geliştiricinin resmi satıcısıdır ve bir alt lisans sözleşmesi kapsamında programı hem ayrı bir ürün olarak satma hem de geliştirmelerimizin bir parçası olarak kullanma hakkına sahiptir.

40000 r.

Programda yuvalamayı neden optimize etmelisiniz?

Birçok müşteri şöyle diyor: "İyi bir testerem var. Camı ve kafadaki profili mükemmel bir şekilde kesiyor. Çöpe sadece üçgenler giriyor."
Çoğu zaman, bu doğrudur. Aynı zamanda, liderin görevlerinden biri, istikrarı sanatçıların dehasına bağlı olmayan öngörülebilir bir süreç düzenlemektir. Üretim planına dayalı yazılım kesim optimizasyonu, bu hedefi yakınlaştıran önlemlerden biridir.

Bir kişinin aynı süre içinde kafasında bir bilgisayardan daha fazla kombinasyon yapabileceğini varsayarsak, otomatik kesme ile elde edilen ~%1 kesme katsayısı, Genius'un sağlayabileceği kontrolsüz ve yönetilmeyen %1'den daha çekici görünecektir. Optimizasyon görevlerini programa aktarmak, işletme yararına harcayacağı ek zamanı (günde 1-2 saat) serbest bırakabilir.

Aslında, çoğu işletmede kırpma ile durum daha kötüdür. Şartnamede %4-7 mertebesinde katsayılar yer alır ve atölye %3-5 kırpma ile çalışıyorsa bu iyi bir sonuç olarak kabul edilir. Gerçek mahsul faktöründe% 3-5'lik bir azalma, malzemelere harcanan her milyon için 30-50 bin ruble tasarruf sağlar. Yine de bu, planlanan maliyete fazladan ruble dahil etmemeyi ve alıcıya daha uygun fiyatlar sunmayı mümkün kılacaktır.

Optimal malzeme tüketimi sorunu birkaç bölümden oluşmaktadır.

Ölçülen malzemelerin depo muhasebesi

İşletmenin özelliklerine bağlı olarak, müşteriler malzemeler için çeşitli muhasebe şemaları kullanır:

  • Üretim planına göre gereksinimler oluşturulur - ürünleri gösteren faturalar. Ek materyallerin verilmesi (yeterli değil) ayrı belgelere yansıtılır. Ürünlerin bu belgelerde belirtilmesi arzu edilir, ancak gerekli bir koşul değildir. Bu durumda, atölyeye sadece bugün üretilen ürünlerin özelliklerinde ve sadece gerekli miktarda olan malzemeler verilir. Bu yaklaşımın dezavantajı, daha fazla belge hazırlama ihtiyacı ve sahalarda malzeme stoğunun olmamasıdır (belki bu bir avantajdır?)
  • Gereksinimler - faturalar, master'ların isteklerine dayalı olarak üretim planına başvurulmadan eşzamansız olarak oluşturulur. Bu yaklaşım, depo sahibi için minimum operatör maliyetiyle "canlı bir depo" elde etmenizi sağlar, ancak aşırı malzeme harcamasına karşı koruma sağlamaz. Tüketimin şartnamelere uygunluğunun tüm sorumluluğu bu durumda ustalara ve işçilere aittir. Plan-gerçek maliyet analizi sapmalar gösterecektir, ancak çok geç olabilir

İş trimi için muhasebe

İhtiyaçların - faturaların üretim planına göre oluşturulduğu bir senaryoda mümkündür. Kesimin başlangıcındaki iş kesiminin geri kalanı özel bir kayıttan alınır ve gerçek dengeye göre operatör tarafından ayarlanabilir. Bir üretim ataması yapılırken, depodan alınması gereken malzeme miktarına ilişkin veriler gereksinimlere - faturalara yerleştirilir ve sonuçta ortaya çıkan iş kesimine ilişkin veriler kayıt defterine geri eklenir.

Sanatçıların Etkileşimi

Yuvalama iyileştiriciyi kullanıp kullanmamaya karar verirken şunları göz önünde bulundurun:

  • Otomatik kesim ile, bir ürünle ilgili segmentler optimizasyon haritası boyunca "dağınık" olacağından, ürünlerin "testere altından" kaynağını (montajını) organize etmek imkansızdır.
  • Üretim döngüsü uzuyor, boşlukları depolamak için bir havuz düzenlenmesi gerekiyor. Bir uzlaşma, 30 - 50 parçalık partiler halinde kesim yapmaktır. Aynı zamanda, yüksek kesme oranları elde edilir ve kaynak alanları ve bağlantı parçalarının düzgün bir şekilde yüklenmesi sağlanır.
  • Mağazanın plandaki değişikliklere yanıt verme verimliliği azalır. Bir yöneticinin bugünün planına yeni bir ürün eklemesi gerekiyorsa, bu optimizasyon sonuçlarını daha da kötüleştirecektir.

Malzeme kesimini optimize etmek için programlar

Bu katalog, malzeme kesimini optimize etmek için çeşitli yerel bilgisayar programlarına bağlantılar içerir.ve bu konuda çeşitli yayınlar.

Malzeme kesme optimizasyonu yöntemi, Sovyet bilim adamları LV Kantorovich ve VA Zalgaller tarafından yazılmış, doğrusal programlama algoritmalarının sistematik olarak sunulduğu ve ayrıca problem için dinamik programlamanın yapıldığı 1951 tarihli "Endüstriyel malzemelerin rasyonel kesiminin hesaplanması" çalışmasına dayanmaktadır. Doğrusal programlama algoritmaları ile kesme ve birleştirme hakkında.

Dünyada hem genel nitelikte hem de tamamen özel olan çok sayıda kesme optimizasyon programı geliştirilmiştir. Aşağıda, geliştiricilerin web sitelerinden indirilebilecek programların bağlantıları bulunmaktadır. Bunların açıklamaları da var.

kesme
program, sac ve rulo malzemeler için optimum kesim haritalarının otomatik olarak derlenmesi için tasarlanmıştır,

örneğin sunta, MLF (mobilya imalatında), cam veya diğer herhangi bir levha veya rulo malzeme. Yüksek verim yüzdesine sahip yuvalama kartlarını verimli ve hızlı bir şekilde elde etmenizi sağlar. Ücretli, demo mevcut
geliştirici sitesi
http://picaro.ru
Astra Kesim
program sac malzemelerin kesilmesini optimize etmek için tasarlanmıştır (
sunta, metal, cam ve plastik ) . Astra Nesting, siparişler ve malzemeler hakkında hızlı bilgi girişi sağlar; otomatik ve manuel kesim tabloları oluşturma; boyutsal kalıntıların tam muhasebesi ve sonraki siparişlerde kesilmesi; kesim tablolarının ve özelliklerin yazdırılması. Paralı
geliştirici sitesi http://www.astrapro.ru Temel kesme
Kaynak malzemenin verilen boyutlarında dikdörtgen parçaların konturlarının en uygun konumunu yüksek bir hesaplama hızıyla birleştiren, sac malzemeyi kesmek için otomatik haritalar oluşturmak için bir program. Temel - Yapıcı - Mobilya Üreticisi kompleksinin ayrılmaz bir parçasıdır.
Ücretli, demo mevcut
geliştirici sitesi http://www.bazissoft.ru kesme
CUTTING ailesinin programları, malzemenin dikdörtgen veya doğrusal parçalara optimum şekilde kesilmesi için tasarlanmıştır. Programlar ağaç işleme, mobilya üretimi, metal kesme, cam kesme vb. alanlarda kullanılabilir. Programlar, minimum atıkla hızlı bir şekilde kesim yapmanızı sağlayan benzersiz, yüksek hızlı bir algoritmaya dayanmaktadır. Ücretli, demo mevcut
geliştirici sitesi http://www.cuttinghome.com
Kesme hattı
program, doğrusal boşlukların çeşitli uzunluklarda doğrusal bölümlere en uygun şekilde kesilmesi için tasarlanmıştır ve ağaç işleme, kağıt hamuru ve kağıt endüstrilerinde, metal işlemede, giysi üretiminde vb. kullanılabilir.
Ücretli, demo mevcut
geliştirici sitesi http://www.cuttinghome.com

PaneCut, kullanılan malzeme atık yüzdesini önemli ölçüde azaltmanıza olanak tanıyan, sac ve doğrusal malzemelerin kesilmesini optimize etmeye yönelik bir programdır.Ücretli, demo mevcut
geliştirici sitesi http://www.vsgroup.ua
NCL- P Herhangi bir konfigürasyonun detayları için sac malzemeyi otomatik kesme programı. Geliştirici Polevov A.V.Özgür
program web sitesi http://freesoft.ru/ncl_v13
Optimum
Malzemelerin dikdörtgen parçalara en uygun şekilde kesilmesi için program.
ortak yazılım
geliştirici sitesi http://wincad.ru

Bazis Mobilyacı
mobilya devlerinden bireysel girişimcilere kadar, herhangi bir işletmede bireysel veya seri dolap mobilyası üretimini etkin bir şekilde organize etmenizi sağlayan birbiriyle ilişkili programlar kompleksi. Sistemin bileşimi: Temel-Mobilya Yapıcı (temel), Temel-Kesme, Temel-Tahmin, Temel-İç.

Ücretli, demo mevcut
geliştirici sitesi http://www.bazissoft.ru
bCAD mobilya üreticisi
dolap mobilyalarının üretiminin tasarımı ve hazırlanması için tasarlanmış özel bir yazılım paketi. Paket, belirli araçlarla desteklenen temel bCAD modülünü içerir. Yuvalama uygulaması, alınan modellerin ayrıntıları için otomatik olarak bir yuvalama haritası oluşturmanıza olanak tanır. Bir malzeme seçtiğinizde, uygulama otomatik olarak seçilen malzemeden projede bulunan parçaların bir listesini sunar. Kullanılan sacların parametreleri, ilk testerenin yönü, takım sayısı belirlenir. Uygulama, kesme artıklarını dikkate almanıza, parametrelerini kaydetmenize ve gelecekte kullanmanıza olanak tanır.
geliştirici sitesi http://bcad-ug.ru

İnternette benzer programlar bulmak zor değil, dahil. Bedava

Dolap mobilyalarının üretiminde malzemelerin otomatik olarak kesilmesi teorisi ve pratiği. Bunakov P.Yu., Kaskevich N.V., Kolomna: GOSGI, 2010. 170 s.

Makine mühendisliğinde malzeme kesiminin optimizasyonu: ders kitabı / S.I. Vdovin, O.E. Jür. - Kartal: I. S. Turgenev'in adını taşıyan OSU, 2016. - 45 s.

V.A. Skaternoy "Hafif endüstride kesme malzemelerinin optimizasyonu" ed. Kıyafet endüstrisi. Legprombytizdat, 1989,
- 144 sn

Abushenko Alexander Viktorovich tarafından derlenmiştir, Ekim. 2005, referanslar kontrol edildi Ocak. 2017

ÇEŞİTLİ ÖLÇÜLERDE DİKDÖRTGENLERDE LEVHA MALZEME KESİM OPTİMİZASYONU

Giniatullina Regina Airatovna

1. sınıf yüksek lisans öğrencisi, Uygulamalı Matematik ve Enformatik Bölümü, KNRTU. BİR. Tupolev, Rusya Federasyonu, Kazan

E-posta:regina[e-posta korumalı] yandex. tr

Galiev Şamil İbrahimoviç

bilimsel danışman, Dr. tech. Sci., ITKiI Profesörü KNRTU im. BİR. Tupolev, Rusya Federasyonu, Kazan

Çelik ve diğer sacların giyotin kesimi, makine mühendisliği ve diğer endüstrilerde yaygın olarak kullanılmaktadır. Bu yuvalama, aslında, çeşitli boyutlardaki kareleri giyotin prosedürünü kullanarak belirli bir levhaya paketleme görevidir. Sac israfını azaltmak önemlidir. Ambalaj sorunlarına olan ilgi, büyük pratik önemi ile açıklanmaktadır. Kural olarak, bu tür görevler, ürünlerin maliyetini düşürmedeki ana faktörlerden birinin kaynakların rasyonel kullanımı olduğu malzeme yoğun endüstrilerle ilgilidir. Bu görev, paketleme (kesme) görevlerinin geleneksel olarak makine mühendisliği, ahşap işleme, hafif ve inşaat sektörlerinde ortaya çıktığı sektörlerde çok çeşitli pratik uygulamalara sahiptir. .

1. Göreve göre gözden geçirin

Endüstride, çeşitli nihai ürünlerin imalatında, belirli boyutlardaki levhaların dikdörtgen boşluklar halinde en uygun şekilde kesilmesi sorunu ortaya çıkar. Bu görev şu şekildedir: karelerin boyutları, sayfanın boyutu bilinmektedir. Sayfanın giyotin ile kesilebilmesi için verilen karelerin üst üste binmeyecek şekilde sayfa içerisine yerleştirilmesi gerekmektedir. Giyotin kesim, malzemenin kenarlarına paralel bir dizi açık kesimle uygulanan kesim olarak anlaşılır. Ek olarak, bu kareler döndürme olmadan ortogonal olarak paketlenmelidir, yani seçilen her tip elemanı için, yüksekliği olan taraf, sayfanın yüksekliği olan kenarına paralel olmalıdır. H. Farklı boyutlardaki kareleri bir dikdörtgene paketleme problemini ele alacağız. Bu sorunu tek bir kesin algoritma kullanarak çözelim. Çözümün optimal değerini belirlemek için dal ve sınır algoritmasını (ki buna da bakacağız) farklı girdilerle yinelemeli olarak çalıştıran özyinelemeli bir prosedüre dayanır.

2. Projenin amacı

Bu çalışmanın amacı, kareleri bir dikdörtgene paketlemek için çözümler bulabilen bir algoritmayı incelemek ve uygulamaktır. Söz konusu problem, çeşitli endüstrilerde yaygın olarak kullanılmaktadır: makine mühendisliği, ağaç işleri, hafif ve inşaat endüstrileri.

Elde edilen sonucun, bir dikdörtgen içine yazılmış çeşitli büyüklükteki kareler şeklinde ve kullanıcı tarafından istenen ilgili ek bilgiler şeklinde görüntülenme olasılığını uygulamak gerekir. Örneğin, örneğin: algoritma çalışma süresi, çeşitli hata bilgileri vb.

3. Genel gereksinimler

1) Karelerin paketleneceği levha dikdörtgenin (genişlik ve yükseklik) boyutlarının manuel olarak ayarlanması;

2) Kare boyutlarının manuel girişi (aynı veya farklı olabilirler);

3) Algoritma yürütme sonuçlarının görsel olarak gözden geçirilmesi (ilgili bilgilerin çıktısı ile: algoritma yürütme süresi, bir dikdörtgene yazılan belirli bir boyuttaki karelerin sayısı);

4) Halihazırda girilen kareler hakkındaki bilgileri bir dosyaya kaydetme.

4. Sorunun alaka düzeyi

Tasarlanan sistemin temel amacı, temel kare paketleme algoritmasına uygunluk ve son kullanıcı tarafından kullanım kolaylığı, hata toleransıdır.

Tasarlanan sistemin görevleri ve işlevleri gereksinimlere uygun olmalıdır.

Bu yazıda önerilen algoritma, kareleri verilen boyutlarda dikdörtgen bir alana yerleştirme problemini verimli bir şekilde çözmek için kullanılabilir. Bu problem, geleneksel olarak kesme-paketleme görevlerinin ortaya çıktığı endüstrilerde çok çeşitli pratik uygulamalara sahiptir. Ele alınan algoritma pratik hesaplamalarda kullanılabilir ve otomatik tasarım ve kontrol sistemlerine dahil edilebilir. Ayrıca sorunun şu an için geçerli olduğu da söylenebilir, çünkü kareleri bir dikdörtgene paketleme ihtiyacı vardır ve bu ihtiyaç asla bitmez, yani problem her zaman alakalı olacaktır.

Kesme-paketleme problemleri modern kombinatoryal optimizasyonda önemli bir yer tutar ve hem Rusya'da hem de yurtdışında birçok bilim insanının dikkatini çeker.

Kesim-paketleme sorunlarına olan ilgi, özellikle, büyük pratik önemi ile açıklanmaktadır. Kural olarak, kesme-paketleme uygulamaları, üretilen ürünlerin maliyetini düşürmenin ana faktörlerinden birinin kaynakların rasyonel kullanımı olduğu malzeme yoğun endüstrilerle ilgilidir.

5. Mevcut kesme sistemleri.

ORION, ASTRA CUTTING, TEHTRAN gibi sac malzeme kesimi için birçok yazılım ürünü bulunmaktadır. Bunlardan birini TEHTRAN örneğinde ele alalım.

Termal kesme makinelerini kullanan işletmeler için modern bilgi teknolojilerinin tanıtılması en acil görevlerden biridir. Kesim programlarının hazırlanma süresinin kısaltılması, parçaların levha üzerine en uygun şekilde yerleştirilmesi ve daha az malzeme tüketiminin, ürünlerin maliyetini ve kalitesini kesin olarak etkileyeceği açıktır.

Yeni yazılım ürünü Tektran / Kesim ailenin programlarını tamamlar Tektran ve sac malzemeyi kesmek için programlar tasarlamak için tasarlanmıştır. CAM sisteminin yetenekleri burada üretim sürecini organize etme işlevleriyle birleştirilmiştir. Programda kullanılan çözüm yaklaşımı, termal kesme makineleri işleten birkaç işletmenin deneyimlerini özetlemektedir. Görev, parçaları tabakalar üzerinde en uygun şekilde hızlı bir şekilde düzenlemek ve bu parçaların kesim görevine göre, seçilen parçaların isimlendirilmesinden ve her bir parça için miktarlarından oluşan kontrol programlarını elde etmektir. İşten sonra kalan iş atık sayfaları daha sonra kullanılmak üzere sistem veri tabanına kaydedilmelidir.

6. Problemin resmileştirilmesi ve matematiksel bir modelin geliştirilmesi

Çalışmanın ardından problemin matematiksel bir modelini sunuyoruz.

Dal ve sınır algoritması, tamsayılı doğrusal programlama (ILP) modeline dayanmaktadır. Bu formülasyondaki basitlik adına, her bir elemanın farklı olduğunu, yani her bir tip için olduğunu varsayıyoruz. J dikdörtgenler, genişlik, yükseklik ve kazanıma sahip özdeş elemanlar tanımlarız. (1) toplam eleman sayısı olsun. Her eleman için k 1 değerini alan bir ikili değişken tanıtıyoruz, ancak ve ancak öğe k optimal çözüme dahildir. Genel iki boyutlu sırt çantası problemi için ILP modeli aşağıdaki gibidir:

burada: - yazılı karenin boyutları,

Dikdörtgenin kendisinin boyutları,

sen- optimal çözümün değerine ilişkin herhangi bir üst sınır ve C bir tabakaya giyotinle paketlenemeyen tüm eleman alt kümelerinin kümesini belirtir. Eşik değeri için sen yani, giyotin kısıtlamalarının atlandığı basitleştirmeye karşılık gelen iki boyutlu sırt çantası problemi için optimal çözümün değerini kullanıyoruz. (3) ve (4) kısıtlamalarının gereksiz olduğunu, ancak onu güçlendirmek için formülasyona eklendiğini unutmayın. Algoritmamız, kısıtlamaların (5) ortadan kaldırıldığı ve aşağıdaki ayırma problemini çözerek mevcut çözümün geçerli olup olmadığının kontrol edildiği basitleştirilmiş bir problemi çözmektedir: giyotin yaklaşımıyla çarşafa sığar mı? Cevap olumlu ise, genel iki boyutlu sırt çantası probleminin optimal çözümü bulunur. Aksi takdirde, ihlal edilen yeni bir kısıt bulunur ve işlem tekrarlanır.

Bu yaklaşım, Caprara ve Monasi tarafından 2D sırt çantası probleminin kesin çözümü için ve Piesinger ve Sigard'a göre genel 2D sırt çantası probleminin çözümü için önerilen yönteme benzer. Daha kesin olarak, model (2)-(6), elemanların sıralandığı özel bir dal ve sınır yöntemiyle çözülür. Üst sınırlar, Martello ve Toth üst sınırı kullanılarak problem (2)-(3)'ün LP gevşemesinden elde edilir. Ters geçiş, üst sınır mevcut çözümü aşmadığında veya bazı kısıtlamalar (3)-(5) ihlal edildiğinde gerçekleşir.

2-6 numaralı problemde kesimin giyotin olduğu dikkate alınmaz. Tüm koşullar göz önüne alındığında, özyinelemeli bir çözüm yöntemi düşünüyoruz.

7. Çözüm yöntemi

Bu alt bölümde, iki boyutlu giyotin dolguların numaralandırılması için özyinelemeli bir prosedürü ele alıyoruz. Özyinelemeli olarak adlandırılan bir prosedürde, bir yaprak üzerindeki bir öğe alt kümesinin her geçerli düzenlemesini geçerli bir paketleme olarak belirtiriz. Her geçerli paketleme, negatif olmayan bir tamsayı vektörü olarak temsil edilebilir; burada her bir koordinat paketteki türün öğelerinin sayısını temsil eder. olarak belirtmek ambalaj karı. Bir tabakaya başka hiçbir öğe paketlenemiyorsa izin verilen paketlemenin maksimum olduğunu söylüyoruz, yani paketleme tüm eleman türleri için mümkün olmadığı ortaya çıktı, bu yüzden . İki geçerli paket için ve yeni ambalajı şu şekilde tanımlıyoruz: , .

Özyinelemeli prosedür, tabakayı (yatay veya dikey) bir giyotin kesim aracılığıyla yinelemeli olarak iki parçaya bölerek tüm geçerli ambalajları örtük olarak numaralandırır. Prosedür, herhangi bir kabul edilebilir (giyotin) ambalajın kârının alt sınırı olan parametreyi girdi olarak alır.

Christodes ve Whitlog tarafından belirtildiği gibi, herhangi bir iki boyutlu paketleme problemi için normal bir modele karşılık gelen optimal bir çözüm vardır, yani herhangi bir paketlenmiş eleman için sol tarafının diğerinin sağ tarafına bitişik olduğu bir çözüm. eleman veya sayfanın sağ tarafı. Bu, yalnızca öğe genişliklerinin bir kombinasyonu olarak elde edilebilen, yani kümeye ait olan koordinatlara göre dikey kesimleri dikkate alabileceğimiz anlamına gelir:

Benzer şekilde, koordinatlar boyunca sadece yatay kesitleri dikkate alıyoruz. aşağıdaki kümeye ait:

Her iki kümenin öğelerinin artan düzende sıralandığını ve küme ve .

Verilen ve ve bir karar eşiği, verilen öğelerin (artık öğeler ve levha ile birlikte) 'ye eşit veya daha büyük bir kâr üretebilen bir boyut levhası halinde tüm uygulanabilir (izin verilen) ambalajlarının kümesi olsun. Verilen iki tatmin edici ambalaj için Ve setlerdeki ambalajların ikili toplamı ile resmi olarak belirtiriz ve:

Sezgisel olarak, setlerin boyutlarına bakılmaksızın herhangi bir ambalajın herhangi bir ambalajla birleştirilmesiyle elde edilebilen ambalaj setidir. Küme tanımlandıktan sonra, tüm (sırasıyla) öğelerin sıralı bir kümeye (sırasıyla) ait olması koşuluyla kümeleri bulabileceğimiz açıktır. Benzer şekilde, bir kümeyi bilmek, kümeleri tanımlamamızı sağlar. Gerçekten de, her paketin Dikdörtgende en az 'ye eşit bir kar üretebilen , daha küçük dikdörtgen için tanımlanan izin verilen iki ambalajın toplamı olarak elde edilebilir. Resmi olarak: , her yerde Ve Bazıları için veya Ve bazı . Böylece, bilmek ve her için ve , özyinelemeli bir şekilde kolayca elde edebiliriz (üretebiliriz).

Temel algoritma aşağıdaki gibi geliştirilebilir. Bir genişlik ve yükseklik sayfasındaki her paket için, kalan alan hesaplandığında, örneğin maksimum kâr için bir üst sınır elde edilebilir. Bu amaçla, her biri bir kâr ve ağırlığa sahip olan kopyalarda mümkün olan eleman türlerini, kapasitesi olan sırt çantası örneklerini düşünün. Bu durumdaki optimal çözüm veya bu değer üzerindeki herhangi bir üst sınır, kalan elemanların sayfanın geri kalanına paketlenmesiyle elde edilebilecek maksimum kâr üzerinde bir üst sınır verir. Tüm unsurların böyle olduğu açıktır. 'den daha büyük bir karı olan uygun bir çözüme yol açamayacakları için kümeden çıkarılabilirler. Uygulamamızda, sırt çantası probleminin (tek boyutlu) durumunun optimal çözümü üzerindeki üst sınırın değerini hesaplıyoruz (bakınız ). Üst sınırların değerleri ve Haifi tarafından elde edilen değerler ile Yang-Gun ve Kang tarafından iki boyutlu (ortogonal) kısıtlama olmadan sırt çantası problemi için önerilen aynı değerler, bu değerlerin minimumunu üst olarak kullanıyoruz. ciltli.

Ek olarak, tabakanın genişliğinin ve yüksekliğinin sırasıyla ve 'ye düşürülebileceğini ve bunun, sırt çantası gevşeme problemini çözerken daha düşük bir sırt çantası gücü ile sonuçlanabileceğini ve dolayısıyla daha doğru üst sınırlar sağlanabileceğini unutmayın. Son olarak, her set için yalnızca izin verilen maksimum ambalajın depolanması gerektiğini ve maksimum olmayan herhangi bir öğenin göz ardı edilebileceğini unutmayın. Bu, içindeki öğelerin sayısını azaltır, dolayısıyla algoritmanın bellek ve hesaplama süresi gereksinimleri.

8. Sistemin giriş ve çıkış verileri

Giriş verileri:

1. Dikdörtgen tabakanın genişliği;

2. Dikdörtgen sayfanın yüksekliği;

3. Karelerin boyutları;

Çıktı:

5. Monitör ekranında bulunan dikdörtgenler;

6. Yazılı dikdörtgenler hakkında bilgi içeren metin dosyası;

7. Dikdörtgenleri ekrana çeşitli mesajlar şeklinde sığdırma hakkında ek bilgiler.

8.5. Kullanıcı arayüzü geliştirme

Kullanım için en uygun olduğu için kullanıcı arayüzünün grafik biçiminde yapılması tavsiye edilir.

Veri giriş ve çıkış formu

Şekil 1. Kullanıcı Arayüzü

Önce dikdörtgenin genişliğini giriyoruz, enter'a basıyoruz, yükseklik - enter'a basıyoruz ve karelerin boyutlarını giriyoruz, örneğin 23 - enter, 45 - enter, vb., kareleri girmeyi durdurmak için 0'a basıyoruz ve sonuç dosyası beliriyor. projenin kaydedildiği yerde .png karelerin ambalajını görebilirsiniz.

Aynı pencere, belirli boyutlardaki karelerin sayısı hakkında bilgi görüntüler. 0'a basın ve dikdörtgen alanı karelerle doldurma süresi hakkındaki bilgileri görün.

Yapılan tüm işlemlerden sonra şunları elde ederiz:

Şekil 2. Programın sonucu

ve paketin kendisi:

Şekil 3. Kareleri bir dikdörtgenin içine yerleştirme

Tablo 1.

Programın sayısal sonuçları

Dikdörtgen Boyutu

Tahmini kare sayısı

Toplam kare sayısı

Sonuç: ne kadar çok kare girilirse, algoritma yürütme süresi o kadar uzun olur.

9. Sonuç

Çalışmanın amacına uygun olarak aşağıdaki görevler belirlenmiş ve gerçekleştirilmiştir:

1. Söz konusu kesme-paketleme problemlerinin matematiksel programlama açısından formüle edilmesi ve çözüm yöntemlerinin niteliksel bir değerlendirmesi;

2. Çeşitli büyüklükteki kareleri bir dikdörtgene yerleştirme problemini çözmek için bir algoritma geliştirilmiş ve araştırılmıştır;

3. Geliştirilen yöntemin etkinliği, sayısal deneylerin sonuçlarına dayalı olarak analiz edilmiştir.

Kaynakça:

1.Tekhran / Sac malzeme [Elektronik kaynak] - Erişim modu. - URL: http://9132222.ru/catalog/soft/techtran/textran.html (06/12/2014 tarihinde erişildi).

2.Caprara A, Monaci M. İki boyutlu sırt çantası problemi üzerine. Yöneylem Araştırması Mektupları 2004;32:5–14.

3. Christofides N, Whitlock C. İki boyutlu kesme problemleri için bir algoritma. Yöneylem Araştırması 1977;25:30–44.

4. Hifi M. Kısıtlı iki boyutlu kesme stoğu için Viswanathan ve Bagchi'nin kesin algoritmasında bir iyileştirme. Bilgisayarlar ve Yöneylem Araştırması 1997;24:727–36.

5. Martello S, Toth P. Sırt çantası problemleri: algoritmalar ve bilgisayar uygulamaları. Chichester: John Wiley & Sons; 1990.

6.Pisinger D, Sigurd M. İki boyutlu kutu paketleme problemini çözmek için ayrıştırma tekniklerini ve kısıtlama programlamayı kullanma. INFORMS Journal on Computing 2007;19:36–51

7.Young-Gun G, Kang MK. Kısıtlamasız iki boyutlu kesme ve paketleme için yeni bir üst sınır. Yöneylem Araştırması Derneği Dergisi 2002;53:587–91.