Comparing Reasoning Models in Fulfillment Planning with DeepSeek-R1 and OpenAI-o1 models.

Over this weekend I was doing some interesting experiments with DeepSeek and OpenAI. I thought of sharing the findings with my readers- specifically on the order fulfilment side. We will explore how reasoning models from DeepSeek and OpenAI can be applied to generate a fulfillment plan for a set of customer orders. The motive of the blog is to show the quality of reasoning and explainability behind each of these reasoning models. Let’s dive into the specifics by examining the inputs, reasoning, and outcomes of the models.
Here is a TLDR if you do not want to read the full article :)
TLDR;
DeepSeek-R1 and OpenAI-o1 were tested for order fulfillment planning.
Both sourced items from the same distribution centers based on inventory and proximity.
DeepSeek provided:
- Detailed explanations (post-fulfillment inventory, shipping routes).
- Split shipment strategies.
- Customer updates and preferences handling.
OpenAI focused on:
- Key allocation decisions.
- Simplicity in reasoning.
Different approaches, similar outcomes.
Inputs to the Reasoning Models
To simulate the challenge I created a mock services for the scenario. I have shown the mock payload from my services :
- Order Payload
The payload contains details of customer orders, including order IDs, items ordered, quantities, and delivery preferences.
{
"OrderID": "ORD12345",
"CustomerID": "CUST67890",
"CustomerDetails": {
"Name": "John Doe",
"Segment": "Premium Business",
"Email": "johndoe@example.com",
"Phone": "+1-555-123-4567" },
"OrderDate": "2025-01-28",
"ShippingAddress": {
"AddressLine1": "123 Elm Street",
"City": "San Francisco",
"State": "CA",
"PostalCode": "94107",
"Country": "USA"
},
"OrderItems": [
{
"ItemID": "ITEM001",
"Description": "Wireless Mouse",
"Quantity": 2,
"UnitPrice": 25.99,
"TotalPrice": 51.98
},
{
"ItemID": "ITEM002",
"Description": "Mechanical Keyboard",
"Quantity": 1,
"UnitPrice": 79.99,
"TotalPrice": 79.99
},
{
"ItemID": "ITEM003",
"Description": "27-inch Monitor",
"Quantity": 1,
"UnitPrice": 229.99,
"TotalPrice": 229.99
}
],
"OrderTotal": 361.96
}
Customer Profile
Here is a simple customer profile service I created with a stubbed response . This includes basic customer info, such as their location, preferences and loyalty status.
{
"CustomerID": "CUST67890",
"Name": "John Doe",
"Segment": "Premium Business",
"Email": "johndoe@example.com",
"Phone": "+1-555-123-4567",
"Address": {
"AddressLine1": "123 Elm Street",
"City": "San Francisco",
"State": "CA",
"PostalCode": "94107",
"Country": "USA"
},
"CustomerPreferences": {
"PreferredContactMethod": "Email",
"PreferredShippingMethod": "Standard Shipping",
"PreferredPaymentMethod": "Credit Card"
},
"LifetimeValue": 361.96,
"LastOrderDate": "2025-01-28",
"AverageOrderValue": 361.96
}
Inventory Position
Details the stock availability across various distribution centers (DCs) for the Items in the Order. Assume that this view is fetched from IMS\ATS services for decission making and order routing.
{
"InventorySnapshot": [
{
"ItemID": "ITEM001",
"Description": "Wireless Mouse",
"Locations": [
{
"LocationID": "DC001",
"LocationName": "Los Angeles Distribution Center",
"Region": "US-West",
"AvailableQuantity": 120,
"ReservedQuantity": 30
},
{
"LocationID": "DC002",
"LocationName": "Dallas Distribution Center",
"Region": "US-South",
"AvailableQuantity": 200,
"ReservedQuantity": 20
},
{
"LocationID": "DC004",
"LocationName": "Toronto Distribution Center",
"Region": "Canada-East",
"AvailableQuantity": 150,
"ReservedQuantity": 25
}
]
},
{
"ItemID": "ITEM002",
"Description": "Mechanical Keyboard",
"Locations": [
{
"LocationID": "DC002",
"LocationName": "Dallas Distribution Center",
"Region": "US-South",
"AvailableQuantity": 100,
"ReservedQuantity": 15
},
{
"LocationID": "DC003",
"LocationName": "Chicago Distribution Center",
"Region": "US-Midwest",
"AvailableQuantity": 80,
"ReservedQuantity": 5
},
{
"LocationID": "DC005",
"LocationName": "Vancouver Distribution Center",
"Region": "Canada-West",
"AvailableQuantity": 60,
"ReservedQuantity": 10
}
]
},
{
"ItemID": "ITEM003",
"Description": "27-inch Monitor",
"Locations": [
{
"LocationID": "DC001",
"LocationName": "Los Angeles Distribution Center",
"Region": "US-West",
"AvailableQuantity": 50,
"ReservedQuantity": 10
},
{
"LocationID": "DC003",
"LocationName": "Chicago Distribution Center",
"Region": "US-Midwest",
"AvailableQuantity": 70,
"ReservedQuantity": 20
},
{
"LocationID": "DC005",
"LocationName": "Vancouver Distribution Center",
"Region": "Canada-West",
"AvailableQuantity": 40,
"ReservedQuantity": 5
}
]
}
]
}
Approach to Fulfillment Planning
Using the reasoning models, we aim to optimize the fulfillment process by:
- Ensuring the fastest possible delivery within customer constraints.
- Minimizing shipping costs.
- Balancing inventory across DCs.
Model 1: DeepSeek Reasoning ( Here is ths full reponse from the Model)
Fulfillment Plan for Order ORD12345:
1. Item Allocation & Sourcing:
- ITEM001 (Wireless Mouse, Qty 2): Source from DC001 (Los Angeles Distribution Center, US-West).
Rationale: Closest to San Francisco (same region), minimizing transit time. Ample stock (120 available).
Post-Fulfillment Inventory: 120 → 118 Available.
- ITEM002 (Mechanical Keyboard, Qty 1): Source from DC002 (Dallas Distribution Center, US-South).
Rationale: Nearest US-based DC with stock to avoid cross-border delays. Sufficient inventory (100 available).
Post-Fulfillment Inventory: 100 → 99 Available.
- ITEM003 (27-inch Monitor, Qty 1): Source from DC001 (Los Angeles Distribution Center, US-West).
Rationale: Proximity to customer (same region) for fast delivery. Inventory availability (50 units).
Post-Fulfillment Inventory: 50 → 49 Available.
2. Shipping Strategy:
Split into Two Shipments:
- Shipment 1 (DC001): Includes ITEM001 and ITEM003.
Shipping Method: Standard Shipping (per customer preference).
Route: Los Angeles (US-West) → San Francisco (1–2 business days).
- Shipment 2 (DC002): Includes ITEM002.
Shipping Method: Standard Shipping.
Route: Dallas (US-South) → San Francisco (2–3 business days).
3. Customer Experience Considerations:
- Premium Business Tier: Proactively notify the customer via email (preferred contact method) about split shipments and provide tracking links.
- Cost Optimization: Using regional DCs avoids international shipping fees and customs delays.
How the Plan Was Created:
- Proximity Prioritization: Selected DCs closest to San Francisco (DC001 for US-West, DC002 as the nearest US-based alternative for ITEM002).
- Inventory Availability: Confirmed stock levels met order quantities without requiring transfers.
- Cross-Border Avoidance: Chose US-based DCs for all items to align with the customer’s USA address and prevent delays.
- Customer Preferences: Adhered to “Standard Shipping” but optimized for speed using regional DCs.
- Business Rules: Prioritized Premium Business customers with logical stock deductions and proactive communication.
Model 2: OpenAI Reasoning ( Full response from the model)
Fulfillment Plan
ITEM001 (Wireless Mouse): Fulfill quantity 2 from DC001 (Los Angeles, US-West)
ITEM002 (Mechanical Keyboard): Fulfill quantity 1 from DC002 (Dallas, US-South)
ITEM003 (27-inch Monitor): Fulfill quantity 1 from DC001 (Los Angeles, US-West)
Rationale
Shipped ITEM001 and ITEM003 from Los Angeles DC (US-West) because it is geographically closer to San Francisco and both items are in stock there.
ITEM002 is not stocked at the LA DC, so the closest US-based center with available inventory is the Dallas DC.
Analysis and Insights
Both Deepseek R1 and OpenAI o1 ultimately arrived at the same fulfillment plan, sourcing items from the same distribution centers based on inventory availability and geographic proximity. However, the way they approached and explained their decisions varied significantly.
Details in Explanation DeepSeek takes a comprehensive approach by detailing every aspect of the plan, including post-fulfillment inventory levels, shipment methods, transit times, and routing. O1, on the other hand, opts for a concise explanation, focusing on the core allocation decisions
Shipping Strategy DeepSeek introduces a split shipment strategy, breaking the order into two shipments based on item availability and location. o1 does not explicitly mention splitting shipments or providing delivery timelines, leaving such decisions implicit.
Customer Experience DeepSeek provided actions to be taken for better customer experience by Notification of split shipments , tracking Info and Adherence to customer preference.
Business Rules DeepSeek incorporates broader business rules, such as prioritizing premium business tiers and cost optimization by leveraging regional sourcing
I would leave it here and let the readers decide.