전체 글 142

BAEKJOON 3085 - 사탕 게임

문제: https://www.acmicpc.net/problem/3085 문제Little Ivan is bored at math class so he decided to play popular game called "Bomboni". At the beginning all fields of N×N square board contain candies (not necessarily of same color). When its his turn player should swap two neighbouring (up, down, left or right) candies of different color and then pick some sequence (in row or column) of same color ca..

BAEKJOON 1932 - 숫자삼격형

문제: https://www.acmicpc.net/problem/1932 문제 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 (Figure 1)Figure 1 shows a number triangle. Write a program that calculates the highest sum of numbers passed on a route that starts at the top and ends somewhere on the base.Each step can go either diagonally down to the left or diagonally down to the right.The number of rows in the triangle is ≥ 1 but ≤ 500.The numbers i..

BAEKJOON 1149 - RGB거리

문제: https://www.acmicpc.net/problem/1149 memoization을 이용한 동적 계획법으로 풀 수 있는 문제입니다. 첫 번째 집을 칠할 때는 전에 칠한 집의 색이 없으므로 모든 색을 칠할 수 있기에 rgb 값 0~2이 아닌 3을 넘겨줍니다. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849#pragma warning (disable:4996)#include #include #include #include using namespace std; int cost[1000][3];int cache[1000][4]; int dp(int curHouse, int preColor..

BAEKJOON 1158 - 조세퍼스 문제

문제: https://www.acmicpc.net/problem/1158 유명한 josephus 문제입니다. linked list 을 이용해 풀었습니다. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364#pragma warning (disable:4996)#include #include #include #include #include using namespace std; void josephus(int n, int m){ list survivors; for (int i = 1; i

BAEKJOON 2343 - 기타 레슨

문제: https://www.acmicpc.net/problem/2343 이진 탐색으로 풀 수 있는 문제입니다. 필요한 블루레이의 개수가 m보다 많을 경우 low 를 높여 블루레이의 크기를 크게 만드는 방향으로 탐색을 하고 필요한 블루레이의 개수가 m과 같거나 더 작을 경우 블루레이의 크기를 작게 만드는 방향으로 탐색을 해서 최적의 값을 구하면 됩니다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778#pragma warning (disable:4996)#include #include #inc..

[Reinforcement Learning / learn article] Action-Selection Strategies for Exploration

이번 포스팅은 행동을 선택하기 위한 몇 가지 방법을 소개해주는 포스팅입니다. 그동안 일반적으로 사용했던 e-greedy approach 가 이에 해당됩니다.https://medium.com/emergent-future/simple-reinforcement-learning-with-tensorflow-part-7-action-selection-strategies-for-exploration-d3a97b7cceaf 1. Greedy Approach이 방법은 단순하게 현재 상황에서 가장 나은 행동을 선택하는 것입니다. 단점은 완전히 학습되기 전의 경험을 통해 선택을 하기 때문에 장기적으로 최선이 선택이 아닌 것만 계속 선택을 해서 해당의 행동 이외의 행동은 학습을 할 기회가 없다는 것입니다. 단순하게 np.a..

Deep learning 2017.05.05

[Reinforcement Learning / learn article] Partial Observability and Deep Recurrent Q-Networks

이번 포스팅에서는 Partial Observability 상태에서 Reinforcement Learning 을 하기위해 RNN 을 사용하는 방법입니다.https://medium.com/emergent-future/simple-reinforcement-learning-with-tensorflow-part-6-partial-observability-and-deep-recurrent-q-68463e9aeefc 지금까지의 Reinforcement Learning 포스팅에서는 에이전트가 환경의 모든 정보를 가지고 있었습니다. 쉽게 설명하자면 스타크래프트에서 show me the money 치트를 사용한 것과 같은 환경을 준 것입니다. 이렇게 에이전트에 최선의 행동을 선택하기위해 필요한 모든 정보를 에이전트에서 전..

Deep learning 2017.05.03

[Supervised Learning / review article] Recurrent Neural Networks(RNN), Long Short-Term Memory Units (LSTM)

RNN과 LSTM 을 공부하기 위해 아래의 포스팅을 참고하여 공부했습니다.http://karpathy.github.io/2015/05/21/rnn-effectiveness/ 기존의 CNN과 같은 신경망은 연결된 데이터를 다루기에는 적합하지 않는 딥러닝 방식입니다.연결된 데이터란 예를 들어 I am a boy 와 같은 문장이 있다 할 때, 사실상 세상의 모든 문장을 하나의 input 데이터로 할 수 없기에I, am, a, boy 와 같이 하나 하나의 단어를 input 데이터로 넣어 문장을 파악하려 할 것입니다.이런데 이때 기존의 신경망을 이용할 경우 위 4개의 단어는 그저 각각의 단어로 인식될 뿐 연속적인 데이터에 대한 정보는 이용하지 못할 것입니다.이런 문제를 해결하기 위해 I 다음의 am 이라는 단어를..

Deep learning 2017.04.30

[Reinforcement Learning / learn article] Deep Q-Networks and Beyond

드디어 DQN 포스팅입니다.https://medium.com/@awjuliani/simple-reinforcement-learning-with-tensorflow-part-4-deep-q-networks-and-beyond-8438a3e2b8df DQN 은 Deep Q-Network 의 약자로써 기존의 Q-Network 를 개선하여 DeepMind 팀이 NIPS 2013 과 Nature 2015 에 발표한 내용입니다. Algorithm 1: deep Q-learning with experience replay.Initialize replay memory D to capacity NInitialize action-value function Q with random weights hInitialize tar..

Deep learning 2017.04.17

[Reinforcement Learning / learn article] Model-Based RL (CartPole)

이번에는 Model-Based Reinforcement Learning 에 대한 포스팅입니다.https://medium.com/@awjuliani/simple-reinforcement-learning-with-tensorflow-part-3-model-based-rl-9a6fe0cce99 이 포스팅에서는 Model-Based 라는 새로운 개념이 소개됩니다. 여기서 말하는 모델이란 실제 환경의 dynamics 을 배운 신경망을 의미합니다. 이렇게 만들어진 모델은 실제 환경 대신에 에이전트에게 환경과 행동에 따른 결과 정보를 제공하여 에이전트가 학습될 수 있게 합니다. 사실 gym 에서 제공하는 게임의 경우 실제 환경을 쉽게 이용할 수 있지만 실제 환경을 이용하기 힘든 상황에서는 이 방법이 유용할 수 있을 ..

Deep learning 2017.04.10