Local Optimization

I am clearly aggravated. I have been for a while, and I finally understand why.

In the world of systems thinking, it is called Local Optimization. That is where, in a multivariable system I optimise for one variable at the expense of other variables, and subsequently reduce the overall output of the system.

In more understandable business terms, I am optimizing one or more of the means, without regard to the “ends”. As my seventeen year old son put it I am maximizing one benefit without regard for the overall goal.

In organizational management, in a business with multiple business entities or sub-units – we are trying to maximise the profit of each entity, rather that maximising the profit of the whole. In process optimization, we talk about optimising throughput of one subprocess, without regard for the throughput of the whole.

Here are some examples that should resonate with everyone:

1) I spend so much time working to earn money, that I don’t have time to enjoy my wealth.
2) I build an educational system optimized for a specific metric (standardized tests) but have not taught my students how to learn independently.
3) I construct a business enterprise optimized to grow the stock price quarter by quarter, but do not produce anything of value.
4) I build a system of transportation optimized for the least expensive fuel option today, but fail to invest in any other options that will operate when that fuel option is no longer the least expensive.
5) I construct a business culture that maximizes profit by requiring labor costs below a sustainable level including slavery (plantations), illegal aliens (california fruit growers, restaurants), offshoring (IT, Call Centers) but do not consider the impact of these practices on the local, regional, national, or global economy – let alone individuals on either side of the practices.
6) I organize a union that advocates employee wages and benefits above a sustainable level including limiting employers ability to remove non-performant workers but do not consider the impact of these practices on the employers market viability, or the local or regional economies when the employer moves or ceases to conduct business.

What it amounts to is deciding that something that started out as a means to an end becomes the end in itself. It happens when we forget to ask why we started doing something in the first place. We keep on doing it, and in fact, may try to optimize its effectiveness long after it has stopped being useful, or to the point where it starts to interfere with the end itself.

What started me thinking about this was a problem a friend exposed at work. As a consultant at a large corporation, she is currently working with (embedded in) a software development team. She said that software development practices are somewhat ad hoc, and her team have not taken advantage of many tools and techniques that are widely used and easy to adopt. Software development could become more efficient (take less time, cost less money) and produce higher quality applications (less bugs, less operational errors). So why don’t they adopt these techniques?

The answer: Cost optimization gone wrong. In order to reduce expenses, the company slashed training budgets – while training sounds like a luxury, to adopt new software development practices and tools, they would need to level up their employees – or bring in new folks who already do these things. They cannot invest in tooling for these practices. And our infrastructure expense is limited, so they cannot construct new environments to support these practices, because supporting those environments is beyond the budget. So what!

So This! – their capital burn rate is higher, delivering less bang for the buck into the operational units – their expenses are higher – they need more staff, or more experienced (higher paid) staff – and their processes are less scalable, so their staff grows faster. We deliver lower quality software requiring more resources to support and maintain – causing overall expenses to go up, and more resources to be pulled away from capital projects to work on critical corrective actions. And their profit goes down, because as they slow down delivering system capabilities to their operational units, their costs remain higher putting additional pressure on expenses. Meanwhile, they have many systems that are at end of lifecycle, but they have no budget or appetite for replacement – supporting these systems is more costly, because the expertise on older less popular platforms has started to be scarce, and scarcity drives prices higher. They are paying more to get less accomplished on systems that don’t work well, or even support the business model that has changed out from under them over the years.

Local optimization means we stop looking at the big picture when fixing the small picture. When the big picture looks bad, we keep fixing the small picture. Ultimately, the small picture will no longer be relevant, because the big picture will overwhelm it, but the damage might be permanent. I have seen this anti-pattern over and over and there seems to be no end.

No Comments

Post a Comment