{"id":26022860,"url":"https://github.com/junnishimura/smartrocket","last_synced_at":"2025-06-10T20:35:36.803Z","repository":{"id":140344538,"uuid":"217434466","full_name":"JunNishimura/SmartRocket","owner":"JunNishimura","description":"This is a smart rocket GA simulation","archived":false,"fork":false,"pushed_at":"2019-11-06T02:13:01.000Z","size":17543,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-06T10:42:56.452Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JunNishimura.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-10-25T02:28:11.000Z","updated_at":"2019-11-06T02:14:54.000Z","dependencies_parsed_at":"2023-03-12T12:00:14.263Z","dependency_job_id":null,"html_url":"https://github.com/JunNishimura/SmartRocket","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JunNishimura%2FSmartRocket","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JunNishimura%2FSmartRocket/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JunNishimura%2FSmartRocket/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JunNishimura%2FSmartRocket/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JunNishimura","download_url":"https://codeload.github.com/JunNishimura/SmartRocket/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JunNishimura%2FSmartRocket/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259146680,"owners_count":22812287,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-06T10:37:14.474Z","updated_at":"2025-06-10T20:35:36.791Z","avatar_url":"https://github.com/JunNishimura.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SmartRocket with GA\nsmart rocket with Genetic Algorithm simulation\n\n## Movie\n[Youtube](https://youtu.be/mZ0FwMoI0Ew)\n\n## Description\nThis simulation tries to solve the better path to reach the target with gentic algorithm in 2D space\n\n## こだわりポイント (The thing I put an effort)\n1. プロセスの可視化 / visualization of the process \u003cbr\u003e\n個体の適応度を直感的にわかりやすくするために、1世代前の適応度に基づいて軌跡の濃度を変えた。適応度がよければ良いほど（即ちターゲットへの距離が近ければ近いほど）、軌跡が美しく描かれる。 \u003cbr\u003e\nTo visualize the fitness of each individual, I changed the intensity of the color based on the fitness of previous generation. The better the fitness is, the more beautiful the trail is. \n\n2. インタラクション / interaction \u003cbr\u003e\n自由にターゲットの位置を変えれるようにしたことでユーザーもシミュレーションに参加できる。 \u003cbr\u003e\nThe user can participate in the simulation by changing the position of the target.\n\n## GA\n### Crossover\n- One point crossover\nChromsome is an array of vectors. Since the sequence of those vectors is important for this case, I use one point crossover which normally does not destroy the sequence that much. \n### Selection\n- Roulette selection\nThis selection is simply following the thoght of \"The closer the distance to the target is, the higher the fitness is\".\nThis is a simple algorithm, but powerful to inherit the better genom.\n\n## Discovery\nGentic Algorithm is not working in the way which I expected if I set many constraint conditions.\nThis is a pretty intersting result for me because I thought that this result reflects the importance of diversity in the nature. I needed to keep a room for flexibility which helps individuals to handle with unexpected environments.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjunnishimura%2Fsmartrocket","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjunnishimura%2Fsmartrocket","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjunnishimura%2Fsmartrocket/lists"}