Math 是在y之前还是之后?此外,这种方法需要计算所有任务对的函数,即使我们有这个矩阵,我们也不能很容易地判断,比如给定3个任务,它们的相对组合优先级是多少。@mjv--OP states'想法是根据上述规则组合这两个属性,优先级和截止日期,为了产生一个数字输出,

Math 是在y之前还是之后?此外,这种方法需要计算所有任务对的函数,即使我们有这个矩阵,我们也不能很容易地判断,比如给定3个任务,它们的相对组合优先级是多少。@mjv--OP states'想法是根据上述规则组合这两个属性,优先级和截止日期,为了产生一个数字输出,,math,function,Math,Function,是在y之前还是之后?此外,这种方法需要计算所有任务对的函数,即使我们有这个矩阵,我们也不能很容易地判断,比如给定3个任务,它们的相对组合优先级是多少。@mjv--OP states'想法是根据上述规则组合这两个属性,优先级和截止日期,为了产生一个数字输出,可以用来对任务列表进行排序。”我认为距离函数可以很好地做到这一点。它不需要计算所有任务对的函数——任务与原点的“距离”确定了它相对于所有其他任务的优先级。我认为你是对的,它不是严格意义上的距离函数,你希望每次都以相同的顺序提供“坐标”,所以f(


是在y之前还是之后?此外,这种方法需要计算所有任务对的函数,即使我们有这个矩阵,我们也不能很容易地判断,比如给定3个任务,它们的相对组合优先级是多少。@mjv--OP states'想法是根据上述规则组合这两个属性,优先级和截止日期,为了产生一个数字输出,可以用来对任务列表进行排序。”我认为距离函数可以很好地做到这一点。它不需要计算所有任务对的函数——任务与原点的“距离”确定了它相对于所有其他任务的优先级。我认为你是对的,它不是严格意义上的距离函数,你希望每次都以相同的顺序提供“坐标”,所以f(x,y)!=f(y,x)。@HP马克:我的错,抱歉!我误解了你的答案,并认为这是两个任务点之间的距离,而不是任务和某个原点之间的距离。从这个意义上讲,您的建议确实提供了一个可用于任务排序的标量。困难在于校准每个维度的比例以及这些维度的相对重要性,但是这个问题对于任何以任何方式结合d和p的公式来说都是常见的。这种方法在优先级从-inf到+inf的情况下有效吗?对于同一天,功能结果将是负优先级与正优先级的镜像。考虑到2010年3月2日(今天是2010年3月4日),那么对于优先级:-2->5-1->3 0->3 1->5 2->9,理想的做法是在当天权衡优先级。或者,可能必须将优先级转移到0?意思是我只有从0到+inf?虽然这很难,因为我不知道优先级的最小值,所以我可以改变这些值。@smink:对不起,我不明白。我建议的公式足够通用,可以参数化(带有常数),以支持p和d因子的任何线性(或二次)组合。如果在某种程度上,用于确定列表中任务的相对优先级的规则需要两步的过程(例如,首先考虑分配给给定的一天的所有任务),两个或三个变量代数公式将无济于事,因为排序基本上是所有任务的函数(至少在给定的一天中所有的任务)。你应该尝试定义规则。。。。。。这应该用来产生这个排名,也许可以转换成一个简单的公式。另外,你不应该太担心无穷大,因为你的一个变量(d,日期)不是无限大的,因此你应该把p限制在某个实际范围内(接近渐近线,但这当然有点循环,因为渐近线取决于常数…),或者对d有一个指数标度,否则,你可能永远不会真正考虑D(它总是会被P因子所压倒)。我是说如果我们运行简单函数“代码>组合优先权=k*(CD -D)+P<代码>P从[-2, 2 ]的增量为1,那么对于集合{ 2,-1, 0, 1,2 },在相同的日期,例如02-03-2010。(对于今天的04-03-2010),所以(cd-d)总是一样的,那么
组合优先级将是5(p=-2),3(p=-1),3(p=0),5(p=1),9(p=2)。@smink:一点也不!在给定的(cd-d)值内,k*(cd-d)函数的一部分变为常量,因此整个函数只返回一个偏移值p,这似乎是一个理想的属性:由于所有任务的截止日期(cd)相同,因此它们根据优先级因子(p)相对排序.在cd和p不同的项目之间,事情变得更有趣,这就是常数系数(s)如k的重要性所在。
fun(x,y) = sqrt(x^2+y^2)
CombinedPriority = k * (cd - d) + p
 CombinedPriority = kd2 * ((cd - d) ^ 2)
                  + kd1 * (cd - d) 
                  + kp2 * (p^2)
                  + kp1 * p