Skip to content

Generic implementations of learning algorithms for decision-focused learning pipelines.

License

Notifications You must be signed in to change notification settings

JuliaDecisionFocusedLearning/DecisionFocusedLearningAlgorithms.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DecisionFocusedLearningAlgorithms

Stable Dev Build Status Coverage Code Style: Blue Aqua

Warning

This package is currently under active development. The API may change in future releases. Please refer to the documentation for the latest updates.

Overview

This package provides a unified interface for training decision-focused learning algorithms that combine machine learning with combinatorial optimization. It implements several state-of-the-art algorithms for learning to predict parameters of optimization problems.

Key Features

  • Unified Interface: Consistent API across all algorithms via train_policy!
  • Policy-Centric Design: DFLPolicy encapsulates statistical models and optimizers
  • Flexible Metrics: Track custom metrics during training
  • Benchmark Integration: Seamless integration with DecisionFocusedLearningBenchmarks.jl

Quick Start

using DecisionFocusedLearningAlgorithms
using DecisionFocusedLearningBenchmarks

# Create a policy
benchmark = ArgmaxBenchmark()
model = generate_statistical_model(benchmark)
maximizer = generate_maximizer(benchmark)
policy = DFLPolicy(model, maximizer)

# Train with FYL algorithm
algorithm = PerturbedFenchelYoungLossImitation()
result = train_policy(algorithm, benchmark; epochs=50)

See the documentation for more details.

Available Algorithms

  • Perturbed Fenchel-Young Loss Imitation: Differentiable imitation learning with perturbed optimization
  • AnticipativeImitation: Imitation of anticipative solutions for dynamic problems
  • DAgger: DAgger algorithm for dynamic problems

About

Generic implementations of learning algorithms for decision-focused learning pipelines.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages