{"id":430,"date":"2020-09-22T10:19:19","date_gmt":"2020-09-22T14:19:19","guid":{"rendered":"https:\/\/www.macloo.com\/ai\/?p=430"},"modified":"2021-06-03T13:05:18","modified_gmt":"2021-06-03T17:05:18","slug":"how-to-start-learning-about-algorithms","status":"publish","type":"post","link":"https:\/\/www.macloo.com\/ai\/2020\/09\/22\/how-to-start-learning-about-algorithms\/","title":{"rendered":"How to start learning about algorithms"},"content":{"rendered":"\n<p>After writing <a href=\"https:\/\/www.macloo.com\/ai\/2020\/09\/21\/what-do-we-talk-about-when-we-talk-about-algorithms\/\">yesterday&#8217;s post<\/a>, I was thinking about how much students should know about algorithms if they are to have a basic understanding of how AI works. Is it enough to tell them an algorithm is a set of instructions?<\/p>\n\n\n\n<p>So I turned, as I often do, to Khan Academy \u2014 a free online learning site that often helps me through my lack of a mathematics background. I found <a rel=\"noreferrer noopener\" href=\"https:\/\/www.khanacademy.org\/computing\/computer-science\/algorithms\/intro-to-algorithms\/v\/what-are-algorithms\" target=\"_blank\">a set of three short lessons<\/a>, starting with a video.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"680\" src=\"https:\/\/www.macloo.com\/ai\/wp-content\/uploads\/2020\/09\/Screen-Shot-2020-09-22-at-9.11.38-AM-1024x680.png\" alt=\"\" class=\"wp-image-431\" srcset=\"https:\/\/www.macloo.com\/ai\/wp-content\/uploads\/2020\/09\/Screen-Shot-2020-09-22-at-9.11.38-AM-1024x680.png 1024w, https:\/\/www.macloo.com\/ai\/wp-content\/uploads\/2020\/09\/Screen-Shot-2020-09-22-at-9.11.38-AM-300x199.png 300w, https:\/\/www.macloo.com\/ai\/wp-content\/uploads\/2020\/09\/Screen-Shot-2020-09-22-at-9.11.38-AM-768x510.png 768w, https:\/\/www.macloo.com\/ai\/wp-content\/uploads\/2020\/09\/Screen-Shot-2020-09-22-at-9.11.38-AM.png 1258w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption><em>Screenshot from Khan Academy video<\/em><\/figcaption><\/figure>\n\n\n\n<p>In the introductory video, &#8220;What is an algorithm and why should you care?&#8221;, we see various practical uses of algorithms, followed by the statement above, and a brief description of how <em>route finding<\/em> works \u2014 what Google Maps does when it gives you directions. Route finding is often used as an example of accepting a &#8220;good enough&#8221; output for the sake of speed (that is, <em>efficiency<\/em>).<\/p>\n\n\n\n<p>Watching the animation, we comprehend that the computer is following a set of instructions to determine a good route for a delivery truck with 25 stops to make. We <em>see the process<\/em> of the algorithm at work, rather than seeing formulas and equations.<\/p>\n\n\n\n<p>I love that the video also shows us, with animation, how the efficiency of an algorithm is calculated. <\/p>\n\n\n\n<p>The second lesson, &#8220;A guessing game,&#8221; demonstrates <em>binary search<\/em> (an algorithm) by allowing you to <em>discover it<\/em> interactively. Wonderful!<\/p>\n\n\n\n<p>The third lesson, &#8220;Route-finding,&#8221; is much more reading intensive. It explains the algorithm in terms of solving a maze. Without knowing the exact path to solve the maze, the algorithm can &#8220;know&#8221; which choice for its next step takes it <em>closer to the goal<\/em> (the center of the maze). I don&#8217;t consider this lesson very helpful, but that&#8217;s because I saw <em>a much better explanation<\/em> of maze-solving algorithms here:<\/p>\n\n\n\n<figure class=\"wp-block-embed-youtube aligncenter wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<div class=\"jetpack-video-wrapper\"><iframe loading=\"lazy\" title=\"Search - Lecture 0 - CS50&#039;s Introduction to Artificial Intelligence with Python 2020\" width=\"739\" height=\"416\" src=\"https:\/\/www.youtube.com\/embed\/D5aJNFWsWew?start=3049&#038;feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/div>\n<\/div><figcaption><em>Start video at 54:35 for demo of the greedy best-first search algorithm<\/em><\/figcaption><\/figure>\n\n\n\n<p>I am continually amazed and humbled by the variety of ways in which people teach these concepts. More important, I realize how some ways of explaining a concept are <em>not at all effective<\/em> \u2014 for me, at least \u2014 and another way of explaining makes it clear as crystal.<\/p>\n\n\n\n<p>So, how much should students know about algorithms, if they are to have a general understanding of AI? I think a good start would be to watch and discuss the introductory Khan Academy video, and also to see a further visual (probably animated) representation of another kind of algorithm at work.<\/p>\n\n\n\n<p><a rel=\"license\" href=\"http:\/\/creativecommons.org\/licenses\/by-nc-nd\/4.0\/\"><img decoding=\"async\" alt=\"Creative Commons License\" style=\"border-width:0\" src=\"https:\/\/i.creativecommons.org\/l\/by-nc-nd\/4.0\/88x31.png\"><\/a><br>\n<small><span xmlns:dct=\"http:\/\/purl.org\/dc\/terms\/\" property=\"dct:title\"><strong>AI in Media and Society<\/strong><\/span> by <span xmlns:cc=\"http:\/\/creativecommons.org\/ns#\" property=\"cc:attributionName\">Mindy McAdams<\/span> is licensed under a <a rel=\"license\" href=\"http:\/\/creativecommons.org\/licenses\/by-nc-nd\/4.0\/\">Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License<\/a>.<br>\nInclude the author&#8217;s name (Mindy McAdams) and a link to the original post in any reuse of this content.<\/small><\/p>\n\n\n\n<p>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>After writing yesterday&#8217;s post, I was thinking about how much students should know about algorithms if they are to have a basic understanding of how AI works. Is it enough to tell them an algorithm is a set of instructions? So I turned, as I often do, to Khan Academy \u2014 a free online learning&hellip; <a class=\"more-link\" href=\"https:\/\/www.macloo.com\/ai\/2020\/09\/22\/how-to-start-learning-about-algorithms\/\">Continue reading <span class=\"screen-reader-text\">How to start learning about algorithms<\/span> <span class=\"meta-nav\" aria-hidden=\"true\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[43,157],"tags":[89,87,86,85,88],"class_list":["post-430","post","type-post","status-publish","format-standard","hentry","category-algorithms","category-basics","tag-binary_search","tag-efficiency","tag-maze_solving","tag-route_finding","tag-search"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.macloo.com\/ai\/wp-json\/wp\/v2\/posts\/430","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.macloo.com\/ai\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.macloo.com\/ai\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.macloo.com\/ai\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.macloo.com\/ai\/wp-json\/wp\/v2\/comments?post=430"}],"version-history":[{"count":7,"href":"https:\/\/www.macloo.com\/ai\/wp-json\/wp\/v2\/posts\/430\/revisions"}],"predecessor-version":[{"id":438,"href":"https:\/\/www.macloo.com\/ai\/wp-json\/wp\/v2\/posts\/430\/revisions\/438"}],"wp:attachment":[{"href":"https:\/\/www.macloo.com\/ai\/wp-json\/wp\/v2\/media?parent=430"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.macloo.com\/ai\/wp-json\/wp\/v2\/categories?post=430"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.macloo.com\/ai\/wp-json\/wp\/v2\/tags?post=430"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}