伸縮する牛乳パックの展開図2(ねじるタイプ)

続きです。

伸縮する牛乳パック2

↑ねじるタイプの作り方のメモとして、展開図を書いておきます。

 

伸縮する牛乳パックの展開図2

牛乳パック伸縮2 – GeoGebra

 

赤い線が山折りで、青い線が谷折りです。

牛乳パックの幅は7cmなのですが、それの2倍の長さを5で割って、7*2/5=2.8cmが横の線の間隔になります。これはややこしい計算をして求めたのですが、ここではその計算は省略します(牛乳パックの元々の折り線を生かしてねじるのにはそれなりの制約があるのです)。

点線に沿って牛乳パックにカッターで切れ込みを入れるのですが、その目印をつけるのは結構苦労するかも、、、。まあ、そこまではなんとかして、注ぎ口側から折っていって作ります。

ねじれがあるので少し形が面白くて、そこが気に入っています。伸縮させると45度くらい回転するのも少し気持ちいいですね。

伸縮する牛乳パックの展開図1

伸縮する牛乳パック1

↑これの作り方のメモとして、展開図を書いておきます。

伸縮する牛乳パックの展開図1

牛乳パック伸縮1 – GeoGebra

 

赤い線が山折りで、青い線が谷折りです。横の線の間隔は調整可能ですが2cmにしています。一番上と一番下だけ半分の間隔で、1cmです。

この赤い線と青い線にカッターで切れ込みを入れて、その切れ込みに沿って注ぎ口側から折っていって作ります。

作りとしてはシンプルだし、出来上がりのバランスも良いので、気に入っています。

無限三目並べの必勝法

無限三目並べと言うゲームがあります。三目並べ(マルバツゲーム)に似たルールで、自分のコマの4つ目を打つ時に自分の一番古いコマが消えるというゲームです。

このゲームのQ学習をJavaScriptで作っていました。Q学習した結果を対戦相手として遊べるようにしているので、やってみてください。だんだん強くなるようにしています。

https://akiyah.github.io/3x3/public/?type=ThreeState

(最初は弱いですが、ある程度経つと強くなってきます。)

 

この実装を応用して、無限三目並べの必勝法を計算させて記述しました。(Q学習があんまりうまくいかなくて、原因を探すためにも必勝法を知りたかったのです)(必勝法を探すロジックは、全盤面のパターンを内部的に持ち、どちらかの勝利が確定している盤面から、打つ手を逆に辿って計算しています)

無限三目並べの必勝法

 

先手必勝です。先手の最初の手は上、下、右、左のどれかで、それ以外では必勝ではありません。対称性を除いて、必勝法の画像では「上」を選択しています。

後手の最初の手は対称性を除けば5通りあります。結果的には、どのパターンでも先手が勝てます。後手が最も長く生き残るのは、左下か右下を選択したときで、先手が勝つまで13手かかります。

決着がつく最後の盤面は、どれも似ていますね。後手の一番古いコマが消えたところに先手が打って勝利ですね。

 

必勝法を見つけたのはいいですが、覚えるのはちょっと大変ですね。一本道のところもあるのですが、正しく選択しないと負けてしまう箇所もあります。

 

3x3のマス目を使った対戦ゲームはまだ他にもありそうなので、今後は別のルールでQ学習と必勝法探しを続けていきたいです。

LLNYでYouTube英語動画の日英字幕を同時に見られる!

YouTubeの英語動画を見るときに、YouTubeの機能で自動生成の英語字幕をつけることはできるし、さらに自動翻訳した日本語の字幕をつけることもできます。でも、どちらかを選ぶことになるので、日本語と英語の字幕を同時に見ることはできません。

それができるようになるのが、LLNY(Language Learning with Netflix & YouTube)というChrome拡張機能です。

chrome.google.com

f:id:Akiyah:20211107015952p:plain

LLYN

英単語にマウスを合わせると日本語の意味を表示してくれるし、クリックすると発音してくれます。マウスオーバー中は動画を止めてくれるのも便利です。

 

実は以前はLanguage Learning with Youtube BETAというものを使っていたのですが、YouTubeの仕様変更の影響か、使えなくなっちゃっていたのですよね。ほぼ同じ機能(そしてほぼ同じ名前)のLanguage Learning with Netflix & YouTubeを最近見つけたので、こっちに乗り換えました。とても便利なので助かっています。

クリアファイルをカットして2変量正規分布を作ってみた

クリアファイルをカッティングプロッターで工作したのでメモしておきます。

 

まずは設計図を書きます。最近はcodepen上でJavaScriptで計算してsvgとして設計を作ることにしています。xかyを固定した曲線(に幅をつけたもの)をたくさん描いて、スリットを上下に交互につけて噛み合って固定されるようにしています。

正規分布みたいな、数式で計算する必要がある曲線を書くには、JavaScriptのようなプログラミング言語を使うのがいいですね。厳密には、曲線ではなくて細かい折れ線で書いています。

See the Pen surface papers by mizukoshi akiya (@akiyah) on CodePen.

 

スリットは、理論上は幅の1/2でぴったりなのですが、1/2で作るとキツキツになってしまって全体が歪んでしまったので、幅の(1/2+1/20)の長さのスリットにしています。このスリットのゆとりがありすぎても形を保てなくなってしまうので良くなくて、ちょうどいい深さを探すのが試行錯誤で大変でした。

下の画像のようなsvgファイルが出来上がります。

f:id:Akiyah:20210817174553p:plain


この設計図をカッティングプロッターに入れて切ります。私はブラザーのスキャンカットCM300というカッティングプロッターを使っていますので、CanvasWorkspaceという無料のWebサービスsvgファイルをインポートします。できるだけスキマを詰めて近づけて、一回でまとめてカットできるようにします。そのあとカッティングプロッター用のファイルをダウンロードして、USB経由でカッティングプロッターに送っています。

 

カットして組み上げて、完成したものはこちら。2変量正規分布です。たまたまですが、斜めにすることで相関係数を変化させることができる機能もついちゃいました。

 

グニャグニャしてなかなか面白いものが出来上がりました。もうちょっと大きいものも作ってみたくなりました。

 

ジョイント(かみ合わせ)の研究

PP(ポリプロピレン)のクリアファイルをカッティングプロッターで切って工作をすることが最近の楽しみなのですが、ジョイント(かみ合わせ)をどうするかが課題の一つで、いろいろ試していました。後々自分でも参照するかもしれないので過去の作品を思い出しながらメモっておきます。

ジョイントをどうするかと言っても、まず作ってみる時はジョイント無しで作ってテープで止めたりするんですけどね。せっかくカッティングプロッターで計算通りに出力したのに、テープを手で貼るのはちょっとうれしくないのと、テープで固定しているのがわかるのはちょっとかっこ悪いから、最終的にはできればかみ合わせるだけで形にしたいのですよね。

参考にしたのはペーパークラフト講座 基本篇 第8回 かみ合わせです。用途によっていろいろなジョイント(かみ合わせ)を使うことができると知ったので、参考にしながら、できるだけシンプルなものを使いたくて、考えながら色々試してみました。

 

(1)左右からひっかけるジョイント

f:id:Akiyah:20210715233712p:plain

ジョイントの研究のために、わかりやすいサイコロを素材にしています。このジョイントは左右から引っ掛けるだけですね。これでもある程度いけるかと思ったのですが、やってみるとずれるし、仮止め程度の働きしかしませんね。

ちなみにGeoGebra 幾何で作った図形をSVGで出力してCanvasWorkspace(カッティングプロッター用のツール)で表示しています。

 

(2)差し込むだけのジョイント f:id:Akiyah:20210715234504p:plain

次は、穴を開けて差し込むジョイントです。これは、単純ですが、ぱちっと刺さってなかなか良い感じでくっつきます。力がかかると外れちゃうのと、差し込むのが意外と難しいのが難点です。

 

 
 
 
View this post on Instagram
 
 
 

A post shared by 水越明哉 (@akiya.mizukoshi)

www.instagram.com

 

(3)台形の差し込むジョイント 

f:id:Akiyah:20210715234943p:plain

差し込む部分を台形にして、穴の方もちょっと曲げてみました。なかなか悪くないジョイントです。ただ、力をかけるとジョイントが少しずれるし、外れることもありました。

 

 
 
 
View this post on Instagram
 
 
 

A post shared by 水越明哉 (@akiya.mizukoshi)

www.instagram.com

 

(4)T字のジョイント 

f:id:Akiyah:20210716190146p:plain

これは結構よかったです。穴は広げやすいし、くっつけるとピタッとハマるし、ずれないし。差し込む部分に折り目をつけて、差し込みやすく外れにくい工夫もしました。

ジョイント部分がやや複雑で、設計が少し難しいこと、ジョイント部分が目立ってしまうことが今後の改善ポイントかなと思います。

この設計図はサイコロ(立方体)ではなく、菱形三十面体(の一部)ですね。

 
 
 
View this post on Instagram
 
 
 

A post shared by 水越明哉 (@akiya.mizukoshi)

www.instagram.com

 

 

ひとまずは最後の(4)のT字のジョイントが自分の中では一番しっくりしています。今ちょうど作成中の作品は、まだジョイントをつけていなかったのですが、T字ジョイントを使ってみようと思っています。

 

ペットボトルに水素を入れて置いておいたらクシャクシャになった

 このツイートを見て、自分でもやってみたくなりました。

 

実験用ガス 水素 5L
 

水素を作るのはちょっと大変そうだったので、アマゾンで購入しました。 ペットボトルを洗面器の水に沈めて、ストロー経由で水素を入れました。 

 

 10/13に実験を開始して、10/16には↑ちょっとへこんできました。

 

形が歪んできて、普通には立たなくなってきたのでフタを下にして逆立ちさせました。 

 

どんどん小さくなってきます。

 

f:id:Akiyah:20201230015559j:plain

↑11/20 

 

f:id:Akiyah:20201230015554j:plain

↑12/4 

もう、限界くらいまで小さくなりました。元のツイートに比べて、柔らかそうなペットボトルを選んだからか、縦に潰れましたね。

ペットボトルの水素が外に出て、一方で空気はペットボトルには入らないのですね。