본문 바로가기

728x90
반응형

분류 전체보기

(1) Ubuntu 20.04 설치 (NVIDIA driver, ROS, conda) 매일 ubuntu를 밀기 때문에 작성한다. 1. 볼륨 축소 디스크 관리에 들어가서, 원하는 볼륨을 우클릭 후 볼륨 삭제를 누른다. 검정 공간(free space). 2. USB에 ubuntu 받기 (1) 우분투 디스크 이미지 받기 https://releases.ubuntu.com/20.04/ : 이 링크에서 ubuntu-20.04.6-desktop-amd64.iso를 설치한다. (2) rufus 설치 https://rufus.ie/ko/ : 업데이트 정책은 '아니요' 누르고 실행, 장치 선택, 파티션 방식 GPT, 대상 시스템 UEFI, 파일 시스템과 클러스터 크기는 (기본)으로 한 다음 시작을 누른다. 끝나면 마침을 누른다. 참고로 USB의 내용물은 싹 다 지워지고, ubuntu 20.04가 깔릴 것이.. 더보기
ROS(4) Turtlebot machine learning(DQN) https://emanual.robotis.com/docs/en/platform/turtlebot3/machine_learning/#set-state 0. 초기 세팅 robotic emanual의 melodic, machine learning tutorial을 따라서 필요한 세팅을 완료한다. 1. first terminal if we have error ---------> cuda 12.1 install --------> pip3 install torch torchvision torchaudio ----------> sudo apt install python3-pip --------> sb ----------> catkin_make -----------> roslaunch turtlebot3_gazebo.. 더보기
ROS(3) simple driving code 보호되어 있는 글입니다. 더보기
강화학습(8) GAIL 실행하기 (LINUX) 출처 링크 : https://github.com/hcnoh/gail-pytorch 1. Install dependencies (2023.07 ver) (1) Python3을 설치한다. (2) requirements.txt 안에 Python package를 설치한다. -> requirements.txt가 없는 경우, 아래의 코드 두 줄을 각각 입력한다. pip freeze > requirements.txt pip install -r requirements.txt (3) OpenAI Gym 환경을 실행하기 위해 다른 패키지들을 설치한다. python -m pip install jupyter --user pip install gym==0.21 cd .local/lib/python3.8/site-packages.. 더보기
강화학습(5) PPO, DDPG, TD3, and so on.. DQN(2013) -> A2C, A3C(2016) -> DDPG(2015) -> PPO(2017) -> TD3, SAC(2018) 순서. 1. PPO (1) TRPO (on-policy 알고리즘) 주어진 데이터를 가지고 현재 policy를 최대한 큰 step만큼 빠르게 향상시키면서도, 너무 큰 step으로 업데이트하는 것을 억제하고자 한다. 아래는 PPO과 TRPO의 최적화식이다. TRPO에서는 전자 항을 최대화하면서 후자 항을 최소화하는 것을 목표로 한다. [1] 목적식을 통해 policy의 improvement step을 최대화한다. [2] 이와 동시에 KL divergence를 통해 기존 정책과 새 정책 간의 거리를 제한한다. step size가 많다고 해서 무작정 좋은 것이 아니다. TRPO는 성.. 더보기
강화학습(4) Actor-critic, A2C, A3C, SAC DQN(2013) -> DDPG(2015) -> A2C, A3C(2016) -> PPO(2017) -> TD3, SAC(2018) 순서. 1. Actor-Critic (1) Actor-Critic, A2C Acotr 네트워크, Critic 네트워크. 2개의 네트워크를 이용한다. Actor는 상태가 주어졌을 때 행동을 결정하고, Critic은 상태의 가치를 평가한다. 행동과 가치를 분리한다는 점에서 Dueling DQN과 유사하지만, Actor-critic은 마지막에 값을 합치지 않는다. 물론 Actor-critic은 replay buffer를 사용하지 않는다. Actor-critic은 입력을 해석하는 파라미터(decoder)를 공유하느냐 그렇지 않느냐에 따라 2가지로 나뉜다. 그리고 Actor-criti.. 더보기
강화학습(3) 코드 실습 : Q-learning, DQN 1. Q-learning in grid world 파이참의 가상 환경에서 실행한다. 새로운 프로젝트를 생성하여 'pip install numpy', 'pip install padas', 'pip install matplotlib'을 터미널 창에 입력한 후 설치를 완료한다. Run시키면 아래 코드가 수행된다. (1) 코드 설명 코드를 간단히 설명하겠다. 1차원으로 총 20개의 상태를 가지는 20x1 그리드 월드에서 에이전트는 'left' 혹은 'right', 2가지 행동을 취할 수 있다. 목표는 최적의 행동을 학습하여 'T'라는 종료 상태에 도달하는 것이다. 종료 상태에 도달하면, 다시 처음으로 돌아가 최적의 행동을 학습한다. 이러한 시행착오를 200번 겪은 후 코드는 종료된다. 전체 루프를 200번 반복.. 더보기
강화학습(2) DQN, Double DQN, Deuling DQN DQN(2013) -> A2C, A3C(2016) -> DDPG(2015) -> PPO(2017) -> TD3, SAC(2018) 순서. 1. DQN (1) Deep Q-Learning 기존의 Q-learning은 state-action(s,a)에 해당하는 Q값을 테이블 형식으로 저장하여 학습한다. 상태 공간, 행동 공간이 커지게 되면 모든 Q값을 저장하기 어려워진다. (메모리 문제, 긴 탐험 시간 문제). Deep Q-Learning은 이를 딥러닝으로 해결한 알고리즘이다. Q-table에 해당하는 Q함수를 비선형 함수로 근사시키며, Q함수의 가중치 파라미터들을 θ로 표시하였다. 1. 파라미터를 초기화, 매 스텝마다 2~5를 반복한다. 2. Action at를 e-greedy 방식에 따라 선택한다. 3... 더보기

728x90
반응형