「政府」を用いた社会的ジレンマの解決についての合理的選択理論的な考察の追記
前回の「政府」を用いた社会的ジレンマ問題より、生産を行うプレイヤーの割合の初期値と検挙率の初期値
がある一定の値を超えたとき、社会的ジレンマを解決できうることを示した。
しかし、これだけでは最初に議題に挙げた「社会秩序はいかにして可能か」という問いを解決したとは言い難い。なぜなら今までの議論は、生産を行うプレイヤーの割合の初期値と検挙率の初期値
が一定の値を超えたときに成り立つことにとどまっており、本来社会は生産を行うプレイヤーの割合の初期値
と検挙率の初期値
が低い状態から、「政府」が社会的ジレンマを解決できる水準までいかにして上げるかについて言及していないためである。
今回の記事では生産を行うプレイヤーの割合の初期値と検挙率の初期値
が低い状態から、「政府」が社会的ジレンマを解決できる水準までいかにして上昇するかについて自分の独断と偏見から論じていきたいと思う。
「法」の執行能力と「宗教」
結論から先に述べると、プレイヤーの割合の初期値と検挙率の初期値
が低い状態から、「政府」が社会的ジレンマを解決できる水準まで上昇するには、「宗教」が重要になっていると自分は考えている。
つまり、検挙率が低いため「政府」が「法」を執行することができない状況において、「神」が違反者に対して「罰」を下すと多くの人が信じることによって社会秩序が一時的に保たれると考えるのである。
「宗教」を信じる人々にとっては、「神」の罰は絶対であるため、検挙率は100%となる。そのため、信心深い人々は社会的ジレンマにおいてお互いに望ましい選択を取るため社会秩序が保たれる。
しかし、「宗教」を信じることによって社会秩序が保たれるという状態は脆弱なものであると自分は考えている。なぜなら「神」が必ずしも違反者に「罰」を下すとは限らないからである。そのため、一度違反者が出現したときに「宗教」のみでは違反者の増加を抑えることができない。
一方で「宗教」を信じることは一概に悪とは言えない。それは「政府」の検挙率が低い状態において、社会秩序を保つには「宗教」を信じることが必要であるからである。重要なのは、「宗教」を信じることによって保たれている社会秩序において得られた富を「政府」が「法」の執行に寄与する検挙率の上昇*1に充てるべきということである。そして、検挙率が高くなることによって「宗教」を信じていなくても、違反者が「政府」によって罰せられることによって社会秩序が保たれる状態にするのが理想である。
つまり、
- 社会秩序が保たれていない社会
- 「宗教」によって社会秩序が保たれる社会
- 「政府」による「法」の統治によって社会秩序が保たれる社会
の順に社会が遷移していくと自分は考えている。
その考えの裏付けとしてこんなデータを用意した。

これは
図録▽神の存在・死後の世界に対する見方
に記載されている各国における神を信じる人の割合を表している。
上図で示された国において、
【2024年最新】世界の治安ランキング 国別&都市別 統計データ | アイラブ ノマド
に記載されている世界平和スコアと神を信じる人の割合の相関を取ると以下のようになる。

この散布図の相関係数と相関のp値を求めると
相関係数:0.532
相関のp値:2.16E-6
となった。
相関係数は
0.7 ~ 1.0 強い正の相関
0.4 ~ 0.7 正の相関
0.2 ~ 0.4 弱い正の相関
-0.2 ~ 0.2 相関なし
-0.4 ~ -0.2 弱い負の相関
-0.7 ~ -0.4 負の相関
-1.0 ~ -0.7 強い負の相関
より今回の神を信じる人の割合と世界平和スコアには正の相関があることが分かる。
また、相関p値については 2.16E-6 < 0.05 より帰無仮説は棄却され有意な相関であることが分かる。
世界平和スコアは値が高いほど治安が良くないことを示しているため、このデータでは神を信じる人の割合が多いほど治安が良くないことを表している。
一見これは通常の人の想像とは反対の結果になっていると思われるが、自分が先ほど提唱した
- 社会秩序が保たれていない社会
- 「宗教」によって社会秩序が保たれる社会
- 「政府」による「法」の統治によって社会秩序が保たれる社会
の順に社会が遷移していくモデルを考えると納得がいく。
「政府」による「法」の統治がうまく機能していない国においては「宗教」が社会秩序を維持するためのブレーキになっており、「政府」による「法」の統治がうまく機能している国においては「宗教」を信じていなくても社会秩序が維持できているというわけである。
昔、自分が中高生だった時、英語の先生から「外国で宗教は何を信じているか聞かれたときは、絶対に無宗教とは言わないように」と言われることがあったが、このデータからもその意味が分かってくる。
「政府」及び警察があまり機能していない地域において、社会秩序を維持しているのは「宗教」であり、「神」を信じていない人間というのは、略奪や殺人を行っても罰が与えられない、最近の言葉でいうと「無敵の人」になるのである。
つまり、宗教とは単なる信仰の問題にとどまらず、共同体の秩序や倫理観の根幹をなすものでもある。特に、「目に見えない罰」や「死後の報い」を信じることによって、人々は自らの行動を律し、他者との信頼関係を築くことができる。そうした宗教的規範があるからこそ、国家が十分に機能していない社会においても、人々は最低限の秩序を保ち、暴力の連鎖に陥ることを避けているのである。
ゆえに、自分がどの宗教に属しているのか、あるいは少なくとも「神」や「道徳的な原理」を信じているという姿勢を見せることは、国際的な場面においては一種の「文化的リテラシー」とも言えるのだ。
締めの文章が思い浮かばなかったため、ChatGPTに相談したところ、下線の文章のように締めてくれました。ChatGPTすごいですね。
*1:警察官の増員など
「政府」を用いた社会的ジレンマの解決についての合理的選択理論的な考察
最近、大澤真幸著の「社会学史」を読んで、社会学について興味を持つようになった。
社会学では「社会秩序はいかにして可能か」という問いについて考えているのだが、個人的にこの問いに対してゲーム理論を用いることで、ある程度解答できるのではないかと何となく考えていた。
ゲーム理論を用いて社会学を理解しようとする理論は「合理的選択理論」と呼ばれるらしく、自分の考えている内容に近いため、参考になる本はないかと探したところ、
海野道郎著「社会的ジレンマ:合理的選択理論による問題解決の試み」
を見つけた。
この本では、ゲーム理論における「囚人のジレンマゲーム」と同じ形式をとる「社会的ジレンマ」について、その特性・具体例・解決法の提案について記されており、非常に参考になる内容であった。
特に、社会的ジレンマを解決する手法として、協力行動には報酬を与え、フリーライダーには罰則を与える様に「選好を操作する」ことを挙げており、これは自分の考えている「社会秩序はいかにして可能か」の解答に近いものであり、同じように考えている人がいることを嬉しく感じた。
また、この本を読んだことでモチベーションが上がったため、自分の考える「囚人のジレンマ」もとい「社会的ジレンマ」の解決手法を書いていきたいと思う。
囚人のジレンマとは

囚人のジレンマとは上図の利得表を持つようなゲームである。
囚人のジレンマの内容を文章で表すと
囚人AとBは懲役2年の軽犯罪で逮捕されたが、この二人は懲役5年の重犯罪に関与している疑いがある。そこで検事は囚人二人を自白させるために以下の司法取引を提案した。
・重犯罪についてお互いに黙秘した場合、二人とも懲役2年となる。
・重犯罪についてお互いに自白した場合、二人とも懲役5年となる。
・片方が自白し、もう片方が黙秘した場合、自白した方を釈放し、黙秘した方が懲役10年となる。
この司法取引に対して、囚人AとBはどのような選択を取るか?
というようになる。
囚人のジレンマにおいて、囚人Aと囚人Bがお互いに利己的であったと仮定すると、囚人AとBはともに自白し、共に懲役5年となる。
その理由としては、囚人Bが黙秘した場合、囚人Aは黙秘した場合懲役2年となり、自白した場合懲役0年となるため自白した方が刑期が短くなる。また、囚人Bが自白した場合、囚人Aは黙秘した場合懲役10年となり、自白した場合懲役5年となるため自白した方が刑期が短くなる。囚人Bについても同様なことが言えるため、囚人AとBは共に自白し、懲役5年となる。
この様に相手の行動にかかわらず、自分の利得が最大になる戦略(今回の場合「自白」)を支配戦略と言い、各プレイヤーが支配戦略を取った際の均衡を支配戦略均衡と言う。囚人のジレンマではお互いに自白し、共に懲役5年となる結果が支配戦略均衡になる。
しかし、懲役5年の支配戦略均衡よりも、共に黙秘した懲役2年の方がお互いより良い結果となる。お互いに利己的な選択を行った結果、お互いにとって悪い結果が均衡になってしまうことより囚人のジレンマと呼ばれる。詳しい説明についてはWikipediaなどに書いてあるため、そちらを参照してほしい。
囚人のジレンマと社会的ジレンマ
先ほどの章で囚人のジレンマについて紹介したが、囚人のジレンマゲームは利得が
利得(自分:自白/相手:黙秘) > 利得(自分:黙秘/相手:黙秘)
> 利得(自分:自白/相手:自白) > 利得(自分:黙秘/相手:自白)
の関係にあれば成立するため、囚人の黙秘/自白だけでなく、様々な社会問題についても適用できる。
最初に紹介した「社会的ジレンマ」の本では、農村の水管理・スパイクタイヤ利用問題・ごみ処理問題を挙げて研究している。
このブログの記事では自分のオリジナルになってしまうが、「生産・略奪ゲーム」を考えていきたいと思う。
生産・略奪ゲーム
基本となるゲームの解説
| 生産 | 略奪 | |
|---|---|---|
| 生産 | |
|
| 略奪 | |
|
生産・略奪ゲームの内容を解説すると、
プレイヤーの2人は「生産」と「略奪」のどちらかを選択できる。「生産」を行った場合、コスト
を払うことによって、収益
を得ることができる。(
)
一方で「略奪」を行うと、相手が「生産」を行っていた場合、その収益をコスト
を払わずに得ることができる。逆に自分が「生産」を行い、相手が「略奪」を選んだ場合、自分は収益
を奪われ、コスト
分の損失が発生する。
お互いに「略奪」を行った場合、奪う収益がないため、お互い利得は0となる。
というものになる。
表の利得を表記すると
となる。
R > C > 0の関係を持つとき、生産・略奪ゲームは基本的には囚人のジレンマと同様に
の関係を持つゲームである。
そのため、生産・略奪ゲームではお互いに「略奪」が支配戦略となるため、誰も「生産」を行わなくなってしまう。
今回の生産・略奪ゲームは単純なゲームであるが、これを現実に当てはめると、「生産」は農産物などの生産を意味しており、全ての人間が「略奪」を選択した場合、誰も食料を生産できず全員が飢え死にしてしまうことを意味する。つまり、「社会秩序が可能ではない」状況になってしまっている。
pythonを用いた100人のプレイヤーを用いた生産・略奪ゲームの実施
囚人のジレンマについての研究では基本的に2人のプレイヤーにおいて、囚人のジレンマの繰り返しゲームを行うのが主流である。
今回の記事では、今後導入する「政府」の概念を実現するために100人のプレイヤーにおける生産・略奪ゲームの繰り返しゲームを行う。
100人のプレイヤーにおける生産・略奪ゲームは以下のように実行する。
- 100人のプレイヤーからランダムに2人を選び、それを50組作る。
- それぞれの組の2人のプレイヤーで生産・略奪ゲームを行う。*1
- 1. 2.を 100回繰り返す。
この100人のプレイヤーによる生産・略奪ゲームはGoogle Colabのpythonによって動かしている。
自明ではあるがこのゲームをpythonで動かしたとき、生産行動を行うプレイヤーの比率(Coop_Rate)を各Roundにおいてグラフに表すと、全てのRoundにおいて0%となる。

生産・略奪ゲームにおける「政府」の導入
前の章で生産・略奪ゲームは囚人のジレンマとなっており、pythonの計算では生産行動を行うプレイヤーが存在せず、「社会秩序が可能ではない」状況になっていると説明した。
しかし、現実では「略奪」が支配戦略にはなっていない。その理由として、「略奪」を行った場合法律に違反し、逮捕され罰が与えられるためである。
そこで、100人のプレイヤーによる生産・略奪ゲームに選好を操作する「政府」を導入する*2。
| 生産 | 略奪 | |
|---|---|---|
| 生産 | |
|
| 略奪 | |
|
「政府」の役割は以下のようになる。
「政府」はプレイヤーの2者がお互いに生産を選択した場合、税金
を課す。
「政府」は一方が生産行動を行い、もう一方が略奪行動をとった場合、略奪行動を取ったプレイヤーに対しての罰則を与える。
しかし、与えられる罰則は確率的であり、その確率は前のラウンドで100人のプレイヤー全体から得られた税金の関数で表される検挙率
となる。
検挙率は
の値であり、得られる税金が高いほど1に近づくものとする。
「政府」の介入によって、生産・略奪ゲームの選好は以下のように改変される。
このとき、は確率的に変動する関数であり、その期待値を求めると
となる。このとき、を満たすとき、つまり
を満たすとき、相手が生産を選択した場合、自分も生産を選択した方が期待値としては利得が高くなる。
よって、上記の条件を満たしたときの生産・略奪ゲームは、略奪が支配戦略が無くなり、囚人のジレンマ型のゲームではなくなる。
より、略奪を支配戦略にしないためには、略奪行動を取った罰則
の値は生産のためのコストと税金の和
よりも大きくないといけないことが分かる。
この時のナッシュ均衡を調べると、両プレイヤーが生産を行う均衡と、略奪を行う均衡
の2つが存在していることが分かる。
「政府」を導入した生産・略奪ゲームのpythonでの100人のプレイヤーのシミュレーションを行う上での定義
前章より、「政府」の導入によって検挙率が一定の値を超えると生産・略奪ゲームは支配戦略が無くなり、囚人のジレンマでなくなることを示した。
この時の100人のプレイヤーによる生産・略奪ゲームを考えてみる。
まず、検挙率について定義する。
今回、簡単のため検挙率は一つ前のRoundで100人のプレイヤーが支払った税金
に線形に比例すると仮定する。つまり、一つ前のRoundのゲームで(生産, 生産)の組が一つもなければ、検挙率
は0であり、全ての組が(生産, 生産)を選択した場合、検挙率
は1となる。式で検挙率
を記述すると
となる。*3
次に、100人のプレイヤーの取る戦略について考える。
各プレイヤーの取る戦略は前章の期待値の計算で利得の高い方の戦略を取るというものになるが、相手が生産を行うか略奪を行うかによって利得が異なり、取りうる戦略も異なってしまう。
そこで、前回のRoundで生産を行うプレイヤーの割合をとすると、自分が生産行動を取ることによる利得の期待値
は
となる。一方で自分が略奪行動を取ることによる利得の期待値は
となる。このとき、 となるときに生産行動を取り、そうでないときに略奪行動を取ることが期待される。
しかし、100人すべてのプレイヤーが一律にの境界で生産/略奪を変化させるとは考えにくい。それぞれのプレイヤーにはばらつきが存在するはずである。
そこで、100人の各プレイヤーに標準偏差の正規分布のばらつき
を与える。
そして、を満たすとき、そのプレイヤーは生産行動を取り、そうでないときは略奪行動を取ると定義する。
「政府」を導入した生産・略奪ゲームのpythonでの100人のプレイヤーのシミュレーションの実行
前章で定義した「政府」を導入した生産・略奪ゲームを実行する。
計算の際、各パラメータは以下の値を代入して計算した。
このときの生産・略奪ゲームの利得は以下の表のようになる。
| 生産 | 略奪 | |
|---|---|---|
| 生産 | |
|
| 略奪 | |
|
計算を行う際に、生産を行うプレイヤーの割合をと検挙率
は前回のRoundの結果を参照するため、最初の計算では初期値を設定する必要がある。
今回、各プレイヤーのバラつきの標準偏差、生産を行うプレイヤーの割合の初期値
を0.5(50%)として、検挙率の初期値
を0.47/0.49とした時の各Roundにおける生産行動を取るプレイヤーの割合を計算したところ、以下のようになった。


検挙率の初期値を0.47としたグラフでは生産行動を取るプレイヤーの割合が0に急激に低下する一方で、検挙率の初期値
を0.49としたグラフでは生産行動を取るプレイヤーの割合が1に急激に上昇している。
これは、自分が生産行動を取ることによる利得の期待値より自分が略奪行動を取ることによる利得の期待値
が高くなる検挙率の条件が
となっており、プレイヤーのバラつきの標準偏差と小さいので、0.48より検挙率の初期値が小さいとほとんどのプレイヤーが一斉に略奪行動を取るため、生産行動をとるプレイヤーの割合が0に低下する。0.48より検挙率の初期値が大きい場合には逆の現象が起きるため、生産行動をとるプレイヤーの割合が1に上昇する。
次にプレイヤーのバラつきの標準偏差として、生産を行うプレイヤーの割合の初期値を0.5(50%)、検挙率の初期値を0.6とした時の各Roundにおける生産行動を取るプレイヤーの割合を計算したところ、以下のようになった。


次にプレイヤーのバラつきの標準偏差をと大きくすると、同じ初期値の計算を行っても、上図のように生産を行うプレイヤーの割合が増加するパターンと減少するパターンに分かれる。
その理由としては標準偏差を大きくすると、生産行動を取るグループと略奪行動を取るグループに分かれるが、その次にランダムで100人のプレイヤーを2人組50組作る段階で、得られる税金のバラつきが大きくなるためである。
仮に生産行動を取る50人と略奪行動を取る50人が存在しており、その100人で2人組50組を作るとしたとき、生産行動を取る50人同士で2人組25組を作り、略奪行動を取る50人同士で2人組25組を作った場合、得られる税金はであり、検挙率
となる。一方で、生産行動を取る1人と略奪行動を取る1人で2人組50組を作った場合、得られる税金は
であり、検挙率
となる。
このとき、得られる税金が前回の値より大きくなるような組み合わせであった場合、
得られる税金が上がることで検挙率が上昇する。
→検挙率が上昇することによって略奪行動を行うプレイヤーの数が減り、生産行動を行うプレイヤーが増加する。
→両プレイヤーが生産を行う結果が増加し、得られる税金がさらに上昇する。
→得られる税金が上がることで検挙率が上昇する。
というループが発生し、検挙率になるまで続くことが確認される。
一方で、得られる税金が前回の値より小さくなるような組み合わせであった場合、
得られる税金が下がることで検挙率が下降する。
→検挙率が下降することによって生産行動を行うプレイヤーの数が減り、略奪行動を行うプレイヤーが増加する。
→両プレイヤーが生産を行う結果が減少し、得られる税金がさらに減少する。
→得られる税金が下がることで検挙率が下降する。
というループが発生し、検挙率になるまで続くことが確認される。
検挙率が上昇するループに入るか、下降するループに入るかについては生産を行うプレイヤーの割合の初期値と検挙率の初期値が重要になってくる。
そこで、各標準偏差における生産を行うプレイヤーの割合の初期値と検挙率の初期値による99Round目における生産を行うプレイヤーの割合のカラーマップを計算した。
以下がその結果になる。




図に描かれている青い点線は生産を行うプレイヤーの割合の初期値と検挙率の初期値
が
を満たす曲線を表している。*4これは、初期値におけるの条件を書き直したものになる。
標準偏差のとき、青点線と99Round目における生産を行うプレイヤーの割合が1と0になる境界が一致している。これは標準偏差が小さい正規分布ではバラつきが小さく、青点線の境界条件で100人のプレイヤーの選択が一斉に変わってしまうため起こる。
一方で標準偏差が大きくなるにつれて、99Round目における生産を行うプレイヤーの割合が1になる領域は、生産を行うプレイヤーの割合の初期値
が高く、検挙率の初期値
が低い領域で青点線よりも後退し、生産を行うプレイヤーの割合の初期値
が低く、検挙率の初期値
が高い領域では青点線よりも前進しているのが確認される。
これは標準偏差が大きいと
の条件であっても略奪行動を取るグループが出現することによって、次のRoundの生産を行うプレイヤーの割合
が低下するため、生産を行うプレイヤーの割合の初期値
が高く、検挙率の初期値
が低い領域で青点線よりも後退する。一方で、標準偏差
が大きいと
の条件であっても生産行動を取るグループが出現するため、次のRoundの生産を行うプレイヤーの割合
が上昇し、生産を行うプレイヤーの割合の初期値
が低く、検挙率の初期値
が高い領域では青点線よりも前進する。
「政府」を導入した生産・略奪ゲームの結果のまとめ
前章でpythonを用いることによって100人のプレイヤーによる「政府」を導入した生産・略奪ゲームのシミュレーションを行った。
シミュレーションの結果から、「政府」を導入することによって「政府」を導入する前の生産・略奪ゲームにおいて支配戦略であった(略奪, 略奪)の均衡から、(略奪, 略奪)の均衡よりもパレート最適である(生産, 生産)の均衡に移動させることができること、つまり社会的ジレンマを解決できることが示された。
しかし、実際に「政府」を導入することによって生産・略奪ゲームの(生産, 生産)の均衡に移動させるためには、初期条件においてある程度高い生産を行うプレイヤーの割合と検挙率
が必要であることもシミュレーションから判明した。仮に初期条件において、生産を行うプレイヤーの割合
が1であったとしても、検挙率の初期値
が
よりも小さい場合*5は、「政府」を導入しても均衡が(略奪,略奪)に収束してしまう結果となるため、「政府」を導入する際に、略奪行動を行ったプレイヤーに対する罰則を実現させる検挙率
が高いことが重要であることが分かる。
最後に、「政府」の機能について
「政府」についてWikipediaで検索すると、
『広義においては、立法・司法・行政の各機関すべてを含む国家の統治機構全体を指す。』
と書いてある。立法は法を作成し、司法は法の判定を行い、行政は法を実行する。それでは「法」とは何かと考える。
先ほどの「政府」を導入した生産・略奪ゲームを考えると、「法」とは
社会的ジレンマなどのナッシュ均衡がパレート最適でない状態に対して、パレート最適な均衡の状態に移動させるために、各主体の選好を操作するシステム
であると考えることができる。そして、定められた「法」は警察などの組織によって、現実の選好に検挙率の確率で実現させられる。この検挙率
が重要になってくる。
「社会的ジレンマを解決するにはゲームの選好を操作すれば良い」と簡単に言えてしまうが、実際には操作した選好を現実に適用する必要が発生する。
これは一朝一夕で実現できるものではなく、①各プレイヤーの行動を把握できるほど高度に情報を集約することが可能であり、②操作した選好を各プレイヤーに実現させる規模を持った 組織が必要になってくる。
つまるところ、それが「政府」になってくる。
つまり、何が言いたいかというと、社会的ジレンマを解決するには「政府」を用いて「法」を変更・追加することによって解決することが最も妥当であるということである。そして、「法」によって社会的ジレンマを解決するには、「法」の実現力の指標である検挙率を上昇させる必要があるということである。
実際に、海野道郎著「社会的ジレンマ:合理的選択理論による問題解決の試み」のスパイクタイヤ問題では他の要因もあるが、「法」によってスパイクタイヤ使用が解決した。
また「法」について、合理的選択理論的な視点から着目することはこれから先重要になってくると感じている。
今回計算した100人のプレイヤーの生産・略奪ゲームはすべてのプレイヤーの利得を均一化した極めて単純化したモデルであるが、実際の「政府」は各国民の所得などのデータを実際に得ることができる。また、犯罪を行った容疑者を調査することによって、その傾向などの分布を取得することもできる。したがって、それらの得られたデータを利得としたゲームを構築することができるを意味している。そして、そのゲームにはパレート最適でない均衡が存在するはずである。そこでパレート最適でない均衡からパレート最適な均衡へ移すことができるような「法」を立法することで、国民の所得や国内総生産が増大し、より豊かな国家を作ることができるのではないかと期待している。
今回、海野道郎著「社会的ジレンマ:合理的選択理論による問題解決の試み」を読んで、モチベーションが高まって1万字を超える怪文書を作成したわけだが、この文章を読んだ誰かが合理的選択理論と法を繋げるシステムを構築し、今より豊かに生活できるようになればと願っている。
最後に書きたいことを整理もせずにここまで書いたのだが、ここまで読んでいただきありがとうございます。
なんか
このブログを放置してしばらく経ち、どうなっているのか少し気になり今に至るのですが、調べて見ると、すでにのべ3400人の人がこの放置クソブログを見ている様です。
多分texをダウンロードしてのフォントエラーが発生した人達が解決策としてこのブログを開いた人が大半だと思います。
アクセス履歴を検索してみると少し面白いことが分かったので投稿してみました。


上の図が一日のアクセス数グラフで下の図が4月のカレンダーです。
このグラフから4月7日から閲覧者数が増加し、その後徐々に減っていることが分かります。
これは多分大学が始まり、texを新しくダウンロードする学生が急増し、自分と同じフォントエラーが発生したためこのブログに流れ着いてしまったのだと思います。
4月8日にアクセス数が急増したのは、その日にどこかの大学の授業でtexを一斉にダウンロードして不具合が生じたからだと思います。
また、面白いことに4月13日あたりから4月30日周辺まで平日のアクセス数がおよそ一日50人ほどで土日の休日のアクセス数が25人ほどであり、休日になるとアクセス数が減ることが分かります。
これも原因は平日に会社、大学、研究所でtexをダウンロードして不具合が生じたとかそんな感じだと思います。
このブログの閲覧数が増えるということは、その人数以上の人がtexのフォントエラーで苦しんでいるということでもあるかもしれません。
ながい追伸
ここに書くことでもないことですが、私がこのフォントエラーの問題にぶつかり、何とか解決したときに感じた事は、自分が今まで当たり前のように使ってきた道具をどれだけ自分は理解しているのだろう、という疑問でした。
私はこのフォントエラーについての記事を書く1年ほど前からtexをノートパソコンで使用しており、デスクトップパソコンでtexをやろうとダウンロードしたときにこのエラーに遭遇しました。(よく考えればノートパソコンのtexをデスクトップパソコンにインストールすれば解決できたのですが、なぜかフォントをダウンロードして直そうとしてました。)なので、texの文章の書き方、コマンドについてはある程度理解しており、レポートを書く程度であれば特に不自由なく使うことができました。
しかし、今回のエラーについては自分は情報系について深く学んでいないため、全く手も足も出すことができず、ただ、エラーコードで検索をして答えを探すしかありませんでした。また、その検索で解決策が出ても、なぜそうするか?などの理由が書いていない、もしくは専門的でよくわからないものばかりでした。当然そういったもの解決策を利用してもエラーが直ることはあまりなく、非常に長い時間を費やしました。
正直、この問題はtexだけのものではないと思います。今、私たちはスマートフォンを当たり前のように操作していますが、中身がどうなっているかについては全く知りません。(原理についてある程度理解していても(CPU,メモリなどがある等)具体的にどうなっているか(どの配線がどの機能を作用させるかなど)を理解している人は少ないと思います。)
確かに、私たちがスマートフォンを利用するにあたってそんなことは一切役に立ちません。専門の人が知っていればいいことです。こうゆうことについて気になってしまうのは自分が物理学を専攻しているからだと思いますが、結局のところ今私たちがスマートフォンを利用できるのは、その構造を完全に理解している人たち(多分一人の人が全ての部分を理解するのは不可能なので、それぞれの部品について理解のある人が集まっているため)が存在するからなのです。もし、その人たちのうち、どこかの分野の人が完全に欠けてしまったら、もうスマートフォンを生産することはできず、戦艦大和の40センチ主砲と同じくロスとテクノロジーになってしまいます。
一方、仮に内部構造を理解する人はいなくなってしまったが、スマートフォンを生産する機械のみが残ってしまった場合はどうでしょうか。多分、今までと同じようにスマートフォンは生産され、私たちはいつも通り操作をすると思います。ボタンを押すと果物が出てくる装置において、どうやって果物が出るかはわからないけど、お腹がすいたときに巧みにボタンを押し、果物を得る霊長類研究センターの猿と同じです。
もし、そのボタンが壊れてしまったとき私たちはそれを直すことができるのでしょうか
ダウンロードしたTexworksにおけるフォントエラーの直し方 その②
前回texのエラーが直ると言っていましたが、残念ながらあの状態では日本語しか出力できず、アルファベット、数式(equationコマンドなど)は表示されませんでした。
その後も前回と同様にそれらしいフォントを片っ端からダウンロードして試行錯誤を重ねましたが、どうしてもギリシャ文字が出力されませんでした。なのでほかの方法は無いかと探してみたところ、
端的に言いますと、
tex文章の始めに
\usepackage{txfonts}
を加えたら直りました。
しかし、もしかしたら適当にダウンロードしたフォントファイルと上のコマンドが合致してうまくいったのかもしれないので。確実に直るかどうかは分かりませんが、やってみる価値はあると思います。もし、できなければ前回の様にCTANから要求されているフォントをダウンロードしてみてください。
ダウンロードしたTexworksにおけるフォントエラーの直し方
最近買ったデスクトップパソコンでもレポートが書けるように
TeXインストーラ 3からTEXファイルをダウンロードし、Texworksを使ってレポートを書こうとしましたが、プログラムをpdfに変換する際にフォントに関するエラーが発生しました。何とか試行錯誤の末直すことができたのですが、このエラーについて一発で直し方が書いてあるサイトが無く、直していて非常に辛かったので一応自分でやった直し方とその試行錯誤を書いておきます。
エラーの症状
まず、今回エラーが起きた文章はTEXwikiのサンプル文章である
\documentclass{jsarticle}
\begin{document}吾輩は猫である。名前はまだ無い。
どこで生れたかとんと見当がつかぬ。
何でも薄暗いじめじめした所で
ニャーニャー泣いていた事だけは記憶している。
吾輩はここで始めて人間というものを見た。\end{document}
です。文章は何でも良いのですが、documentclassがjsarticleの場合にエラー起こり、それを直したため、ほかのdocumentclassでは治らないかもしれません。
そして発生したエラーメッセージが
This is e-pTeX, Version 3.14159265-p3.7-150805-2.6 (utf8.sjis) (TeX Live 2015/W32TeX) (preloaded format=platex)
restricted \write18 enabled.
entering extended mode
(./TeX文書 1.tex
pLaTeX2e <2006/11/10> (based on LaTeX2e <2015/10/01> patch level 2)
Babel <3.9m> and hyphenation patterns for 79 languages loaded.
(c:/w32tex/share/texmf-dist/tex/platex/jsclasses/jsarticle.clsname = cmr8, rootname = cmr, pointsize = 8
mktexmf: empty or non-existent rootfile!kpathsea: Running mktexmf cmr8.mf
The command name is C:\w32tex\bin\mktexmf
Cannot find cmr8.mf.Document Class: jsarticle 2014/02/07 okumura
! Font OT1/cmr/m/n/8=cmr8 at 8.0pt not loadable: Metric (TFM) file not found.
<to be read again>
relax
l.760 {\footnotesize
\global\setlength\footnotesep{\baselineskip}}
?
というものだと思います。※正直これはエラーを直した後、もう一度元の状態に近づけた時に発生したエラーメッセージなのでもしかしたら違うかもしれません。
試行錯誤
※ここの文章は「どうしてそういう直し方になったのか」の過程を書いているだけなので、直し方が早く知りたい人は読み飛ばしてください。
エラーメッセージの太字の部分がエラーの原因だと思い、それを読み解くと、
C:\w32tex\bin\mktexmfの内部にあるcmr8.mfというファイル(青い部分から推察するにフォントのファイル)が存在しないためpdf表示できません
というものだと思いC:\w32tex\binのフォルダを見ると、mktexmfのフォルダがありませんでした。なので、新しくmktexmfというフォルダを作成し、cmr8.mfをダウンロードしてそのフォルダ内に保存しましたが、全く効果がありませんでした。
・cmr8.mfはhttp://www.ctan.org/tex-archive/fonts/cm/mfで入手できます
しばらくtex フォント エラーで検索していると
W32Tex や Asymptote の導入(インストール)に成功するまで経緯(1) ( ソフトウェア ) - wabin氏 の ブログ - Yahoo!ブログ
というサイトにcmr8.mfファイルは
C:\w32tex\share\texmf-local\fonts\source\public\cm\mf
の様に定めたフォルダに保存したと書いてあったため、自分のtexファイルにおいて似た場所に保存しようと考え、texmf-localにはREADMEファイルしかなかったため、texmf-distフォルダにおいて、同じようなPATHを辿ると、
上の画像のような分岐でcmフォルダがないためPATHが分からなくなります。
そこで、cmr8.mfが保存されているフォルダはcmのついたファイルがたくさんあるに違いないと思い、それぞれのフォルダを虱潰しに捜したところ、gothicフォルダにcmのついたファイルがたくさんあったため、「多分cmr8.mfはゴシックフォントのファイルなんだろう」と思いそこに保存しました。そして、texworksをもう一度起動すると、

若干進展してる!
次は「cmbaseが足りない」と書いてあるためcmbase.mfをまたcmr8.mfのある
C:\w32tex\share\texmf-dist\fonts\source\public\gothicフォルダに保存しtexworksを起動、
すると同じようにcmr10.mf、roman.mf、romanu.mfも要求されるため、また
C:\w32tex\share\texmf-dist\fonts\source\public\gothicフォルダに保存しtexworksを起動。
・cmbase.mf、cmr10.mf、roman.mf、romanu.mfはどれもcmr8.mfと同じサイトで入手できます
すると、エラーログファイルが
This is e-pTeX, Version 3.14159265-p3.7-150805-2.6 (utf8.sjis) (TeX Live 2015/W32TeX) (preloaded format=platex)
restricted \write18 enabled.
entering extended mode
(./TeX文書 1.tex
pLaTeX2e <2006/11/10> (based on LaTeX2e <2015/10/01> patch level 2)
Babel <3.9m> and hyphenation patterns for 79 languages loaded.
(c:/w32tex/share/texmf-dist/tex/platex/jsclasses/jsarticle.cls
Document Class: jsarticle 2014/02/07 okumura
) (./TeX文書 1.aux) [1] (./TeX文書 1.aux) )
Output written on "TeX文書 1.dvi" (1 page, 548 bytes).
SyncTeX written on "TeX���� 1.synctex.gz"
Transcript written on "TeX文書 1.log".
(guessed encoding: Shift_JIS = sjis)(guessed encoding: ISO-2022-JP = jis)TeX���� 1 -> TeX���� 1.pdf
[1
dvipdfmx:fatal: Could not find encoding file "H".Output file removed.
となり、青色の文字の部分はよくtexファイルがpdf変換されたときに見るものなので、一応texファイルが出力されたことが分かります。
しかし、実際にはその下の赤文字でOutput file removedと書いてあるようにpdfファイルは削除されてしまい、見ることはできません。
多分問題は赤太字の行に書いてある
dvipdfmx:fatal: Could not find encoding file "H".
であると思い、これで検索してみると割とたくさんの日本語ページがヒットします。
なので、情報がたくさんあり、今までより楽に調べることができます。
調べてみると、
【LaTeX】「dvipdfmx:fatal: Could not find encoding file “H”.」エラーについて調査メモ
というサイトにその原因が
- C:\w32tex\share\texmf-dist\fonts\cmapフォルダにadobemappingフォルダが存在しない
- 旧式のインストーラーにおいてweb2c-lib.tar.xzファイルが抜けている
のどちらかであると、書いており、自分のフォルダーを調べるとadobemappingフォルダが抜けていたため、前者が原因であることが分かりました。
・web2c-lib.tar.xzファイルはC:\w32tex\downloadフォルダに保存されていたため、もしweb2c-lib.tar.xzファイルが抜けていた場合そこに保存してください
よってadobemappingフォルダをダウンロードし、C:\w32tex\share\texmf-dist\fonts\cmapフォルダ(下の画像の場所)に保存する
・adobemappingフォルダはhttp://www.ctan.org/pkg/adobemappingでダウンロードできます

そしてtexworksを起動させると、エラーメッセージが
This is e-pTeX, Version 3.14159265-p3.7-150805-2.6 (utf8.sjis) (TeX Live 2015/W32TeX) (preloaded format=platex)
restricted \write18 enabled.
entering extended mode
(./TeX文書 1.tex
pLaTeX2e <2006/11/10> (based on LaTeX2e <2015/10/01> patch level 2)
Babel <3.9m> and hyphenation patterns for 79 languages loaded.
(c:/w32tex/share/texmf-dist/tex/platex/jsclasses/jsarticle.cls
Document Class: jsarticle 2014/02/07 okumura
) (./TeX文書 1.aux) [1] (./TeX文書 1.aux) )
Output written on "TeX文書 1.dvi" (1 page, 548 bytes).
SyncTeX written on "TeX���� 1.synctex.gz"
Transcript written on "TeX文書 1.log".
(guessed encoding: Shift_JIS = sjis)(guessed encoding: ISO-2022-JP = jis)TeX���� 1 -> TeX���� 1.pdf
[1
dvipdfmx:fatal: Unable to find TFM file "cmr10".Output file removed.
となっておりさっき
dvipdfmx:fatal: Could not find encoding file "H".
だった場所が
dvipdfmx:fatal: Unable to find TFM file "cmr10".
に置き換わっています。
このcmr10.tfmファイルは検索するとなんか英語の掲示板の
http://latex-community.org/forum/viewtopic.php?f=48&t=5570
というサイトに
http://www.ctan.org/tex-archive/fonts/cm/ps-type1/bakoma/tfm
でダウンロードできると書いてあるためそこでダウンロードし、
下の画像の場所にtfmフォルダがあるため

そこからcmr8.mfと同じように\public\gothicと進むと下の画像

の場所に移動し、ここにcmr8.tfmが存在するためcmr10.tfmを保存します。
そしてtexworksを起動すると

やっとpdfファイルを出力することができました。
試行錯誤(その後)
ここに載せるためのtexworksのエラー文章を出すために、これまでに出てきたファイルやフォルダをいろいろいじってみたのですが、実は
C:\w32tex\share\texmf-dist\fonts\source\public\gothicフォルダ内の
cmr8.mf, cmr10.mf, cmbase.mf, roman.mf, romanu.mfファイルを削除してもちゃんとtexworksが作動しました。よってadobemappingフォルダとcmr8.tfmとcmr10.tfmが存在すればちゃんと動作するみたいです。
また、adobemappingフォルダはcmr8.mfファイルが存在するとき、cmr8.tfmファイルを
C:\w32tex\share\texmf-dist\fonts\tfm\public\gothic
に作成してくれるみたいです。しかし、cmr8.mfファイルが存在しない場合は作成してくれないため、cmr8.mfファイルまたはcmr8.tfmファイルを用意しましょう。
対処法
その1
cmr8.tfmとcmr10.tfmファイルを
http://www.ctan.org/tex-archive/fonts/cm/ps-type1/bakoma/tfm
からダウンロードしてC:\w32tex\share\texmf-dist\fonts\tfm\public\gothic に保存する。
その2
adobemappingフォルダを
http://www.ctan.org/pkg/adobemapping
からダウンロードして解凍しC:\w32tex\share\texmf-dist\fonts\cmap に保存する
多分これで同じ問題を抱えていた人はtexworksを利用できるようになったと思います。
(できませんでした。詳しくはその②
ダウンロードしたTexworksにおけるフォントエラーの直し方 その② - 午後のイクチオステガ
を見てください・・・)
わざわざこんな長文を読んでいただきありがとうございます。
イカれた水槽のメンバー紹介
30cm水槽で飼っている熱帯魚の紹介です。
現在の水槽はこんな感じです。

コケがやばいですね
でも生体に対する害はなさそうなので異常に増えたら取り除く程度しかしていません
飼っている生体は
ネオンテトラ×4
オトシンクルス×1
です。
フィルターはGEXのセットについてたスリムフィルターM、
照明はコトブキのフラット300一灯です。
水槽立ち上げは去年の9月なので一応一年もってます。
ここからは水槽内のそれぞれの生体の紹介です

ネオンテトラは水槽立ち上げ当時からいる古参で元々は6匹いましたが10月ごろに一匹が尾腐れ病治療中に水槽を飛び出し煮干しに、もう一匹は最近になって腹水病で死んで4匹になりました。
ネオンテトラは病気に弱く飼育しにくいと言われていますが、安価(自分は1匹50円で買いました)で割と強く初めて飼う熱帯魚としてはおすすめです。二匹死んでる自分が言うのもなんですが、
一方でどんな熱帯魚でもそうですが一度具合が悪くなると回復はなかなか難しいです。
ブラックネオンテトラは10月ごろネオンテトラ同士での喧嘩が勃発したため、違う種を入れると喧嘩がおさまるという書き込みを見て5匹ホームセンターで購入しました。しかし、水合わせしたのちに水槽に投入した翌日全員白点病が発症したため隔離し、メチレンブルー薬浴させましたが一匹以外全滅してしまいました。
残った一匹が上の画像中心の魚ですっかり水槽内のボスになっており、水槽の中心を縄張りにしています。一応一匹だとかわいそうなのでもう一匹入れましたがそこまで仲は良くなさそうです。

10月頃茶ゴケが水槽に現れ始めたのでコケ取り生体として投入しました。コケ取り能力は高く、コケを食べる仕草もかわいいですが、僕のことが嫌いなので水槽に近づくと水槽の裏に一目散に逃げます。
写真ではエビのクリルの残骸をモフモフしてます。



