芋出し画像

ナラティブ経枈孊に぀いお⑫名もなき「文化起業家」の初期衝動Pythonで玐解く、感染するナラティブず経枈因果の双方向ルヌプ

〈倧芏暡な経枈事象を予枬するずき、私たちは䜕が原因で䜕が結果かを芋極めようずする。
デむノィッド・ヒュヌムが叀くから指摘したように、䞖界の朮流は時に、有名ではない「少数の人」が攟った蚀葉の感染力ナラティブから始たり、実䜓経枈を動かしおゆく。
そのようにしお動いた経枈が、今床はその物語をさらに匷固にしおいくずいう双方向の因果関係が存圚する。
察照実隓が䞍可胜なこの耇雑な䞖界を、Pythonコヌドずずもに芋おゆきたいず思う。〉

私たちは䞍景気や䞍況、長期停滞ずいった倧芏暡な経枈事象を予枬し、察応しやすくするために、倧芏暡な経枈事象を定矩づける際に圹立぀経枈ナラティブを芋極め考慮するために、䜕が原因で䜕が結果かを芋極めなければならない。

確かに経枈孊者たちは因果性には泚意を払うにも関わらず、新しいナラティブの発明を因果的には重芁芖しないが、私は、ナラティブの発明には因果性が存圚するずいうだけではなく、新しい感染性のナラティブもたた経枈事象を匕き起こし、経枈事象はナラティブを倉えるずいうように双方向性があるずいうこずにも留意したい。

1742幎にデむノィッド・ヒュヌムは、
「少数の人に䟝存するものは、おおむね偶然、あるいは秘密で未知の原因によるずされる。
倚数の人から生じるものは、しばしば決定的で既知の原因によるものずされる」
ず述べおいる。

それぞれ新しいナラティブはある個人の心の䞭や数人の共同䜜業ずしお生じるため因果性のむノベヌションず芋るこずができ、ナラティブを生じさせる個人を「文化起業家」ず呌んだ経枈史研究家のゞョ゚ル・モキむアがヒュヌムのこのこずばに遡るのも理解できる。

感染性の新しいナラティブを䜜る「少数の人」の圱響を理解するのは、ナラティブ経枈孊の基瀎を圢成するのに䞍可欠である。

「少数の人」の圱響は時に、感染性の新しいナラティブづくりを通じお䜜甚するが、感染性ナラティブを発明する「少数の人」は通垞は有名ではなく、誰かは分からないこずが通垞である。

このシリヌズの日蚘で以降、ナラティブの深局構造をより理解するため経枈ナラティブがviralになる因果的な芁玠を怜蚎する。

さお、ナラティブず経枈の因果の向きを蚌明するのは難しく、
䟋えば、2009幎のビットコむンに察する熱気は䜕からかのかたちでビットコむン䟡倀䞊昇に貢献したのかビットコむンの䟡倀増加はニュヌスの䞭の物語や数孊理論進歩に察する論理的な反応に過ぎなかったのか
ずいう問いに私たちが答えるこずは困難だろう。

倧芏暡な経枈経枈事象の因果の方向性を確立するずきの問題は、䞖の䞭の経枈条件を正確にシュミレヌトする察照実隓が通垞できないずいうずころにあり、私たちは、自然実隓ずみなせるような出来事を探すくらいしかできない。

1912幎、ヘンリヌ・W・ファヌナムはアメリカ経枈孊䌚䌚長挔説で、経枈孊者が察照実隓を行えないずいう問題に觊れ、それでも政府の政策の誀りなどによりランダムなショックは起きおいるので経枈史を研究すれば、経枈孊者が因果性を掚枬できるず述べ、さらには「経枈孊者は、他の人々に実隓をやっおもらえおいるので、本圓に運が良い」
ず述べおしたった。

次回のこのシリヌズの日蚘では、経枈孊者たちがこれたで詊みおきた準、察照実隓などに぀いお芋おゆくずころから始めたいず思う。

# ナラティブ経枈孊の双方向ルヌプ・シミュレヌション

# 1. 初期状態倖生詳现・環境蚭定
narrative_infection_rate = 0.05  # 物語の感染力最初は埮小な確率
economic_value = 10.0            # ビットコむンなどの初期経枈䟡倀
people_opinions = {}             # 人々の心の蟞曞型デヌタ

# 2. 瀟䌚を構成する10人の「名もなき個人」を準備
for person_id in range(1, 11):
    people_opinions[person_id] = "冷静"

# 3. ある日、1人の「文化起業家名もなき少数」が物語を発明する
people_opinions[1] = "熱狂"
print("【初期衝動】名もなき文化起業家がナラティブを発明したした。")

# 4. 時間の経過4日間のナラティブず経枈の盞互䜜甚ルヌプ
for day in range(1, 5):
    print(f"\n--- 経枈実隓 {day} 日目 ---")
    
    # 【因果の方向1】ナラティブの感染熱狂が䌝染する
    current_enthusiasm_count = 0
    for person_id in people_opinions:
        if people_opinions[person_id] == "熱狂":
            current_enthusiasm_count += 1
            
    # 熱狂しおいる人がいれば、ただ冷静な人に感染確率が波及する
    if current_enthusiasm_count > 0:
        for person_id in people_opinions:
            if people_opinions[person_id] == "冷静":
                # 感染力が高たる珟圚の熱狂者数に応じお確率的に感染
                if current_enthusiasm_count * narrative_infection_rate > 0.1:
                    people_opinions[person_id] = "熱狂"

    # 【因果の方向2】ナラティブから経枈事象ぞの圱響
    # 熱狂者の数に応じお、経枈䟡倀が䞊昇する
    economic_value += current_enthusiasm_count * 2.5
    print(f"珟圚の経枈䟡倀: {economic_value}ナラティブが経枈を抌し䞊げたした")
    
    # 【因果の方向3】経枈事象からナラティブぞのフィヌドバック双方向性
    # 経枈䟡倀が20を超えるず、物語の感染力が跳ね䞊がるアトラクタぞの匕き蟌み
    if economic_value > 20.0:
        narrative_infection_rate = 0.30
        print("【臚界点突砎】䟡栌高隰のニュヌス自䜓が、物語の感染力を爆発的に高めたした")

print("\n【実隓終了時の瀟䌚の脳内状態】")
print(people_opinions)

最初の蚭定1〜4行目
 narrative_infection_rate感染率ずいう倖生詳现倖偎のルヌルず、economic_value経枈䟡倀ずいう内生倉数内偎で倉化する数倀を定矩しおいたす。people_opinions = {} は、人々の心のなかに「冷静」か「熱狂」かのスタンプを抌すための空の箱蟞曞型です。

名もなき10人の誕生7〜8行目
 for person_id in range(1, 11): を䜿っお、1番から10番たでの人間を瀟䌚に生み出し、党員に最初は「冷静」ずいう初期状態をセットしおいたす。

文化起業家の出珟11行目
people_opinions[1] = "熱狂"。これがヒュヌムの蚀う「少数の人」です。1番の人間が突然、ビットコむンや新しい思想の物語を信じ始めたす。

双方向のルヌプ14行目〜
 for day in range(1, 5): で、物語が瀟䌚を駆け巡る「時間」を衚珟しおいたす。

1぀目の因果 
if people_opinions[person_id] == "熱狂": で熱狂者の数を数え、その熱狂が他の「冷静」な人にじわじわず感染しおいきたす。

2぀目の因果
 economic_value += ... で、熱狂した人の数だけ、ビットコむンの䟡栌経枈が䞊昇したす。
ナラティブが経枈を䜜った瞬間です。

双方向性の完成36行目〜
if economic_value > 20.0:。ここが矎しさの極みです。䟡栌が䞊がったずいう「事実経枈事象」が、今床は物語の感染率を 0.30 ぞず暎隰させたす。「倀䞊がりしたから、さらに物語が信じられる」ずいう双方向の因果の眠です。

珟象を数理モデル化する

内生倉数ず倖生詳现倉数
経枈䟡倀や人々の心理は、システムの䞭で互いに圱響し合っお倉わる「内生倉数」です。
䞀方で、最初の感染しやすさ0.05はシステムの枠倖から䞎えられる「倖生詳现」です。
「䜕がシステムの䞭で勝手に動く倉数で、䜕が倖から䞎えられた定数か」を芋極める芖点は倧切ですね。

参照点のアトラクタ匕き蟌み
経枈䟡倀が 20.0 を超えた瞬間、瀟䌚党䜓のシステムのギアが匷制的に切り替わりたした。
数理理工孊では、システムを特定の状態ぞず匷力に匕きずり蟌む䞭心点を「アトラクタ」ず呌びたす。ナラティブ経枈孊ずは、「蚀葉によっお瀟䌚に新しいアトラクタ熱狂の枊を䜜り出すプロセス」ず蚀えたす。

感染動態SIRモデルの思想を借りお
今回のコヌドは、医療理工孊や情報ネットワヌクのパケット拡散で䜿われる「感染症数理モデルSIRモデル」の考え方を借りた簡易版です。
「噂の拡散」も「りむルスの拡散」も、数理的には同じ数匏埮分方皋匏で蚘述できるずいう事実は、情報理工孊の共通蚀語の䞀぀を私たちに瀺しおいたすね。

 æ•°ç†çš„ギミックぞ

このPythonプログラムで甚いた「蟞曞型デヌタの曎新」ず「条件分岐による動的な確率倉曎if economic_value > 20.0」は、工孊・物理孊史における「サむバネティクスフィヌドバック制埡理論」および「カオス理論のバタフラむ効果」の系譜に属しおいたす。

1940幎代にノヌバヌト・りィヌナヌが提唱したサむバネティクスは、「出力された結果が、入力ぞず戻っおくるルヌプ構造フィヌドバック」を扱いたす。䌝統的な経枈孊は「原因A → 結果B」ずいう盎線的な因果関係ニュヌトン力孊的な決定論で䞖界を芋がちでした。
しかし、本コヌドのように「結果B経枈䟡倀の䞊昇が原因A感染率を倉化させる」ずいう非線圢なフィヌドバックを導入した瞬間、システムは単玔な予枬を拒む「カオス耇雑系」ぞず倉貌したす。

ヒュヌムが指摘した「少数の人1人の文化起業家」ずいう埮小な初期倀のちがいが、フィヌドバック・ルヌプを通じお瀟䌚党䜓の巚倧な経枈停滞やバブル巚倧なアトラクタを匕き起こすずいう構造、気象孊者ロレンツが発芋した「ブラゞルでの蝶の矜ばたきが、テキサスで竜巻を匕き起こす」ずいうカオス理論をPythonの基瀎文法が蚘述しおいたすね。

Python歎の浅い私の今回の孊び

シラヌの蚀う「人間の心の揺らぎ」や「経枈のドラマ」ずどのように重なっおいるか

① 舞台装眮のセット1〜4行目

narrative_infection_rate = 0.05  # 物語の感染力最初は埮小な確率
economic_value = 10.0            # ビットコむンなどの初期経枈䟡倀
people_opinions = {}             # 人々の心の蟞曞型デヌタ

ここでは3぀の「倉数デヌタを memory に入れおおく箱」を䜜っおいたす。3行目の {} は「蟞曞型dict」ずいう文法です。
:ここは、ただ誰も隒いでいない「静かな䞖界」の初期蚭定倖生詳现です。物語の感染力narrative_infection_rateは、ただ 0.055%ずいう、歎史の隅に隠れた埮小な初期倀にすぎたせん。

② 瀟䌚の登堎人物を䜜る7〜8行目

for person_id in range(1, 11):
    people_opinions[person_id] = "冷静"

for 文は「反埩繰り返し」の文法です。range(1, 11) は「1から10たで」ずいう意味になりたす。぀たり、1番から10番たでの人間をルヌプで順番に呌び出しおいたす。
そしお、蟞曞型の箱people_opinionsの䞭に、1: "冷静", 2: "冷静"... ず、10人分党員に「冷静」ずいうスタンプを抌しおいたす。
デむノィッド・ヒュヌムの蚀う「倚数の人」が瀟䌚に誕生したした。党員がただ物語を知らず、合理的に、そしお「冷静」に瀟䌚を芋぀めおいる状態です。

③ 文化起業家の「初期衝動」11〜12行目

people_opinions[1] = "熱狂"
print("【初期衝動】名もなき文化起業家がナラティブを発明したした。")

先ほど党員「冷静」にした蟞曞型デヌタのうち、「1番の人間だけ」を遞び、䞭身を "熱狂" に䞊曞き曎新しおいたす。これが、ゞョ゚ル・モキむアの蚀う「文化起業家名もなき少数」の誕生です。
0人䞭9人が冷静な䞭、たった1人1番の個人の脳内で「新しいナラティブ物語」が発明され、熱狂の火が灯りたした。ここから䞖界の因果が倉わり始めたす。

④ 時間の経過ず、1぀目の因果物語の感染15〜28行目

for day in range(1, 5):
    print(f"\n--- 経枈実隓 {day} 日目 ---")
    
    current_enthusiasm_count = 0
    for person_id in people_opinions:
        if people_opinions[person_id] == "熱狂":
            current_enthusiasm_count += 1

倧きな for day in range(1, 5): の䞭で、1日目、2日目 ず時間が進みたす。その䞭で、再び別の for ルヌプを䜿っお、10人の蟞曞を䞊から順に芋、if条件分岐を䜿っお「今、"熱狂" しおいる人は䜕人いるか」ず数え䞊げおいたすcurrent_enthusiasm_count += 1。思想のドラマ:瀟䌚の「感染動態」を芳枬するステップです。1日目は、先ほどの文化起業家1番の1人だけが熱狂しおいたすね。

â‘€ 感情の臚界点ず、感染の波及30〜34行目

    if current_enthusiasm_count > 0:
        for person_id in people_opinions:
            if people_opinions[person_id] == "冷静":
                if current_enthusiasm_count * narrative_infection_rate > 0.1:
                    people_opinions[person_id] = "熱狂"


if 文が3重に重なりたす。
「もし熱狂者が1人でもいたら> 0」→「ただ冷静な人を探しお」→「【感情の臚界点チェック】熱狂者数 × 感染力が、基準倀0.1を超えおいたら」→ その人のスタンプを "熱狂" に倉える、ずいう凊理をしおいたす。
ナラティブが「口コミ」や「SNS」で他人に䌝染しおいくプロセスです。最初は、熱狂者が1人しかいないため、1 × 0.05 = 0.05 ずなり、基準の 0.1 を超えられたせん。
぀たり、最初は簡単には感染しない冷静な人々は物語を無芖するずいう心理の壁が、if 文によっお衚珟されおいたす。

⑥ 2぀目の因果ナラティブから経枈ぞ38〜39行目

    economic_value += current_enthusiasm_count * 2.5
    print(f"珟圚の経枈䟡倀: {economic_value}ナラティブが経枈を抌し䞊げたした")


+= は「珟圚の倀に、右偎の蚈算結果を足し算しお䞊曞きする」ずいう文法です。熱狂しおいる人の数current_enthusiasm_countに 2.5 を掛けた分だけ、経枈䟡倀ビットコむンの䟡栌などが䞊昇したす。
「原因ナラティブ熱狂」→「結果経枈事象䟡栌䞊昇」ずいう、1぀目の因果の矢です。物語を信じた人々が実際に行動賌入や投資を起こすこずで、実䜓経枈の数字が䞊方に匕っ匵られたす。

⑩ 因果の逆転経枈からナラティブぞの逆流42〜45行目

    if economic_value > 20.0:
        narrative_infection_rate = 0.30
        print("【臚界点突砎】䟡栌高隰のニュヌス自䜓が、物語の感染力を爆発的に高めたした")

条件分岐 if economic_value > 20.0: が、経枈䟡倀のパラメヌタヌを監芖しおいたす。もし䟡栌が 20.0 ずいうラむンを超えたら、最初に決めた倖生詳现ルヌルであるはずの narrative_infection_rate感染力を、0.05 から 0.3030%ぞ動的に曞き換えおしたいたす。
シラヌの蚀う「双方向性」です。「䟡栌が䞊がった結果」ずいう経枈事象が、ニュヌスや噂ずなり、今床は「物語の感染力を6倍に跳ね䞊げる原因」ずいう因果の逆転が起きおいたす。感染力が 0.30 になったため、次の日からは、先ほどの⑀のステップ感情の臚界点チェックを突砎できるようになり、瀟䌚党䜓が「熱狂のアトラクタ匕き蟌みの枊」ぞず䞀気に飲み蟌たれおいきたす。

Pythonの文法における if や for は、単なる蚈算の道具ではありたせん。

if は、人間が「ある䞀線臚界点を超えたら、態床をガラリず倉える認知の枠組み」です。
for は、名もなき矀衆がひしめき合う「瀟䌚の空間」や、刻䞀刻ず倉化する「歎史の時間」です。

䞀芋耇雑な瀟䌚珟象を、シンプルな文法の組み合わせモデルに分解しお玐解いおきたした。

ここたで、読んで䞋さり、ありがずうございたす。

今日も、頑匵り過ぎず、頑匵りたいですね。

では、たた、次回。

※芋出し画像は、黒田枅茝の「倏野遊び」からです😌

いいなず思ったら応揎しよう