Geoffrey's OptaPlanner channel
Geoffrey's OptaPlanner channel
  • 40
  • 278 640
The Vehicle Routing Problem with OptaPlanner
Twitter: GeoffreyDeSmet
LinkedIn: www.linkedin.com/in/ge0ffrey/
Learn more about OptaPlanner: www.optaplanner.org/
Get the source code: github.com/kiegroup/optaplanner-quickstarts
zhlédnutí: 4 829

Video

Host your OptaPlanner app on OpenShift (Kubernetes)
zhlédnutí 1,4KPřed 2 lety
Twitter: GeoffreyDeSmet LinkedIn: www.linkedin.com/in/ge0ffrey/ Get the source code: github.com/kiegroup/optaplanner-quickstarts OpenShift: openshift.com Host an OptaPlanner application in the cloud, in container pods, on OpenShift, a open source container platform built on Kubernetes. 00:00 Intro 00:20 Quickstarts overview 01:44 Start an OpenShift Sandbox 02:12 Add a deployment 03:...
OptaPlanner - A fast, easy-to-use, open source AI constraint solver for software developers
zhlédnutí 8KPřed 2 lety
Learn more: www.optaplanner.org/ OptaPlanner optimizes plans and schedules with hard constraints and soft constraints. It reduces costs substantially, improves service quality, fulfills employee wishes and lowers carbon emissions, using Artificial Intelligence algorithms. 0:00 Introduction 0:41 Vehicle Routing Problem (VRP) 1:17 Employee rostering 1:46 Maintenance scheduling 2:07 School timetab...
Order picking planning with OptaPlanner
zhlédnutí 2,3KPřed 2 lety
Learn more about OptaPlanner: www.optaplanner.org/ Get the source code: github.com/kiegroup/optaplanner-quickstarts How to solve order picking problem? Generate an optimal picking plan for completing a set of orders. This video shows how to use OptaPlanner Order picking quick start to assign products to trolleys, if you need to pick up multiple orders simultaneously and minimize the distance co...
Maintenance scheduling and inspection planning with OptaPlanner
zhlédnutí 2,2KPřed 2 lety
My twitter: GeoffreyDeSmet Learn more about OptaPlanner: www.optaplanner.org/ Get the source code: github.com/kiegroup/optaplanner-quickstarts Assign crews to maintenance jobs for roads, railroads, electricity grids, buildings, vehicles, airplanes, elevators or any other types of machinery. Or assign inspectors to inspection jobs for bridges or schools. 00:00:00 Introduction 00:00:3...
School timetable optimization with OptaPlanner
zhlédnutí 3,9KPřed 2 lety
My twitter: GeoffreyDeSmet Learn more about OptaPlanner: www.optaplanner.org/ Source code: github.com/kiegroup/optaplanner-quickstarts Assign lessons to timeslots and rooms to create the optimal schedule for teachers (compact roster without gaps, room stability) and students (subject variety). 00:00:00 Introduction 00:00:13 Problem 00:01:05 Demo 00:01:49 Hard constraints 00:02:28 So...
Schedule incoming calls real-time
zhlédnutí 1KPřed 2 lety
Learn more about OptaPlanner: www.optaplanner.org/ Get the source code: github.com/kiegroup/optaplanner-quickstarts
User friendly vaccination appointment scheduling
zhlédnutí 528Před 3 lety
My twitter: GeoffreyDeSmet Learn more about OptaPlanner: www.optaplanner.org/ Get the source code: github.com/kiegroup/optaplanner-quickstarts
Rental car maintenance scheduling optimization with OptaPlanner
zhlédnutí 1,4KPřed 3 lety
Learn more about OptaPlanner: www.optaplanner.org/ Get the source code: github.com/kiegroup/optaplanner-quickstarts
Vaccination appointment scheduling optimization with OptaPlanner
zhlédnutí 3,8KPřed 3 lety
My twitter: GeoffreyDeSmet Get the source code: github.com/kiegroup/optaplanner-quickstarts Learn more about OptaPlanner: www.optaplanner.org/ Article: www.optaplanner.org/blog/2021/03/04/OptimizingCovid19VaccinationScheduling.html 00:00 Introduction 00:27 Goals and techniques 06:18 Implementation 08:39 Demo: 2nd shot same vaccine type 10:10 Demo: 2nd shot on ideal date and assign a...
Getting started with OptaPlanner Quickstarts
zhlédnutí 4,6KPřed 3 lety
My twitter: GeoffreyDeSmet Learn more about OptaPlanner: www.optaplanner.org/ Get the source code: github.com/kiegroup/optaplanner-quickstarts
Artificial Intelligence in Kotlin: code school timetabling from scratch with OptaPlanner and Quarkus
zhlédnutí 5KPřed 3 lety
My twitter: GeoffreyDeSmet Get the source code: github.com/kiegroup/optaplanner-quickstarts Learn more about OptaPlanner: www.optaplanner.org/ 0:00:00 Introduction 0:05:50 Build and dependencies 0:11:20 REST 0:13:56 Domain 0:21:00 Database 0:33:58 UI 0:37:55 Solve with OptaPlanner 0:53:33 AI constraints
Artificial Intelligence in Java: how to write a Quarkus app with OptaPlanner from scratch
zhlédnutí 23KPřed 4 lety
Twitter: GeoffreyDeSmet LinkedIn: www.linkedin.com/in/ge0ffrey/ Guide: quarkus.io/guides/optaplanner OptaPlanner homepage: www.optaplanner.org Shows how to program a REST application that optimizes a school timetable according to hard and soft constraints with constraint solving Artificial Intelligence algorithms (such as metaheuristics, local search and construction heuristics). It...
Routing 2 mechanics with OptaPlanner for Red Hat Summit 2019 keynote
zhlédnutí 3,2KPřed 5 lety
My twitter: GeoffreyDeSmet For more information, go to www.optaplanner.org For more about Vehicle Routing, see www.optaplanner.org/learn/useCases/vehicleRoutingProblem.html
Conference Scheduling Devoxx and Voxxed with OptaPlanner
zhlédnutí 1,3KPřed 5 lety
My twitter: GeoffreyDeSmet Use OptaPlanner to connect to the devoxx-cfp REST api and assign each talk to a room and timeslot taking into constraints such as speaker availability. For more information go to www.optaplanner.org/learn/useCases/conferenceScheduling.html
OptaWeb Employee Rostering with OptaPlanner (java, open source)
zhlédnutí 17KPřed 5 lety
OptaWeb Employee Rostering with OptaPlanner (java, open source)
Quick update on the OptaShift employee rostering work
zhlédnutí 1,2KPřed 6 lety
Quick update on the OptaShift employee rostering work
Conference talk scheduling with OptaPlanner
zhlédnutí 5KPřed 6 lety
Conference talk scheduling with OptaPlanner
Employee Shift Rostering in the cloud: OptaPlanner on OpenShift
zhlédnutí 19KPřed 7 lety
Employee Shift Rostering in the cloud: OptaPlanner on OpenShift
Hospital Bed Planning with OptaPlanner
zhlédnutí 4,7KPřed 7 lety
Hospital Bed Planning with OptaPlanner
Task assigning for skills, affinity and priority with OptaPlanner
zhlédnutí 11KPřed 8 lety
Task assigning for skills, affinity and priority with OptaPlanner
Optaplanner Workbench And Execution Server: Cloud Optimization (OptaCloud example)
zhlédnutí 4,1KPřed 8 lety
Optaplanner Workbench And Execution Server: Cloud Optimization (OptaCloud example)
Meeting scheduling with OptaPlanner
zhlédnutí 4,4KPřed 8 lety
Meeting scheduling with OptaPlanner
Sneak peek OptaPlanner Workbench
zhlédnutí 3KPřed 8 lety
Sneak peek OptaPlanner Workbench
Investment Portfolio Optimization
zhlédnutí 4,7KPřed 8 lety
Investment Portfolio Optimization
Cheap time scheduling to reduce electricity power costs
zhlédnutí 2,5KPřed 9 lety
Cheap time scheduling to reduce electricity power costs
Benchmarking constraint satisfaction problems with the OptaPlanner Benchmarker
zhlédnutí 3KPřed 9 lety
Benchmarking constraint satisfaction problems with the OptaPlanner Benchmarker
Exam timetabling with OptaPlanner
zhlédnutí 4,2KPřed 10 lety
Exam timetabling with OptaPlanner
Optimal Dinner Party Seating with OptaPlanner
zhlédnutí 3KPřed 10 lety
Optimal Dinner Party Seating with OptaPlanner
Decision tables in OptaPlanner
zhlédnutí 3,5KPřed 10 lety
Decision tables in OptaPlanner

Komentáře

  • @salogo9228
    @salogo9228 Před měsícem

    Very good

  • @marcushuziwara3497
    @marcushuziwara3497 Před 2 měsíci

    Hi, do you know how to dynamically define the score type of a penalty in the constraints of the solver?

    • @GeoffreyDeSmet
      @GeoffreyDeSmet Před 2 měsíci

      Yes, see ConstraintConfiguration in the OptaPlanner/Timefold docs.

  • @user-gb1kw2so1z
    @user-gb1kw2so1z Před 5 měsíci

    i loved it!

  • @timon5851
    @timon5851 Před 6 měsíci

    awesome stuff!

  • @user-uz3fs5dv2b
    @user-uz3fs5dv2b Před 7 měsíci

    can I use Opta for free?

  • @plazmax
    @plazmax Před 8 měsíci

    Hi, is there any updated docker verison of optaplanner ?

  • @Uhoh9876
    @Uhoh9876 Před 8 měsíci

    literally cant even get it to open, whats the point

  • @olegkokhanchyk8369
    @olegkokhanchyk8369 Před 10 měsíci

    @GeoffreyDeSmet can you pls advise if, OptaPlanner is good for solving a problem for EV drivers. I need to plan a route from A to D, and stop on B,C or only B because B is fast-charging. something like that.

    • @GeoffreyDeSmet
      @GeoffreyDeSmet Před 10 měsíci

      Timefold (= OptaPlanner++) is often used for that kind of cases. Model wise you let it decided the route without recharging, and force "just in time automatic nearest recharging" through a shadow variable. Basically if I can get from start to Z to A without recharging, fine. If I can't get to D any more without recharging, automatically active the shadow var on D to state that it will first recharge at the nearest recharger (B).

  • @fuccboii007
    @fuccboii007 Před 10 měsíci

    I haven't seen such poor documentation. Man, I am practically figuring out everything on my own. You might wanna make things a bit easy for those who are just getting into it.

    • @GeoffreyDeSmet
      @GeoffreyDeSmet Před 10 měsíci

      What are you missing in the document? Also take a look at the timefold-quickstarts repo, directory use-cases/vehicle-routing-time-windows etc

  • @viniciusedson5826
    @viniciusedson5826 Před rokem

    Hi. Would you tell me how to edit the source code for Vehicle Routing? I mean, the exact archive. I'm trying to change the map and edit the nodes but I can't seem to find the right code to edit. Is there a way of editing on the web version? I get to open it at the host but I can't edit that.

  • @aishwaryaomar6741
    @aishwaryaomar6741 Před rokem

    How to run this? For me it's opening on browser(local host), but I can't edit nodes like you can do in real time. How to download it locally? and where to access code? Is optaPlanner supports CVRPR(capacitated vehicle routing problem with revisits)?

    • @GeoffreyDeSmet
      @GeoffreyDeSmet Před rokem

      If you run it from source, you can edit the source code. In Timefold quickstarts we're making this easier by providing curl commands to send the json dataset to the VRP rest API. Revists are possible, but you'll currently have to add that revisit constrain yourself.

  • @nachhilfehvm
    @nachhilfehvm Před rokem

    "the sky is the limit with those constraints right?" haha thats a perfect sentence. "You can limit yourself unlimitedly!"

  • @JC-rb1nc
    @JC-rb1nc Před rokem

    Does it do project task scheduling optimization?

  • @JC-rb1nc
    @JC-rb1nc Před rokem

    hi, has this progressed in the last 10 years? is it more efficient/faster? also, is there documentation so we can see how we can do the same exercise/test?

  • @borisedu260367
    @borisedu260367 Před rokem

    Good evening, I would like you to help me generate a jar with the Optaplanner project

  • @MrHefist
    @MrHefist Před rokem

    What's the difference between Optaplanner and OptyPy?

  • @JJ-gp1mk
    @JJ-gp1mk Před rokem

    How can you optimise for bicycle, does it support other graphhopper profiles?

    • @GeoffreyDeSmet
      @GeoffreyDeSmet Před rokem

      In optaweb-vehilce-routing, it's a matter of fetching the travelDuration matrix (or distance matrix) on basis of a bicycle instead of a car.

  • @vijayalakshmiselvaranga6714

    constraint for some subject needs to teach continuously for same stusent group at same room ? can you help me for that?

  • @vandersondiniz1345
    @vandersondiniz1345 Před rokem

    How do i use optaplanner with the map of Brazil? For me, the South America option does not appear.

    • @GeoffreyOptaPlanner
      @GeoffreyOptaPlanner Před rokem

      In optaweb-vehicle-routing demo application, run runLocally.sh --help to see info on how to select your geographical region.

  • @filakabamba9584
    @filakabamba9584 Před rokem

    How can I do the following : Please help asap *1.* Make an Artificial Neural Network with dynamic input and binary out .... *2.* Make a Self Organizing Maps with dynamic input and binary out ....

  • @cyberbiscottato
    @cyberbiscottato Před 2 lety

    Hi! I'd like to try it but I'm a complete newbie. I managed to run optaplanner since there's a .bat file that my windows PC can run, but i really do not understand how to execute this employee rostering application. Is there any guide about it? Thank you so much!

  • @aparfeno
    @aparfeno Před 2 lety

    Please use 1080p resolution. Very hard to read small text @ 480

  • @isimlikullanc2638
    @isimlikullanc2638 Před 2 lety

    Hi geoffrey, why the software is browser based? I mean it would be easier for everyone to install and use if it had a GUI.

  • @minhvuongluu7644
    @minhvuongluu7644 Před 2 lety

    I'm very new to Opta Planner, and find it very interesting, I would like to learn how to customise this application, where would suggest me to start with ?

    • @GeoffreyOptaPlanner
      @GeoffreyOptaPlanner Před 2 lety

      There's are good getting started guides on the OptaPlanner website: click on the big blue button there. There are also getting started videos in this youtube channel.

  • @minhvuongluu7644
    @minhvuongluu7644 Před 2 lety

    How can I customize the VRP to a territory optimizer

    • @GeoffreyOptaPlanner
      @GeoffreyOptaPlanner Před 2 lety

      In the optaplanner-quickstarts repo, take a look at the facility-location (see also the video on this youtube channel) and vehicle-routing quickstarts. You'll need to tweak the constraints depending on your needs. For example, you could add a soft constraint that penalizes the distance between every pair of assignments in the same territory. For questions/discussions on that, open a thread on Stackoverflow or our forum: www.optaplanner.org/community/getHelp.html

  • @magick93
    @magick93 Před 2 lety

    How can I use optaplanner to generate a DMN decision table?

    • @GeoffreyOptaPlanner
      @GeoffreyOptaPlanner Před 2 lety

      OptaPlanner doesn't consume DMN. Our sibling project, Drools (drools.org) does support DMN decision tables. Give it a try! As for generating DMN with OptaPlanner, it depends. It could be a good fit. Please open a discussion on OptaPlanner's forum (optaplanner.org -> Get Help).

    • @magick93
      @magick93 Před 2 lety

      @@GeoffreyOptaPlanner thanks. I should have been clearer. I'm familiar with Drools. It would be good see Optaplanner used to optimise the settings used in a DMN decision table.

    • @GeoffreyOptaPlanner
      @GeoffreyOptaPlanner Před 2 lety

      @@magick93 That could be a good fit indeed - please open a thread on Stackoverflow or our forum: www.optaplanner.org/community/getHelp.html

  • @albertchen9199
    @albertchen9199 Před 2 lety

    勉强看完,大概懂意思了,还得结合文档和代码看一下。谢谢你这个视频教程

  • @jmcrowley
    @jmcrowley Před 2 lety

    Thank you, Geoffrey, for another super video. Very informative and clear.

  • @mike.nussbaumer
    @mike.nussbaumer Před 2 lety

    Thanks for this awesome video! :)

  • @vikingofengland
    @vikingofengland Před 2 lety

    Excellent tutorial, many thanks.

  • @lawalhayde3933
    @lawalhayde3933 Před 3 lety

    Good day sir. Great video!. I was practicing along with the video but you imported some files at the 35th minute, so I'm stuck and can't continue. Do you mind sharing the UI folder or the files in the folder so I can finish this tutorial? Thank you in advance

    • @lawalhayde3933
      @lawalhayde3933 Před 3 lety

      @@geoffreydesmet1043 Thank you sir. I'm done with the project and it's working fine 😎

  • @chuyendoiso2041
    @chuyendoiso2041 Před 3 lety

    Can you share the code with me : sochuyendoi@gmail.com

  • @lovedeepsangha4818
    @lovedeepsangha4818 Před 3 lety

    Hi Geoffrey if i have to pass the drl file instead of. constraint provider then what i have to do in solver manager

    • @GeoffreyDeSmet
      @GeoffreyDeSmet Před 3 lety

      Please open a StackOverflow question: www.optaplanner.org/community/getHelp.html - Look at SolverManager.create().

    • @lovedeepsangha4818
      @lovedeepsangha4818 Před 3 lety

      @@GeoffreyDeSmet okk sure thanks for replying really loved your session

  • @GeoffreyDeSmet
    @GeoffreyDeSmet Před 3 lety

    For those of you who wonder about scaling: for 8.3.0, we can schedule 200 000 new injections (without partitioning the dataset) in less than an hour. With partitioning, it will takes less time, but solution quality probably suffers as a result.

  • @diegonayalazo
    @diegonayalazo Před 3 lety

    Thanks Geoffrey

  • @simonelibera2629
    @simonelibera2629 Před 3 lety

    Nice set of examples! Thank you!

  • @wchua043
    @wchua043 Před 3 lety

    Great video

  • @pinumpatel
    @pinumpatel Před 3 lety

    I am looking for an optaplanner in India. If you have any references please share with me.

  • @nettogrowthpartners9567

    Hi Geoffrey! Thanks for the tutorial. I tried to open de project in Netbeans but it says [unloadable] would you throw me a piece of advice on that? Thanks in advance!

    • @GeoffreyDeSmet
      @GeoffreyDeSmet Před 3 lety

      Does "mvn clean install" work?

    • @nettogrowthpartners9567
      @nettogrowthpartners9567 Před 3 lety

      @@GeoffreyDeSmet Hi Geoffrey thank you for your response. Finally a managed to install it. The problem was on me lack of expertise side. The problem I have now is that the generated project with Quarkus I made has some different dependencies from the one you generated for the tutorial. So I'm stack.

    • @GeoffreyDeSmet
      @GeoffreyDeSmet Před 3 lety

      @@nettogrowthpartners9567 The dependencies changed from io.quarkus:quarkus-optaplanner to org.optaplanner:optaplanner-quarkus Follow the guide here: quarkus.io/guides/optaplanner Or the source code here: github.com/kiegroup/optaplanner-quickstarts

    • @nettogrowthpartners9567
      @nettogrowthpartners9567 Před 3 lety

      @@GeoffreyDeSmet Thanks a lot Geoffrey!

  • @diegonayalazo
    @diegonayalazo Před 3 lety

    Thanks Geoffrey.

  • @diegonayalazo
    @diegonayalazo Před 3 lety

    Thanks Geoffrey

  • @idev247
    @idev247 Před 3 lety

    Would there be a way to have a similar situation however with lessons of variable length? In that case I couldn't really pre-populate the timetable since the length of class could vary. Also number of days doesn't really matter but maybe would have a soft constraint of ideal date such as "it should be done in this week however if it can't it could be pushed to the previous or next week". Any idea of how that could be done?

    • @idev247
      @idev247 Před 3 lety

      Then I guess there's situations where one lesson date and time might already be locked in for some reason... would this solution work in that situation?

    • @GeoffreyDeSmet
      @GeoffreyDeSmet Před 3 lety

      @@idev247 We call this locking down "pinning". It's very easy to do in OptaPlanner, just add a boolean field with an @PlanningPin annotation on the Lesson class. If it's true, optaplanner will not reassign that lesson instance to another room or timeslot - but it will of course take it into account for the constraints.

    • @GeoffreyDeSmet
      @GeoffreyDeSmet Před 3 lety

      For lessons of variable lenght, you need to adjust the model. In the conference scheduling example the talks are of variable length (for example labs take 2 hours, but normal sessions 1 hour), but because both talk types have their own set of timeslots, it hardly impacts the model. In what you're describing, that's different: that's the "time grain design pattern": see docs and the meeting scheduling example.

    • @idev247
      @idev247 Před 3 lety

      @@GeoffreyDeSmet Thanks getting back to me Goeffrey! Will look at the docs for "time grain design pattern"/meeting schedule example

  • @hediabed6109
    @hediabed6109 Před 3 lety

    Thank you for this great demonstration tutorial.

  • @jamilxt
    @jamilxt Před 3 lety

    Sound volume is very low. :(

  • @diegonayalazo
    @diegonayalazo Před 3 lety

    Thanks Geoffrey.!

  • @techtalks4506
    @techtalks4506 Před 3 lety

    Hello Geoffey, I am trying to add a new tenant using REST API (/rest/tenant/add Add a new tenant). But keep on getting "400 Undocumented error". I am able to use other methods. Any help will be highly appreciated. ------------------------------------------------------- connection: close content-length: 0 date: Fri, 31 Jul 2020 12:29:26 GMT vary: Origin, Access-Control-Request-Method, Access-Control-Request-Headers

  • @techtalks4506
    @techtalks4506 Před 3 lety

    Somehow unable to find documentation of parameters REST APIs. I am able to configure Swagger APIs on localhost:8080/swagger-ui.html

    • @techtalks4506
      @techtalks4506 Před 3 lety

      For example unable to add a new parameter even though the input format is given. Is there a document which gives example calls or give details of parameters that are mandatory - { "draftLength": 0, "firstDraftDate": "string", "id": 0, "lastHistoricDate": "string", "publishLength": 0, "publishNotice": 0, "rotationLength": 0, "tenant": { "id": 0, "name": "string", "version": 0 }, "tenantId": 0, "timeZone": { "id": "string", "rules": { "fixedOffset": true, "transitionRules": [ { "dayOfMonthIndicator": 0, "dayOfWeek": "MONDAY", "localTime": { "hour": 0, "minute": 0, "nano": 0, "second": 0 }, "midnightEndOfDay": true, "month": "JANUARY", "offsetAfter": { "id": "string", "totalSeconds": 0 }, "offsetBefore": { "id": "string", "totalSeconds": 0 }, "standardOffset": { "id": "string", "totalSeconds": 0 }, "timeDefinition": "UTC" } ], "transitions": [ { "dateTimeAfter": "2020-07-29T18:40:19.295Z", "dateTimeBefore": "2020-07-29T18:40:19.295Z", "duration": { "nano": 0, "negative": true, "seconds": 0, "units": [ { "dateBased": true, "durationEstimated": true, "timeBased": true } ], "zero": true }, "gap": true, "instant": "2020-07-29T18:40:19.295Z", "offsetAfter": { "id": "string", "totalSeconds": 0 }, "offsetBefore": { "id": "string", "totalSeconds": 0 }, "overlap": true } ] } }, "unplannedRotationOffset": 0, "version": 0 }ble to add a new tenant even

  • @adityabothra6678
    @adityabothra6678 Před 3 lety

    how do you calculate expected return percentage?

  • @GustavoRPS
    @GustavoRPS Před 4 lety

    Great example! Thanks for sharing! Can you help with the source code? I can't find the patientAdmissionScheduleSolverConfig.xml

    • @GustavoRPS
      @GustavoRPS Před 4 lety

      Thank you very much @@GeoffreyOptaPlanner ! Funny that in the repository search does not match file titles. github.com/kiegroup/optaplanner/search?q=patientAdmissionScheduleSolverConfig&type=Code

  • @PietervandenHombergh
    @PietervandenHombergh Před 4 lety

    thank you a lot, very interesting.