18/07/2026
DQN => သူက Neural Fitted Q Iteration ကို မှ Target Network ထည့်ပြီး Q function ကို ခန့်မှန်းတွက်ထုတ်တယ်။ အဲ့ကောင်ကို target အနေနဲ့ train တာပေါ့။ Non-stationary ပြသနာကြောင့် weight freeze လုပ်ပြီး fit ရတယ်။ ပြီးတော့ Replay Buffer သုံးကာ uniform sampling လုပ်ပြီး batch အလိုက် Neural Net ထဲထည့်ကာ Q function ကို train တာဖြစ်ပါတယ်။ အခြားပြောစရာတော့ အများကြီးရှိသေးတာပေါ့။
DDQN => သူကတော့ DQN ကို ပဲ Q Learning ထပ်ထည့်တာ။ သဘောက MDP တုန်းက Q Table ကို နှစ်ပိုင်းခွဲပြီး random generate လုပ်ကာ Q တန်ဖိုး index ထုတ်ဖို့ Q table 1, တန်ဖိုး ထုတ်ဖို့ Q table 2 သုံးတာမျိုးပါ။ အခုကျ Online network မှာ index တန်ဖိုး ယူပြီး target network မှာ တန်ဖိုး ထုတ်ယူတယ်ပေါ့။ ဒါပဲကွာတာ။ ကျန်တဲ့ explore startegies ဘာညာတော့ အများကြီး ရှိအုံးမှာပေါ့။
Dueling DDQN => သူကတော့ Neural Net မှာ Q(s,a, theta ) တွက်ရမှာ estimator နှစ်ခု ထည့်သုံးတယ်။ V(S ), A(s,a) ပေါ့။ ဒါက အရင် က သိခဲ့တဲ့ အတိုင်း A(s,a) = Q(s,a) - V(s) ပါပဲ။ Neural Network arch နဲနဲ ပြောင်းယုံပါပဲ။ သူ့မှာလည်း အခြား ပြော
စရာ အများကြီး ကျန်ပါသေးတယ်။
PER applied Dueling DDQN => သူကတော့ Network ထက်စာရင် replay buffer ကို အာရုံပိုစိုက်ထားတယ်။ replay buffer ထဲက uniform random batch တွေ မထုတ်တော့ဘဲ local TD Error တွေကို priorities အနေနဲ့ buffer ထဲထည့် ပြီး ထူးခြားတဲ့ အမှတ်တရ အတွေ့အကြုံတွေကို ခဏခဏ စမ်းသပ်စေတာပေါ့။ ဒါပေမဲ့လည်း အဲ့လိုလုပ်မည့် အစား probabilities တွက် ပြီး ထည့်ရင် ပိုအဆင်ပြေတယ်။ အဲ့ဒါမှ အဆင်မပြေရင် experiences တွေရဲ့ probability of priorities ကို Rank စီပြီး သုံးတယ်။ အဲ့ဒါလည်း bias ရှိသေးရင် weighted တန်ဖိုး ထည့်ပြီး မှ experience ထုတ်ယူတယ်။
ဒါတွေအားလုံးရဲ့ လောလောဆယ် ပြသနာကတော့ hyper parameters တွေကို တော်တော် sensitive ဖြစ်နေတာပါပဲ။
DQN => It adds a Target Network to Neural Fitted Q Iteration to estimate the Q function. It trains that thing as a target. Because of the non-stationary problem, the weights are frozen and fitted. And then, it uses a Replay Buffer to do uniform sampling, inputs it into the Neural Net batch by batch, and trains the Q function. There are still many other things to say, of course.
DDQN => It just adds Q Learning to DQN. The concept is like during MDP, where the Q Table was split into two parts and randomly generated, using Q table 1 to get the Q value index and Q table 2 to get the value. Now, it takes the index value from the Online network and extracts the value from the target network. That is the only difference. There will still be many other things like explore strategies, of course.
Dueling DDQN => It uses two estimators inside the Neural Net to calculate Q(s,a, \theta). Namely, V(S) and A(s,a). This is just like what we knew before, A(s,a) = Q(s,a) - V(s). It is just a slight change in the Neural Network arch. There are still many other things left to say in this one too.
PER applied Dueling DDQN => Rather than the Network, it focuses more on the replay buffer. Instead of extracting uniform random batches from the replay buffer, it puts local TD Errors into the buffer as priorities, making it experiment with unique, memorable experiences over and over again. But instead of doing that, it is better to calculate probabilities and put them in. If that still doesn't work out, it ranks the probability of priorities of the experiences and uses it. If that still has bias, it adds a weighted value before extracting the experience.
The current problem with all of these is that they are quite sensitive to hyper parameters.