Presentation is loading. Please wait.

Presentation is loading. Please wait.

On the Algorithms of the Grid-Based EMMIL E-Marketplace Model

Similar presentations


Presentation on theme: "On the Algorithms of the Grid-Based EMMIL E-Marketplace Model"— Presentation transcript:

1 On the Algorithms of the Grid-Based EMMIL E-Marketplace Model
Dr. Lívia Kacsukné Bruckner International Business School Inst. of Information Systems and Logistics Gábor Hermann, Akos Balasko MTA SZTAKI

2 EMMIL E-commerce model to integrate logistics
1. Combined negotiation with trading partners and logistics service providers 2. Choosing trading partners and 3PLs

3 Auction Algorithm for buyer-oriented marketplaces
1 .The buyer issues a request for procurement (RFP) identifying the requirements 2. Sellers bid offering products. 3. The marketplace engine forwards the bids to the 3PLs who place their bids for logistics services. 4. The marketplace engine aggregates the offers from seller and 3PLs and forwards the best one to the buyer 5. The cycle is continued until the lowest accumulated cost is achieved.

4 The original Objective Function
Qik Purchased quantity of product i. from seller k. Pik Unit-price of product i. at seller k. as a step function of quantity Δk Discount given as a step function after the total purchase cost at seller k. xjl є {0,1} decision variable xjl =1  offer j. of 3PL l. is selected as winner

5 Simplified Objective Function to minimize:
i = 1 N 1 Z Qj,i = if Simplified Objective Function to minimize: j = 1 M i = 1 N Pj,iQj,i + Vj Qj,i + Fj * then 1 Z Qj,i 1 + else Basic assumptions: Each product has the same weight and cubature Sellers have infinite delivery capacities There is no discounts Deliveries are separate (from each sellers to the consumer) Each transport unit has the same capacity – container size (Z) S1 T1 T3 T2 S2 S3 D

6 Trick to obtain linear equations
Let us subdivide the variable Qj,i into Qj,t,i such a way, that objective function remains linear within the domain determined by the container size t and let us introduce an auxiliary “binary” variable yj,t whose value is equal 1 only in the case when the products of sellerj must be delivered in just t containers. In all other cases the value of yj,t must be 0. Qj,i j = 1 M i = 1 N t * Fj*yj,t t = 1 C (Vj +Pj,i)Qj,t,i Qj,t2,i Qj,t3,i Qj,t1,i i = 1 N 1 Z Qi 1 + Where C is the upper limit for and the value of the help variable yj,t must be 0 or 1 Qj,i 1 yt=1,yt=2,yt=3 The constraints to solve the linear programming problem will be set so that Qj,t,i will be 0 if yj,t is 0

7 Qj,i Qj,i 1 yt=1,yt=2,yt=3 Qj,i

8 The bad consequence is the big number of variables to solve the linear programing problem: Qj,t,i instead of Qj,i and the additional yj,t

9 How to avoid combinatorical explosion?
Idea: Diminish the number of Sellers (Dimension j in Qj,t,i ) Solution: Investigate only a limited number of “Best Sellers” (U), selected by the heuristic criteria “Every goods a delivered by the same seller”. Make the calculation parallel for S < U sellers in U S = U! /((U-S)!*S!) cases GRID must be used to exploit parallel computing capacity

10 EMMIL 1.0 Goal: Simulation of the simplified Marketplace model in the Grid environment to diminish the computational time Method: Parametric sweep feature of the P-GRADE Grid Portal

11 Implementation- Base Call the LP_Solver
Preparation, constructing the combinations Call the LP_Solver Call the LP_Solver (i) Collect and compare the results 1 2 US

12 Input definition N M Di Mi Qi FIX_M Z S U FIX_D VAR_M VAR_D i=1..N N
Number of Products M Number of Sellers U Number of “best” Sellers S Number of “selected” Sellers Z Container size (Number of products / Container) Qi Order size of Product i Mi Middle value of distribution simulating unit price of Product i Di Deviation value of distribution simulating unit price of Product i FIX_M Middle value simulating distribution of fix cost associated to Seller j FiX_D Deviation value simulating distribution of fix cost associated to Seller j VAR_M Middle value simulating distribution of variable cost associated to Seller j VAR_D Deviation value simulating distribution of variable cost associated to Seller j

13 Implementation - Generator
Call the LP_Solver 1 Preparation, constructing the combinations 2 Call the LP_Solver Collect and compare the results Call the LP_Solver (i) US

14 Combination “k=9” of sellers calculated in a single Job step
I Generator job Calculates the simulation tables (UP,Fix_Cost,Var_Cost) Makes the prefiltering and the associated index table of seller combinations (SeTab )to be matched: Example: M=6;U=5(Se1,Se2,Se3,Se4, Se6);S=3 Combination “k=9” of sellers calculated in a single Job step Assuming that the prefiltering discarded seller = Se5 as the worst bidder: 1 2 3 4 6 S=3 U S 5 3 = = 10

15 Output definition N M UPi,j SeTabi,j Qi Fix_Costj Z S U k Var_Costj
Time Stamps i=1..M i=1..S k=1..Comb(U,S) The output files of the generator differs only in the first number (k) selecting a column of the matrix SeTab determining a set of sellers to be involved in the subsequent linear programming solver

16 Implementation- LP Solver
Call the LP_Solver 1 Preparation, constructing the combinations 2 Call the LP_Solver Collect and compare the results Call the LP_Solver (i) US

17 II Linear Programming Solver Job
Transforms the input data to the ASCII input format of the LP solver Executes the Linear LP solver Writes out the results

18 Generated input of LP solver
j = 1 M i = 1 N t * Fj*yj,t t = 1 C (Vj +Pj,i)Qj,t,i Real Quantities must be positive

19 Quantities must match the bid
Products of one sellers must fit in one of the Container classes defined as a step function (t=1,2…n container), where yj,t is coded as yj_t and Qj,t,I is coded as xj_i_t yj,t must be Integer

20 Quantities must match the bid
Products of one sellers must fit in one of the Container classes defined as a step function (t=1,2…n container), where yj,t is coded as yj_t and Qj,t,I is coded as xj_i_t yj,t must be Integer

21 Time Stamps inherited and new
Result of LP solver Delivers the solution of the LP system represented by the string , value pares of the variables extended by the input values and by the inhereted and generated time stamps: k N M U S Z Qi UPi,j i=1..N i=1..N i=1..M Fix_Costj Var_Costj Succ=T/F Minimum i=1..M Var String (xj_t_i, yj_t) Var value Time Stamps inherited and new

22 Implementation- Collector
Call the LP_Solver 1 Preparation, constructing the combinations 2 Call the LP_Solver Collect and compare the results Call the LP_Solver (i) US

23 III Collector Reads the results of the LP solver submissions
Selects the best minimum upon the instance minimums calculated by the LP solver.

24 Test in local environment
The inverse function of Container size (Z) and the number of variables of the minimal problem to be solve explains the predicted exponential increasing of calculation time as container size changes i = 1 N 1 Z Qi 1 +

25 Pilot Implementation using the P-GRADE Portal
Input file “Technical” input: DLL of LP_Solver Collector input port: retains the subsequent job from run until each preceding PS job has terminated Parameter Study Input Port: Executes the subsequent PS jobs as many times as many input files are stored in the associated storage.

26 Worcester Polytechnic Institute
EMMIL 1.0 Portlet “Base” Change Date Worcester Polytechnic Institute

27 Worcester Polytechnic Institute
EMMIL 1.0 Portlet “NEXT” Change Date Worcester Polytechnic Institute

28 Results of simple Grid Test

29 Implementation improvement: Bundling
Preparation, constructing the combinations Call the LP_Solver Call the LP_Solver (i) Collect and compare the results 1 2 US Preparation, constructing the combinations Call the LP_Solver Collect and compare the results 1,2,…k k+1,k+2,…2k US 2k+1,2k+2,… For(j=0;j<k;j++) Call the LP_Solver (I,j)

30 Results of Bundled Grid running

31 Raw Results different bundles of 330 original jobs
Change Date Worcester Polytechnic Institute

32 Revised Result of Bundle Test
10 Real Hosts in the Grid Increase relative to a single process: 5 Processes 4.04x increase 10 Processes 6.26x increase 30 Processes 5.04x increase

33 Path of the Developing EMMIL 1.0 EMMIL 2.0 The ultimate Goal S1 T1 T3
Transporters are capable of round trips (Traveling Salesman’s problem) A transporter is associated to a single seller Any transporter may access any seller

34 EMMIL 2.0: Input definition Changed
S Z L Qi Mi Di i=1..N FIX_Mj FIX_Dj VAR_Mj VAR_Dj j=1..M N Number of Products M Number of Sellers U Number of “best” Sellers S Number of “selected” Sellers Z Container size (Number of products / Container) L Number of Distributors Qi Order size of Product i Mi Middle value of distribution simulating unit price of Product i Di Deviation value of distribution simulating unit price of Product i FIX_Mj Middle value simulating distribution of fix cost associated to Seller j FiX_Dj Deviation value simulating distribution of fix cost associated to Seller j VAR_Mj Middle value simulating distribution of variable cost associated to Seller j VAR_Dj Deviation value simulating distribution of variable cost associated to Seller j

35 Portlet of the EMMIL 2.0

36 Fill Product Costs of the Sellers …
and Costs of the Distributors…

37 New Features in EMMIL 2.0 The Collector generate a comma-separated text file with the results witch can be imported to Excel… A macro, witch is use an another Collector-generated file to draw the winner Distributors for each Seller, and each Product with a Chart in Excel.

38 Any Questions?


Download ppt "On the Algorithms of the Grid-Based EMMIL E-Marketplace Model"

Similar presentations


Ads by Google