タグ:プログラミング ( 2 ) タグの人気記事

今回はこのテーマだが、違うアングルで。

うつ病を知る・神経伝達物質とは?|うつ病について知る|うつ病 こころとからだ
http://utsu.ne.jp/learn/cause/cause_01.html

経系の最小単位であるニューロンは、隣のニューロンとつながっているわけではなく、先っちょにシナプス間隙(かんげき)という20nmほどの隙間がある。これを飛び越えて情報を伝達する際に必要なのが神経伝達物質(化学伝達物質)であり、アセチルコリン、ノルアドレナリン、ドーパミン、セロトニンなどが有名。これがなければ情報はそこ止まりになり、うつ病の場合は、「幸せホルモン」と呼ばれるセロトニンが少ないため、幸せ感を感じづらく(刺激が伝達されなく)なり憂鬱な気持ちになる。

ここまでは大凡アロマテラピーインストラクターでも学ぶことなので、自分用のおさらいでまとめてみた。

この仕組みがまるでプログラミングの「if」(または「switch」)分岐のように見えるというのが今回のメインディッシュだ。

こちらのニューロンの解説では
「一つのニューロンが、複数のニューロンから信号を受け取る場合もあるし、複数のニューロンへ信号を伝達することもあります」
とあり、例えば心の3原色と言われている、ドーパミン、ノルアドレナリン、セロトニンをそれぞれ「喜び」「興奮」「幸せ」とし、「1」「2」「4」というシグナルに置き換えた場合、渡された値が「1」ならドーパミンのみ、「3」ならドーパミンとノルアドレナリン、「5」ならドーパミンとセロトニン、「7」ならドーパミン、ノルアドレナリン、セロトニンの3種という具合に、たった1byte(bitではなく)の値で全ての組み合わせを含む情報を受け渡すことができる。

/*
スイッチングを全部書くとこんなカンジ。※3原色を1,2,3にすると値の重複が生じる。
1:ドーパミン(喜び)
2:ノルアドレナリン(興奮)
4:セロトニン(幸せ)
3:ドーパミン+ノルアドレナリン(喜び+興奮)
5:ドーパミン+セロトニン(喜び+幸せ)
6:ノルアドレナリン+セロトニン(興奮+幸せ)
7:ドーパミン+ノルアドレナリン+セロトニン(喜び+興奮+幸せ)

switch ($i) {
case 1:
echo "ドーパミン(喜び)";
break;
case 2:
echo "ノルアドレナリン(興奮)";
break;
case 3:
echo "ドーパミン+ノルアドレナリン(喜び+興奮)";
break;
case 4:
echo "セロトニン(幸せ)";
break;
case 5:
echo "ドーパミン+セロトニン(喜び+幸せ)";
break;
case 6:
echo "ノルアドレナリン+セロトニン(興奮+幸せ)";
break;
case 7:
echo "ドーパミン+ノルアドレナリン+セロトニン(喜び+興奮+幸せ)";
break;
}
*/


例えばこれから伝達すべき次のニューロンは「3」を受け取ることはできても「5」を(まだ)受け取れない(未開通)場合、3=ドーパミン+ノルアドレナリン「喜びと興奮」を感じても、5=ドーパミン+セロトニン「喜びと幸せ」は感じないことになる。

これが人の「感性」の正体だろう。

ハッとひらめくような(脳科学者でありメンサ会員のモギケン博士の言う「アハ体験」のような)体験をすると、このシナプスの取り扱えるデータが増え(開通し)、前述の「5」も感じ取れるようになる。解けなかった問題が解けた瞬間とか。

参考資料:ひらめきの正体はシナプスによる脳の回路結合

「喜び」や「幸せ」の伝達回路が開通していないと、どんなに優しくされても、世話をやいてもらっても、それがウレシイこととして認識できない。だから常に新しい刺激は受け続けた方がイイ(と思う)。昨今「多様性」(ダイバーシティ)が重視される点にも理解が増すんじゃなかろうか。

/*
データを受け取ろうと待機している(求心性の樹状突起)ニューロンは、ネットワーク通信で言えばポートを開いてlisten(待機)している状態に例えられる。listenしていてもポート番号(プロトコル)が異なると受け取れない(通信できない)のは神経伝達物質の不足に読み替えられる。Unknown protocolでありdropの状態。
シナプスをスムーズに通過したデータは、遠心性の軸索を川のように流れていく。パケットフィルターを通過(accept)したESTABLISHEDな通信のようだ。
*/


というのが私のアングル。
「どこか似ている」というレベルではなく、脳は全てプログラミングされたものなのではないかと思う程。見方を変えれば、人間の英知が人間そのものの仕組み(それこそが究極)に近づいているということなのかもしれない。


ナプスの話しに戻って。

参考資料:認知症の基礎知識【教えて!認知症予防】

歳を取ると、このシナプスの突起自体も死滅してしまい、更には情報伝達に大切な「情報伝達物質」も少なくなってしまいます。
そうなるとシナプスの接続ができなくなり、これがわたしたちの思考力や記憶力の衰え、つまり脳の老化となって現れるのです。

説明書や参考書を読むのが面倒になったとか、新しいことを覚えたり学習するのが面倒になったという人はシナプスの死滅が加速しているかもしれない。

死滅したシナプスが蘇ることはないが、死滅させないよう信号を流し続けることで、脳の老化を遅らせることはできるようだ。まさしくアンチエイジング

下記の記事では、人間は有り余る程のシナプスを持って生まれ、生後しばらくのうちに刺激を受け必要と判断されたシナプスが生き残るとある(他は死滅)。

参考資料:子どもの能力を伸ばすのに適切な状況はいつ?臨界期(感受性期)の考え方 | 赤ちゃんから始める!幼児、子供にすべき知育大辞典

これを読む限り、「胎教」はとても効果がありそうだ。お腹の中にいる時から、多種多様な刺激を与え続けることで(母親の精神状態が何より大事だが)、有り余るシナプスが死滅せず沢山生き残り、先天的な天才児が生まれてきたりするんじゃないだろうか。


の老化。
年齢的に言えば25才を過ぎる頃からか、いろんなことが「めんどくさそう」にしている人をよく見かける。細かい打ち合わせとか、たくさんの資料を読むとか、調査するとか、根気と丁寧さが問われるような作業や、レイアウトが変わるとか、道具・機器が変わるなど、覚え直すことを迫られると強い抵抗感を示したり。「やる気」とはまた別に、何か「脳」を使うことが辛そうな印象を受ける。

貧乏学生からそのまま安月給サラリーマンになったような人だと食生活がひどく、ビタミンB群の欠乏(特にビタミンB12が欠乏すると精神疾患を引き起こす)や、DHA/EPA/ARAなどの不足(栄養失調)もあり、1ヶ月ほどマルチビタミンを飲めば改善することもある。が、それ以上に刺激のない環境に脳が麻痺し、考えることが億劫になっている様子も見られ、栄養失調が先か脳の衰えが先かわからないが、恐らくはメンドクサイ→新しいことをしない→シナプスの死滅を繰り返し老化が早まるという悪循環に陥っているのではないかと分析する。
これから
という時に、人ごとながらモッタイナイなと思うことが非常にしばしば(very often的な)ある。余計なお世話か。

クラウド・コンピューティングのように、ニューロンもシェアできるなら、どこかの誰かが勝手に動かしてくれて死滅せずに済むんだろうが(笑)。地球外生命体探査とか(笑)。

私は少なくともこの20年程、勉強量は日に日に増している。脳年齢も18才とか出るし。精神年齢じゃなくて(笑)。せっかく生まれてきたからには、最後の1本(ニューロン)になるまで使い倒そうと思っている。モッタイナイ精神で。

というわけで、
 求心性の樹状突起
 遠心性の軸索
 シナプス間隙(ニューロンの隙間)
はテストに出ますよ的な。switch構文はアロマのテストには出ないが。

チャーリー(
JAPAN MENSA会員

AEAJアロマテラピー検定1級
AEAJ認定アロマテラピーアドバイザー
AEAJ認定環境カオリスタ
AEAJ個人正会員
JAMHAメディカルハーブ検定1級
JAMHA認定メディカルハーブコーディネーター

チャーリーのタンブラー(毎日更新、日記・ブックマーク的な)
by charlie-ls | 2016-07-18 21:47 | 個人ブログ | Comments(0)
「エクセルに強いできるオンナ」から受け取ったエクセルファイルが、どうしても計算が合わないと、「エクセルに強いできる男」から相談があった。

あまり言うと嫌われるのでなおさら言うが(笑)、エクセルに強い系はどちらかというと結構迷惑なことが多い。下手に作り込まれると、全部検算(計算の確認)をやり直さなきゃいけないから。

具体的な解説は、下記の参考記事をご参照いただきたい。

計算誤差 - 仕事に役立つエクセル実践問題集
http://mt-soft.sakura.ne.jp/kyozai/excel_high/210_jissen_chu/60_error.htm


日経PC21 / 小数計算で発生する「誤差」 - 単純な計算の答えが合わない理由
http://pc.nikkeibp.co.jp/pc21/special/gosa/eg1.shtml


ここでの問題は、エクセルの数式「5.1-5.0」の計算結果(0.1)が、0.1以上(>=0.1)かと問われて、当然0.1以上でしょうとは(必ずしも)ならないという件。

例えば、
=IF(5.1-5.0>=0.1, “○”, “”)
という場合。

「5.1-5.0」の結果が「0.1」かそれより大きければ(以上なら)、「○」を返すというIF関数において、返るはずの「○」が返らない。

計算自体はちゃんと「0.1」が返るので、計算結果の数値を表示するだけの表なら問題ないが、このようにIFなどで判定させようとすると問題が生じる(小数の場合に限る)。

コンピュータ内部の2進数処理では、そもそも存在できない数値というものがあり、日常使われる10進数の数字で言えば、割り切れない数字(0.33333...)を「0.3だ」と精神的に割切っているだけなのと似たイメージだ。
かといって、エクセルのセルの設定で、小数点以下30桁(最大)表示に設定した(見た目上精度を上げた)ところで結果は変わらない。

このIF関数の例で言うと、計算結果は同じ「0.1」であっても、「5.2-5.1」なら「○」が返り、数式内の数値によって判定結果が異なる。

/*
「5.2」「5.1」「5.0」「0.1」は、内部的には下記のようになっている。
5.2000000000000001776356839400250464677810668945312500000
5.0999999999999996447286321199499070644378662109375000000
5.0000000000000000000000000000000000000000000000000000000
0.1000000000000000055511151231257827021181583404541015625
*/


エクセルに限らず他の言語(例えばPHP)でも同じだ。
これらの問題はプログラマーは知っている人が多いが、エクセラーは知らない人が多い。ソフトウェアを作る側と、作られた(完成品)ソフトウェアを信頼して使いこなすエクセラーの違いだ。

■付録:PHPトリック
ちなみにこの“挙動”を踏まえた上であえてアルゴリズムに組み込むと、コードが漏れたり覗かれたとしても、一見動くはずのない欠陥コードに見えるが実際は正しく動くという、ちょっとしたトリック(目の錯覚のようなもの)に使える。

ただでさえ目で追うのが面倒な再帰処理を行う複雑なループ構造の中で、

$variable = "手前の計算の結果0.1になる変数";
if(5.1-5.0>=
$variable){
 break;
}else{
 その他の処理。
}


というifによる判定分岐を入れる。
※簡単に書いたが「5.1-5.0」のところも変数で目隠しした方がイイ。

変数$variableには「0.1」が入っているから、コードの読み手はどう見ても「5.1-5.0>=0.1」のif判定は「真」でありbreakしてループを抜け出すと考える。が、このifの判定は「偽」であり、else文に書かれた「その他の処理」を行い、引き続きループ内に留まる。

数字が得意な人ほど、5.1-5.0が0.1にならないはずはないので、このコードは意味をなさない(途中でbreakしてしまって、重要な処理を完了できない)と絶対的に診断してしまう。
もちろん、念のため電卓を使って5.1-5.0を試す慎重派にもちゃんと0.1が返り、客観的証拠をもって、このコードはおかしい(意味が無い)と結論付けられる。

しかし、なぜか作者が意図した通りに動作し、必要なだけループをこなした後、無事に処理を終える。
よって暗号化していないインタプリタ言語のコードが平文で漏れても、一見わからないという「盲点」をついた私が昔から使っているコード秘匿化(時間稼ぎ?)の手法だ。

f0337316_11153241.jpg
光るキューブを投げて、スローシャッターで撮るとこうなる。2013年赤坂ルチアーノショーにて。

2013年の夏、プログラマー達がディスカッションを繰り広げる海外のあるコミュニティにおいて、半分冗談、半分優しさ、僅かに悪戯(それこそ小数点の誤差部分)で、とある質問(悩み)に対し、上記の判定を含めた解決コードを投稿したところ、どこにそんなに隠れていたのかという程の参加者達から、しばらくの間バカ扱いされた(笑)。その時私はマリリン・ボス・サヴァントの気持ちがちょっとだけ理解できた気持ちになった。

1ヶ月くらい経った頃だろうか、このコードの謎(?)を解いたMIT(マサチューセッツ工科大学)の女学生からメッセージをもらった。とても手の込んだ接触方法で、この上なく知的で気の利いたポエミーな文の最後に「自分を過信していたつもりはなかったが落ち込んでしまった」と書かれていた。

君を悲しませるつもりはなかったんだベイビー的な。
危うく恋に落ちるところだったぜベイビー的な。
シャンパン用意して待ってます。ベイビー御中的な。

反応しないはずがない私は、ロキシーと美人すぎるカメラマンナタリーの助けを借りて、更に意味不明なメッセージを送ったとさ。めでたし、めでたし。的な。

/*
余程印象的だったのか、今年初めMITの正規表現クロスワードを解いていたら、ロキシーから「(彼女)覚えてる!」というメッセージが届いた(笑)。
*/

そんな本日のBGMは(久しぶり)、Can You Save Me (“Covert Affairs”テーマソング)
https://www.youtube.com/watch?v=VaP0tnORkJI
※一瞬“夕陽のガンマン”かと思うが違う(笑)。

というわけで、「エクセルの計算が合わない」という悩み相談から、ふと2013年の熱い夏emoticon-0122-itwasntme.gifを思い出してしまったチャーリーであります。

追記:5.1から5.0を引いたらサブウーファーだ(笑)。

チャーリー
JAPAN MENSA会員

AEAJアロマテラピー検定1級
AEAJ認定アロマテラピーアドバイザー
AEAJ認定環境カオリスタ
AEAJ個人正会員
JAMHAメディカルハーブ検定1級
JAMHA認定メディカルハーブコーディネーター


チャーリーのタンブラー(毎日更新、日記・ブックマーク的な)

by charlie-ls | 2016-06-16 11:41 | 個人ブログ | Comments(1)

カメラマン☆チャーリーのブログ


by チャーリー
カレンダー
S M T W T F S
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31