Enhet 7 / 9

Supply Chain og Logistikk Optimalisering

Gevinster:

  • Evne til å identifisere forsyningskjedenettverksdesign, rute- og lagerlayoutproblemer
  • Evne til å bruke AI i scenariogenerering, begrensningsliste og optimaliseringsmodellkonstruksjon
  • Evne til å validere AI foreslåtte løsninger med kostnads-, kapasitets- og leveringsbegrensninger

Forsyningskjeden er hele flyten av materialer, informasjon og penger fra råvarer til sluttkunden. Hver avgjørelse i dette nettverket (hvor den skal kjøpes, hvilket lager som skal lagres, hvilken rute som skal sendes) finner en balanse mellom kostnad, hastighet og holdbarhet. Optimalisering er ikke magi her, det betyr en veldefinert objektiv funksjon og begrensninger. Kunstig intelligens er veldig kraftig på dette området når det gjelder å strukturere problemet, generere scenarier, liste opp begrensninger og utarbeide optimaliseringsmodellen; Men "beste løsning"-krav må alltid valideres mot begrensninger og faktiske kostnader. I denne enheten vil vi diskutere nettverksdesign, ruteoptimalisering og lagerbeslutninger med AI-støtte.

Kart over problemer med forsyningskjedeoptimalisering

Å gjenkjenne optimaliseringsproblemer er det første trinnet i å bygge den riktige modellen.

problem

beslutningsvariabel

Typisk formål

nettverksdesign

Hvilket anlegg/lager skal åpnes?

Total fast + variabel kostnad min

Oppdrag/tildeling

Hvilken kunde fra hvilket lager?

Transportkostnad min

Ruting av kjøretøy (VRP)

Hvilket kjøretøy gjør hvilke stopp, i hvilken rekkefølge?

Total distanse/tid min

lageroppsett

Hvor skal produktene plasseres?

Plukkavstand min

Valg av transportmodus

Land/sjø/luft

Balanse mellom kostnad og hastighet

Det felles rammeverket for hvert problem er det samme: beslutningsvariabler, objektiv funksjon, begrensninger. AIs mest verdifulle bidrag er at det hjelper deg å oversette et forretningsproblem til disse tre komponentene.

Rolle: Du er industriingeniør med spesialisering i forsyningskjedeoptimalisering. Oppgave: Oversett følgende forretningsproblem til en optimaliseringsmodell. Spesifiser: (1) beslutningsvariabler, (2) objektiv funksjon, (3) begrensninger (kapasitet, etterspørselstilfredshet, ikke-negativitet), (4) type av dette problemet. Problem: "Vi har 3 fabrikker og 5 distribusjonssentre. Kapasiteten til hver fabrikk og etterspørselen til hvert senter er sikker. Transportenhetskostnadene fra fabrikk til senter er forskjellige. Minimer den totale transportkostnaden Vi ønsker å laste den ned." Regel: Gi navn til modelltypen (f.eks. transportproblem), skriv tydelig antagelsene.

Dette er et klassisk transportproblem. AI kan gjenkjenne dette og bygge det riktige matematiske skjelettet; Du plasserer også reell kapasitet og etterspørselsdata.

Ruteoptimalisering (VRP) og viktigheten av begrensninger

Ruting av kjøretøy er det hyppigst oppståtte og feiletablerte problemet i praksis. Det er stor forskjell mellom enkel "korteste vei" (TSP) og ekte VRP: kjøretøykapasitet, tidsvinduer (timer når kunden kan hente), kjøretidsbegrensninger, multi-kjøretøy.

Forsiktig: Når AI anbefaler en rute, "glemmer" den ofte eller tilnærmer kapasitets- og tidsvindusbegrensninger. En rute lastet med mer last enn et kjøretøy kan bære kan virke "kort", men er upraktisk. Sjekk hver rute individuelt for total last ≤ kapasitet og ankomsttid ∈ tidsvindu.

Svak forespørsel / sterk forespørsel

Svak melding:

Gi den korteste ruten for disse 8 holdeplassene.

Hvis det ikke er kapasitet, tidsvindu og antall kjøretøy, gir AI en enkel rangering; Det holder ikke i reell drift.

Kraftig ledetekst:

Foreslå en ruteplan for følgende 8 kunder. Det er 2 biler, kapasiteten til hver er 100 enheter. Hver kundes behov og tidsvindu er vedlagt. Utsjekking fra lageret 08:00. Anta gjennomsnittshastighet 40 km/t. Utgang: rekkefølge av stopp for hvert kjøretøy, kumulativ last (ikke overskride kapasiteten), estimerte ankomsttider (for å passe tidsvinduet), total avstand. Hvis det er et brudd på begrensningen, oppgi det tydelig og foreslå et alternativ. Data: {{ ... }}

Den andre ledeteksten pålegger eksplisitt begrensninger og ber om bruddkontroll fra AI. Det er imidlertid viktig å verifisere resultatet med en løser eller manuelt; AI garanterer ikke absolutt optimalitet.

Optimalt eller bare "bra"?

Det er et kritisk konsept her: løsningen som AI (og de fleste praktiske metoder) finner er ofte en god løsning (heuristisk), ikke en optimal. Det sanne optimale er funnet av en matematisk løser (som OR-Tools, Gurobi, PuLP) som løser den riktig konstruerte modellen. AIs rolle er å bygge modellen, ikke løse den.

Skriv et modellskjelett for å løse følgende transportproblem med Python PuLP:- Beslutningsvariabler x[i][j] (i fabrikk, j sentrum)- Mål: totalkostnadsminimering- Begrensning: forsyning av hver fabrikk, etterspørsel fra hvert senter, x >= 0Forklar koden med kommentarer, men jeg vil legge inn de numeriske dataene. Også: liste opp hvilke kontroller jeg må gjøre når løsningen kommer ut.

Tips: I stedet for å fortelle AI om å "skrive koden og finne ut av den," fortell den "skriv koden, så kjører jeg den." Dette gjør optimalisering til en sann løser; Du stoler ikke på AI-oppbygde (og ubekreftede) tall som sier "her er min løsning".

Lager- og plasseringsbeslutninger

Produktplassering på lageret påvirker plukkavstanden direkte. Grunnprinsippet er å plassere gjenstander som ofte flyttes (høy omsetning) nær plukkepunktet (ABC-plassering). AI kan produsere en layoutforslagskisse med produktbevegelsesdata; Imidlertid må fysiske begrensninger (hyllestørrelse, vekt, separasjon av farlig materiale, kjølekjede) overvåkes av mennesker.

Minietui: Kort på papir, umulig i felten

Et distribusjonsselskap utfører 40 leveranser per dag med 3 kjøretøy. Industriingeniør Selin gir stopp, forespørsler og kjøretøykapasiteter til AI og ber om en ruteplan. AI produserer et skudd som ser bra ut og har en lav total avstand. Men når Selin sjekker, innser hun at den kumulative belastningen på et kjøretøys rute overskrider kapasiteten med 15 %; Det er også to stopp hvor kunden kan hente på ettermiddagen, men er planlagt om morgenen. Selin skriver begrensningene tydeligere på ledeteksten og reproduserer dem, og verifiserer deretter planen med OR-Tools. Resultatet blir gjennomførbart. Leksjon: Planen som AI kalte "kortest" var faktisk ikke den korteste og var til og med ugyldig på grunn av brudd på begrensninger.

Vanlige feil

  • Ikke spesifisere begrensninger: Be om en rute uten kapasitet, tidsvindu og antall kjøretøy.
  • Å ta feil av AI for en løser: Godta den "optimale" løsningen gitt av AI som en reell løser-utgang.
  • Ikke sjekke for brudd på begrensninger: Implementere planen uten å sjekke kumulativ belastning og ankomsttider.
  • Fokus på ett enkelt mål: Optimalisere kun kostnader og glemme holdbarhet/risiko (enkeltleverandøravhengighet).
  • Ikke bruk reelle kostnader: Bygge en modell med standard/fabrikerte enhetskostnader og ikke oppdatere den med reelle data.

Oppsummert

  • Hver forsyningskjedeoptimalisering koker ned til tre komponenter: beslutningsvariabler, målfunksjon, begrensninger.
  • AIs mest verdifulle bidrag er å oversette forretningsproblemet til riktig modelltype (transport, VRP, oppdrag).
  • Kapasitets- og tidsvindusbegrensninger er avgjørende i VRP; AI hopper over disse ofte, sørg for å sjekke dem.
  • AI bygger, ikke løser; En løser (PuLP, OR-Tools) bør gjøre selve optimaliseringen.
  • Foruten kostnad, bør også holdbarhet og risiko være målet; Enkeltleverandør/enkeltruteavhengighet er en skjult kostnad.

Søknadsoppgave

Konstruer et forsynings-/distribusjonsproblem (f.eks. 3 varehus, 5-8 kunder, krav og kjøretøykapasitet). Først, få AI til å modellere problemet som en beslutningsvariabel, mål og begrensning og navngi problemtypen. Gi så et VRP-scenario og be om en ruteplan; Sjekk den kumulative lasten og ankomsttidene til hvert kjøretøy selv i utgangen. Kritisk verifisering: Legg sammen totallasten til minst ett kjøretøy manuelt og sammenlign den med kapasiteten og se etter brudd på begrensninger. Til slutt, få AI til å skrive løseren (PuLP) kodeskjelettet og designe en arbeidsflyt som forhindrer AI fra å generere falske tall, med en "I'll run the solution"-tilnærming.