Main Content

이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

rlQAgentOptions

Q-러닝 에이전트에 대한 옵션

설명

rlQAgentOptions 객체를 사용하여 Q-러닝 에이전트를 만들 때 사용할 옵션을 지정합니다. Q-러닝 에이전트를 만들려면 rlQAgent를 사용하십시오.

Q-러닝 에이전트에 대한 자세한 내용은 Q-러닝 에이전트 항목을 참조하십시오.

다양한 유형의 강화 학습 에이전트에 대한 자세한 내용은 강화 학습 에이전트 항목을 참조하십시오.

생성

설명

opt = rlQAgentOptions는 전부 디폴트 설정을 사용하여 Q-러닝 에이전트를 만들 때 인수로 사용할 rlQAgentOptions 객체를 만듭니다. 점 표기법을 사용하여 객체 속성을 수정할 수 있습니다.

opt = rlQAgentOptions(Name=Value)는 옵션 세트 opt를 만들고 하나 이상의 이름-값 인수를 사용하여 이 옵션 세트의 속성을 설정합니다. 예를 들어, rlQAgentOptions(DiscountFactor=0.95)는 감가 인자 0.95를 사용하여 옵션 세트를 만듭니다. 여러 개의 이름-값 인수를 지정할 수 있습니다.

속성

모두 확장

엡실론-그리디 탐색에 대한 옵션으로, 다음 속성을 갖는 EpsilonGreedyExploration 객체로 지정됩니다.

속성설명디폴트 값
Epsilon행동을 무작위로 선택하거나 상태-행동 가치 함수를 최대화하는 행동을 선택하기 위한 확률 임계값입니다. Epsilon 값이 더 크다는 것은 에이전트가 더 높은 비율로 행동 공간을 무작위로 탐색한다는 의미입니다.1
EpsilonMinEpsilon의 최솟값0.01
EpsilonDecay감쇠율0.0050

각 훈련 시간 스텝 종료 시 EpsilonEpsilonMin보다 크면 다음 식을 사용하여 업데이트됩니다.

Epsilon = Epsilon*(1-EpsilonDecay)

Epsilon은 한 에피소드의 끝과 다음 에피소드의 시작 사이에 보존됩니다. 따라서 EpsilonMin에 도달할 때까지 여러 에피소드에 걸쳐 계속 균일하게 감소합니다.

에이전트가 국소 최적해에 너무 빠르게 수렴할 경우 Epsilon을 늘려서 에이전트 탐색을 촉진할 수 있습니다.

탐색 옵션을 지정하려면 rlQAgentOptions 객체 opt를 만든 후에 점 표기법을 사용하십시오. 예를 들어, 엡실론 값을 0.9로 설정합니다.

opt.EpsilonGreedyExploration.Epsilon = 0.9;

크리틱 최적화 함수 옵션으로, rlOptimizerOptions 객체로 지정됩니다. 이 옵션을 사용하면 학습률, 기울기 임계값뿐 아니라 최적화 함수 알고리즘과 그 파라미터 같은 크리틱 근사기의 훈련 파라미터를 지정할 수 있습니다. 자세한 내용은 rlOptimizerOptions 항목과 rlOptimizer 항목을 참조하십시오.

예: CriticOptimizerOptions = rlOptimizerOptions(LearnRate=5e-3)

에이전트의 샘플 시간으로, 양의 스칼라 또는 -1로 지정됩니다. 이 파라미터를 -1로 설정하면 이벤트 기반 시뮬레이션을 실행할 수 있습니다.

Simulink® 환경에서는 에이전트가 시뮬레이션 시간의 매 SampleTime초마다 실행되도록 지정된 RL Agent 블록입니다. SampleTime-1이면 이 블록은 부모 서브시스템에서 샘플 시간을 상속합니다.

MATLAB® 환경에서는 환경이 진행될 때마다 에이전트가 실행됩니다. 이 경우 SampleTimesim 또는 train에 의해 반환되는 출력 경험의 연속된 요소 사이의 시간 간격입니다. SampleTime-1인 경우 반환되는 출력 경험의 연속된 요소 사이의 시간 간격은 에이전트 실행을 트리거하는 이벤트의 발생 시점을 반영합니다.

예: SampleTime=-1

훈련 중에 미래 보상에 적용할 감가 인자로, 1보다 작거나 같은 양의 스칼라로 지정됩니다.

예: DiscountFactor=0.9

객체 함수

rlQAgentQ-러닝 강화 학습 에이전트

예제

모두 축소

에이전트 샘플 시간을 지정하는 rlQAgentOptions 객체를 만듭니다.

opt = rlQAgentOptions(SampleTime=0.5)
opt = 
  rlQAgentOptions with properties:

                  SampleTime: 0.5000
              DiscountFactor: 0.9900
    EpsilonGreedyExploration: [1x1 rl.option.EpsilonGreedyExploration]
      CriticOptimizerOptions: [1x1 rl.option.rlOptimizerOptions]
                  InfoToSave: [1x1 struct]

점 표기법을 사용하여 옵션을 수정할 수 있습니다. 예를 들어, 에이전트 감가 인자를 0.95로 설정합니다.

opt.DiscountFactor = 0.95;

버전 내역

R2019a에 개발됨