阿部ブログ

日々思うこと

香港攻略作戦に伴う瀬島龍三の潜入偵察と興和機関による情報工作

2012年03月22日 | 日記

1941年10月12日、支那派遣軍参謀長、後宮淳中将は第23軍に対して香港攻略計画の命を下し、同時に、香港興亜機関に対しても攻略の側面支援計画を命じた。
興亜機関は、陸軍の支那通、岡田芳政中佐が率いた組織であり、その任務は謀略工作によって日本軍の香港攻略を側面から支援することと、香港における情報収集であった。

興亜機関は1941年にその活動を開始したが、その命名の親は、なんと栗林少将であった。
栗林少将は、香港攻略戦当時は第23軍参謀長だった。栗林忠道少将は後に小笠原兵団長・陸軍中将として硫黄島で戦い「散るも悲しき」という有名な電報を発信し、部下に徹底抗戦を命令して自らも文字通り戦って散った。

この香港攻略戦の実施主体は、第23軍であるが、具体的な作戦計画の立案は、大本営作戦部作戦課の瀬島龍三大尉が担当した。
瀬島大尉は、言わずと知れた後の伊藤忠商事会長の瀬島龍三氏である。

彼は香港攻略戦に際し、緻密な作戦計画を立案する為、三井物産社員を装って香港島の実地の事前偵察を敢行した。
瀬島大尉の作戦課題は、どこから香港を砲撃するのが効果的か?香港島の何処から上陸するべきか?これが難しいようであれば、香港島の裏側(南側)の何処に上陸するべきか?と言う戦術作戦上の判断する為の偵察であった。

瀬島大尉起案による香港攻略戦を側面から支援し日本軍の被害を最小限にするため第23軍からの側面支援に関する興和機関に対する命令は以下であった。

(1)香港攻略の側面支援
①イギリス軍による香港への幹線道路爆破の阻止
②港への道路標識の設置、誘導のための人員の配置
③イギリス軍の兵力移動の妨害

(2)内部撹乱工作
①発電所、電話交換所、水源地、電車庫の破壊
②反イギリス・ビラの配布
③映画館等への爆破テロ

また香港における情報収集は、瀬島大尉の他、現地の地下組織である洪幇を利用して、イギリス軍の陣地や交通の要所、また貯水池の位置とその警備状況などが調べ上げられた。ここで活躍したのが、陸軍の嘱託、阪田誠盛であった。阪田は北京語を自在に操れたため、「田」という中国人になりすまして香港の洪幇に加わった。

興亜機関の最初の任務は、退却するイギリス軍による幹線道路破壊の阻止であった。
事前に押えた十数か所は爆破を阻止できたが、3箇所は爆破されてしまったが、工兵部隊により1時間程度の作業で道路は修復され爆破による影響は最小限に食い止められた。

また興亜機関に協力する洪幇の破壊工作部隊も計画通りに動きインド兵舎、九龍発電所、電車庫、イギリス軍の駐屯地に繋がる水道管の爆破、映画館への手榴弾投げ込みなどを展開した。

しかし興亜機関の最大の香港攻略戦における貢献は、香港の水源そのものを抑えた事である。
水が無くては戦えない。これによりクリスマスの12月25日のグルカ兵を含む英軍降伏を促す要因となった。

マイクロソフト、グーグルの「Go」に続き並列処理記述言語「Axum」を開発

2012年03月22日 | 日記
グーグルは、マイクロソフトより早く2009年11月10日に並列処理言語「Go」をを公開している。

「グーグルの新しいプログラミング言語「Go」開発の背景にあるもの」

「Go」のポイントは、並列処理記述にCSP(communicating sequential process)と呼ばれるプロセス代数のモデルを採用したこと。CSPは、形式手法(formal methods)という 、計算機科学における数学を基盤としたソフトウェア技法に依拠しており、ロックなど同期のメカニズムを使わずに並列処理を記述できる優れた特質を持つ。

マイクロソフトの「Axum」も同然の事ながらCSPを採用している。
グーグルとマイクロソフト両社がCSPを採用した事は、即ち、現状の共有排他制御には限界がある事を再認識させるが、本格的にCPUのマルチコア化、GPUのメニーコアするコンピューティング環境にあって、今のソフトウエア開発言語では対応出来ない事を示唆する。

「Axum」は、.NET Frameworkでプログラムを記述するが、言語仕様はプログラマーのスキル転換を勘案してかC++やC#に似ている。以前は「Maestro」と呼ばれていた。「Axum」は、Microsoft Robotics の Concurrency and Coordination Runtime (CCR)をベースに開発されているが、汎用言語ではなく.NET言語から並列処理が必要なときにAxumコードをコールする仕組み。

「Axum」は4つの構成要素からなる。
 ①データ保持の主体「Domain」、
 ②データの受け渡代行と実行を行う「Agent」、
 ③データをやり取りする「Channel」、
 ④データ形式を定める「Schema」。

一番重要なのは「Domain」。
「Domain」はリソースのリポジトリ。つまりデータやエージェントと関数の集合体。「Domain」は相互に分離しているが、それぞれのデータや共有された状態を保持する。「Domain」の状態は同一の「Domain」のエージェントによって共有することができる。ただ「Domain」の関数は、呼び出し間ではその状態を保持しない。
「Domain」の間は、「Agent」が「Channel」を通じてメッセージを交換する。
「Domain」同士は共有するデータを持たず、「Domain」間ではデータを直接共有することはなく、データ共有が必要となった時には「Domain」に属する「Agent」が「Channel」通してデータ共有を行う。
「Schema」は互いに関連を持たない「Agent」間の通信を補佐するために導入されたもの。

何れにせよ「Axum」は、並列処理を安全・確実に実行するプログラミングを、.NETフレームワークの上に構築するもので、この「Axum」が実現しようとしている並列処理は、これから重要となる技術で、複数のクラウド間を跨がる処理や、今後のコンピューティング・リソースそのものが、ますます並列化するため。

しかし並列処理の性能向上が、システム工学上の大きな課題であると認識されており、マイクロソフトの「Axum」が克服出来るか、大いに疑問だが、しかも「Axum」とは別の関数型の並列処理言語「F# for Windows Azure - Home」を開発中であり、お得意の複数プロジェクトで並列処理言語開発を行うマイクロソフトらしい取り組みだ。