본문 바로가기

프로그래밍380

유니티5 독학하기 그 95.2번째 걸음-메모리 풀링의 발사체 적용 part3 안녕하세요? 그리 긴 작업이 아니기는 했지만, 그래도 어느정도 하느라 애를 먹었던 작업인 메모리 풀링을 적용해서 발사체-레이져를 발사하는 작업을 이제 마무리 할 때가 왔습니다. 먼저 유니티5의 계층뷰에서 Player 오브젝트를 선택해 보도록 합니다. 그리고 나서 메모리 풀에 얼마나 많은 발사체-여기서는 레이져의 프리펩을 만들어 줄 것이냐를 정합니다. 일단 10으로 저는 정해서 입력을 해 주었습니다. 그런데 문제가 발생했습니다. 어떻게 된 것인지 레이저가 아랬쪽 방향으로 발사가 되는 것을 확인할 수 있었습니다. 그래서 어디가 문제인가 봤더니, 제가 조작을 하면서 쓸데없이 BulletSystem의 회전을 -90 한번 더 시킨 것이였습니다. 그래서 여기는 0으로 만들어 놓았습니다. 이제서야 제가 원하는 방향으.. 2018. 10. 28.
RLtrader의 제작 part6-final! 안녕하세요? 이번 포스팅에서 드디어 RLTrader의 마지막 모듈까지 모두 코딩을 하고서, 그 내용을 포스팅 하고자 합니다. 하지만 이러고도 주식 데이터를 가지고 오는 과정이 남아 있고, 또 이걸 HTS와 연계시키는 것 까지도 상당히 중요한 내용이라면 중요한 내용이 아직 남아 있습니다. 아무튼 그 첫 과정인 RLtrader를 구성하는 4가지 모듈을 다 코딩하는 내용을 보여드리겠습니다. 먼저 위 스크린샷은 지연보상이 발생한 경우에 학습을 수행하는 flt()함수의 부분입니다. 여기서는 148번째 줄에서 학습없이 메모리의 최대 크기만큼이나 batch_size가 찼을 경우에 지연보상을 한다고 하는데, 이 부분은 제가 기계학습에 대해서 아직도 잘 모르는 부분이 많아서 잘은 모르겠습니다. 그리고 158번과 160번.. 2018. 10. 22.
RLtrader의 제작 part2 안녕하세요? 지난번 포스팅에서 RLtrader에서 환경모듈을 만드는 것을 보여주었습니다. 이번 포스팅에서는 에이전트(Agent)모듈이라고 해서 주식을 매수하거나 매도하는 투자자 역할을 하는 모듈을 만들 것인데, 이전에 만들었던 환경 모듈과는 다르게 상당히 길어서 다소 정신이 없을 수도 있습니다. 먼저 import라는 명령어는 다른 모듈을 가져와서, 그 모듈에 있는 함수를 쓸 수 있도록 만들어 줄 수 있습니다. 그리고 이 에이전트 모듈에서는 다음과 같은 속성들이 사용이 됩니다.initial_balance: 초기 투자금, balance: 현금 잔고, num_stocks: 보유 주식수portfolio_value: 포트 폴리오 가치라고 해서, 투자금 잔고+(주식현재가 * 보유 주식수)=포트 폴리오 가치를 나타냅.. 2018. 10. 18.
RLtrader의 제작 part1 안녕하세요? 일단 지난번에는 파이썬을 설치해서 어떻게 무모한 도전의 첫 삽을 떴는데, 이번 포스팅 부터는 진짜로 주식 인공지능의 역할을 하는 RLtrader를 책을 보면서 만드는 과정을 포스팅 하고자 합니다. 그런데 한개의 포스팅에 다 끝내기에는 너무 작업량이 많아서 하는 수 없이 몇 개의 포스팅으로 나누어서 올리고자 합니다. 먼저 해야 되는 작업이 있는데, 활용하고자 하는 trial이라는 가상환경에서 matplotlib이라고 해서 데이터를 시각화 시켜주는 모듈이 설치가 되어 있는지에 대해서 알아봐야 했는데, 아니나 다를까, 이것도 설치가 되어 있지 않았기 때문에 Anaconda Prompt에서 이를 설치해 주도록 합니다. 그리고 나서 위 스크린샷에서 testAI라는 프로젝트 명을 우클릭해서 뜨는 메뉴에.. 2018. 10. 18.