力拓集团位于盐湖城郊外的铜、金、钼、银矿(原名肯尼科特犹他铜矿)已运营超过120年。该矿开采出的金属经过钻孔、爆破、选矿、浮选、冶炼和电解精炼等工序,纯度从低于1%提升至高于99%。这一浓缩过程会导致约10%的金属被丢弃。金属产量每提高1%,每年就能增加高达2000万美元的收入,因此,每一次产量提升都必须经过定义、衡量、分析和控制。JMP统计软件在影响生产的关键决策中发挥了至关重要的作用。
本次演示和JMP软件演示展示了我们如何通过创建线性回归模型来识别关键因素并量化其对回收率和质量的影响,从而做出一些重大决策。这些决策包括:购置价值100万美元的新增设备,花费100万美元维护旧设备,以及改用价格更高的试剂(每年成本300万美元)。
嘿,大家好。我叫乔伊·莫滕森,就职于力拓集团,一家全球矿业公司。我目前在力拓位于犹他州的肯尼科特铜矿工作。接下来,我将分享几个JMP软件中“拟合模型”功能的使用案例……以及我如何利用该功能帮助公司做出一些关键决策,从而最大限度地提高矿石回收率和整体收益。
让我先简单介绍一下我的演示流程。首先,我会用通俗易懂的方式向非矿业人士解释 Kennecott 的运作原理。然后,我会讲解我需要使用统计软件验证的三项索赔。我会解释我为什么使用拟合模型,以及标准化或平衡数据以确保公平比较的重要性。我还会谈到数据科学家和数据管理员的双重角色。接下来,我会进行演示,并可能根据时间安排,在 JMP 中切换演示内容。
首先是肯尼科特矿。这是肯尼科特矿的鸟瞰图。这个矿坑已经开采了120多年,坑边堆积的矿石都是那些没能进入选矿厂或选矿厂的废料。但你可以看到,在过去的120年里,我们在落基山脉的肯尼科特矿几乎堆起了一座小山。
矿石或废料的认定取决于其中铜、辉钼矿(在本次演示中我将多次简称其为钼)、金或银的含量,也就是初始含量。如果符合要求,则需要进行钻孔爆破,然后用铲子和卡车将物料运送到破碎机,再通过紧邻筛网的传送带送至选矿厂,我们的案例研究将在那里进行。
选矿厂之所以叫这个名字,是因为它不仅要将矿石研磨成细粉,提高产量,还要进一步浓缩矿石,以便送往冶炼厂。例如,铜的含量可以从大约0.5%提高到25%,辉钼矿的含量也可以从大约0.04%提高到85%。浓缩倍数是原来的2000倍。
在这个过程中你会损失很多。这里存在改进的机会,也是所有供应商介入并与我和我的同事们讨论他们的产品将如何帮助我们,以及我们需要如何使用统计软件来验证这些声明的地方。
在流程的下游,我们还有一个冶炼厂,但我不想过多地分散大家的注意力。我们来看看这些说法。首先是产能的说法。他们声称,如果我们更换新的炉排和/或衬板,产能就能提高5%。这对我们来说至关重要。这相当于每年1亿美元的收益,所以我们必须确保这个说法属实。他们是如何计算的呢?他们自己使用了一些软件,一些基于采矿技术的软件来验证这个说法,我们将在自己的工厂进行测试。
仅我们四条生产线中的一条,每六个月就要更换一次炉篦,这相当于一百万美元。一年两次,四条生产线,如果我们更换炉篦和衬垫供应商或分销商,那就意味着要花费八百万美元。这是我们需要承担的风险。
接下来是浮选。矿石磨碎后,我们会将其送至浮选机分离矿物。有人声称,如果使用化学品 X 或添加剂 Y,可以将回收率提高 1%,实验室测试甚至显示可以提高 5%。但我们至少需要 1% 的提升才能确定其真实性,并且还要考虑额外添加化学品的成本是否值得。因为添加一种化学品每年可能要花费 1000 万美元,而 1% 的提升就相当于 2000 万美元。有时两者之间的差距非常小。
最后,我要展示的最后一个案例是这样的:以前钼厂的配置总是比现在的配置好。当你需要浓缩那么多钼时,有六种不同的方法。这就像苏斯博士的图画一样,如果你亲眼看到,如果我把图带到工厂,你会发现有很多不同的电路可以使用,可以互换,可以先用这个,再用那个。找出最佳配置至关重要。这关系到每年数百万美元的收益。
我为什么使用拟合模型?嗯,你真的需要把所有事情都标准化。很多人会说弗洛伊德·梅威瑟是史上最伟大的拳击手。他从未输过。有很多拳击手的战绩也和他差不多。但更重要的是,他不可能和迈克·泰森打。他们的体重级别完全不同,这既不公平,也没什么看点。你肯定不想让领先优势这么大。
让事情变得有趣的是戏仿,以及这个特定级别的比赛。你还按性别划分体育运动。当然,你可能听说过那种每年在嘉年华上让黑猩猩和人类打拳击的比赛。这不公平,对吧?他们根本不在一个级别。你必须根据正确的级别来划分比赛。
以下是您将看到的案例研究中的示例。在吞吐量模型中对硬度进行归一化。我们已经对 50 种不同的矿石类型进行了分类和测试。因为,首先,如果您正在试用一套衬板,而您遇到的矿石非常软,那么您看起来会觉得这套衬板性能非常好。但事实并非如此。这仅仅是因为您遇到的矿石较软。
在回收模型中,如果试验期间送入浮选厂的矿石品位远高于实际值,就会使这种特定化学品的性能看起来远优于实际值。矿石品位、粒度以及其他因素(我会逐一解释我们进行标准化处理的因素)都会影响最终结果。我们需要明确化学品 X 或部件 Y 本身的影响。
同样,对于这种钼冶炼厂的配置也需要进行类似的分析。不仅仅是配置本身,还有其他因素会影响钼的回收率,从而使最佳配置在众多可能影响钼回收率的因素中脱颖而出。
在开始演示之前,我最后要说明一点:数据清洗有两种方法。你可以使用 JMP 中的本地数据过滤器,实际上,你会看到我经常用到它。我喜欢本地数据过滤器,因为有时候你会忘记事先过滤数据。你也可以事先过滤数据,这也能帮你节省时间,尤其是在你需要反复进行数据清洗的情况下。所以,最好事先过滤数据。
此外,我还要向你介绍一种叫做冶金表的东西,因为我的背景实际上是冶金工程,它也能帮助你在建立模型之前使你的回答更有意义。
最后还有一个小故事。我们花了四年时间,和数据科学家一起尝试构建一个机器学习模型,但工程和数据科学的结合最终失败了,主要原因是很多时候你不得不接受这样一个事实:你没有所需的数据。你没有足够的高质量数据来构建这样的模型,尤其是在我们尝试使用流式分析器上的 20 分钟快照时。
最好还是从这个“拟合模型”功能开始,它虽然不如其他功能那么花哨,但至少是可解释的,而且不会受制于错误数据,因为它是实时的,我可以清理它,而且它的数据是可信的。
首先,要最大化吞吐量。目标是每小时铣削吨数最高,但实际上是为了超越冶金工作台。这是我们冶金工作台的快照。这里列出了各种不同的工件类型及其基于实验室测试的预期吞吐量。这就像拳击比赛中的重量级一样。我的回应将基于相对于冶金工作台的性能,而不是整体性能,因为MZ1H的性能波动很大,有时非常慢,有时又非常难。你可以看到,如果加工的是非常软的门,吞吐量几乎可以翻倍。
当然,我们还要考虑我们付出的努力程度。有时候,我们并不是磨机的瓶颈。这些磨机要等待上游矿山的物料,所以它们会故意放慢速度以最大限度地提高回收率。这里是 SAG 1、SAG 2、SAG 3 和 SAG 4。我说的 SAG 指的是半自磨。我不想带你们去上矿物加工课程,但为了方便理解术语,当我展示数据集时,SAG 指的就是这个意思。
现在,我要打开我的数据集。在这里,找到我的……很快。如果可以的话,找到数据集。把它移到这里。第一个数据集是吞吐量。这是月度数据。之所以是月度数据,是因为另一个重要的筛选条件是,机器会将货物运送到仓库,而仓库的容量非常大。并非所有货物都会在同一天或当天通过仓库。
确保不进行不恰当的比较的最公平方法是创建一个足够大的数据集,以便能够捕捉到输入变量的各种变化。我将进入“分析”菜单,然后选择“拟合模型”。我将查看 SAG 1 的合格率。我已经知道衬管寿命(包括其起始和终止时间)需要进行归一化处理。还有一个我之前没有提到的因素。
我们付出了多少努力,或者说,我们在电机限制下运行得有多努力。格栅,无论是大型格栅还是超大型格栅,我们目前正在使用的最大型格栅,都至关重要。此外,还有一个辅助破碎回路,它的开启或关闭状态,以及开启时间的百分比,都可能产生影响。我认为,所有这些因素都至关重要。
我点击“运行”。所有模型特征都使用默认设置。然后我从这里开始,问自己:“嗯,这对我来说合理吗?” 确实合理。我有点惊讶,我的碎石机居然没有产生任何影响,但事实就是如此。我把它移除了,因为根据这个效果总结,它产生影响的概率只有 1%。所以我把它移除了。现在有些东西通过了测试,但结果很接近。我得到了一个相当不错的拟合总结,R 平方值达到 0.53。线性寿命是唯一一个可能没有真实概率的因素,但也很接近了。
我打算说:“我想进一步分析这些数据。” 我要用最小二乘均值图来分析。这能很好地表明,如果我使用小颗粒,合格率能达到 88%,而如果使用大颗粒,合格率能超过 100%。如果我改用大颗粒,合格率和吞吐量都会提高 12%。但我需要验证一下,看看它是否真的总是如此。我们来验证一下。
好了,回到这里。我要回去说:“这是线路 1。”为了演示方便,我已经预先做好了其他线路。这是线路 2 的样子。它也没有采用碎石机,而是采用了其他因素。但是,坡度大小对 SAG 2 的影响并不大。这是为什么呢?幸运的是,我手头有这个数据集,它告诉我,这里只有 3 个月的数据,而其他 45 个月的数据都是使用小坡度的。现在测试还处于早期阶段,现在下结论还为时过早。
我第一次介绍的另一个功能是左侧的本地数据过滤器。想象一下,如果你是一名工程师,假设有一个工程师团队正在决定是否更改格栅尺寸。你们都会查看 JMP 的输出结果,然后说:“我们来添加一个不同的过滤器,让每个人都能判断哪个结果更公平。” 因为很多时候,事后人们会抱怨这些计算没有考虑到这样或那样的情况。比如,有人可能会说:“我认为你不应该把那三个月的数据也算进去,因为当时我们正努力寻找备用电机,这样比较不公平。” 这就是一种过滤方法。
另一种筛选同一数据集的方法是,根据电机故障情况进行分类,然后筛选掉这些情况。我这里反其道而行之,剔除了所有电机故障月份的数据。这是第 3 行的输出结果,现在我们可以看到衬板寿命的影响更小了。我会把它移除。我保留它只是为了说明它没有影响。但破碎机运行时间确实会产生影响,而且一旦我移除衬板寿命这个因素,它的影响可能会更大。
差别有多大?嗯,不知何故,在这条生产线上,碎石机的效率提升了16%,也就是说,如果碎石机100%开启,相比0%开启,产量就能提高16%。当然,还有大小格栅的更换,这是我们最想做的决定之一,更换后产量能提高14%。这非常可观。我们几乎可以肯定SAG 2也会有同样的效果,所以我们应该继续推进。
接下来是SAG 4,我们还没有用这组数据进行大型小型格栅测试。我们之前只在SAG 1和SAG 3上进行过试验,还没有移动过它。我们刚把它放到SAG 2上,还没准备好把它移到4号生产线,因为我们发现4号生产线的情况完全不同。功率对SAG 4的影响微乎其微。它配备了一个更大的环绕式电机,而且似乎对碎石机的敏感度最高,甚至比SAG 3还要高。因此,保持碎石机运转可以提高产量。
这促使我们进一步研究为什么4号生产线与1号至3号生产线差异如此之大?影响其产量的因素与1号至3号生产线截然不同。因此,我们需要对这台磨机的基本原理进行更深入的研究,我们之前也做过类似的工作,例如降低磨机转速,并进行了大量测试。但正是由于我们看到的这些差异,才促使我们进行更深入的调查。
最后再做一个研磨演示,然后我就要开始讲解恢复过程了。这次是不同供应商之间的对比。对于同一组衬垫(尺寸不变,只是衬垫不同),最好的方法是进行配对测试。所有测试如果采用配对测试,结果都会得到显著提升。例如,如果两个回路完全相同,那么你可以分别测试在SAG 1和SAG 3上安装ME衬垫前后的效果,以及在SAG 3上安装Vega衬垫前后的效果。
关键因素在于您在SAG 1和SAG 3上的努力程度,或者说您在多大程度上达到了设备极限。我们知道卵石破碎机的运行时间很重要,因为它对SAG 3的影响很大,而对SAG 1的影响则不大。至于SAG 3的衬板类型,我们只能说它可能确实起到了一定的作用。SAG 3的性能比SAG 1低了3%,而SAG 3的性能却比SAG 1高了近6%。这相当于9%的产量提升,足以说明“我们或许应该试用一下ME公司生产的另一套衬板”。
我之前也提到过功效检验。在最小二乘均值图中,你还可以进行功效检验,看看结果是否真实可靠。只需运行功效检验,它就会告诉你:“0.8 或更高肯定不是假阳性。如果低于这个值,你可能只是看到了假阳性。在结果出来之前,你肯定需要进行进一步的检验,以免过早下结论。”
现在我们来看一下铜的回收。现在我们讨论的是部件 X 和化学品 Y。回收率指的是我们送入选矿厂的铜量减去选矿过程中剔除的尾矿量。我们来看演示。等等,不好意思,那是成品。我去这边找找。这是数据集。不好意思。哦,找到了。
这是数据集。这是班次数据,因为我们拥有每个班次的可靠数据。每隔20分钟,我们会对您的进料、尾矿和精矿流进行取样,以记录其变异性,从而计算您的回收率、研磨粒度、进料量、矿渣品位、无硫铜或不可回收铜的含量、铜捕收剂和钼捕收剂的使用量以及氰化物用量:所有这些重要因素。
我要演示一下模型。我要讲的是……这是两种化学物质:5160 和 Mo120。它们很重要。实际上,这是两个小部件。这叫做泡沫消除器,但它也是泡沫消除器和磁铁的组合。我们把它们作为一个整体安装。这些是现有的或经过试验的设备。
我需要一个针对粉末粒度和研磨度进行标准化的参数。如果一次测试中使用的物料粒度与另一次测试中的物料粒度差异过大,那就不公平了。这必须纳入测试考虑范围。我最感兴趣的是实际的铜回收率。非硫铜是另一个需要考虑的因素。如果它已被氧化,则无法流动。如果非硫铜的含量存在差异,则需要将其纳入考虑。
氰化物用量可能会影响回收率。当时我们并不确定,但最终却发现了一些令人惊讶的结果。每行每小时的产量也很重要。这是一个关键的决策点。其余内容都是围绕这个主题展开的,是我为了进一步测试而进行的分类。但就我现在要做的案例研究而言,我只想补充一点。我确信这些因素将会产生决定性的影响。
运行一下。我们还没有栅格模型。虽然现在的模型已经相当不错了,但我打算进行局部数据过滤,让它变得更好。这是实际的铜回收率。我发现这里有很多异常值,我可以立即清理这些数据,只需说:“我对回收率低于 80% 的数据不感兴趣,因为工厂出了问题。” 也许我们漏气了。这是一种泡沫浮选工艺,我们通过产生气泡来吸附我们想要回收的矿物。这需要非常精细的平衡。很多时候,你会遇到一些你无法控制的因素。
泡沫用户。我原本期望更高。好吧,这是怎么回事?我要看看这里,然后说:“泡沫用户分布情况如何?”到底是怎么回事?1100% 的安装率是不可能的。我知道安装率只能在 0% 到 25% 之间。这会促使我重新查看数据,然后说:“我可能犯了 Excel 里那种常见的错误,比如你向下滚动 10 天,结果发现里面包含了 10 天的乱码。”
完成上述步骤后,泡沫消除器确实能起到作用。还有一些其他因素。因为我是工艺工程师,所以我也更懂得如何清理数据。我这里正在查看 Mo120。根据我的参数估计,我看到了三种不同的状态。在 Mo120 中,有 Int 状态。Int 不是我感兴趣的状态。我感兴趣的是化学物质是处于开启状态还是关闭状态,而不是处于开启或关闭状态的过渡阶段。
我还没完全完成。我正在计算每行每小时的产量(吨)。我知道这些数据听起来很复杂。我想要的是 500 到 2500 吨。这是每行能控制的最低产量,也是每行能控制的最高产量。这相当于每小时 2000 吨的波动范围。
你仍然可以以最大的波动幅度运行这些行。但如果你这样做会发生什么呢?我将进行参数估计,这将告诉我我需要知道的一切。这也是“拟合模型”功能如此强大的原因之一,因为它具有可解释性。我可以清晰地揭示问题所在或所有这些因素的影响,并以非常易于理解的方式进行量化。
Mo120,无论开启还是关闭,要么损失0.5%,要么增加0.5%,也就是1%的提升。这种化学品能带来1.3%的提升。无论是否使用泡沫分离器,都能带来0.7%的提升。铜头灰度值是一个标准化因子。0.5和0.6之间的差异相当于1%的回收率差异,而我们的铜含量范围通常在0.4%到1%之间。显然,我们根据铜头灰度值进行标准化是正确的。
研磨粒度方面,可以控制在 0% 到 20% 之间,再加上 50 目,或者换句话说,就是 400 微米或更大粒径的物料含量。0% 到 20% 的范围意味着研磨粒度造成的损失为零,或者高达 20 倍的 0.4,也就是 3.2% 的损失。我希望我没算错。28% 的损失,不好意思。
无硫铜。我发现我还可以更好地平衡一下。我添加了一些数据。如果我说:“0.3 不是实际值。我知道 0.03 是最大值。这个范围才合理。”我的模型可能会更好。这个模型的妙处在于它能给出范围。它能显示你的数据所在位置。我的数据集中仍然有 2300 行匹配,而我最初的数据集是 2600 行。它还能告诉我过滤掉了多少数据点,这非常重要。
继续往下看,它还告诉我,不可回收的铜含量确实很重要。我需要平衡这部分。我还需要查看氰化物,然后说:“哇,我每吨可以用0-20克氰化物。” 再说一遍,20乘以0.2,如果我把氰化物用量加满,回收率就会损失4%。也许我应该把它限制在每吨5克,看看是否还能达到我需要的质量,因为氰化物对质量的要求更高。其余的化学品都是以回收率为导向的,为了节省回收率,它们会限制我能获得的优质化学品的用量。
停留时间的影响看似微不足道,但你也要考虑到乘以的单位。这才是最重要的。500 和 2500 之间的差别,是 2000 吨。2000 乘以 0.001,就意味着回收率损失是 2% 还是 0%。
那么,级联百分比就是你运行能够最大限度提高回收率的过程控制逻辑的时间比例。100 倍就是 0.5%。运行这种控制逻辑已被证明可以提高 0.5% 的回收率。这并不多。它是所有这些因素中最小的。然而,它也是所有这些因素中最不受限制的,对吧?
其他这些东西都需要花钱。有些化学品每年要花掉400万美元,所以了解它们是否能帮你节省1%的成本(也就是每年2000万美元)非常重要,如果能节省的话,就值得使用。但如果不能节省成本,你就不应该使用它们,而应该进行更多测试。
我这里还有一个测试需要验证,那就是钼工厂。我会直接打开我的钼工厂数据集,并解释一下钼工厂有很多不同的处理方法。但我最想向大家展示的是,使用三个月滚动平均值才是最佳方案。这看起来可能不太公平或奇怪。但钼工厂的响应时间或滞后时间非常长,所以这个问题才会如此具有争议性。
在钼厂里,人们常说,谈论宗教或政治比讨论生产线配置更安全。这是一个沉重的话题,因为很难看出不同配置的影响孰轻孰重,所以各种猜测层出不穷。因此,我会采用拟合模型。我使用的数据集包含了超过十年的数据。我可以使用回收的金属表,也可以使用钼尾数据。
让我直接回到正题……当然,这就是我的工作。我会问:“这是钼尾矿吗?”它的最佳用途是……在所有配置中,哪种最好?原料级,这实际上是钼厂的原料级,也就是我之前提到的工厂的成品级。有多少吨钼经过,最终成品级是多少?我们就从这里开始,因为我知道我接下来要讲的就是这个。
接下来我讲解一下过滤器。我再举个例子,如果你是一名工程师,想象一下有十位工程师和你一起审核数据过滤方法,确保其公平性。首先,我选择的是钼尾响应。当然,我也可以使用表格恢复,它本身就是一种恢复模型,但我选择钼尾响应是因为它更简洁。如果我有时间,我会详细解释这两种模型的区别,以及为什么一种比另一种更简洁。但我即将得到的 R 平方值约为 0.7。我会解释原因。
我对钼含量大于 1.2 的尾矿不感兴趣,因为我们本来会回收利用,把这些尾矿收集起来重新送回生产系统。那样做会扰乱工厂的正常生产。任何高于 1.2 的钼含量都肯定会扰乱工厂的生产,你不会认真考虑,或者你会绕过钼厂。有时候钼的价格不是像今天这样每磅 20 美元,而是 5 美元,你甚至都不能认真对待。如果你得到的饲料级钼含量低于 1.2,你也不能认真对待工厂的生产,所以你需要过滤掉那些含量过低的饲料级钼或尾矿级钼。
现在,我的 R 值已经达到 0.64 了。接下来我还需要筛选什么呢?我之前提到过,作为重要的归一化因子,为了确保比较的公平性,最重要的因素之一就是:钼厂的目标品位是多少?就我们而言,钼的纯度必须达到 45% 或更高才能出售。因为我已经筛选掉了这很大一部分数据,所以现在我的 R 平方值模型大约是 0.7,而所有这些因素都很重要。
更重要的是,我将查看最小二乘均值图,并详细展示该模型中后三种配置远优于前三种配置。当然,每种配置也都得到了充分的验证。它们都使用了大约 10 个月的数据,因为这是一个……实际上,看起来总共 170 个月的数据集中,有 136 个月的数据被用于构建该模型。
这里有很多数据,足以说明这些配置确实会对每天钼的损耗量产生显著影响。我之所以选择尾矿等级作为更合适的指标,是因为它从市场营销的角度来看更容易理解。这样一来,我就可以直接用更直观的计算结果来说明损失,比如:“我知道尾矿等级0.6或0.5与0.9之间的差异,或者0.1级的差异,每天大约会造成4万美元的损失,这相当于工厂每天的运营成本。”而这两种配置之间的差异,每天则约为16万美元。
这会产生巨大的影响,尤其是在有人可能拥有足够票数的情况下,如果没人意识到应该恢复到之前的配置,那就更不应该这么做了。除非你作为流程工程师能够运用数据科学证明,否则你不应该恢复到之前的配置。它远逊于表格中的最后三种配置。
希望大家喜欢这篇文章。希望你们从中有所收获,并能在日常使用JMP的过程中运用这些技巧。祝大家JMP使用愉快,一路顺风。我想就此打住吧。我估计时间已经到了。谢谢大家。