# Case Study 2

A manufacturing manager is in charge of minimizing the total costs (raw materials, labor and storage costs) of the following four months. In Table 3.1 can be found the cost of raw materials of one unit of final product, the demand of final product and the working hours available for each month. Labor costs are of 12 e per hour, and only worked hours are payed. Each unit of final product needs 30 minutes of labor. Storage costs are equal to 2 e for each unit stored at the end of the month. Any unit produced at a given month can be used to cover the demand of the same month, or be stored to cover the demand of months to come. At the beginning of month 1 there is no stock, and there are no minimum stock requirements for any month.
## Success: the objective function is 0.1333333
## [1] 0.06666667 0.00000000
## [1] 0 4
## [1] 6e+00 1e+30
## [1] 0.00000000 0.00000000 0.01333333 0.00000000 0.00000000 8.00000000

*The minimum value of z obtained is 0.13333333, where x1 is 0.06666667, x2 is 0.00000000. The sensitivity coefficient changes from 0 and 4 to 6. 10^0 and 1.10^30

## Model name: 
##             C1    C2         
## Minimize     0     0         
## R1           0     0  free  0
## R2           0     0  free  0
## R3           0     0  free  0
## R4           0     0  free  0
## Kind       Std   Std         
## Type      Real  Real         
## Upper      Inf   Inf         
## Lower        0     0
## $anti.degen
## [1] "none"
## 
## $basis.crash
## [1] "none"
## 
## $bb.depthlimit
## [1] -50
## 
## $bb.floorfirst
## [1] "automatic"
## 
## $bb.rule
## [1] "pseudononint" "greedy"       "dynamic"      "rcostfixing" 
## 
## $break.at.first
## [1] FALSE
## 
## $break.at.value
## [1] -1e+30
## 
## $epsilon
##       epsb       epsd      epsel     epsint epsperturb   epspivot 
##      1e-10      1e-09      1e-12      1e-07      1e-05      2e-07 
## 
## $improve
## [1] "dualfeas" "thetagap"
## 
## $infinite
## [1] 1e+30
## 
## $maxpivot
## [1] 250
## 
## $mip.gap
## absolute relative 
##    1e-11    1e-11 
## 
## $negrange
## [1] -1e+06
## 
## $obj.in.basis
## [1] TRUE
## 
## $pivoting
## [1] "devex"    "adaptive"
## 
## $presolve
## [1] "none"
## 
## $scalelimit
## [1] 5
## 
## $scaling
## [1] "geometric"   "equilibrate" "integers"   
## 
## $sense
## [1] "minimize"
## 
## $simplextype
## [1] "dual"   "primal"
## 
## $timeout
## [1] 0
## 
## $verbose
## [1] "neutral"
## Model name: 
##             C1    C2          
## Minimize     2    12          
## R1           0     0  free   0
## R2           0     0  free   0
## R3           0     0  free   0
## R4           0     0  free   0
## R5         100   400    >=   6
## R6         200   400    >=   8
## R7         150   300    >=  10
## R8         400   300    >=  12
## Kind       Std   Std          
## Type      Real  Real          
## Upper      Inf   Inf          
## Lower        0     0
## [1] 0
## [1] 0.1333333
## [1] 0.06666667 0.00000000
LS0tDQp0aXRsZTogIkxhYjM6IExpbmVhciBQcm9ncmFtbWluZyBNb2RlbGluZyINCmF1dGhvcjogIkplcnJlbCINCmRhdGU6ICJgciBmb3JtYXQoU3lzLkRhdGUoKSwgJyVCICVkLCAlWScpYCINCm91dHB1dDogb3BlbmludHJvOjpsYWJfcmVwb3J0DQoNCi0tLQ0KDQpgYGB7ciBMb2dvLCBlY2hvPUZBTFNFLGZpZy5hbGlnbj0nY2VudGVyJywgb3V0LndpZHRoID0gJzQwJSd9DQprbml0cjo6aW5jbHVkZV9ncmFwaGljcygiaHR0cHM6Ly9naXRodWIuY29tL0Jha3RpLVNpcmVnYXIvaW1hZ2VzL2Jsb2IvbWFzdGVyL2xvZ28ucG5nP3Jhdz10cnVlIikNCmBgYA0KIyBDYXNlIFN0dWR5IDINCg0KYGBgDQpBIG1hbnVmYWN0dXJpbmcgbWFuYWdlciBpcyBpbiBjaGFyZ2Ugb2YgbWluaW1pemluZyB0aGUgdG90YWwgY29zdHMgKHJhdyBtYXRlcmlhbHMsIGxhYm9yIGFuZCBzdG9yYWdlIGNvc3RzKSBvZiB0aGUgZm9sbG93aW5nIGZvdXIgbW9udGhzLiBJbiBUYWJsZSAzLjEgY2FuIGJlIGZvdW5kIHRoZSBjb3N0IG9mIHJhdyBtYXRlcmlhbHMgb2Ygb25lIHVuaXQgb2YgZmluYWwgcHJvZHVjdCwgdGhlIGRlbWFuZCBvZiBmaW5hbCBwcm9kdWN0IGFuZCB0aGUgd29ya2luZyBob3VycyBhdmFpbGFibGUgZm9yIGVhY2ggbW9udGguIExhYm9yIGNvc3RzIGFyZSBvZiAxMiBlIHBlciBob3VyLCBhbmQgb25seSB3b3JrZWQgaG91cnMgYXJlIHBheWVkLiBFYWNoIHVuaXQgb2YgZmluYWwgcHJvZHVjdCBuZWVkcyAzMCBtaW51dGVzIG9mIGxhYm9yLiBTdG9yYWdlIGNvc3RzIGFyZSBlcXVhbCB0byAyIGUgZm9yIGVhY2ggdW5pdCBzdG9yZWQgYXQgdGhlIGVuZCBvZiB0aGUgbW9udGguIEFueSB1bml0IHByb2R1Y2VkIGF0IGEgZ2l2ZW4gbW9udGggY2FuIGJlIHVzZWQgdG8gY292ZXIgdGhlIGRlbWFuZCBvZiB0aGUgc2FtZSBtb250aCwgb3IgYmUgc3RvcmVkIHRvIGNvdmVyIHRoZSBkZW1hbmQgb2YgbW9udGhzIHRvIGNvbWUuIEF0IHRoZSBiZWdpbm5pbmcgb2YgbW9udGggMSB0aGVyZSBpcyBubyBzdG9jaywgYW5kIHRoZXJlIGFyZSBubyBtaW5pbXVtIHN0b2NrIHJlcXVpcmVtZW50cyBmb3IgYW55IG1vbnRoLg0KYGBgDQoNCmBgYHtyfQ0KI2NhbGxpbmcgdGhlIGxwU29sdmUNCmxpYnJhcnkobHBTb2x2ZSkgICAgICAgICAgDQoNCiNzZXQgY29lZmZpY2llbnQgb2YgdGhlIG9iamVjdGl2ZSBmdW5jdGlvbg0KZi5vYmogPC0gYygyLCAxMikgDQoNCiNzZXQgbWF0cml4IGNvcnJlc3BvbmRpbmcgdG8gY29lZmZpY2llbnQgb2YgY29uc3RyYWludCBieSByb3dzDQojRG9uJ3QgY29uc2lkZXIgdGhlIG5vbi1uZWdhdGl2ZSBjb25zdHJhaW50LCBpdCBpcyBhdXRvbWF0aWNhbGx5IGFzc3VtZWQNCmYuY29uIDwtIG1hdHJpeChjKDEwMCwgNDAwLA0KICAgICAgICAgICAgICAgICAgMjAwLCA0MDAsDQogICAgICAgICAgICAgICAgICAxNTAsIDMwMCwNCiAgICAgICAgICAgICAgICAgIDQwMCwgMzAwKSwgbnJvdyA9IDQsIGJ5cm93ID0gVFJVRSkNCg0KI3NldCB1bmVxdWFsaXR5IHNpZ25zDQpmLmRpciA8LSBjKCI+PSIsICAgICAgICANCiAgICAgICAgICAgIj49IiwNCiAgICAgICAgICAgIj49IiwNCiAgICAgICAgICAgIj49IikgICAgI2RpciwgYSBjaGFyYWN0ZXIgdmVjdG9yIHNwZWNpZnlpbmcgdGhlIHR5cGVzIG9mIGNvbnN0cmFpbnRzOiBlYWNoIGVsZW1lbnQgbXVzdCBiZSBvbmUgb2YgIjw9IiwgIj0iLCBvciAiPj0iLg0KDQojc2V0IHJpZ2h0IGhhbmQgc2lkZSBjb2VmZmljaWVudHMNCmYucmhzIDwtIGMoNiwgICAgICAgI3JocywgYSBzaW5nbGUgbnVtZXJpYyB2YWx1ZSBzcGVjaWZ5aW5nIHRoZSByaWdodC1oYW5kLXNpZGUgb2YgdGhlIGNvbnN0cmFpbnQuDQogICAgICAgICAgIDgsIA0KICAgICAgICAgICAxMCwgDQogICAgICAgICAgIDEyKQ0KDQojRmluYWwgdmFsdWUgKHopDQpscCgibWluIiwgZi5vYmosIGYuY29uLCBmLmRpciwgZi5yaHMpDQoNCiNWYXJpYWJsZXMgZmluYWwgdmFsdWVzDQpscCgibWluIiwgZi5vYmosIGYuY29uLCBmLmRpciwgZi5yaHMpJHNvbHV0aW9uDQoNCiNzZW5zaXRpdml0aWVzDQpscCgibWluIiwgZi5vYmosIGYuY29uLCBmLmRpciwgZi5yaHMsIGNvbXB1dGUuc2Vucz1UUlVFKSRzZW5zLmNvZWYuZnJvbQ0KbHAoIm1pbiIsIGYub2JqLCBmLmNvbiwgZi5kaXIsIGYucmhzLCBjb21wdXRlLnNlbnM9VFJVRSkkc2Vucy5jb2VmLnRvDQoNCiMgRHVhbCBWYWx1ZXMgKGZpcnN0IGR1YWwgb2YgdGhlIGNvbnN0cmFpbnRzIGFuZCB0aGVuIGR1YWwgb2YgdGhlIHZhcmlhYmxlcykNCiMgRHVhbHMgb2YgdGhlIGNvbnN0cmFpbnRzIGFuZCB2YXJpYWJsZXMgYXJlIG1peGVkDQpscCgibWluIiwgZi5vYmosIGYuY29uLCBmLmRpciwgZi5yaHMsIGNvbXB1dGUuc2Vucz1UUlVFKSRkdWFscw0KYGBgDQoqVGhlIG1pbmltdW0gdmFsdWUgb2YgeiBvYnRhaW5lZCBpcyAwLjEzMzMzMzMzLCB3aGVyZSB4MSBpcyAwLjA2NjY2NjY3LCB4MiBpcyAwLjAwMDAwMDAwLiBUaGUgc2Vuc2l0aXZpdHkgY29lZmZpY2llbnQgY2hhbmdlcyBmcm9tIDAgYW5kIDQgdG8gNi4gMTBeMCBhbmQgMS4xMF4zMCANCg0KYGBge3J9DQpsaWJyYXJ5KGxwU29sdmVBUEkpDQoNCmxwcmVjIDwtbWFrZS5scCg0LDIpDQpscHJlYw0KDQojU2V0IHRoZSBvYmplY3RpdmUgZnVuY3Rpb24gdG8gbWluaW1pemF0aW9uDQpscC5jb250cm9sKGxwcmVjLCBzZW5zZT0ibWluIikNCg0KI1dlIGRlZmluZSB0aGUgb2JqZWN0aXZlIGZ1bmN0aW9uIGFuZCB0aGUgY29uc3RyYWludA0Kc2V0Lm9iamZuKGxwcmVjLCBjKDIsIDEyKSkNCmFkZC5jb25zdHJhaW50KGxwcmVjLCBjKDEwMCwgNDAwKSwgIj49IiwgNikNCmFkZC5jb25zdHJhaW50KGxwcmVjLCBjKDIwMCwgNDAwKSwgIj49IiwgOCkNCmFkZC5jb25zdHJhaW50KGxwcmVjLCBjKDE1MCwgMzAwKSwgIj49IiwgMTApDQphZGQuY29uc3RyYWludChscHJlYywgYyg0MDAsIDMwMCksICI+PSIsIDEyKQ0KDQoNCiNMZXQncyBoYXZlIGEgbG9va24gYXQgdGhlIExQIHByb2JsZW0gd2UgaGF2ZSBkZWZpbmVkDQpscHJlYw0KDQojU29sdmluZw0Kc29sdmUobHByZWMpDQoNCiNHZXR0aW5nIHRoZSBvcHRpbWl6ZWQgcHJvZml0IHZhbHVlDQpnZXQub2JqZWN0aXZlKGxwcmVjKQ0KDQojTGV0J3MgZmluYWxseSBnZXQgdGhlIHZhbHVlcyBmb3IgaG93IG1hbnkgYWNyZXMgb2YgV2hlYXQgYW5kIEJhcmxleSB0byBiZSBwbGFudGVkLg0KZ2V0LnZhcmlhYmxlcyhscHJlYykNCg0KYGBgDQoNCg0KDQo=