【问题标题】:Docplex: Building expression to get a value from an arrayDocplex:构建表达式以从数组中获取值
【发布时间】:2020-10-11 05:50:47
【问题描述】:

我有一个数组定义如下

A = [
[10,20],
[20,10]
]

现在我想在 (i, j) 位置获取条目。问题是,j 是一个 CpoFunctionCall 对象(其中 i 将是一个 Int),因此无法被索引。是否有可能将 (i,j)-th 元素作为 docplex 中的 CpoExpression 进行操作,或者是否有其他巧妙的方法来解决这个问题?

【问题讨论】:

    标签: docplex


    【解决方案1】:

    所以我解决这个问题的方法是将 A[i] 转换为表达式并将函数调用转换为布尔数组的表达式,然后取内积。

    POSITION = [0,1]
    b = build_cpo_expr(A[i])
    c = list(map(lambda x: x==j, POSITION))
    distance = scal_prod(c, b)
    

    【讨论】:

      猜你喜欢
      • 2016-12-16
      • 2014-12-11
      • 2023-03-22
      • 1970-01-01
      • 1970-01-01
      • 2017-07-24
      • 2014-06-06
      • 1970-01-01
      • 2012-09-10
      相关资源
      最近更新 更多