{"id":20511977,"url":"https://github.com/jr-morgan/genetic-algorithm-framework","last_synced_at":"2026-04-20T11:01:59.957Z","repository":{"id":111039691,"uuid":"342726882","full_name":"JR-Morgan/Genetic-Algorithm-Framework","owner":"JR-Morgan","description":"A Genetic Algorithm Framework build for comparing evolutionary and genetic algorithms for the Travelling Salesman Problem and the Cutting Stock Problem","archived":false,"fork":false,"pushed_at":"2021-02-27T01:17:34.000Z","size":192,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-05T22:44:46.514Z","etag":null,"topics":["csp","csp-solver","evolutionary-algorithms","genetic-algorithm","tsp","tsp-problem","tsp-solver"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JR-Morgan.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2021-02-26T23:30:48.000Z","updated_at":"2024-02-27T09:48:32.000Z","dependencies_parsed_at":"2023-04-18T20:34:14.758Z","dependency_job_id":null,"html_url":"https://github.com/JR-Morgan/Genetic-Algorithm-Framework","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/JR-Morgan/Genetic-Algorithm-Framework","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JR-Morgan%2FGenetic-Algorithm-Framework","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JR-Morgan%2FGenetic-Algorithm-Framework/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JR-Morgan%2FGenetic-Algorithm-Framework/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JR-Morgan%2FGenetic-Algorithm-Framework/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JR-Morgan","download_url":"https://codeload.github.com/JR-Morgan/Genetic-Algorithm-Framework/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JR-Morgan%2FGenetic-Algorithm-Framework/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32044291,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-20T10:33:29.490Z","status":"ssl_error","status_checked_at":"2026-04-20T10:32:30.107Z","response_time":94,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["csp","csp-solver","evolutionary-algorithms","genetic-algorithm","tsp","tsp-problem","tsp-solver"],"created_at":"2024-11-15T20:38:57.155Z","updated_at":"2026-04-20T11:01:59.926Z","avatar_url":"https://github.com/JR-Morgan.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"## What is Genetic Algorithm Framework\nThis software is a basic framework for creating genetic, evolutionary, local search, and other heuristic optimisation algorithms.\nThis project was created as part of my Undergraduate Computational Intelligence  module.\n\nThe project demonstrates Genetic, Evolutional, and Local search algorithms for the Travelling Salesman Problem (TSP), and for 1D Multiple-Stock Size Cutting Stock Problem (CSP). \n\nWhat is the Travelling salesman problem? https://en.wikipedia.org/wiki/Travelling_salesman_problem\n\nWhat is the Cutting Stock Problem? https://en.wikipedia.org/wiki/Cutting_stock_problem\n\nThis framework can be used to implement new algorithms for TSP or CSP, or extended to other optimisation problems.\n\n## How to run the algorithms\nBuilds can be downloaded from https://github.com/JR-Morgan/Genetic-Algorithm-Framework/releases\n### TSP\n\nTo run the console user interface simply run. This will load the default graph.\n```\nTSP_CLI.exe\n```\nTo specify your own graph, simply append the file path to the above command. For example:\n```\nTSP_CLI.exe \"GraphFiles\\test.csv\"\n```\n\nThe program will print a list of searches.\n```\nSelect search strategy:\n(0): Exhaustive Search\n(1): Random Search\n(2): Local Search - Random initialisations\n(3): Local Search - Greedy\n(4): Evolutionary Search - Tournament\n```\nEnter the prefixed number to start that search.\nNote: Exhaustive search is not suitable for graphs over around 10 nodes as it of O(n!) complexity.\n\nTo simply evaluate the cost of a route, enter both the file path, and a complete route. For example:\n```\nTSP_CLI.exe \"GraphFiles\\test.csv\" 1 2 3 4 5 6 7 8 9 10 11 12\n```\nAll returns are in human readable format.\n\n### TSP Graph\n\u003cimg src=\"https://user-images.githubusercontent.com/45512892/99120792-5a779880-25f3-11eb-82af-0879a582ee93.png\" width=\"50%\"\u003e\n\nThe TSP Graph is functionally similar to the CLI, however, will plot the results on a graph.\n\nRun the `TSP_WPF.exe`\nBy default, a random graph of 25 nodes is created.\nFrom the UI you can generate a new graph of any size, or load one from file.\n\n### CSV Format for TSP\nGraph files can be loaded by either UI option from a CSV format.\nColumn 1 is the Node ID, Column 2 is the X position, and Column 3 is the Y position.\nLines that do not match this format are ignored.\nSee provided example files for reference.\n\n### CSP\nThe process for running CSP is similar to TSP (however there is no graph UI available as of yet for CSP)\n\nRun CSP.exe (optional first argument specifies the problem file path)\nFrom there select an algorithm to run.\nThere is also a method of performing parametric optimisation however is only currently setup to work for the island population genetic algorithm.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjr-morgan%2Fgenetic-algorithm-framework","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjr-morgan%2Fgenetic-algorithm-framework","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjr-morgan%2Fgenetic-algorithm-framework/lists"}