Introduction to Reinforcement Learning in Python

بواسطة: Coursera

Overview

In this project-based course, we will explore Reinforcement Learning in Python. Reinforcement Learning, or RL for short, is different from supervised learning methods in that, rather than being given correct examples by humans, the AI finds the correct answers for itself through a predefined framework of reward signals.

In this course, we will discuss theories and concepts that are integral to RL, such as the Multi-Arm Bandit problem and its implications, and how Markov Decision processes can be leveraged to find solutions. Then we will implement code examples in Python of basic Temporal Difference algorithms and Monte Carlo techniques. Finally, we implement an example of Q-learning in Python.

I would encourage learners to experiment with the tools and methods discussed in this course. The learner is highly encouraged to experiment beyond the scope of the course.

Note: This course works best for learners who are based in the North America region. We’re currently working on providing the same experience in other regions.

Taught by

Charles Ivan Niswander II

Introduction to Reinforcement Learning in Python
الذهاب الي الدورة

Introduction to Reinforcement Learning in Python

بواسطة: Coursera

  • Coursera
  • مدفوعة
  • الإنجليزية
  • متاح شهادة
  • أيام محددة
  • الجميع
  • N/A
8.1.2PHP Version261msRequest Duration2MBMemory UsageGET ar/الدورات/{slug}Route
    • Booting (163ms)
    • Application (97.71ms)
    • 1 x Booting (62.36%)
      162.91ms
      1 x Application (37.4%)
      97.71ms
      14 templates were rendered
      • public.courses.show (resources/views/public/courses/show.blade.php)3bladefile
        Params
        0
        course
        1
        links
        2
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.courses.partials.details (resources/views/public/courses/partials/details.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.layouts.main (resources/views/public/layouts/main.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.meta (resources/views/public/layouts/partials/meta.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.navbar (resources/views/public/layouts/partials/navbar.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.links (resources/views/public/auth/profile/partials/links.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.layouts.partials.flash-session (resources/views/public/layouts/partials/flash-session.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      uri
      GET ar/الدورات/{slug}
      middleware
      web, localize:ar
      controller
      App\Http\Controllers\CourseController@show
      as
      ar.courses.show
      namespace
      prefix
      /ar
      where
      file
      app/Http/Controllers/CourseController.php:17-35
      7 statements were executed7.32ms
      • select * from `courses` where `slug_ar` = 'introduction-to-reinforcement-learning-in-python' limit 1
        6.1ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. introduction-to-reinforcement-learning-in-python
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:20
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • update `courses` set `visitors` = `visitors` + 1, `courses`.`updated_at` = '2025-05-15 04:31:31' where `id` = 3482
        400μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-05-15 04:31:31
        • 1. 3482
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:21
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `topic_id`, `slug_en`, `slug_ar` from `subjects` where `subjects`.`id` in (62)
        180μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `slug_en`, `slug_ar` from `topics` where `topics`.`id` in (1)
        150μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 25. /app/Http/Controllers/CourseController.php:23
        • 26. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 27. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 28. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 29. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `institutions` where `institutions`.`id` in (106) and `institutions`.`deleted_at` is null
        150μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `providers` where `providers`.`id` in (2) and `providers`.`deleted_at` is null
        140μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `html_files` where `html_files`.`id` = 3473 limit 1
        200μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 3473
        Backtrace
        • 21. /app/Models/Course.php:84
        • 28. view::public.courses.show:29
        • 30. /vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:125
        • 31. /vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • 32. /vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:72
      App\Models\HtmlFile
      1
      App\Models\Provider
      1
      App\Models\Institution
      1
      App\Models\Topic
      1
      App\Models\Subject
      1
      App\Models\Course
      1
        _token
        Kj9JDIeajdQafYNxOP40mcPpXIH7D2UlLG8LbBal
        locale
        ar
        _previous
        array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/introd...
        _flash
        array:2 [ "old" => [] "new" => [] ]
        PHPDEBUGBAR_STACK_DATA
        []
        path_info
        /ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/introduction-to-reinforcement-learning-in-python
        status_code
        200
        
        status_text
        OK
        format
        html
        content_type
        text/html; charset=UTF-8
        request_query
        []
        
        request_request
        []
        
        request_headers
        0 of 0
        array:24 [ "cf-ipcountry" => array:1 [ 0 => "US" ] "cf-connecting-ip" => array:1 [ 0 => "3.17.23.48" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "x-forwarded-for" => array:1 [ 0 => "3.17.23.48" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "cf-ray" => array:1 [ 0 => "93ffe7f9cf258714-ORD" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "priority" => array:1 [ 0 => "u=0, i" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "host" => array:1 [ 0 => "www.corspedia.com" ] "content-length" => array:1 [ 0 => "" ] "content-type" => array:1 [ 0 => "" ] ]
        request_server
        0 of 0
        array:50 [ "USER" => "www-data" "HOME" => "/var/www" "HTTP_CF_IPCOUNTRY" => "US" "HTTP_CF_CONNECTING_IP" => "3.17.23.48" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_X_FORWARDED_FOR" => "3.17.23.48" "HTTP_SEC_FETCH_SITE" => "none" "HTTP_ACCEPT" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "HTTP_SEC_CH_UA_MOBILE" => "?0" "HTTP_SEC_CH_UA" => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_CF_RAY" => "93ffe7f9cf258714-ORD" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_PRIORITY" => "u=0, i" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "HTTP_HOST" => "www.corspedia.com" "REDIRECT_STATUS" => "200" "SERVER_NAME" => "corspedia.com" "SERVER_PORT" => "443" "SERVER_ADDR" => "141.95.147.152" "REMOTE_USER" => "" "REMOTE_PORT" => "47228" "REMOTE_ADDR" => "172.70.130.199" "SERVER_SOFTWARE" => "nginx/1.18.0" "GATEWAY_INTERFACE" => "CGI/1.1" "HTTPS" => "on" "REQUEST_SCHEME" => "https" "SERVER_PROTOCOL" => "HTTP/2.0" "DOCUMENT_ROOT" => "/var/www/corspedia/public" "DOCUMENT_URI" => "/index.php" "REQUEST_URI" => "/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/introduction-to-reinforcement-learning-in-python" "SCRIPT_NAME" => "/index.php" "CONTENT_LENGTH" => "" "CONTENT_TYPE" => "" "REQUEST_METHOD" => "GET" "QUERY_STRING" => "" "SCRIPT_FILENAME" => "/var/www/corspedia/public/index.php" "PATH_INFO" => "" "FCGI_ROLE" => "RESPONDER" "PHP_SELF" => "/index.php" "REQUEST_TIME_FLOAT" => 1747283491.1054 "REQUEST_TIME" => 1747283491 ]
        request_cookies
        []
        
        response_headers
        0 of 0
        array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Thu, 15 May 2025 04:31:31 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6Ik90ZUROMXBXdEEvUE5Kbi96U2NZK3c9PSIsInZhbHVlIjoiL0kvb05ZWk9Kd0pJNitBZWFEUEI3OHZRWTdPbGZIMEE2bmlwdlFyNkZFQlRwdlVIbWFYM1JXWktrbW8yZ2RSdnlQN3pqRkNXNUE3ZzBudkkyM293WDdpMDdZUjcvcktMZzBCTktURU96QitTbHROWDZmdmtGYWRvdzZ4ekxJQmMiLCJtYWMiOiJiNDhhOGI1MDhkYjAzYWQwYzk2MzQ5ZDk3MTBkZjlhZDZlZjc5M2ZjMzdjNWYwYjY1MzljNjdlODZiYzE1YzIwIiwidGFnIjoiIn0%3D; expires=Thu, 15 May 2025 06:31:31 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6Ik90ZUROMXBXdEEvUE5Kbi96U2NZK3c9PSIsInZhbHVlIjoiL0kvb05ZWk9Kd0pJNitBZWFEUEI3OHZRWTdPbGZIMEE2bmlwdlFyNkZFQlRwdlVIbWFYM1JXWktrbW8yZ2RSdnlQN3pqR" 1 => "laravel_session=eyJpdiI6ImVscUh1NWdYRUhtbDZ3UEptanI4WkE9PSIsInZhbHVlIjoiQk44U0s5UlhyeTFENE5hY25MUEZKd25xZ2k2U2JwaFNEN3o5OExEZ2hmY2RIQ0VGMmJEbnlOdWhzNFRwdExaZm1ncmtJYXhjbC83NzVmQUExMnJMV0JTc0FTV2xLUVcxaTNtcm93THhBUjg3SnhVZm5CaHFkUlNEMDFWV1NSODUiLCJtYWMiOiJkN2MwMjNhNWJhNjM0M2QxNGM2YzI0OGJhYzllZTg3MWNjZDQ3MDIyODlmZWM3YWM3ZjExN2MyNjMwZTBkMTBkIiwidGFnIjoiIn0%3D; expires=Thu, 15 May 2025 06:31:31 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6ImVscUh1NWdYRUhtbDZ3UEptanI4WkE9PSIsInZhbHVlIjoiQk44U0s5UlhyeTFENE5hY25MUEZKd25xZ2k2U2JwaFNEN3o5OExEZ2hmY2RIQ0VGMmJEbnlOdWhzNFRwdExaZm1n" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6Ik90ZUROMXBXdEEvUE5Kbi96U2NZK3c9PSIsInZhbHVlIjoiL0kvb05ZWk9Kd0pJNitBZWFEUEI3OHZRWTdPbGZIMEE2bmlwdlFyNkZFQlRwdlVIbWFYM1JXWktrbW8yZ2RSdnlQN3pqRkNXNUE3ZzBudkkyM293WDdpMDdZUjcvcktMZzBCTktURU96QitTbHROWDZmdmtGYWRvdzZ4ekxJQmMiLCJtYWMiOiJiNDhhOGI1MDhkYjAzYWQwYzk2MzQ5ZDk3MTBkZjlhZDZlZjc5M2ZjMzdjNWYwYjY1MzljNjdlODZiYzE1YzIwIiwidGFnIjoiIn0%3D; expires=Thu, 15-May-2025 06:31:31 GMT; path=/XSRF-TOKEN=eyJpdiI6Ik90ZUROMXBXdEEvUE5Kbi96U2NZK3c9PSIsInZhbHVlIjoiL0kvb05ZWk9Kd0pJNitBZWFEUEI3OHZRWTdPbGZIMEE2bmlwdlFyNkZFQlRwdlVIbWFYM1JXWktrbW8yZ2RSdnlQN3pqR" 1 => "laravel_session=eyJpdiI6ImVscUh1NWdYRUhtbDZ3UEptanI4WkE9PSIsInZhbHVlIjoiQk44U0s5UlhyeTFENE5hY25MUEZKd25xZ2k2U2JwaFNEN3o5OExEZ2hmY2RIQ0VGMmJEbnlOdWhzNFRwdExaZm1ncmtJYXhjbC83NzVmQUExMnJMV0JTc0FTV2xLUVcxaTNtcm93THhBUjg3SnhVZm5CaHFkUlNEMDFWV1NSODUiLCJtYWMiOiJkN2MwMjNhNWJhNjM0M2QxNGM2YzI0OGJhYzllZTg3MWNjZDQ3MDIyODlmZWM3YWM3ZjExN2MyNjMwZTBkMTBkIiwidGFnIjoiIn0%3D; expires=Thu, 15-May-2025 06:31:31 GMT; path=/; httponlylaravel_session=eyJpdiI6ImVscUh1NWdYRUhtbDZ3UEptanI4WkE9PSIsInZhbHVlIjoiQk44U0s5UlhyeTFENE5hY25MUEZKd25xZ2k2U2JwaFNEN3o5OExEZ2hmY2RIQ0VGMmJEbnlOdWhzNFRwdExaZm1n" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "Kj9JDIeajdQafYNxOP40mcPpXIH7D2UlLG8LbBal" "locale" => "ar" "_previous" => array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/introduction-to-reinforcement-learning-in-python" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]