Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres...

59
1 Títol: Bicing Stats Autor: Alejandro Carol Campreciós Data: 14 de Setembre de 2.016 Director: Xavier Franch Gutiérrez Departament del Director: Enginyeria de serveis i sistemes d’informació (ESSI) Titulació: Enginyeria Informàtica Centre: Facultat d'Informàtica de Barcelona (FIB) Universitat: Universitat Politècnica de Catalunya (UPC) Barcelona Tech

Transcript of Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres...

Page 1: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

1

Títol: BicingStatsAutor: AlejandroCarolCampreciósData: 14deSetembrede2.016Director: XavierFranchGutiérrezDepartamentdelDirector: Enginyeriadeserveisisistemesd’informació(ESSI)Titulació: EnginyeriaInformàticaCentre: Facultatd'InformàticadeBarcelona(FIB)Universitat: UniversitatPolitècnicadeCatalunya(UPC)

BarcelonaTech

Page 2: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

2

Page 3: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

3

DADESDELPROJECTE

Títol: BicingStatsAutor: AlejandroCarolCampreciósData: 14deSetembrede2.016Director: XavierFranchGutiérrezDepartamentdelDirector: Enginyeriadeserveisisistemesd’informació(ESSI)Titulació: EnginyeriaInformàticaCrèdits: 37,5

Centre: Facultatd'InformàticadeBarcelona(FIB)Universitat: UniversitatPolitècnicadeCatalunya(UPC)

BarcelonaTech

MEMBRESDELTRIBUNAL(nomisignatura)

President: XavierBurguésIlla

Vocal: JuanJoséNavarroGuerrero

Secretari: XavierFranchGutiérrez

QUALIFICACIÓ

Qualificaciónumèrica:

Qualificaciódescriptiva:

Page 4: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

4

Page 5: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

5

Contingut

1 Introducció......................................................................................................................................7

1.1 TipusdeProjecte....................................................................................................................8

1.2 Objectiu..................................................................................................................................8

1.3 Altresaplicacions....................................................................................................................9

1.4 EstudideMercat..................................................................................................................10

2 Gestiódelprojecte........................................................................................................................14

2.1 Metodologiadedesenvolupament......................................................................................14

2.2 Pladelprojecte.....................................................................................................................16

3 Requisits........................................................................................................................................18

4 Arquitectura..................................................................................................................................21

4.1 ComponentsdelSistema......................................................................................................21

4.2 Casosd'ús.............................................................................................................................21

4.3 Arquitecturadelainformació..............................................................................................26

4.4 Basededades.......................................................................................................................27

4.5 Alternativesd'implementació..............................................................................................29

4.6 Entorndedesenvolupament................................................................................................31

5 MotordePredicció.......................................................................................................................33

5.1 ModelDeRegressióLineal...................................................................................................33

5.2 ModelDeRegressióRandomForest....................................................................................38

5.3 ModelDeRegressióRandomForestCurt/Llarg...................................................................48

6 Anàlisi............................................................................................................................................51

6.1 Anàlisidetemps...................................................................................................................51

6.2 Anàlisifinancer.....................................................................................................................52

6.3 Anàlisidecompetències.......................................................................................................53

Page 6: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

6

7 Conclusions...................................................................................................................................54

7.1 Comparativaamblacompetència........................................................................................54

7.2 ElfuturdeBicingStats..........................................................................................................55

7.3 Opiniópersonal....................................................................................................................57

8 Bibliografia....................................................................................................................................58

Page 7: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

7

1 Introducció

L'any2007l’AjuntamentdeBarcelonavaposarenmarxaelserveidelBicing.Ésunserveid’abonamentenelquall'usuaripotrecollirunabicicletaenunaestacióicircularpedalantfinsaunaaltraestació.

Hihaaproximadament420estacionsalaciutatdeBarcelona.Cadaestacióconsisteixenunaparellonl’usuaris’identificamitjançantlasevatargeta.Disposad’unnombrelimitatdeplacesdepàrquingiacadaplaçahihallocperunabicicleta.Quans'estacionalabicicletaalaplaça,s’activaunsensor.

Uncoprecollidalabicicletaenunaestacióésobligatorilliurar-laenmenysdedueshoresaunaaltraestació.Sil'estaciódedestídel'usuari,quans’arriba,estàplenadebicicletes,ésl'usuariquehadebuscarunaaltraestacióperdesarlabicicleta,quemaiespodràdesaralcarrer,os’exposaaunafortapenalitzacióeconòmica.

Bicingofereixunserveions'informadelesplaceslliuresenunadeterminadaestacióozonaenelmomentqueesfalaconsulta.

AquestprojectepreténsolucionarlaproblemàticaamblesqueenstrobemelsusuarisdeBicing,quenoésmésquelaincertesadequantrobarembicicletesollocslliuresperdeixarlabicicleta.

Persolucionaraquestaproblemàticahedeciditcrearunaeinaqueredueixiaquestaincertesa,proporcionantprediccionsd'ocupaciódelesestacionsal'usuaripertaldeferlasevavidaunamicamésfàcil.

Lapredicciódedisponibilitatesbasaenunconjuntdevariables,ielpesdecadascundelsfactorsescalculasegonsunprocésd'aprenentatgeautomàtic.

Lesvariablessobrelesqualsesconstrueixl’estimaciósón:

• L’ocupacióactualdel’estació.• L’historiald’ocupaciódel’estació.• Variablesmeteorològiques.

Page 8: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

8

EsquemaGeneral

1.1 TipusdeProjecte

ElpresentdocumentcorresponalProjecteFinaldeCarreraenmodalitatA,projecterealitzatalaUPC.

1.2 Objectiu

L'objectiudelprojecteésconstruirunaaplicacióquedoniunaestimaciódelaprobabilitatdetrobarunabicicletalliureenunazonaoestaciódeBicing.

Elprojectetractadedonarrellevàncianonomésal'algorismedepredicció,sinótambéalprojected’enginyeriadesoftwarequeenvoltaaquestapredicció.

L'aplicacióseràbàsicamentfetaperdispositiusmòbils,jaques'esperaqueelsusuarisvulguinobteniraquestesdadesdurantdiferentsmomentsdeldia.

Appd'usuari

Motordepredicció

DadesHistòriques

DadesBicing

DadesMeteorològiques

Page 9: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

9

1.3 Altresaplicacions

Elresultatdelprojecteésrealitzarunapredicciódedisponibilitatdebicicletesenunmomentdeltemps,peruntipusdeserveidelqualpodememmagatzemar-nelesdadespertaldepoderfer-neunaanàlisi.LaprincipalcaracterísticadelBicingésquenose'npotferunareservaprèvia.

Amés,elserveihadetenirunacertacoherència,ésadir,quetinguiunademandacontinuada.Perexemple,sivolempoderpredirsiquedaranentradesalavendaperundeterminatespectacleaixòdependràdel'obraquefacin,ésadir,quelapredicciósobredadesantiguesseguramentnoensserviria.

Aixídoncs,l'aplicaciód'aquestaarquitecturaésper:

• qualsevolserveirepetitiu• delquehihagiunnombrefinitderecursos• delquenoesfacinreservesprèvies• delqueesdisposindedadesaccessiblespelpúblic

Aplicacionspossibles:

• Laideadelprojecteespotaplicaraaltresserveisdebicicletescompartidesaaltresciutats.Hihamésde50ciutatsalmónambserveisdebicicletescompartides.Lescaracterístiquesdelsserveissónsimilars,esbasenenestacions,iendisponibilitatsdebicicletesillocsdisponibles.

• ACatalunyahitrobemaltresserveis,comlaGirocletadeGironaol'Ambicia'tdeGranollers• AEspanyahihamésde30ciutatsambserveissimilars(entred'altres:Madrid,Alacant,

València,Bilbao,...)• AEuropaentrobema20països(entred'altres:Anglaterra,Rússia,Alemanya,...)• Serveisdevehiclescompartitsengeneral,commotosicotxes.

Peraltrabanda,ambpoquesmodificacionsenlamaneradepredir,encaraqueambalgunsimportantsenlainterfície,podríemferservirlatecnologiadepredicciópertaldedonarcoberturaaserveisqueelpoolsiguiúnic,ésadird’unaúnicaestació.Aixídoncspodríempredir:

• Restaurantsonnofanreservaprèviadetaula.• Transbordadors.• Serveisdepàrquing,onenspodeminformardedisponibilitatsprevistesdellocsperaparcar

enunadeterminadazona.

Page 10: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

10

1.4 EstudideMercat

ExisteixendiversesaplicacionsqueproporcioneninformaciódelserveideBicing.

Bicing(AjuntamentdeBarcelona)

Ésl'aplicacióoficialdelserveideBicingiunadelesméspopulars.Notéutilitatdepredicció.Dónaladisponibilitatactualdelesestacions.Amés,recentments'hihaintroduïtunsistemadegamificacióperincentivar-nel'ús.

Citymapper(CitymapperLimited)

Ésunaaplicaciógenèricadetransports,nonomésdelBicing,icobreixdiversesciutatsdelmón.Ésunaguiaperanard'unpuntal'altredelaciutat,ipermetescollirelmitjàdetransport,sentund’ellséselBicing.Nodónapredicciódebicicletes.Nopermettransportmultimodal.

Page 11: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

11

RideU(CecilioTamarit)

Ésunaaplicaciódecercadebicicletesillocsd'aparcament.Dónalapossibilitatdelocalitzarunaestacióapuntant-hieldispositiuutilitzantrealitataugmentada.Noofereixpredicció.Dónaunmapaamblaubicaciódelesestacions.

EasyBicing(JuanVillaescusa)

Ésunaaplicaciósenzillaquemostraunmapadelaciutat,amblesestacions,iladisponibilitatdebicicletesiplaceslliures.Notécapacitatdepredicció.

Page 12: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

12

CityBikes

Ésunaaplicacióquemostrabicicletesiplaceslliuresalmapa,amblapossibilitatdelocalitzarunaestacióapuntanteldispositiuambrealitataugmentada.

Bicicletes(JordiVila)

Ésunaaplicacióquemostrabicicletesiplaceslliuresalmapa,amblapossibilitatdelocalitzarunaestacióapuntanteldispositiuambrealitataugmentada.

Bicintime

ÉsunaaplicacióenHTML5,desenvolupadaperGabrieliAlex,estudiantsdelaUPF.Ésl’únicaaplicacióquefapredicció.Hanpublicatinformaciódel’algorismedepredicció,queesbasaenRandomForest.VaestarparcialmentsubvencionadaperlaUnióEuropea.

Amésd'informardelnombredebicicletes,permetespecificarorigenidestí,calculantlesestacionsderecollidaid’entregadelabici,informantdelnombredebicicletesideplaceslliuresrespectivament.

Page 13: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

13

QuadreResumAplicació Propietari Weboficial Predicció iOS AndroidBicing Ajuntamentde

Barcelonahttps://www.bicing.cat/ No Sí Sí

Citymapper CitymapperLimited https://citymapper.com/barcelona

No Sí Sí

RideU CecilioTamarit http://cecetaca.com/rideu/en/ No Sí SíEasyBicing JuanVillaescusa http://easy-bicing.appstor.io/es/ No Sí NoCityBikes RocketLabLimited http://www.citybikesapp.com/ No Sí NoBicicletes JordiVila http://jordivila.cat/index.php/ma

in/view/bicing/es

No Sí No

Bicintime GabrielMartins,AlexBikfalvi(UPF)

http://www.bicintime.com/ Sí Navegador Navegador

Competència

L'aplicaciómésfortairobustaésBicintime,l'únicaquefaprediccionssobreladisponibilitatdebicicletes.

Delarestad'aplicacionsdisponiblesnon'hihacapquedoniunapredicció.

Peraixò,crecquehihaespaiperunaaltraaplicacióquepermetipredirladisponibilitatdebicicletesiespaisdisponiblesaunaestació.IdealmentseriaunaaplicaciónativaperIOSiperAndroidperpoderaprofitaralmàximlescaracterístiquesdelsdispositius.

Page 14: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

14

2 Gestiódelprojecte.

2.1 Metodologiadedesenvolupament

PerdesenvoluparelprojectefaréservirunametodologiaAgile.LesmetodologiesAgile,unadelesmésconegudesésSCRUM,esbasenenrepetidesiteracionsoesprints.Enacabarcadascunad’ellesesfaunaavaluaciódelresultat.

Lesmetodologiestradicionalsdedesenvolupamentdesoftwareesbasenenunseguitdetasquesques’executenseqüencialment,unaltrenomperanomenar-lesmetodologiesencascada.Esbasaenunadefiniciómoltacuradadeldesenvolupamentarealitzar,perarribarateniraquestadefiniciónormalments’estructurenen:

• Fased'anàlisi:onl’usuariexpressaelsseusrequeriments,endefinitiva,elquedesitjadelsistema.Elsrequerimentshandesercompletsiexhaustius,noesbasenenunaideaodirecció,sinóqueésnecessariespecificareldetall.Típicamentestemparlantdequel'usuari:

o Expliquilasortidaquevolobtenirdelsistema,finsitotindicanquinainformacióvolobtenirenllistatsiconsultes.

o Expliquiquinesentradesintroduirà,odesd'onespodenobtenir.o Expliquiquinessónlesoperacionsomanipulacionsques’handeferpertald’arribar

alresultatfinal.o Expliquilesrestriccionsdelsistemaquantapermisos,seguretat,verificacions,etc…o Finsitotencertescircumstànciess'had’especificareljocdeprovesques’ha

d'executarpertaldeverificarelresultatfinaldelsistema.• Fasedeconstrucció:aquíelroldeterminanteltél'equipdedesenvolupament,queha

d'escriureeldissenydelsistemapertaldedonarcoberturaalsrequerimentsdel'usuari.Aquestafasetípicamentescaracteritzaperduestasques:

o Undissenyendetalldelasolucióaimplementar,incloent-hielsdiferentsprogramesocomponentsdelsistema,ieldissenydelmodeldedadesqueesfaràservir.

o Eldesenvolupamentdelprogramari,uncops’haverificatambl'usuariqueeldissenyplantejatpermetassolirelsrequeriments.

LesmetodologiesAgileesbaseneniteracions,ésadir,encomptesdeferunaseqüènciadetasques,esfonamentenenanarrepetintlesiteracionssegüentsfinsaarribaralresultatdesitjat:

• Unallistadetasquesadesenvoluparprioritzades• Unperíoded’execució,anomenatesprint,ons’executenaquestestasques• Unaavaluaciódelsresultats,iunare-avaluaciódelsrequeriments.

DinsdelesmetodologiesAgilevulldestacarSCRUM,quefaèmfasienlacol·laboracióentremembresdel'equip,enunacomunicacióconstant,quepermetadaptarelsesprintsalsrequerimentsdenegoci,sovintcanviants.Janoenstrobemenunmónestàtic,onlesnecessitatssóneixosquenoacostumenacanviarenunperíodellargdetemps,tampocenstrobemenunentorntecnològicquedificultaelscanvis.SCRUMesbasaenunare-definiciódelestasquesafer,enpermetrecanviarelparadigmadelsoftwaredesenvolupat,entenirresultatsdesdelprimermoment,enmantenirel

Page 15: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

15

sistemapermanentmentdisponible,enunare-avaluaciótantdelsrequisitscomdelsresultats,enunacomunicacióconstantentreelsmembres.Elsrolstípicssón:

• ProductOwner-propietaridelprojecte,típicamentelresponsabledeldepartamentquehasol·licitatl’aplicació,iquehadecomunicaratotselscomponentsdel'equipquinaésl'estratègiailavisióquel'aplicacióhad’assolir.

• EquipdeProjecte:elconjuntdedesenvolupadorsidissenyadorsquesónelsqueportenatermelestasquesdeprogramacióidisseny.

• ScrumMàster:elfacilitadordelacomunicacióentrel’equipdeprojecteielpatrocinador.Noéselcapdeprojectetípicd'unametodologiatradicional,éselresponsabled’incentivarqueelprojecteavanci.

LadocumentacióqueesgeneraamblametodologiaSCRUMconsisteixen:

• Backlogdeproducte:lesespecificacionsd’altnivellqueelsistemahad’assolir.• Backlogd’esprint:lallistaprioritzadadetasquesarealitzarenelsegüentesprint.• Incrementdefuncionalitat:lafuncionalitatdelproducteassolidadesprésdecadaesprint.• Leshistòriesdelsusuaris,sónlesespecificacionsqueelsusuarisdemanen,iquesónlabase

deldisseny.Cadahistòriad’usuaris’hadepoderescriureenunanotatipuspost-it,ihauriadecontenirlessegüentsdades:

• Categoria:Categoriadeltipusdehistòria,siesrefereixaunrequisitd’interfície,funcional,etc

• Títol:Títoldescriptiudelahistòria• Descripció:descripciódetalladadelahistòria• Prioritat:Prioritzaciódelahistòriarespectealesaltreshistòriesdelbacklog• Instruccionspervalidar:indicacionsqueconfirmaranqueeldesenvolupamentés

correcte

Metodologiadelprojecte

Entractar-sed'unprojecteambunequipdetreballformatperunasolapersonanohetingutocasiód'aplicarunametodologiaSCRUMpura.Elquehefetésbasar-meen:

• Unallistadetemesadesenvolupar,prioritzada• Desenvolupamentdelprogramari• Avaluaciódelsresultats.

Aixímateixhetreballatconstruintunprototiponelsistema:

• S'anésperfeccionantencadaiteració,començantambfuncionalitatsbàsiques,iafegintcomplexitatcadavegada.

• Mantenirelsistemautilitzabledesdelprimermoment.

Page 16: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

16

2.2 Pladelprojecte

Esprint Nom Data Hores Tasca Hores

1 Definició 02/11/2015 112

Definicióàmbitprojecte 16Requerimentsusuaris 16Estudidemercat 16Definiciócomponentsdelsistema 16Elecciód'einesdesenvolupament 24Elecciópremissescloud 24

2 Desenvolupament1 20/01/2016 64Desenvolupamentinterfície 32Interfícieambmapes 16Elaboracióinformeprevi 16

3 Dades 01/03/2016 72Implementacióbasededades 24CapturadadesBicing 24Capturadedadesmeteorològiques 24

4 Documentació1 02/05/2016 24 Elaboracióesborranytreball 24

5 Predicció1 01/06/2016 80 Prediccionsregressiólineal 40Prediccionsregressiópolinòmica 40

6 Predicció2 01/07/2016 132

ImplementacióRandomForest 60Creaciócontainers 16Implementaciósistema 16Provescomparativesprecisiópredicció 40

7 Documentació2 16/08/2016 56 Finalitzaciótreball 40Elaboraciópresentació 16

TotalEstimat 540

Page 17: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

17

Page 18: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

18

3 Requisits

Categoria Títol Descripció Prioritat Validació

Interfície SmartphoneComausuari,vullpoderaccediral’aplicaciódesdequalsevolSmartphone

3Hedepoderexecutarl’aplicacióenentornsiOSiAndroid.

Interfície Nativa

Comausuari,vullquel’aplicaciósiguinativadeldispositiu,ésadir,quepuguiaprofitarlescaracterístiquesdeldispositiuons'executi

1

Hedepoderinstal·larl'aplicacióeneldispositiudesdelesplataformesdesoftwaredeiOSiAndroid

Interfície Navegador

Comausuari,vullpoderexecutarl’aplicaciódesdelmeuordinadorpersonal,enqualsevolnavegador.

1Hedepoderaccediral’aplicaciódesdelsprincipalsnavegadors.

Interfície HistòricdeconsultesComausuari,vullguardarlesultimesconsultesfetesd’estacionsdeBicing

1

Quequanvagiaposarunaestació,puguiveurelesanteriorsestacionsconsultadesprèviamentiseleccionar-les.

Interfície MapaseleccióComausuari,quepuguiseleccionarl'estacióenunmapa

2

Quepuguimarcarunpuntenelmapa,iaixòsiguielmeupuntdepartidaperabuscarestacions

Page 19: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

19

Categoria Títol Descripció Prioritat Validació

Interfície Zona

Comausuari,queelsistemaemtornielsresultatsdebicicletesenlesestacionsmésproperesalpuntmarcat.

2 Queemsurtinlesestacionsproperesalpuntmarcat

Interfície Horari

Comausuari,quepuguiescollirenquinmomentienquindiavullsaberlaprobabilitatdetrobarbicicleta

3

Queemdonilaprobabilitatdetrobarbicicletaenqualsevolmomentquejoesculli

Càlcul EstaciódedestíComausuari,voldriapoderinformardel’estaciódedestíonvullanar

3 Queelsistemaemdemaniunaestaciódedestí.

Càlcul TempsdeViatgeQuel'appemdiguielquetrigarépedalantd'unaaaltraestació

2Queelsistemaemdonieltempsdetrajecteestimatalavelocitatdebicicleta

Càlcul Prediccióencertada

Comusuari,voldriaquelapredicciófosacurada,tenintencomptelahistòriadel'ocupaciódebicicletesdel’estació

3 Quehihagiunpercentatged'encertssuperioral70%

Càlcul Prediccióacurttermini

Comausuari,voldriaquel'appm'informésdel'ocupacióactualdebicicletesdel’estació

3Queemdonielnombredebicicletesquearamateixhihaal’estació

Page 20: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

20

Categoria Títol Descripció Prioritat Validació

Càlcul Prediccióesdeveniments

L'apphauràdetenirencomptesihihaalgunesdevenimentespecialquepuguialterarlesbicicletesdisponibles

3 Quehihagiunpercentatged’encertssuperioral70%

Tècnics Rapidesa Comausuari,vullunaprediccióimmediata 3 Queeltempsdelresultat

siguidemenysde3segons

Tècnics DisponibilitatComausuari,vullquel’aplicacióestiguisempredisponible

3Que95decada100copsqueexecutol’aplicació,estiguifuncionant.

Funcional FeedbackusabilitatComaowner,vullsabersil'usuariestàcontentambl’arquitecturadel’app

3Queelsistemapreguntial’usuaridemaneraaleatòriacadaNusos.

Page 21: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

21

4 Arquitectura

4.1 ComponentsdelSistema

4.2 Casosd'ús

Seleccionarpuntdelmapa

Diaapredir

Hora

Veureresultats

Page 22: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

22

SeleccionarPuntdelMapa

Page 23: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

23

Introduirdiaapredir

Page 24: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

24

Introduirlahora

Page 25: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

25

Mostremelsresultats

Page 26: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

26

4.3 Arquitecturadelainformació

Enelmóndelesaplicacionsmòbils,eldissenydelainterfícieésdecisiuenl'èxitdel'aplicació.Lainterfícied’usuariéselcomponentmésdecisiu,encaraquenol’únic,queensdeterminaràl’experiènciadel'usuari.

• L'experiènciad'usuari(UX)éselconcepteclaudel’aplicació.Busquem:o Senzillesa,concepteKISS,senseescenografiesexagerades,quetinguiencompteel

concepteutilitaridelanostraaplicació.o Facilitatd’utilització,creiemquel’usuaripotestarcaminantpelcarrerquanvol

comprovarsienunaestacióhihadisponibilitat.o Queencadamomentl’usuaritinguiunavisiódelesopcionsdisponibles,icaponha

d’anar.• Eldissenydelainterfícieseràinicialmentmoltsimple,mésendavantespodranafegir

elementsvisualsque,senseserunacòpia,doninaentendrelarelaciódel'aplicacióambBicing.Tractaremd’aprofitarelsestàndardsdel’arquitecturad'Android.

Pertaldecentrarl'abastilesexpectativesdelspossiblesusuarisdel’aplicació,hemtractatdedefinirelscriterisarquitectònicsdel’aplicació.

Objecte ProveirunserveidepredicciódedisponibilitatdebicicletesdelBicing.

Dirigita UsuarisdelsistemaBicing.

• Abonats:98.497• Utilitzacionsmensuals:1.027.707• Mitjanad'usosdiaris:3.333

Interacció Creiemqueelsusuarisfaranservirl’aplicaciódesd'undispositiumòbilabansdetrobarunabicicleta,normalmentquanvaginpelcarrer.Peraixòbuscaremunainteraccióelméssenzillapossible,ambbotonsgrans,centratsalapantalla,iambvalorsperdefectedelespeticionsd’informació.

Navegació Atèselscasosd’úsdel’aplicacióimplementaremunanavegaciómoltsenzilla,senseméscasuísticaquepassardeplànol-dia-horaiplànolderesultats.

Continguts Enaquestaprimerafasedel'aplicaciónotindremcapcontingut.

Alertes Enaquestaprimerafasedel’aplicaciónotindremcapalerta.

Disseny

gràfic

Enaquestaprimerafasenotenimpensantmésqueunespantallesmoltsenzilles,basant-nosenl’estàndardd'Android.EnunafaseposteriorbuscaremunpatródedissenygràficquerecordielvermelliblancdelBicingambalgunacaracterísticadistintivaquetractidesuggerirprediccióiencert.

Feedback Implementaremunsistemadefeedbackpertalquel'usuaripuguiinformardepossiblesproblemesd'usabilitat

Page 27: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

27

4.4 Basededades

Laplataformaonelsistemaemmagatzemalesdiferentsdadesquerequereixpertaldeprocediraferelscàlculsdeprobabilitat.

Unadelestasquesquehehagutdeferésescollirunmotordebasededadesienquinamodalitatvullfer-ho,sienunamàquinaalesmevesinstal·lacions,obéenunserveidehosting.

Requeriments

• Voldrempoderaccediraunjocdedadesconcret:facilitatpertald’indexarlestaulesipoderaccedirdemaneradirecta.

• VoldremutilitzarllenguatgeSQL,perlasevafacilitatd’utilització,lasevapopularitat,iladisponibilitatifacilitatd'utilitzaciódesdeleseinesdeprogramacióescollides.

• Voldrempoderaccediralesdadesmeteorològiquesrelacionadesambunaestacióconcreta.

• Norequeriremunaespecialpotenciadefuncionalitatdemodificaciódedades,sentlesoperacionsmésfreqüentslesd’insercióiconsulta.

Dadesaemmagatzemar

Lesdadesqueemmagatzememseranlesquefaremservirpertald’estimarlapredicció,isón:

• Dadesd’ocupaciódelBicing:lesdadesd’ocupaciórealdelBicing,percadaestació.• Dadesmeteorològiques:laquantitatdeplujacategoritzadailatemperatura,• Dadesdelespeticionsrebudes:emmagatzememlespeticionsqueensestanfentels

usuaris,aixícomelsresultatsobtinguts.• Dadesdelespeticionsd’autoaprenentatgequeelsistemaprovoca,lescaracterístiques

delamostra,ielresultat.

Dimensió.

Enaquestpuntdelprojecteensinteressaferunaestimaciódelvolumdedadesquetindrem,encaranotenimelmodeldedadesdefinit,aixíquefaremunaestimacióinicial.Aquestaestimacióenshadeservirperescollirelgestordebasededades.

Page 28: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

28

Eldatasetmésgranseràeldedadesd'ocupaciódeBicing.L’APIqueBicingofereix,téelsegüentmodeldedades:

Dada Bytes

Id 4

status 1

slots 2

bikes 2

timestamp 4

Total 13

Ésadir,quepercadalecturaquefemaldia,decadaestació,necessitarem13bytes.Aixídoncssegons:

Estacions 500

Lectures diàries 1440

Hemestimat:

Dades/dia (MB) 9,14

Dades/any (MB) 3336,33

Amésd’aquestesdades,requeriremespaiaddicionalpelsaltresdatasets,aixíquecalculemqueestaremalvoltantde4000MB/any.

ModeldeDades

Page 29: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

29

4.5 Alternativesd'implementació

OnPremiseenversCloud

Laprimeradecisióhaestatavaluarsiinstal·larialabasededadesenunordinadorpropialesmevesinstal·lacions(OnPremise),obéunserveiextern(Cloud).

• OnPremise:Labasededades,motoridades,estanubicadesaunservidorpropi,alesinstal·lacionsd’unaoficinadeBicingStats(demomentacasameva),lestasquesd’explotaciódelsistemalasportariaatermepersonalpropideBicingStats(demomentjomateix).Elsistemanoésescalable,sielprogramaespopularitzaielfaservirmoltagenthauriad'instal·larunservidoraddicionalpertalquelarespostacontinuïsentràpida.Amesuraquevaigafeginthistòriaalabasededades,éspossiblequerequereixiespaid’emmagatzematgeaddicional,ésadir,quehauriad'afegirunitatsdedisc.

• Cloud:Labasededadesestàubicadaaunservidorextern,elservidorestàenunserveicloud,ontenenpersonalpropiperferlestasquesdemanteniment.Allàinstal·lariaelprogramarinecessariigualquepodriafer-hoalamevamàquinapersonal.PodriadisposardeCPUs,memòriaoemmagatzematgeaddicionalencasquehorequerís.

Taulacomparativa

Servei OnPremise Cloud

Espaifísic Espaipropidel’empresa. DataCenter

Comunicacions Gestionadesperl’empresa. Gestionadespeldatacenter.Normalmentamplidebandaescalable.

Servidor Propi Propietatdeldatacenter

Gestiódelservidor

(actualitzacions,backup)

Personalpropi Totalmentautomatitzat.

Escalabilitat Responsabilitatdelstècnicsdel’empresaquehandepreveurepuntesd’utilitzacióidimensionarelsrecursossegonsaquestesdemandes.

Depenentdeldatacenterseràmésomenysautomàtic

Page 30: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

30

Alternativesconsiderades

Servei Característiques Preu Pros Contra

DigitalOcean MySQLautogestionatamblacreaciód’unentornambdocker.

6$/mes(20GB+backups)12$/mes(30GB+backups)->gratispertenircompted’estudiantfinsa100$

Jatincexperiènciaprèviaambmysql,loquefacilitaràlaimplementació.ÉsOpenSourceUtilitzatpertottipusd’aplicacions,ésbenconegudalasevarobustesa.

Requereixmonitorització

Orchestrate Soluciópropietàriadebasededades.

50€/mes,gratisessentestudiant.

Norequereixmonitorització.

Soluciónova,propietària.Nohitincexperiènciaprèvia.

Redshift GestionatperAmazon Tarifabàsica216€/mes

MonitoritzatperAmazonAPIPostgreSqlEspecialitzatenBigData

Tarifamoltalta

Relational

Database

Service(RDS)

GestionatperAmazon.MySql(encaraquetéaltressolucions).

Apartirde12€

DecisióFinal

Heescollitl'opciódeDigitalOcean:

• Funcionamentmoltsimple,permetcrearinstànciesenlesquetenimaccésderoot,pelquehipodeminstal·larqualsevolutilitatqueensfacifalta

• Tarifamoltajustada:permetmodificarlacapacitatdelesinstànciesfàcilmentienpoctemps(~10minuts),ambunatarifainicialde5$almes.

Característiques

Nomdelainstància:docker-alex

Servidor:Ubuntu14.04

Contingut:LainfraestructuraestàdivididaendiversoscontenidorsambDocker,quepermetenaïllarelsdiversoscomponentsdelsistemaiassegurarqueelsentornsons'executaelcodiaproducciósónelsmateixosqueenlocal.

Page 31: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

31

4.6 Entorndedesenvolupament

Desplegament:

FaigservirDockercomasistemadecontenidorsperassegurarcompatibilitatdelsentornsdedesenvolupamentiproducció.Dockerésunaeinadedesplegamentmultiplataforma,quepermetdistribuiridesenvolupar.

Llenguatgesdeprogramació

Servidor

HefetservirGoperrecol·lectardadesiservirlespeticions.Goésunllenguatgemodern,quedónamoltafacilitatpercrearapisiqueéscapaçdeproporcionarunrendimentforçaaltiquefacilitaparal·lelitzartasques.

InicialmentvaigcomençarunprimerprototipenPHP(https://github.com/alexcarol/bicing-stats),queconecbé,peròvaigtoparambalgunsproblemesdememòriaalimplementarlarecol·lecciódedades,queencaraqueprobablementhauriapogutsolucionar,vaigpreferircanviaraunllenguatgeméseficient,perevitarencallar-meamblimitacionsdelllenguatge.

PerimplementarelmodeldeprediccióhefetservirelllenguatgeR,pertald’analitzarlesdadesrecol·lectadesiferprediccionssobrelespeticions.Résunllenguatgeutilitzatperl'obtenciódecàlculsigràficsestadístics,pelquepermetiterarmoltràpidamentiqueamésproporcionaunrendimentforçabotenintencomptequeésunllenguatgeinterpretat.

MésendavantpodriaplantejarsubstituirRperunaimplementacióenGodelsalgorismesqueutilitzoopotserunaltrellenguatgecomPython,quetambétémoltesllibreriesestadístiques.

Client(appAndroid)

HefetservirJava,queproporcionamoltesllibreriesperimplementarlainterfíciegràfica.Peraltrabanda,enunprimermomentvaigconsiderarferl'aplicacióenGo,pertaldepodercompartircodiambelservidor,peròvaigdesistir-neperquètalcomheplantejatl'aplicaciómaihauréd'implementarlamateixalògicaalclientialservidor(seriadiferentsiperexempleestiguésimplementantunjocambservidorautoritari,perexemple),amés,GonodisposademoltesdelesfacilitatsquedónaJavaal'horadepintarlainterfíciegràfica.

Basededades

HetriatMySQLperemmagatzemarlesdadesqueesfanservirperrealitzarlesprediccions.L'hetriatperquèésunasolucióqueconec,queesfaserviràmpliamentiquetéunrendimentbo.

Page 32: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

32

Editors

Atomperlapartdeservidor,ésuneditorcreatperGithubitéinfinitatdepluginsperfacilitareldesenvolupamentamblamajoriadellenguatges,elqueelfaapteperprogramarpràcticamentqualsevolprojecte.

AndroidStudioperlapartdeclient.AquesteditorestàbasatenelreconegutIntelliJIDEA,deJetBrains,jaqueincorporatotelnecessaripercreariprovarunaappAndroid,incloent-hieldesplegamentenundispositiuAndroidol'emulacióenlocal.

SistemadeControldeVersions

ComacontroldeversionshedeciditferservirGit,unsistemadecontroldeversionsdistribuïtcreatperLinusTorvalds.ElcodiestrobaallotjataGitHub,queésunserveid'allotjamentderepositorisgitqueésgratuïtperprojectesOpenSource,comelmeu.Elcodil'hedividitendosrepositoris:https://github.com/alexcarol/bicing-oracle-app(appAndroid)ihttps://github.com/alexcarol/bicing-oracle(servidor).

Page 33: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

33

5 MotordePredicció

Elmotordeprediccióéselnuclidel’aplicació,jaqueenshad'aportarelvalorafegitalprograma,persobredelainformaciódelesdadesactuals.

Pertaldesimplificarlesexplicacions,consideraremapartird’araqueelquebusquemésunabicicletaenunaestaciódeterminada.

Lesdadeshistòriquesenspodenservirperapuntartendènciesdel’estació,peròelseupeshauràdetenirencomptediferentsfactorsdepertorbació:

1. Diadelasetmana

2. Factormeteorològic

5.1 ModelDeRegressióLineal

Pertald'escollirelmodelestadísticderegressióheestatfentdiferentsproves.

Laprimeraconsisteixenregressiólinealambdadesd’ocupaciód’unaestaciódurantunperíodededosmesos.PerferaquestaregressióheempratelprogramaRcommander.

Prova1

Peraquestaprovaheemprattresvariables:

• Day.moment(tempstranscorregutdesdeles00:00)• “Labor”,unavariablediscretaqueindicasieldiaéslaborable.• Time,queesrepresentacomaEpochtime(segonspassatsdesdel'1degenerde1970).

Lestresvariablestenenunp-valormoltpetit(menora2*10-16),pelquesónestadísticamentrellevants.Elmodeltéuncoeficientdedeterminació(r2)d'aproximadamentun8%,pelquelafiabilitatd'aquestmodelaplicatalapredicciónoésgairesignificant.

Call:

lm(formula = bikes ~ Day.moment + Labor + time, data = Datos)

Residuals:

Min 1Q Median 3Q Max

-17.0691 -4.8122 0.5537 5.2220 16.1872

Page 34: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

34

Coefficients:

Estimate Std. Error t value Pr(>|t|)

(Intercept) 1.226e+03 2.666e+01 45.97 <2e-16 ***

Day.moment -6.314e-05 9.596e-07 -65.80 <2e-16 ***

Labor -1.143e+00 5.545e-02 -20.61 <2e-16 ***

time -8.301e-07 1.830e-08 -45.37 <2e-16 ***

---

Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 6.655 on 75282 degrees of freedom

Multiple R-squared: 0.08326, Adjusted R-squared: 0.08322

F-statistic: 2279 on 3 and 75282 DF, p-value: < 2.2e-16

Prova2

Alveurequeelprimermodelnoeraestadísticamentsignificantheprovatambunsegonmodel,enquefemservirtimeiDay.moment(quejafèiemserviralmodelanterior)iencomptesdeLaborhemoptatperferservirlavariablequalitativa"diadelasetmana",queladividiremen6variablesfictícies.

Unavegadamés,hempogutveurequeelp-valorindicaquelesvariablessónrellevants.Elcoeficientdedeterminacióésd'aproximadamentel9%,lleugeramentmillorqueenelcasanterior,peròsegueixsensepoderseraplicatperaprediccions.

Call:

lm(formula = bikes ~ Day.moment + time + Lunes + Martes + Miércoles +

Jueves + Viernes + Sábado, data = Datos)

Residuals:

Min 1Q Median 3Q Max

-17.5257 -4.8218 0.4113 5.1860 16.3727

Coefficients:

Estimate Std. Error t value Pr(>|t|)

(Intercept) 1.204e+03 2.663e+01 45.21 <2e-16 ***

Day.moment -6.343e-05 9.564e-07 -66.32 <2e-16 ***

time -8.146e-07 1.827e-08 -44.58 <2e-16 ***

Lunes -9.979e-01 8.957e-02 -11.14 <2e-16 ***

Page 35: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

35

Martes -1.578e+00 8.946e-02 -17.64 <2e-16 ***

Miércoles -9.843e-01 8.963e-02 -10.98 <2e-16 ***

Jueves -2.349e+00 8.984e-02 -26.14 <2e-16 ***

Viernes -2.261e+00 9.253e-02 -24.43 <2e-16 ***

Sábado -1.033e+00 9.550e-02 -10.82 <2e-16 ***

---

Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 6.631 on 75277 degrees of freedom

Multiple R-squared: 0.08995, Adjusted R-squared: 0.08985

F-statistic: 930.1 on 8 and 75277 DF, p-value: < 2.2e-16

Conclusions

Sifemungràficdelesdadesdel’estació:

Page 36: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

36

Enelsgràficsespotobservarquenosemblaquelesdadesdelesestacionssegueixinunpatrólineal.

0

5

10

15

20

25

30

0:00:00

0:48:00

1:36:00

2:24:00

3:12:00

4:00:00

4:48:00

5:36:00

6:24:00

7:12:00

8:00:00

8:48:00

9:36:00

10:24:00

11:12:00

12:00:00

12:48:00

13:36:00

14:24:00

15:12:00

16:00:00

16:48:00

17:36:00

18:24:00

19:12:00

20:00:00

20:48:00

21:36:00

22:24:00

23:12:00

25/03/2016

Page 37: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

37

Tambéhetractatd'aïllarlesdadesdelesestacionsenelmateixranghorari.Elsresultatssón:

Elgràficmostralesdadesmitgesdelahora,percadadiadelmes.Observemquelesdadesmitgesnosónunboníndexdepredicció,doncssempreensdonaràquetenimbicicletesdisponibles.

Veientelsresultatsd'aquestesproveshedeciditbuscarunaltremodelderegressióperrealitzarlesprediccions.

Page 38: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

38

5.2 ModelDeRegressióRandomForest

Donatqueelmodelderegressiólinealnoensserviahembuscatunaltrequefosmésprecís.PeraixòhemtriatRandomForest,queésunalgorismequefaservirsubconjuntsdedadesidecriterisdeclassificacióperconstruirarbresdedecisióambvariaciócontrolada.

Hihaaltresalgorismesdeprediccióquepodríememprar,comlaregressiólogística,peròhemoptataferservirRandomForestperquèdónasuportavariablescategòriques(comeltempsatmosfèric),mentrequeregressiólogísticano.

Heprovatdiversesvariacionspersabersihihauriabicicletesono,elsfactorsprincipalsqueheconsideratsón:

• Laprevisiómeteorològica• Elmomentdeltempspelqualesvolrealitzarlapredicció• Eldiadelasetmana

Hemfocalitzatlesprovesen4estacionsconcretes.Hemfetunaprediccióenunmomentdeltempsenquejadisposàvemdelsresultats,demaneraquehempogutcompararamblarealitatdelnombredebicicletesqueteníem.

Elsresultatsdelesprediccionsesdonenseparatspercadascunadelesquatreestacionsdemostra,segonselssegüentscriteris:

• Sihihaviabicicletes:enquantscasosheencertatquesiquen’hihavia.• Sinohihaviabicicletes:enquantscasosheencertatquenon’hihavia.• Tambéheseparatelsresultatsdelsdiesfeinersidelscapsdesetmana.Creiemque

l'ocupaciódebicicleteselsdiesfeinersobeeixapatronsméspautatsdecomportamentquenopaselcapdesetmana.

VullremarcarquelesdadesdisponiblesdelBicingsóndesdeljuny,iquenohihapossibilitatdesol·licitardadesantigues.Aquestfetcondicional’aprenentatgedelmodel,iamésenspotinduiraconclusionsrespecteafactorsexternsqueassenyalaréencadaresultat.

Page 39: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

39

Quadreresumprincipalsproves(v)

Variable Tipus Descripció v1 v2 v3 v4bis v5 v6

pbikes dependent indicalaprobabilitatdetrobaronobicicletesenunaestació

X X X X X

num_bikes dependent nombredebicicletesaunaestació X

weather_type categòrica eltipusdetempsquefa(sol,ennuvolat,plujasuau,intensa,...)

X X X

weather_type categòrica variablecategòricabooleanaquerepresentasihihaprecipitacionsono

X X X

temperature contínua latemperaturaengrausCelsius X X X

updatetime contínua elmomentdeltempspelqualesvollapredicció

X X X X X X

dayMoment contínua eltempsensegonsdesdel'inicideldia X X X X X X

weekday categòrica eldiadelasetmana X X X X X

weekday-bis categòrica diadelasetmana,dividiten6variables"dummy"

X

Page 40: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

40

v1-Provabàsica

Variabledependent:

• pbikes:indicalaprobabilitatdetrobaronobicicletesenunaestació

Variablesexplicatives:

• weather_type:variablecategòricaquerepresentaeltipusdetempsquefa(sol,ennuvolat,plujasuau,intensa,...)

• updatetime:variablecontínuaquerepresentaelmomentdeltempspelqualesvollapredicció

• dayMoment:variablecontínuaquerepresentaeltempsensegonsdesdel'inicideldia

• weekday:variablecategòricaquerepresentaeldiadelasetmana

Resultats

LABORABLES FESTIUS TOTAL

Est. pBikes Encert Errors %Enc. Encerts Errors %Enc. Encerts Errors %Enc.

30 1 4.725 0 100% 1.369 0 100% 6.094 0 100,0%30 0 0 75 0% 0 26 0% 0 101 0,0%

42 1 3.828 278 93% 1.258 24 98% 5.086 302 94,4%42 0 226 468 33% 19 94 17% 245 562 30,4%

74 1 3.943 315 93% 1.268 0 100% 5.211 315 94,3%74 0 0 574 0% 0 127 0% 0 701 0,0%

366 1 3.855 0 100% 1.387 8 99% 5.242 8 99,8%366 0 26 919 3% 0 0 #DIV/0! 26 919 2,8%

1 16.351 593 97% 5.282 32 99% 21.633 625 97,2%

0 252 2.036 11% 19 247 7% 271 2.283 10,6%

16.603 2.629 86% 5.301 279 95% 21.904 2.908 88,28%

Comentaris

Encertmoltaltentotal,peròmoltbaixencasquenohihabicicleta.

Page 41: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

41

V2-diesdelasetmana“dummies”

Variabledependent:

• pbikes:indicalaprobabilitatdetrobaronobicicletesenunaestació

Variablesexplicatives:

• weather_type:variablecategòricaquerepresentaeltipusdetempsquefa(sol,ennuvolat,plujasuau,intensa,...)

• updatetime:variablecontínuaquerepresentaelmomentdeltempspelqualesvollapredicció

• dayMoment:variablecontínuaquerepresentaeltempsensegonsdesdel'inicideldia

• weekday:variablecategòricaquerepresentaeldiadelasetmana,enaquestcasl'hemdividiten6variables"dummy"perassegurar-nosquel'algorismede

predicciólareconeixiacomavariablecategòrica.

Resultats

LABORABLES FESTIUS TOTAL

Est. pBikes Encert Errors %Enc. Encerts Errors %Enc. Encerts Errors %Enc.

30 1 4.756 0 100% 1.369 0 100% 6.125 0 100,0%30 0 0 76 0% 0 26 0% 0 102 0,0%

42 1 3.943 195 95% 1.281 1 100% 5.224 196 96,4%42 0 144 550 21% 0 113 0% 144 663 17,8%

74 1 3.795 463 89% 1.268 0 100% 5.063 463 91,6%74 0 0 574 0% 0 127 0% 0 701 0,0%

366 1 3.838 49 99% 1.307 88 94% 5.145 137 97,4%366 0 10 935 1% 0 0 #DIV/0! 10 935 1,1%

1 16.332 707 96% 5.225 89 98% 21.557 796 96,4%

0 154 2.135 7% 0 266 0% 154 2.401 6,0%

16.486 2.842 85% 5.225 355 94% 21.711 3.197 87,2%

Comentaris

o Encertmoltaltentotal,peròinferioralprimercas.Moltbaixencasquenohihabicicleta.

Page 42: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

42

v3-Tempsbooleà(plou/noplou).

Variabledependent:

• pbikes:indicalaprobabilitatdetrobaronobicicletesenunaestació

Variablesexplicatives:

• weather_type:variablecategòricabooleanaquerepresentasihihaprecipitacionsono.Adiferènciadelscasosanteriorsaquíhemvolgutsimplificaraquestavariable

perveuresipodíem"ajudar"al'algorismedepredicció• updatetime:variablecontínuaquerepresentaelmomentdeltempspelqualesvol

lapredicció• dayMoment:variablecontínuaquerepresentaeltempsensegonsdesdel'inicidel

dia• weekday:variablecategòricaquerepresentaeldiadelasetmana

Resultats

LABORABLES FESTIUS TOTAL

Est. pBikes Encert Errors %Enc. Encerts Errors %Enc. Encerts Errors %Enc.

30 1 4.756 0 100% 1.369 0 100% 6.125 0 100,0%30 0 0 76 0% 0 26 0% 0 102 0,0%

42 1 3.916 222 95% 1.174 108 92% 5.090 330 93,9%42 0 190 504 27% 55 58 49% 245 562 30,4%

74 1 4.011 247 94% 1.268 0 100% 5.279 247 95,5%74 0 0 574 0% 0 127 0% 0 701 0,0%

366 1 3.877 10 100% 1.363 32 98% 5.240 42 99,2%366 0 20 925 2% 0 0 #DIV/0! 20 925 2,1%

1 16.560 479 97% 5.174 140 97% 21.734 619 97,2%

0 210 2.079 9% 55 211 21% 265 2.290 10,4%

16.770 2.558 87% 5.229 351 94% 21.999 2.909 88,32%

Comentaris

o Encertmoltaltentotal,continuasentbaixencasdenohaver-hibicicletes.

Page 43: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

43

v4bis-Tempsbooleàitemperatura

Variabledependent:

• pbikes:indicalaprobabilitatdetrobaronobicicletesenunaestació

Variablesexplicatives:

• weather_type:variablecategòricabooleanaquerepresentasihihaprecipitacionsono

• temperature:variablecontínuaquerepresentalatemperaturaengrausCelsius

• updatetime:variablecontínuaquerepresentaelmomentdeltempspelqualesvollapredicció

• dayMoment:variablecontínuaquerepresentaeltempsensegonsdesdel'inicideldia

• weekday:variablecategòricaquerepresentaeldiadelasetmana

Resultats

LABORABLES FESTIUS TOTAL

Est. pBikes Encert Errors %Enc. Encerts Errors %Enc. Encerts Errors %Enc.

30 1 4.756 0 100% 1.369 0 100% 6.125 0 100,0%30 0 0 76 0% 0 26 0% 0 102 0,0%

42 1 3.882 256 94% 1.282 0 100% 5.164 256 95,3%42 0 205 489 30% 0 113 0% 205 602 25,4%

74 1 3.939 319 93% 1.268 0 100% 5.207 319 94,2%74 0 0 574 0% 0 127 0% 0 701 0,0%

366 1 3.815 72 98% 1.321 74 95% 5.136 146 97,2%366 0 47 898 5% 0 0 #DIV/0! 47 898 5,0%

1 16.392 647 96% 5.240 74 99% 21.632 721 96,8%

0 252 2.037 11% 0 266 0% 252 2.303 9,9%

16.644 2.684 86% 5.240 340 94% 21.884 3.024 87,9%

Comentaris

o Laintroducciódelatemperaturanosuposacapdiferènciarespectealsaltresmodels.Aquestfactorprobablementésmésrellevantal’hivern,quenopasal’estiu.

Page 44: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

44

v5-TempscategoritzatiTemperatura

Variabledependent:

• pbikes:indicalaprobabilitatdetrobaronobicicletesenunaestació

Variablesexplicatives:

• weather_type:variablecategòricaquerepresentaeltipusdetempsquefa(sol,

ennuvolat,plujasuau,intensa,...)

• temperature:variablecontínuaquerepresentalatemperaturaengrausCelsius

• updatetime:variablecontínuaquerepresentaelmomentdeltempspelqualesvollapredicció

• dayMoment:variablecontínuaquerepresentaeltempsensegonsdesdel'inicideldia

• weekday:variablecategòricaquerepresentaeldiadelasetmana

Resultats

LABORABLES FESTIUS TOTAL

Est. pBikes Encert Errors %Enc. Encerts Errors %Enc. Encerts Errors %Enc.

30 1 4.756 0 100% 1.369 0 100% 6.125 0 100,0%30 0 0 76 0% 0 26 0% 0 102 0,0%

42 1 3.863 275 93% 1.282 0 100% 5.145 275 94,9%42 0 178 516 26% 0 113 0% 178 629 22,1%

74 1 3.964 294 93% 1.268 0 100% 5.232 294 94,7%74 0 0 574 0% 0 127 0% 0 701 0,0%

366 1 3.813 74 98% 1.324 71 95% 5.137 145 97,3%366 0 62 883 7% 0 0 #DIV/0! 62 883 6,6%

1 16.396 643 96% 5.243 71 99% 21.639 714 96,8%

0 240 2.049 10% 0 266 0% 240 2.315 9,4%

16.636 2.692 86% 5.243 337 94% 21.879 3.029 87,84%

• Comentaris

o Resultatsmoltsimilar,latemperaturacontinuasenseresultarrellevant.

Page 45: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

45

v6-Predimelnombredebicicletes

Variabledependent:

• numbikes:indicaelnombredebicicletesquetrobem.

Variablesexplicatives:

• weather_type:variablecategòricaquerepresentaeltipusdetempsquefa(sol,ennuvolat,plujasuau,intensa,...)

• updatetime:variablecontínuaquerepresentaelmomentdeltempspelqualesvollapredicció

• dayMoment:variablecontínuaquerepresentaeltempsensegonsdesdel'inicideldia

• weekday:variablecategòricaquerepresentaeldiadelasetmana

Resultats-Nombredebicicletes

• Elsistemaaraprediuelnombredebicicletesquehipodenhaverenunmomentdeltemps.

• Hemconsideratunresultatcorrectequan:§ Silarealitatesquehihaalgunabici:consideremcorrectequanelnombre

debicicletesquepredimes+-20%elnombredebicicletesrealsal’estació.§ Silarealitatésquenohihabicicletesal’estació,consideremencertadala

prediccióquanelprogramaprediu0bicicletes. LABORABLES FESTIUS TOTAL

Est. pBikes Encert Errors %Enc. Encert Errors %Enc. Encert Errors %Enc.

30 1 1.223 2.111 37% 1.280 1.511 46% 2.503 3.622 40,9%30 0 0 58 0% 0 44 0% 0 102 0,0%

42 1 560 2.364 19% 261 2.235 10% 821 4.599 15,1%42 0 130 338 28% 25 314 7% 155 652 19,2%

74 1 348 2.677 12% 260 2.241 10% 608 4.918 11,0%74 0 0 367 0% 0 334 0% 0 701 0,0%

366 1 429 2.640 14% 33 2.180 1% 462 4.820 8,7%366 0 0 323 0% 0 622 0% 0 945 0,0%

1 2.560 9.792 21% 1.834 8.167 18% 4.394 17.959 19,7%

0 130 1.086 11% 25 1.314 2% 155 2.400 6,1%

2.690 10.878 20% 1.859 9.481 16% 4.549 20.359 18,26%

Page 46: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

46

Resultats-Hihabicicletes?

• Elsistemaaraprediuelnombredebicicletesquehipodenhaverenunmomentdeltemps.

• Hemconsideratunresultatcorrectequan:§ Silarealitatesquehihaalgunabici:consideremcorrectequanelnombre

debicicletesqueprediemésde1omés.§ Silarealitatésquenohihabicicletesal’estació,consideremencertadala

prediccióquanelprogramaprediu0bicicletes. LABORABLES FESTIUS TOTAL

Est. pBikes Encert Errors %Enc. Encert Errors %Enc. Encert Errors %Enc.

30 1 3.334 0 100% 2.791 0 100% 6.125 0 100,0%30 0 0 58 0% 0 44 0% 0 102 0,0%

42 1 2.924 0 100% 2.496 0 100% 5.420 0 100,0%42 0 0 468 0% 0 339 0% 0 807 0,0%

74 1 3.025 0 100% 2.501 0 100% 5.526 0 100,0%74 0 0 367 0% 0 334 0% 0 701 0,0%

366 1 3.069 0 100% 2.213 0 100% 5.282 0 100,0%366 0 0 323 0% 0 622 0% 0 945 0,0%

1 12.352 0 100% 10.001 0 100% 22.353 0 100,0%

0 0 1.216 0% 0 1.339 0% 0 2.555 0,0%

12.352 1.216 91% 10.001 1.339 88% 22.353 2.555 89,74%

Comentari

o Encertmoltbaixenlapredicciódelnombredebicicletes,iunencertmoltaltenpredirquehihabicicletes.

o Encertnulenpredirquenohihabicicletes,elmodelsemprehapreditquehihabicicletes.

Page 47: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

47

Resultatsglobals

LABORABLES FESTIUS TOTAL

pBikes Encert Errors %Enc. Encerts Errors %Enc. Encerts Errors %Enc.

V1 v1-Provabàsica

1 16.351 593 97% 5.282 32 99% 21.633 625 97,2%

0 252 2.036 11% 19 247 7% 271 2.283 10,6%

16.603 2.629 86% 5.301 279 95% 21.904 2.908 88,28%

V2 v2-diesdelasetmana"dummies"

1 16.332 707 96% 5.225 89 98% 21.557 796 96,4%

0 154 2.135 7% 0 266 0% 154 2.401 6,0%

16.486 2.842 85% 5.225 355 94% 21.711 3.197 87,2%

V3 v3-Tempsbooleà(plou/noplou).

1 16.560 479 97% 5.174 140 97% 21.734 619 97,2%

0 210 2.079 9% 55 211 21% 265 2.290 10,4%

16.770 2.558 87% 5.229 351 94% 21.999 2.909 88,32%

V4bis v4bis-Tempsbooleàitemperatura

1 16.392 647 96% 5.240 74 99% 21.632 721 96,8%

0 252 2.037 11% 0 266 0% 252 2.303 9,9%

16.644 2.684 86% 5.240 340 94% 21.884 3.024 87,9%

V5 v5-TempscategoritzatiTemperatura

1 16.396 643 96% 5.243 71 99% 21.639 714 96,8%

0 240 2.049 10% 0 266 0% 240 2.315 9,4%

16.636 2.692 86% 5.243 337 94% 21.879 3.029 87,84%

V6a v6-Predimelnombredebicicletes(nombre)

1 2.560 9.792 21% 1.834 8.167 18% 4.394 17.959 19,7%

0 130 1.086 11% 25 1.314 2% 155 2.400 6,1%

2.690 10.878 20% 1.859 9.481 16% 4.549 20.359 18,26%

V6b v6-Predimelnombredebicicletes

1 12.352 0 100% 10.001 0 100% 22.353 0 100,0%

0 0 1.216 0% 0 1.339 0% 0 2.555 0,0%

12.352 1.216 91% 10.001 1.339 88% 22.353 2.555 89,74%

Semblaserqueelresultatméscompensatésv3,doncsensdonalamésaltaprobabilitatd’encerts

tantquanhihabicicletescomquannon'hiha.

Page 48: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

48

5.3 ModelDeRegressióRandomForestCurt/Llarg

Hemexploratlapossibilitatdeferunapredicciódiferentsegonselperíodedetempsenqueesdemana.LatecnologiaquefemservirperRandomForestés"R",enelquehemdecrearelmodelsobreelquefaremlapredicció.Aquestmodelesconstrueixsobredadesexistents,aixòimplicariaquecadavegadaqueunusuariensdemanaunaprediccióidealmentelreconstruiríem.Feraixòéspocpràcticeneldiaadia,jaqueelcostdeconstruirelmodelésforçaaltieltempsqueestrigaaconstruir-lotambé.

Ambelsrecursosdequedisposemnoésviablepoderferaquestareconstrucciódelmodelpercadapredicció,aixíquesemprepartimd'unmodelcalculatlanitanterior.Aixòvoldirquesiunusuariestàdemanantconèixerelnombredebicicletesd'aquí1hora,elsistemanotéencomptel'ocupacióactualdel'estació.

Aixídoncs,hempensatenaplicarunsistemalleugeramentdiferentperlesprediccionsacurttermini:

• Diferenciarcurt/llargtermini• Perunaprediccióllarg:ferservirl'algorismenormal(ambelmodelv3)• Perunapredicciócurt:

o Predirelnombredebicicletesquehihauriad’haveraramateix(ambelmodelv6)o Predirelnombredebicicletesnormalment(ambelmodelv6)o Calcularl’offsetdelesduesprediccions,ésadirsegonselmodelquantesbicicletes

guanyaremoperdrem.o Demanarelnombredebicicletesactualso Aplicarl’offsetdepredicciósobreelnombredebicicletesactualso Aquestseràelnombredebicicletesqueinformaremcomaresultatdelapredicció.

Lesprediccionss’hanfetamblesmateixesvariablesexplicativesqueelcasv3,ésadir,aplicantelmillorresultatassolit:

Variabledependent:

• pbikes:indicalaprobabilitatdetrobaronobicicletesenunaestació

Variablesexplicatives:

• weather_type:variablecategòricabooleanaquerepresentasihihaprecipitacionsono,adiferènciadelscasosanteriorsaquíhemvolgutsimplificaraquestavariableper"ajudar"al'algorismedepredicció

• updatetime:variablecontínuaquerepresentaelmomentdeltempspelqualesvollapredicció

• dayMoment:variablecontínuaquerepresentaeltempsensegonsdesdel'inicideldia

• weekday:variablecategòricaquerepresentaeldiadelasetmana

Page 49: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

49

ModelcurtterminienversModelv3per1dia

Compararemelsresultatsobtingutsd'executarlapredicciósobrelesdadesd’undia,ihocompararemambelmillormodelv3d’unsoldia.Ésadir,tractaremd’esbrinarsilaprediccióacurtterminiésmillorsiestàfetaambl'últimnombredebicicletesdisponibleabansdelapredicció:

Resultatsdelmodelacurtterminicomparatambv3

Hihabici Nohihabici Total

Model Encert Errors %Enc. Encert Errors %Enc. Encert Errors %Enc.

30min 4.147 374 91,73% 178 345 34,03% 4.325 719 85,75%

60min 4.135 386 91,46% 163 360 31,17% 4.298 746 85,21%

90min 4.080 441 90,25% 95 428 18,16% 4.175 869 82,77%

120min 4.079 442 90,22% 68 455 13,00% 4.147 897 82,22%

v3 4.330 191 95,78% 35 488 6,69% 4.365 679 86,54%

Comentari

• Observemqueelsresultatstotalsdelmodelv3sónmillorsqueelsdelsnousmodelsacurttermini.

• Elsencertspelscasosquenohihabicicletessónconsiderablementmillorsenelsmodelscurt-terminiqueenelmodelv3.

Page 50: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

50

Modelcurtillargtermini(junts)

Aixídoncsimplementaremunalgorismequesiguilleugeramentdiferentpelcurtquepelllargtermini.Ésadir,calcularemlesprediccionsdeduesmaneresdiferents,segonselterminidetempsquel'usuarirequereixi.

Hihabici Nohihabici Total

Model Encert Errors %Enc. Encert Errors %Enc. Encert Errors %Enc.

v3no24+30

min21.551 802 96,41% 408 2.147 15,97% 21.959 2.949 88,16%

v3no24+60

min21.539 814 96,36% 393 2.162 15,38% 21.932 2.976 88,05%

v3no24+90

min21.484 869 96,11% 325 2.230 12,72% 21.809 3.099 87,56%

v3no24+120

min21.483 870 96,11% 298 2.257 11,66% 21.781 3.127 87,45%

v3 4.330 191 95,78% 35 488 6,69% 4.365 679 86,54%

Comentari

• Observemqueelsresultatstotalsdelmodelv3sónmillorsqueelsdelsnousmodelscombinats

• Detotesmanerespreferimunmodelcombinat,jaqueéselméscompensatpels

doscasos.

Page 51: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

51

6 Anàlisi

6.1 Anàlisidetemps

Tasca Perfil Hores

Reals

Hores

Planificades

Desviació

BacklogdeProducte 104 192 -88

DescripcióSistema CapdeProjecte 8 32 -24Serveisal’usuari CapdeProjecte 8 16 -8Mapadecomponents CapdeProjecte 32 40 -8

DescripcióMotorPredicció CapdeProjecte 8 24 -16PlataformaAppBackend Desenvolupador

backend24 56 -32

PlataformaBasedeDades Desenvolupadorbackend

24 24 0

Desenvolupament 480 348 132

CapturadeDades Desenvolupadorbackend

80 48 32

Appusuarifinal DesenvolupadorAppAndroid

80 48 32

Motordepredicció Desenvolupadorbackend

120 140 -20

ProvesdelSistema Controldequalitat 80 40 40Altres

Documentació CapdeProjecte 120 72 48

Total 584 540 44

CausesDesviació

• Backlogdeproducte:haestatnegativa,ésadir,heinvertitmenystempsdelqueestavaprevist.Aixòésaixíperquènovaigferunadocumentaciódetalladadelsrequisitsdelsistema,nivaigferunadescripciódelscomponentsdelsistema.Peraltrabandalaplataformabackendvaestarmoltsenzilladeposarenmarxaamblatecnologiadecontainersquevaigemprar.

• Desenvolupament:haestatunadesviaciósignificativa,motivatperunadefiniciópocprofundadelsrequeriments,quem’haexigitmésesforçal’horadeprogramar.Lesprovesdelsistemas’hanallargatpercontemplardiferentscasosambelsqualsm’heanattrobant.

Page 52: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

52

6.2 Anàlisifinancer

Elcosteconòmicd'aquestprojecteesdivideixen:

• RecursosHumans• Infraestructura

Enaltresprojectespodríemtenirencompteelcostdelsoftwareperòenaquestcasnoésnecessari,jaquetotelsoftwareutilitzatéslliurei/ogratuït.

Comacostderecursoshumanshocalcularemapartirdeleshoresdedicadesalprojectedonantunvalordemercatalsdiferentsrols.

RecursosHumans

RecursSou

Anual1

CostAnual

2

Cost

HorariHores

Cost

Projecte

CapdeProjecte 39.375,00€ 59.062,50€ 32,81€ 176 5.775,00€

Desenvolupadorbackend 30.000,00€ 45.000,00€ 25,00€ 248 6.200,00€

DesenvolupadorAppAndroid 33.500,00€ 50.250,00€ 27,92€ 80 2.233,33€

Controldequalitat 29.000,00€ 43.500,00€ 24,17€ 80 1.933,33€

CostRecursosHumansProjecte 584 16.141,67€

Infraestructura

Infraestructura Desde Finsa Mesos CostMensual CostTotal

Servidor1GBdeRami1CPU Gener Juliol 7 5,00€ 35,00€Actualització4GBdeRami2CPUs Agost Setembre 2 40,00€ 80,00€CostInfraestructura 115,00€

CostTotal

Concepte Import

RecursosHumans 16.141,67€Infraestructura 115,00€CostTotalProjecte 16.256,67€

1http://www.techsalarycalculator.com/2Costossocialsiempresarialsdel50%delsou.

Page 53: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

53

6.3 Anàlisidecompetències

Eneltreballhetractatdeposarenvalorpràctictotunseguitdematèries,entrelesquevoldriadestacar:

• Enginyeriadesoftware:pertaldeconstruiridissenyarelsistema,ésadir,quetractaremdeseguirpautesidocumentaciósegonsuncriterid’enginyeria.

§ Planificaciódelprojecte§ Anàlisifinancerdecostos§ Metodologia

• Programació:labasedelprojecteésunprogramari,pertantposaremenvalor

coneixementsihabilitatsadquiridesdeprogramació.§ Desenvolupamentdelfrontend§ Desenvolupamentdelbackend

• BasesdeDades:elmotordeprediccióesbasaendadesacumulades,pertanthaurem

dedissenyarunesquemaonquedinemmagatzematslesdadesenformatcru.§ Coneixementsdebasededades-administració§ ConeixementsdeMySQL

• Matemàtiquesiestadística:l’algoritmed’estimaciótindràcomabaseunapredicció

estadísticabasadaendiferentsdadesaplicantdiferentspesos.§ Coneixementsd’estadísticaquem’hanpermèsiniciar-meenlapredicció

mitjançantelmodelRandomForest

Page 54: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

54

7 Conclusions

7.1 Comparativaamblacompetència

Hecomparatelsresultatsdelamevaestimacióambwww.bicintime.com,l’úniccompetidorquedónaserveidepredicció.Elsresultatssónelssegüents:Estació Dia Mes Any Hora Min Bicicletes

RealsBicingStats

UPF

42 24 8 2016 12 24 7 9 842 24 8 2016 12 8 6 10 830 24 8 2016 12 4 14 12 330 24 8 2016 12 34 14 15 430 24 8 2016 12 35 14 14 530 24 8 2016 12 36 14 15 6

366 24 8 2016 12 36 22 21 6366 24 8 2016 12 43 22 21 6366 24 8 2016 12 45 22 22 674 24 8 2016 12 49 1 1 674 24 8 2016 12 50 1 1 474 24 8 2016 12 51 1 0 274 24 8 2016 12 52 1 0 174 24 8 2016 12 53 1 0 1

Observemque:

• Lamevapredicció,encaraqueavegadesnoéslamésacurada,éslaquemenysdispersióofereixenconjunt.

o Lacompetènciahaestimatenalgunesocasionsunsvalorsdebicicletesmoltdiferentsdelarealitat(6bicicletes,quanhiha15,etc...)

• Lamevaprediccióéslamésajustadaenmésocasions(9guanyojo,1empat,inomésen4ocasionslacompetènciaésmésajustada).

• Lamevaprediccióté3casosenelsqualsprediuquenohihauràbicicletes,iencanvihiha1bicicleta.

Conclusió:

Totiquelesdadesd'aquestsistemadelesquedispososónpoques,jaqueleshemhagutderecollirmanualment,elsresultatssemblenindicarqueelmeusistemaésmésprecísqueelseu.Mésendavantm'agradariaferunsistemaderecol·lecciódedadesdelasevaAPIpertaldepoderferunacomparativarigorosa.

Page 55: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

55

7.2 ElfuturdeBicingStats

M'agradariacontinuarmillorantl'aplicacióielsistemaconstruïtpertalquepuguiserunaaplicaciócomercialamblessegüentsmillores:

Millorarlaqualitatdelapredicció:

FentservirCross-Validationdedadespermirar"d'ajudar"al'algorismedepredicció,jaquetotitenirunpercentatged'encertsmoltaltquanprediuquehihabicicletes,elpercentatged'encertsquanprediuquenon'hihauràésmoltbaixactualment.

Voldriaprovard'afegirinformaciód'esdevenimentsespecialsalaciutatquepuguiafectaral'úsdeBicing(partitsdefutbol,concerts,cursespopulars,...),jaquelamevaexperiènciapersonalemfapensarquetenenunafortaincidènciaenl'ocupaciódelesestacionsperònotenencorrelacióambcapdelesdadesqueutilitzemperferlesprediccionsactuals,elquehofaunadadarellevant.

Amés,tambéseriamoltinteressantafegirunsistemaautomatitzatd'informesdelaqualitatdelesestimacions,pertaldeserutilitzadapermillorarlaqualitatdel'algoritme.

Optimitzarelrendimentdelsistema:

Actualmenteltempsderespostapercebutperl'usuariéscorrecte,peròelcàlculdelmodelresultamoltlent(ésnocturn),sobretotpelfetqueésunaconsultarelativamentcomplicadaalabasededades,quepodríemmillorarsifosdesnormalitzada.

CalculoelmodeldeprediccióutilitzantR,peròpodriaserinteressantfercomparativesambimplementacionsdel'algoritmeenaltresllenguatges(ofinsitotfer-neunaimplementaciópròpia).

Afegirmésplataformes:

Ésnecessaritenirtantunaversiówebdel'aplicaciócomunaversióiOS,jaquesónplataformesambmoltdepesim'assegurarienpoderarribaralmàximdepúblicpossible.

Unainiciativaquem'agradariavalorarseriacrearunaaplicacióperSmartwatch,jaquequansomalabicicletapodemvolerrealitzaralgunaconsultaievitartreureelmòbilpotserungranvalorafegitpelsusuaris.

Respectealainformacióqueesdónaal'usuari:

Voldriainformaral'usuaridelnombredeplacesdisponiblesal'estació.Elscriterisquehiaplicaréseranelsmateixosqueesfanserviralapredicciód'ocupaciódel'estació.

Afegirunaopcióperferconsultesdecomanard'unllocaunaltre,detalmaneraquel'aplicacióproporcionariaal'usuarilaprobabilitatdetrobarbicicletesal'estaciódesortida,eltempsdetrajecteilaprobabilitatdetrobarespaisbuitsal'arribada(similaracomhofaBicintime,elmeucompetidor).

Page 56: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

56

Afegirunhistòricdelesconsultesquehafetl'usuariambl'opciódemarcarcertesestacionsotrajectescompreferides,detalmaneraquefacilitarial'úsdel'estacióal'usuari.

Tambéhauriadeconsiderarafegirunaeinaperobtenirfeedbackdepossiblesproblemesdel'aplicació,jasiguidemanant-hoal'usuaridirectamentoinstrumentantl'aplicaciópertald'obtenirdadesd'úsdememòria,CPU,...

Perúltim,ipensantentenirunaaplicacióquecomamínimnosuposiuncostdemanteniment,s'hauriad'optarbéperdemanardonacionsvoluntàriesalsusuarisoperintroduiralgunacaracterísticademonetització,jasiguimostraranuncis,ferl'aplicaciódepagamentoferquealgunacaracterísticanomésestiguidisponibleperusuarispagadors(comperexemplel'historialdeconsultes).

Page 57: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

57

7.3 Opiniópersonal

Aquestprojectehaestatmoltinteressantpermi,jaquem'haservitperadquirirdiversosconeixementsnous.

Percomençarhetingutl'oportunitatd'emprarGo,queésmoltorientataservidoriquem'hasemblatmoltméseficaçquePHP,elllenguatgequefaigservirhabitualmentalmeudiaadiaalafeina.Gotémoltbonrendimentipelfetdetenirtipusestàticsproporcionapoquessorpreses.Amés,ésunllenguatgequeemrecordaforçaaunaversiósimplificadadeC++,quevaserelmeuprimerllenguatgedeprogramació.

TambéhepogutaprendreR,delqueenconeixianomésel"helloworld"iquem'hasemblatmoltfàcild'utilitzarisorprenentmenteficient,tenintencomptequeestractad'unllenguatgeinterpretat.Rm'hafacilitatpoderiniciar-meala"datascience"ambaquestprojecte,uncampenelqualm'agradariaaprofundirpertaldesercapaçdemillorarambfonamentelsistemadepredicciódel'aplicació.Aquestsconeixementsemfacilitaranengranmesurafuturestasquesd'anàlisidedadeslesqualssónmoltútilsentottipusdeprojectes(jasiguiperdescobrirquèfuncionaiquènoopertalderealitzarprediccions,igualquehefetaaquestprojecte).

LamevaexperiènciaambDocker,m'hasemblatmoltconstructiva.JahaviautilitzatcontenidorsdeDockeralafeina,peròhaviaconstruïtl’estructuradesdezero.Totiquelaposadaenmarxadelsistemadecontenidorsemvaconsumirforçatempsenunmomentinicial,crecquealallargavaserunabonainversió,jaqueemvaevitarmoltsproblemespotencialscausatsperpossiblesdiferènciesdeversionsentreelservidorielclient.AmbelqueséaranodubtariaentornarautilitzarDockerenelmeuproperprojecte.

Page 58: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

58

8 Bibliografia

DocumentacióoficialdeGo

https://golang.org/

Documentacióoficiald'Android

https://developer.android.com/

DocumentacióoficialdeR

https://cran.r-project.org/

DocumentacióoficialdeDocker

https://docs.docker.com/

Resoluciódedubtespuntualsduranteldesenvolupament

http://www.stackoverflow.com

InformaciósobreRandomForest

https://en.wikipedia.org/wiki/Random_forest

https://www.youtube.com/watch?v=loNcrMjYh64ç

https://www.quora.com/What-are-the-advantages-of-different-classification-algorithms

Intel·ligènciaartificialiAprenentatgeautomàtic

www.udacity.com

Patronsd’aplicaciómòbil:

http://appdesignbook.com/es/contenidos/presentacion/

Concepted’arquitectura

http://www.iainstitute.org/what-is-ia

Page 59: Títol: Bicing Stats Autor: Alejandro Carol Campreciós · • A Catalunya hi trobem altres serveis, com la Girocleta de Girona o l'Ambicia't de Granollers • A Espanya hi ha més

59

Elementsqueconfigurenl'arquitecturad'unaaplicació

https://es.wikipedia.org/wiki/Arquitectura_de_la_informaci%C3%B3n

MetodologiaScrum

http://openaccess.uoc.edu/webapps/o2/bitstream/10609/45670/7/jtiernobTFC0116mem

%C3%B2ria.pdf