在捕捉“资源选择条件”中,我添加了3名技术人员,但其中只有1名工作人员,其余2名则什么也不做。

现在根据上面的图像,只有有价值的“击球手”的技师,即第一名,只会工作,剩下的两名将保持理想/不会工作。
备注:如果我把技术人员与价值“电池”在顶部,那么它将只工作剩下的2将无法工作。
我的最终目标是让所有的技术人员工作,这样我就可以对他们提出条件。
例如,如果我的代理customer有称为“电池”的参数为真,那么具有价值“电池”的技术人员将对其工作,而剩下的2名技术人员将对其工作。
就像这样:
if (agent.batteryProb == true){
((technician)unit).problemsSolved.equals("battery");}
else{
((technician)unit).problemsSolved.equals("batter");
((technician)unit).problemsSolved.equals("batte");}我还添加了我的运行模型下面的屏幕截图。其中您还可以看到ResourcePool的详细信息。

发布于 2022-10-27 20:36:13
这就是你写条件的方式:
agent.batteryProb == true ?
((technician)unit).problemsSolved.equals("battery") :
agent.batterProb == true ?
((technician)unit).problemsSolved.equals("batter") :
((technician)unit).problemsSolved.equals("batte")发布于 2022-10-27 20:29:10
在获取块的资源选择条件下,只能编写一个返回true或false的条件。这解释了为什么执行的总是第一行,而其他行则不执行。
https://stackoverflow.com/questions/74226686
复制相似问题