(图片来源网络,侵删)
在竞争激烈、客户期望不断变化的现代商业动态中,企业不断优化运营的需求变得至关重要无论你是一家刚刚起步的初创企业还是一家成熟的企业,接受优化哲学都可能是停滞和可持续增长的区别在这篇博文中,我们深入探究了为什么优化你的业务流程和资源不仅仅是奢侈品,更是长期成功的必要条件从提高效率和最大限度地提高生产力到最小化成本和有效地分配资源,优化的好处是多方面的,影响深远首先,让我们深入研究一下在汽车制造中为汽车喷漆的例子此场景可作为优化决策所涉及复杂性的实际说明,其中效率和准确性至关重要二进制喷漆车间问题在复杂的汽车制造世界中,生产过程中的每一步都在确保效率和质量方面发挥着至关重要的作用其中一个关键步骤是喷漆,汽车在上路前进行最后的美学处理想象一个场景,不同类型(A到F)的汽车以特定的顺序到达喷漆厂的传送带上,如下图所示:每辆车都需要涂一层白色或黑色的底漆为了简化这个场景,让我们考虑一个最小的工作示例:• 每种车型(A至F)按顺序正好到达两次• 每种类型的一辆车必须漆成白色,而另一辆车则必须漆成黑色• 到达车辆的顺序无法调整• 更改颜色会消耗时间和资源这里的目标是最大限度地减少颜色变化的次数,同时确保每种车型都涂上白色和黑色油漆该场景概括了所谓的二进制油漆店问题,这是一个经典的优化问题,说明了企业在满足特定约束的同时尽量减少资源使用时面临的挑战现在,想象一下自己坐在驾驶座上,负责决定哪辆车涂上了白色,哪辆车漆成了黑色按照代表每种车型的字母顺序,制定策略,以尽可能少的颜色变化为每个字母上色,确保每种车型都涂上白色和黑色油漆挑战这个任务的大多数人通常会得出相同的结论:需要4个颜色的变化下面是他们通常如何给汽车喷漆:现在,您的任务是向同事解释解决方案流程,以指导他们完成挑战考虑他们需要采取哪些步骤来有效地解决这个问题以下是我在这项任务中挑战的大多数人倾向于制定的一种常见方法:• 首先将第一辆到达的车型涂成白色• 尽可能长时间地使用白色油漆,直到第一种车型第二次到达• 过渡到黑色油漆,并尽可能长时间地使用它• 重复这种交替模式,直到每辆车都喷漆算法和启发式这种方法我们称之为贪心算法( Greedy Algorithm )或贪心启发式算法( Greedy Heuristic )贪心算法是求解优化问题的一种简单而直观的方法它在每一步都做出一系列局部最优选择,希望找到全局最优换言之,在每一步中,它都会选择最佳的可用选项,而不考虑未来的后果贪婪算法通常快速且易于实现,但它们可能并不总是为复杂问题提供最佳解决方案许多公司已经使用了类似的方法,尤其是在Excel工作簿或VBA宏中构建任务时,旨在获得快速实用的解决方案我们可以通过在Python中实现所描述的贪婪算法来利用它的力量这使得我们可以有效地应用所定义的规则来对到达的汽车类型进行着色,即使对于较大的序列也是如此通过将解决问题的策略转化为代码,我们可以自动化流程并加快资源使用的优化将上面的代码应用于我们的ADEBAFCBDEF序列,我们得到了预期的四种颜色变化数学优化启发式求解方法的一种替代方法,如提出的贪婪算法,是数学优化通过数学优化,我们将视角从规定规则以产生解决方案转变为精确定义和描述我们试图解决的问题通过数学公式化问题,我们可以以严格的方式阐明目标、约束和决策变量这种方法使我们能够更系统地探索问题空间,利用数学技术有效地确定最佳解决方案下面,您将找到二进制油漆店问题的数学表示,为此我们设计了贪婪算法:要理解数学优化的重要性,特别是与使用启发式方法相比,您不需要阅读甚至理解数学模型的细节,您可以直接跳到结果但是,如果您对模型公式感兴趣,这里有一个简短的解释第一步,我们引入两个不同的集合:I和J集合I包含我们序列中的所有位置,按顺序编号,而集合J包含每个唯一的车辆类型,由字母A到F表示为了定义到达喷漆车间的车辆类型的顺序,我们引入集合(i,j)∈IJ该集合中的每个元素对应于序列中的特定位置i,指示哪种车辆类型j∈j到达该点对于我们的ADEBAFCBDEF序列,(1,A):IJ表示到达位置i=1的汽车类型j=A,以及(2,D):IJ指定到达位置i=2的汽车类型j=D,依此类推在我们的数学符号中,Xi体现了核心决策过程它代表了在我们的序列中关于位置i∈I所使用的颜色的选择例如,X3=1表示将位置3处的车辆漆成黑色,而X3=0表示使用白色控制我们的涂装车间问题的基本规则是,每个车辆类型j∈J必须被精确地涂一次黑色因此,对于每个车辆类型j∈J,我们在(i,j)∈IJ上的所有Xi上求和,并强制该和恰好为1,以确保遵守由方程( 2 )表示的规则例如,对于序列ADEBAFCBDEF,从该规则导出的方程如下所示:为了确立我们的目标,我们的目标是尽量减少序列中的颜色变化数量这一目标是通过检查我们序列中的每个位置i∈I并评估其后续位置i+1是否指代不同的颜色来实现的,如方程(1)所示当Xi−Xi+1等于1或−1时,这意味着颜色的变化,使我们的目标增加1相反,差值为零表示没有颜色变化我们的首要目标是最大限度地减少颜色变化的总数,因此有必要将我们的目标定义为最小化函数有了问题的精确数学表示,我们可以使用现成的优化求解器来解决我们的油漆车间问题,并在数学上证明了它的最优性,这保证了在我们的问题的约束范围内不存在最优解最佳解决方案在解决优化问题后,我们获得了颜色变化的最佳数量,在我们的例子中得到了值2此外,我们推导了导致下面有色序列的决策变量Xi的最优值:过渡到现实世界的挑战:多车喷漆车间问题在我向观众展示二元喷漆车间问题经验时,经常会有精明的人从后面开始给给定的序列着色,最终得出两个颜色变化的最优解这一观察结果提供了有价值的见解:当以启发式的方式解决问题时,在指定了达成解决方案方法的情况下,可能有多种可行的解决方案途径此外,这些解决方案之间可能存在很大差异然而,关键问题仍然存在:我们如何辨别达成解决方案的最有效方法?需要注意的是,从后面开始只对这个特定的序列有效此外,重要的是要记住,这里讨论的例子是对现实世界问题的简化事实上,我们处理的是一个更大的到达汽车类型序列,其中每种类型可能到达任何次数此外,我们必须满足每种类型的汽车数量的具体要求,哪些汽车需要涂成白色和黑色我们可以很容易地调整Greedy算法,以满足特定的颜色需求:对长度为128的到达车辆类型的随机序列运行上述代码,得到31种颜色变化的着色结果现在,让我们继续调整我们的数学模型,以适应现实情况的复杂性值得注意的是,我们在自适应的数学模型中保留了相同的目标函数(方程(1)与方程(4)相同)然而,为了适应颜色需求,我们引入了两个新的约束条件首先,通过将等式(2)中的等式约束替换为等式(5)中对黑色车型的需求,我们确保djblack车辆被漆成黑色其次,为了解决对白色汽车的需求,我们使用了与黑色汽车类似的方程式(方程式(6)),但总和超过1−Xi在解决我们的适应模型后,我们得出了只需要11种颜色变化的解决方案通过在我们的例子中使用数学优化,我们观察到关于颜色变化的决策有了显著的改进这种增强意味着减少了颜色更改所需的时间,提高了资源利用率,并可能在给定的时间范围内降低成本或提高生产力转换到其他问题类型数学优化超越了二进制喷漆车间问题的范畴,展示了它在各种问题类型中的有效性虽然我们讨论的问题相对简单,但数学优化使我们能够有效地解决大型复杂的现实问题它的应用横跨不同的领域,包括农业、物流、调度、能源系统等北京天演融智软件有限公司(科学软件网)是GAMS软件在中国的授权经销商,为中国的软件用户提供优质的软件销售和培训服务
0 评论