楼主: Arsaces
1789 0

线性规划问题求助 [推广有奖]

  • 2关注
  • 2粉丝

硕士生

78%

还不是VIP/贵宾

-

威望
0
论坛币
5421 个
通用积分
10.9939
学术水平
8 点
热心指数
8 点
信用等级
7 点
经验
1652 点
帖子
66
精华
0
在线时间
248 小时
注册时间
2012-10-6
最后登录
2023-5-6

20论坛币
请问本人代码哪里出了问题?
原题目如下:
(注意自行修改逻辑库)

表1
        劳动力(hrs)        金属(kg)        木材(m^3)        售价(元)
桌子        2        1        3        94
椅子        1        1        3        79
书柜        3        1        4        125
床        2        1        4        109

其中劳动力表示完成一件产品单位劳动力所需要花费的小时数(hours)。
下表给出了单位劳动力和原材料的成本,
表2
        劳动力(hrs)        金属(kg)        木材(m^3)
成本(元)        14        20        11
可用量        225        117        420

其中可用量表示在一天中该公司三种资源的可以使用的最大量。
问题1. 假设该公司所有的产品能够完全售罄,请问该公司如何安排一天中各个产品的数量,才能使其利润达到最大化?运用SAS中OR模块或者自编SAS程序求解此问题。


本人的代码如下,附件中有数据:
  1. proc optmodel;
  2. /*declare sets and parameters*/
  3. set <str> PRODUCT;
  4. set <str> RESOURCE;
  5. num  Price{PRODUCT};
  6. num  Cost{RESOURCE};
  7. num  Available{RESOURCE};
  8. num  Requirement{PRODUCT,RESOURCE};
  9. /*read data*/
  10. read data test.Cost into RESOURCE=[Resource] Cost Available=Amount_Available;
  11. read data test.Resource into PRODUCT=[Item] Price=Selling_price {r in RESOURCE}<Requirement[Item,r]=col(r)>;
  12. /*declare variables*/
  13. var X{PRODUCT};
  14. impvar Amount_used{r in RESOURCE}=SUM{p in PRODUCT}Requirement[p,r]*X[p];
  15. impvar TotalRevenue=SUM{p in PRODUCT}X[p]*Price[p];
  16. impvar TotalCost=SUM{r in RESOURCE}Amount_used[r]*Cost[r];
  17. /*declare constraints*/
  18. con Usage{r in RESOURCE}: Amount_used[r]<=Available[r];
  19. /*declare objection function*/
  20. max Obj=TotalRevenue-TotalCost;
  21. solve with MILP;
  22. expand;
  23. print {p in PRODUCT}X[p];
  24. quit;
复制代码

SASTEST.zip

2.55 KB

数据

本附件包括:

  • cost.sas7bdat
  • resource.sas7bdat

关键词:规划问题 线性规划 Requirement Constraints parameters 原材料 劳动力 产品 成本 程序
您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-30 21:56