- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 교수님. C++ 문법 공부 이후에 프로그램을 만들어보고 싶은데요 제가 '업무 자동화 프로그램'을 만들어보고 싶은데, 이를 하려면 무엇을 공부해야 할까요? 제가 찾아본 것은 winapi, MFC 등을 공부해보라는 것을 찾았는데, 이 내용이 좀 그동안 봤던 코드들이랑 너무 이질적이라 제가 접근하기에 어렵더라구요. 이 방법에 대해 교수님께서 좀 알려주시면 정말 감사할 것 같습니다! 또 좋은 책이나 참고자료가 있다면 알려주시면 감사합니다
안녕하세요 강사님 좋은 강의 감사드립니다. 강의의 코드를 따라하며 실습을 하고 있는데 job이 실패했을 경우에만 재시작이 가능하고 completed로 정상적으로 종료되었을 경우에는 재실행이 안된다는 것을 숙지하고 있습니다.(파라미터 없거나 동일할 경우) 근데 현재 flow 관련 실습을 하다보니 job 실행 시 아무런 파라미터도 주지 않고 Job이 completed로 정상적으로 끝났음에도 불구하고 Job이 재실행되는 경우가 있는데 이는 어떤 이유 때문인지 알려주실 수 있을까요? step 내부에서 contribution을 통해 extiStatus를 FAILED로 설정한 것 때문인지, 이외에도 다른 이유가 있는지 궁금합니다. 확인해주시고 답변 주시면 많은 도움이 될 것 같습니다. 감사합니다.
정답 부분에서 김길동 1 부분이 이해가 가지 않아 질문드립니다. '김길동 2' 가 답인줄 알았는데.. 왜 인구 2인데 김길동 2 가 아닌지 궁금합니다.. person_count++와 age++는 하나의 단락안에 있어 인구 2면 김길동 2/ 인구 1이면 김길동 1로 되어야 하는 거 아닌가요?
안녕하셔요. 강좌 잘 보고 있습니다. 문의드릴 내용은 Vue3 Pinia state 값을 Composable API를 사용 할때 초기화를 해야 되는지 궁금해서 문의 드림니다. 인터넷을 찾아보니 $reset 함수를 사용해서 공통 Plugin에 등록하고 난 후, 호출하는 페이지에서 reset 함수를 호출하면 된다고 합니다. 제 짧은 생각에는 pinia store 호출하는 함수(actions)에서 state값을 초기화를 하고 사용하면 될 것 같아 보이는데.. 공통으로 만들어서 제공을 해야 하는지 궁금합니다. 예제 소스) [main.js] ... const pinia = createPinia(); pinia.use(({ store }) => { const initialState = cloneDeep(store.$state); store.$reset = () => store.$patch(cloneDeep(initialState)); }); .... [호출 페이지] .... onBeforeUnmount(() => { store.$reset(); }); ...
InActionState 플레이어의 입력을 받게 하려고 했는데 private PlayerInputEnum[] playerinput; 이렇게 변수를 만들고 playerinput = Entity.Owner.PlayerEntityInput.playerInputList; 이거를 통해서 가져오려고 했는데 이걸 Setup에 넣으면 스테이트 머신이 고장나면서 버그가 발생하고 KeyNotFoundException: The given key '0' was not present in the dictionary. System.Collections.Generic.Dictionary`2[TKey,TValue].get_Item (TKey key) (at <834b2ded5dad441e8c7a4287897d63c7>:0) StateMachine`1[EntityType].GetCurrentState (System.Int32 layer) (at Assets/Scripts/Core/StateMachine/StateMachine.cs:360) StateMachine`1[EntityType].GetCurrentStateType (System.Int32 layer) (at Assets/Scripts/Core/StateMachine/StateMachine.cs:363) Skill.GetCurrentStateType (System.Int32 layer) (at Assets/Scripts/Core/Skill/Skill.cs:600) Test.SkillTest.OnGUI () (at Assets/Scripts/Test/Skill/SkillTest.cs:53) UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr, Boolean&) Enter에 넣어야 멀쩡히 작동을해서 질문을 드립니다. 다른 변수로 테스트를 해보아도 배열 형태의 변수만 버그가 발생하는것 같아 질문을 드립니다.
안녕하세요 만들었던 예제를 살펴보는 와중에 section1, section4에서 약간의 문제(?)가 발생하여 질문드립니다. section1에서 스크롤을 올려버리면 다시 스크롤을 아래로 내려도 반응이 없고 아예 먹통이 되어버립니다 section4에서는 스크롤을 아래로 내리면 먹통이 됩니다 혼자 해결해보려고 했으나 감이 오질않아서.. 어떻게 코드를 수정하면 좋을지 질문드립니다!
안녕하세요 바로빌 개발자센터입니다. 저희는 표준전자인증기관 바로빌의 API 서비스를 제공합니다. 해당 서비스 잠재고객인 개발자 여러분들의 다양한 의견을 수렴하기 위해 아래와 같이 설문을 진행하고자 합니다. 설문 진행을 통해 귀중한 여러분의 의견을 서비스 제작에 반영할 예정이오니 많은 관심과 참여 부탁드립니다! 소요시간 : 약 1-3분 이내 설문 링크 : https://forms.gle/eKL4FxWdnJaaajfC8 사이트 참고 : 바로빌 개발자센터 | 비즈니스 데이터 API 연동, 전자세금계산서 구축 (barobill.co.kr) 기프티콘은 총 20분께 11월 4일 전달 예정입니다. 개인정보는 해당 설문 기간이 지나면 안전하게 파기됩니다! 소중한 시간 내 주셔서 다시 한 번 감사의 말씀 드리며, 오늘도 좋은하루 보내세요. 감사합니다.
일급함수 - 기본 특징(1-2) 예제 중, print(list(map(var_func, range(1,11)))) 이런 예제가 있는데요 print([map(var_func, range(1,11))]) 이렇게 list로 만들어 출력하려고 하면 map object at 0x~~~ 이런 식으로 나오게 됩니다. 해당 구문은 왜 list변환이 안되는 건가요?
map = "4x4" SLIPPERY = False # 결정론적 환경 #SLIPPERY = True # 확률적 환경 # FrozenLake-v1 환경을 생성합니다. # desc: None이면 기본 맵을 사용합니다. # map_name: 사용할 맵의 이름을 지정합니다. # is_slippery: True이면 미끄러운 표면(확률적 환경)을 사용하고, False이면 결정론적 환경을 사용합니다. env = gym.make('FrozenLake-v1', desc=None, map_name=map, is_slippery = SLIPPERY) GAMMA = 0.9 THETA = 1e-7 num_states = env.observation_space.n num_actions = env.action_space.n transitions = env.P # 1. 모든 s에 대해 V(s) = 0과 임의의 pi(s)를 초기화 V = np.zeros(num_states) pi = np.ones([num_states, num_actions]) * 0.25 policy_stable = False # 정책이 안정적인지 여부를 나타내는 변수 while not policy_stable: #2. 정책 평가 while True: # delta 초기화 : delta <- 0 delta = 0 #각 s에 대해 반복 for s in range(num_states): # 업데이트 규칙: V(s) = sum(pi(a|s)*sum(p(s,a)*[r + gamma*v(s')])) for a, prob_a in enumerate(pi[s]): # s', r에 대해 합산 (각 행동 a에 대한 상태 전이 확률을 반영한 보상 합산) old_value = V[s] new_value = 0 for prob, s_, r, _ in transitions[s][a]: new_value += prob_a * prob * (r + GAMMA * V[s_]) V[s] = new_value # delta 갱신: delta <-- max(delta|v - V(s)|) delta = max(delta, np.abs(old_value - V[s])) # delta가 THETA보다 작으면 정책 평가 종료 if delta < THETA: break #3. 정책 개선 #policy_stable <- true old_pi = copy.deepcopy(pi) #각 s에 대해: for s in range(num_states): # pi_s <- argmax_a(sum(p(s',r|s,a)*[r + gamma*V(s')])) # 새로운 행동 가치 초기화 new_action_values = np.zeros(num_actions) for a in range(num_actions): # 각 행동 a에 대해 상태 전이 확률과 보상을 반영한 가치 합산 for prob, s_, r, _ in transitions[s][a]: new_action_values[a] += prob * (r + GAMMA * V[s_]) # 새로운 정책 결정: 가치가 최대가 되는 행동 선택 new_action = np.argmax(new_action_values) pi[s] = np.eye(num_actions)[new_action] if np.array_equal(old_pi, pi): policy_stable = True else: policy_stable = False # 이전 정책과 새로운 정책이 동일한지 확인하여 정책 안정성 판단 위의 과정의 정책 평가와 정책 개선 과정을 반복하다보면, 정책과 가치함수가 수렴하게 됩니다. 이 때 3번 정책 개선 과정을 잘 이해한 것인지 궁금합니다. 1. 초기 정책은 0,1,2,3번 행동에 대해 모두 0.25 확률이 부여되어 있었습니다. 2. 단 한번의 정책 개선이 발생해도, 특정 행동의 확률만 1이 되고 나머지가 0이 됩니다. 3. 정책 평가와 정책 개선이 반복되더라도, 특정 행동의 확률이 1이고 나머지 행동이 0인 것은 모든 STATE에서 동일합니다. 다만 확률이 1이되는 행동이 바뀔 뿐입니다. 4. 이전 정책과 현재 정책이 모두 일치하면, 정책 개선은 종료됩니다. 즉, STOCHASTIC한 정책이 단 한 번의 정책 개선으로 DETERMINISTIC하게 변화하고, 이를 정책 평가와 정책 개선의 반복으로 특정한 가치함수와, 정책으로 수렴하게 된다, 라고 이해한 것이 옳은 것인가요?
강의를 듣다 궁금한게 생겼습니다. 보통 API 개발을 할 때, 컨트롤러단 부터 완성이 되고 나머지 서비스나 영속성 계층 로직이 완성 되는것 같은데 테스트 코드 순서를 어떻게 가져가시나요 ? 강의에서는 영속성 -> 서비스 -> 컨트롤러 순으로 테스트가 진행 되는데 이 순서대로 하시나요 ?