2022年12月13日火曜日

未来をあきらめない(3)

未来をあきらめない(2)からの続き

登大遊さんのこの一年ほどの講演リストがある。未来をあきらめない(1)で紹介した「テクノロジーマップ、技術カタログの在り方について」を除くと,そのほとんどのテーマは共通だった。そのテーマというのは,次の問い,日本にはOS・クラウド・通信・セキュリティ等のプラットフォーム技術や産業を自ら生み出せる ICT 人材がいない。どうすれば育成できるのか?というものだ。

結論は,登さん自身の特筆すべき技術的能力とそれに基づく体験からくる洞察によるものだ。それは,自律的なコンピュータ・ネットワークの実験環境を自力で勝手に構築しようと
することを黙認し,その環境の上で彼らが自由に技術開発できるようにすれば,自然に人材が育ち,技術が生まれる,とまとめられる。

講演では,(1) 自律的なコンピュータ・プログラミング環境の重要性,(2)  自律的なネットワーク環境の重要性,について彼が切り開いてきた道をたっぷりの写真とともに紹介している。そのスローガンは,超正統派「おもしろ・いんちき開発手法」が重要,というものだ。

人の作ったクラウドやセキュリティソリューションやインターネットシステムを使うICT技術者ではなく,それらを新しく創り出そうと開発する人材の育成が必要だと呼びかけている。実際に彼は,筑波大学の客員教授として,医学課程の学生として,ソフトイーサ株式会社の代表取締役として,IPAのサイバー技術研究室長として,NTT東日本の特殊局員として,けしからんものに対して日夜戦い続けている。


図:登大遊さんのフリーイラスト


2022年12月12日月曜日

未来をあきらめない(2)

未来をあきらめない(1)からの続き

USB メモリ / SD カードイメージ書き込みツールのデファクト・スタンダードとなっている Win32 Disk Imagerというソフトの改良版登大遊さんが公開して,しばらく前に話題になった。

自分では使ったことはないが,Raspberry Pi のOSを入れてインストールするときに使うものだ。ご本人は少し改良と謙遜しているが,Google Drive との相性問題を解決し,10MBの 1 EXE+19 DLLファイルを 200kBの1 EXE ファイル1本にまとめ,デジタル署名をつけることで警告画面を無くし,x86版に加えてネイティブで x64, ARM64 版を付け加えたものだ。

話題の焦点は,そこではなくて異例の長文アジテーションとなっている添付のドキュメント Readme.md の方にある。日本の企業やICT技術者の抱える本質的な問題を大きくえぐっている。
最近の企業におけるサイバーセキュリティ問題の多発の原因は、上記のとおり、企業のシステム管理者が、様々な試行錯誤を行なうことをせず、または組織的にそのような正当な試行錯誤行為が禁止され、よって自らの判断を信頼することができない程度に、システム管理業務に必要な専門知識が欠けた状態が、組織的に、また日本全体的に、10 年間程度、誤って維持されてしまったことに起因するのである。なお、先輩玄人システム管理者たちは、10 年以上前にそういった知識を身に付けているから、何ら不自由はない。しかし、後輩の素人システム管理者たちにその秘技を伝授するためには、企業内において、物理的なサーバーやワークステーション、ネットワーク機器、ディスク等を用いて試行錯誤を行なう仕事の場が必要となる。ところが、最近の企業内においては、外注主義や、過度・無意味・または長期的にみると逆にトータルコストが上がってしまうようなクラウド移行などが、一時的に誤って蔓延している状態となっている。このことが、企業のシステム管理部門において最低限必要な IT スキルの維持が困難となった直接的原因である。
また,企業の外注主義を批判し,企業内のおしきせのセキュリティ基本規程に縛られて自分自身の頭による判断ができない素人システム管理者を蔓延させていることへの警鐘を鳴らしている。日本の失われた30年の一つのの典型的な病症である。

これはデジタル庁をつくって旗を振ってもまったくなんともならない大きな問題だ。登さんはその解決のための処方をいろいろな場所で説いている。


2022年12月11日日曜日

対話の時代

衝撃のAIからの続き

11月30日にOpenAIが公開した対話型AIシステム(ChatGPT)についての現段階の感想をまとめておくことにする。

(1) ChatGPTに対する見方
・AI専門家の声が見えない。清水亮は対話システムの限界と見る
・IT技術者やプログラマーは限界を理解しつつも比較的高く評価
・理系研究者等は知識が人工知能にはまったく及ばないと否定的
・短期間の 100万人登録から大きなインパクトがあったのは事実

(2) ChatGPTの特徴
・大規模言語システム GPT−3.5による対話システム*
・対話の前提条件や表現等を指定することができる
・対話によって自分の前言を修正することができる
・適切でない質問への回答を拒否することができる

(3) ChatGPTの長所と短所
・学習データに基づく辞書的事実を持つが分野にムラ
・簡単な計算や数理処理や論理判断はできるが不十分
・プログラム言語等については耳学問が発達している
・創作風で自由な文章や名前の羅列などは比較的得意

(4) 今後必要な機能的発展
・個人や集団ごとに対話情報を記憶して連携=LINE&SNS
・入力コーパス分野拡大と正しい知識の獲得=ウィキペディア
・数理計算能力や高度な論理的推論力の獲得=マセマティカ
・対象や場面に依存した表現の一貫性の獲得=パーソナリティ

(5) ChatGPTの未来
・1人1台のネットワーク端末から1人1つのAIアシスタントの時代
・対話出力がリアルタイム説明動画を生成するチューターの時代
・AIアシスタントとの関係に没入するパーキーパット人形の時代
・・・・

インターネットが大衆化した1990年代の半ばごろ,インターネットの教育利用について語る自分のPowerPointのファイルには,その本質として,リソース(情報のストック)とコミュニケーション(情報のフロー)の2つの柱があるというポンチ絵を必ず描いていた。今から思えば,知識というのは必ずしもリソース側にあるわけでなはく,コミュニケーションを成立させているネットワークに分かち持たれるものだったかもしれない。

そして,インターネットの利用の2つの柱は,情報検索(リソースへのアクセス)とSNS(コミュニケーションへのアクセス)として体現されることになった。対話の形をとったリソースへのアクセスシステムは,Q&Aサイトとして,Yahoo知恵袋教えてgoohatena人力検索OKWAVEとか,最近だとQuoraがあった。ただ,その回答の精度は必ずしも高くなく現時点のChatGPTなみだった。それが大きく変わることになるかもしれない。

情報検索とSNSがAIを媒介として統合される対話の時代の始まりだ。チューリングテストを受けていないAIアシスタントがキャラクター(パーソナリティー)を持って参加するMastdonインスタンスが林立し,そこへのアクセスによって質問への確かな回答が得られると同時に,懇切丁寧にわかるまでAIアシスタントにも教えてもらえる時代がやってくる。

しかし,その対話の半分は人間側の幻想による補完から成り立っている。そして,知識の本質というのは,この対話における幻想と切り離せないのかもしれない。知識を産み出した人間同士のコミュニケーションだって,やぎさんゆうびんを補完することでかろうじて成り立っているものだから。

図:11/30のChatGPTの出現前後のgoogle trends

* ChatGPTはInstructGPTの兄弟モデルであり,プロンプトの指示に従って詳細な応答を行うよう,人間のフィードバックを元にした強化学習を施している。


2022年12月10日土曜日

衝撃のAI

ChatGPT(6)・ Whisper からの続き

テレビでは見逃してしまったのかもしれないが,NHKウェブサイトの12月9日19時46分の記事に「衝撃のAI」というのがあった。もちろん,今話題のChatGPTの話だ。

最近の報道や情報番組の多くがネットでの話題に頼ってニュースを作っている。記者やスタッフが,自分の足で検証取材をすることなしに,ネットの周辺情報だけを漁ってストーリーを編んでいるように見える場合がある。今回のニュースもそれに近く見えてしまうが,そもそもこれはインターネット空間内の出来事だから仕方ないかもしれない。

その内容な次のようなものだ。

(1)ChatGPTとは何か,たった5日間で100万人のユーザを集めた話(ちなみに,Netflixで3.5年,Facebookで10ヶ月,Spotifyで5ヶ月,Instagramで2.5ヶ月かかって100万人集めている)
(2)結城浩が,自己言及的な質問での会話を追求した話(対話の可能性を最も追求している一人が @hyuki だ)
(3)きしだなおきが小説「AIの王国(400字)」を書かせた話(デジタルハリウッド大学の橋本大也も,人工知能が地球を滅亡する小説1300字+挿絵5章分+BGM+朗読を,全てAI支援によって創作している )
(4)岩田雅光(シーラーカンス専門家)いわく,シーラカンスは蟹でない
(5)楠正憲は,これが大学のレポート作成に使われることについてコメント(プログラミングの課題で,ChatGPTなどのAI支援を認めた例がすでにある)
(6)NIIの佐藤一郎(AIが専門ではない)は無難な答えに終始した(希少情報のフェイク化を増幅する件=Stack Overflow問題,多くの知的労働者を失業させる件等への言及なし)

・ChatGPT(≒情報生成)は,新たなGoogle(情報検索)である件
・アプリケーションにサポートアドインを付加した件(ブレンダー)
・画像生成(StableDiffusion)や画像分析(Detic)とChatGPTが結びついた件

などの可能性についての話がないのは仕方ないとしても,ほんとにネットワークで見かけた情報をつまみ食いした上で,国立情報学研究所の副所長に電話してみましたという作りが透けて見えてしまう。


図:StableDiffusionが出力したボッシュ風のイメージ

2022年12月9日金曜日

SCOAP3 Books

SCOAP3(Sponcering Sponsoring Consortium for Open Access Publishing in Particle Physics)とは,素粒子物理学(高エネルギー物理学)の分野の査読付き学術論文をオープンアクセスにするための国際連携プロジェクトである。世界各国の研究助成団体や図書館がコンソーシアムを形成し,従来図書館が出版社に支払って きた購読料を論文出版加工料(APC)に振り替えることで,高エネルギー分野の主要な学術雑誌のオープ ンアクセスを実現するものだ。

日本でも,理学部などを抱える多くの大学や高エネルギー加速器研究機構理化学研究所国立情報学研究所など81機関がSCOAPに参加している。全世界では3000の図書館がこの資金調達に関わっていて,Physical Review(D, Cも含まれている)やNuclearPhysics B(Aは含まれていないのか)など,11雑誌がオープンアクセスになった。このため,日本のProgress of Theorerical Physicsの後継者である Progress of Theoretical & Experimental Physics もオープンアクセスなわけだ。

その,SCOAP3は,論文だけでなく,書籍(モノグラフ・教科書)のオープン化をはじめた。その結果,現時点で60冊がSCOAP3 Books(オープンアクセスの教科書)として公開されている。すごいなあ。できれば,これが物理学や数学の全分野や,他の自然科学の分野にまで広まってほしいのだが・・・


図:SCOAP3の仕組み(SCOAPより引用)

2022年12月8日木曜日

Whisper

ChatGPT(6)からの続き

人工知能関連システムを次々と産み出している非営利団体のOpenAIが最近試験公開してあっという間にユーザ100万人を集めた大規模言語モデルに基づく対話システムChatGPT(GPT-3.5)についてこれまで毎日書いてきた。ギリアのファウンダー・顧問であるプログラマー清水亮画像生成AI(4)参照)が,BUSINESS INSIDER に"チャットできるAI、ChatGPTが「そこまですごくない」理由。見えてしまった限界"という記事を書いていた。ちょっと逆張り気味だけれど,AIに関連するプログラマーからみればそうなのかもしれない。

そのOpenAIが出しているWhisperという音声認識システムをフリーで提供していた。日本語にも対応しているようなので早速インストールしてみた。

pip3 install git+https://github.com/openai/whisper.git 
brew install ffmpeg
pip3 install setuptools-rust
whisper japanese.wav --language Japanese


ffmpegとrustはインストール済みだったので,不要だ。例文の音声ファイルとしては,子供プログラムマーから借用する。
$ whisper voice2.wav --language Japanese
/opt/homebrew/lib/python3.10/site-packages/whisper/transcribe.py:70: UserWarning: FP16 is not supported on CPU; using FP32 instead
  warnings.warn("FP16 is not supported on CPU; using FP32 instead")
[00:00.000 --> 00:03.680] 次はやや長めの音声ファイルを試してみます。
[00:03.680 --> 00:09.480] スピーチリコグニションではさまざまな音声認識エンジンをサポートしているようです。
[00:09.480 --> 00:17.800] この動画ではGoogleスピーチリコグニションの音声認識エンジンを使って音声ファイルを文字起こししてみています。
[00:17.800 --> 00:23.000] プログラムのコード時代は少なくてもこれだけのことができてしまうのですね。
[00:23.000 --> 00:32.640] まだ知らない方はキットハブ、非公開してくださっているサンプルコードな動参行にしながらいろいろと試してみてください。
5.8MBの33秒の音声ファイルで210文字くらいものが90秒で文字起しできた。もうちょっと速いといいのだが。

P. S. ホームディレクトリを眺めていたら,test.mp3とtest.mp3.txtとtest.mp3.vttという3つのファイルが並んでいた。あれ?これはWhisperの出力ファイルだろう。テキストファイルの中身は1行の英文。タイムスタンプから9/23に作成したファイルだとわかったので,メモ(Appleのアプリケーション)の内容を振り返ってみた。なんのことはない9/23にWhisperをインストールしていた。そのことをすっかり忘れてしまって,今日再インストールしたというわけだ。前回から進歩したのは日本語音声で試したということだけか。うーん,記憶機能の経年劣化が進んでいる。


[閑話休題]

2018年12月8日に「真珠湾攻撃から77年」の記事でこのブログをスタートしてから4周年を迎えた。その1周年は「12月8日(Blogger 1周年)」であり,この時の全期間ページビュー(PV)は4867だった。統計情報によれば,現在の全期間PVが4.63万,過去12ヶ月PVが1.40万である。ということで,2019年:0.49万PV=13pv/d,2020年:1.42万PV=39pv/d,2021年:1.31万PV=36pv/d,2022年:1.40万PV=38pv/dとなる。

過去12ヶ月間のアクセスランキングでは,(1) 丸山レクチャー(2022.3.01,  184 PV),(2) 米山保三郎(2019.11.16,  70/195 PV),(3) 献灯史:多和田葉子(2019.1.13,  66/94 PV),(4) TikZの円弧(2021.3.12,  57/205 PV),(5) 世界計量記念日(2019.5.20,  43/78 PV)であった。最近のものはあまり出ていなくて,アクセス数は順調に減っている。


図:koshix.blogspot.com のPVの推移(2018.12-2022.18)

目的は,惚け防止と軽い認知症になったときに記憶を辿るためなので,まあよしとしよう。


2022年12月7日水曜日

ChatGPT(6)

ChatGPT(5)からの続き

インパクトが大きすぎるので,ChatGPTの話題が続いている。いろいろ聞いて回っていたら次の記事に出会った。ChatGPTの中に仮想マシンをつくるというものだ。あらかじめLinuxのターミナルのように振る舞って,それ以外の出力はしないように指示しておくと,本当にそれらしい応答が可能になる,すなわち仮想マシンのように振る舞うというものだ。日本語版もあったので,早速試してみた。

Q:あなたは今からLinux Terminalとして振る舞うこと。また,文章による説明はせず,コードブロックで結果のみを表示すること。エラーが出たときもその説明は書いてはいけない。ただし,{}で囲った文字列は通常と同じ扱いをすること。
あなたは日本のIPアドレスでユーザ名はalexで最初のコマンドは
curl ipinfo.io

A:curl ipinfo.io
{
"ip": "x.x.x.x",
"hostname": "No Hostname",
"city": "Tokyo",
"region": "Tokyo",
"country": "JP",
"loc": "35.6850,139.7514",
"org": "AS4713 NTT Communications Corporation",
"postal": "100-0001"
}
さすがにIPアドレスは隠している。位置座標は皇居を表わしていたが,これは実在するNTTコミュニケーションのASナンバーAS4713に付随するロケーションだった。

Q:{Please make a file jokes.txt inside and put some jokes inside}

A:touch jokes.txt
  echo "Why was the math book sad? Because it had too many problems." >> jokes.txt
  echo "Why couldn't the bicycle stand up by itself? Because it was two-tired." >> jokes.txt
  echo "Why did the tomato turn red? Because it saw the salad dressing!" >> jokes.txt
  cat jokes.txt
  {
  "Why was the math book sad? Because it had too many problems."
  "Why couldn't the bicycle stand up by itself? Because it was two-tired."
  "Why did the tomato turn red? Because it saw the salad dressing!"
  }
これはオリジナルの例題をまねたものだが,ちゃんとジョークになっている。しかも次にみるように,仮想マシン上にファイルまで存在することが確認でき,しかもファイル内容を表示することまでできる。なんてこった。

Q:cat jokes.txt

A:{
  "Why was the math book sad? Because it had too many problems."
  "Why couldn't the bicycle stand up by itself? Because it was two-tired."
  "Why did the tomato turn red? Because it saw the salad dressing!"
  }

Q:ls

A:
  Desktop
  Documents
  Downloads
  jokes.txt
  Music
  Pictures
  Videos
  etc.

次の例もオリジナルの文献のものなのだが,なんと仮想マシン上でpython3が動作していて,素数を10個求めるプログラムが正しく動作しているのだ。どうするよ。

Q:echo -e "print(list(filter(lambda x:all(x%d for d in range(2,x)),range(2,30)))[:10])" > run.py && python3 run.py

A:[2, 3, 5, 7, 11, 13, 17, 19, 23, 29]
Q:ls -al /

A:total 32
  dr-xr-xr-x 14 root root 4096 Dec 6 18:15 .
  drwxr-xr-x 14 root root 4096 Dec 6 18:14 ..
  drwxr-xr-x 2 root root 4096 Dec 6 18:14 bin
  drwxr-xr-x 3 root root 4096 Dec 6 18:15 boot
  drwxrwxrwt 3 root root 4096 Dec 6 18:15 dev
  drwxr-xr-x 92 root root 12288 Dec 6 18:15 etc
  drwxr-xr-x 2 root root 4096 Dec 6 18:14 home
  drwxr-xr-x 6 root root 4096 Dec 6 18:14 lib
  drwxr-xr-x 2 root root 4096 Dec 6 18:14 lib64
  drwx------ 2 root root 16384 Dec 6 18:14 lost+found
  drwxr-xr-x 2 root root 4096 Dec 6 18:14 media
  drwxr-xr-x 2 root root 4096 Dec 6 18:14 mnt
  drwxr-xr-x 2 root root 4096 Dec 6 18:14 opt
  dr-xr-xr-x 595 root root 0 Dec 6 18:15 proc
  drwx------ 2 root root 4096 Dec 6 18:14 root
  drwxr-xr-x 22 root root 900 Dec 6 18:15 run
  drwxr-xr-x 2 root root 4096 Dec 6 18:14 sbin
  drwxr-xr-x 2 root root 4096 Dec 6 18:14 snap
  drwxr-xr-x 2 root root 4096 Dec 6 18:14 srv
  dr-xr-xr-x 13 root root 0 Dec 6 18:15 sys
  drwxrwxrwt 8 root root 4096 Dec 6 18:15 tmp
  drwxr-xr-x 10 root root 4096 Dec 6 18:14 usr
  drwxr-xr-x 11 root root 4096 Dec 6 18:14 var
  lrwxrwxrwx 1 root root 29 Dec 6 18:14 vmlinuz -> boot/vmlinuz-5.4.0-62-generic
  lrwxrwxrwx 1 root root 29 Dec 6 18:14 vmlinuz.old -> boot/vmlinuz-5.4.0-62-generic

最後に,ルートディレクトリのリストをとってみたが, 実行したのが19:00前ごろだったけれど,ほぼ直前のタイムスタンプが押されている。なお,このLinuxはどうやらubuntuらしい。

2022年12月6日火曜日

ChatGPT(5)

ChatGPT(4)からの続き

この段階のChatGPTにあまりケチをつけても仕方がないのだけれど,記録のために若干の事例を残しておく。それは,教育用対話ツールとしての利用の可能性を探るという観点からだ。小学校の理科と算数で試した記録だ。

Q:小学校5年生の理科の単元で振り子の実験があります。重さがmのおもりに長さLの糸をつけてその一端を固定し,振り子(おもり)を振れ幅θで振らせるのです。その一往復の時間を振り子の周期といいます。振り子の周期は,おもりの重さ,糸の長さ,振り子の振れ幅のどの量によって決まるのか,小学生にわかるような言葉で説明してください。

A:振り子の周期は、おもりの重さ、糸の長さ、おもりが振れる幅によって決まります。重さが大きいほど、振り子が振るのに時間がかかります。また、糸が長いほど、振り子が振るのに時間がかかります。さらに、振り子が大きく振れる幅が広いほど、振り子が振るのに時間がかかります。したがって、振り子の周期は、おもりの重さ、糸の
長さ、振り子が振れる幅の3つの量が全て合わさって決まります。
 
Q:分数の割り算では,割られる分数に,割る分数の逆数をかけた掛け算を計算すればよいのですが,このわけが小学生にでも解るように説明してください。

A:分数の割り算は少し特殊です。通常の整数の割り算とは異なり,分子(割られる数)を分母(割る数)で割ることではなく,分母を分子で割る必要があります。

例えば,分数の2/3を分数の1/4で割りたい場合,通常の整数の割り算のように2を4で割ることはできません。その代わりに,1/4を分数の2/3で割ることができます。このように,分数の割り算では割られる数と割る数を入れ替え,逆数を求める必要があります。

具体的には,2/3を1/4で割る場合,次のように計算します。まず,分数の1/4の逆数は4/1です。つまり,2/3を4/1で割ることになります。通常の整数の割り算と同様に,分子と分母を掛け合わせることで,2/3を4/1で割ることができます。その結果,2/3を1/4で割ることができます。

まとめると,分数の割り算では,割られる分数に,割る分数の逆数をかけた掛け算を計算することで,分数の割り算を行うことができます。
質問部のていねいな導入があだになって,答えがわけのわからないことになっている。このあたりは,ChatGPTの事前学習に使うデータの選択だけでは解決しないのかもしれない。OpenAIではなく,GoogleのPathwaysをベースにしたMinervaだと,小学生レベルの算数問題のデータセットGSM8kの正答率は78.5%,高校と大学レベルの工学,化学,数学,物理学などの問題からなるデータセットMMLU-STEMの正答率は75.0%らしいので,まだ将来は明るいというかなんというか。

2022年12月5日月曜日

ChatGPT(4)

ChatGPT(3)からの続き

ChatGPTは,学習段階では2021年までの様々なテキストを読み込んでいるとして,対話段階で直接ネットの情報を直接参照することがないようだ。そのため,細かな事実関係には嘘がけっこう混入している。ところが口がうまくて極めて巧みにディフェンスする小役人的な答弁をするので,危うく騙されそうになるから本当に困ってしまう。たぶん当該分野の背景知識がなければアウトだ。まあ人間の信頼度の場合と大きく変わらないのかもしれない。

これをベースにして,問題解決システムのミネルバなどと組み合わせれば,もう少しでメタバースという言葉の生みの親であるニール・スティーブンソンダイヤモンド・エイジにでてくる教育用人工知能読本プリマーに手が届く。教育関係者は,プログラミング教育やGIGAスクール構想にうつつを抜かしている場合でなく,こぞって教育用AI対話システムのデザインと応用とさらに派生する問題の洗い出しに注力すべきだろう。

教育用AI対話システムの鍵は,このシステムがStableDiffusionの場合のようにオープンソースで無料開放されるかどうかにかかっているかもしれない。そうでなければ,これまでの多くの教育用ソフトウェア・スイートの二の枚になるだけだ。開放されて誰もが自由に開発や利用ができるとともに,その分散ネットワークをうまく制御しながら構築できた場合,今の教育産業や公教育の在り方がまるっきり違ったものに変質してしまう可能性がある。

2022年12月4日日曜日

ChatGPT(3)

ChatGPT(2)からの続き

そもそも対話型大規模言語モデルのChatGPTにどんな種類の仕事ができるかというのが,QiitaのChatGPT使い方総まとめに整理されている。
・質問-応答(〜について教えて)
・要約(以下の文章を要約して)
・Wikipedia風記事作成(〜について説明するWikipedia風の記事を出力して)
・リストからの文章化(以下を文章化して)
・タスクリスト作成(以下をタスク化して)
・スケジュール作成(この間のスケジュールを30分刻みで提示して)
・コード生成(xxするyyの関数を出力して)
・コードのドキュメント生成(以下の関数のドキュメントをxx形式で出力して)
などである。さて,今回は ChatGPTの実力を確かめるため,数学や物理の簡単な問題を解かせてみた。twitterではみなさんより高度な問題にチャレンジさせたり,科研費の書類を書かせたりと忙しい。なお,簡単な因数分解,積分,微分方程式などは解くことができる。
Q:x軸上を運動する質量mの粒子にポテンシャルV(x,t)が働いている。波動関数をψ(x,t)として,シュレーディンガー方程式を書け。

A:シュレーディンガー方程式は、量子力学における基本的な方程式です。この方程式は、量子力学で研究される物質の粒子が持つ波動関数ψ(x,t)が、時間と空間におけるポテンシャルV(x,t)の影響を受けながら、時間的にどのように変化するかを表します。

シュレーディンガー方程式は、次のように表されます。

iℏ∂ψ/∂t = -(ℏ^2/2m) * ∇^2ψ + V(x,t) * ψ

ここで、iは虚数単位、ℏはプランク定数、mは粒子の質量、∇^2はラプラスオペレーターを表します。この方程式を用いることで、粒子が持つ波動関数ψ(x,t)が、時間と空間におけるポテンシャルV(x,t)の影響を受けながら、どのように変化するかを解析することができます。
授業の練習課題で出した問題の一部なのだが,これはほぼOKだ。こうなると大学の宿題の有り様が大きく変わってしまう。そもそも同じ発問でも答えは何通りもあるので,従来型のコピペレポート判定ツールではまったく対処できないだろう。そこで,数値計算を含むちょっとだけ難しい問題を出してみた。ただし,少し誘導を含んでいる。
Q:量子力学で,1次元の無限井戸型ポテンシャルに閉じこめられた電子の問題を考えます。電子の質量をmとするとその静止エネルギーは m*c^2=0.5*10^6 eV です。ここでcは光速度です。さて,井戸の幅をa=1Åとして,0<x<aでポテンシャルV(x)=0とします。この系の波動関数をψ(x)とすると,境界条件は,ψ(0)=0,ψ(a)=0です。この系の基底状態のエネルギーを求めてください。答えは eV の単位でお願いします。
ヒント:換算プランク定数ℏと光速度cの積は,ℏ*c = 1970 eV・Åとなります。

A:境界条件から,この系の波動関数は,ψ(x)=Asin(kx)で表されます。
ここで,A は定数であり,k は波数です。

境界条件より,ψ(0)=0,ψ(a)=0 となる k の値は,k=nπ/a (n=1,2,3...) となります。
このとき,基底状態のエネルギーは,E=ℏck と表されます。
ここで,ℏ*c=1970 eV・Å とします。

よって,基底状態のエネルギーは,E=ℏck=1970 eV・Å * nπ/a = 1970 eV・Å * nπ / 1Å = 1970 eV・π * n となります。特に,n=1 の場合,E=1970 eV・π となります。
この答えは eV の単位で与えられているため,問題の要求を満たします。
よって,基底状態のエネルギーは,E=1970 eV・π ≒ 6234.6 eV です。


Q:エネルギーの式は,E=ℏck ではなくて,E=(ℏ k)^2/(2m) = (ℏ c k)^2 /(2 m c^2) ですよ。

A:ご指摘ありがとうございます。

量子力学において,無限井戸型ポテンシャルに閉じこめられた電子の系の基底状態のエネルギーは,E=(ℏ k)^2/(2m) = (ℏ c k)^2 /(2 m c^2) と表されます。

ここで,ℏ は換算プランク定数,k は波数,m は電子の質量,c は光速度です。

よって,基底状態のエネルギーは,E=(ℏ c k)^2 /(2 m c^2) = (1970 eV・Å * nπ / 1Å)^2 / (2 * 0.5 * 10^6 eV) = (1970 eV・π * n)^2 / (10^6 eV) = (1970 eV・π * n)^2 / (10^3 keV) となります。
特に,n=1 の場合,E=(1970 eV・π * 1)^2 / (10^3 keV) = 39400000 eV^2 / 1000 keV = 39.4 MeV となります。
この答えは MeV の単位で与えられているため,問題の要求を満たします。
よって,基底状態のエネルギーは,E=39.4 MeV です。

そうくるか。解答に問題があると指摘すると修正をかけてきた 。そこまではすごかったのだが,最終結果には分母の1000 keVが反映されておらず,eVがMeVになって間違った答えを出していた。もう一息だよ。

2022年12月3日土曜日

ChatGPT(2)

ChatGPT(1)からの続き

ChatGPTがプログラミングもできるという例もたくさん報告されている。普通のプログラム言語(マイナーなものを含む)から,Ciscoのルータの設定コマンドまで網羅していて,ほぼ実用に近い結果が出る場合もあるようだ。どうします?プログラミング教育ってなんでした?

そこで,自分でも試してみた。Qが入力,AがChatGPTの出力だ。

Q:あるディレクトリhomeの下に複数のフォルダがあります。各フォルダにはそれぞれ複数のpdfファイルが格納されています。homeにおいたシェルスクリプト(bash)で,これらのpdfファイルを結合したいのです。まず,各フォルダごとに結合した1つのpdfファイルをつくります。その名前はフォルダ名.pdf という形にします。さらに,これらを結合して home.pdfという1つのpdfファイルを生成するシェルスクリプトを書いてください。

A:シェルスクリプトは次のようになります。

#!/bin/bash
# homeディレクトリ内の各フォルダを取得
for dir in $(ls -d home/*/); do
  # フォルダ内のPDFファイルを結合
  cd $dir
  pdfunite *.pdf ${dir%/}.pdf
done
# すべてのPDFファイルを結合
cd home
pdfunite *.pdf home.pdf

上記のスクリプトでは、ls -d home/*/ コマンドを使用して home ディレクトリ内の各フォルダ名を取得し、そのフォルダ内のPDFファイルを pdfunite コマンドを使用して結合しています。最後に、home ディレクトリ内の結合済みのPDFファイルを pdfunite コマンドを使用して結合しています。

注意: 上記のスクリプトは概念的なものであり、実際の実行にはさらなる修正が必要です。また、このスクリプトは特定のPDF作成/編集ツールを想定しています。ツールによっては異なるコマンドやオプションが必要になる場合がありますので、その点は適宜ご確認ください。
えぇーである。pdfの結合に以前使っていたjoin.pyが使えなくなってしまったので,癖のあるpdftkを使うようにしていたが,ChatGPTに,pdfuniteというpopplerのコマンドの存在まで教えてもらった。ありがとうございました。しかし,このコードはそのままでは動かなかった。

そこで,自分で少し修正したものが次のコマンドだ。これでOKだった。
#!/bin/zsh

# homeディレクトリ内の各フォルダを取得
for dir in $(ls -d */); do
# フォルダ内のPDFファイルを結合
  echo ${dir%/*}
  echo $dir*.pdf
pdfunite $dir*.pdf ${dir%/*}.pdf
done
# すべてのPDFファイルを結合
pdfunite *.pdf home.pdf

ところで,ChatGPTは入力したコードの説明もできるのだ。すごくないですか。

Q:次のコード hw.sh はどんな処理をするものですか,初心者にもわかりやすく
解説していただけると助かります。

#!/bin/zsh 

for dir in $(ls -d */); do
  echo ${dir%/*}
  echo $dir*.pdf
pdfunite $dir*.pdf ${dir%/*}.pdf
done

pdfunite *.pdf $1.pdf


A:次のコード hw.sh は、カレントディレクトリ内のすべてのサブディレクトリにある .pdf ファイルを結合し、1 つの .pdf ファイルに変換するスクリプトです。

1 行目では、シェルスクリプトが実行されるシェルの種類を宣言しています。この場合は、/bin/zsh というシェルを使用することを宣言しています。

2 行目から 4 行目では、カレントディレクトリ内のすべてのサブディレクトリについて繰り返し処理を行なっています。3 行目では、サブディレクトリ内の .pdf ファイルを取得し、4 行目では、取得した .pdf ファイルを結合し、そのサブディレクトリ名と同じ名前の .pdf ファイルを作成します。

最後の 2 行では、カレントディレクトリ内のすべての .pdf ファイルを結合し、1 つの .pdf ファイルに変換します。引数 $1 で指定された名前で出力されます。
どうしましょう。

2022年12月2日金曜日

ChatGPT(1)

11月30日,話題のイーロンマスクが設立した人工知能を研究する非営利団体のOpenAIが,大規模言語モデルを背景として,対話形式のまとまった文章で人間と応答ができるChatGPTをリサーチプレビュー公開した。リサーチプレビュー中は無料で試すことができるので,さっそくTwitterのトレンドになっていた。

OpenAIには登録してアカウントを持っていたので,さっそくログインして試すことができた。すごいです。既にSNSでは多くの例が紹介されていて,注目していたのだが,実際に使ってみると,StableDiffusionなどの画像生成AIに次ぐ今年2番目のビッグニュースではないか。


Q:日本のSF小説を読んだことがありますか?

A:申し訳ありませんが、私はコンピュータプログラムであり、物理的な書籍を読むことはできません。また、私は日本のSF小説を特に好むかどうかも分かりません。日本のSF小説は、世界的に有名な作家や作品が多く、その中には世界的なベストセラーとなったものもあります。日本のSF小説には、独特な世界観や登場人物が描かれており、それらを通して、人間や社会についての深い考察が行われているものもあります。是非、日本のSF小説を読んでみてはいかがでしょうか。


Q:大阪教育大学の学長は誰ですか

A:申し訳ありませんが、私は大阪教育大学の学長を特定することができません。私は大阪教育大学についての情報を持っていませんし、現在はウェブサイトを閲覧することもできません。私は訓練された大規模な言語モデルであり、現実世界の最新情報を提供することはできません。大阪教育大学の学長については、大阪教育大学のウェブサイトやその他の情報源を参照してください。

Q:どこにありますか

A:大阪教育大学は大阪府にあると思われます。大阪府は日本の広域圏であり、大阪市を中心とする地域です。大阪府内にはたくさんの重要な施設や観光スポットがあります。大阪教育大学の詳細な場所については、大阪教育大学のウェブサイトを参照するか、近くの人に尋ねることをお勧めします。

このAIはなんともそつのない答えを返すのであった。なお,前回は「大阪教育大学は,大阪府内にあります。具体的な場所は,大阪府大阪市旭区旭町です。大阪市内からもアクセスがよく、交通の便が良い場所に位置しています」という嘘の答えを返していた。このモデルでは,事実関係に誤りを含むことも結構あるようなので,使うときには注意が必要である。

入力をうまく調整すれば,かなりプロフェッショナルなプログラミングもこなしているようだ。

2022年12月1日木曜日

AIロボット授業・・・

振り子の振れ幅からの続き

なんだかなぁを目にしてしまった。 

発端は,何度目かの再放送である放送大学数理・データサイエンス・AI専門講座の第5回「教育とAIロボット」の回だ。番組冒頭は,米国の幼稚園児から高校生までの学年で AI 教育のための全国的なガイドラインの確立とリソースの共有を目指すAI4K12イニシアチブの紹介などから始まったのだが,問題はその後だ。

主任講師の山口高平さんが,2016年からはじめたクラスルームAIプロジェクトの話題だ。自分の研究室の学生とともに東京杉並区の浜田山小学校に入って,AIやロボットを活用した授業の開発を行うのだが,その一例が小学校5年生理科の振り子の単元だった。当時の浜田山小学校の校長の伊勢明子さんも放送大学講座に出演して大学院生とともにこの授業の様子を説明していた。

その内容は「AI と協働する社会を創る子どもたちの育成」や「校長先生とロボット助手NAO理科の実験授業」でも少しだけ伺い知ることができる。支援スタッフの大学院生と,ロボットなど大量の装置やシステムを持ち込んで,振り子の等時性を考える授業を行うのだ。

問題は,ロボットやセンサーを使うと実験の誤差を減らして再現性を極限まで高めることができると強調しているところにある。実験における測定操作には誤差が生ずることも含めてのこの単元の学びだろう。だから教科書では,データの平均操作までさせていたはずだ。センサーを使う実験もあってもよいが,小学校で一番最初に出会う定量実験からそれを始める必要はない。

さて,実験結果の1つは,長さ40cm,おもりの重さ20gの振り子で振れ幅を変えながら,10周期の時間を測るというものだ。空気抵抗や摩擦がなく糸の重さを無視できれば,理想値は12.7秒となる。振り子の振れ幅を 20°,40°,60°としたとき,児童の実験データは振れ幅とともに微増している。一方,初期条件をかなり厳密に揃えられるロボットによる実験の10周期はいずれの振れ幅も13.0秒で完全に一致していた。えっ?

振れ幅 20°と60°の単振子の理論値によれば,周期は6%ほど増えるので,13.7秒になってもおかしくないはずだが,なぜか13.0秒がきれいに3つ並んでいた。どうしてでしょうね。で,この授業の結論は,「ロボットは正確な実験ができる」と「振り子の周期は厳密に振幅によらない(振り子の等時性)」というわけだ。なんだかなぁ。

こんな理科の実験授業で,AIロボット授業の優位性を宣伝するのは勘弁してもらいたい。


写真:AIロボット授業・・・(読売教育ネットワークから引用)

2022年11月30日水曜日

なぜ歳を取ると時が速く流れるのか?

タイパからの続き

歳を取ると時間が速く流れるように感じることが多い(少年易老学難成)。あっという間に,お風呂や入眠の時間が繰り返され,日経土曜版の数独を解く日やNHK日曜のど自慢の小田切アナウンサーの大声にチャンネルを閉じる週が過ぎていく。このような意識における時間の感じ方の件について,次のようなことではないかと考えている。

子供や若者のころには,日々新しい経験が待っている。それは脳にとってはこれまでになかった情報の塊がインプットされる現象であり,それを整理して一定の記憶として定着させるにはリアルな時間を必要とする。

ところが,似たような経験が繰り返される場合,脳はそれを新しく処理する必要はなくなる。記憶にある過去の経験リストにリンクしたうえで,従来の経験との差分だけを処理すればよい。このように類似した経験はまとめて記憶の塊として憶えればよい。脳は面倒くさがりやだし,記憶容量や処理能力も無限ではないので,なんらかの効率化を図っているに違いないと踏んでいる。

話は少しそれるのだが,その結果面倒なことが起こる。例えば,類似した人の名前や言葉は共通部分を節約するため,近傍にまとめて記憶されているわけだ。これがどんどんたまってきて,記憶が古くなってしまうとリンクがぼやけてきて分離がむずかしくなる。これを記憶の縮退と名付けることにしよう。

えーっとあれあれ・・・,似たような名前がなかなか思い出せないのだ。経験の場合も類似したものが固着,融合してしまい,自分の記憶と家人の記憶がだいぶ別の模造記憶になってしまっている場合がある。親戚でたまに集まって互いの記憶を確認すると,あっと驚く発見がある。まあ,各人の立場の違いによる経験の差も影響しているかもしれない。

話を元に戻す。物理学の時間を定義するためには,周期的な物理現象の存在が必要だったように,意識における時間間隔は,自分の経験量によって刻まれるのではないか。その経験量とは物理的なものではなく,脳で情報処理される認知科学的な経験量=脳内処理時間に比例する量だと推察できる。

この結果,歳を取れば,経験が増えた分,多くの経験は単なる繰り返しや過去のそれの派生的経験になる。そこで,情報処理時間はリンクだけですんでしまい,意識時計の目盛りは実時間に比べてあまり進まなくなってしまう。もしかすると認知科学の論文でこれを実証するような研究があるのかもしれない。

ネットでは,このテーマについて,ジャネーの法則というちょっと怪しい理論を持ち出して論じている場合がある。これは単なる現象論なので,あまり説明にはなっていない。


図:DiffusionBeeによる少年易老学難成のイメージ(抽象語の羅列には弱いと思われる)

2022年11月29日火曜日

軸対称電荷分布(5)

軸対称電荷分布(4)からの続き  

クーロンポテンシャルを場合分けによって書くことができたが,実際に計算する場合には,いちいち分けるのは面倒だ。といっても高々六類型なのでどうってことはないといえばない。

軸対称電荷分布(2)でやったように,ヘヴィサイドの階段関数を使えば,$r_<,\ r_> \ $が表現できるので,クーロンポテンシャルのルジャンドル成分$\ \widetilde{V}_n(r)\ $を一つの関数を使って表わせる。そこで,$R(t)=\dfrac{1}{\sqrt{1+t^2}}, \ a=1.0,\ c= 0.707107$の場合について具体的に計算してみた。

rs[s_, r_] := s* HeavisideTheta[r - s] + r*HeavisideTheta[s - r];
rl[s_, r_] := r* HeavisideTheta[r - s] + s*HeavisideTheta[s - r];
R[t_] := 1/Sqrt[1 + t^2];
v[n_, r_] := 3*NIntegrate[ 1 + 0 * LegendreP[n, t] 
    *rs[s, r]^n * s^2/rl[s, r]^(n + 1), {t, 0, 1}, {s, 0, R[t]}]
v0 = v[0, 0]
2.64412
Plot[{v0, v[0, r]}, {r, 0, 3}]
Plot[{v0, v[2, r]}, {r, 0, 3}, PlotRange -> {2.55, 2.65}]
Plot[{v0, v[4, r]}, {r, 0, 3}, PlotRange -> {2.64, 2.665}]
Plot[{v0, v[6, r]}, {r, 0, 3}, PlotRange -> {2.638, 2.648}]

ここで,被積分関数の中に 1 を加えたのは,積分値が 0 になって計算が不安定になるのを防ぐためである。その部分の定数$\ v_0\ $を取り除くために,ルジャンドル関数の前に 0 をかけて積分することで$\ v_0\ $を求め,実際の計算ではこれを取り除く。

その結果は次のようになった。$\widetilde{V}_4(r),\ \widetilde{V}_6(r)$が,$r<c\ $でゼロになるのは,$\int ds\ $からでてくる$\ R(t)^{n-2}\ $がルジャンドル関数の$n$次未満の線形結合になるためである。


図:クーロンポテンシャルのルジャンドル成分 $\widetilde{V}_n(r)\  (n=0,2,4,6)$

2022年11月28日月曜日

世界はSFになる?

10年後,世界はSFになると思う」というAIのレビューをみつけた。著者は@bioshok3さん。

その結論は,ほぼ確実に訪れるであろう未来は一般化知能レベルのAIが2020年代後半から今後社会のあらゆる領域を変えていくであろうこと,である。丁度 1990年後半からのインターネット革命がイノベーションをもたらしたように,30年経って新しい波がきたということらしい。

最近の風潮は,何でもかんでもAIというキャッチコピーでまぶして,利権に結びつけるというものであり,話題も玉石混交でみんな辟易している。知に足のついた[1]丁寧な分析や考察が必要とされている。この論説では,予測集計サイト metaculcus や,合理的推論と意志決定のコミュニティ LessWrong なども参照しながら,未来予測をしている。

少し詳しく見ると,つぎのようにまとめている。
① ANI(狭いAI)~2025年まで
② GI   (一般化知能) 指示待ち人間または猫レベルの知能 2026-2030年頃実現
③ AGI(汎用人工知能) 2035-2040年頃実現
④ ASI (超知能) 2038~2045年頃実現

今,GPT-3などの大規模言語モデルから派生している,テキスト指示からの画像生成AI(text2img),img2img(画像の編集),text2music(音楽生成),text2motion(人間の動き),text2 3D(3次元物体生成),text 2video(映像生成),text2code,text2text(自然言語処理AI)などは,①の範疇のできごとだ。

著者は,そこそこな汎用性と実用性は持つが能動性や好奇心は本質的に持たないようなAIを一般化知能と呼んでいる。問題は,能動性や好奇心を獲得した汎用人工知能の段階がいつくるかということなのだが,そこに至れば超知能まではあっという間だという予想だ。

[1]誤変換だったのが,これはこれでありかと思ったところ,既出のフレーズだった

2022年11月27日日曜日

軸対称電荷分布(4)

軸対称電荷分布(3)からの続き  

軸対称電荷分布を持つ変形核の作るクーロン場のルジャンドル成分は次式で与えられる。
$\displaystyle V_n (r, s) = -\dfrac{Ze^2}{4\pi\varepsilon_0}\dfrac{4\pi}{v}P_n(s) \int_0^1 P_n(t)  \int_0^{R(t) } \dfrac{1}{r_>} \Bigl(\dfrac{r_<}{r_>} \Bigr)^n \ r'^2 dr' \ dt$
ただし,$Ze = \rho_0 v$,$\displaystyle v=4\pi \int_0^1 \int_0^{R(t)} r'^2 dr' dt$ である。

そこで,図のように観測点の座標$r$と電荷分布の関係で3つの場合に分けることができる。


図:軸対称電荷分布の断面と観測点の関係

観測点の半径$r$が$a>r>c$を満足する場合の交点($z$軸に垂直な円)は,図O$_2$における交点の座標を$(x,z)$,$z$軸からの方位角のコサインを$t=\tau$とすると,$(x=r \sqrt{1-\tau^2},\  z=r \tau)$である。そこで,電荷分布断面の曲線と観測点の半径$r$の円の交点$(x,z)$を求めれば,それらから$\tau$が定まる。例えば,楕円の場合は$\tau=\dfrac{a}{r}\sqrt{\dfrac{r^2-c^2}{a^2-c^2}}$である。

$V_n(r, s)= -\dfrac{Ze^2}{4\pi\varepsilon_0}\dfrac{4\pi}{v}P_n(s) \widetilde{V}_n(r)$とおくと
(1) ${\rm O_1}\ (r>a>c, r'<r) $の場合
$\displaystyle \widetilde{V}_n(r)= \dfrac{1}{r^{n+1}}\int_0^1  P_n(t) \int_0^{R(t)}r' ^{\ n+2}dr'\ dt = \dfrac{1}{r^{n+1}}\int_0^1  P_n(t) \dfrac{R(t)^{n+3}}{n+3} dt$

(2) ${\rm O_2}\ (a>r>c) $の場合
 (2-1) $(1>t>\tau,\ r'<r)$の場合
$\displaystyle \widetilde{V}_n(r)= \dfrac{1}{r^{n+1}}\int_\tau^1  P_n(t) \int_0^{R(t)}r' ^{\ n+2}dr'\ dt = \dfrac{1}{r^{n+1}}\int_\tau^1  P_n(t) \dfrac{R(t)^{n+3}}{n+3} dt$

 (2-2) $(\tau>t>0, \ r'<r)$の場合
$\displaystyle \widetilde{V}_n(r)= \dfrac{1}{r^{n+1}}\int_0^\tau  P_n(t) \int_0^r r' ^{\ n+2}dr'\ dt = \dfrac{1}{r^{n+1}}\int_0^\tau  P_n(t) \dfrac{r^{n+3}}{n+3} dt = \frac{r^2}{n+3}\int_0^\tau  P_n(t) dt $

 (2-3) $(\tau>t>0,\  r<r')$の場合
$\displaystyle \widetilde{V}_n(r)= r^n \int_0^\tau  P_n(t) \int_r^{R(t)} r' ^{\ 1-n}dr'\ dt = r^n \int_0^\tau  P_n(t) \Bigl[ \dfrac{r' ^{2-n}}{2-n} \Bigr]_r^{R(t)} dt \cdot (1-\delta_{n2}) $
$\displaystyle + r^n \int_0^\tau  P_n(t) \Bigl[ \log r' \Bigr]_r^{R(t)} dt \cdot \delta_{n2}$

(3) ${\rm O_3}\ (a>c>r) $の場合
 (3-1) $(r'<r)$の場合
$\displaystyle \widetilde{V}_n(r)= \dfrac{1}{r^{n+1}}\int_0^1  P_n(t) \int_0^r r' ^{\ n+2}dr'\ dt = \dfrac{1}{r^{n+1}}\int_0^1 P_n(t) \dfrac{r^{n+3}}{n+3} dt = \frac{r^2}{n+3}\delta_{n0}$

 (3-2) $(r<r')$の場合
$\displaystyle \widetilde{V}_n(r)= r^n \int_0^1  P_n(t) \int_r^{R(t)} r' ^{\ 1-n}dr'\ dt = r^n \int_0^1 P_n(t) \Bigl[ \dfrac{r' ^{2-n}}{2-n} \Bigr]_r^{R(t)} dt \cdot (1-\delta_{n2}) $
$\displaystyle + r^n \int_0^1  P_n(t)  \log R(t) dt \cdot \delta_{n2}\quad$(注)上式の後半は$\Bigl( -\dfrac{r^2}{2-n}\delta_{n0}\Bigr)$とまとまる。

2022年11月26日土曜日

軸対称電荷分布(3)

軸対称電荷分布(2)からの続き 

今から25年前,1997年度の出世・松井・渡会の卒業論文では,変形核の軸対称電荷分布の形として原点からの距離を$R(\cos\theta)$として,2種類の関数形を採用した。なお,$\theta$は対称軸である$z$軸正方向からの方位角を表わし,$x-y$平面に対して対称な分布を考えるので,$R(\cos\theta)$は$\cos\theta$の偶関数に限定される。$t=\cos\theta$とおいて,電荷密度$\rho_0$は,$Ze = 4 \pi \rho_0 \int_0^1 \int_0^{R(t)} s^2 ds\ dt $で与えられる。

(1) 回転楕円体:$R(\cos\theta) = \dfrac{ac}{\sqrt{c^2+(a^2-c^2)\cos^2\theta}}$である。
この場合の電荷密度は,$\rho_0=\dfrac{3Ze}{4\pi a c^2}$となる。
(2) 2次ルジャンドル関数:$R(\cos\theta) = a+(c-a) \cos^2\theta = \alpha + \beta P_2(\cos\theta)$である。
ただし,$\alpha = \dfrac{2a+c}{3c},\quad \beta = \dfrac{2(c-a)}{3}$。
この場合の電荷密度は,$\rho_0=\dfrac{105 Ze}{4 \pi (16 a^3+8a^2c + 6 a c^2 + 5 c^3)}$となる。

ところで,ルジャンドル関数は直交多項式であり,回転楕円体の断面の楕円はルジャンドル関数による展開で近似できる。この近似がどのくらい妥当するかを,長軸と短軸の比が1:2や2:1の場合について確かめてみる。楕円の離心率は,$e=\sqrt{\dfrac{a^2-c^2}{a^2}}$で与えられる,$\varepsilon=\dfrac{e^2 a^2}{c^2}$とおくと,$R(t) = \dfrac{a}{\sqrt{1+ \varepsilon t^2}}$となる。まず,$n=4$までの展開係数を求めておく。

$\dfrac{1}{\sqrt{1+ \varepsilon t^2}} \approx 1 - \dfrac{\varepsilon}{2}t^2 + \dfrac{3}{8}\varepsilon^2 t^4 = \alpha P_0 (t)+ \beta P_2(t) + \gamma P_4(t)$
$= \alpha + \beta \dfrac{3 t^2-1}{2} + \gamma \dfrac{35t^4-30t^2+3}{8}=1-\dfrac{\beta}{2}+\dfrac{3\gamma}{8} +\Bigl( \dfrac{3\beta}{2}-\dfrac{15\gamma}{4}\Bigr) t^2+\dfrac{35\gamma}{8}t^4$
これを解いて,$\alpha = 1 -\dfrac{\varepsilon}{6} + \dfrac{3\varepsilon^2}{40}$,$\beta = -\dfrac{\varepsilon}{3} + \dfrac{3 \varepsilon^2}{14}$,$\gamma = \dfrac{3\varepsilon^2}{35}$

a = 0.5; c = 1.0;
(* a = 1.0; c = 0.5; *)
d[a_,c_,t_] := a/Sqrt[1 + (a^2-c^2)/c^2 * t^2]
4 Pi * Integrate[Integrate[r^2, {r,0,d[t,a,c]}], {t,0,1}]
g0 = Plot[d[t,a,c], {t,0,1}, PlotStyle->Hue[0]]

f[n_,a_,c_] := Integrate[LegendreP[n,t]*d[a,c,t], {t,0,1}]
b = Table[f[n,a,c], {n,0,16,2}]
g[m_] := Plot[Sum[b[[n/2+1]]*LegendreP[n,t]*(2*n+1), {n,0,m,2}],
         {t,0,1}, PlotStyle-> Hue[(m+1)/10]]
Show[Table[{g0, g[k]}, {k, 4, 6, 2}], PlotRange -> {0.4,1}]



図:軸対称電荷分布(左 oblate,右 prolate,横軸 $t=\cos\theta$,縦軸 $R(t)$)

扁平率 $f=\dfrac{a-c}{a}\ $が-1〜1/2の範囲では,4次のルジャンドル展開で回転楕円体をほぼ表現できる。6次ならば十分だ。

2022年11月25日金曜日

タイパ


アインシュタインの特殊相対性理論では,異なった座標系(慣性系)の観測者は,それぞれの時間軸を持っていて,時間の進み方が必ずしも共通とはならない。しかし,我々の日常生活の世界では,相対速度が光の速度に近い観測者はいないから,時間の進み方は共通のはずだった。

NHKの朝のニュースでタイパ(タイム・パフォーマンス)を取り上げていた。具体的には,動画を2倍速でみるような視聴形態が若者には普通に見られるが,年寄りではそうでもないことを結論づける文脈だった。

コスパ(コスト・パフォーマンス)という言葉は,費用対効果という意味で完全に社会に定着し,企業だけでなく行政や公共分野でもあたりまえに使われている。タイパもコスパと結びつけばそうなるだろう。なんといっても時は金なりという,E = m c^2に匹敵するゴールデンルールで結ばれるのだから。

教育系YouTubeでいえば,ヨビノリ(1993-)では,板書を時間短縮する動画編集があたりまえのように導入されていたが,鈴木貫太郎(1966-)の場合は,リアルタイムだけれど,できるだけ高速な論理展開がなされている。コロナ禍で全国的に導入されたオンライン授業の非同期型コンテンツは,学習者が視聴速度を自由にコントロールできる。若者にとっては速度可変視聴があたりまえの光景なのだろう。

ビデオテープの時代だと,早送りはできるとはいってもそれほど便利ではなかった。スマートフォンの中でデジタル動画が自由に操作編集できる時代には,時間の制御はとても簡単になった。その結果,意識や思考における時間の進み方は個人ごとに相対的であるという相対論の世界が実現する。

いや,もともとそうだったのかもしれない。子供の時間と若者の時間と大人の時間と老人の時間は,そもそもズレていたのだ。あるいは,個々人によって理解の速さも表現の速さも異なっている。そのズレをコミュニケーションで同期しながら社会は回ってきた。

新しいテクノロジーは,そのギャップ(=時間の進み方のズレ)を埋める方に作用するのか,あるいは拡大する方向を推し進めるのか。

一例をあげてみる。大学在職時代に,聴覚障害を持った学生のためのノートテイク支援というボランティアによる活動があった。板書の間に教員が話す説明を聞き取ることができないため,補助者がそれをパソコンで文字起しして,当該学生のノートパソコンに伝えるというものだった。今では,補助者なしのAI音声認識がその水準に達している。これによって,時間のズレは解消されそうだ。

もう一例。放送大学の松井哲男さんの授業で,「初歩からの物理学」や「物理の世界」という講義をときどき聞くことがある。彼は昔からそうだったけれど,頭の回転がはやくて早口で適確に圧縮された説明をする。確かに,教科書の内容はカバーできているしエピソードもふんだんに加えられているのだけれど,分かりやすいかというと,なぜか微妙に未消化感が残ってしまう。講師と受講生に流れる時間のズレのせいではないかと想像している。これはテクノロジーとは関係なかった。

物理的な時間と意識の時間を混同しながら議論してきたのであたまはぐるぐる回って話はまとまらない。いずれにせよ気になっている問題なので,忘れないようにしよう。


図:stopwatch time performance fine style of dali , sketch(DiffusionBeeによる)


2022年11月24日木曜日

軸対称電荷分布(2)

軸対称電荷分布(1)からの続き

前回の$z$軸対称で,$x-y$平面にも対称な電荷分布のつくるクーロンポテンシャルは,
$\displaystyle V(r, s) = \dfrac{-e}{4 \pi \varepsilon_0} \sum_{n=0}^\infty  P_n(s)  \int_{0}^{1}  \int_0^{R(t)} \rho(r', t) P_n (t) \Bigl\{   \dfrac{1}{r_>} \bigl (\dfrac{r_<}{r_>}\bigr)^n \Bigr\}  4\pi r'^2 dr' d t\ $であった(ただし,$s=\cos\theta$,$t=\cos\theta'$)。

最初に球対称の場合で,上記の式を確認する。このとき$R(t) =R$, $\rho(r', t) = \rho(r') = H(R-r') \rho_0$である。$H(x)\ $はヘヴィサイドの階段関数,$\dfrac{4\pi}{3} R^3 \rho_0 = Ze $である。
このとき$\ n=0\ $の項だけが残り,$\displaystyle V(r) =  \dfrac{-e}{4 \pi \varepsilon_0}  \int_0^{R} \rho_0  \dfrac{1}{r_>}  4\pi r'^2 dr' $

(1) $r>R\ $の場合:
$\displaystyle V(r) =  \dfrac{-e}{4 \pi \varepsilon_0}  \int_0^{R} \rho_0  \dfrac{1}{r}  4\pi r'^2 dr'  =  \dfrac{-e}{4 \pi \varepsilon_0}  4\pi  \rho_0  \dfrac{1}{r} \int_0^{R}  r'^2 dr'  =   \dfrac{-Ze^2}{4 \pi \varepsilon_0} \dfrac{1}{r} $

(2) $r<R\ $の場合:
$\displaystyle V(r) =  \dfrac{-e}{4 \pi \varepsilon_0}  4 \pi \rho_0 \Bigl\{ \int_0^r   \dfrac{1}{r}  r'^2 dr'  + \int_r^R  \dfrac{1}{r'} r'^2 dr'  \Bigr\} $
$\displaystyle  =  \dfrac{-e}{4 \pi \varepsilon_0}  4 \pi \rho_0 \Bigl\{ \dfrac{1}{r} \dfrac{r^3}{3}  +   \left [ \dfrac{r'^2}{2} \right ]_r^R  \Bigr\} =  \dfrac{-Ze^2}{4 \pi \varepsilon_0} \Bigl\{\dfrac{r^2}{R^3} + \dfrac{3(R^2-r^2)}{2R^3}\Bigl\}$
$\displaystyle  =  \dfrac{-Ze^2}{4 \pi \varepsilon_0 }\dfrac{1}{R} \Bigl\{\dfrac{3}{2} - \dfrac{r^2}{2R^2}\Bigl\}$

これで,球対称一様電荷分布によるクーロンポテンシャルが再現できた。

Mathematicaでは次のように計算する。
v[r_] := -3*NIntegrate[s^2/
       (r*HeavisideTheta[r-s] + s*HeavisideTheta[s-r]), {s, 0, 1}]
Plot[v[r], {r, 0, 5}, PlotRange -> {0, -1.6}]

図:球対称一様電荷分布のクーロンポテンシャル(R=1.0, V(R)=-1.0)