ゼミの風景

おそらくお気楽はしのすけゼミの諸風景

Top | ゼミ2024卒 | ゼミ2023卒 | ゼミ2022卒 | ゼミ2021卒 | ゼミ2020卒 | ゼミ2019卒 |
ゼミ2018卒 | ゼミ2017卒 | ゼミ2016卒 | ゼミ2015卒 | ゼミ2014卒 | イベント | About

戦争の数理(4年ゼミ)

f:id:okiraku894:20151104123813j:plain
f:id:okiraku894:20151104131534j:plain
本日1人だけ,戦争の数理.
微分方程式にオンリーにかじを切ってしばらく.
本日は「援軍」があった場合の状況をやろうとしたらしい.
が,式を導出して終わったようだったので,その先をどうするか,について考えようとした.
でもその前に得られた解が怪しくも思えたので,
ちょっと手を動かしていたら,一般のw次法則のバージョンですっきりと解が得られてしまった.
お,これなら色々評価しやすそうだ.その先,頑張ってね.

って,例えば,一次法則ではいつ援軍が現れても結果は変わらないのだが,
w次となると戦争が早く終結する援軍のタイミング,
あるいは見方の総損害が最小になる援軍投入のタイミング,
なんてものがあるようなないような感じだからだ.
で,ちょっとシミュレーション.あれ,やはり最初から援軍分あったほうが良いのか?
終結までの被害も初めに多いほうがやはり小さい.う~ん,ま,そうか.
f:id:okiraku894:20151104191338p:plain

REM [Lanchester with Reinforces]
REM Ver. 2015/11/04
REM 増援のタイミング:reintime
REM 増援の数:reins

LET tmax=30
LET smax=100
SET WINDOW -.05*tmax,tmax,-.05*smax,smax
DRAW axes(tmax*.1,smax*.1)

SET COLOR MIX(2) 0,0,1
SET COLOR MIX(4) 1,0,0
LET count=0
DO
   LET sa0=smax ! A軍の初期兵士数
   LET sb0=sa0*.85 ! B軍の初期兵士数
   LET al=.1 ! A軍の武器効率
   LET be=.15 ! B軍の武器効率
   LET dt=.01 ! 時間の刻み幅Δt
   LET t=0
   DO
      LET sa=sa0-be*sb0*dt ! A(t+Δt)=A(t)-βB(t)*Δt
      LET sb=sb0-al*sa0*dt ! B(t+Δt)=B(t)-αA(t)*Δt
      SET LINE COLOR 2
      PLOT LINES: t,sa0; t,sa
      SET LINE COLOR 4
      PLOT LINES: t,sb0; t,sb
      LET sa0=sa
      LET sb0=sb
      IF t=reintime THEN
         LET sa=sa+reins
         SET LINE COLOR 2
         PLOT LINES: t,sa0; t,sa
         LET sa0=sa
      END if
      LET t=t+dt
   LOOP UNTIL sb<=0 OR sa<=0
   INPUT  PROMPT "増援のタイミング":reintime ! 0を入れると実行終了
   INPUT  PROMPT "増援数":reins
   SET COLOR MIX(2) 0,0,1-count
   SET COLOR MIX(4) 1-count,0,0
   LET count=MOD(count+0.2,1)
LOOP UNTIL reintime=0
END