宅配者になるべくして

コンテキスト

大学には主専攻実験みたいなものがあって学部3年になると実施される。実験は前期・後期に分かれていて、前期は巡回セールスマン問題をよっこいせする実験を選択した。というより第一希望から落ちた。

実験での行動

  • 実験参考テキストを読み込んだ
  • 実装課題をいくつかやった
  • 最終発表に向けて適当なテーマを決めてやる

適当なテーマとして分枝限定法に関する全探索の効率化を行う下界算出アルゴリズムを調べ、いい感じに実装することにしてみた。 結果的に実装バグって実装間に合わない状態ではあったが、アルゴリズムの理解と枝刈り効率について考察できたのである程度の評価は貰えた。

発表資料

発表当日の朝に急いで作ったので白背景に黒文字かつ計測が雑なのは許して。

speakerdeck.com

実装

実装するにあたって、TSPLIBのデータを読み込んで 汎用データ構造化する仕組みを実装してアルゴリズムを実装するだけで良い環境を構築した。 EUC_2Dのデータのみの読み込みになるためかなり雑に作ってあるが、使い回しはできそうなので公開してみた。

github.com

参考実装というか、今回の実験で自分が実装したアルゴリズムもいくつかある。

  • Brute force
  • Dynamic programming
  • 最近追加法
  • 最近隣接法
  • 焼き鈍し法
  • 分枝限定法(動いてない)

所感

実験は上半期使って長々と行うのだけど、この実験の内容は一週あればレポートまで終わってしまう内容なので暇。 暇なので真面目に取り組みたい場合は文献を読み漁ったりできるわけだけど、 サーベイ力や継続力を持って取り組める基礎体力に自信が無いのであれば別の実験を選択することをおすすめします。 あとはまぁ、ある程度の実装力を要するのでコーディング無理な人も向いてないかもしれない。

生存戦略

前までどうやってブログ書いていたか忘れて赤ちゃんみたいなになってる。
ざっくりしたことはTwitterに書いちゃうので案外分量が少なくなってきた。

読んだ

何者

何者 (新潮文庫)

何者 (新潮文庫)

後述

みんなのGo言語

みんなのGo言語【現場で使える実践テクニック】

みんなのGo言語【現場で使える実践テクニック】

Web+DB pressみたいな雰囲気のGolang本。 A Tour of GOをやったあとに読むとよさそう。 書いてあることを理解する本というよりは、こういうツールや方法があるとおぼえておいて、 後々索引として使うべきだろうなと思いました。

Go言語によるWebアプリケーション開発

Go言語によるWebアプリケーション開発

Go言語によるWebアプリケーション開発

みんGoよりは実装向けの本。 チュートリアル式にアプリケーションのコア部分から外形までをサンプル使って実装していく。 これ一冊読めばGolang書き始める障壁みたいなものは無くなると思う。

*る勇気

嫌われる勇気―――自己啓発の源流「アドラー」の教え

嫌われる勇気―――自己啓発の源流「アドラー」の教え

幸せになる勇気―――自己啓発の源流「アドラー」の教えII

幸せになる勇気―――自己啓発の源流「アドラー」の教えII

対話式に文章が構築されているのですんなり読めます。 自己啓発っぽいけど、内容がどうこうというよりは対人関係に割り切りを付けれるので良いですね。

何者になるんだろう

「何者」が案外ぐっさり刺さって、気持ちになる表現に大変溢れていた気がする。 ざっくり言うと就活とSNSが題材の小説なので、世代的にはドンピシャである。 ちなみに映画化もするらしい。

就活とか進路とかそういうことを悩むような時期になって、 自分の目標達成とかスキルセットとか安定感などを真剣に考える必要が出てきた。 そんな中でこれを読んでしまって、"就活がゴールなのか"とか、"就職した自分は今と違う自分になるのか"など、 まだまだ考える必要のあるべき事柄が多く見つかった気がする。 思い返せば就活セミナーみたいなのも行ってないし、思考停止で院進することを決定していた面もあって、 もしかして逃げているだけなんじゃないかと思えてきた。

別の道

せっかく学生なんだから、もうちょっと別なことも体験してみようということで、 情報科学から離れて色々手を出してみることを積極的に行っている。 役に立つ立たないとか、糧になるならないとか、そういう視点ではなくて、 知らないけど言葉だけ先行しそうな分野の下地はしっかりしておこうっていう軽い気持ち。 筑波大学はそういう面において非常に軽いフットワークで実現できる場所なので、 いい感じにバランス取って学んでいきたいと思う。

最近の所感

世の中流行ってきているプロダクティビティみたいな実践をしているんだけど、 実践できる期間とできない期間が明確に分かれてしまう。 結局やる気の問題なので習慣化しきれていないのが問題なんだろうけど、 改善していく方法が見つからないのでちょっとツライね。

"Experience tranquility."

最近(7, 8月)あったこととか。

COMP

comp.jp 完全食のお試しセットを頼んだので飲んでみた。 水割りはそもそも味を舌が受け入れてくれなかったので、色々模索してみたんだけどだいたいダメだった。 素の味が無味になってくれると美味しく摂取できて最高なんで、味なくなってほしい。 以下は試したやつ。

  • コーヒー
    飽きがひどくて飲みきれない
  • スムージー
    元の味がめっちゃ残る。飲みきれないわけではないけど続けて飲もうとは思えなかった。
  • お茶
    論外

結局何パックか余ったので、どうしても食い物が無いときとか、時間の無いとき用に保管してある(果たして飲む日は来るのだろうか)。赤ちゃんの粉ミルクっぽい味がどうしても苦手なんだけど、プロテインもこんな味するんですか。ちなみに僕の口に合わないだけで美味しく飲んでる人はいるので、試しに買ってみるといいんじゃないですかね。

読んだ本

ガベージコレクション

ガベージコレクション

SOFT SKILLS ソフトウェア開発者の人生マニュアル

SOFT SKILLS ソフトウェア開発者の人生マニュアル

二冊読了したけど、分厚い奴らは読み切るのにまだまだ時間がかかりそう。 kindleすごくて、気づくとポチってるから積ん読がひどい。教授に頼りつつ論文を読み進めたりするおかげか、読むペースが早まってきて新書程度ならいくらでも読めるようになって気がする(だけ)。

振り返って

以外にブログとして残せることは少なくて短くなってしまった。 技術的なこととか、アウトプットを増やそうとはしているんだけども、探求後の着地点が既到な事実であったりするので、 「なるほどですね〜」で終わってしまうことが多かった。既に世の中に出回っている情報に色を付けて発信するのに抱く嫌悪感を払拭すればいいんだろうか。