{"id":3994,"date":"2025-09-10T10:30:00","date_gmt":"2025-09-10T13:30:00","guid":{"rendered":"https:\/\/beontech.wpengine.com\/blog\/?p=3994"},"modified":"2026-04-06T09:42:09","modified_gmt":"2026-04-06T12:42:09","slug":"search-algorithms-irl","status":"publish","type":"post","link":"https:\/\/beon.tech\/blog\/search-algorithms-irl\/","title":{"rendered":"Search Algorithms IRL: From Breadth-First to A* in One Coffee Break"},"content":{"rendered":"\n<p>Imagine this: it\u2019s 2 a.m., you\u2019re deep into some Udemy\/Coursera\/EdX\/Master\u2019s homework, and your coffee is running dangerously low. The assignment? \u201c<strong>Implement breadth-first search<\/strong>.\u201d At first glance, it looks innocent\u2014almost trivial. But little do you know, you\u2019ve just unlocked the door to one of the oldest and most fascinating adventures in AI: <strong>search algorithms<\/strong>.<\/p>\n\n\n\n<p>Welcome, my lovely reader, to part number one of our journey. This is where search reveals itself as the <strong>first window into artificial intelligence<\/strong>, the moment where problem-solving stops being a messy human intuition and becomes something programmable. And the wild part? These algorithms don\u2019t just live in code\u2014they\u2019re quietly running the world around you. From finding your way across campus to navigating traffic with Google Maps to routing internet packets across the globe, search is everywhere.<\/p>\n\n\n\n<p>And with one <strong>coffee break <\/strong>(or <em>mate<\/em>, if you\u2019re a fellow Argentinian), you can go from the baby steps of Breadth-First Search (<strong>BFS<\/strong>) to the stardom of <strong>A*<\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>The Map of Possibilities<\/strong><\/h2>\n\n\n\n<p>When we say \u201csearch,\u201d think <strong>road-trip planner<\/strong>. Each <em>city<\/em> is a <strong>node<\/strong>, each <em>road<\/em> is an <strong>edge<\/strong>, and each <em>edge<\/em> has a <strong>cost<\/strong> (<strong>distance, time<\/strong>, or maybe even <strong>fuel!<\/strong>). A search problem, as <em>Artificial Intelligence: A Modern Approach<\/em> (Russell &amp; Norvig) puts it, has four key ingredients:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Initial state<\/strong> \u2192 your <strong>start<\/strong> city .<\/li>\n\n\n\n<li><strong>Actions<\/strong> \u2192 the <strong>roads<\/strong> you can take from a city.&nbsp;<\/li>\n\n\n\n<li><strong>Goal test<\/strong> \u2192 \u201cAm I at the <strong>destination<\/strong>?\u201d&nbsp;<\/li>\n\n\n\n<li><strong>Path cost<\/strong> \u2192 <strong>sum of road weights <\/strong>(kilometers, minutes, tolls, you choose).&nbsp;<\/li>\n<\/ul>\n\n\n\n<p>Different algorithms are just different trip vibes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>BFS<\/strong>: \u201c<em>fewest hops.<\/em>\u201d Good when every road costs the same (unweighted).<\/li>\n\n\n\n<li><strong>UCS<\/strong>: \u201c<em>cheapest total distance\/time.<\/em>\u201d Expands the lowest accumulated cost first.<\/li>\n\n\n\n<li><strong>A*<\/strong>: \u201ccheapest so far + looks-ahead.\u201d Uses a heuristic like straight-line distance to the goal. If your heuristic never overestimates, A* is both fast <em>and<\/em> optimal.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>BFS: The Tourist with a Checklist<\/strong><\/h2>\n\n\n\n<p><strong>Breadth-First Search<\/strong> is like that friend who insists on <strong>exploring systematically<\/strong>: <em>block by block, street by street, never skipping a beat<\/em>. If you\u2019re at a city and want to reach another one, BFS first checks <em>all cities one step away. Then all cities are two steps away. Then all cities are three steps away.<\/em><\/p>\n\n\n\n<p>It\u2019s <strong>complete<\/strong>\u2014if there\u2019s a route, BFS will find it. And it\u2019s optimal <em>only if<\/em> all roads cost the same (like if every bus ticket cost $1 no matter the distance).<\/p>\n\n\n\n<p>In natural terms: BFS is like <strong>exploring a maze<\/strong> by leaving a trail of breadcrumbs and fanning out evenly. You won\u2019t miss the exit, but you might exhaust yourself checking every possible corridor on the way.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td>BFS(Graph G, Node start, Node goal):<br>&nbsp; &nbsp; frontier \u2190 FIFO-QUEUE()<br>&nbsp; &nbsp; frontier.enqueue(start)<br>&nbsp; &nbsp; came_from \u2190 map with start \u2192 NULL<br>&nbsp; &nbsp; visited \u2190 set { start }<br><br>&nbsp; &nbsp; while frontier not empty:<br>&nbsp; &nbsp; &nbsp; &nbsp; current \u2190 frontier.dequeue()<br><br>&nbsp; &nbsp; &nbsp; &nbsp; if current = goal:<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; return RECONSTRUCT_PATH(came_from, goal)<br><br>&nbsp; &nbsp; &nbsp; &nbsp; for each neighbor in G.neighbors(current):<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if neighbor not in visited:<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; visited.add(neighbor)<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; came_from[neighbor] \u2190 current<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; frontier.enqueue(neighbor)<br><br>&nbsp; &nbsp; return FAILURE<br><br>RECONSTRUCT_PATH(came_from, goal):<br>&nbsp; &nbsp; path \u2190 empty list<br>&nbsp; &nbsp; node \u2190 goal<br>&nbsp; &nbsp; while node \u2260 NULL:<br>&nbsp; &nbsp; &nbsp; &nbsp; prepend node to path<br>&nbsp; &nbsp; &nbsp; &nbsp; node \u2190 came_from[node]<br>&nbsp; &nbsp; return path<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>UCS: The Budget Traveler<\/strong><\/h2>\n\n\n\n<p>Uniform-Cost Search is a more careful planner. It doesn\u2019t just count the <em>number of stops<\/em>\u2014it cares about the <em>price of the trip<\/em>. UCS expands the route with the <strong>lowest cost so far<\/strong>, always checking the \u201ccheapest-looking\u201d ticket on the table before committing.<\/p>\n\n\n\n<p>Imagine you\u2019re planning a Eurotrip: Paris \u2192 Amsterdam \u2192 Berlin. You could hop direct flights or take cheap trains. BFS would just count legs (two flights = two hops). UCS would tally up actual euros spent and pick the route that minimizes cost\u2014even if it means making a longer detour.<\/p>\n\n\n\n<p>UCS is guaranteed to find the cheapest route, but it\u2019s slow if the map is huge, because it needs to carefully evaluate every possibility.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td>UCS(Graph G, Node start, Node goal):&nbsp;&nbsp;&nbsp;&nbsp;frontier \u2190 MIN-PRIORITY-QUEUE ordered by g&nbsp;&nbsp;&nbsp;&nbsp;frontier.push((g=0, node=start))&nbsp;&nbsp;&nbsp;&nbsp;came_from \u2190 map with start \u2192 NULL&nbsp;&nbsp;&nbsp;&nbsp;best_cost \u2190 map with start \u2192 0<br>&nbsp;&nbsp;&nbsp;&nbsp;while frontier not empty:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(g, current) \u2190 frontier.pop_min()<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if current = goal:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return RECONSTRUCT_PATH(came_from, goal), g<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for each (neighbor, w) in G.weighted_neighbors(current):&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;new_cost \u2190 g + w&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if neighbor not in best_cost OR new_cost &lt; best_cost[neighbor]:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;best_cost[neighbor] \u2190 new_cost&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;came_from[neighbor] \u2190 current&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;frontier.push((new_cost, neighbor))<br>&nbsp;&nbsp;&nbsp;&nbsp;return FAILURE<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>A*: The GPS in Your Pocket<\/strong><\/h2>\n\n\n\n<p>Finally, the star of the show: <strong>A*<\/strong>.<\/p>\n\n\n\n<p>A* is UCS with a brain. Like UCS, it cares about the cost so far, but it also peeks ahead with a <strong>heuristic<\/strong>\u2014an estimate of how much farther the trip is. The most common heuristic? <strong>Straight-line distance<\/strong> (\u201cas the crow flies\u201d).<\/p>\n\n\n\n<p>Think of A* as your GPS app. It knows how far you\u2019ve driven, but it also knows roughly how far you still are from your destination. By combining both numbers, it avoids exploring hopeless detours.<\/p>\n\n\n\n<p>Formally, it computes:<\/p>\n\n\n\n<p>f(n)=g(n) + h(n)<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>g(n): cost so far.<br><\/li>\n\n\n\n<li>h(n): estimated cost to goal.<br><\/li>\n<\/ul>\n\n\n\n<p>As long as the heuristic never <em>overestimates<\/em> the real cost, A* guarantees the cheapest path\u2014but way faster than UCS.<\/p>\n\n\n\n<p><strong>Natural analogy<\/strong>: UCS is like a cautious accountant checking every receipt. A* is like an accountant with a compass\u2014it still tallies receipts, but always points you in the right direction.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td>A_STAR(Graph G, Node start, Node goal, Heuristic h):<br>&nbsp; &nbsp; frontier \u2190 MIN-PRIORITY-QUEUE ordered by f = g + h<br>&nbsp; &nbsp; frontier.push((f=h(start), g=0, node=start))<br>&nbsp; &nbsp; came_from \u2190 map with start \u2192 NULL<br>&nbsp; &nbsp; best_cost \u2190 map with start \u2192 0<br><br>&nbsp; &nbsp; while frontier not empty:<br>&nbsp; &nbsp; &nbsp; &nbsp; (f, g, current) \u2190 frontier.pop_min()<br><br>&nbsp; &nbsp; &nbsp; &nbsp; if current = goal:<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; return RECONSTRUCT_PATH(came_from, goal), g<br><br>&nbsp; &nbsp; &nbsp; &nbsp; for each (neighbor, w) in G.weighted_neighbors(current):<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tentative_g \u2190 g + w<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if neighbor not in best_cost OR tentative_g &lt; best_cost[neighbor]:<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; best_cost[neighbor] \u2190 tentative_g<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; came_from[neighbor] \u2190 current<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; f_new \u2190 tentative_g + h(neighbor)<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; frontier.push((f_new, tentative_g, neighbor))<br><br>&nbsp; &nbsp; return FAILURE<br><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>A Tiny City Graph<\/strong><\/h2>\n\n\n\n<p>Here\u2019s <a href=\"https:\/\/github.com\/juliolugo96\/road-to-ai\/blob\/main\/search-algorithms-irl\/city-graph.py\">a toy example, you can find its code<\/a>:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1396\" height=\"1010\" src=\"https:\/\/beon.tech\/blog\/wp-content\/uploads\/2025\/09\/image-1.png\" alt=\"Example of a tiny city graph\" class=\"wp-image-4002\" style=\"width:612px;height:auto\" srcset=\"https:\/\/beon.tech\/blog\/wp-content\/uploads\/2025\/09\/image-1.png 1396w, https:\/\/beon.tech\/blog\/wp-content\/uploads\/2025\/09\/image-1-300x217.png 300w\" sizes=\"auto, (max-width: 1396px) 100vw, 1396px\" \/><\/figure>\n\n\n\n<p>We keep coordinates for each city so A* can use straight-line heuristics.<\/p>\n\n\n\n<p>The output of your code will show something like this:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td>BFS: [&#8216;Arbor&#8217;, &#8216;Brook&#8217;, &#8216;Cedar&#8217;, &#8216;Fargo&#8217;, &#8216;Grove&#8217;] (hops: 4 )<br>UCS: [&#8216;Arbor&#8217;, &#8216;Brook&#8217;, &#8216;Cedar&#8217;, &#8216;Fargo&#8217;, &#8216;Grove&#8217;] (km: 9.4 )<br>A*: [&#8216;Arbor&#8217;, &#8216;Brook&#8217;, &#8216;Cedar&#8217;, &#8216;Fargo&#8217;, &#8216;Grove&#8217;] (km: 9.4 )<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>How to read the results<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>BFS<\/strong> gives you the <strong>fewest-city<\/strong> route (ignores distances).<br><\/li>\n\n\n\n<li><strong>UCS<\/strong> gives the <strong>minimum total km<\/strong> route.<br><\/li>\n\n\n\n<li><strong>A*<\/strong> uses straight-line distance to <strong>aim<\/strong> itself and usually expands far fewer nodes than UCS\u2014while still returning the optimal path, because the Euclidean heuristic here <strong>never overestimates<\/strong> actual road cost (edges are near-Euclidean and positive).<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Why the Heuristic Matters<\/strong><\/h2>\n\n\n\n<p>Heuristics are your built-in sense of direction. Humans use them all the time: \u201cThe mall is east, so I\u2019ll head east.\u201d In A*, heuristics give search algorithms that same compass.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A good heuristic saves time by guiding exploration.<br><\/li>\n\n\n\n<li>A bad heuristic (one that overestimates, like \u201cthe mall is 2 km away\u201d when it\u2019s actually 5) might send you chasing mirages, breaking optimality.<br><\/li>\n<\/ul>\n\n\n\n<p>The beauty of A*: with an admissible heuristic (never overestimates), you get the best of both worlds\u2014<strong>fast<\/strong> and <strong>optimal<\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>From Coffee to Cosmos<\/strong><\/h2>\n\n\n\n<p>One coffee later, you\u2019ve sprinted through the hall of fame:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>BFS<\/strong>: the systematic tourist, short paths on unweighted maps.<br><\/li>\n\n\n\n<li><strong>UCS<\/strong>: the budget traveler, counting every cent of distance.<br><\/li>\n\n\n\n<li><strong>A*<\/strong>: the GPS, balancing real cost with intuition.<\/li>\n<\/ul>\n\n\n\n<p>This is just the beginning. Ahead lie exotic beasts: <strong>bidirectional search<\/strong>, <strong>iterative deepening<\/strong>, even <strong>tridirectional UCS<\/strong> (yes, that\u2019s a thing in grad school assignments). Out in the real world, these ideas scale up to self-driving cars, warehouse robots, and even AI planning your Netflix recommendations.<\/p>\n\n\n\n<p>So next time you sip your coffee and launch a navigation app, remember: behind the scenes, some algorithm is tirelessly exploring the map for you, just like you did at 2 a.m. with your first BFS.<strong>The adventure has only begun<\/strong>!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Imagine this: it\u2019s 2 a.m., you\u2019re deep into some Udemy\/Coursera\/EdX\/Master\u2019s homework, and your coffee is running dangerously low. The assignment? \u201cImplement breadth-first search.\u201d At first glance, it looks innocent\u2014almost trivial. But little do you know, you\u2019ve just unlocked the door to one of the oldest and most fascinating adventures in AI: search algorithms. Welcome, my<a class=\"read_more_linkk\" href=\"https:\/\/beon.tech\/blog\/search-algorithms-irl\/\">&#8230;<\/a><\/p>\n","protected":false},"author":47,"featured_media":3996,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_sitemap_exclude":false,"_sitemap_priority":"","_sitemap_frequency":"","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[168],"tags":[421,426,417],"class_list":["post-3994","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tech-expertise-innovation","tag-ai-for-software-engineering","tag-ai-productivity","tag-algorithms"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Search Algorithms IRL: BFS to A Over Coffee | BEON.tech<\/title>\n<meta name=\"description\" content=\"Search Algorithms IRL: Learn BFS, UCS, and A with real-world examples, pseudocode, and Python. A clear guide for students, devs, and AI enthusiasts.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/beon.tech\/blog\/search-algorithms-irl\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Search Algorithms IRL: BFS to A Over Coffee | BEON.tech\" \/>\n<meta property=\"og:description\" content=\"Search Algorithms IRL: Learn BFS, UCS, and A with real-world examples, pseudocode, and Python. A clear guide for students, devs, and AI enthusiasts.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/beon.tech\/blog\/search-algorithms-irl\/\" \/>\n<meta property=\"og:site_name\" content=\"Software &amp; Tech Hiring Insights | BEON.tech Blog\" \/>\n<meta property=\"article:published_time\" content=\"2025-09-10T13:30:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-06T12:42:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/beon.tech\/blog\/wp-content\/uploads\/2025\/09\/admin-writes-ai-code-laptop-scaled.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2050\" \/>\n\t<meta property=\"og:image:height\" content=\"1367\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Julio Lugo\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@beontechok\" \/>\n<meta name=\"twitter:site\" content=\"@beontechok\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Julio Lugo\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/beontech.wpengine.com\\\/search-algorithms-irl\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/beontech.wpengine.com\\\/search-algorithms-irl\\\/\"},\"author\":{\"name\":\"Julio Lugo\",\"@id\":\"https:\\\/\\\/beon.tech\\\/blog\\\/#\\\/schema\\\/person\\\/0e4d4e9639237b3b68f319e92475a6fb\"},\"headline\":\"Search Algorithms IRL: From Breadth-First to A* in One Coffee Break\",\"datePublished\":\"2025-09-10T13:30:00+00:00\",\"dateModified\":\"2026-04-06T12:42:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/beontech.wpengine.com\\\/search-algorithms-irl\\\/\"},\"wordCount\":1624,\"image\":{\"@id\":\"https:\\\/\\\/beontech.wpengine.com\\\/search-algorithms-irl\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/beon.tech\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/admin-writes-ai-code-laptop-scaled.jpg\",\"keywords\":[\"AI for Software Engineering\",\"AI Productivity\",\"Algorithms\"],\"articleSection\":[\"Tech Expertise &amp; Innovation\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/beontech.wpengine.com\\\/search-algorithms-irl\\\/\",\"url\":\"https:\\\/\\\/beontech.wpengine.com\\\/search-algorithms-irl\\\/\",\"name\":\"Search Algorithms IRL: BFS to A Over Coffee | BEON.tech\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/beon.tech\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/beontech.wpengine.com\\\/search-algorithms-irl\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/beontech.wpengine.com\\\/search-algorithms-irl\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/beon.tech\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/admin-writes-ai-code-laptop-scaled.jpg\",\"datePublished\":\"2025-09-10T13:30:00+00:00\",\"dateModified\":\"2026-04-06T12:42:09+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/beon.tech\\\/blog\\\/#\\\/schema\\\/person\\\/0e4d4e9639237b3b68f319e92475a6fb\"},\"description\":\"Search Algorithms IRL: Learn BFS, UCS, and A with real-world examples, pseudocode, and Python. A clear guide for students, devs, and AI enthusiasts.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/beontech.wpengine.com\\\/search-algorithms-irl\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/beontech.wpengine.com\\\/search-algorithms-irl\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/beontech.wpengine.com\\\/search-algorithms-irl\\\/#primaryimage\",\"url\":\"https:\\\/\\\/beon.tech\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/admin-writes-ai-code-laptop-scaled.jpg\",\"contentUrl\":\"https:\\\/\\\/beon.tech\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/admin-writes-ai-code-laptop-scaled.jpg\",\"width\":2050,\"height\":1367,\"caption\":\"Search Algorithms IRL: Explore BFS, UCS, and A explained with real-world analogies, pseudocode, and Python examples. Learn how AI search works behind the code. neural networks made up of interconnected nodes using augmented reality technology. Expert running AI script for data processing\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/beontech.wpengine.com\\\/search-algorithms-irl\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/beon.tech\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Search Algorithms IRL: From Breadth-First to A* in One Coffee Break\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/beon.tech\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/beon.tech\\\/blog\\\/\",\"name\":\"Software &amp; Tech Hiring Insights | BEON.tech Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/beon.tech\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/beon.tech\\\/blog\\\/#\\\/schema\\\/person\\\/0e4d4e9639237b3b68f319e92475a6fb\",\"name\":\"Julio Lugo\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/beon.tech\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/1733507784249-500x500-2-96x96.jpeg\",\"url\":\"https:\\\/\\\/beon.tech\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/1733507784249-500x500-2-96x96.jpeg\",\"contentUrl\":\"https:\\\/\\\/beon.tech\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/1733507784249-500x500-2-96x96.jpeg\",\"caption\":\"Julio Lugo\"},\"description\":\"Julio Lugo is a Software Engineer at BEON.tech, AWS Certified Solutions Architect, and a Georgia Tech OMSCS student. He specializes in frontend architecture and performance optimization, having led key initiatives to modernize build pipelines and improve application speed and reliability.\",\"url\":\"https:\\\/\\\/beon.tech\\\/blog\\\/author\\\/julio-lugo\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Search Algorithms IRL: BFS to A Over Coffee | BEON.tech","description":"Search Algorithms IRL: Learn BFS, UCS, and A with real-world examples, pseudocode, and Python. A clear guide for students, devs, and AI enthusiasts.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/beon.tech\/blog\/search-algorithms-irl\/","og_locale":"en_US","og_type":"article","og_title":"Search Algorithms IRL: BFS to A Over Coffee | BEON.tech","og_description":"Search Algorithms IRL: Learn BFS, UCS, and A with real-world examples, pseudocode, and Python. A clear guide for students, devs, and AI enthusiasts.","og_url":"https:\/\/beon.tech\/blog\/search-algorithms-irl\/","og_site_name":"Software &amp; Tech Hiring Insights | BEON.tech Blog","article_published_time":"2025-09-10T13:30:00+00:00","article_modified_time":"2026-04-06T12:42:09+00:00","og_image":[{"width":2050,"height":1367,"url":"https:\/\/beon.tech\/blog\/wp-content\/uploads\/2025\/09\/admin-writes-ai-code-laptop-scaled.jpg","type":"image\/jpeg"}],"author":"Julio Lugo","twitter_card":"summary_large_image","twitter_creator":"@beontechok","twitter_site":"@beontechok","twitter_misc":{"Written by":"Julio Lugo","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/beontech.wpengine.com\/search-algorithms-irl\/#article","isPartOf":{"@id":"https:\/\/beontech.wpengine.com\/search-algorithms-irl\/"},"author":{"name":"Julio Lugo","@id":"https:\/\/beon.tech\/blog\/#\/schema\/person\/0e4d4e9639237b3b68f319e92475a6fb"},"headline":"Search Algorithms IRL: From Breadth-First to A* in One Coffee Break","datePublished":"2025-09-10T13:30:00+00:00","dateModified":"2026-04-06T12:42:09+00:00","mainEntityOfPage":{"@id":"https:\/\/beontech.wpengine.com\/search-algorithms-irl\/"},"wordCount":1624,"image":{"@id":"https:\/\/beontech.wpengine.com\/search-algorithms-irl\/#primaryimage"},"thumbnailUrl":"https:\/\/beon.tech\/blog\/wp-content\/uploads\/2025\/09\/admin-writes-ai-code-laptop-scaled.jpg","keywords":["AI for Software Engineering","AI Productivity","Algorithms"],"articleSection":["Tech Expertise &amp; Innovation"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/beontech.wpengine.com\/search-algorithms-irl\/","url":"https:\/\/beontech.wpengine.com\/search-algorithms-irl\/","name":"Search Algorithms IRL: BFS to A Over Coffee | BEON.tech","isPartOf":{"@id":"https:\/\/beon.tech\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/beontech.wpengine.com\/search-algorithms-irl\/#primaryimage"},"image":{"@id":"https:\/\/beontech.wpengine.com\/search-algorithms-irl\/#primaryimage"},"thumbnailUrl":"https:\/\/beon.tech\/blog\/wp-content\/uploads\/2025\/09\/admin-writes-ai-code-laptop-scaled.jpg","datePublished":"2025-09-10T13:30:00+00:00","dateModified":"2026-04-06T12:42:09+00:00","author":{"@id":"https:\/\/beon.tech\/blog\/#\/schema\/person\/0e4d4e9639237b3b68f319e92475a6fb"},"description":"Search Algorithms IRL: Learn BFS, UCS, and A with real-world examples, pseudocode, and Python. A clear guide for students, devs, and AI enthusiasts.","breadcrumb":{"@id":"https:\/\/beontech.wpengine.com\/search-algorithms-irl\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/beontech.wpengine.com\/search-algorithms-irl\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/beontech.wpengine.com\/search-algorithms-irl\/#primaryimage","url":"https:\/\/beon.tech\/blog\/wp-content\/uploads\/2025\/09\/admin-writes-ai-code-laptop-scaled.jpg","contentUrl":"https:\/\/beon.tech\/blog\/wp-content\/uploads\/2025\/09\/admin-writes-ai-code-laptop-scaled.jpg","width":2050,"height":1367,"caption":"Search Algorithms IRL: Explore BFS, UCS, and A explained with real-world analogies, pseudocode, and Python examples. Learn how AI search works behind the code. neural networks made up of interconnected nodes using augmented reality technology. Expert running AI script for data processing"},{"@type":"BreadcrumbList","@id":"https:\/\/beontech.wpengine.com\/search-algorithms-irl\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/beon.tech\/blog\/"},{"@type":"ListItem","position":2,"name":"Search Algorithms IRL: From Breadth-First to A* in One Coffee Break"}]},{"@type":"WebSite","@id":"https:\/\/beon.tech\/blog\/#website","url":"https:\/\/beon.tech\/blog\/","name":"Software &amp; Tech Hiring Insights | BEON.tech Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/beon.tech\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/beon.tech\/blog\/#\/schema\/person\/0e4d4e9639237b3b68f319e92475a6fb","name":"Julio Lugo","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/beon.tech\/blog\/wp-content\/uploads\/2025\/09\/1733507784249-500x500-2-96x96.jpeg","url":"https:\/\/beon.tech\/blog\/wp-content\/uploads\/2025\/09\/1733507784249-500x500-2-96x96.jpeg","contentUrl":"https:\/\/beon.tech\/blog\/wp-content\/uploads\/2025\/09\/1733507784249-500x500-2-96x96.jpeg","caption":"Julio Lugo"},"description":"Julio Lugo is a Software Engineer at BEON.tech, AWS Certified Solutions Architect, and a Georgia Tech OMSCS student. He specializes in frontend architecture and performance optimization, having led key initiatives to modernize build pipelines and improve application speed and reliability.","url":"https:\/\/beon.tech\/blog\/author\/julio-lugo\/"}]}},"featured_image_src":"https:\/\/beon.tech\/blog\/wp-content\/uploads\/2025\/09\/admin-writes-ai-code-laptop-600x400.jpg","featured_image_src_square":"https:\/\/beon.tech\/blog\/wp-content\/uploads\/2025\/09\/admin-writes-ai-code-laptop-600x600.jpg","author_info":{"display_name":"Julio Lugo","author_link":"https:\/\/beon.tech\/blog\/author\/julio-lugo\/"},"_links":{"self":[{"href":"https:\/\/beon.tech\/blog\/wp-json\/wp\/v2\/posts\/3994","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/beon.tech\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/beon.tech\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/beon.tech\/blog\/wp-json\/wp\/v2\/users\/47"}],"replies":[{"embeddable":true,"href":"https:\/\/beon.tech\/blog\/wp-json\/wp\/v2\/comments?post=3994"}],"version-history":[{"count":0,"href":"https:\/\/beon.tech\/blog\/wp-json\/wp\/v2\/posts\/3994\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/beon.tech\/blog\/wp-json\/wp\/v2\/media\/3996"}],"wp:attachment":[{"href":"https:\/\/beon.tech\/blog\/wp-json\/wp\/v2\/media?parent=3994"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/beon.tech\/blog\/wp-json\/wp\/v2\/categories?post=3994"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/beon.tech\/blog\/wp-json\/wp\/v2\/tags?post=3994"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}