Karmarkar в Scilab для решения проблемы резки - PullRequest
0 голосов
/ 14 октября 2018

Я пытаюсь решить проблему заготовки 1D в Scilab, но получаю неосуществимые решения.

logLength = 40; // width of the roll
lengthlist = [8; 12; 16; 20]; // size of items
quantity = [90; 111; 55; 30]; // demand for each item
nLengths = length(lengthlist); // quantity of different cuts
patterns = diag(floor(logLength./lengthlist)); // creates a feasible 
solution, although far from optimal
nPatterns = size(patterns,2); // number of patterns
c=ones(nPatterns,1); // cost for each patter is equal (1)

Поэтому я использую функцию karmarkar следующим образом:

xopt=karmarkar(patterns,quantity,c)

, что приводит к:

xopt  = 
18.
37.
27.5
0.0004578

Это удовлетворяет спрос (количество) для первых 3 предметов, но не для четвертого.Понятия не имею, где моя ошибка.

Заранее спасибо.

...