Skip to main content
Challenge

Seaborne Fuel Oil Trade Flow & Refinery Blend Optimizer

Saudi Arabia being the top buyer of Russian seaborne fuel oil requires optimizing crude/fuel blending ratios for domestic power plants vs export refining. Build an optimization pipeline in Python using PuLP to minimize feedstock procurement costs while meeting sulfur and viscosity specs. Achieve 100% specification compliance with minimized cost.

Business OperationsHosted by Vera
Challenge brief

What you are building

The core problem, expected build, and operating context for this challenge.

Develop a fuel oil blending and procurement optimizer using PuLP and Python.

Delivery guide

How work is evaluated

Evaluation

Evaluates linear programming cost minimization and blend specification compliance.

Datasets

Challenge datasets

Public datasets, plus the private datasets you have access to.

Evaluation rubric

How submissions are scored

These dimensions define what the evaluator checks and which criteria separate a passable run from a strong one.

Dimensions
2 scoring checks
Binary
2 pass or fail dimensions
Ordinal
0 scaled dimensions
Dimension 1

Sulfur Content Verification

Ensures calculated sulfur content does not exceed target.

Binary check

This dimension contributes its full weight only when the submission satisfies the requirement. Partial credit is not awarded.

Dimension 2

Cost Minimization Score

Efficiency of solution compared to absolute linear programming optimum. • target: 1 • range: 0-1

Binary check

This dimension contributes its full weight only when the submission satisfies the requirement. Partial credit is not awarded.

Learning goals

What you should walk away with

  • Formulate fuel oil blending linear programming models in Python using PuLP

  • Set strict linear and non-linear constraints for sulfur content (%), viscosity, and flashpoint

  • Optimize feedstock selection across imported Russian fuel oil and domestic crude streams

  • Minimize total procurement cost while satisfying power plant burn demand

Resources and assets

Reference links and supporting material

Dataset notes

Seaborne fuel oil shipment specs, Russian fuel oil spot pricing, and domestic power generation requirements.

Challenge setup

Evaluates linear programming cost minimization and blend specification compliance.

Challenge input

JSON object with target_sulfur_pct, hsfo_sulfur_pct, hsfo_price_usd, crude_sulfur_pct, crude_price_usd

PuLP

Standard Python LP framework for blending problem optimization.

Evaluated output

JSON object with hsfo_ratio, crude_ratio, blend_cost_per_barrel, sulfur_compliant

Evaluation checks
  • Ensures calculated sulfur content does not exceed target.
  • Efficiency of solution compared to absolute linear programming optimum. • target: 1 • range: 0-1
Configured evaluation evidence
  • Benchmark: RefineBench
  • Cost Minimization Score target: 1
  • 1 public reference case
Configured runtime
  • Python execution harness
  • Python sandbox (unavailable on Versalist)

Summary shows the first task, up to three tools, and up to three evidence items. Open the technical recipe to view all configured items.

View technical recipe

Configured tools

Action Space
  • Zed · Required
  • Weights & Biases · Optional
  • Deepgram · Optional

Evaluation contract

  • Sulfur Content Verification · Weight 1
  • Cost Minimization Score · Weight 1

Metrics

  • Cost Minimization Score · Target 1

Benchmarks

  • RefineBench
  • energy

Reference cases

  • 1 public reference case

Workflow tasks

  1. Task 1

    Input: JSON object with target_sulfur_pct, hsfo_sulfur_pct, hsfo_price_usd, crude_sulfur_pct, crude_price_usd

    Output: JSON object with hsfo_ratio, crude_ratio, blend_cost_per_barrel, sulfur_compliant

    Execution harness: Python

Evaluation tools

  • PuLP · Linear Programming Library

Recipe freeze marker

No recipe freeze time is recorded.

Frequently Asked Questions about Seaborne Fuel Oil Trade Flow & Refinery Blend Optimizer