かぶか

新型コロナウイルスの影響で,日経平均株価が5営業日続落だそうな.さて置き,月末なので,月次家計簿の更新作業.保有株の値段も調べて記載.なるほど,所有している16銘柄が見事に全て値下がりしていました.1週間前に計約140万円だったのが120万円に下がりました.損した気分にはなりますが,元々配当金で稼ぐ戦術なので,売買で稼ぐ人ほど痛み感じません.むしろ,今なら安く買い増せるってんで,歓迎しても良いかも.しかし残念ながら,年払いの生命保険等,なんやかんやの出費があるため,今は静観するしかないです.

今日観たアニメ(4103)

  • [C]ブラッククローバー「ネロ,追懐そして…前編」(第123話 2/25夜)

    これまで断片的に開示され,繋がって知らされていた昔の話,繋いで再提示の回.やっぱり魔法帝の妹でエルフの奥さん,ミモザにしか見えません.封印される間際に種を蒔いておく森久保悪魔,戦略家・投資家として優秀.

  • [B]ちはやふる3「なにしおはば」(第20話 2/25深夜)

    病気を圧して駆け付けた新,そして千早と太一の修羅場突入!という案の定の奏菫妄想劇場乙.なんやかんやで名人戦,決着.インタビュー中に名人続行を直談判するドラマに対し,じゃもう1年だけサービスっつー名人いいね.防衛クイーンのインタビューの周りの人に助けられた談いいね.

  • [C]七つの大罪 神々の逆鱗「希望の子」(第20話 2/26夜)

    死んだという四大天使の弟と同じ特質の上から杉田.こりゃまた気になる伏線ですね. 代々英雄に継がれてきた聖剣,それに選ばれたということが稀代の英雄の証.エクスカリバーを手にしたアーサー,ちょっと青年化しましたか.

  • [B]あひるの空「涙」(第21話 2/26夜)

    最後の3Pシュート,入らず試合終了.練習試合とは思えないほどの落ち込みようですね.相手の飄々とした監督,最後に良い指摘をしてくれましたね.日常に戻り,制服眼鏡の谷口奈緒萌え.夕暮れの車谷円,この雰囲気何なんでしょう.

  • [B]ラディアン「未来は君とともに~Eternity」(第2期21話 2/26夜)

    水曜夜のNHK教育で放映されていたこの番組が終了しました.各人の呪いを秘匿しないようにしよう,というのは解りますが,今回の事件のように悪用されかねないオコホのとかは秘匿すべきでは.女王に女王に指名されてモジモジするの萌え.見識を広げるためセトらと旅に出る,となると第3期が是非観たい.

  • [C]魔術師オーフェンはぐれ旅「唐突の暗殺者」(第8話 2/26深夜)

    謎の暗殺者,オーフェンよろしく森久保祥太郎声の時点で,キリランシェロ容姿なオチが容易に想像できすぎる.レキを自由自在に使いこなすクリーオウ凄いな.長老連続暗殺事件の犯人がオーフェンでないことを報せに戻る姉さんに死亡フラグが見え隠れ.

  • [A]かぐや様は告らせたい「かぐや様は呼ばせたい」「白銀御行は負けられない」「そして石上優は目を閉じた」(第8話 2/26深夜)

    高等部生徒会室を訪ねてきた中等部会計の白銀妹と友人ひいては姉になりたいかぐや様,いつの間にかすっかり藤原書記がその位置に.期末テストの主席と第2位の水面下の戦い.私は本当に勉強してないのに誰にも信じてもらえないまま学年一桁位不動の中学生でした.そして石上会計,に迫る本気かぐや様怖い.

  • [B]痛いのは嫌なので防御力に極振りしたいと思います。「防御特化と第三回イベント」(第8話 2/26深夜)

    手分けして牛を狩る第三回イベント.の傍らで,また人知れずボスっぽいの倒して凄いスキル身に着けて帰ってくるメイプル.クロックワークプラネットみたいな第3層に上がって早々,フィールド散策で歯車の神様に憑かれてモビルスーツみたいな.

  • [C]SHOW BY ROCK!! ましゅまいれっしゅ!!「ネオンテトラの空」(第8話 2/27深夜)

    タイバンことバンド対決の依頼が有名バンドREIJINGSIGNALから.先方に何のメリットもないからただチャンスを貰った的解釈だったものの,負けたらほわんが引き抜かれるとな.それを阻止したいというモチベーションでステージに上がったら,良くない結果になる気しかしません.

  • [C]インフィニット・デンドログラム「決闘都市」(第7話 2/27深夜)

    家賃収入で悠々自適の隠居生活,いいね.同様に潜りまくっているジャーナリストはどうやって生きているのか.宵闇に電話でキナ臭い話をしているペンギンの図,怖いわ.兄含め他の着ぐるみ隊はその仲間か敵か.

  • [C]うちタマ?!「まつりばやし」(第8話 2/27深夜)

    ノラのアンニュイ昔話.拾ってくれた人,人知れず病死か.陽気な祭りとのコントラストで一層切ないわ.そんな回想で物憂げなノラ,夏にそのコートは暑かろう.を気にする黒沢コマ萌え.

  • [B]推しが武道館いってくれたら死ぬ「わたしの未来にいてほしい」(第8話 2/27深夜)

    いつでもテンション高めのえりぴよさんに元気貰えます.ガチ恋勢にさらっと愛される空音に対し,妙な対抗意識を燃やしている緑色萌え.そのままでええねんで.地下会場停電の中,まさかえりぴよさんの被り物にそんな機能が眠っていようとは.

  • [B]地縛少年花子くん「ミツバ」(第8話 2/27深夜)

    まさかの忘れられしクラスメイトかなしす.遅くなりましたが,友達になれて良かったね.となるやいなや彼岸の花子くん,ご無体な.確かに,死後に幸せも不幸もないとは思いますけど.

  • [C]恋する小惑星「冬のダイヤモンド」(第8話 2/28深夜)

    優しい顔になっていると指摘されて居ても立ってもいられない東山桜先輩萌え.地学五輪の試験会場で逢った人,が桜先輩の妹だという伏線じゃないかと思ったのですが.親に引っ越したくないアピールしても仕方ないと諦観するのは普通でしょう.からのあおみら同居の提案,ま,小学生じゃないし,ありえるか.

  • [B]理系が恋に落ちたので証明してみた。「理系が恋に落ちたので好きの証拠を集めてみた」(第8話 2/28深夜)

    いきなり唾液欲しいとか流石です.恋愛ゲームを題材にした研究の提示を受け,やる気を出す虎助,を手玉に取ってる感じの棘田先輩いいね.やって来た池田研OGの貧乏漫画家,ここで新キャラ投入の梃入れ要るかしら.面識ある棘田先輩の浮かない表情なしてか.

  • [B]ハイキュー!! TO THE TOP「チャレンジャー」(第8話 2/28深夜)

    なるほど,相手のリードブロックを避けるため,日向の変態速攻を抑え,他のアタッカーに紛れる作戦ね.からの変態速攻.気持ち良く決まりましたね.

ほけん

先日,客先直帰のため久しぶりに早く帰宅できた日,疲れているから早めに寝ようと思ったのですが,滝沢カレンにわかるまで教えてあげる溜息番組がうっかり目に留まり,夜更かし23時就寝コース.

テーマは保険.ファイナンシャルプランナーの話に興味津々.火災保険は火災無関係でもええねんで.「満期」「元本割れ」「掛け捨て」など,普通に使っていますけど,そーいや学校では教わらない用語ですね.馴染みない人には通じないか.

今日観たアニメ(4102)

  • [C}ふたりはミルキィホームズ「いつものふたり」「『なる』というおと」(第1-2話 2/24深夜)

    月曜深夜のTOKYO MX,元「A3! SEASON SPRING & SUMMER」枠で再放送が始まりました.と言って良いんでしょうか.1クールアニメのはずのA3,3話やって同じ3話再放送して延期発表.さておきミルキィホームズ.もっとロリ頭身の印象でした.そーいや家電のトイズとか怪力のトイズとかありましたね.人気者のお嬢様集団をいつまで続けられるのか.今作の主人公はフェザーズのようですけど.

  • [B]群れなせ!シートン学園「海の吟遊詩人―カナとルカの話」(第8話 2/24深夜)

    人,相変わらず博識.アーティスティックスイミング部に入りたいけど足が遅くて他とシンクロできないため入れてもらえないシロイルカ.歌の特技を活かそうとするも,音痴.声帯ではなくメロン体で唄えば良いとか,なにそれ.同室のキリンの生態,知らんかった.

  • [C]ダイヤのA actII「足元」(第47話 2/25夜)

    視聴者にはモノローグが聴こえているからわけないですが,この人達,本当に目と目でこの会話が成り立っているのかなと.初めてのエースナンバーでのマウンドに,調子が出ない沢村.頑張れ.

ぱぶろふ

会社の引き出しに忍ばしてある飴ちゃん.1週間ほど前に尽きました.睡魔に耐えられなくなったときに近所の100円ショップへ買いに行こう.そう思い,実際に睡魔に蝕まれることがありましたが,億劫で足を運んでいませんでした.一方で,ちょいちょい口淋しい.

ということで,眠気そこそこだったけど買いに行きました.帰ってきたとき,出発時よりも眠くなっていました.条件反射ですか.10分程度の徒歩で疲れてしまったですか.

はんぞふ

時間や場所によっては,他人に接することなく乗れる電車.COVID-19の懸念により,吊り革を若干,控えています.行けるところまでハンズフリーで行ってみよう.気合いを入れて苦手な体重移動で姿勢を維持しています.もう無理,と思っても,次の次辺りが降りる駅だったら,なかなか今から吊り革握ろうとは思えず.

もっと空いているとき,ハンズフリー立位のままうとうと夢を観ることもあります.さすがに危ないから起きて!と思う一方で,睡魔強し.そういうときは観念して吊り革のお世話になることにしましょう.

ぱい

先日,Wikipediaで8人組アイドルグループ「22/7」を引いたら,「古代から知られる円周率の近似値」とありました.グループ名「22/7」が何を意味するのか,ずっと謎でしたが,ヒントになるかもしれない情報に当たり,ちょっとテンションが上がったかもしれない.

らんだむ

PCとTVをオーディオケーブルで繋ぎ,アニメの主題歌や挿入歌をキャプチャし,歌詞を手打ちし,アーカイブするのが趣味?のはず?です.始めたのは恐らく23年前,高専に入学し,初めてのPCを買い,周りの連中の影響でアニヲタイズした頃です.現時点では約7600曲が溜まっています.

一覧をExcelファイルで管理しています.このExcelのマクロで,以下3種類のデータを更新・生成しています.

  • 歌詞HTML(ヘッダの曲名等を更新)やMP3へリンクするHTML(番組名等含む表形式)
  • コレクションしているリストのHTML(ホームページ掲載用)
  • PC操作中にBGMとしてランダム再生するプレイリスト

■プレイリスト生成ロジック改良

今回,プレイリスト生成のロジックを改良しようと思い立ちました.現在は,プレイリストに追加するかどうかを示すフラグの列を設け,そこが「O」になっているMP3ファイルのパスのみをプレイリストへ出力するようにしています.このフラグは,ホームページへ掲載するリストHTMLを更新するタイミングで,1年以上前の曲を「X」に変える運用にしています.これにより,直近1年の曲のみが再生されることになります.

アニソン管理ファイル
アニソン管理ファイル

しかし,たまにはもっと昔の曲と再会し,懐かしくなりたいなと.そこで,以下の要領でピックアップした曲をプレイリストへ出力したいと思います.

  • 直近6箇月は全て登録する.
  • それ以前は古いほど少なく,新しいほど多くなるような割合でランダムに採用する.
  • 全部で1000曲をプレイリストへ出力する.

■収録日の一覧化

そのためにはまず,収録日を一覧化する必要があります.大量なので,いちいち調べて手入力するのは非現実です.それだけで心折れちゃう.いろいろ思案した結果,MP3ファイルの最終更新日をピックアップすれば良いのではと.こんな単純なことに,なかなか思い至れませんでした.灯台下暗し.

マクロでの実装は簡単.最終更新日というか,ファイルの新しさが知りたいので,最古のデータを0とした月数を算出するようにしましょう.

Const AGE_ORIGIN As Integer = 2002 * 12 + 3
Dim fso As New FileSystemObject
Dim f   As File
Dim age As Integer
Set f = fso.GetFile("xxx.mp3")
age = Year(f.DateLastModified) * 12 + Month(f.DateLastModified) - AGE_ORIGIN

VBAがあまりに久しぶりすぎて,参照するライブラリ名「Microsoft Scripting Runtime」を思い出せませんでした.最古のデータは2002年3月で団子状になっていました.MP3なるものが出回り始めたこの頃,Wave(PCM)から一気にまとめて変換したんでした.これだとそれ以前の収録日情報が不正確になりますが,そこまでの精度は不要でしょう.

■加重ランダム採用

難しいのは,新しさに応じた重みでランダム抽出する方法です.VBAのRndメソッドが返す0以上1未満の乱数は,一様分布に従うものだと思います.これをどう活用するか.三つの方法を考えました.以下の5曲が候補に残っていて,そこから3曲を選ぶ例で説明したいと思います.

  • 曲A:月数1
  • 曲B:月数1
  • 曲C:月数2
  • 曲D:月数2
  • 曲E:月数4

■加重ランダム採用方法#1

最初に考えたのは,乱数を一つ算出し,それに対応する積算月数の曲を採用する,というのを繰り返す方法です.

月数積算月数採用条件採用率
A11Rnd*10<110%
B12 = 1+11≦Rnd*10<210%
C24 = 1+1+22≦Rnd*10<420%
D26 = 1+1+2+24≦Rnd*10<620%
E410 = 1+1+2+2+46≦Rnd*10<1040%

Rndメソッドの戻りが0.5だった場合,曲Cが採用されます.そして次の1曲は,以下の方法で採用されます.という風に繰り返す方法.

月数積算月数採用条件採用率
A11Rnd*8<112.5%
B12 = 1+11≦Rnd*8<212.5%
D24 = 1+1+22≦Rnd*8<425%
E48 = 1+1+2+44≦Rnd*8<850%

この方法の問題は,処理時間がかかることです.1曲選ぶたびに積算月数を再計算する必要があります.計算量は候補数×採用数のオーダーです.実行に1分以上かかりました.これは嫌.

■加重ランダム採用方法#2

次に考えたのは,月数に基づく確率で各曲の採用是非を調べていく方法です.

月数採用条件採用率
A1Rnd<0.1 = 1/(1+1+2+2+4)10%
B1Rnd<0.1 = 1/(1+1+2+2+4)10%
C2Rnd<0.2 = 2/(1+1+2+2+4)20%
D2Rnd<0.2 = 2/(1+1+2+2+4)20%
E4Rnd<0.4 = 4/(1+1+2+2+4)40%
  1. 乱数を算出し,0.1未満だったら曲Aを採用する.
  2. (曲Aを採用したかどうかに関わらず)乱数を算出し,0.1未満だったら曲Bを採用する.
  3. (曲AやBを採用したかどうかに関わらず)乱数を算出し,0.2未満だったら曲Bを採用する.
  4. 以下同様

この方法だと,一巡では採用数に達しないことが多いです.実際は分母がもっともっと大きいので,なかなかこの採用条件が満たされないのです.そのため,方法1ほどではないにせよ,何度か回す必要があります.例えば,1巡目で曲BとDが採用された場合は,2巡目で下表のチェックをしていくことになります.

月数採用条件採用率
A1Rnd<0.1 = 1/(1+2+4)14%
C2Rnd<0.2 = 2/(1+2+4)29%
E4Rnd<0.4 = 4/(1+2+4)57%

やっぱり処理時間,かかりました.全部で600巡くらい必要で,十数秒かかりました.これもちょっと嫌.

■加重ランダム採用方法#3

最後に考えたのは,方法2をベースに,残採用数が多いほど採用条件を緩める方法です.

  1. 曲Aの採用条件を「Rnd<0.3 = 1/(1+1+2+2+4)*残採用数3」とする.
  2. 乱数が0.3未満だった場合
    1. 曲Aを採用する.
    2. 曲Bの採用条件を「Rnd<0.2 = 1/(1+1+2+2+4)*残採用数2」とする.
  3. 乱数が0.3以上だった場合
    1. 曲Aを採用しない.
    2. 曲Bの採用条件を「Rnd<0.3 = 1/(1+1+2+2+4)*残採用数3」とする.

この方法でも,一巡では採用数に達しませんでした.何度か回す必要があります.とはいえ,加速項のお陰で,5巡くらいで済みました.処理時間は数秒程度.いいね.

こうして方法3でプレイリストに採用された曲の月数統計をグラフ化しました.良い感じです.頭痛に見合う価値があります.

月数に対する採用率
月数に対する採用率

みたいなことを眠い中やっつけるのが会社での私の仕事の一つです.上記の数理統計学的な理論立てが合っていたとしても,プログラムへの落とし込みに間違いがあると台無し.眠い中,どっちに誤りがあるのか探したりするの辛い.どっちもが合っていたとしても,目標とする結果に達していなければ,別の案を捻りだす必要があります.フレーフレー私.

今日観たアニメ(4101)

  • [C]ダーウィンズゲーム「圧砕エイス」(第7話 2/21深夜)

    痛い痛い.どうしてそう痛めつけるの好きかな.花屋さんに鈴音たんや嘘発見器氏も続くのかと思っちゃいました.スイソーダ,女子が水を出して男子が凍らせてましたが,人格換えないとできない芸当なのかしら.

  • [C]ランウェイで笑って「存在感オーラ」(第7話 2/21深夜)

    才能あるからと推され,望まぬ仕事で周囲から敵意を向けられる,辛い.そりゃオーラも黒々としますわ.顔を見せない脇役でも頑張ろう,とモチベーションを努めて高めていたのに,バランス悪くなるということでそれすら敵わない低身長,涙,泣いてないし.

  • [B]ヒーリングっど♥プリキュア「カワイイ!なりたい!キュアスパークル誕生」(第4話 2/23朝)

    うっかり口利いてしまう猫と,慌てん坊の黄色,名コンビですね.キラやば,めちょっく,キラっと閃いたりする直近のキュアピンクの暴走属性は今回,黄色が引き継ぎましたか.で,静と動でぎくしゃくする次回,あるある.

  • [D]ONE PIECE「緊急事態ビッグ・マム大接近!」(第922話 2/23朝)

    触れたものを熟れさせる悪魔の実の能力の発動に際して,印を結んで忍術風に演出している厨二病.屋根から忍び込むナミ,座敷から抜け出すロビン,井戸から魂出すブルック,そもそも何を探しているんだったっけ.

  • [C]キラッとプリ☆チャン「ついに開幕!ジュエルコレクション!だよん!」(第97話 2/23朝)

    だいあを司会に推す観客の呟きを受け,即行出ていって働くだいあ凄い.逆に,ジュエルコレクションの運営側は誰を司会に掲げるつもりだったのかと.喧嘩して揉み合うえもあんなはいつものことですが,ツインテが絡まって解けなくなるのはなるほど,そう来たかと.うっかり握手して赤面するとか,ういやつ.

  • [C]BORUTO「鬼灯城を脱出せよ」(第145話 2/23夜)

    部屋に鳥の餌を撒いて,何のつもりかと思ったら,掃除の場を設けて作戦会議をするためでしたか.代理城主,忍術使えたんですね.ま,忍者向けの監獄だから当然か.毛玉氏,最終的に味方してくれる感じしかしない.

  • [C]ぼくのとなりに暗黒破壊神がいます。「Blurry Eyes」(第7話 2/23深夜)

    Mの般若の双子の妹の登場.この占い師はどんな個性をお持ちか.とか思っていたら,糸目エスパーが開眼.オッドアイで催眠術.敵に回せない.後遺症なのか,妹氏,エスパーにご執心の様子.小雪と花鳥は相変わらず,仲良しで.

  • [C]アイドリッシュセブン「5人と2人」(第12話 2/23深夜)

    解るけど,急いでいるって言ってるんだから道を空けてあげなって.妹を知っているという嘘,言語道断.こりゃファンを嫌いになるのも仕方ない.「それって良いニュース?」はどうかと思いましたが,「馬鹿だから言ってくれないと解らない」の素直な感じいいね.発音は片言なのに,丁寧な言い回しは完璧じゃないの.

  • [C]翠星のガルガンティア「離別」(第8話 2/23深夜)

    船団長,葬送.若くして後継者に指名され,想像できない重圧.でも,仲間に恵まれていますね.救難信号ですら到達が数万年後というレド,引き揚げ屋と一緒にい船団を離れるか.といってもすぐ戻ってくるんでしょ.なんてったってこっちには金元いるぜ.

  • [A]映像研には手を出すな!「大芝浜祭!」(第8話 2/23深夜)

    そんな攻めた部活あるんか!っつー面白さてんこ盛り.金森Pの根回し,言うだけのことはありますね.読モ水崎氏で充分に釣ったり,ペットボトルロケット部に宣伝を手伝ってもらったり,生徒会からの追撃をダンボールロボット部の協力で逃れたり,空調部を強請って体育館を冷やして客寄せしたり.からの上映,生アテレコ,滾る内容でした.さらに役者水崎父母との和解っつーかなんつーかいいね.

あにそん

何の気なしに歩いていると,そのリズムに合ったアニソンが頭に流れることがあります.しかしながら,何の曲か思い出せない,そんなことがありました.気になる.

アニソンシンガー曲っぽい.15年近く前の曲に違いない.この歌声は…栗林みな実?ですか? わりと好きな曲でした.とすると「舞-乙HiME」の「Crystal Energy」か.あの印象的なイントロから脳内再生すると,うーん別の曲ですね.でも,時期は良いところ突いている気がします.

うろうろした結果,閃きが降臨しました.確認したらビンゴ.やっぱり栗林みな実曲で合っていました.「タイドライン・ブルー」の「Blue treasure」でした.アニメの内容は全然思い出せませんけどね.

こういうときってどうやって辿ったら良いんでしょう.歌詞の一部をググるとか? 使ったことないけど,スマホならマイクあるので,それで鼻歌検索ですかね.今知りたいわけじゃなくて後で調べたい,というときはどうしましょう.その鼻歌をボイスレコーダ的なものに録っておくとかですかね.厄介だわ.

とか考えているうちに,キャプチャしたアニソンを管理するマクロを改良したくなりました.結論から言うと,改良は済みました.ですけど,頭使って頭痛めたので,どんなマクロをどうしたのか,日記にするのは明日の私に託すことにします.