未分類

このプログラムでは、緯度・経度の位置情報から距離の計算を行わずに補完を行っていますが、これは私の意図したものではありません。

下記のsmall_bus_data.csvのデータを使って、私が作って欲しいプログラムのアルゴリズムを説明します。

現在1番目のデータには、12:55:00の時刻情報が入っており、30番目のデータには、13:00:00の時刻情報が入っています。
つまり、この間には、300秒の時間が経過していることになります。

次に、1番目の緯度経度と2番目の緯度経度から距離(メートル)が算出できます。
次に、2番目の緯度経度と3番目の緯度経度から距離(メートル)が算出できます。
最後に、29番目の緯度経度と30番目の緯度経度から距離(メートル)が算出できます。
これらを合計すると、合計移動距離(メートル)が算出できます。
この合計移動距離を、前述の300秒で割ると、平均の秒速が算出できます。
この秒速を使って、現在、時間情報が入っていない、2、3、4、.... 29番目の時刻が算出できますので、それを表示して下さい。

同じように、
現在30番目のデータには、13:00:00の時刻情報が入っており、39番目のデータには、13:02:00の時刻情報が入っています。
つまり、この間には、120秒の時間が経過していることになります。

次に、30番目の緯度経度と31番目の緯度経度から距離(メートル)が算出できます。
次に、31番目の緯度経度と32番目の緯度経度から距離(メートル)が算出できます。
最後に、38番目の緯度経度と39番目の緯度経度から距離(メートル)が算出できます。
これらを合計すると、合計移動距離(メートル)が算出できます。
この合計移動距離を、前述の300秒で割ると、平均の秒速が算出できます。
この秒速を使って、現在、時間情報が入っていない、30、31、.... 38番目の時刻が算出できますので、それを表示して下さい。

以下のsmall_bus_data.csvの時間情報は以下の通りです。

====== small_bus_data.csv ここから =========

1, 93, 139.62957005198, 35.36604342344, 12:55:00
2, 94, 139.62977593991, 35.36605145489,
3, 95, 139.62975577321, 35.36614821472,
(中略)
28, 180, 139.6225614208, 35.36578048832,
29, 178, 139.62231637196, 35.36565733887,
30, 179, 139.62231637196, 35.36565733887, 13:00:00
31, 178, 139.62231637196, 35.36565733887,
(中略)
38, 122, 139.62212431581, 35.36739269906,
39, 123, 139.62186543167, 35.36793117811, 13:02:00

====== small_bus_data.csv ここまで =========

まあ、それでも、私が着手開始できる程度のコードの叩き台は作ってくれましたので、まずまず満足しています。

未分類

組織から「やれ」と言われたら、なんでもやるのがサラリーマンです。

とは言え、『この歳になって、Java(×JavaScript)かぁ』と、少々意外な感じです。

私、C/C++, Go, Python、SQL、JavaScriptは、普通にしゃべれますが、そのすきまを狙ったかのような"Java"とは ―― うん、面倒ですが、仕方ありません。

という訳で、今、VSCodeの環境にJava開発環境を仕込んでいます。

しかし、こんなトラブルが発生していて、ChatGPTと議論をしていました。

public class App {
public static void main(String[] args) throws Exception{
System.out.println("Hello, World!");
}
}
vscodeを使って、F5で実行しようとしたのですが、
Missing artifact org.json:json:jar:20140107
Missing artifact redis.clients:jedis:jar:2.7.2
等がでてきます。
コマンドからはちゃんとコンパイルして実行できるようですが。

色々教えて貰い、他のツールを入れたりしないように言われましたが、VSCodeの拡張機能で、同じような機能入っているようなので、『???』となやんでいました。

で、今回は、こちらが私には当たりでした。

VSCodeでJavaを始める方法(環境構築)

まあ、Javaだろうと、C/C++だろうと、Goだろうと構いません。今回の私の真の目的は、Github Copilotの攻略ですから。

GitHub Copilotが『怖い』件

以前、ChatGPTの登場で、英語の教師が本気でヤバイかもしれない、とか書きました。

私は生れて始めて『AI技術による廃業』の予感を感じました ―― 最初の犠牲者は、語学教師です。

Copilotでは、ソフト外注が ―― というか、今なお、現場でコーディングをやっている、この私(江端)が、本気でヤバい。

しかし、これ、もしかしたら、良い意味で「ヤバい」かもしれません。

ChatGPTやGitHub Copilotと、ガチで語り合えるスキルがあってこそ、彼らを使い倒すことができると思えるからです。

生成AIを使い倒す技能は、場数を踏んできたシニアの方が上手いと思う。

だから、これはチャンスだ ―― と、そう思うことにします、当面の間は。

未分類

その1
Go言語で、250人分のエージェントを作成して、次の処理にかかろうとして
"for"
と書いただけで、
    for i := 0; i < 250; i++ {
        fmt.Println("person[", i, "].Origin:", person[i].Origin.Name, person[i].Origin.Loc.Lng, person[i].Origin.Loc.Lat)
        fmt.Println("person[", i, "].Destination:", person[i].Destination.Name, person[i].Destination.Loc.Lng, person[i].Destination.Loc.Lat)
        fmt.Println("person[", i, "].Route:", person[i].Route)
    }

と、ここまで、自動的にコードを提案された。

その2
Go言語で、
// 時速4kmの場合、1秒間に移動する距離は、
と書いたら、
Copilotが、その後ろに、
4km/h ÷ 3600s/h = 0.00111111111km = 1.11111111m
と、文案を提案してきた。
正直、怖い

未分類

このコードが上手く起動できていない。

fastapi6/main.pyを参照のこと

import asyncio
from fastapi import FastAPI

app = FastAPI()

async def print_hello():
    while True:
        print("Hello")
        await asyncio.sleep(60)  # 60秒待機

@app.get("/aisatu")
async def get_aisatu():
    return {"message": "konnichiwa"}

if __name__ == "__main__":
    loop = asyncio.get_event_loop()
    loop.create_task(print_hello())  # "Hello"出力プログラムを非同期タスクとして実行
    import uvicorn
    uvicorn.run(app, host="0.0.0.0", port=8000)

未分類

先日、消火器を調べていたところ、耐用年数を超えていることが分かったので、交換することにしました。
思ったよりお高くて、驚いたのですが、火災のコストに比べれば安いものです。

で、古い消火器を玄関の外で試したのですが、
(1)消火器は一度放射を始めると止まりません(レバーを元に戻しても噴射が続く)
(2)消火器の消火用噴粒で、我が家の玄関と車庫は、ピンク色に染まっています。

以上

未分類

スプリングコードの終端が切れてしまった場合

スプリングコード 最長90cm カラビナ付 [色指定不可] (100円ショップ 100円均一 100均一 100均)の通販はau PAY マーケット  - 100円雑貨&日用品卸−BABABA | au PAY マーケット-通販サイト

結束バンドで閉じることができます。

未分類

特定時間の同じ部屋、喋りやすさ、子供(幼児、乳児)をきっかけに会話スタート、年代別他人へのアクセス(要先行研究)

地図を複数用意して、そこにエージェントをランダムウォークさせれば良い。
エージェントは、一日単位で滞留・移動を計算して、また複数の地図に展開すれば良い。
選択される地図は、エージェントの戦略となり、戦略は常時変更しても良い。
SCのコストは原則移動距離。あとは年齢によるコスト変化とか入れても良いかも。