Design og implementering av et interaktivt webgrensesnitt for prognoser om energiforbruk
Bachelor thesis
Permanent lenke
https://hdl.handle.net/11250/3002121Utgivelsesdato
2022Metadata
Vis full innførselSamlinger
- Studentoppgaver (TN-IDE) [823]
Sammendrag
Prosjektet bruker modeller for prediksjoner av strømforbruket til hushold i London. Detfinnes mange algoritmer som en kan bruke i maskinlærings modeller, de vi har valgt å senærmere på er LSTM, Perceptron, SLP, MLP, beslutningstre og lineær regresjon. Brukav forskjellige modeller gjør det enklere å sammenligne prediksjoner, og finne ut hvilkesom er mest nøyaktig. Målingene av strømforbruk i oppgaven kommer fra smartmeterei london (5566 husstander), mellom 2011 og 2014. Målingene er gjort hver halvtime ogmåles i kilowattimer. Husene er delt inn i forskjellige demografiske kategorier og grupper,og i dette prosjektet har vi valgt hus i gruppen Career Climbers, som utgjorde den størsteandelen av husstandene.
Maskinlæring delen av prosjektet er skrevet i python og benytter seg av Tensorflow ogScikit-learn bibliotekene. Python er et populært og moderne programmeringsspråk somer brukervennlig. Python er spesielt mye brukt i maskinlæring prosjekter, da de ofte eriterative.
En webapplikasjon er en applikasjon som kjøres i nettlesere hos brukere, og leveres avservere hvor koden er lastet opp. Python ble også benyttet for å skrive backenden til webapplikasjonen, det ga kort vei fra modellene til bruk i applikasjonen. Mer spesifikt bledet skrevet med Flask, som er et mikro-rammeverk for webapplikasjoner i python. Serverkommuniserer med klient via API, som er en måte å sende informasjon mellom backendog frontend. Frontend ble skrevet i React.js med html og css. React er et verktøy bruktfor å lage brukergrensesnitt og er ikke et rammeverk, men er et JavaScript-bibliotek. Forlagring av informasjon ble det skrevet en database basert på SQLite. The project uses models for predicting the power load for households in London. There exists many algorithms one may use in machine learning models, those that we have chosen to look at closer are LSTM, Perceptron, SLP, MLP, decision tree and linear regression. The use of different models make it easier to compare predictions, and to figure out which is the most precise. The measurements of power consumption come from smartmetes in london (5566 households), between 2011 and 2014. The measurements are taken every halfhour and are measured in kilowatt-hour. The houses are separated into different demographic categories and groups, and in this project we have chosen houses from the group Career Climbers, which made up the greatest portion og the households.
The machine learning part of the project is written in python and makes use of the Tensorflow and Scikit.learn libraries. Python is a popular and modern programming language that is user-friendly. Python is especially common in machine learning projects, whereas they are often iterative.
A web application is an application run in web browsers by users, and provided by servers where the code is uploaded. Python is also used to write the backend for the web application, this made the the process from developing models to integrating them on the website seamless. More specifically it was written in Flask, which is a micro-framework for web applications in python. The server communicates with the client through API, which is a way to send information between backend and frontend. The frontend was written in React.js with html and css. React is a tool used to make user interfaces and is not a framework, but is a JavaScript library. For storing of information a database was written based on SQLite.