Enhet 7 / 9

Supply Chain och logistikoptimering

Vinster:

  • Förmåga att identifiera problem med utformning av supply chain-nätverk, rutt och lagerlayout
  • Möjlighet att använda AI i scenariogenerering, begränsningslistning och konstruktion av optimeringsmodeller
  • Förmåga att validera AI-föreslagna lösningar med kostnads-, kapacitets- och leveransbegränsningar

Försörjningskedjan är hela flödet av material, information och pengar från råvaror till slutkunden. Varje beslut i detta nätverk (var man ska köpa, vilket lager som ska lagras, vilken väg som ska skickas) har en balans mellan kostnad, hastighet och hållbarhet. Optimering är inte magi här, det innebär en väldefinierad objektiv funktion och begränsningar. Artificiell intelligens är mycket kraftfull inom detta område när det gäller att strukturera problemet, skapa scenarier, lista begränsningar och utarbeta optimeringsmodellen; Men påståenden om "bästa lösningen" måste alltid valideras mot begränsningar och faktiska kostnader. I den här enheten kommer vi att diskutera nätverksdesign, ruttoptimering och lagerbeslut med AI-stöd.

Karta över problem med optimering av leveranskedjan

Att känna igen optimeringsproblem är det första steget i att bygga rätt modell.

problem

beslutsvariabel

Typiskt syfte

nätverksdesign

Vilken anläggning/lager ska öppnas?

Total fast + rörlig kostnad min

Uppdrag/tilldelning

Vilken kund från vilket lager?

Transportkostnad min

Fordonsdirigering (VRP)

Vilket fordon gör vilka stopp, i vilken ordning?

Total distans/tid min

lagerlayout

Var ska produkterna placeras?

Plockavstånd min

Val av transportsätt

Land/hav/luft

Balans mellan kostnad och hastighet

Den gemensamma ramen för varje problem är densamma: beslutsvariabler, objektiv funktion, begränsningar. AI:s mest värdefulla bidrag är att det hjälper dig att översätta ett affärsproblem till dessa tre komponenter.

Roll: Du är industriingenjör med inriktning på optimering av försörjningskedjan. Uppgift: Översätt följande affärsproblem till en optimeringsmodell. Specificera: (1) beslutsvariabler, (2) objektiv funktion, (3) begränsningar (kapacitet, efterfrågetillfredsställelse, icke-negativitet), (4) typ av detta problem. Problem: "Vi har 3 fabriker och 5 distributionscenter. Kapaciteten för varje fabrik och efterfrågan på varje center är säkra. Transportenhetskostnader från fabrik till center är olika. Minimera den totala transportkostnaden Vi vill ladda ner den." Regel: Namnge modelltypen (t.ex. transportproblem), skriv tydligt antagandena.

Detta är ett klassiskt transportproblem. AI kan känna igen detta och bygga det korrekta matematiska skelettet; Du placerar också verklig kapacitet och efterfrågan data.

Ruttoptimering (VRP) och betydelsen av begränsningar

Fordonsdirigering är det vanligaste och felaktigt etablerade problemet i praktiken. Det är stor skillnad mellan enkel "kortaste väg" (TSP) och sann VRP: fordonskapacitet, tidsfönster (timmar när kunden kan hämta), körtidsgränser, flera fordon.

Varning: När AI rekommenderar en rutt "glömmer" den ofta eller uppskattar kapacitets- och tidsfönsterbegränsningar. A route loaded with more cargo than a vehicle can carry may seem "short" but is impractical. Kontrollera varje rutt individuellt för total last ≤ kapacitet och ankomsttid ∈ tidsfönster.

Svag prompt / Stark prompt

Svag uppmaning:

Ange den kortaste vägen för dessa 8 hållplatser.

Om det inte finns kapacitet, tidsfönster och antal fordon ger AI en enkel rangordning; Det håller inte i verklig drift.

Kraftfull uppmaning:

Föreslå en ruttplan för följande 8 kunder. Det finns 2 fordon, kapaciteten för varje är 100 enheter. Varje kunds efterfrågan och tidsfönster bifogas. Utcheckning från lagret 08:00. Antag medelhastighet 40 km/h. Utdata: ordning på stopp för varje fordon, kumulativ last (får inte överskrida kapaciteten), beräknade ankomsttider (för att passa tidsfönstret), total distans. Om det finns en överträdelse av begränsningen, ange det tydligt och föreslå ett alternativ. Data: {{ ... }}

Den andra uppmaningen lägger uttryckligen på begränsningar och begär överträdelsekontroll från AI. Det är dock viktigt att verifiera resultatet med en lösare eller manuellt; AI garanterar inte absolut optimalitet.

Optimalt eller bara "bra"?

Det finns ett kritiskt koncept här: lösningen som AI (och de flesta praktiska metoderna) hittar är ofta en bra lösning (heuristisk), inte en optimal. Det sanna optimala hittas av en matematisk lösare (som OR-Tools, Gurobi, PuLP) som löser den korrekt konstruerade modellen. AI:s roll är att bygga modellen, inte lösa den.

Skriv ett modellskelett för att lösa följande transportproblem med Python PuLP:- Beslutsvariabler x[i][j] (i fabrik, j centrum)- Mål: totalkostnadsminimering- Begränsning: utbud av varje fabrik, efterfrågan från varje center, x >= 0Förklara koden med kommentarer, men jag kommer att ange numeriska data. Dessutom: lista vilka kontroller jag behöver göra när lösningen kommer ut.

Tips: Istället för att säga åt AI:n att "skriva koden och ta reda på det", säg till den "skriv koden så kör jag den." Detta gör optimering till en sann lösare; Du litar inte på AI-uppbyggda (och overifierade) siffror som säger "här är min lösning".

Lager- och lokaliseringsbeslut

Produktplacering på lagret påverkar direkt plockavståndet. Grundprincipen är att placera ofta flyttade (hög omsättning) föremål nära plockstället (ABC-placering). AI kan producera ett layoutförslag med data om produktrörelser; Men fysiska begränsningar (hyllstorlek, vikt, separation av farligt material, kylkedja) måste övervakas av människor.

Minifodral: Kort på papper, omöjligt i fält

Ett distributionsföretag gör 40 leveranser per dag med 3 fordon. Industriingenjör Selin ger stopp, förfrågningar och fordonskapacitet till AI och ber om en ruttplan. AI producerar ett skott som ser snyggt ut och har ett lågt totalavstånd. Men när Selin kollar inser hon att den kumulativa belastningen på ett fordons rutt överstiger kapaciteten med 15 %; Det finns även två hållplatser där kunden kan hämta på eftermiddagen men är planerad på morgonen. Selin skriver begränsningarna tydligare på prompten och återskapar dem och verifierar sedan planen med OR-Tools. Resultatet blir genomförbart. Lektion: Planen som AI kallade "kortast" var faktiskt inte den kortaste och var till och med ogiltig på grund av överträdelser av begränsningar.

Vanliga misstag

  • Anger inte begränsningar: Begär en rutt utan kapacitet, tidsfönster och antal fordon.
  • Att missförstå AI för en lösare: Acceptera den "optimala" lösningen som ges av AI som en riktig lösare.
  • Inte kontrollera för överträdelser av begränsningar: Implementera planen utan att kontrollera den ackumulerade belastningen och ankomsttiderna.
  • Fokusera på ett enda mål: Optimera endast kostnaden och glömma hållbarhet/risk (beroende av en leverantör).
  • Att inte använda verkliga kostnader: Bygga en modell med standard/tillverkade enhetskostnader och inte uppdatera den med riktiga data.

Sammanfattningsvis

  • Varje optimering av försörjningskedjan kokar ner till tre komponenter: beslutsvariabler, målfunktion, begränsningar.
  • AI:s mest värdefulla bidrag är att översätta affärsproblemet till rätt modelltyp (transport, VRP, uppdrag).
  • Kapacitets- och tidsfönsterbegränsningar är avgörande i VRP; AI hoppar över dessa ofta, se till att kontrollera dem.
  • AI bygger, inte löser; En lösare (PuLP, OR-Tools) bör göra själva optimeringen.
  • Förutom kostnad bör även hållbarhet och risk vara målet; Beroende av en leverantör/enkel väg är en dold kostnad.

Applikationsuppgift

Konstruera ett leverans-/distributionsproblem (t.ex. 3 lager, 5-8 kunder, krav och fordonskapacitet). Låt först AI modellera problemet som en beslutsvariabel, mål och begränsning och namnge problemtypen. Ge sedan ett VRP-scenario och be om en ruttplan; Kontrollera själv den ackumulerade lasten och ankomsttiderna för varje fordon i utgången. Kritisk verifiering: summera den totala lasten för minst ett fordon manuellt och jämför den med kapaciteten och leta efter en överträdelse av begränsningen. Låt slutligen AI:en skriva lösarens (PuLP)-kodskelettet och designa ett arbetsflöde som förhindrar AI:n från att generera falska siffror, med en "Jag kör lösningen"-metoden.