2023年5月17日
暑くね?と言った昨日より暑くね?
今日の気づき
SNS上で特許が話題になってたので調べて思ったが、Twitterの人達が特許を調べるのに使ってるサイトなんだ?僕はj-platpat使ってたけど、こっちのURLがあまり流れてこないのがちょっと気になる。そっちの方が便利なんかな。
今日の活動
正方形と任意の四角形の重なりの面積を求める方法を考えていた(これぐらい抽象化した話なら書いても問題なかろう)。
最初はChatGPT使って「4点の座標はわかっている任意の四角形の面積の求め方は?」と聞いてヘロンの公式をコード化してもらって便利だな~と思っていたのだが(api使ってるしこれぐらい抽象化してれば問題なかろう)、そもそも4点を求めるのに場合分けが必要なのと、更によくよく考えると三角形やら五角形の可能性も出てきて心が折れた。ヘロンの公式とか10年ぶりぐらいに聞いたしなんかいけそうな気がしてたんだけどな。
sympyのgeometoryライブラリを使って、
- 四角形Aの頂点4個について、四角形Bの内部にある点を羅列する
- 四角形Bの頂点4個について、四角形Aの内部にある点を羅列する
- 四角形Aと四角形Bについて、Polygonクラスのintersectionを用いて交点を羅列する
- これら全ての点について、凸包関数を用いてPolygonを生成する
でなんとかなった。去年なら先にライブラリの存在を確認してたかもしれないが、ChatGPTを使うことで逆に少し遠回りになってしまったことに2023年を感じる。
ただ、正方形に回転を加えるとエラーするようになったので、やむなく任意の四角形の方を回転させることで事なきを得た。なお、モンテカルロ法を使うことも検討したが、自分が時間的に耐えられる点数は1E6個までだったし、それだと3桁ぐらいしか信用できないので厳しいものがある。
これだけで半日使ったな~って感想ではあるのだが、昔だと手段のこの辺の試行錯誤と、最終的に条件分岐をして厳密にするところまでやろうとしてかなり日数かかってただろうし、半日で済んだのは十分かもしれない。逆に、昔だとこれをやるだけで新規性を有り難がられてたかもしれないが今ではこれだけでは何も産まないので、こっから更にあーだこーだしないといけない(流石の僕でもこれ以上具体的な話をできないのはわかる)。
今日のわんこ
風呂についてくることに味を占められてる!!!気がする!!!
コメントを投稿
注意事項- 承認を受けるまでコメントは公開されません。
- 非公開を希望した場合、コメントは公開されません。