The freshly born JuliaConstraints GitHub organization provides a combination of packages around the theme of Constraint Programming and Combinatorial Optimization.
This talk introduces the whole ecosystem of JuliaConstraints packages and its main dependencies. It focuses on the LocalSearchSolvers.jl framework (and CBLS.jl, its interface with JuMP) for Constraint-Based Local Search. We also cover the utility packages that we hope to share with the Julia and Constraint Programming communities.
For more info on the Julia Programming Language, follow us on Twitter: https://twitter.com/JuliaLanguage and consider sponsoring us on GitHub: https://github.com/sponsors/JuliaLang
Contents
00:00 Welcome!
01:15 What is Constraint Programming (CP)?
01:55 Formal definition of model
02:18 Canonical example of PC: AllDifferent constraint (as in the sudoku game)
03:08 Overview of CP Julia ecosystem
04:11 ConstraintSolver.jl, the first CP solver in pure Julia
04:55 Example 1: solving sudoku with JuMP and ConstraintSolver.jl
06:20 CPLEXCP.jl: Julia interface to commercial CPLEX CP optimizer
07:07 SeaPearl.jl: Constraint Programming solver that can use Reinforcement Learning
07:21 Example 2: Solving n-Queens problem
08:53 Backtracking solvers vs Constraint-Based Local Search (CBLS)
10:00 LocalSearchSolvers.jl: Constraint-Based Local Search framework
10:50 ConstraintDomains.jl: package for defining continuous and discrete domains
11:47 Example 3: Magic square
12:51 Constraints.jl and CompositionalNetworks.jl
14:40 Example 5: Golomb ruler
17:03 Functionality of Constraints.jl
17:19 COPInstances.jl
18:00 Overview of LocalSearchSolvers.jl
18:47 Why making parallel LocalSearchSolvers.jl was so easy?
20:24 Problems with Garbage Collector in parallel computing
22:03 Acknowledgments
22:58 Thoughts on the future of Constraint Programming in Julia
23:42 Closing information
S/O to https://github.com/KZiemian for the video timestamps!
Want to help add timestamps to our YouTube videos to help with discoverability? Find out more here: https://github.com/JuliaCommunity/YouTubeVideoTimestamps
Interested in improving the auto generated captions? Get involved here: https://github.com/JuliaCommunity/YouTubeVideoSubtitles
1 Comments