Lineair snijprogramma. Snijoptimalisatieprogramma

Het programma is ontworpen om het zagen van profielen en andere lange materialen (hout, boomstammen, buizen, vensterbanken) te optimaliseren.
Er wordt gebruik gemaakt van het algoritme "dichte plaatsing", dat wil zeggen dat het genomen product op het kortste resterende deel van het werkstuk wordt gelegd waarop het is geplaatst. Als het nergens past, wordt er een nieuwe blanco genomen. De optimalisatietaak is het vinden van een reeks producten waarin minder werkstukken zullen worden gebruikt en de lengte van bedrijfsresten langer zal zijn. Bij de eerste stap worden de producten op de stangen geplaatst willekeurige volgorde. Er ontstaat een ‘oorspronkelijke populatie’. Tijdens het besluitvormingsproces muteert en vermenigvuldigt de populatie zich, sterven niet-succesvolle exemplaren en blijven de beste evolueren. Alles is hetzelfde als in de dieren- en plantenwereld + kunstmatige selectie.

Livedemo op de website

Het onderstaande voorbeeld is geen statische afbeelding, maar een werkende webapplicatie.
Met de knop kunt u het profielsnijden starten Begin, stel uw product- en werkstukafmetingen in, wijzig de optimalisatie-instellingen en evalueer de oplossing.
Natuurlijk werkt de browseroptimalisatie langzamer dan het oorspronkelijke programma, maar u kunt er wel gratis werkbare resultaten mee verkrijgen zonder dat u iets op uw computer hoeft te downloaden en te installeren.

Voordelen

  • Oknosoft:cutting biedt snijkaarten hoge kwaliteit. Talrijke implementaties bevestigen de werkelijke trimverhouding van niet meer dan 1% bij het optimaliseren van batches van 30 contouren (~120 segmenten)
  • Om brongegevens te lezen en snijresultaten vast te leggen, gebruikt het programma eenvoudige formaten tekstbestanden, wat de integratie met door de klant geïmplementeerde boekhoudsystemen vereenvoudigt
  • Indien nodig kan het knippen worden uitgevoerd onder Linux of OS X in een browser of Node.js met het doorgeven van parameters via url-, web-socket- of javascript-objecten

Lineaire optimalisatie-algoritmen

Gebruikt in windowsoft:snijden genetisch algoritme. De essentie ervan is dit:
Laten we elke verdeling van producten over de rijen een oplossing noemen. Laten we een objectieve functie definiëren waarmee we de kwaliteit van oplossingen kunnen vergelijken. Laten we verschillende willekeurige oplossingen bedenken en deze een generatie noemen. Laten we de regels bepalen voor het verkrijgen van de volgende generatie. Kopieert met de beste doelfunctie het grootste deel van hun “genenpool” doorgeven, dit is onze “kunstmatige selectie”. Nu hoeft u alleen nog maar het systeem aan zijn lot over te laten, het te laten muteren en de snijresultaten te optimaliseren
Tijdens het ontwikkelingsproces hebben we de ‘Monte Carlo’-methode getest, waarbij onze ‘instances’ willekeurig en onafhankelijk van elkaar zijn, en ‘Ant-algoritmen’ (ACO-mierenkolonie-optimalisatie). Alle methoden bleken behoorlijk efficiënt, maar het genetische algoritme bleek iets effectiever

Bezorgopties

Er zijn twee leveringsmogelijkheden voor de Oknosoft-snijmodule: snijden - inclusief alomvattende oplossing Beheer van aangepaste productie en als afzonderlijk product uitvoerbaar bestand. Interactie met het snijprogramma in het eerste scenario is volledig verborgen voor de gebruiker. De operator werkt met standaard 1C-documenten:

  • Op basis van klantorders wordt een productieplan opgesteld
  • Op basis van het plan - ploegendienstopdrachten met een lijst van producten en benodigde materialen
  • Snijoptimalisatie vindt plaats binnen de productietaak
  • Tijdens het optimalisatieproces neemt het programma bedrijfsafsnijdsels van onderhanden werk en plaatst het nieuw gevormde bedrijfsafsnijdsels in het mobiele magazijn
  • De ploegtaak kan snijformulieren afdrukken voor handmatige productie of bestanden genereren voor CNC-machines
  • Ook worden vanuit een ploegendienst labels voor gesneden producten en lay-outdiagrammen voor karren en piramides afgedrukt.
  • Op basis van productieopdrachten worden eisen gevormd: facturen voor het overbrengen van materialen naar de werkplaats, rekening houdend met de behoeften en standaardverpakkingen

Programma-interface (lineaire snij-API)

Het invoergegevensbestand is setup.ini en wordt in de map met het uitvoerbare bestand geplaatst.
De uitvoergegevensbestanden - result.txt, resultproduct.txt en resultstick.txt - worden in dezelfde map gegenereerd.
U kunt bestanden met demogegevens voor Oknosoft:cutting downloaden via de link aan het einde van de pagina. In de bestanden worden de volgende tags gebruikt:

  • Uitvoervariant - de uitvoerbestandsstructuur van het bestand. Mogelijke waarden: tab, oknosoft, standaard oknosoft
    • In de optie "oknosoft" worden de bestanden resultproduct.txt en resultstick.txt gegenereerd met informatie over de plaatsing van producten op de werkstukken en de resulterende trim
    • De optie "tab" geeft vijf waarden weer, gescheiden door "tab"-tekens: productlengte, staafnummer, staaflengte, zaagnummer en resterend werkstuk
  • Algoritme - het gebruikte algoritme. Mogelijke waarden: willekeurig, conservatief, genetisch, standaard genetisch
    • Willekeurig - willekeurige selectie van opties
    • Conservatief - exemplaren van de volgende iteratie komen van dezelfde 'ouder'
    • Genetisch - van twee ouders
  • Variatie - variabiliteit, een parameter van de "conservatieve" en "genetische" algoritmen. Hoe hoger, hoe minder de nakomelingen ‘lijken’ op hun ouders. Standaard is 1.
  • Generaties - aantal algoritme-iteraties, standaard 40000
  • Personen - het aantal “instanties” in de “populatie”, het aantal oplossingen dat in één iteratie wordt gebruikt. Het "willekeurige" algoritme voert eenvoudigweg generaties*personen-iteraties uit met één instantie (oplossing)
  • KnifeWidth - zaagbreedte
  • StickLength - lengte van de nieuwe stick
  • Producten - productlengte
  • Restjes - lengte van het afval dat bij het snijden wordt gebruikt
  • Wrongsnipmin – minimale lengte van een “slecht” patroon
  • Verkeerdesnipmax – maximale lengte"slechte" snoei
    De optimalisatieresultaten bevatten geen trims met een lengte tussen Wrongsnipmin en Wrongsnipmax

Paar knippen

Wordt gebruikt bij het voorbereiden van gegevens voor machines die het snijden van paren ondersteunen. In dit geval worden twee profielstaven tegelijk in de machine geplaatst en worden in één snijcyclus twee identieke halffabrikaten gevormd

Het probleem van gepaard snijden wordt opgelost door de gegevens te groeperen voordat deze naar het optimalisatieprogramma worden overgebracht en vervolgens de snijresultaten te dupliceren in paren producten en plano's. Bij het snijden in de UPZP houdt het systeem rekening met de eigenschappen van het artikel en maakt het gebruik van enkelvoudig of paarsgewijs snijden, afhankelijk van de mogelijkheden van de snijmachines

Een groot aantal producten snijden

Om optimalisatie van hoge kwaliteit te bereiken, moet de programma-invoer enerzijds een aanzienlijk aantal producten van verschillende lengtes ontvangen, zodat de optimizer “iets te sorteren heeft”. Aan de andere kant neemt bij zeer grote batches de kans om het maximum te vinden met een vast aantal iteraties af. Experimenten hebben aangetoond dat een batch van 60–120 plano's optimaal is (wat overeenkomt met een productiecyclus van 30–60 producten bij het in paren snijden). Als er meer dan 120 werkstukken moeten worden geoptimaliseerd, beste resultaten kan worden bereikt door het probleem in N delen te verdelen en voor elk deel opeenvolgende optimalisaties uit te voeren. Het verwerken van de vorming van batches van productietaken kan producten groeperen op profieltype en producten selecteren met maximale variatie voor ploegendiensten, waardoor de operator wordt ontlast routinematig werk over het opstellen van productiedocumenten

Download snijvoorbeelden en documentatie

  • Demokaarten voor enkel en dubbel snijden: 60.01 Snijvellen
  • Documentatie en voorbeeldbestanden:

Knippen, goedkeuren, voorbeeld bekijken, labels, help, sluiten

Opties

  • Filter "Soorten materiële activa", lijst met artikelen die zijn opgenomen in het geselecteerde type of subtype materiële activa, tabblad "Profielen", tabblad "Vullingen"
  • Het filter 'Soorten materiële activa' is bedoeld om het zoeken te vergemakkelijken bepaalde typen en subtypen van materiële activa, als het nodig is om een ​​selectie van gegoten en plaatcomponenten over te dragen voor het snijden.
    De lijst met artikelen wordt weergegeven in een tabel met de volgende kolommen: “Artikel”, “Naam” en “Textuur”, “Intern”, “Extern”. De lijst met artikelen bevat alle artikelen uit de geselecteerde projecten en gerelateerd aan elk type of subtype componenten.
    Snijparameters worden geregeld:
  • "Profielen", waarbij de standaardlengte van de zweep afkomstig is uit de catalogus "Materiële activa" of handmatig kan worden gewijzigd. De gewijzigde lengte geldt voor de gehele lijst met artikelen.
    Met de engine "Methode" kunt u een prioriteit selecteren bij het snijden: "Minimaal materiaal" om een ​​minimum aan verspilling te verkrijgen (analyse van gepaarde sneden) en "Evaluatie van residuen" om de grootste residuen uit de resulterende trim te verkrijgen. De tweede methode gebruikt meer materialen, maar de resulterende bekleding is geschikter voor verder gebruik. Afmetingen kunnen direct op de snijkaart worden gemarkeerd, d.w.z. op het “knipblad” of in een aparte “tabel”, terwijl op de snijkaart alleen de codes van de vellen van de resulterende snede worden aangegeven. De tweede methode wordt noodzakelijk voor kleine snijmaten. De "Deep Analysis"-methode is een wiskundig apparaat met meer complex algoritme berekening, wat de snijtijd verlengt, maar in sommige gevallen de werkstukken optimaal kan indelen dan andere methoden.
    Door de vlag "Zonder rekening te houden met textuur" in te stellen, kunt u bedrijfsresten gebruiken zonder rekening te houden met texturen (van toepassing op het verder opnieuw schilderen van profielen).
    Als u de vlag "Inclusief lengtes" instelt, kunt u spaties in het rapport weergeven gelijk aan lengte hele hengels die niet hoeven te worden gesneden - gebruikt bij de verkoop van lange lengtes.
    Als u de vlag "Toon geknipte schetsen" instelt, kunt u deze weergeven grafische weergave profielsnijdiagrammen.
    Door de vlag "Alleen zakelijke kladjes nummeren" in te stellen, kunt u alleen een nummer aan zakelijke kladjes toekennen.

Filter

“Hele lengtes in magazijn” - hiermee kunt u het magazijn specificeren waaruit hele lengtes worden gehaald voor het snijden.

“Uitvoer in rapport” - toont de wapeningsnummers (overeenkomend met het nummer van het hoofdprofiel) of het artikelnummer van de container (waarin deze wapening is geïnstalleerd) in de overeenkomstige kolom van de zaagkaart.

Knoppen

  • Met “knippen” wordt de optimalisatie van de geselecteerde artikelen in de artikellijst gestart (selectie gebeurt met de muisaanwijzer). Dubbelklik selecteert alle posities), terwijl je onderaan het formulier na het snijden de snijkaart kunt bekijken.
  • “Goedkeuren” verbiedt de annulering van projecten die naar productie zijn gestuurd en waarvan de specificaties zijn geoptimaliseerd, en plaatst de resulterende trim in het trimmagazijn. Goedkeuring van het snijden voor projecten die niet naar productie zijn gestuurd, is onmogelijk.
  • Met “Bekijken” kunt u de resulterende snijkaart bekijken en in een van de applicaties openen Microsoft Office, sla het op in een bestand of druk het af. Kolommen met artikelbestelnummers zijn toegevoegd aan de rapporttabellen voor groepsprofiel- en vullingsoptimalisaties. Toegevoegd aan het optimalisatierapport voor groepsvulling grafische aanduiding oriëntatie van de hoofdtextuur van het artikel
  • "Labels" - genereren van een rapport met barcodelabels voor bedrijfsbalansen.

In de tabel van het rapport over het groepsgewijs snijden van profielen is de kolom 'Arm.No' geïntroduceerd op basis van het elementnummer van elk product (sorteren van gesneden profielen met de bijbehorende versterking voor elk ervan - op elementnummer in het product )

De voorgedefinieerde rapportage groepszagen van profielen is uitgebreid met een kolom voor de hoogte van de handgreep tot aan de vleugelprofielen (voor markering voor het boren onder de handgreep op het vleugelprofiel direct na het zagen - afzagen van het werkstuk)

Snijlijn - Programma voor lineair snijden

Versie: 2.49
Ontwikkelaar: Shibaev Yuri Anatolyevich Oekraïne, Cherkassy
Website van de ontwikkelaar: http://www.cuttinghome.com/
Bitdiepte: 32 bit
Compatibel met Windows 7: ja
Interfacetaal: Engels + Russisch
Tablet: genezen
Systeemvereisten: minimaal
Beschrijving: Het CUTTING-programma is ontworpen voor het optimaal snijden van materiaal in lineaire delen. Het programma kan worden gebruikt bij houtbewerking, meubelproductie, metaalsnijden, glassnijden, enz. De programma's zijn gebaseerd op een uniek, snel algoritme waarmee u snel kunt snijden met minimale verspilling.
Bij het ontwikkelen van het algoritmische deel van de programma's werd het principe van afvalminimalisatie als belangrijkste criterium gekozen, en bij het ontwikkelen van het interfacegedeelte probeerde de auteur de programma's eenvoudig en handig te maken voor dagelijks gebruik.

Programma voor het optimaal snijden van lineaire plano's in onderdelen

Het programma implementeert volgende functies en kenmerken:
. oefening elk nummer knip blanco's en secties
. het specificeren van blanco's en segmenten volgens bepaalde kenmerken, bijvoorbeeld naam en kleur
. berekening rekening houdend met het soort materiaal (naam materiaal, kleur)
. het instellen van de breedte van het snijgereedschap
. berekening van de totale lengte van segmenten en resten
. oefening verschillende modi het uitvoeren van snijden
. restauratie van eerdere stekken huidige sessie werk
. het opslaan van gespecificeerde werkstukken en secties als specificaties
. het toevoegen van een opgeslagen specificatie aan een nieuwe rekenoptie
. het opslaan van de uitsnede in een bestand met de mogelijkheid van latere restauratie
. snijresultaten bekijken en afdrukken, zowel grafisch als tabelvorm
. compleet systeem referentie-informatie.

Onze prijslijst bevat drie gerelateerde producten gemeenschappelijk thema sorteren en optimaliseren:

  • Programma lineair snijden profielen en lange materialen
  • Programma voor het tweedimensionaal snijden van glas, sandwiches, spaanplaat en andere plaatmaterialen
  • Route-optimalisatieprogramma voor het oplossen van logistieke problemen

Levering van snijmodules is zowel mogelijk als onderdeel van de totaaloplossing Oknosoft: Productiemanagement op maat, als in de vorm individuele programma's. Bij het aanroepen van snijprogramma's vanuit 1C is het niet nodig om gegevens naar tussenbestanden te importeren of exporteren. De gebruiker werkt in standaardinterface, en alle subtiliteiten van de interactie tussen 1C en externe optimizers worden uitgevoerd door het vullen van tabellarische delen te verwerken. Met het oog op de boekhouding van magazijnsaldi, zakelijke voorzieningen en materialen in de productie, standaard documenten en registreert typische configuraties 1C.

Lineair zagen (profiel, buis, boomstam)

Biedt een door de inventaris bevestigd trimpercentage<1%. Ряд клиентов приобрели наши алгоритмы для замены программ оптимизации, поставлявшихся производителями отрезных станков. В программе использован алгоритм плотной укладки и генетический алгоритм поиска решения. На вход поступают данные о количестве и размерах изделий и деловых отходов. На выходе формируются карты раскроя с указанием тележек и ячеек. При необходимости, формируются файлы для обрабатывающих центров, станков с ЧПУ и этикетки с подробной информацией об отрезаемой заготовке и примыкающих элементах.

Livedemo op de website

Het onderstaande voorbeeld is geen statische afbeelding, maar een werkende webapplicatie.
Met de knop kunt u het profielsnijden starten Begin, stel uw product- en werkstukafmetingen in, wijzig de optimalisatie-instellingen en evalueer de oplossing.
Natuurlijk werkt de browseroptimalisatie langzamer dan het oorspronkelijke programma, maar u kunt er wel gratis werkbare resultaten mee verkrijgen zonder dat u iets op uw computer hoeft te downloaden en te installeren.

20.000 wrijven.

Snijden van glas en plaatmateriaal

Genereert snijkaarten van de hoogste kwaliteit. Biedt een materiaalbesparingspercentage dat dicht bij de theoretische limiet ligt. 10-12% beter dan de populaire programma's Opty-Way, MaxCut, PerfectCut, Cutting, etc. in indicatoren als het gebied van niet-zakelijke resten, het totale oppervlak van het materiaal dat wordt gesneden en het aantal hele bladen gebruikt

Alle tweedimensionale snijalgoritmen zijn ontwikkeld bij Cutting Programs LLC, Novosibirsk, ontwikkelaar: Vladimir Genrikhovich Shilyaev. "Oknosoft" is de officiële dealer van de ontwikkelaar en heeft, onder een sublicentieovereenkomst, het recht om het programma zowel als een afzonderlijk product te verkopen als te gebruiken als onderdeel van onze ontwikkelingen

40.000 wrijven.

Waarom snijden optimaliseren in het programma?

Veel klanten zeggen: “Ik heb een goede zaag in dienst. Hij zaagt glas en profielen perfect in zijn hoofd. Alleen driehoekjes belanden in de prullenbak.”
Vaker wel dan niet is dit waar. Tegelijkertijd is een van de taken van een manager het organiseren van een voorspelbaar proces, waarvan de stabiliteit niet afhangt van het genie van de artiesten. Softwarematige optimalisatie van het snijden op basis van het productieplan is één van de maatregelen die ons dichter bij dit doel brengt.

Als we aannemen dat een persoon in dezelfde tijd meer combinaties in zijn hoofd kan maken dan een computer, ziet de snijcoëfficiënt die wordt verkregen door automatisch knippen van ~1% er aantrekkelijker uit dan de ongecontroleerde en oncontroleerbare 1% die een genie kan bieden . Het delegeren van optimalisatietaken aan het programma kan extra tijd vrijmaken (1-2 uur per dag), die ten goede kan komen aan het bedrijf.

In feite is de situatie met toeters en bellen bij de meeste bedrijven erger. De specificaties omvatten coëfficiënten in de orde van 4-7%, en als de werkplaats werkt met een trim van 3-5%, wordt dit als een goed resultaat beschouwd. Een vermindering van de werkelijke snijverhouding met 3-5% betekent een besparing van 30-50 duizend roebel voor elke miljoen uitgegeven aan materialen. Bovendien wordt het hierdoor mogelijk om extra roebels niet in de geplande kostprijs op te nemen en de koper gunstiger prijzen aan te bieden.

Het probleem van optimaal materiaalgebruik bestaat uit verschillende onderdelen

Magazijnboekhouding van gemeten materialen

Afhankelijk van de specifieke kenmerken van het bedrijf, gebruiken klanten verschillende materiaalboekhoudingsschema's:

  • Op basis van het productieplan worden eisen gevormd - facturen die de producten aangeven. De uitgifte van extra materialen (niet genoeg) wordt weerspiegeld in afzonderlijke documenten. Vermelding van producten in deze documenten is wenselijk, maar geen noodzakelijke voorwaarde. In dit geval worden alleen de materialen die in de specificaties van de vandaag vervaardigde producten voorkomen, aan de werkplaats afgegeven en alleen in de vereiste hoeveelheid. Het nadeel van deze aanpak is de noodzaak om meer documenten op te stellen en het gebrek aan materiaalvoorraad op de locaties (misschien is dit een voordeel?)
  • Vereisten - facturen worden asynchroon gegenereerd, zonder verwijzing naar het productieplan, op basis van verzoeken van vakmensen. Deze aanpak maakt het mogelijk om een ​​‘levend magazijn’ te verkrijgen met minimale bedrijfskosten voor de winkelier, maar beschermt niet tegen overmatig materiaalverbruik. In dit geval ligt alle verantwoordelijkheid om ervoor te zorgen dat de stroom aan de specificaties voldoet bij de voormannen en werknemers. Analyse van plan-werkelijke kosten zal afwijkingen aan het licht brengen, maar het kan te laat zijn

Boekhouding voor bedrijfstrim

Mogelijk in een scenario waarin de behoefte-facturen worden gegenereerd op basis van het productieplan. De saldi van de bedrijfstrim aan het begin van het maaien worden uit een speciaal register gehaald en kunnen door de exploitant worden aangepast in overeenstemming met de werkelijke saldi. Bij het uitvoeren van een productietaak worden gegevens over de hoeveelheid materialen die uit het magazijn moeten worden ontvangen, in de vereisten geplaatst - facturen, en worden gegevens over de resulterende bedrijfstaak weer aan het register toegevoegd.

Interactie van artiesten

Wanneer u besluit een snijoptimalisatie te gebruiken, moet u rekening houden met het volgende:

  • Met automatisch snijden is het onmogelijk om het lassen (assemblage) van producten “van onder de zaag” te organiseren, omdat de segmenten die betrekking hebben op één product “verspreid” zullen zijn over de optimalisatiekaart
  • De productiecyclus wordt verlengd en het is noodzakelijk om een ​​pool te organiseren voor de opslag van werkstukken. Een compromis is het snijden in batches van 30 - 50 producten. Tegelijkertijd worden hoge trimsnelheden bereikt en wordt een uniforme belasting van lasgebieden en fittingen verkregen
  • De efficiëntie waarmee de werkplaats kan reageren op planwijzigingen neemt af. Als een manager een nieuw product in het plan van vandaag moet inpassen, zal dit de optimalisatieresultaten verslechteren
zie Lineaire programmeermodellen voor het oplossen van snijproblemen.

Voorbeeld nr. 1. De producten van het papierbedrijf worden geproduceerd in de vorm van papierrollen met een standaardbreedte van elk 2 meter. Volgens speciale bestellingen van consumenten levert het bedrijf rollen van andere formaten, waarvoor standaardrollen worden gesneden. Typische bestellingen voor rollen met niet-standaardformaten worden weergegeven in de tabel.


Het is noodzakelijk om dergelijke combinaties van verschillende opties voor het snijden van standaardrollen te vinden, zodat binnenkomende bestellingen volledig tevreden zijn met minimale verliezen (verspilling).
Laten we alle mogelijke opties voor het snijden van een standaardrol bekijken;
Rolbreedte (m)Opties voor rolsnijdenMinimum aantal rollen
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
Afval in m 0,4 0,3 0,1 0 0,1 0,2 -

Laten we de variabelen definiëren:
X j - aantal standaardrollen gesneden volgens optie j,j =1, 2, 3,4,5, 6.
De beperkingen houden rechtstreeks verband met de eis om de productie van het vereiste aantal niet-standaardrollen te garanderen. Met behulp van de gegevens in de tabel krijgen we:
2X 2 + 2 X 3 + 4 X 4 + X 5 = 150 - aantal rollen 0,5 m breed,
X 1 + X 2 + 2 X 5 = 200 - aantal rollen 0,7 m breed,
X 1 + X 3 + 2 X 6 = 300 - aantal rollen 0,9 m breed.

De uitdrukking voor de totale hoeveelheid papierverlies (afval) (in m) heeft de vorm
0,4X 1 + 0,3X2 + 0,1X3 + 0,1X5 + 0,2X6.

Het algemene wiskundige model heeft dus de vorm
min f(x) = 0,4 X 1 + 0,3X 2 + 0,1X 3 + 0,1X 5 + 0,2X 6.
met beperkingen:
2X 2 + 2 X 3 + 4 X 4 + X 5 = 150
X2 + X2 + 2 X5 = 200
X2 + X3 + 2 X6 = 300

Probleem met materiaalsnijden

Deze taak bestaat uit het ontwikkelen van een plan dat de vereiste set producten levert met minimale verspilling (in lengte, oppervlakte, gewicht, kosten, enz.) bij het snijden van materialen of het maximale aantal sets producten oplevert. Voorbeeld nr. 2. Het is vereist om een ​​optimaal plan te ontwikkelen voor het snijden van standaard staalplaten, waarbij de output van het geplande aantal plano's van verschillende typen wordt gegarandeerd met minimaal totaalverlies, als bekend is dat het uit een partij plaatstaal nodig is om vier soorten plaatstaal te snijden verschillende blanco's in de hoeveelheid b i (i = 1, 2, ..., 4) stukken. Een staalplaat met standaardafmetingen kan op vier manieren worden gesneden. Elke mogelijke snijmethode komt overeen met een snijkaart. Uit de snijkaarten kennen we de opbrengst aan plano's in stukken van verschillende typen a ij (i = 1, 2,...4; j = 1,2,...,4), evenals het afvaloppervlak c j ( j = 1, 2,...,n) bij het snijden van één staalplaat met behulp van de j-de snijmethode. Hoeveel staalplaten moeten er op een of andere manier gesneden worden zodat de verspilling minimaal is?

Tabel 3

Soort
blanco's

Doelplan voor het aantal werkstukken (b 1)

Uitvoer van blanco's (stuks) van verschillende typen
van snijkaarten (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
Afvaloppervlakte, m2
(cj)
1,4 0,1 2,1 0,1

Laten we een economisch en wiskundig model van het probleem creëren. Laten we met x j de hoeveelheid bronmateriaal (staalplaten) aangeven die moet worden gesneden met behulp van een van de methoden j. De beperkingen in het probleem moeten overeenkomen met de geplande uitvoer van verschillende soorten werkstukken. De objectieve functie komt neer op het vinden van de minimale verspilling tijdens het snijden

F=1,4 x 1 +0,1 x 2 +2,1 x 3 +0,1 x 4 →(min)..
Beperkingen op de uitvoer van werkstukken van het i-de type voor alle j-snijmethoden:

Voorbeeld nr. 3. Materiaal uit één monster in de hoeveelheid van eenheden wordt ontvangen voor snijden (snijden, verwerken). Het is vereist om er l verschillende componenten van te maken in hoeveelheden die evenredig zijn met de getallen b 1, b 2, ..., b l (volledigheidsvoorwaarde). Elke eenheid materiaal kan op n verschillende manieren worden gesneden, en met behulp van de i-de methode (i = 1, 2,…,n) krijg je ik eenheden van het k-de product (k = 1, 2,…,l ). Het is noodzakelijk om een ​​snijplan te vinden dat het maximale aantal sets biedt.
Laten we een economisch en wiskundig model van het probleem creëren.
Laten we x i aanduiden – het aantal eenheden materiaal dat is gesneden met behulp van de i-de methode, en x – het aantal vervaardigde sets producten. Vervolgens wordt de objectieve functie gereduceerd tot vinden

F=x →(max),
met beperkingen: door de totale hoeveelheid materiaal gelijk aan de som van zijn eenheden, op verschillende manieren gesneden; volgens de eis van volledigheid en niet-negativiteit van variabelen.

Voorbeeld nr. 4. De onderneming beschikt over boomstammen met een lengte L m die in stukken met een lengte l 1, l 2, l 3 m moeten worden gesneden in respectievelijk hoeveelheden p 1, p 2, p 3.
Het is noodzakelijk om een ​​optimaal plan op te stellen voor het snijden van het materiaal, dat minimale verspilling garandeert, afhankelijk van de vervulling van het plan voor de uitvoer van werkstukken. De initiële gegevens worden weergegeven in de tabel.

TaakLengteAfmetingen werkstukken, mAantal plano's, stuks.
ik 1ik 2ik 3blz. 1p2blz. 3
68 6,5 2,1 2,3 1,4 600 720 900

Oplossing: Laten we eerst een wiskundig model van ons probleem maken. Voor elk ervan zullen we de mogelijke snijopties en verspillingen opschrijven in de vorm van een tabel.
Lengte van het werkstukSnijmogelijkhedenAantal spaties
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
Resterende, m0,2 0 0,9 0,7 0,2 0,5 0

Laten we met x i het aantal stammen aangeven dat is gezaagd volgens de i-de optie (i=1..7). Vervolgens wordt de totale afvalbalans geschreven als een lineaire functie:
Z = 0,2x 1 + 0x 2 + 0,9x 3 + 0,7x 4 + 0,2x 5 + 0,5x 6 + 0x 7
In dit geval moet aan de voorwaarden voor het voldoen aan het plan voor het aantal blanco's worden voldaan, d.w.z.
3x 1 + 2x 2 + 2x 3 + x 4 + x 5 = 600
x 2 + x 4 + 2x 6 + x 7 = 720
x 3 + x 4 + 3x 5 + x 6 + 3x 7 = 900

Om het probleem op te lossen, is het dus noodzakelijk om minZ onder de beperkingen te vinden. Omdat minZ = -max(-Z(x)), zullen we in plaats van het probleem van het minimaliseren van een functie het probleem van het maximaliseren van een functie oplossen:
Z = -(0,2x 1 + 0x 2 + 0,9x 3 + 0,7x 4 + 0,2x 5 + 0,5x 6 + 0x 7)

Voorbeeld nr. 5. Om één product te naaien, moet u 6 delen uit de stof knippen. De kledingfabriek ontwikkelde twee opties voor het snijden van stof. De tabel (hieronder) toont de kenmerken van de snijopties voor 10 m 2 stof, volledigheid, d.w.z. het aantal onderdelen van een bepaald type dat nodig is om één product te naaien. De maandelijkse voorraad stof voor dit soort naaiproducten bedraagt ​​405 m2. Het is de bedoeling om komende avond 90 items te naaien.
Bouw een wiskundig model van het probleem waarmee u het naaiplan de komende maand met een minimum aan afval kunt voltooien.

Tabel - Kenmerken snijmogelijkheden voor stukken stof van 10 m 2

Snijoptie Aantal onderdelen, stuks/stuk Afval, m 2 /snede
1 2 3 4 5 6
1 60 0 90 40 70 90 0,5
2 80 35 20 78 15 0 0,35
Volledigheid, stuks/product 1 2 2 2 2 2

Wiskundige formulering van het probleem

Taakvariabelen
In dit probleem worden de benodigde hoeveelheden niet expliciet aangegeven, maar er wordt gezegd dat aan het maandplan voor het naaien van 90 producten moet worden voldaan. Om 90 producten per maand te naaien, moet een strikt gedefinieerd aantal onderdelen worden gesneden. De snit wordt op twee verschillende manieren gemaakt uit stukken stof van 10 m2, waardoor je een ander aantal onderdelen kunt verkrijgen. Omdat niet vooraf bekend is hoeveel stof er met de eerste methode zal worden gesneden en hoeveel er met de tweede methode zal worden gesneden, kunnen de vereiste waarden worden ingesteld als het aantal stukken stof van 10 m² dat met elke methode wordt gesneden. :
x 1 - het aantal stukken stof van elk 10 m², geknipt volgens de eerste methode binnen een maand, [knippen/maand];
x 2 - het aantal stukken stof van elk 10 m², geknipt volgens de eerste methode binnen een maand, [knippen/maand];

Objectieve functie
Het doel van het oplossen van het probleem is om het plan te voltooien met een minimale hoeveelheid afval. Aangezien het aantal producten strikt gepland is (90 stuks/maand), beschrijft deze parameter niet de TF, maar verwijst hij naar een beperking; het niet naleven ervan betekent dat het probleem niet is opgelost. En het criterium voor de effectiviteit van de implementatie van het plan is de parameter "hoeveelheid afval", die tot een minimum moet worden beperkt. Omdat bij het snijden van één stuk (10 m2) stof volgens de eerste optie 0,5 m2 afval wordt verkregen, en volgens de tweede optie - 0,35 m2 (zie Tabel 1), is de totale hoeveelheid afval tijdens het snijden (CF) weergave
L(x) = 0,5x 1 + 0,35x 2 = min,

Beperkingen
Het aantal stofsneden op verschillende manieren wordt beperkt door de volgende voorwaarden:

  • Er moet aan een plan voor het naaien van producten worden voldaan, dat wil zeggen het totaal aantal uitgesneden delen moet zodanig zijn dat er per maand 90 producten uit kunnen worden genaaid, namelijk: er moeten minimaal 90 van het 1e type zijn en minimaal 90 onderdelen van andere typen 180 (zie tabel voor volledigheid).
  • Het stofverbruik mag de voorraad van een maand in het magazijn niet overschrijden;
  • Het aantal stukken gesneden stof kan niet negatief zijn.
De beperkingen op het naaiplan voor jassen hebben het volgende betekenisvolle invoerformulier.
(Totaal aantal onderdelen nr. 1 gesneden voor alle opties)≥ (90 stuks);
(Totaal aantal onderdelen nr. 2 gesneden voor alle opties) ≥ (180 stuks);
(Totaal aantal onderdelen nr. 6 gesneden voor alle opties) ≥ (180 stuks);

Wiskundig gezien worden deze beperkingen geschreven als :
60x 1 + 80x 2 ≥90;
35x 2 ≥180;
90x 1 + 20x 2 ≥180;
40x 1 + 78x 2 ≥180;
70x 1 + 15x 2 ≥180;
90x 1 ≥180;

De stofverbruikslimiet kent de volgende registratievormen:
Inhoudelijk
(totaal aantal geknipte stoffen per maand)≤ (405m2)
Wiskundig
x 1 +x 2 ≤405/10

De niet-negativiteit van het aantal gesneden segmenten wordt weergegeven in het formulier
x 1 ≥ 0, x 2 ≥ 0

Het wiskundige model van het probleem heeft dus de vorm
L(x) = 0,5x 1 + 0,35x 2 = min [m 2 afval/maand],
60x 1 + 80x 2 ≥90;
35x 2 ≥180;
90x 1 + 20x 2 ≥180;
40x 1 + 78x 2 ≥180;
70x 1 + 15x 2 ≥180;
90x 1 ≥180;
x 1 +x 2 ≤40,5
x 1 ≥ 0, x 2 ≥ 0

Voorbeeld nr. 6. Er zijn 69 leidingen voor het warmtenet, elk 1070 cm. Ze moeten in buizen van 130, 150 en 310 cm worden gesneden. Zoek een optie voor het doorsnijden van de inkomende leidingen waarbij de verspilling minimaal is.

Fase 1. Bepaal opties voor optimaal pijpsnijden.

Snijmogelijkheden 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
Restjes 10 0 20 40 60 50 70 90 110 100 120 10 30

Fase 2.
Laten we een economisch en wiskundig model van het probleem creëren. Laten we met x j het aantal pijpen aangeven dat moet worden doorgesneden met behulp van een van de methoden j. De objectieve functie komt neer op het vinden van de minimale verspilling bij het snijden:
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

Antwoord: het is noodzakelijk om alleen de tweede snijoptie te gebruiken (zero waste)