Code Monkey home page Code Monkey logo

com.opendoorlogistics's People

Contributors

graceyin1218 avatar nkkodali avatar pgwelch avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

com.opendoorlogistics's Issues

Start time is not considered as the earliest start time

Hi Phil,

I tried a simple 1 customer delivery problem. The vehicle start time that we mention in the vehicle types are being considered as the actual start time of the vehicle. It is not being able to consider start time as the earliest start time. Is that an issue? I have build the jsprit integration project as a clean build and using the same. Attaching the gantt chart of the trip. You can see that the vehicle is starting at the start time and waiting at the customer unnecessarily.
image

Mac App to run ODL

Currently, it still needs the command line code "java -jar ....". With Apple's jar-bundler it should be no problem to bundle ODL-jar and make it a Mac App. However, the jar bundler does not come with OS X Maverics anymore (and not with the developer xcode tools anymore)

Get latest version and update repo

I tried downloading this but its not building in latest Eclipse. Could you update this repo if it hasn't been already with latest code?
That would be highly appreciated 😃

Character encoding in .odlx file

Changing an option in the jsprit.odlx file to have 'special' characters - e.g. Näytä kartta (Show map in Finnish), results in the .odlx file not being loadable. The error "Invalid byte 2 of 3-byte UTF-8 sequence
" is thrown when loading the XML file (an odlx file is XML). See here http://stackoverflow.com/questions/2421272/invalid-byte-2-of-2-byte-utf-8-sequence

A workaround may be explicitly setting a different character encoding (e.g. not UTF-8) at the start of the .odlx XML file (to test).

Issue when try Optimise route for United States

First of all, great project !
So, I was following This Tutorial and it works fine if you select the UK map, but if you select the US (United States) and try to Optimise the route with the "ROAD_NETWORK" option selected on settings, I'm getting the following error:

java.lang.RuntimeException: Invalid or empty Graphhopper directory: C:\Demo\Graphhopper
at com.opendoorlogistics.core.distances.DistancesSingleton.initGraphhopperGraph(DistancesSingleton.java:201)
at com.opendoorlogistics.core.distances.DistancesSingleton.calculateGraphhopper(DistancesSingleton.java:119)
at com.opendoorlogistics.core.distances.DistancesSingleton.calculate(DistancesSingleton.java:598)
at com.opendoorlogistics.core.scripts.execution.dependencyinjection.AbstractDependencyInjector.calculateDistances(AbstractDependencyInjector.java:91)
at com.opendoorlogistics.core.scripts.execution.ScriptExecutor$1.calculateDistances(ScriptExecutor.java:838)
at com.opendoorlogistics.components.jsprit.VRPBuilder$VehicleRoutingTransportCostsImpl.(VRPBuilder.java:190)
at com.opendoorlogistics.components.jsprit.VRPBuilder.buildProblem(VRPBuilder.java:732)
at com.opendoorlogistics.components.jsprit.VRPBuilder.build(VRPBuilder.java:742)
at com.opendoorlogistics.components.jsprit.VRPComponent.runOptimiser(VRPComponent.java:503)
at com.opendoorlogistics.components.jsprit.VRPComponent.execute(VRPComponent.java:273)
at com.opendoorlogistics.core.scripts.execution.ScriptExecutor.executeSingleInstruction(ScriptExecutor.java:910)
at com.opendoorlogistics.core.scripts.execution.ScriptExecutor.executeBatchedInstruction(ScriptExecutor.java:724)
at com.opendoorlogistics.core.scripts.execution.ScriptExecutor.executeAllInstructions(ScriptExecutor.java:355)
at com.opendoorlogistics.core.scripts.execution.ScriptExecutor.execute(ScriptExecutor.java:249)
at com.opendoorlogistics.studio.scripts.execution.ScriptExecutionTask.executeNonEDTAfterInitialisation(ScriptExecutionTask.java:150)
at com.opendoorlogistics.studio.scripts.execution.DatastoreModifierTask.executeNonEDT(DatastoreModifierTask.java:89)
at com.opendoorlogistics.studio.scripts.execution.ScriptsRunner$2.doInBackground(ScriptsRunner.java:368)
at com.opendoorlogistics.studio.scripts.execution.ScriptsRunner$2.doInBackground(ScriptsRunner.java:1)
at javax.swing.SwingWorker$1.call(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at javax.swing.SwingWorker.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

Component com.opendoorlogistics.components.jsprit threw an exception.
Could not complete operation "vehicle routing (jsprit).odlx".
Execution of the operation failed.

Multiple Trips for each vehicle

This is a pretty wonderful tool!

I was trying to model a pickup and delivery problem. But it looks like the vehicles don't take multiple trips. After it completes one drop, it doesn't try to find the next trip.

Is there a way to model this?

Will Not Run as Configured in JAVA v11+

I am not a Java programmer, but I do use ODL Studio to support our scout troop with our annual mulch delivery sale - it has been a real help in delivering 7,000 to 10,000 bags of mulch. The sale was postponed in 2021 due to COVID. Since then I have updated my Java installation on my Mac to:

java 17.0.2 2022-01-18 LTS
Java(TM) SE Runtime Environment (build 17.0.2+8-LTS-86)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.2+8-LTS-86, mixed mode, sharing)

When I try to run the jar file for v1.4.1, I get errors associated with the program not being able to find the JAXB library. If I understand correctly, this library was moved out of JAVA SE to JAVA EE and is therefore no longer visible. A sample of the dump below:

Exception in thread "main" java.lang.ExceptionInInitializerError
at com.opendoorlogistics.studio.scripts.list.ScriptsTree.setFiles(ScriptsTree.java:326)
at com.opendoorlogistics.studio.scripts.list.ScriptsTree.(ScriptsTree.java:221)
at com.opendoorlogistics.studio.scripts.list.ScriptsPanel.(ScriptsPanel.java:149)
at com.opendoorlogistics.studio.appframe.AppFrame.(AppFrame.java:214)
at com.opendoorlogistics.studio.appframe.AppFrame.(AppFrame.java:179)
at com.opendoorlogistics.studio.appframe.AppFrame.main(AppFrame.java:123)
Caused by: java.lang.RuntimeException: java.lang.NoClassDefFoundError: javax/xml/bind/JAXBContext
at com.opendoorlogistics.core.scripts.io.ScriptIO.(ScriptIO.java:73)
at com.opendoorlogistics.core.scripts.io.ScriptIO.(ScriptIO.java:78)
at com.opendoorlogistics.core.scripts.io.ScriptIO.(ScriptIO.java:50)
... 6 more
Caused by: java.lang.NoClassDefFoundError: javax/xml/bind/JAXBContext
at com.opendoorlogistics.core.scripts.io.ScriptIO.(ScriptIO.java:70)
... 8 more
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBContext
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
... 9 more

I suppose I need to revert back to JAVA SE 10 for now if that is possible. However, this seems like something that should be updated in ODL Studio. I don't really have the chops to do this!

Vehicle Routing script type disappeared and those scripts are no longer recognized

Philip, I had something happen on a Linux install of ODL where the Vehicle Routing type disappeared. If I try to load a vehicle routing script it says "The format of this script is incorrect and it cannot be loaded". It's no longer listed in the Create Script menu, either. I'm guessing that something got corrupted related to that script type.

I tried deleting the entire ODL folder and unzipping it from a fresh download, and uninstalling and reinstalling Java (I'm using openjdk-8). This is on Ubuntu 20.04 LTS. These scripts still work fine from another computer running Windows, so it's not an issue with the scripts themselves.

Is there somewhere that a configuration or cache for either ODL or Java is being stored that I could purge to fix this issue?

ODL

Make Graphhopper memory settings available

Graphhopper has different settings which control its memory usage. Using ODL Studio with a very large road network graph (2GB+) gives an out-of-memory exception even on a 64 bit machine. We need to expose the different graphhopper memory settings through ODL Studio so we can set it to use less memory (e.g. the mobile configuration) for larger road network files.

Unable to setValue of an image of Routes Table while Report generation

I am trying to generate report from Studio by setting custom image in place of OSM Map of report

I have written below code in 'SubReportsWithProviderBuilder.java'

BufferedImage img = ImageIO.read(new URL(staticMapString));
ds.getTableAt(1).setValueAt(img,0,4); // table(1) is Routes table and 4th column is Image

But the image is not getting updated and when I run ds.getTableAt(1).setValueAt(img,0,4) as evaluate expression, the result is undefined

distance matrix file helper generator ?

Hello ,

can i ask if you have or any plan to have a tool to generate distance matrix file from google maps direct?

-for example provide a google map key to odl and it generate required distance matrix
-or just export list of lat and lng its required to fill distance matrix so developers fill it automatically using api
-or can you tell me the optimal way to extract distance matrix points so i can fill the distance and time for them ?

is it distance between each vehicle and each points ? and distance between all points each others ?

Long distance routes, error with empty "end-time" field

Hi everyone!

Please help me to solve this issue: when I work with many days duration routes, I don't set "end-time" (or "start-time") in VehicleTypes and get error message (for example):

"Invalid time window record in table VehicleTypes on row 3, either start time or end time is empty but not both.
Component com.opendoorlogistics.components.jsprit threw an exception.
Could not complete operation "myexample.odlx".
Execution of the operation failed."

But when I clear "end-time" and "start-time", the system works and outputs results on the assumption of "start-time" is 0:00.

Previously thanks for explanation, how use ODL Studio for long distance routes (more then one day).

Regards,
Alex.

Turn on jsprit fixed vehicle costs in insertion phase

If you deal with a heterogenous fleet as described here: https://github.com/jsprit/jsprit/wiki/Heterogeneous-Fleet and you activate the fixed costs option like this:
https://github.com/jsprit/jsprit/blob/master/jsprit-examples/input/algorithmConfig_considerFixedCosts.xml

fixed costs will be considered when inserting a customer (as described following the link above). Otherwise, fixed costs are not considered during insertion. However, they are considered in the objective function thus solutions tend to have less vehicles.

Replace filterInvalidJobs with jsprit unassigned jobs list

Upgrade to the latest version of jsprit so we can remove the method com.opendoorlogistics.components.jsprit.VRPComponent.filterInvalidJobs and instead use the unassigned jobs list. This method previously filtered bad jobs before running jsprit.

using time windows for daily shifts over month ?

Hello , can i use opendoorlogistics for the following case ?

  1. i have xxxxxx number of poi each one have custom stop time for example 10 minutes
  2. i have xx numbers of cars that work daily from 9 to 5
  3. i need to plan cars visit for all this poi as each poi have only 1 car visit
  4. this amount of poi have to be visited durting time window , that is 1 month

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.