[Home]-[以前のひとこと]-[2002年1月後半]

以前の「ひとこと」 : 2002年1月後半



1月16日(水) エントロピー盤

エントロピー  1月12日のひとことでちょっと書いておいた、エントロピーというゲームのゲーム盤を作ってみました。右の画像をクリックするとそのページに移動します。

 ゲーム盤ですから、コンピュータは相手はしてくれません。そのかわり、ルール上許されている動きを教えてくれて、ゲーム終了の判定をしてくれます。

 エントロピーのルールは、あそびのコラムの24に書きましたが、多分実際に動かしてみないとピンと来ない方も多いかと思います。かく言う私もまだ誰かほかの人とと対戦してみたことが無いため、このエントロピー盤でコマを動かしてみて、だんだんこれがどんなゲームなのかが少しずつわかってきたところです。

 例によっていままで作ったJavaアプレットの使いまわしをしていますので、みたところは今までのほかのプログラムとよく似ています。どれかのコマをクリックすると、移動先の候補がグレーのマークで表示されますので、そこをクリックすると移動します。勝負がつくと、画面の背景が勝者の色に変わります。

 <おまけのひとこと>
 そのうちにエントロピーも問題集を作ろうかと思っています。




1月17日(木) トロイの木馬

 Hotwired Japanというニュースサイトを見ていたら、ウイルスより怖い、『トロイの木馬』攻撃の実態という記事が載っていました。 記事は煽動的に書かれてはいますが、コンピュータの世界における「トロイの木馬」というのはかなり昔から存在する概念で、危険は以前から指摘されてきていました。

 UNIXを開発したケン・トンプソンの1984年のチューリング賞受賞記念講演が、トロイの木馬の話でした。 確か、最初にコンパイラ(プログラムのソースコードをコンピュータが実行できる形式に変換するソフトウェア)を改竄してしまっておいて、ソースコードをいくら見ても発見できない凶悪なバグを仕込んでおくという手段が技術的に可能であり、 この手法を用いられると、ソースコードをいくら調べてもコンピュータを攻撃するプログラムの動作を解析できない(発見できない)という話でした。 (たとえばこんな記事にも紹介されています。) もちろん実行形式を調べればわかるのですが、ソースコードを解析するのと比較して実行形式を調べるのはより困難です。

 <おまけのひとこと>
 この、ケン・トンプソンのチューリング賞受賞講演のテキストをちょっとWebで探してみたのですがみつかりませんでした。



1月18日(金) いぬいとみこさん

 児童文学作家のいぬいとみこさんが亡くなられたそうです。ここ(朝日新聞のおくやみ欄)に載っていました。子供の頃よく読んでいた作家でした。最近の作品には縁がありませんでしたが、昔の作品にはよく記憶しているものがたくさんあります。

 Webで作品一覧をちょっと探してみたら、えほん・いんふぉというページがありました。このページのトップを見ると、今日1月18日は、A.A.ミルン(「くまのプーさん」の作者)、アーサー・ランサム(「ツバメ号とアマゾン号」のシリーズの作者)、レイモンド・ブリッグズ(「さむがりやのサンタ」「スノーマン」の作者)の誕生日なのですね。

 ちなみに、上記のページのなかのいぬいとみこさんの作品リストはここにありました。

 <おまけのひとこと>

 昨日(1月17日)の朝、いつものようにちょこちょこっと「ひとこと」を書いて、プロバイダのwwwサーバにこのページのデータを転送しようとしたら、サーバが応答しませんでした。メールサーバもproxyサーバも正常に動作していたのでメールの送受信もできましたし、他のサイトを見に行くことはできたのですが、自分のページ(および同じプロバイダで公開されているページ)だけが見えませんでした。

 プロバイダに電話で問い合わせたところ、「調べて折り返し電話する」とのことでした。5分後くらいに電話があり、「サーバがトラブルで復旧中です」とのこと。どんな障害なのか、どのくらいで復旧するのかと尋ねたところ、障害にもいろいろあるのでなんとも言えないとのことでした。

 とりあえず朝で時間が無かったので出かけてしまい、ページの更新ができませんでした。



1月19日(土) データ圧縮の最新技術?

 1週間ほど前から話題になっている、100分の1以下を実現するデータ圧縮の新技術というのがあります。ランダムな(任意な)ビットパターンを、完全に復元できる形で圧縮できるという、極めて「うさんくさい」話です。

 計算機の世界で画像を表現するのに使われている、jpeg(ジェーペグ)という画像の形式があります。コンピュータの世界のディジタルな画像というのは、もともとはbmp(ビットマップ)形式といって、それぞれの画素(ピクセル)ごとに、色の情報を持っている形になっています。jpeg というのは、これを8x8=64画素ごとにまとめて信号処理をして、人間の眼には判らないようにデータを減らして圧縮します。(乱暴な説明です。) そのため、元のビットマップには完全には戻りません。こういった圧縮を非可逆圧縮と言います。

 今回発表されたらしい技術は、完全にもとのデータを復元できる可逆圧縮と呼ばれる範疇の技術です。一般に、元に戻らなくてもよい非可逆圧縮の方が、よりデータを小さくできます。 それでも jpeg の圧縮率はせいぜい1/10程度と言われています。

 可逆圧縮というのは、元のデータが完全に復号できなければいけないわけですから、元データと圧縮された符号との間には1対1の対応がとれていなければいけません。 1対1の対応がとれなければいけないということは、「どんな入力でも小さく圧縮できる」ということが原理的に不可能だということになります。

 たとえば、今、簡単のためにアルファベット26文字のどれか1つがあったとします。これが元データだとしましょう。これを数字1文字で表現することにします。数字は0から9までの10文字あります。 「26文字のうちのどれか」という情報を圧縮して「10文字のうちのどれか」で表現できたら、圧縮された事になります。

 ところが、可逆圧縮ならば数字10文字とアルファベット26文字を1対1に対応付けできなければなりません。誰が考えても、大きさの違う集合の間に1対1対応がつけられるはずがありません。 何か他の情報を利用しない限り、「任意のデータ(全てのデータ)を小さく可逆圧縮できる」というのは原理的に不可能なはずです。

 同じような疑問を当然誰でも考えるわけで、ランダムなデータの「完全な圧縮」をうたう新技術は本物かというページがありました。 ここのインタビューを読むと、「任意の(全ての)データ」ではなくて、彼らが定義する「ランダムなデータ」が圧縮できると言っているだけなんですね。

 <おまけのひとこと>
 かぜぎみです。



1月20日(日) 幟転ばし

 風邪をひいて体調の悪い中、どんど焼きの幟(のぼり)柱を収納する行事に行って来ました。といっても人手は多いので、ほんの少しお手伝いしただけでした。

 長くて太い柱ですから大変な重さがあります。急に倒れてきたりしたら大事故になります。 立てるときとは逆に、くさびを外したら、まず大小2本のはしごでつっかえ棒をして、そのはしごを交互にすこしずつ柱に沿って動かしながら徐々に柱を倒して行きます。柱がほぼ水平になったら、軸の丸棒を外して、30人くらいで柱をかついで神社の軒下に収納します。

 たくさんの人間の力というのもすごいものだな、と素直に感心します。

 <おまけのひとこと>
 風邪がひどくなってしまいました。



1月21日(月) 一人乗り飛行マシン

 一人乗り飛行マシン、飛行実験成功なんだそうです。写真がこちらにあります。

 純粋に技術的には興味がありますが、これで空を飛びたいとは思いません。 自分が安全にこの乗り物を制御できるとは思えませんし、といってそこの部分を機械任せにしてしまったのでは面白くないだろうと思うのです。

 この飛行マシンを開発した会社の最高経営責任者(CEO)のコメントは、あたかもこの乗り物が自家用車のように普及するようなことを述べていますが、それはないだろうと思います。こういった乗り物よりもはるかに安全性が高い自動車ですら、日本だけで年間で一万人くらいの事故による死亡者がいるわけで、これが空間を飛行する乗り物になったら、それを安全に運行するためにはもっと全く新しい運用基準が必要だと思うのです。

 例えば全ての飛行マシンは自動制御になっていて、搭乗者は何らかの手段で目的地を入力すると、あとは勝手にそこへ飛んで行ってくれる。 途中で他の飛行マシンに出会ったときにどのようにして接触を回避するかは、予め決められたルールに従って、もしくはその場で接近したマシン同士での情報交換によって自動的に行われるような仕組みになっている、というようにでもしない限りとんでもない事故が多発するように思います。

 でもそうなると乗っていても楽しくなさそうです。

 <おまけのひとこと>
 もちろん、軍用など特定用途とかスポーツなどでは、完全に人間がコントロールする方法もあるでしょうけれども。



1月22日(火) LEGO

 LEGOブロックで作った作品を販売する人がいる、という記事がありました。こちらです。 普通のオフィスにあるような、3段の引出しが左右の袖についた立派な机とか、大きなグランドファーザークロック(床置時計)とかを、全部LEGOだけで作ったのだそうです。

 ビジネスデスクは材料のLEGOブロックの購入費だけで20万円以上だそうです。 確かに子供の頃、身の回りのものをみんなブロックで作ってみたくなったものですが、さすがにここまではちょっと・・・

 <おまけのひとこと>
 ブロックも好きですけれども、ここまでやると単純作業が多すぎてつらそうです。



1月23日(水) 凍結道路

 この季節にしては珍しく雨だったため、今朝は道路が見事にぴかぴかに凍結していました。

 「重い車と軽い車とどちらが止まりやすいか」という議論があります。車が止まるには、路面との摩擦を利用するしかありません。(パラシュートを開いて空気抵抗で止まる、という車は普通はありませんね。)単純なモデルでは摩擦力は垂直抗力に比例しますから、車が重いほど、制動に必要な摩擦力を得る事が出来ます。

 ところが厄介な事に重い車の方が大きな運動エネルギーを持っています。結局、高校くらいで学ぶシンプルな力学モデルで考えると、この質量の項が相殺されてしまうため、重くても軽くても制動距離は同じという結論になってしまいます。

 ところが現実には、車によって制動距離は実に様々です。もちろんタイヤの性能の影響が非常に大きいわけですけれども、例えば全く同じ車に荷物を満載したときと空荷のときとでは止まりやすさが違います。 実際には重くなるほど曲がりにくい、止まりにくいということになります。

 今通勤に利用している車は、四輪駆動車としては極めて車体重量の軽い部類に属する軽自動車で、冬場は特に重宝しています。

 <おまけのひとこと>
 もっと小さい車があったらいいな、と思っています。といっても、“乗れるチョロQ今秋発売へ タカラが1人乗り電気自動車”なんていうのはさすがにちょっと困ります。



1月24日(木) ネットワーク

 久々に会った知り合いから、とあるデータベースのサーバの応答が遅いので速いという売り文句の新しいサーバに置き換えたらもっと遅くなってしまったという話をききました。 新しいシステムは、起動直後はいいんですがしばらく使っていると突然反応が極めて遅くなってしまうんだそうです。

 高価なサーバですので、メーカーのフィールドエンジニアの人が入れ替わり立ち代り原因の調査に来ていたのですが、1ヶ月かかってようやく結論が出たそうです。その結論というのが「これがこの製品の仕様です。」だそうです。つまり直らないんだそうです。

 知り合いが独自に原因を調べて行ったところ、TCP/IP(ティーシーピー・アイピー)というネットワークの基本プロトコルの実装の問題らしいということがわかったそうです。

 何でもそうですが、世の中のものと「つながる」ためには、つなげるための規格を守る必要があります。たとえばどこの家庭にもある電源のコンセント、この形や大きさが規格に合っていなければ、電気機器が接続できません。また、おおきさや形があっていても、そこを流れる電気が規格に合っていなければ、つないだ機器が動かなかったり壊れたり(発火したり)します。

 ネットワークの世界もそれと同様に、電線でも光ケーブルでも無線でもいいんですがまず物理的につがなっていることが前提です。物理的に繋がったら、その上を流れる1と0の状態の時間変化によって、情報が伝達されます。 このとき、どういう情報を順番に送るかという「並び順」が決まっています。これをプロトコルといいます。

 たとえば、日本では手紙の住所は「○○県○○市○丁目・・・」という風に広い地域名から狭い地域名の順番で書くことになっていますが、アメリカなどでは逆に最初に宛名があって、○○市 ○○州 USA という風に書きます。このように書き方が違うと、コンピュータの通信の世界では情報が伝わりません。

 さて、コンピュータの通信の世界では、情報が過って伝わってきたと思われる場合には「再送要求」といって、もう1度同じ情報を送ってもらいます。(余談ですが、なぜ間違っていると判るかというと、例えば送られてきたデータの中の数字を全部足し算した答えを一緒に添付して送る、というようなことをします。 受け取った側でも足し算してみて、もしも送られてきた答えと自分の検算の答えが違っていたら、データの数字が途中で電気的に変化してしまったと予想できます。) ところが、通信状態の悪い、データが変わってしまいやすい通信路を用いている場合、この再送要求の発生する頻度がとても高くなってしまいます。これがネットワークの混雑につながり、ますます通信状態を悪化させる可能性があります。

 どうやら今回知り合いが導入したシステムでは、この再送要求によるネットワークの混雑を防ぐために、「再送要求が一定数以上来た場合は、しばらく黙り込む」という動作をするようにプログラミングされていたのだそうです。これは別にそのようなルールが決まっているわけではなくて、単にネットワークの不要な混雑を防ぐためのノウハウとして行われていることで、昔は多くのメーカーがこのような実装をしていたのだそうです。しかし最近はむしろデメリットのほうが大きいため、普通はもうこんなことはしていないらしいです。 問題はメーカーのサービスエンジニアがこういった基本的な事を知らなかったということです。

 で、それが「仕様です」からしっかりお金は払わなければいけない、でもそれに見合う期待した性能は出ない、という状況で、導入責任者の知り合いとしては大変なようです。

 <おまけのひとこと>
 原因が判っても、システムを作りなおせるわけでもないし、そのあたりの挙動を調整できるわけでもないので、結局サーバは遅いままなんだそうです。



1月25日(金) 科学の基礎知識問題

 大人(18〜69歳)の、科学の基礎知識に関する10問の正誤問題の正答率を調べたら、日本は14カ国中で12位だったのだそうです。一応問題を写しておきます。

  • 大陸は何万年もかけて移動している
  • 現在の人類は原始的な動物種から進化した
  • 地球の中心部は非常に高温である
  • われわれが呼吸に使う酸素は植物から作られたものだ
  • すべての放射能は人工的に作られた
  • ごく初期の人類は恐竜と同時代に生きていた
  • 電子の大きさは原子の大きさよりも小さい
  • レーザーは音波を集中することで得られる
  • 男か女になるかを決めるのは父親の遺伝子だ
  • 抗生物質はバクテリア同様ウイルスも殺す

  •  以上の10問が○か×かを答えなさいということで、国別の平均正答率は1位がデンマークの64%、2位が英国(63%)、3位が米国(61%)・・・で日本は12位(51%)なんだそうです。ちなみにここに並べられている問題の順番は、日本人の正答率が高いものから低いものの順になっているようです。(最初の大陸移動説については83%が正解しているのに、最後の抗生物質の問いは23%しか正解していないそうです。)

     理科教育というのは、健康や安全に関ることがらについて、正しい情報を収集して正しく判断できる能力を培うものだと思うのです。 (たとえば、私たちのまわりには科学に関する知識のない人々を対象とする商売がたくさんあります。) 理科が役に立つということを、もっと多くの人に知ってもらえたらと思います。

     ・・・しかしこの10問を見て、科学の知識が役に立つと感じる人もあんまりいなそうですね。むしろ「こんなことを知らなくても別に困らないよ」という感想の人が多いでしょうか。 でも、抗生物質に関する問題の正答率の低さは、日本の医療制度の問題を端的に示しているように感じました。

     <おまけのひとこと>
     少なくとも日本で普通に生活する場合、英語なんかより理科のほうがよっぽど役に立つと思うんですが。



    1月26日(土) 輪ゴム鉄砲

     子供に、割り箸で輪ゴムを飛ばす鉄砲を作ってほしいと言われました。まあ適当に作ってもよかったのですが、せっかくなので自分で作ってみたらいいのではないかと思って、作り方のページを検索してみたところ、こんなページがありました。このサイトの[ゴム銃の製作]の中のワリバシゴム銃というところに設計図が載っていたので、さっそくページをプリントアウトして材料といっしょに子供に渡してやりました。

     とりあえずお手本にということで自分でも1つ作ってみたのですが、きちんと作ると狙いもかなり正確になって、それなりに楽しめました。

     <おまけのひとこと>
     上記の「ゴム銃」のページのリンク集を見ると、かなり凝ったゴム銃を製作している人がいて驚きました。



    1月27日(日) クイズ

     今朝起きると、雪がたくさん積もっていました。それを見ていたら、昔読んだ本に書かれていたクイズ(?)を思い出しました。

     雪の上に1組(2本)の平行なスキーの跡が残っていた。それを辿って行ってみると、ある大きな木のところで、1本は木の右側を、もう1本は木の左側を通って、再び平行に続いていた。このようなスキーの跡が出来た合理的な理由を説明せよ。

     これは正解が1つだけというわけではなくて、合理的な理由をできるだけたくさん思いついた方が勝ちという、柔軟かつ論理的な発想を競うゲームだったと思います。

     例えば何か実験をしているときに思いがけない結果が出た場合や、何か機械やコンピュータなどが意図とは異なる動作をした場合など、なぜそのようなことが起ったか、先入観を排してあらゆる可能性を検討して考察する必要があります。 上記のスキーのシュプールが木のところで左右にわかれていた、というのも常識的に考えるとありえない話なのですが、常識的に考えるとありえないはずのことというのは、実は私達の身の回りで時として起り得るのです。そんな時にそれを論理的に説明する仮説をたくさん思いつけるということは重要です。

     この話は確か雑誌「サイエンス」のコラムか何かで読んだのだと思うのですが、「少なくとも6通りの合理的な説明をせよ」という問題だったと思います。皆様いくつ思いつけますか?

     <おまけのひとこと>
     3つくらいまでは簡単なのですが、6つとなるとかなり無理のある話になってしまいます。



    1月28日(月) 回文

     以前のひとことで、前から読んでも後ろから読んでも同じという「回文」の話をちょっとしたことがありました。「しんぶんし」とか「たけやぶやけた」とかいうものです。

     とあるページを覗いていたら、こんなページが紹介されていました。なんと1341文字の回文のショートストーリーだそうです。本当に正しく回文になっているか確認はしませんでしたが、これ、どのくらいの時間をかけて作られたものなのでしょうか。 そのエネルギーに感心します。

     <おまけのひとこと>
     この週末はあまり生産的な活動ができませんでした。



    1月29日(火) 点字

     しばらく前にふと興味を持って、点字について調べた事があります。 点字に関しても解説をしたページがたくさんあります。たとえばこのbraille(点字) web パソコン点訳のすすめというページの中の、点字講習というところにくわしい規則が載っています。基本的には規則的なので、パソコンのキーボードの配列を覚えるのと同程度の時間でマスターできるのではないかと思います。

     点字を覚えると、例えば公共の場所にある点字プレートなどを読めるようになって楽しいものです。ただ、私は指先では点字が読めません。あくまでも目で見て判読しています。(意味がない)

     点字というのは点が6個ですから、2の6乗で64通りのパターンがあります。(完全な空白も1つのパターンと数えた場合です。)ひらがなの場合、6個の点を母音を表す3個と、子音を表す3個に分けます。3個で表せるパターンの数は2の3乗で8通りです。母音は5種類ですから充分足りますが、子音は足りません。そこで、子音の8通りのパターンを、50音表の「あ・か・さ・た・な・は・ま・ら」の8つの行に割り振ります。行を表す8つのパターンと、母音を表す5つのパターンを覚えてしまえば、50音はあらかたわかります。あとは例外の「や・ゆ・よ・わ・を・ん」を覚えて、長音や促音、濁音などの付け方を覚えれば、そのあたりに書かれている点字はだいたい読めるようになります。

     <おまけのひとこと>
     私が小学生のころに亡くなった祖母が、点訳の(多分)ボランティアをしていました。四角いマスが等間隔に並んだ点字用の定規と専用の鉄筆のようなものを使って点字を打っていたのが印象に残っています。



    1月30日(水) プラレール

    プラレールのコース  昨夜家に帰ったら、リビングにプラレールで大きなレイアウトが作られていました。 「トーマスお出かけ立体バッグ」を中心に、高架の長方形のコースと、立体バッグの車庫からスタートして立体バッグの鉄橋の下をくぐって立体交叉している地表面のコースとが交わっているものでした。

     どうやら下の子(四歳)が誰にもお手伝いも助言もしてもらわずに2時間くらいかけて少しずつ改良しながら工夫しながら作ったもののようでした。本人はこのレイアウトがものすごく気に入っていてご自慢で、これを分解して片付けてしまうのがとてもいやだったらしく、もう夜だから寝る前に片付けようと言うと泣き出してしまいました。

     また作ればいいじゃないか、今度はもっといいレイアウトができるよ、と言ったのですが、こんなにいいものはもう作れないと言って泣きます。夜中に誰かが踏んづけてしまって壊してしまったり、怪我をしたりしたら困るだろ? と説得してみたのですが、それには返事をせずに泣いています。

     仕方がないので、「じゃあ写真を撮ってやるから、それを見ながらまた組み立てればいいよ」といって、やっと片付けることになりました。で、これがその写真です。

     下の子は最近やっと線路のレイアウトの面白さがわかってきたようです。車両も、いままでは機関車トーマスに出てくる機関車にしか興味が無かったのですが、最近は図書館で本物のJRの列車の図鑑などを借りてきて、これに乗ってみたいなどと言うようになってきました。

     <おまけのひとこと>
     このサイトのタイトルである「あそびをせんとや」を点字で表してみました。

    「あそびをせんとや」の点字パターン

     「長靴下のピッピ」の作者のA=リンドグレーンさんが亡くなったそうですね。(情報源はこちら



    1月31日(木) 点字パターン作成プログラム

    DOSプロンプトで動く点字パターンのテキスト出力プログラムの動作例

     点字のテキストを自動生成してくれるプログラムを作ってみました。といっても点字フォントなどを使うのではなく、一般のテキストの記号を利用して、テキスト3行で点字の1行を表すという方法です。 プログラムはとりあえず一番簡単な方法ということで、スペースで区切ったカタカナ文字列をコマンドライン引数として与えてやると、図のようにマルと点を使ったテキストを出力する、という簡単な作りにしました。

     プログラムのソースコードサイズは400行(9kbyte)くらいで、そのうち半分以上がカタカナから点字の6点のパターンに変換するための表(テーブル)です。それでもプログラム作成には昨夜2時間くらいはかかってしまいました。 数字やアルファベットや記号には対応しておらず、まだ仮名文字しか受け付けません。(「きゃきゅきょ」といったような拗音には対応しています。)

     なお、このプログラムはとほほの点字入門というページの点字の解説を参考にさせていただいております。このページはわかりやすくてお勧めですのでご覧下さい。

     興味のある方がいらしたら、プログラムやソースコードを差し上げますのでご連絡下さい。 とりあえず自分がWindowsのDOS窓で使える、ということだけを考えてコーディング時間が最小になるように作ったものです。そのため仮名文字をShift-JISで直接ソースコードに書き込んだりしているので、汎用性は低いプログラムです。

     <おまけのひとこと>
     なんのためにこのプログラムを作ったかという話は時間がないのでまた明日。



    [戻る]

    [Home]-[以前のひとこと]-[2002年1月後半]
    mailto:hhase@po10.lcv.ne.jp
    2001-2002 hhase