limj
2023-10-24 93652435728de839582440eefd5122c281181d35
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
Quintiq file version 2.0
#parent: #root
Method CheckBenchmarkParsing
{
  TextBody:
  [*
    endproductstoadd := 1; // create this many x 3 (body, tab, end)
    intermediatetoadd := 1; // split intermediate products into this many 
    periodstoadd := 1; 
    
    addtriplotsize := true; 
    usertriplotsize := 100.0; 
    
    addptolotsize := true; 
    userptolotsize := 1000.0; 
    
    addptominqty := true; 
    userptominqty := 5000.0; 
    
    addinputlotsize := true;  
    userinputlotsize := 1000.0; 
    
    setlotcost := true; 
    
    setinventorymixbalancing := true; 
    
    addcapsmoothing := true; 
    smoothingdelta := 2.0; // 2% smoothing 
    
    addpostponement := true; 
    postponementnrperiods := 6; // parameter used for both horizon and max postponement
    
    name := 
    Optimization::GetBenchmarkName( endproductstoadd, 
                                    intermediatetoadd, 
                                    periodstoadd, 
                                    addtriplotsize, 
                                    usertriplotsize, 
                                    addptolotsize, 
                                    userptolotsize, 
                                    addptominqty, 
                                    userptominqty, 
                                    addinputlotsize, 
                                    userinputlotsize, 
                                    setlotcost, 
                                    setinventorymixbalancing, 
                                    addcapsmoothing, 
                                    smoothingdelta, 
                                    addpostponement, 
                                    postponementnrperiods );
    debuginfo( name ); 
    
    endproductstoadd := 0; 
    intermediatetoadd := 0;  
    periodstoadd := 0; 
    addtriplotsize := false; 
    usertriplotsize := 0.0; 
    addptolotsize := false; 
    userptolotsize := 0.0; 
    addptominqty := true; 
    userptominqty := 0.0; 
    addinputlotsize := false; 
    userinputlotsize := 0.0; 
    setlotcost := false; 
    setinventorymixbalancing := false;  
    addcapsmoothing := false; 
    smoothingdelta := 0.0; 
    addpostponement := false; 
    postponementnrperiods := 0;
    
    Optimization::ParseBenchmarkName( name, 
                                     endproductstoadd, 
                                     intermediatetoadd, 
                                     periodstoadd, 
                                     addtriplotsize, 
                                     usertriplotsize, 
                                     addptolotsize, 
                                     userptolotsize, 
                                     addptominqty, 
                                     userptominqty, 
                                     addinputlotsize, 
                                     userinputlotsize, 
                                     setlotcost, 
                                     setinventorymixbalancing, 
                                     addcapsmoothing, 
                                     smoothingdelta, 
                                     addpostponement, 
                                     postponementnrperiods );
    
    debuginfo( endproductstoadd, 'end prod' ); 
    debuginfo( intermediatetoadd, 'i ' ); 
    debuginfo( periodstoadd, 'p' ); 
    debuginfo( addtriplotsize, 'tlot' , ifexpr( addtriplotsize, 't', 'f') ); 
    debuginfo( usertriplotsize, 'lot' );  
    debuginfo( addptolotsize, 'ptolot', ifexpr( addptolotsize, 't', 'f') ); 
    debuginfo( userptolotsize, 'lot' ); 
    debuginfo( addptominqty, 'ptomin', ifexpr( addptominqty, 't', 'f')  ); 
    debuginfo( userptominqty, 'ptominqty' ); 
    debuginfo( addinputlotsize,  'inplot', ifexpr( addinputlotsize, 't', 'f') ); 
    debuginfo( userinputlotsize, 'lot' ); 
    debuginfo( setlotcost, 'setlotcost', ifexpr( setlotcost, 't', 'f') ); 
    debuginfo( setinventorymixbalancing, 'setinvmix' , ifexpr( setinventorymixbalancing, 't', 'f') );  
    debuginfo( addcapsmoothing, 'addcapsm',  ifexpr( addcapsmoothing, 't', 'f')); 
    debuginfo( smoothingdelta, 'delta' ); 
    debuginfo( addpostponement, 'addpost' , ifexpr( addpostponement, 't', 'f')); 
    debuginfo( postponementnrperiods, 'periods' );
  *]
  InterfaceProperties { Accessibility: 'Module' }
}