Study!

新しく覚えたことのメモ書き

麻雀の勉強

f:id:scapedog:20200523233556p:plain

相変わらず雀魂をやっている.

前回の振り返り

前回、課題を以下のようにまとめた

https://scapedog.hatenablog.com/entry/2020/05/23/233437

列挙すると

  • 放銃系の課題
  • 手の作り方の課題
  • リーチの課題
  • 計算の課題

などがある. これを一つづつ解決していく.

課題解決に向けて

麻雀戦術は調べると大量に出てくる.
オカルトめいたものから、「何切る?」レッスンなどたくさんある.
自分は偶然にもとつげき東北という麻雀研究者を知っており(ニコニコの第一世代実況者で株で犬儲けという実況をしていた)、統計的アプローチから戦略を導出するというのが非常にわかりやすかったので彼の著書を中心に学ぶことにした.

学習材料

調べてみると、とつげき東北さんの「科学する麻雀」はかなり一般的なようで、影響された作家が多いようだった. また、近代麻雀の書籍はKindle Unlimitedに登録されており、無料で学べる天国のような状態であった.
色々なサイトや書籍をザッピングしてみたが、いまの自分に必要な情報は以下の書籍にまとまってそうであった.

学習方法について

学習は徐々にやることが重要である.
体系的に覚え、実践し、振り返りをする、これより良い学習方法はない.
基本的なルールを以下のように定めた.

  • 1日1時間麻雀に時間を費やす
  • 15分は勉強の時間、毎日1テーマ覚える
  • 30分は実践の時間、東風戦2局打ち、「覚えたテーマを実践する」ことのみに集中する(負けてもOK)
  • 残りの15分は振り返りの時間、このテーマを覚えたことでどうなったか、あるいは実践できていないとしたら何が原因かを考える

学習例

先日、ブロック分けと牌効率の基礎について学んだ.
この結果、期待されるのは「リーチまでの手順が早くなること」である.

そして実施した結果どうなったかというと、2局やって2位、4位という微妙な結果であった.
ただ、明らかにリーチまでの手順が早くなっていた. 負けたのは放銃となってしまったためだ.
1シャンテンまでの受け入れ枚数を最大化して、両面待ち聴牌にする、ということができず和了が遅くなったために放銃されやすくなったのだと思われる.

今後の学習について

基本的に以下のテーマに沿って進めていく.

  • ブロック
  • 牌効率
  • リーチ判断
  • ベタオリ判断
  • フーロ判断

勉強前と勉強後

f:id:scapedog:20200603184208p:plain f:id:scapedog:20200603184219p:plain

びっくりするほど負けてるけど, カンで勝つんじゃなくてセオリーで勝つ, ということが重要なのである.(涙目)

麻雀を覚え始めたので課題整理

f:id:scapedog:20200523233556p:plain

最近雀魂が俄に活気づいてきている.
自分も過去数回やっており、ある程度はできるようになりたいと思ってやってみたらハマってしまった.
寝る前に1時間程度やるのがGW以降の慣習になっている. 30戦程度やって平均順位2.4とまあ微妙である.
中級者以上だと初心者卓で1.8-2.2くらいらしいので、これを目標にしていきたいにゃ.

ということで今回は現状の課題および対策の検討をしてみる.
何事もPDCAを回すのが重要なのである.

現時点での自分の麻雀スキル

以下に現時点での自分のスキルをまとめる.

  • 役は大半を覚えた
  • ドラ/裏ドラ(関連してリーチ)の大事さを覚えた
  • 役の出る確率を若干考慮できるようになった
  • むやみにタンヤオ和了らなくなった(点数を意識して牌をまとめることで副露率が下がった)
  • 三元牌にこだわりすぎないようになった(いいことかはわからない)
  • シャンテン数を計算できるようになった
  • 河から和了りやすい種類の牌を多少推測できるようになった
  • 点数差を意識してだいたいこのくらいの飜数の役を作りたいという意識を持てるようになった
  • 配牌から染めたりメンタンピン目指したり二翻以上の役を意識しつつ捨て牌を選べるようになった
  • シャンテン数と順目から下りる判断がざっくりできるようになった

現時点の傾向

  • 戦闘スタイル
  • 統計
    • 副露率が高い(40%程度, 東風戦だからこのくらいでもいいかも)
    • 放銃率も高い(14%程度)
    • 和了率はちょうどいい?(23%程度)
    • 平均和了が低い(平均5,700点)
    • 和了順数が遅い(平均12.1順)

課題と対応の検討

放銃系

  • 遅くリーチして放銃してしまう
    • 何巡目までならリーチしていいか、目安
  • 下りられなくて放銃してしまう

手の作り方系

  • 高い手を作ってて脇が甘くなったり結果作れなくてリカバリもできない
    • 高い手を作るときのセオリー
  • オーラスで勝ってるときに他家に和了られてしまう
    • 点数低くても最速で和了る方法
  • 役牌いつ捨てるべきか悩ましい
    • 役牌の捨てるタイミング

計算系

  • 役が何翻なのかわからず点数計算が出来てない
    • 『どの役で上がったら勝てるか』がわからない
  • 役のできる確率を計算できていない
    • 期待値がわからない

知識系

  • それぞれの役の強みと弱みがわからん
  • 相手の河から手牌を推測できない
    • 表筋裏筋等以外の手牌を推測するアプローチ

細かい系(それぞれの役について)

  • チートイツって何ペアからいくべき?トイトイにするタイミングとは

重そう系(あとで)

  • 符計算/点数計算の詳細がわからない

覚えるべき知識

  • 表筋/裏筋
    • だいたい覚えたが細かく知ることができていない
  • 役の複合
    • そこまで意識できていない
  • いい形
    • 223とか2334とかのセオリーを完全に把握できていない

知りたい

  • 放銃率や和了率の各パラメータの目安
    • 自分の出す役の統計からつい忘れてる役を見出す
    • 初級、中級、上級、プロはそれぞれどんな役で上がるか(それぞれの役の出る確率)
    • プロは初級者、中級者、上級者と戦うときどんな役で上がるか(それぞれの役の出る確率)

オンラインMTGでアドベンチャーゲーム風のUIで会話する方法

成果物

www.youtube.com

前段

オンラインMTGに皆さん飽きてきたかと思います。 私も最初は背景を変えたりアバターになったり色々したのですが、それも飽きてしまいました。 というわけで今回はひと手間加えてアドベンチャーゲーム風のUIで会話する方法をご紹介したいと思います。 これを改良すればなんか素敵なアプリケーションもできるかもしれないので、ぜひ皆さんご検討くださいませ。

アドベンチャーゲームのヒロインになろう!

アドベンチャーゲーム(ADV)とは、エロゲ、ギャルゲ、乙女ゲーなどのコンピュータゲームのいちジャンルです。 具体的には以下のように構成されています。

f:id:scapedog:20200415001429j:plain

出展: Nintendo Switch版「CLANNAD」が2019年春に配信決定。タッチスクリーン操作&5.1chサラウンドに対応し,Dangopediaも収録(4Gamer.net)

要素としては、

  • 背景
  • キャラクター立ち絵
  • セリフウィンドウ
  • セリフ

があり、これらを構築すればADVの登場人物になることができます。

アプローチの検討

今回は実写の人間をキャラクターと見立て、背景素材を挿入させ、その上にセリフウインドウ、セリフと乗せることにしましょう。 そのためには

  • Webカメラから取得した映像から人物を切り出す
  • セリフをリアルタイムに取得する

ことが必要になってきます。 前者に関しては

という方法があり、今回は一番簡便なZoomのバーチャル背景+OBSのクロマキー処理を利用します。 ちなみに、自分でバーチャル背景機能相当のものを実装する場合、Azule Kinectなどの深度センサーを活用すると良いでしょう。

後者に関しては

という方法があり、今回はGoogle Speech to Textを使います。

データの流れ

ざっくり以下のようになる

f:id:scapedog:20200415003849p:plain

OBSのVirtualCamがMacだと使えないのでCamTwistを利用する 基本的にこの構造であとはパパッとやればなんとかなる。

各実装

Google Speech to Textで音声をテキストにする

こちらに関してはStackOverflowなどの記事のほうが詳しいので割愛する というか音声ストリームの変換はサンプルがあるので、そのままパクる https://github.com/GoogleCloudPlatform/python-docs-samples/blob/master/speech/microphone/transcribe_streaming_mic.py

OBSのテキストを自動更新する

https://github.com/Palakis/obs-websockethttps://github.com/Elektordi/obs-websocket-py を使う 使い方はWebSocketで繋げてcallするだけ

from obswebsocket import obsws, requests
ws = obsws('localhost', 4444)
ws.connect()
# body プロパティに message を入れて更新
ws.call(requests.SetTextFreetype2Properties(*['body', None, None, None, None, None, 'Hiragino Kaku Gothic Pro', 0, 48, 'W6', None, None, None, message, None, None]))

結び

というわけで、雑実装でADVのキャラクターになってみた。 もうちょい時間を使って実装すればまともなADV UIが完成すると思われるので、皆さんにもやってほしい。

リモートワークにおける働き方について

0. 前提: リモートワークの難しさ

リモートワークとは、最高効率で働くことができる夢のような労働環境です。

しかし、人間は効率よく生きることには向いていません。多くの人は集中力を高い状態で維持することに慣れていないしすぐ気が滅入ってしまいます。

また、直接会うことと同様のことをリモートワークですべて実現することは非常に難しいものがあります。

なお、いままでの『リモートワーク』と今状況下の『リモートワーク』は似て非なるものです。たとえば私はフルリモートだったとき、喫茶店や深夜のファミレスを自分の労働場所と定義していました。しかし、いまの外出自粛環境下では、労働場所を自宅以外に設定するのは非常に難しい状況にあります。我々は新たな挑戦をしなければならないのです。

本稿ではいままでの働き方とリモートワークの違いやリモートワークでの働き方のTipsなどをまとめます。よりよいリモートワークができるよう祈っております。

1. リモートワークで失われるもの

1.1 会社から提供される労働環境

会社が用意するオフィス、回線環境などがなくなります

  • Pros
    • 自分の好きな場所で働くことができる
  • Cons
    • 「オフィススペース」を自分で定義する必要がある
      • 「オフィススペース」「生活スペース」が同一になる
    • 回線などを自前で用意する必要がある

1.2 身体的な接触

触れ合ったり、リアルな存在感を感じることがなくなります

1.3 他愛ない雑談

ふとした雑談などは非常に限られるようになります。ちょっとしたコミュニケーション、簡易MTG、席ごしの呼びかけなどがなくなります。

  • Pros
    • 無駄な雑談がなくなる、時間的な効率が良くなる
    • いきなり声をかけられることがなくなる、集中した状態を維持することができやすくなる
  • Cons
    • 雑談は新しいインスピレーションの源泉だが、その機会がなくなる
    • 集中のオンオフの切り替えが発生しづらくなる

1.4 出勤/打ち合わせの移動

電車通勤などで出勤していた人は、その往復がなくなります。

  • Pros
    • 移動により体力を削られることがなくなる
    • ゆっくり寝ることができる
  • Cons
    • 体力が落ちる
    • インプットの時間(読書など)を強制的に作ることができなくなる

1.5 取引先との直接の会話

Zoomなどのオンライン会議が主流となるため、物理的な対面打ち合わせがなくなります。

  • Pros
    • 議題について集中して討論することができる
  • Cons
    • 信頼形成が非常に難しくなる
    • 名刺などの物理的な媒体がなくなる

1.6 相互監視

オフィスワーカー相互の監視がなくなります。

  • Pros
    • くつろいだり、詰まったときにベッドに寝転んだり、テレビを付けて少し休憩したりすることができる
  • Cons
    • 怠け者が多くなるリスクが上がる

1.7 空調システム

冷房・暖房・換気などを管理する機構がなくなります。

  • Pros
    • 自分の快適な気温で労働ができる
  • Cons
    • 光熱費がかかる
    • 換気などをつい忘れてしまう

1.8 ランチ・飲み会

飲み会などがなくなります。

  • Pros
    • 余計な出費がなくなる
    • アルコールハラスメントなどから身を守ることができる
  • Cons
    • 悩み、愚痴などをさらけ出す場所がなくなる
    • 「ぶっちゃけ話」を聞くことが難しくなる

1.9 残業の評価

「残業することが偉い」という価値観がより一層肯定されなくなります。

  • Pros
    • 残業をせず生産性が高い人の評価が上がる
  • Cons
    • 生産性が低い残業をしていた人の評価が下がる

2. リモートワークにより得られるもの

2.1 家での時間

リモートワークにより、家での時間が得られる。

  • Pros
    • 家族とのコミュニケーションを増やしたり、本を読んだり映画などを観る時間が得られる
  • Cons
    • 意識的に家事などにコミットメントする必要がある

2.2 衛生

衛生上の不安から開放されます。

  • Pros
    • 感染者との接触機会を有意に少なくすることができる
  • Cons
    • なし

2.3 労働効率

より仕事に向き合うことができるようになります。

  • Pros
    • 効率的に労働を行うことができる
  • Cons
    • 仕事に「雑味」がなくなってしまう。より高い自己管理意識が求められる

3. リモートワークに必要なもの

3.1 Must

3.2 Want

  • ペット
    • 犬猫、亀、etc...

4. リモートワークでの基本設計

4.1 定期MTG

定期的にチームでミーティングを実施しましょう。

弊部署では以下の定期MTGを設定しています。

  • 毎日、定時に1人あたり1分で行った作業、これから実施する作業を報告します
  • 11:00-11:15: 作業開始ミーティング
    • 今日行う作業をそれぞれのメンバーが報告
  • 15:00-15:15: 中間報告ミーティング
    • 11:00-15:00までの進捗をそれぞれのメンバーが報告
  • 19:30-19:45: 日次報告ミーティング
    • 15:00-19:00までの進捗をそれぞれのメンバーが報告&明日の作業共有

4.2 内部・外部MTG

外部とのミーティングは定められたオンラインツールを用いてください(推奨: Zoom)。

また、以下のプラクティスを参考にしてください(参考: Gitlab Communication)。

  • ビデオ通話 - カメラをOnにしてください
    • 容姿が見えることは顧客に対して信頼感を与えます
  • 通信の確立 - 音声が繋がっているか確認してください
    • ビデオ通話の場合音声・映像に問題が出る場合があります
    • 回線が細い場合、映像はOffにしてください
  • アジェンダ - アジェンダ/資料を用意して相手側へ事前に共有してください
    • 「これは何のためのMTGであるか」「何を話すのか」を明らかにすることがMTGをより有意義なものにします
  • 議事録 - 会議内容はすべて議事録にまとめてください
    • 誰と、いつ、どのような話をしたのかをメモしてください
  • 要点とネクストアクション - 次のアクションを明確にしてください
    • 「誰が」「何を」「いつまでに」やるのか決めましょう
    • また、要点(合意したポイント)とネクストアクションを打ち合わせ終了前に会議相手と認識のすり合わせをしましょう。浮いたボールがあれば、どのように対処するか決めましょう
  • 次回の打ち合わせの調整
    • いつ行うか決めましょう
    • すぐに決められない場合、どういうアクションを行った場合に次回打ち合わせ等行うか確認しましょう
  • 会議後のアクション - 議事録を保存しメールを送る
    • 会議の礼と上記の要点、ネクストアクションを送付してください
    • 議事録を定められた場所に保存してください

4.3 日報

毎日作業内容を共有してください。

  • Schedule
  • Todo
  • Doing
  • Done

という4種類に切り分けタスクの進捗状況を共有する、などの手法があります。

4.4 作業の管理

リモートワークの管理は一般的に以下のアプローチがあります。

  • ビデオ通話を常にオンにさせ、「相互監視」を行う

ビデオ通話をずっとオンにしておくと、オフィスでの相互監視と同様の効果を作ることができますが、通信環境の負荷が大きくなりますし、また本質的ではありません。

そもそもなぜ作業の管理が必要になるかというと、プロジェクトマネジメントが従前より行われていなかったことに多くの場合起因するかと思われます。

改めてプロジェクトマネジメントはどうするべきか、という問題に対して考え直す良い機会ですので、より良いマネジメント方法を模索してみましょう。

5. ツール

5.1 遠隔会議ツール

  • Zoom (推奨)
    • 安定した回線でのオンライン会議が実施可能
    • 100人まで入ることが可能
    • 一般のアカウントでは3人以上の場合45分までの時間制限あり
    • Proアカウント(2,000円/月・アカウント)で制限撤廃
      • 会議の自動録画が可能に
      • 時間制限が撤廃
  • Hangouts Meet
    • 最大同時250人まで
  • Whereby
    • 同時4人まで

5.2 タスク管理・Wikiツール

  • Notion(推奨)
    • タスク管理(カンバン形式)、Wikiなどが利用可能
  • Trello
    • タスク管理(カンバン形式)
  • Asana
    • タスク管理(カンバン形式)

5.3 チャットツール

6. Tips

リモートワークにおけるいくつかのTipsをまとめます。

  • 空気を入れ替えよう
  • 音楽をかけてみよう
  • 散歩をしよう
    • 通勤や往訪をしなくなると体が鈍ります。外の空気を吸わないと精神状態も悪くなります。ルートを決めて散歩をしましょう。
  • オンラインランチをしよう
    • 13:00-13:30 など、決まった時間にオンラインランチセッションを設定しましょう。
    • 「仲の良い人同士」で固まるのは避けましょう。
    • 弊部署では定期ランチセッションを実施しています
      • ルール
        • ミュートをしない
        • ビデオを写す(推奨)
          • 部屋の様子は会話のネタになります
  • 筋トレをしよう

References

香川県のゲーム規制についての流れを辿る遊び

どういった流れがあるのか追ってみた。 方法はGoogleの期間指定検索TwitterのRT数指定検索を用いた。

以下省略

今回の中心人物は大山一郎さん。 あと自民党の県会派が分離している※ので自民党・共産党連名でのパブリックコメント公開の申し入れという動きもできるのではないかと推測。

香川県では2016年参院選にて会派分裂し自民党議員会」と「自民党香川県政会」になっている。

大山一郎さんは「自民党香川県政会」幹事長

ついでに県の議事録などを漁っていて県の子ども政策課とも繋がっていて、 すわ怪しいNGOかと思って名前で検索したら非常にまとまったパブコメが出てきて驚いた例が以下。 www.mindfirst.jp