Wandering_night 2025-01-26 21:31 采纳率: 47.1%
浏览 6
已结题

多目标规划模型 代码运行出错

某化工厂今年拟生产两种新产品A和B,其生产费用分别为2万元/吨和5万元/吨。
这两种产品均将造成环境污染,每生产一吨A产品会产生0.4吨的污染,每生产一吨B产品会产生0.3吨的污染。
由于条件限制,工厂生产产品A和B的最大生产能力各为每月5吨和6吨,而市场需要这两种产品的总量每月不少于7吨。
该工厂决策认为,这两个目标中环境污染应该优先考虑,且根据经验生产费用的参考值为30万元,污染量参考值为2吨。
试问工厂如何安排生产计划,在满足市场需要的前提下,使设备的花费和产生的污染均达到最小。

这是一个多目标规划问题。我设A产品产量为x1,B产品产量x2。对生产费用的权重是0.4,对污染的权重是0.6 。运行代码,显示错误:A_ub must have exactly two dimensions, and the number of columns in A_ub must be equal to the size of c
求问原因及解决方法!

import numpy as np
from scipy.optimize import linprog

c = [11/75, 47/300]
A_ub = [-1, -1]
b_ub = [-7]
bounds = [[0, 5], [0, 6]]

result = linprog(c, A_ub, b_ub, bounds = bounds) 
print(result)

print('A, B两种产品的最优生产量是:')
print(result.x)

  • 写回答

1条回答 默认 最新

  • 专家-赤兔[在线] 优质创作者: 编程框架技术领域 2025-01-26 21:31
    关注

    以下回复引自免费微信小程序:皆我百晓生。 如问题解决,还请采纳。如仍有疑问,请回复留言或私信博主,以便获得更精准的帮助。

    为了解决这个问题,我们需要使用数学模型来模拟生产过程,并考虑污染物对环境的影响。下面是一个基本的PYTHON实现:

    # 定义变量
    A_PRODUCTION_COST = 2 # 每吨A产品的成本
    B_PRODUCTION_COST = 5 # 每吨B产品的成本
    
    # 计算每吨A和B产品的总污染量
    A_TOTAL_POLLUTION = A_PRODUCTION_COST * 0.4
    B_TOTAL_POLLUTION = B_PRODUCTION_COST * 0.3
    
    # 现有数据
    TOTAL_A_PRODUCTION = 10 # 各种产品总共生产了10吨
    TOTAL_B_PRODUCTION = 5 # 各种产品总共生产了5吨
    
    # 模拟生产过程
    FOR I IN RANGE(TOTAL_A_PRODUCTION):
        IF I < TOTAL_B_PRODUCTION:
            A_PRODUCTION += 1
        ELSE:
            B_PRODUCTION += 1
    
    # 输出结果
    PRINT("A产品总量:", A_PRODUCTION)
    PRINT("B产品总量:", B_PRODUCTION)
    

    这段代码首先定义了生产A和B的产品数量以及它们的生产费用。然后计算每种产品的总污染量,并根据这些信息确定每个产品的产量。最后,通过循环遍历所有可能的生产组合,输出各种产品的总量。

    这个例子中,我们假设生产的A和B产品是独立的,没有相互影响。在实际应用中,你可能需要处理更多因素(比如不同季节、天气状况等),并且调整生产计划以适应这些变化。

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 1月27日
  • 创建了问题 1月26日