实验目的:
通过实验,掌握线性规划问题的求解过程。建立模型后,可以用Lingo软件求解,也可以用MATLAB软件求解,了解MATLAB和Lingo在求解线性规划问题中的不同之处。
实验要求:
要有建模过程。
实验内容:
(1)背包问题,某人打算外出旅游并登山, 路程比较远, 途中要坐火车和飞机, 考虑要带许多必要的旅游和生活用品, 如照相机, 摄像机, 食品, 衣服, 雨具, 书籍等, 共8件物品, 重量分别为1, 3, 4,3, 3, 1, 5, 10 (千克), 而受航空行李重量限制以及个人体力所限, 能带的行李总重量为15 千克, 8件物品的总重量超过了15千克, 需要裁减, 该旅行者为了决策带哪些物品, 对这些物品的重要性进行了量化, 价值分别为2, 9, 3, 8, 10, 6, 4, 10, 试建立该问题的数学模型.
(2)配料问题,某疗养院营养师要为某类病人拟订本周蔬菜类菜单, 当前可供选择的蔬菜品种, 价格和营养成分含量, 以及病人所需养分的最低数量见表1所示. 病人每周需14份蔬菜, 为了口味的原因, 规定一周内的卷心菜不多于2份, 胡萝卜不多于3份, 其他蔬菜不多于4份且至少一份. 在满足要求的前提下, 制订费用最少的一周菜单方案.
(3)某航空公司每天有三个航班服务于A, B, C, H四个城市,其中城市H是可供转机使用的, 三个航班的出发地-目的地分别为AH, HB, HC,可搭乘旅客的最大数量分别为120人, 100人, 110人, 机票的价格分头等舱和经济舱两类. 经过市场调查, 公司销售部得到了每天旅客的相关信息, 见表1. 该公司应该在每条航线上分别分配多少头等舱和经济舱的机票?
实验步骤:
使用Lingo求解,
1 MODEL: 2 SETS: 3 WP/W1..W8/:A,C,X; 4 ENDSETS 5 DATA: 6 A=1,3,4,3,3,1,5,10; 7 C=2,9,3,8,10,6,4,10; 8 ENDDATA 9 MAX=@SUM(WP(I):C(I)*X(I)); 10 @SUM(WP(I):A(I)*X(I))<=15; 11 @FOR(WP(I):@BIN(X(I))); 12 END