当前位置: 首页 > Web前端 > HTML

COMP331

时间:2023-03-28 16:50:08 HTML

COMP331/COMP557优化编程作业截止日期:2021年12月10日星期五中午,通过SAM(https://sam.csc.liv.ac.uk/COM...或https://sam.csc.liv.ac.uk/COM...)这项作业占你成绩的15%。下图显示了12个有联系的位置(这种排列称为Frucht图1):在这12个位置中的每个位置,你计划建造一座建筑物,该建筑物要么是采石场,或工厂,或市场。资源分为三种类型:黄金、钻石和珠宝。每年,相同数量的资源通过连接从一栋大楼传送到另一栋大楼。但是每个连接都有一个限制:每年通过连接发送的所有资源的总和不能超过165个单位(例如,如果从a向b发送100个单位的黄金,那么钻石的数量从b发送到a的能量最多为65)。每年你有850单位的能量可用。能量不转化通过网络运动,但随处可见。采石场每年生产200个单位的黄金和75个单位的钻石。这需要100单位的能量。?一家工厂每年使用70个单位的黄金和20个单位的钻石,生产60个单位的珠宝。这需要300个单位的能源。?市场出售黄金、钻石和珠宝。–一个单位的黄金可以卖150。–一个单位的钻石可以卖200。–一个单位的珠宝可以卖1000。销售不需要能源。所有市场的所有收入之和称为总收入。资源不能在不同年份之间结转。采石场和工厂不需要用完所有资源。您可以决定转发或销毁任意数量的资源。资源的转发和销毁不消耗能量。您也不必出售所有送到市场的东西。您可以改为转发这些资源。通过市场转运珠宝显然没有意义出售它,但原则上转发黄金或钻石而不是出售它们可能是有用的,这样它们就可以在工厂转换成珠宝。采石场和工厂的运行效率可以低于100%。他们的输入、输出和能源使用呈线性下降。下一页是针对特定固定建筑物布置的最佳解决方案的图形表示。采石场是黄色的,工厂是蓝色的,市场是红色的。G代表黄金,D代表钻石,J代表珠宝。效率显示在圆圈内。原则上,可以通过连接同时向相反方向发送资源,但本示例没有使用它。本例中的能耗为(82.5%+37.5%+60%+10.40%+60%+10.91%)·100+(100%+96.19%)·300,(小数点后多)正好是850。本例中的总收入是(小数位数比第e图)£(240+145.468)·150+£(66.8129+90)·200+£117.719·1000,其中(有更多小数位)是£206902.0468。你的任务是放置建筑物,设置效率,以及分配资源以使总收入最大化。用您选择的编程语言编写一个程序P1,创建一个.lp文件,然后调用glpsol来解决固定放置建筑物的任务。因为每个位置都有三种可能的建筑物,总共有312=531441多个建筑物的布置。编写一个程序P2,在每次放置时调用您的程序P1并选择最佳的一个。我的旧笔记本电脑可以在大约5秒内解决1000个这样的LP,所以这个计算需要不到一个小时。采用最佳解决方案(或最佳解决方案之一,如果有多个最佳解决方案)并绘制一个与此页面上的示例图类似的相应图形并将其放入.pdf文件中。提交格式:将以下内容放入一个sing中le.zip文件:你的程序代码。P1生成的531441个.lp文件之一,它给出了最优目标函数值。包含最优解图形的.pdf文件。如果你在编程时遇到问题,请尝试从您的导师或讲师那里获得帮助。不要复制其他学生的解决方案!仅适用于COMP557,不适用于COMP331-研究组件此外,多次修改此作业并观察最佳解决方案如何变化。然后提出一个假设,并通过进一步的检验来验证或证伪它。写下你做了什么。这不应超过一页A4页。将此页面添加到提交的.zip文件中。WX:代码帮助