{"id":28799409,"url":"https://github.com/alekpopovic/random_search","last_synced_at":"2026-03-13T13:33:21.188Z","repository":{"id":299261980,"uuid":"1002207759","full_name":"alekpopovic/random_search","owner":"alekpopovic","description":"random_search implementation in elixir","archived":false,"fork":false,"pushed_at":"2025-06-15T17:09:27.000Z","size":7,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-06T05:16:31.176Z","etag":null,"topics":["elixir"],"latest_commit_sha":null,"homepage":"https://hex.pm/packages/random_search","language":"Elixir","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/alekpopovic.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,"zenodo":null}},"created_at":"2025-06-15T00:26:00.000Z","updated_at":"2025-06-15T17:09:30.000Z","dependencies_parsed_at":"2025-06-15T17:18:06.286Z","dependency_job_id":null,"html_url":"https://github.com/alekpopovic/random_search","commit_stats":null,"previous_names":["alekpopovic/random_search"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/alekpopovic/random_search","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alekpopovic%2Frandom_search","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alekpopovic%2Frandom_search/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alekpopovic%2Frandom_search/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alekpopovic%2Frandom_search/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alekpopovic","download_url":"https://codeload.github.com/alekpopovic/random_search/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alekpopovic%2Frandom_search/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30467802,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-13T11:00:43.441Z","status":"ssl_error","status_checked_at":"2026-03-13T11:00:23.173Z","response_time":60,"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":["elixir"],"created_at":"2025-06-18T06:06:33.051Z","updated_at":"2026-03-13T13:33:21.180Z","avatar_url":"https://github.com/alekpopovic.png","language":"Elixir","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RandomSearch\n\n[![Elixir CI](https://github.com/alekpopovic/random_search/actions/workflows/elixir.yml/badge.svg)](https://github.com/alekpopovic/random_search/actions/workflows/elixir.yml)\n\n## Pseudocode for Random Search\n\n```elixir\nInput: NumIterations, ProblemSize, SearchSpace\nOutput: Best\nBest ← ∅;\nforeach iteri ∈ NumIterations do\n  candidatei ← RandomSolution(ProblemSize, SearchSpace);\n  if Cost(candidatei ) \u003c Cost(Best) then\n    Best ← candidatei ;\n  end\nend\nreturn Best\n```\n\n## Usage\n\n```elixir\niex(1)\u003e problem_size = 2\n2\niex(2)\u003e \nnil\niex(3)\u003e search_space = Enum.map(1..problem_size, fn _i -\u003e [-5, 5] end)\n[[-5, 5], [-5, 5]]\niex(4)\u003e \nnil\niex(5)\u003e max_iter = 100\n100\niex(6)\u003e \nnil\niex(7)\u003e RandomSearch.search(search_space, max_iter)\n \u003e iteration=1, best=27.211555936224904\n \u003e iteration=2, best=11.695082466263408\n \u003e iteration=3, best=11.695082466263408\n \u003e iteration=4, best=11.695082466263408\n \u003e iteration=5, best=7.436281064286609\n \u003e iteration=6, best=7.436281064286609\n \u003e iteration=7, best=5.398333646980341\n \u003e iteration=8, best=5.398333646980341\n \u003e iteration=9, best=5.398333646980341\n \u003e iteration=10, best=5.398333646980341\n \u003e iteration=11, best=5.398333646980341\n \u003e iteration=12, best=5.398333646980341\n \u003e iteration=13, best=5.398333646980341\n \u003e iteration=14, best=5.398333646980341\n \u003e iteration=15, best=5.398333646980341\n \u003e iteration=16, best=5.398333646980341\n \u003e iteration=17, best=5.398333646980341\n \u003e iteration=18, best=5.398333646980341\n \u003e iteration=19, best=5.137844582377334\n \u003e iteration=20, best=5.137844582377334\n \u003e iteration=21, best=5.137844582377334\n \u003e iteration=22, best=5.137844582377334\n \u003e iteration=23, best=5.137844582377334\n \u003e iteration=24, best=5.137844582377334\n \u003e iteration=25, best=1.843194550462348\n \u003e iteration=26, best=1.843194550462348\n \u003e iteration=27, best=1.843194550462348\n \u003e iteration=28, best=1.843194550462348\n \u003e iteration=29, best=1.843194550462348\n \u003e iteration=30, best=1.843194550462348\n \u003e iteration=31, best=1.843194550462348\n \u003e iteration=32, best=1.843194550462348\n \u003e iteration=33, best=1.843194550462348\n \u003e iteration=34, best=1.843194550462348\n \u003e iteration=35, best=1.843194550462348\n \u003e iteration=36, best=1.843194550462348\n \u003e iteration=37, best=1.843194550462348\n \u003e iteration=38, best=0.15059162709981933\n \u003e iteration=39, best=0.15059162709981933\n \u003e iteration=40, best=0.15059162709981933\n \u003e iteration=41, best=0.15059162709981933\n \u003e iteration=42, best=0.15059162709981933\n \u003e iteration=43, best=0.15059162709981933\n \u003e iteration=44, best=0.15059162709981933\n \u003e iteration=45, best=0.15059162709981933\n \u003e iteration=46, best=0.15059162709981933\n \u003e iteration=47, best=0.15059162709981933\n \u003e iteration=48, best=0.15059162709981933\n \u003e iteration=49, best=0.15059162709981933\n \u003e iteration=50, best=0.15059162709981933\n \u003e iteration=51, best=0.15059162709981933\n \u003e iteration=52, best=0.15059162709981933\n \u003e iteration=53, best=0.15059162709981933\n \u003e iteration=54, best=0.15059162709981933\n \u003e iteration=55, best=0.15059162709981933\n \u003e iteration=56, best=0.15059162709981933\n \u003e iteration=57, best=0.15059162709981933\n \u003e iteration=58, best=0.15059162709981933\n \u003e iteration=59, best=0.15059162709981933\n \u003e iteration=60, best=0.15059162709981933\n \u003e iteration=61, best=0.15059162709981933\n \u003e iteration=62, best=0.15059162709981933\n \u003e iteration=63, best=0.15059162709981933\n \u003e iteration=64, best=0.15059162709981933\n \u003e iteration=65, best=0.15059162709981933\n \u003e iteration=66, best=0.15059162709981933\n \u003e iteration=67, best=0.15059162709981933\n \u003e iteration=68, best=0.15059162709981933\n \u003e iteration=69, best=0.15059162709981933\n \u003e iteration=70, best=0.15059162709981933\n \u003e iteration=71, best=0.15059162709981933\n \u003e iteration=72, best=0.15059162709981933\n \u003e iteration=73, best=0.15059162709981933\n \u003e iteration=74, best=0.15059162709981933\n \u003e iteration=75, best=0.15059162709981933\n \u003e iteration=76, best=0.15059162709981933\n \u003e iteration=77, best=0.15059162709981933\n \u003e iteration=78, best=0.15059162709981933\n \u003e iteration=79, best=0.15059162709981933\n \u003e iteration=80, best=0.15059162709981933\n \u003e iteration=81, best=0.15059162709981933\n \u003e iteration=82, best=0.15059162709981933\n \u003e iteration=83, best=0.15059162709981933\n \u003e iteration=84, best=0.15059162709981933\n \u003e iteration=85, best=0.15059162709981933\n \u003e iteration=86, best=0.15059162709981933\n \u003e iteration=87, best=0.15059162709981933\n \u003e iteration=88, best=0.15059162709981933\n \u003e iteration=89, best=0.15059162709981933\n \u003e iteration=90, best=0.15059162709981933\n \u003e iteration=91, best=0.15059162709981933\n \u003e iteration=92, best=0.15059162709981933\n \u003e iteration=93, best=0.15059162709981933\n \u003e iteration=94, best=0.15059162709981933\n \u003e iteration=95, best=0.15059162709981933\n \u003e iteration=96, best=0.15059162709981933\n \u003e iteration=97, best=0.15059162709981933\n \u003e iteration=98, best=0.15059162709981933\n \u003e iteration=99, best=0.15059162709981933\n \u003e iteration=100, best=0.15059162709981933\n%{vector: [0.04869593956801754, -0.3849939383541088], cost: 0.15059162709981933}\n```\n\n## Installation\n\n```elixir\ndef deps do\n  [\n    {:random_search, \"~\u003e 0.1.0\"}\n  ]\nend\n```\n\nDocumentation can be found at \u003chttps://hexdocs.pm/random_search\u003e.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falekpopovic%2Frandom_search","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falekpopovic%2Frandom_search","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falekpopovic%2Frandom_search/lists"}