|
|
|
| |||||||||
![]() |
|
|
«
Previous Thread
|
Next Thread
»
|
Thread Tools | Search this Thread | Display Modes |
|
#1
|
|||
|
|||
|
Modeling question, mixture between set covering and cutting stocksproblem
Hello everybody, I have a modeling problem coming from a small printing company: fixed- sized sheets of paper contain eight equal-sized cells to be filled with different content; after the content has been decided a printing plate is set-up and a couple of hundred sheets to a few thousand are printed which are then finally cut into its eight cells. Setting up the printing plates costs time and money, but once they are made, the printing is comparatively cheap. There are two decisions to make: assigning content to plates and deciding the number of sheets to print from each plate. There is an order list of content and desired quantity to be produced. The problem is to find an assignment of content to printing plates and quantity of sheets to produce from each plate such that the cost needed for the plates and the total overproduction is minimized. (There are other constraints but we ignore them for now.) Right now, I use a mixture between a set covering formulation and "reverse cutting stock" formulation as follows. Decision variables are binary and select a set of printing plates from a large candidate set of N platters. Each content k corresponds to a row in the constraint system and b_k units must be produced. per content is measured by slack_k, and a single unit overproduced costs c_slack. A printing plate costs c_use to setup. For the problem data, b_k are roughly in the same range, (min_k(b_k)/max_k(b_k)) > 0.1, and c_use = 20000*c_slack, that is 20000 overproduced cell- contents equal one printing plate setup cost. Columns in the constraint system contain 8 non-zero entries. For example, a column A_j=[0, 1200, 0, 1200, 2400, 0, 0, 1200, 1200, 0, 0, 1200, 0, 0, 0, 1200]' says that content (2, 4, 5, 5, 8, 9, 12, 16) are on this platter (5 occurs in two cells) and the platter is printed 1200 times. min_{x,slack} \sum_{k=1}^{K} c_slack slack_k + \sum_{n=1}^{N} c_use x_n sb.t. \sum_{n=1}^{N} a_{k,n} x_n - slack_k = b_k, for all k=1,,K x_n \in {0, 1} binary, for all n=1,,N slack_k >= 0, for all k=1,,K Right now I generate a few thousand platters by a naive heuristic and the resulting problem is solved using the CINR Cbc MILP solver. Here are my questions: 1. I would like to apply branch-and-price to this formulation as it looks similar to set covering formulations used for airline crew scheduling. However, the pricing problem is somewhat ill-posed because the columns of A scale arbitrarily large. How to formulate a meaningful pricing problem for the situation where A_{i,j} can be chosen as well? 2. Has anyone of you encountered similar models before and has a pointer to the literature? Thanks a lot, Sebastian |
![]() |
| Viewing: Web Development Archives > FAQs > Research > Modeling question, mixture between set covering and cutting stocksproblem |
| Thread Tools | Search this Thread |
| Display Modes | Rate This Thread |
|
|
|
|