Kursinnhold
Matlab-Grunnleggende
Matlab-Grunnleggende
Applikasjon: Logistikkproblem
Ved å bygge videre på det du lærte i forrige kapittel, vil du her lære hvordan du kan hjelpe en distributør som prøver å optimalisere hvordan de kombinerer sine produkter i forsendelser. Du vil sette alt du har lært ut i praksis, og plukke opp en rekke nye detaljer underveis.
Oppgave
Forstå målene
Analyser programmets mål og se videoen for veiledning og inspirasjon;Finn Excel-filen
Identifiser filen som inneholder data om beholdere og bransjestandarder for paller;Importer dataene
Bruk et bibliotek som Pandas for å laste inn Excel-filen, og hent ut data om beholdere og bransjens graderingsstandarder;Generer kombinasjoner av beholdere
Lag alle mulige kombinasjoner av beholdere for å gruppere dem i paller, slik det ble vist i forrige kapittel;Evaluer hver kombinasjon
For hver mulig beholderkombinasjon:Analyser hver palle: beregn gjennomsnittlige egenskaper (f.eks. strekkfasthet og prosent defekter) for beholderne i hver palle;
Grader og pris paller: tildel grader og beregn priser basert på gjennomsnittene og bransjestandardene fra Excel-filen;
Sammenlign salgspriser: følg med på den beste kombinasjonen ved å sammenligne total salgspris for den nåværende kombinasjonen med tidligere resultater;
Identifiser den beste kombinasjonen
Når den optimale kombinasjonen er funnet, hent ut de tilhørende beholderetikettene ved hjelp av radindekser;Eksporter resultater
Lagre sluttresultatene, inkludert den beste kombinasjonen og tilhørende detaljer, tilbake til en Excel-fil;Kvalitetskontroll
Kryssjekk programmets utdata med resultatene vist i videoen, og sørg for at optimal pris stemmer;
Valider pallegenskaper mot bransjestandarder ved hjelp av regnearkberegninger;
Iterer og forbedre
Utform programmet ditt med en modulær tilnærming for bedre organisering;
Juster og test implementeringen din iterativt for å sikre nøyaktighet og pålitelighet.
Dataimport
Beholderegenskaper: importer som en matrise som inneholder egenskaper som vekt, strekkfasthet og prosent defekter;
Beholderetiketter: importer som en egen matrise;
Bransjestandarder for grader: importer som en matrise som inneholder minimal strekkfasthet, maksimal prosent defekter og pris per palle med 3 beholdere (7500 lbs);
Bransjegradnavn: importer som en cellearray;
Generer kombinasjoner
I stedet for å bruke
Generate_Combinations_MMS_M
fra kapittel 3, brukperms
-funksjonen for å generere permutasjoner direkte;
Identifisere beholderetiketter
Beholderetiketter registreres som indekser som angir radposisjoner i de opprinnelige dataene. Konverter disse indeksene til beholderetiketter ved å bruke radindeksene fra matrisen med beholderetiketter;
Sørg for at radindeksene er korrekt matchet mellom beholderetikettene og de opprinnelige dataene;
Håndtering av dimensjoner og indekser
2D-matriser: disse brukes til å importere og eksportere data til og fra Excel. Pass på å referere til riktige rader og kolonner;
3D-matriser: matrisen
palette_permutations
inneholder alle mulige beholderkombinasjoner samlet i en 3D-matrise;Hver rad representerer en spesifikk kombinasjon av beholdere i paller;
Hver kolonne representerer indeksen til en spesifikk beholder;
Den tredje dimensjonen (1, 2, 3) tilsvarer ulike paller;
Del og hersk-tilnærming
Begrens
for
-løkka til én iterasjon (f.eks.for 1:1
) for å fullføre resten av programmet og få ut første resultater;Fokuser på å få programmet til å skrive ut beholderetiketter, pallegrader og optimal pris til Excel én om gangen. Du kan kommentere ut deler av koden for å fokusere på spesifikke aspekter;
Verifisering
Verifiser manuelt gjennomsnittsegenskapene til hver palle for å sikre at de er korrekt beregnet og gradert, samt totalprisen for pallekombinasjonen;
Hvis det oppstår problemer, bruk disse verifiseringene for å finne feil i
for
-løkka;
Test spesifikke permutasjoner
Hvis resultatene er riktige for én permutasjon, men en optimal kombinasjon ikke blir funnet, begrens
for
-løkka til å teste en spesifikk permutasjon, somfor 32280:32280
ellerfor 16640:16640
. Dette lar deg sjekke ytelsen på svært ulike kombinasjoner;
Feilsøking
Hvis problemet vedvarer etter å ha verifisert ulike permutasjoner, kan det være et problem med logikken som velger den beste permutasjonen fra de evaluerte iterasjonene. Sjekk videoen for å sammenligne resultatene dine og sikre nøyaktighet.
Takk for tilbakemeldingene dine!