Total Pageviews

2019/07/06

[閱讀筆記] Thinking in Systems: A Primer (4/9)


  1. 你要時時思考,如果 A 引起 B,有沒有可能 B 也會影響 A。當有人告訴你,因為人口成長導致貧窮,你應該問問自己,貧窮如何造成人口成長。你不該根據靜態世界來思考,而是該用動態的世界。你應該停止尋找誰該為這件事情負責,而是該開始問 “what is the system?”。透過 feedback 的概念,可以讓你了解系統組成元素間的互動行為。
  2. 在 complex systems,balancing 與 reinforcing feedback loop 是會同時發生的,stock level 拉扯的方向會是衝突的;系統也不會只有一個 stock,填滿一個 stock 的決策,可能是讓另外一個 stock level 排乾所導致。因此,complex systems 不僅僅是保持穩定、呈現指數型成長或平穩地朝向目標邁進。
  3. 以暖氣裝置為例,假設你將室內溫度設定為 20 度,當室內溫度低於 20 度時,就會啟動左邊的 feedback loop,將室內溫度提升到所設定的 20 度;但是與熱咖啡 / 冰咖啡的溫度一樣,咖啡溫度會慢慢趨近於室溫,房子會有縫隙,逐漸將熱氣散掉,故會啟動右邊的 feedback loop,將室內溫度逐漸下降到接近室外溫度 (房屋的隔絕效果越好,溫度下降速度越慢)。當溫度低於設定溫度時,室內溫度可以透過暖氣快速提升 (下方上圖);溫暖的室內溫度,則會緩慢地下降,接近室外溫度 (下方下圖)。
  4. 在真實世界裡,上述的例子,兩個 feedback 並非獨立運作,而是同時運作。當暖氣機開始幫房間加熱的同時,熱氣也會因房屋的空隙而導致室溫下降。但是暖氣會持續供應,使其保持提供的熱氣大於外洩的熱氣,使得室溫能夠接近我們所設定的期望溫度。
  5. 上述暖氣的例子,與嘗試要將有破洞的水桶裝滿水一樣。破洞將掌管整個 feedback loop,當注入水管的水越多,對於破洞施壓的壓力越大,反而會讓流掉的水越多。相同的,如果我們希望盡速讓室內溫度提升,就必須讓暖房速度大於暖氣外洩的速度。暖氣將室內溫度提升到設定溫度是需要時間的,當暖氣外洩的越少,暖房速度就會越快、屋內就會越舒適。
  6. 根據 feedback loop 回饋的資訊所做的決策,僅能影響未來的行為,不能改變系統現在的行為,輸入 (行動) 與輸出(結果) 間一定會有延遲時間 (delay)。以訂貨為例,當我們發現庫存不足時 (information),你下訂單 (decisoin),並不會馬上到貨 (level up stock)。
  7. 由於根據 feedback loop 提供的資訊所做的決策,只能影響系統 future behaviors,你無法馬上看出決策所產生的效果 (即無法影響系統的 current behaviors)。所以,如果你要盡快讓室溫提高到 18 度,你就必須稍微調高設定的溫度;如果你想要盡快清償債務,你就要提高你每次償還的本金加利息的還款金額;如果你想要盡速提升整個團隊的人數,招募進來的人數必須大於離職人數。換言之,你必須要了解系統中所有重要的流向 (important flows),否則你會對系統的行為感到訝異
  8. 庫存管理的的 balancing feedback loop 一定要設定好目標,列出影響 stock level 的重要的流入或流出流程 (inflowing or draining processes),並做出補償 (compensate)。否則,feedback prcess 產生的結果,會高於或低於預期的 stock level。
  9. 我們從暖氣機的例子,可以看出有兩個 balance feedback loop,一個是暖氣機偵測到室內溫度 < 設定溫度時,暖氣機就會啟動,使室溫提升到設定溫度 (heating loop);另外一個則是當室內溫度 > 室外溫度時,會隨著房屋個隔絕設計好壞來決定溫度下降的速度 (leaking out loop)。然而,每個 feedback loop 都會它的 breakdown point,例如當室外溫度下降到零下五度,超過暖氣機的負荷,即 cooling loop > heating loop (heat leak 增加)
,此時室溫就會達不到設定溫度;當室外溫度逐漸上升,heat leak 減少,室內溫度就會逐漸接近暖氣的設定溫度。
  1. 由上述暖氣的例子可以看到,在真實的世界,feedback loop 會同時發生,並非獨立發生
    1. 當 heating loop > cooling loop 時,室內溫度會上升 
    2. 當 heating loop < cooling loop 時,室內溫度會下降 
  2. 全球的人口數也是如此,,會有兩個 feedback loop 同時發生,決定人口的增長
    1. 當出生率 > 死亡率時,人口總數會增加
    2. 當出生率 < 死亡率時,人口總數會減少 
  3. Dynamic equilibrium (動態平衡):以人口總數為例,當出生率 > 死亡率時, reinforcing loop dominate 系統的行為,導致人口總數呈現指數型成長 (exponential growth);但是當出生率開始下滑,最後出生率 = 死亡率時,此時 reinforcing loop 就不再具有重大影響力,進入動態平衡的狀態 (dynamic equilibrium)。
  4. Dominance shifting:當某個 feedback loop 對系統有重大影響,此 loop 就對系統行為具有 dominant。以暖氣為例,當室外溫度不斷下滑,在隔絕不良的房屋中,熱氣會不斷地流逝,暖氣機無法有效供暖時,此時就是 heating loop < cooling loop;但是當室外溫度回暖,暖氣機能夠有效供暖時,此時就變成 heating loop > cooling,dominance loop 就從 cooling loop 變成 heating loop,這就是所謂的 dominance shifting。
  5. 在複雜系統裡,除了同時會有一個以上的 feedback loop 會同時運作外 (ex. reinforcing loop 與 balancing loop 同時運作),dominance loop 也會不斷地改變 (ex. 有時候 reinforcing loop 比較強、有時候 balancing loop 比較強)。
  6. 我們每天在報章雜誌看到的經濟預測、國家預算編列、天氣預報、未來地球暖化等議題,如果你想探究每個系統的情境,你需要問以下幾個問題
    1. 有哪些驅動因素 (driving factors) 有可能會影響系統? (例如出生率與死亡率會影響人口 system)
      1. 我們會建立各種測試情境 (scenario),檢視有哪些驅動因素會影響系統。最終,你需挑選一個最有可能發生的測試情境。
      2. 這個問題不好回答,因為這是在猜測未來,然而未來的本質就是不確定。儘管你有強烈的想法,覺得應該是這樣,還是要等未來真的發生了,才能證明你的想法是對的。
      3. 動態系統研究 (dynamic systems studies) 並不是設計來預測未來會發生什麼事情 (predict what will happen),而是用來探索會發生什麼事情 (explore what will happen)
    2. 當確認驅動因素後,會如何影響系統的行為? (例如出生率與死亡率是否如我們想像的,真的對 population level 產生影響)
      1. 第二個問題比較科學,用來驗證我們所建立的系統模型。用來確認我們是否有抓住系統的動態性,是否能了解系統的行為,例如出生率與死亡率的交互影響,會對人口 stock 產生的影響。例如出生率 > 死亡率,會導致人口成長;出生率 < 死亡率,會導致人口減少;出生率 = 死亡率,會導致人口停滯。
      2. 系統動態模型 (system dynamics models) 用來探索可能的未來,以及詢問如果會怎麼樣的問題 (what if questions)
    3. 有哪些因素影響驅動因素? (例如有什麼因素會影響出生率? 有什麼因素會影響死亡率?)
      1. 出生率與死亡率可能會影響經濟、環境與社會,反過來說,經濟、環境與社會等因素,也可能會影響出生率與死亡率
      2. 例如經濟表現較好的國家,會影響人口,較富裕的國家通常擁有更好的醫療照顧,新生兒擁有較低的死亡率 (outflow rate);但是,通常也是擁有較低的出生率 (inflow rate)。如之前提到的,增加stock level 有兩種,除了提高 inflow rate (i.e. 出生率) 以外,減少 outflow rate (i.e. 死亡率) 也是個辦法。
  7. 雖然不同的系統,一定擁有不同的驅動因素,但是系統間一定會有一個共同點:擁有類似的 feedback loop 結構,系統的 stock 一定會被 reinforcing growth loop 與 balancing death loop 所掌管。無論是人口、鋼鐵廠、車床、渦輪引擎等等,一定會變老、老化。
  8. 即使系統間擁有完全不同的外在表徵,但卻會擁有類似回饋結構 (feedback structure) 的系統,會產生類似的動態行為 (dynamic behaviors)
  9. 人口與經濟發展兩者或許乍看之下不太相仿,但是兩者都有 reinforcing loop 讓人口與經濟產生指數型成長;但是。兩者也都會有老化的問題,例如熱咖啡逐漸冷卻,與室溫降低、輻射物質衰退、人口老化、經濟下滑類似,每一種下滑,都是 balancing feedback loop 的結果。
  10. 庫存的控制並不是一件容易的事,但是你必須了解他是如何形成的。並不是車商是笨蛋,而是因為他們無法掌握即時的資訊,由於系統延遲導致他們的決策無法立即反映到庫存的變化。車商一來不知道客戶未來的購買意向,當他們下更多訂單時,也不知道是否要繼續。即便是他們下了訂單,也無法看到立即的反應,這樣的資訊欠缺性與系統延遲是非常常見的狀況。試想你要沖澡時,熱水器透過長長的熱水管,混合著熱水與冷水衝出你的蓮蓬頭,有時候就會有忽冷忽熱的情形。
  11. 書中以汽車經銷商的庫存管理為例,有庫存量 (stock)、流入量(inflow, 工廠生產交付)、流出量(outflow, 銷售賣給客戶)。在銷量逐漸成長的狀況下想維持庫存並滿足未來可能的訂單,加入三種時間延遲的變化
    1. 感知延遲 (perception delay):經銷商的主觀認識,通常在銷量變化初期不會立即作反應,而是分析過去一段時間內的資料來判斷是否為真實趨勢或只是短期波動
    2. 反應延遲 (response delay):當趨勢明確需要調整訂單時,也不會一次一口氣將訂單調整到位,而是分次部分調整,以此來謹慎確認趨勢
    3. 交貨延遲 (delivery delay):從工廠收到訂單到實際生產交付給經銷商的時間。這也是整個系統中,最重要的 delay,因為這種 delay 是你無法直接控制。

No comments: