Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
Introduction to Planning
- Understanding OptaPlanner
- Defining a Planning Problem
- Use Cases and Practical Examples
Case Study: Bin Packing Problem
- Problem Statement
- Problem Scale
- Domain Model Diagram
- Main Execution Method
- Solver Configuration
- Implementing the Domain Model
- Configuring the Score
Case Study: Travelling Salesman Problem (TSP)
- Problem Statement
- Problem Scale
- Domain Model
- Main Execution Method
- Chaining Techniques
- Solver Configuration
- Implementing the Domain Model
- Configuring the Score
Configuring the Planner
- Overview
- Solver Configuration
- Modelling Your Planning Problem
- Utilising the Solver
Score Calculation
- Score Terminology
- Selecting a Score Definition
- Calculating the Score
- Performance Optimisation for Score Calculation
- Reusing Score Calculation Outside the Solver
Optimization Algorithms
- Real-World Search Space Size
- Does Planner Guarantee an Optimal Solution?
- Architecture Overview
- Overview of Optimization Algorithms
- Choosing the Right Optimization Algorithm
- SolverPhase
- Scope Overview
- Termination Criteria
- SolverEventListener
- Custom SolverPhase
Selecting Moves and Neighbourhoods
- Introduction to Moves and Neighbourhoods
- Generic Move Selectors
- Combining Multiple MoveSelectors
- EntitySelector
- ValueSelector
- General Selector Features
- Custom Moves
Construction Heuristics
- First Fit
- Best Fit
- Advanced Greedy Fit
- Lowest Cost Insertion
- Regret Insertion
Local Search
- Local Search Concepts
- Hill Climbing (Simple Local Search)
- Tabu Search
- Simulated Annealing
- Late Acceptance
- Step Counting Hill Climbing
- Late Simulated Annealing (Experimental)
- Utilising Custom Termination, MoveSelector, EntitySelector, ValueSelector, or Acceptor
Evolutionary Algorithms
- Evolutionary Strategies
- Genetic Algorithms
Hyperheuristics
Exact Methods
- Brute Force
- Depth-First Search
Benchmarking and Tuning
- Finding the Optimal Solver Configuration
- Conducting a Benchmark
- Benchmark Report
- Summary Statistics
- Statistics per Dataset (Graph and CSV)
- Advanced Benchmarking Techniques
Repeated Planning
- Introduction to Repeated Planning
- Backup Planning
- Continuous Planning (Windowed Planning)
- Real-Time Planning (Event-Based Planning)
Drools
- Brief Introduction to Drools
- Writing Score Functions in Drools
Integration
- Overview
- Persistent Storage
- SOA and ESB
- Other Environments
21 Hours
Testimonials (1)
The training definitely backfilled some of the gaps in my knowledge left by reading the OptaPlanner userguide. It gave me a good broad understanding of how to approach using OptaPlanner in our projects going forward.