Kapping av plater Mål: Vi skal lage komponenter for en møbelfabrikk ut fra standardiserte plater på 12 x 24 dm. Komponentene har lengde og bredde oppgitt.

Slides:



Advertisements
Liknende presentasjoner
Kombinatorikk for lærerstudenter
Advertisements

GoOnline XP publisering Hvordan komme i gang med GoOnline XP. Denne presentasjonen tar deg steg for steg gjennom oppsett av nettsted med bruk av GoOnline.
Ebus Management Center En liten bruksanvisning for de enkleste funksjonene.
”MATEMATIKK TEMALINJAL 3 –
Fremgangsmåte for å oppdatere brikkenavn og antall i T-DOC for operasjonsavdelingene Trondheim, 8. juni 2010.
Hva er PRIMTALL?.
Programvare for nisje SMS
Gjenfinningssystemer og verktøy II
En innføring i spillet: Dobbeltkrig – Grønn
Webprogrammering Arrays.
Ulike sorteringsmetoder Kompleksitet av dem
Oppstart Hoveddel Avslutning Hver elev taster et 7-sifret tall. Det skal ha fire tall før komma og tre sifre etter komma og det skal ikke inneholde.
Omlasting, direkteleveranser og flere vareslag. LOG530 Distribusjonsplanlegging 2 2 Vi har nå utvidet nettverket med flere vareslag. Vi har samme distribusjonsnett.
Samordna Opptak Mål: Fordele studenter på studier.
René Descartes (1596–1650) Innførte koordinatsystemet
Vi har lært å bestemme: - Nullpunkter (y=0)
Gjenfinningssystemer og verktøy II
Maskin Læring Litt generelt Hva er maskin læring?
Forside Korteste sti BFS Modifikasjon Dijkstra Eksempel Korrekthet Analyse Øving Spørsmål Dijkstras algoritme Åsmund Eldhuset asmunde *at* stud.ntnu.no.
Dijkstras algoritme Åsmund Eldhuset asmunde *at* stud.ntnu.no
Kompleksitetsanalyse
Prototyping In 140 Sommerville kap. 8. Mål Forstå hensikten med prototyping i forskjellige utviklingsprosjekt Forstå forskjellen mellom evolusjonær og.
Tekstanalyse Mål: Vi skal sammenligne bøker fra to forfattere ved å se på frekvens av tegn.
Fartsmåling Mål: Lage et program som regner ut gjennomsnittsfart ut fra to passeringer av fotobokser.
Enkel kryptering Mål: Kode et dokument slik at det blir uleselig for de som ikke har kodenøkkelen.
Klargjøring fra forrige gang
Komplekse tall Naturlige tall
Ch 4 INTEGRASJON Integrasjon innebærer å finne alle funksjoner F som har f derivert. Disse funksjoner kalles antiderivert av f og formelen for de er det.
INF 295 Algoritmer og datastrukturer Forelesning 4 Algoritmeanalyse Hans Fr. Nordhaug (Ola Bø)
Sponsor og Annonser.
Hvordan kan foreldre bruke de vangligste funksjonene i Itslearning.com
NÅ SKAL VI LÆRE OM LIKNINGER.
PROSJEKT: UADRESSERT REKLAME Omnibus: 23. august – 30 august 2006
Justering av priser Mål: Lage et system som justerer priser ut fra en offisiell prisindeks.
INF 4130 Eksamen 2008 Gjennomgang.
SINTEF-undersøkelsen om salting og trafikksikkerhet
Behov for plater Mål: En møbelfabrikk har en kappliste som definerer materialbehovet framover for alle komponenter som skal sages ut av plater. Vi skal.
Opptelling av karakterer Mål: Vi skal sammenligne karakterer studentene får i to kurs.
1 Kap. 17 – Interactive computing How Information Technology Is Conquering the World: Workplace, Private Life, and Society Professor Kai A. Olsen, Universitetet.
Inntasting Mål: Lage en applikasjon tilsvarende den som finnes på Android telefoner for ”type ahead” ved inntasting.
Høgskolen i Oslo Nettbasert samarbeidslæring Deltid studieår Felles forfatterskap på nettet ved hjelp av Task 2.0 En kort innføring laget av Sissel.
1 Kap. 17 – Interactive computing How Information Technology Is Conquering the World: Workplace, Private Life, and Society Professor Kai A. Olsen, Universitetet.
1 Kap. 61 – Case: An Adaptive System How Information Technology Is Conquering the World: Workplace, Private Life, and Society Professor Kai A. Olsen, Universitetet.
Vareopptelling Mål: Se hva vi har solgt av i hver måned.
Ortering Mål: Se på forskjellige måter for sortering.
Mål: Sortere materialer i klasser ut fra lengde.
Høydemeter Mål: Lage et program som regner ut stigning, største høyde, minste høyde m.m.
Valutaomregning Mål: Lage et program som regner om fra en valuta til en annen.
Celsius til Fahrenheit
Mer avansert kryptering Mål: Kode et dokument slik at det blir uleselig for de som ikke har kodenøkkelen.
Inf1000 (Uke 5) Arrayer, filer og tekst
Finne feil - Debugging Introduksjon til sortering.
LOG530 Distribusjonsplanlegging
- utvikling skaper verdier Digitale rekvisisjoner Standardiseringskonferansen 24. januar 2008.
Sannsynlighet og kombinatorikk
A (12) B (10) C (12) D (9) E (18) F (11) H (10) G (11) I (7) FF3 SS8 FF5 FF7FS0 SF21 SS8 FF3 SS3 FF5SF12FS0 FS7 Vi har gitt et.
Kap. 9 – Computer Intelligence How Information Technology Is Conquering the World: Workplace, Private Life, and Society Professor Kai A. Olsen,
Samfunnsvitenskapelig metode – innføring Forelesning 4/
Statistikk Forkurs Hva er statistikk? undersøke registrere lage oversikt→ Presentasjon av informasjon formidle Arbeidet med statistikk kan vi dele.
Volum og Tetthett Volum = størrelsen på et område av et rom Eksempler: ● størrelsen av vannet i en plast bøtte ● størrelsen av plasten i en plast bøtte.
Sudoku Mål: Lage et enkelt system som løser Sudoku-oppgaver.
Kap. 4 – Cases of Formalization How Information Technology Is Conquering the World: Workplace, Private Life, and Society Professor Kai A.
Kom i gang med Python Pål Hellesnes SYSTEMUTVIKLER
Kap. 4 – Cases of Formalization
TDT4105 Informasjonsteknologi, grunnkurs
De fire regneartene.
Samfunnsvitenskapelig metode – innføring
Kap. 4 – Cases of Formalization
H-verdi, F-verdi og RUH Betongelementbransjen
Utskrift av presentasjonen:

Kapping av plater Mål: Vi skal lage komponenter for en møbelfabrikk ut fra standardiserte plater på 12 x 24 dm. Komponentene har lengde og bredde oppgitt i dm. Lag et program som viser hvordan komponentene kan kappes. I praksis er alle mål i mm, men vi forenkler her ved å bruke dm. Det gjør det enklere å teste programmet og å visualisere resultatet.

Mål med oppgaven Tidligere brukte fabrikken standardprogram for kapping – laget ut fra produksjon av store serier Nå vil bedriften tillate kundespesifiserte produkter, f.eks. Ved at kunden selv bestemmer lengden på skrivebordet Da kan en ikke bruke standardprogrammer. Løsningen blir da at datamaskinen lager ”bruk og kast” programmer – akkurat for det behovet som foreligger nå.

Data Vi har en tabell med komponenter. Hver komponent er identifisert med et identifikator. Første tegn i denne er mellom 0-9, a-å, A-Å (er det færre en 68 komponenter vil denne være unik). For hver komponent har vi lenge og bredde i mm. Vi skal vise hvordan komponentene kan legges ut (kappes ut fra) plater på 12 x 24 dm.

Representasjon av platen Vi må representere platen. Velger å definere denne som en matrise på 12 x 24. Hvert element inneholder id for komponenten (ofte bare ett tegn). Hvert element platen initialiseres til ”-” – for å fortelle at elementet er ledig.

Metode Ta første komponent og legg denne ut på første plate. Om det ikke er plass forsøk komponenten på høykant (roter 90 grader). Om det fortsatt ikke er plass, se om vi får plass på neste plate. Om det fortsatt ikke er plass, legg ut på en ny plate.

Visualisering Vi kan visualisere hvordan vi kapper hver plate ved å skrive første tegn i id’en. ”-” blir blir brukt for å markere uutnyttet plate. Ideelt sett burde vi tegne omrisset av hver plate, men vi forenkler altså her. aaaabbbbcccccc ddddddddcccccc dddddddd------

Komponenter Vi kan taste inn data om komponenter. Men isteden skal vi lage disse automatisk. Vi bruker da RND funksjonen som gir oss et tilfeldig tall mellom 0 og 1 som utgangspunkt for å velge lengde og bredde tilfeldig mellom en minimum og en maksimumsverdi. Formelen: CInt(Rnd() * (maksLengde - minLengde) + minLengde) gir oss da et tall mellom minLengde og maksLengde.

Sortering Vi går ut fra at det er best å legge ut de største platene først og så ta de mindre etterpå. Beregner derfor areal for hver plate og sorterer på dette (DESC – decending”). For å se på forskjellen gir vi også mulighet til å sortere i stigende rekkefølge, dvs. ta de minste først.

Optimalisering Dette blir som å legge ut et puslespill. Noen rekkefølger og utlegg vil være bedre enn andre. En mulighet å undersøke dette på er å legge ut komponentene i alle mulige rekkefølger og huske den løsningen som utnytter platene best. Problemet her er at det kan bli mange kombinasjoner. Med N komponenter får vi N! (N-fakultet) mulige kombinasjoner: N * (N-1)*(N-2)…*1. Men vi kan forenkle, f.eks. ved å først legge ut store komponenter i forskjellige kombinasjoner, velge beste løsning her og så legge ut middels store komponenter, osv. Vi er ikke garantert en optimal løsning, men dette kan gjøres langt mer effektiv enn N!-løsningen.

Pass på Ingen komponent større enn 12 x 24.