Skip to content

Tekniikka

MAIN1

Päätoiminnot

Converter - datan käsittelyyn

Helpoin tapa käyttää NFleet-optimointia on konvertteri-sovelluksen kautta. Konvertteriin voi kopioida tai lukea tiedostona tai lähettää API-rajapinnan kautta kuljetusten ja autojen tiedot, sekä muokata ja täydentää tietoja. Tiedot ovat taulukoissa ja perustoiminnot ovat samankaltaisia kuin perinteisessä taulukkolaskentaohjelmassa.

Jos data on suoraviivaista, niin käsittely tehdään yksinkertaisemmassa taulukossa. Jos datassa on enemmän parametrejä niin konvertteri vastaavasti näyttää ne laajennetussa taulukossa. Jos datassa on muodollisia virheitä, niin ne on korostettu.

Kun tiedot ovat taulukoissa muodollisesti oikein, niin ne voi lähettää edelleen optimoinnille. Optimoinnin jälkeen tulokset voi lukea takaisin konvertteriin ja niitä voi muokata ennen toimittamista edelleen.

Planner - optimointiin laskentaytimessä

Planner, eli laskentaydin ja sen käyttöliittymä ovat NFleetin alkuperäinen osa. Siinä on myös toiminnot datan syöttämiseen ja muokkaamiseen, mutta käytännössä se on helpointa tehdä konvertterissa.

Optimointi käynnistetään plannerissa ja laskennan valmistuttua tulokset näytetään taulukkona ja kartalla.

Optimointilaskentaa ohjataan käytännössä sille syötettävällä datalla, eli kuljetustilausten ja autojen tiedoilla. Jos laskennan tulokset eivät ole riittäviä, niin lähtödataa muokataan vastaavasti ja annetaan uudelleen optimoitavaksi. Pieniä datan muokkauksia voi hyvin tehdä suoraan plannerissa, mutta kaikki suuremmat määrät kannattaa tehdä konvertterilla.

Karttapalvelu ja tieverkosto

Optimointilaskennassa aluksi laaditaan ns. etäisyysmatriisi mikä sisältää taulukoituna kaikkien kuljetuspaikkojen väliset keskinäiset etäisyydet ajoaikoina. Ensin osoitetiedot muunnetaan karttakoordinaateiksi ja sitten lyhimmät etäisyydet käydään lukemassa karttapalvelusta kartalta. Tässä otetaan huomioon ajoneuvojen tyypit, eli lyhin (nopein) etäisyys katsotaan sellaisia teitä pitkin joilla ko. ajoneuvo saa kulkea. Tiekohtaiset nopeusrajoitukset huomioidaan myös, ja eri kulkuneuvotyypeille on laadittu erilaiset keskimääräiset nopeusprofiilit.

Varsinainen optimointilaskenta tapahtuu etäisyysmatriisin tietojen pohjalta. Laskennan valmistuttua piirretään ja listataan tiesegmentit tulosten mukaisille reiteille, ja listataan tarkat etäisyydet ja ajoajat.

Data

NFleet-optimointipalvelu ratkaisee ajoneuvon reititysongelman metaheuristisilla globaaleilla ja lokaaleilla hakualgoritmeilla. Laskennan lähtötietoina on useita parametrejä:

  • nouto- ja toimituspaikkojen sijainnit (vapaasti asetettavissa jokaiselle kuljetukselle, osoitteena tai koordinaatteina)
  • aikaikkunat sekä noudoille että toimituksille
  • pysähdysten kestot, joissa voi olla kiinteä paikkakohtainen osuus sekä kuljetuksen kapasiteetista riippuva osuus
  • kuljetuksen koko rinnakkaisilla kapasiteeteilla (esim. paino, lukumäärä ja tilavuus samaan aikaan)
  • ajoneuvojen ja kuljetustehtävien yhteensopivuus
  • ajoneuvon kustannukset
  • työ- ja ajoajan rajoitukset
  • karttadatasta luetaan tieverkoston ominaisuudet (esim. yksisuuntaiset kadut ja risteysten kääntymissäännöt) ja nopeusrajoitukset

Laskennan tietomallin englanninkielinen kuvaus on täällä.

Laskenta

Laskentaa on käytännössä testattu hyvin tuloksin todellisilla suunnitelmilla, joissa tehtäviä on enimmillään ollut 2000 ja ajoneuvoja 100. Laskentaan tarvittava aika vaihtelee riippuen kuljetusongelman monimutkaisuudesta (kuten yhteensopivuusrajoitteiden määrä, reittien tehtävämäärä), mutta yleensä pienemmät optimointitehtävät ratkeavat muutamassa minuutissa.

Laskentapalvelussa voi vapaasti hallita (poistaa ja muokata) sinne lähetettyjä tehtäviä. Laskentatehtävät ja niiden data on kokonaan käyttäjän omaisuutta, niitä ei tallenneta tai hyödynnetä missään muualla.

Tiekartat

Karttapohjana on OpenStreetMap ja optimointilaskenta on tuettuna useassa maassa. Uusia maita lisätään laskennan piiriin tarpeen mukaan.

coverage

Infrastruktuuri

Laskenta tapahtuu pilvipalvelussa jonka alustana on Microsoft Azure.

Käyttäjä voi työstää ja laskea useita tehtäviä rinnakkaisesti. Laskentapalvelu huolehtii työjonojen hallinnasta ja laskentakapasiteetin säädöstä automaattisesti ja riittävästi.