2011年9月28日水曜日

日本の飛行機のR&Dの仕組み

日本の飛行機のR&Dの仕組みに関しては、マニュアルがはっきりしないことと、またDevサイドの人の踏み込んだ発言もこれまでなかったことから大きな謎でした。経験談として、
  • 規模30の工場が最適
  • 規模に関わらず修理にかかる平均的な日数は同じ(規模0(30)の工場も規模0(2)の工場も同じ日数で修理が完了する)
  • R&D工場の対象機種を、アップグレードパスの次世代機に変更しても修理工場にダメージをもたらさない。
といったことが語られていました(3番目は私自身の経験でも確かです)。先日のベータパッチにR&D関連のバグがあったことから、R&Dの仕組みをDevの人が説明し始め、Japanese R&Dというスレにもまとめられました。かなり重要な情報だと思うので抄訳してみました。議論の中では「工場の規模」という言葉が下記の二つのどちらにも用いられています。なので、読む際には混乱しないように注意することが必要です。
  • ふつう「工場の規模」という時の数値は、1ヶ月(厳密には30日)間に生産できるR&Dポイントの概数を意味しています。
  • あるターンに(ある1日に)算出されるR&Dポイントの計算に使用されるR&D工場の規模の数値は、 [(active devices + random(30))/30]で、ふつうに使うの工場の規模の数値の約30分の1です。


Michaelさん、ベータパッチのスレではパッチに前後してR&Dに関するレスがあちこちに分散してしまった。R&Dポイントの産出を定義する式が実際にどんなものなのか知りたいと思う。私は、R&D工場の修理が完了すると、実際の機体の生産と同じようにR&Dポイントが産出され、基本的には工場の規模が一ヶ月に産出されるR&Dポイントを規定しているものと推測している。しかし、工場の規模に関わらず、一日に1-3ポイント産出されるという話があったが、一つのスレにまとめてはっきり説明してもらえないだろうか。
R&Dに関するスレをひとつにまとめるのはいい考えだ。ベータパッチのスレでMichaelが言っていたことを引用すると
簡単に言うと
(a) R&D工場は、0からその工場の規模の数値未満のランダムR&D値を産出する。つまり、規模1ならば0、規模2なら0か1、規模3なら0か1か2、規模4なら0か1か2か3、規模10なら0から9のどれかといった具合に。
(b) 次に、ランダムR&D値は10で割られる。10未満のランダムR&D値はどれも0になり、そうでなければ規模10の桁の数値になる。
(c) 工場の修理が完了していれば(b)で算出したランダムR&D値に1を加える。
(d) (c)で算出した数値が3以上でも、3とする。
(d)で算出した数値(1から3のうちのどれかのはず)を飛行機の開発カウンターに加える。カウンターの数値が100を越えると、その機種の生産開始が一ヶ月早まり、開発カウンターの数値は0にリセットされる。
こんなに速いの!完全に修理の済んだ工場はどれも毎日1ポイントを算出するってことは、規模1のR&D工場が10あると、一ヶ月に300R&Dポイントが産出されて.... ほんと?
例えばNymdalarさんが、Accelerating Japanese airframesというスレのポスト#61で彼の経験を報告している。
もし私の理解が正しければ次の4工場が産出するR&Dポイントは
7(0) = 1 
55(0) = 3 
3(0) = 1 
1(0) = 1 
合計で一日に6ポイントになる。つまり16-17日ごとに生産開始が早まることになり、これは実際にゲーム内で起きていることとよく合致している。この場合、規模55の工場一つよりも規模1の工場三つを使う方がもっと効率的にやれそう。さらに、もし規模1の工場を六つ使うなら2週間ごとに早めることができることになる。あなたの想像した通りかな?日本がもつR&D工場の数に限りがあることを考えると、それが問題になりそうだが。
ベータのp8より前とq4以降(訳注;p8にR&D関連のバグがありq4で修正された)にあてはまる仕組みを改めて提示する。前の投稿で抜けていた点を太字で示した。
簡単に言うと
(a.1) あるターンのR&Dポイントの算出に使用されるR&D工場の規模の数値は、機体の生産と同様に、 [(active devices + random(30))/30]。この数値が0の場合と、R&D工場の修理が完了していない場合には、そのターンにその工場はR&Dポイントを産出しない。これはマニュアルにある通り。
(a.2) R&D工場は、0からその工場の規模の数値(訳注;(a.1)項で算出した各ターンごとの規模の数値)未満のランダムR&D値を産出する。つまり、規模1ならば0、規模2なら0か1、規模3なら0か1か2、規模4なら0か1か2か3、規模10なら0から9のどれかといった具合に。
(b) 次に、ランダムR&D値は10で割られる。10未満のランダムR&D値はどれも0になり、そうでなければ規模数の10の桁の数字になる。
(c) 工場の修理が完了していれば(b)で算出したランダムR&D値に1を加える。
(d) (c)で算出した数値が3以上でも、3とする。
(d)で算出した数値(1から3のうちのどれかのはず)を飛行機の開発カウンターに加える。カウンターの数値が100を越えると、その機種の生産開始が一ヶ月早まり、開発カウンターの数値は0にリセットされる。
p8にあったバグで(a.1)項のチェックがされなくなっていたが、修正の結果、R&Dポイントが0という日もあるようになった。質問をしてくれたおかげで、コードのチェックができて感謝している。こういう結果をもたらしたのはバグで抜けてしまっていた '{}'で、検出が困難だったから一週間かけて探すことになってしまった。正しい算定法によると、(b)項により+1される可能性があるが、そのためには少なくとも工場の規模が10以上でなければならない。規模10より小さな工場は(c)項によって1R&Dポイントを得られるに過ぎない。Nymdalarさんが、Accelerating Japanese airframesというスレのポスト#61で報告していた彼の経験だが、上記参照のこと。またR&Dの数値は決まった値ではなく、ランダムが加味されることを考慮しておく必要がある。バグのあったベータパッチでも、規模55(0)の工場は一日あたり1または2または3ポイントを産出していた。
ということは、私の推測していた一日に6ポイントではなくて、一日あたり4-6ポイントと幅があるということだろうか。また工場の規模が30以上なら6ポイントになりやすいのかな。それとも1と2と3ポイントのどれも同じくらいの確率かな。
そして、30(0)だとほとんどの場合3ポイントを算出して、R&D工場の規模としては最適と言っていたが、それは今でもあてはまるのだろうか。それとも1(0)の工場の方がいいのかな?知りたい盛りなので。
そんな風に考えているということは、バグのあったパッチで抜けていた上記の太字の部分の意味をあなたがまだ理解していないからだ。修正済みのコードでは、30(0)の工場は一日に少なくとも1R&Dポイントを産出し、それなりの確率で2ポイント産出してくれる。1(0)の工場は月に1R&Dポイント産出するだけだ。
でも、(c)項によると規模の如何に関わらず修理が完了されてさえいれば一日1ポイントは保証されているんじゃないの?そこが問題だと思う。規模55の工場は一日に1-3ポイントで一ヶ月分合算するとだいたい55ポイントになる。規模1の工場が一日に1ポイント算出することの方が問題だと思う。こういう仕様になっている意味はなんなんだろう。(c)項によると規模に関わらずどの工場も規模30(0)の工場と同じようにふるまって、それが大きな問題なのだと思う。例えば、私が日本側を持ってプレイして1942年5月にさしかかっているゲームを例にすると、生産開始月が1944年1月のFrankのR&Dをしている工場が15ある。いまのところ6工場で修理が始まった(訳注:15のうちの残りの9工場はまだ修理がまったく進んでいないってことでしょうね)。もし私がもっと賢くてすべてのR&D工場の規模を1にしておいたなら、修理の始まった6工場は1(0)になっていてすでにR&Dポイントを産出していたはずだ。1(0)の工場が6つだから一ヶ月に180R&Dポイント!それを続ければ、6工場のR&Dだけで1943年の終わりにはFrankを入手できる。日本には開戦時に30以上のR&D工場があるので、大幅な生産開始の前倒しができてしまう。このゲームをそれを意図しているの?おそらく1945年半ばに生産開始予定の機種を5つくらいなら1943年のうちに生産開始にまでもちこめると思う。(訳注:英語で書かれたDevの人の説明がなかなか理解できないアメリカ人もいるという好例です、このレスは)。
規模1(0)の工場が毎日1R&Dポイントを産出するなんてことはない。(c)項が適用されるのはせいぜい月に2回くらいだろう。random(30)が29か30でない限り、((1+random(30)) div 30)は0になってしまうので、ほとんどの日は(a.1)項の段階をパスすることができないから。
一日ごとのR&Dポイントの産出については上記のレスをみてほしい。一番最初の(a.1)項がベータパッチのp8からq3では抜けていた。今日これからダウンロードできるようになるq4でその点を修正するつもりだ。
みんながR&Dの仕組みを理解できたと思う。でも、実機の生産工場とR&D工場とのあいだには小さな(または小さく見える)違いがある。実機の生産工場が、例えば規模30から2倍の60へと拡張する時には、新しい機械類が次々と運び込まれている間も、生産を続ける。それとは対照的に、R&D工場を2倍に拡張しようとすると(a.1)項により
、新しい機械類の最後のひとつまで据え付けが終わらないとそれまで普通に機能していた工場全体が機能しなくなってしまう。こういった厳密な制限を設けることにした意図はどのへんにあるんだろうか?
現実の世界にもあることとして考えてみよう。昔々、遠くの国(ほんとは20マイルしか離れていなかったけど)のあるプロジェクトのチームリーダーだった私は、スケジュールがきつい時には、研究室の鍵を固く閉め、追加の人手はいっさい受け入れないようにすべきことを学んだ。新たな人が一人加わると、新人をチームのスピードについてゆけるように育て上げるまでベテランの能率は落ち、それ以降もしばらくはチームの和が乱れてしまう。不幸なことに私のチームが2倍にされてしまったら、私も他のすべてのベテランも辞職してもいいように履歴書を書き直すのに忙しく、もっと時間がかかってしまうかもしれない。他方、ソフトウエアではなくハードウエアの生産量を2倍にしなければならないとしたら、お金と人手さえ充分にあれば、既存の生産ラインに並行してラインを増設することにより、生産中のラインの邪魔をせずに済む。こういったことがほんとにコードに意図されているって?おそらくそうではないだろう。しかし、得られた結果は現実世界の出来事としても納得できるじゃないか。
どうやったらR&D工場が一日にR&Dポイントを3も産出できる(近いうちにできるようになる)のか、だれかフローチャートで解説してくれる人はいないだろうか。ゲームがある程度進めば、規模30(0)のR&D工場を所有しているというのはふつうのことだろう。現在の私のゲームにも完全に修理の終了した規模30(0)のR&D工場がいくつもある。
(a.1)項にパスすれば、1か2ポイントが産出される。ただ2ポイントになるのは30分の1の確率でしかないが。
(a.2)項でもう一度、別のランダム数、1か2が生成される。ただし2は(a.1)項で賽の目が奇跡的に2をもたらしてくれた時に限られ、ふつうは1になる。つまり、(a.1)項で1ならば1。
(b)項では(a.2)項で得た数値を10で割る。(a.1)項や(a.2)項で得た数値が1であろうが2であろうが、(b)項のもたらす数値は0になる。私がプレーしてきたり見聞きしたプレーでは必ずそうなっている。完全に修理の完了した規模270のR&D工場を所有しているなどという話は聞いたことがない。この計算が各工場ごとに行われることを忘れないように。一つの工場の規模が270以上にならなければだめで、とんでもない話だ。
しかし、(a.1)項にパスしていると、我々の努力に免じて慈悲深いR&Dの神様はR&Dポイント1を恵んでくださる。
この部分のコード全体を廃棄してもいいんじゃないかと思う。30(0)の規模のR&D工場ならどれも1R&Dポイントを算出するわけで、(b)項の10で割る過程で0以外の数値を得られる見込みは皆無なのだから、
このコードがこうい風につくられたのは、素のWitPでR&D工場が実機の生産工場と同様に一日に規模1ずつ修理されていたからだと思う。素のWitPの工場の修理頻度なら、比較的短期間でとても大きなR&D工場を所有することができる。しかしR&D工場の修理頻度はより低くかつランダムな方向に変更されたのに、このコードはそのまま放置された。この推論が正しいかどうかを明らかにする証拠はないが、そう考えれば現在のコードの奇妙さが理解しやすくなる。
フローチャートはかけないが、これに関しては以前かなり細かく議論されたことがある。でも、そのスレがどこにあるのか今みつからない。かわりに概要を示すことにする。
1944年に生産開始予定の機種のR&Dを行う規模30(0)の工場を手に入れたいと思ったら、
1. アップグレードパスを、目的の機種(かりにPxとする)から生産開始予定がもっとも近いい機種(P1とする)まで逆にたどる。
2. R&D工場の対象機種をP1にし、規模を30まで拡張する。
3. P1の生産開始が迫るまで待つ。
4. R&D工場の対象機種をP1からP2(Pxに続くパスの次世代機)に変更する。
5. その機種の生産開始が迫るまで待つ、以下同様。
6 R&D工場の規模が30(0)になったら、対象機種をPxに続くパスの次世代機(一足飛びにPxではなく、次世代機)に変更する。次のターンには対象をその次の世代機に変更することをくりかえせば、やがてPxが対象機種となる(訳注;ここは試験に出る)。
基本的な事項
A. R&D工場は対象機種の生産開始が近づくほど修理の頻度が高くなる。
B. R&D工場の対象機種を、アップグレードパスの次世代機(一足飛びに未来の世代の機種ではなく)に変更することは、修理工場にダメージをもたらさない。
R&Dに関してみんなが説明してくれた労をねぎらいたい。修理が完了しないとポイントが産出されないという点を除くと、実機の生産工場と同じように処理されているとこれまで思っていた。ありがとう。
現状のコードで問題はないと思うけど。毎日1R&Dポイントを得られれば充分。コードをもっと簡潔にした方がいいかって?その方がいいかもしれないけど、きちんと機能しているのならfixしない方がいいんじゃないかな。30(0)が最適な規模で、それ以上を望むなら270(0)まで拡張しなければならないということが、検証や推測からではなくコードからはっきりと示されたことがうれしい。30(0)の工場が10あれば毎日10R&Dポイントを獲得できてかなり速く進められることは憶えておこう。速すぎると思う人もいるかもしれないが、R&Dを一機種に絞ればとても速くはなるが、他の機種にできることが限られてしまうので、現状でバランスがとれていると思う。変更は望まない。でも、飛行機の在庫数の画面に、開発中の機種にそれぞれどのくらいのR&Dポイントがたまったかが表示されれば素晴らしいとは思う...
たしかに、変更すべきではないね。多数の工場を用意すればR&Dを進めることは容易だし。過去のスレにも、生産開始をかなり早めることができたという報告がたくさんある。R&D工場の対象機種のアップグレードが許されたことで、素のWitPよりもずっと容易になっている。以下の私の主張に賛同してくれなくてもいいが、私はより現実的なモデルにするための変更が加えられるべきだとは思っているので、その理由を説明したい。
1. R&Dの対象機種を次世代機種に変更できる仕様は、技術の進歩を反映しているのだろうから、これに反対するつもりはない。しかし、数世代後の機種に変更できることには問題を感じる。アップグレードパスの途中にある機種をいくつもとばしてA6M3aからA6M8へと変更することは、現実の世界での研究の進め方とはかけはなれていると思う。開発研究者は世代をとばしたりはしないものだ。これは私の感じ方が間違っているのかもしれないが、現状はシステムを悪用しているように感じる。
2. 現状のシステムのままで、次世代の機種に変更する時にR&D工場の規模が小さくなるような変更だけ導入すべきだと思う。たとえば、A6M3a 30(0) -> A6M5 20(0) -> A6M5a 14(0)というように。こうすれば、開発が順次進行してゆく様子と、次第にR&Dが困難になることを反映すると思う。
3. システムをよく理解している人はある機種の生産開始を年余にわたって容易に早めることができているのに、そうでない人たちは開発に長時間をかけている。こういった現状を是正し、より現実的なものにしたいというのが私の希望だ。
規模30のR&D工場の修理が完了するのにどのくらいの時間がかかるか分かる?史実の生産開始時期が遠いほどそのターンに修理が行われない確率が高くなる。ゲーム開始後18ヶ月たってもまったく修理が始まっていないR&D工場があるくらいだ。私は生産開始を早めることを積極的に追求してきたので、規模30以上で完全に修理の完了した工場を2つ(一つは規模55でもう一つは32)所有している。残りは修理中か修理が完了していても規模が5-15程度で、ほとんどは10以下だ。プレー開始後18ヶ月でも、108のR&D工場のうちで完全に修理が済んだのは33しかない。33のうちの多くは規模10以下だ。だから、30(0)の工場を10も所有するなんてことは実現性のあることとは思えない。これでは、上の方のレスで勧められているように順次次世代機を利用する開発は計画倒れに終わる。生産開始が翌月に迫った場合でも、一日に1ずつ修理される実機の生産工場よりはずっと遅いペースでしか修理されないことも言い添えておく。もちろん生産開始が半年後の機種よりは速く修理されてゆくのだが。生産開始予定がいつなのかに関わらず、R&D工場の修理頻度には上限が設定されているんじゃないだろうか。
生産開始予定時期から遠いほど修理されにくいのはWADで、真っ当な仕様だと思う。1945年が生産開始予定の機種のR&D工場が1942年から43年半ば頃に修理が進むなんて期待してはダメ。もちろん、何ポイントかは修理されるだろうけれど。しばらく前のこのスレhttp://www.matrixgames.com/forums/fb.asp?m=2254687 を読むことをオススメする。
ようやくMichaelさんがR&Dについての沈黙を破って、みんなが検証にとりかかれるような情報を与えてくれた。いつごろから修理され始めるのか、あなたもちょうどいいタイミングを会得するようになると思うが、私自身はかなり分かっているつもりだ。あなたはR&Dに積極的だそうだが、工場の規模は30にした方がいい。30(0)の工場を10個揃えることは十分に可能だ。ほかのみんなと同じようにうちでも実現していて、単なる願望ではないよ。
生産開始が翌月でも必ずしも毎日1ターン修理されるとは限らず、修理の頻度には上限がありそうだというあなたの意見には賛成だが、これはWADだし、どうせ翌月生産開始なら大した違いはない。
議論に情熱を注いでくれて、Numdydarさんには感謝する。そのうち時間ができたら、あなたの意見に私からも応えたいと思う。でも、あなたに対して無礼を働くつもりはなくて、より良いシステムを考え出すべきか、現状のシステムを受け入れてその長所を伸ばすべきかという議論の過程だと思ってね。
素晴らしい意見をありがとう。私も以前は規模30に揃えようと試みたことがあった。でも、毎月5-15ポイントでも得られれば、30ポイント得られるようになるまで長いこと待つよりもいいんじゃないかと思って、修理されかけの規模30の工場よりも、修理の済んだ規模15の方を選ぶようになった。生産開始予定が遠いほど修理が遅くなっていることには同意する。また、ゲームにパッチがあたって進歩するにつれて、規模30(0)の工場を手に入れることが容易になるのかもしれないが、問題にしているのはそこじゃない。違ったバージョンでプレイしている人がいるのに「うちではできているのに、どうしてお前の所ではできないんだ」とか「生産開始を一年も早めている人がいるのに、どうしてお前はできないの?」っていうのは、言いにくいせりふだ。あなたがそうだとはいわないけれど、みんなの環境が同じでない状況で、正しい分析をするのはとても難しいと思う。実際、生産開始が翌月でも、私のところで起きているようにしか修理が進まないこともあるでしょう。1943年2月に生産開始予定の機種があって、工場をその次世代機に変更するのを1943年1月まで待っていたことがあった。そうしたら、驚いたことに1月半ば過ぎになってその機種が在庫に現れるようになった。調べてみると、R&D工場がすべて生産工場に転換されてしまっていた。私はホントにがっかりした。そのことがあって以来、機種の変更には細心の注意を払うようにしている。ベータバッチで、R&D工場から生産工場への変更の45日前から色が変わって知らせてくれるようになったことはとても役立っている。
「修理されかけの規模30の工場よりも、修理の済んだ規模15の方を選ぶようになった」ということだが、規模の大きな工場の方が修理の頻度が高いという現象は知っている?もちろん規模が大きいことの不利な点としては、修理すべきポイントが多いのは確か。この二つの相反する関係が見合う点が中間のどこかにあるはずでしょう。以前自分で検証してみたことがあるけど、規模が大きくても小さくても同じくらいの期間で修理が完了することに気づいた。検証したのはかなり前で、現在でも正しいかどうかは保証の限りではないけれど。修理しにくさには規模が関係している。
修理中の部分の数が多い工場ほどそのターンに修理される確率が高くなるのは、修理されるかどうかが修理を要する部分1ポイントごとにダイスがふられて決定されるとすれば、当たり前だと思う。ダイスのふられる回数が多ければ、修理される機会も増えるだろう。しかし、工場の規模のうち修理を要する部分の数が減ってゼロに近づけば、0(1)の工場が修理される確率と同じになってゆくんじゃないだろうか。修理の仕組みに関する限り、どちらも同じ確率だと思う。だからある程度までは大きな工場ほど修理の頻度が高くても、修理を要する部分が0に近づくにつれて、頻度は低くなってしまうはず。生産促進の仕組みについてはよく分かっているつもりだけれど、上記の私の理解が間違っていたとしても驚きはしない。
研究対象の機種のエンジンの在庫が一定数を超えたらR&Dポイントに+1する仕様に変更してみようかとベータパッチ1108q4を出す前に考えていた。これは、試験飛行につかうエンジンという想定で、ボーナスを与えられたらエンジンが一定数減るようにする。しかし元のコードを書き換えてみたら、検証に使用したどのセーブデータでもこの+1が適用されてしまって、一工場が3R&Dポイントを生むようなことになってしまった。これはやり過ぎに感じられたし、ベータパッチ1108q4でバグを修正する前のR&Dが高速に進む状態を再現してしまうみたいだった。個々の工場に+1するのではなく、機種ごとに+1なら妥当だったかもしれない。あと、研究中の機種のエンジンの在庫は実機の在庫としても機能しているので、このボーナスを導入するとさらに無料のプレゼントを与えるようなことになってしまうので、導入しないことにした。
R&D工場の規模と修理との関係について、「ある程度までは大きな工場ほど修理の頻度が高くても、修理を要する部分が0に近づくにつれて、頻度は低くなってしまうはず」というのは違う。修理の仕組みに関連しているのは工場の規模(修理済みと未修理の部分合計)で、これは修理が終了するまで変化しない(あなたが途中で工場を拡張するといった、不利になるような行いをしない限り)。実際、時間が経つにつれて修理される確率はゆっくりと高くなってゆく。というのも、対象機種の生産開始時期までの日数が次第に減ってゆくから。また修理の頻度は工場の規模に依存していると以前からいわれているが、完全に損傷した状態から完全に修理の完了した状態になるのにかかる平均的な日数はすべて同じだ。規模30よりも小さな工場の方を佳しとすべき理由は何もない。もちろん確率論的な理由でふつうは大きな幅がみられるはずで、ある工場は早くに修理が済んでR&Dポイントを産出しているのに、ある工場は平均的なスケジュールよりずっと遅れるということもあり得る。それが人生っていうものだ。そして、この仕組みはあるべき姿をモデル化できていると思う。研究開発の果実はたやすく得られるものではない。まず投資して、時期が来るのを待って、ようやく収穫ができる。さらに、研究開発の仕組みが明らかにされた今となっては、不確実な点は何もない。規模30以上の工場を使えば、最終的に生産開始がいつになるのかだけでなく、次に1ヶ月早まるのがいつなのか日付まで分かる。残された不確実性は修理の過程だけだ。そして不確実性は研究開発にとってはつきものだ。
「修理の頻度は工場の規模に依存していると以前からいわれているが、完全に損傷した状態から完全に修理の完了した状態になるのにかかる平均的な日数はすべて同じだ」という点は、たしかかどうかはっきりしないと思う。私のゲームには1945年後期と1946年前期に生産開始予定の機種を研究開発の対象とする規模0(2)の工場があった。その後まったく修理の始まらないものもあるのに、完全に修理の終わったものもある。規模10より小さな工場をみても、修理が完了しているものと、対象機種の生産開始予定が同じく半年以内なのに修理の完了していない工場もある。もしお望みならデータを提示してもいい。R&D工場の修理に関するコードは未修理の部分の修理を対象としているはずだから、修理済みの部分の規模をチェックしていると考えるなんておかしい。R&Dによって生産開始を早めるかどうか判定するコードは工場の未修理の部分が0でないかどうかをチェックしていると思うので、同じようにR&D工場の修理に関するコードも工場の未修理の部分が0でないかどうかをチェックしていて、修理済みの部分なんかチェックしていないだろう。もちろん、私が理解力不足なためR&D工場の修理頻度に対する理解が間違っていることもありうる。でも、工場の規模が関係していて、未修理の部分の大きさは関係していないという証拠を見せてもらいたいものだ。
「1943年2月に生産開始予定の機種があって、工場をその次世代機に変更するのを1943年1月まで待っていたことがあった。そうしたら、驚いたことに1月半ば過ぎになってその機種が在庫に現れるようになった」そうだが、最新のベータパッチには、月の途中にR&D工場が生産工場に転換されたりしないようにするための仕掛けが盛り込まれている。生産開始が1ヶ月早まって生産可能になっても、Industryの画面のR&D工場の欄で"Prod"か"No"を設定しておくことができる。次世代機の研究をさせるか、生産工場に転換するか、選択できる。
「もちろん、私が理解力不足なためR&D工場の修理頻度に対する理解が間違っていることもありうる。でも、工場の規模が関係していて、未修理の部分の大きさは関係していないという証拠を見せてもらいたいものだ」ということは、あなたの孤独な戦いもこれで終われるね。R&D工場の修理に関するコードに工場の規模が関係しているという証明は、 プログラマのMichaelの領分だ。丁寧に彼に尋ねるといい。バグ取りにかかりっきりになっていたり、そんな話題には全然興味がないね、なんてことがなければ、はっきりと答えてくれると思う。私が99.9(9)%の確度で言えることは、素のWitPの修理に関するチェックのコードはRandom(NumberOfDaysTillPlaneArrival) <= FactorySizeという条件判定をしていて、このFactorySizeというのは修理済みと未修理の部分の合計を意味していた。質問してみなければ、チャンスを無駄にすることになる。失敗から学べるというのも、このゲームの面白さだと思うよ。また「私のゲームには1945年後期と1946年前期に生産開始予定の機種を研究開発の対象とする規模0(2)の工場があった。まったく修理の始まらないものもあるのに、完全に修理の終わったものもある。規模10より小さな工場をみても、修理が完了しているものと、対象機種の生産開始予定が同じく半年以内なのに修理の完了していない工場もある」という点を読むと、あなたは”平均的には”という意味を分かっていないね。R&D工場の修理されてゆく課程は、確率に支配されている。R&D工場の修理について、コイントスを繰り返してある面が上になる事象をある一定の回数出すには、何回繰り返さなければならないかと同じだと考えてみて欲しい。R&D工場の修理の場合、使うコインはかなり偏っていて私たちの望む面が上になる確率はとても小さい。しかもその偏りは時間とともに変化して、すこしずつ望む面が上になる確率が増えてゆく。こういった過程の検証には確率論的な手法が必要で、結論を出すには数回の試行じゃとっても足りない。もし私がベイズの定理の使徒なら、あなたの実施した検証結果から平均値と3シグマ(標準偏差)の範囲とを瞬時に計算して評価してあげられる。でも残念なことに私は分厚い統計の教科書を敬して遠ざけていた方の人間なので、修理頻度が工場の規模に依存していると、修理に要する平均的な期間がその工場の規模にはよらないのはなぜか(ここでは、生産開始予定日までの日数は工場の規模の数値よりもずっと大きいという、暗黙だが当然の仮定をしている)を直感的に説明できるだけだ。もう一つ直感的な説明をしておくと、完全に修理されるまでに要する日数の平均は工場の規模に依存しないけれども、その偏差(とそして信頼区間)は工場の規模が小さいほど小さくなる。工場の規模が1(0)なら上記の非常に偏ったコインでも一回の幸運で修理が完了してしまうことがあるが、規模30(0)の工場では幸運な出目と残念な出目とが打ち消しあってしまって時間がかかる。でも規模30(0)の工場の修理完了までの期間にも偏りはあって、規模30の工場を10個もっていると、なかには早いものも遅いものもあるはずで、それが人生ってもんだ。
平均的な日数ですべての工場の修理が完了せず、工場の規模や工場の所在地によっても修理完了までの日数が影響されている。コードの中味を覗くことのできないプレイヤーがR&D工場の修理についてなにか語るには、不確定の要素が多すぎる。R&Dの促進のコードがひどく込み入っているだけでなく、修理のコードもそうなっていると思う。生産開始予定日が遠いと、修理を邪魔するような仕組みもあるのかもしれない。お互いに確かなことは知らないというのが、正しい。お互いにいろいろ見てきて、それにもとづいて違った結論を導いた。お互いにある点では正しいしある点では間違っているのだと思いたい。自分の解釈が正しいというお互いの考えは交差しないから、この辺で終わりにしよう。これは、一方が正しくて他方が誤っているということを意味しない。似たようなデータから違った解釈が導かれた、同じデータをありふれた科学的な手法をつかって分析してもそうなったということだ(訳注;負け惜しみ的ではあっても、この人の最後まで自分の風変わりな・おそらく誤っている主張を撤回しようとはしない姿勢に感心)。
R&D工場にマウスオーバーすると、R&Dが何%進んだか表示されるようになった。
それはq4で加わったのかかな?
[1108q4] 
Fixed Restored fully repaired factory needed before R&D starts [MEM] 
Changed Updated RD totals to reflect actual R&D available for a/c and engines [MEM] 
うちのゲームでは、川を越えて味方のヘクスに移動する時に攻撃が強制される問題をfixされるのを相手が嫌がっていて、まだp8のままなんだけど。
「 R&D工場にマウスオーバーすると、R&Dが何%進んだか表示されるようになった」というなかの、%の表示は次に1ヶ月早まるまでに何%進んでいるかを示している。
WitP Tarckerにそれを導入しようと思う。スクリーンショットはTrackerのスレを見てね。それと、連合軍側のR&Dについて質問がある。連合軍側にもR&D工場があって、そのことに反対するつもりはないけど、連合軍のR&D工場はすべて修理済みで、連合軍機は予定より何ヶ月も早く生産が可能になってしまう... 
連合軍の工場はR&Dポイントを産出しない。これは日本だけの仕様。
WitP AE Trackerを発表したすぐ後、あるユーザーから知らされたんだけれど、ゲームも新しくなったばかりだったし、あなたに尋ねたりはしなかった。しかしR&Dの話題だからついでに尋ねることにしてみる。連合軍側のR&Dの成果を見ることが出来るけど、これはAIについてだけのこと?オンマップでない工場で起きたことだけど。
たしかに、AIは実機の生産工場とR&D工場と両方もっていて、R&Dを実施できる。でも人間のプレーヤーには関係ない。
プレーヤーによる変更の余地がなければ、シナリオ開始時にR&D工場を設定されている日本の機種は、それを考慮に入れて、史実よりすこし遅く生産開始月を設定されるべきかもしれない。現状では、史実の日本と同様にプレーヤーが大してR&Dに投資しなくても、すべての機種が史実どおりかいくらか早めに生産開始できるように設定されている。
これはそうだね。ゲーム内で生産開始がいつからになるのか、計算してみたことはないけれど。誰か時間のあるひとが、R&Dの効果を加味して日本の機種の生産開始をいつに補正すべきか計算してみてくれるといいな。
そうする必要はないと思う。今のままでいいでしょう。プレーヤーが手を入れなければ、生産開始が1ヶ月でも早まる機種はないんじゃないかな。シナリオ1のR&D工場の様子は、風で拭き散らかされたような状況だし。AI相手は別の話。AIはチートをするけど、それはそれでOK。
計算は簡単で、完全に修理の終わった工場は月に30までR&Dポイントを産出する。悠いつの問題はいつ修理が完了するかっていうこと。小さな工場ばかりのようだが、中には大きな工場もある。例えば、Ki-84aを対象とする規模55の工場がある。これは2-3ヶ月ごとに生産開始を早めることができる。Tonyの規模22の工場も機能すると思う。Tojoについてはどうかな。生産開始予定が1942年9月なのに規模8しかないから、ゲーム内で意味を持つにはもっと大きな工場でないと。

0 件のコメント: