TB MACHINE LEARNING (Reinforcement Learning) Pengendalian ketinggian Quad Copter




1. Tujuan

Adapun tujuan dari TB ini adalah mengotrol ketinggian quad copter dengan machine learning, kombinasi sitem kendali dan ML disebut juga dengan reinforced learning.

Adapun tugas ini berdasarkan paper IEEE oleh Jemin Hwangbo dkk (KAIST) dan Anne Boner (towardsdatascience.com)

2. Alat dan Bahan

Untuk penulisan pemrograman yang digunakan adalah Matlab.



3.Teori

  • Kendali  untuk mengatur perputaran motor dan arah geraknya


  • Reinforcement Learning
Reinforcement learning adalah tipe algoritma machine learning yang bisa membuat agent software dan mesin bekerja secara otomatis untuk menentukan perilaku yang ideal sehingga dapat memaksimalkan kinerja algoritmanya.  Algoritma reinforcement learning didefinisikan sebagai metode machine learning yang berkaitan dengan cara software agent mengambil tindakan di environmentnya. Algoritma ini merupakan bagian dari metode deep learning yang akan memaksimalkan sebagian reward kumulatif. 



Model Pembelajaran Reinforcement learning ada 2:

  1. Markov Decision Process
  2. Q-Learning
Markov Decision Process 

Markov Decision Process lebih dikenal dengan MDP adalah suatu pendekatan dalam RL untuk mengambil keputusan dalam environment gridworld. Lingkungan gridworld terdiri dari state dalam bentuk grid.

MDP mencoba menangkap dunia dalam bentuk grid dengan membaginya menjadi state, action, model / model transition, dan reward. Solusi untuk MDP disebut policy dan tujuannya adalah menemukan policy yang optimal untuk tugas MDP tersebut. Oleh karenanya parameter berikut digunakan untuk mendapatkan solusi yang diharapkan:


  • Set of states -S
  • Set of actions- A(s), A
  • Transition- T(s,a,s’) ~ P(s’|s,a)
  • Reward- R(s), R(s,a), R(s,a,s’)
  • Policy- n
  • Value- V

Algoritma RL, melakukan pengamatan (observation) dan evaluasi (evaluation) setiap pencapaian. Reinforcement learning dapat belajar dari pengalaman.

Agent di dalam environtment diharuskan mengambil tindakan yang didasarkan pada state saat ini. Jenis pembelajaran ini berbeda dengan supervised learning dalam artian data training pada model sebelumnya memiliki output mapping yang disediakan sedemikian rupa sehingga model mampu mempelajari jawaban yang benar. Sedangkan dalam hal ini RL tidak ada kunci jawaban yang disediakan kepada agent ketika harus melakukan action tertentu. Jika tidak ada set data pelatihan, ia belajar dari pengalamannya sendiri.

Q Learning

Q-learning (disebut sebagai model free algorithm) adalah algoritma RL tanpa model untuk mempelajari policy yang memberi tahu agen tindakan apa yang harus diambil dalam keadaan apa. Q-learning tidak memerlukan model dari environtment, dan dapat menangani masalah dengan transisi stokastik dan reward, tanpa memerlukan adaptasi.


  • Layer Pelatihan
Ada dua jaringan yang digunakan untuk pelatihan, yaitu value network dan policy network. Kedua jaringan memiliki kondisi (orientasi, posisi, kecepatan angular) sebagai input.




Value network digunakan untuk mengukur kondisi (state) dari quad-rotor, yakni bad state atau good state.



Sementara policy network mengontrol kekuatan putar masing-masing motor (4).



Adapun iterasi pembelajaran ditunjukkan sebagai berikut:


Contoh iterasi:





4. Program

  • Run program: ubah trajectories/arah di file control/runsim.m and running program

  • untuk kendali dan parameter P, I dan D lihat control/animation.m untuk implementasi dari PID controller.





  • Program diatas dapat disederhanakan menjadi



untuk penjelasan roll yaw dan pitch



No comments:

Post a Comment