开发者

How to program a complex set of interrelations?

开发者 https://www.devze.com 2023-03-22 00:45 出处:网络
First, I\'m sorry about the title, that was the best I could come up with. What I mean is something like, a program that tells me that when A goes up, B goes down, which makes C go up, which increase

First, I'm sorry about the title, that was the best I could come up with.

What I mean is something like, a program that tells me that when A goes up, B goes down, which makes C go up, which increases the likelihood that D and E will go down, sending F straight up and so on.

A couple people told me to look into Linear Programming, but it doesn't sound right because I don't want to find an answer ('solve for x to find the best way to whatever'), I want to change the value of one metric and see the ripple effect across other, connected metrics.

For example, suppose I have a factory and I want to estimate the impact a raise for the workers of开发者_Go百科 one sector will have. A raise of 10% will increase sector morale by X, sector productivity by Y and increase costs by Z. This will force us to raise the price of our product to P, if we want to maintain our profit of Q, which might get us out of some stores and actually decrease profit by R.

Now, a raise of 20% over 2 years will increase sector morale by A, sector productivity by B and increase costs by C, but will lower morale from other sectors by D, unless...

I think you can get the idea. What I want is to figure out how to program the underlying network that makes all that happen, based on any relevant input (for example, what would have to change if I wanted to increase sector productivity? I type in the new value for productivity and watch the appropriate connected values update by themselves).

If this is indeed the domain of Linear Programming, could someone provide examples or an explanation centered around that model? I'm having a hard time seeing it.

Thanks a lot.


I would try to visualize this with a weighted directed graph, where the nodes are things like sector morale and sector productivity and the edges indicate when a change in the one will cause a change in the other, e.g.

sector morale ----> sector productivity

You can also weight the graph, so that if a p% increase in moral creates a n*p% increase in productivity, then you have

sector morale --n--> sector productivity

When you change one value, following the arrows to change other affected values.

One advantage of this paradigm is that you can follow consequences more easily. That is, X affects Y if and only if there is a directed path from X to Y, which is useful if, for example, you don't know how morale directly affects profit, but you know how morale affects productivity and how productivity affects morale. Even better, if profit affects morale, then you have a nice feedback system that will tell you how an initial change in one area can cause subsequent (smaller) changes in the same area.

0

精彩评论

暂无评论...
验证码 换一张
取 消