- 세상의 모든 계산기 자유(질문) 게시판 일반 ()
이세돌과 알파고의 대결을 2국까지 본 소감
전에 쓴 글 http://www.allcalc.org/13507 에서는 종합예측으로 "인간 챔피언이 컴퓨터 챔피언을 이기는 마지막 경기가 될 것!"이라고 했습니다. 하지만 그마저도 낙관이었던 것일까요? 벌써 2연패중입니다. "패패승승승"이 나올 수 있을까요?
우선... '알파고의 성장이 눈부시다'는 점은 그 누구도 부인할 수가 없겠습니다. 마지막 공식시합이 불과 5개월 전이었는데, (평범한 수준?의) 프로초년생에서 최상급 프로기사보다도 한수 위인 수준까지 올라온 것이라고 봐야합니다.
수를 봐도 어디 하나 약점이 보이지 않습니다. 포석, 형세판단, 사활, 마무리 등 모든 부분에서 완벽해 보입니다. '완벽'이라는 단어를 쓰기에 어딘가 어색해 보이기도 하지만, 그것은 나쁜 수를 두기 때문이 아니라 인간바둑과 다른 수를 두기 때문일 뿐입니다. 바둑 해설자들이 말하기로는 '악수'도 나온다고 하는데, 과연 그것이 악수였을까요? 알파고가 종종 "인간 프로기사가 생각할 수 없는" 수를 날카롭게 두기도 하는데... 그렇게 인간이 생각하지 못하는 여러 날카로운 수들을 스스로 견제하기 위해서 "인간이 보기에는 좋지만 실제로는 악수인 수를 피하고, 대신에 인간이 보기에는 악수이지만 결국엔 최선인 수"를 선택한 것은 아니었을까요?
수의 가치를 0%(자충수)부터 100%(최선의 수)라고 할 때, 프로바둑기사가 80~100%의 수를 두고 그 평균이 90% 정도라고 한다면, 알파고는 90~100%의 수를 두고 그 평균은 95% 수준은 두는 것으로 보입니다. 인간이 첫 수부터 마지막 수까지 완벽한 수를 두지 못하는 이상 이길 방법이 없어 보입니다. 2시간에 초읽기 3회 제한 속에서 첫수부터 마지막 수까지를 완벽한 수로만 둘 수 있는 인간이 있을까요?
아직 3판이 더 남아 있지만... 이미 승부는 결정되어 있는 듯 합니다.
앞으로 지켜 보아야 할 것들.
- 현재의 알파고 시스템을 가정용 PC에 적용시켰을 때의 기력은 어느정도일까?
- 알파고 시스템은 앞으로 어디까지 개선될 수 있을 것인가? (=바둑의 끝은 어디일까? 사람은 거기에서 얼만큼 떨어져 있을까?)
- 알파고가 얼마나 소형화될 수 있을 것인가? (=평범한 개개인이 한달월급 정도를/한달월급의 반 정도를/한달월급의 1/10 정도를 투자해서 현재 대국중인 알파고 시스템 수준을 구현할 수 있는 때는 언제가 될 것인가?)
- 인간 이상의 능력을 가진 바둑선생을 갖게 된 바둑계에는 과연 어떤 지각변동이 있을까?
댓글8
-
세상의모든계산기
과거 알파고 논문에 따르면 https://gogameguru.com/i/2016/03/deepmind-mastering-go.pdf

최적화 싱글 머쉰(40쓰레드, 48CPU, 8GPU)과 Distributed System 과의 ELO 차이가 불과 300 정도에 불과한 것을 알 수 있다.
* 프로기사 ELO
이세돌 사범 3500 후반대,
커제 3600 초반
다른 프로기사 3400~3500 정도이러한 격차가 지금도 유지된다고 하면, 평범한 개인이 최상위프로기사급의 실력을 가진 알파고를 돌릴 수 있는 하드웨어를 가지는 것은 그리 어려운 일이 아닐 것으로 판단된다. 취미생활로 "천만원" 정도를 쓰는 일은 지금도 빈번하니까...
문제는 소프트웨어인데... 과연...
-
세상의모든계산기
다시 보니 Single Machine 이 단순한 Single Machine 이 아닐 수도 있겠습니다.
Single Machine 하나가 48CPUs + 8GPU 로 적혀 있는데, 코어수가 12*4 라는 것인지, 시중에 판매되는 단위로서 CPU 를 말하는 것인지 확실치가 않습니다.
가장 가능성이 높은 것은 "인텔 제온 E5-2690V3(하스웰-EP, 도데카 코어) × 2" 같습니다.
(2 CPU, 24 CORE, 48 Threads) -








세상의모든계산기 님의 최근 댓글
Claude AI 답변 TI-Nspire CAS의 | (such that / 조건대입) 연산자는 대입 시점의 수식 형태를 그대로 두고 기호만 치환하는 연산입니다. 대입 후에 처음부터 다시 "실수부/허수부 분리, 유리화" 같은 재간소화를 자동으로 수행하지 않습니다. 이 차이가 지금 보신 결과 차이의 핵심입니다. 첫 번째 경우 (|er/(e·r)| | con_1 and con → 실패) 이 시점의 식은 아직 r + l·ω·i 형태의 복소수 그대로입니다 (i가 살아있음). 여기에 con_1: ω = √(1-c·r²)/(√c·l)을 대입하면, 분모 안에 i · √(1-c·r²) 라는 항이 새로 생깁니다. 문제는 CAS가 √(1-c·r²)이 실수인지(즉 1-c·r² ≥ 0인지) 판단할 근거가 없다는 겁니다. 저장해 두신 con 조건은 c>0, l>0, r>0뿐이고, 1-c·r²≥0이라는 조건은 포함되어 있지 않습니다. 그래서 CAS는 i와 이 무리식을 더 정리(유리화, 실수부·허수부 재결합)하지 못하고 있는 그대로 남겨둡니다. 결과에 여전히 i가 보이는 이유입니다. 두 번째 경우 (결과값 1/√(r²+l²·ω²)에 대입 → 성공) |er/(e·r)| (절댓값/모듈러스) 연산은 그 자체로 이미 "복소수 → 실수" 변환을 완료한 결과입니다. 즉 1/√(r²+l²·ω²)에는 더 이상 i가 없고, 순수하게 r, l, ω로만 이루어진 실수식입니다. 이 식에 ω = con_1을 대입하는 것은 그냥 실수 대수식에 실수 대입하는 것이므로, i와 무리식이 뒤엉키는 문제 자체가 발생하지 않습니다. 그래서 바로 깔끔하게 √c/√l로 정리됩니다. 정리하면 절댓값(모듈러스) 계산은 "이 값들이 실수다"라는 가정을 이미 내부적으로 써서 i를 제거하는 연산입니다. 그 연산을 조건 대입 이전에 해두면, 이후 대입은 단순 실수 대입이라 문제없이 정리됩니다. 반대로 i가 남아있는 식에 무리식을 포함한 조건을 먼저 대입하면, 그 무리식의 실수성/부호에 대한 가정이 없어서 CAS가 i를 소거하는 재간소화를 못 하고 멈춰버립니다. 실용적 팁: 복소식에 조건을 대입해야 할 때는 가능하면 절댓값·실수화(유리화) 등을 먼저 끝내서 i를 없앤 뒤 조건을 대입하거나, 대입 후 결과에 다시 simplify/expand/combine 같은 명령을 한 번 더 걸어주면 (필요한 도메인 조건과 함께) 정리가 되는 경우가 많습니다. 2026 07.19 저도 어림잡아 추측할 뿐이지 정확한 이유를 알지는 못합니다. 질문하신 사진을 그대로 (Gemini 3.5 Flash / ChatGPT / Claude Sonnet 5) AI에 넣어 보니 claude AI 가 제일 합리적인 답변을 주어서 이를 붙여 넣습니다. 2026 07.19 아 그렇네요. 감사합니다. ^^ 2026 04.28 정적분 구간에 미지수가 있고, solve 를 사용할 수 없을 때 그 값을 확인하려면? https://allcalc.org/57087 `SOLVE` 기능 내에 `∫(적분)` 기호를 사용할 수 없을 때 뉴튼-랩슨법을 직접 사용하는 방법 2026 04.15 뉴턴-랩슨 적분 방정식 시각화 v1.0 body { font-family: 'Pretendard', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; display: flex; flex-direction: column; align-items: center; background: #f8f9fa; padding: 40px 20px; margin: 0; color: #333; } .container { background: white; padding: 40px; border-radius: 20px; box-shadow: 0 15px 35px rgba(0,0,0,0.08); max-width: 900px; width: 100%; } header { border-bottom: 2px solid #f1f3f4; margin-bottom: 30px; padding-bottom: 20px; } h1 { color: #1a73e8; margin: 0 0 10px 0; font-size: 1.8em; } p.subtitle { color: #5f6368; margin: 0; font-size: 1.1em; } .equation-box { background: #f1f3f4; padding: 15px; border-radius: 10px; text-align: center; margin-bottom: 30px; font-size: 1.3em; } canvas { border: 1px solid #e0e0e0; border-radius: 12px; background: #fff; width: 100%; height: auto; display: block; } .controls { margin-top: 30px; display: flex; gap: 15px; align-items: center; justify-content: center; flex-wrap: wrap; } button { padding: 12px 25px; border: none; border-radius: 8px; background: #1a73e8; color: white; cursor: pointer; font-weight: 600; font-size: 1em; transition: all 0.2s; box-shadow: 0 2px 5px rgba(26,115,232,0.3); } button:hover { background: #1557b0; transform: translateY(-1px); box-shadow: 0 4px 8px rgba(26,115,232,0.4); } button:active { transform: translateY(0); } button.secondary { background: #5f6368; box-shadow: 0 2px 5px rgba(0,0,0,0.2); } button.secondary:hover { background: #4a4e52; } .status-badge { background: #e8f0fe; color: #1967d2; padding: 8px 15px; border-radius: 20px; font-weight: bold; font-size: 0.9em; } .explanation { margin-top: 40px; padding: 25px; background: #fff8e1; border-left: 5px solid #ffc107; border-radius: 8px; line-height: 1.8; } .explanation h3 { margin-top: 0; color: #856404; } .math-symbol { font-family: 'Times New Roman', serif; font-style: italic; font-weight: bold; color: #d93025; } .code-snippet { background: #202124; color: #e8eaed; padding: 2px 6px; border-radius: 4px; font-family: monospace; } 📊 Newton-Raphson 적분 방정식 시뮬레이터 미분적분학의 기본 정리(FTC)를 이용한 수치해석 시각화 목표 방정식: ∫₀ᴬ (2√x) dx = 20 을 만족하는 A를 찾아라! 계산 시작 (A 추적) 초기화 현재 반복: 0회 💡 시각적 동작 원리 (Newton-Raphson & FTC) Step 1 (오차 측정): 현재 A까지 쌓인 파란색 면적이 목표치(20)와 얼마나 차이나는지 계산합니다. Step 2 (FTC의 마법): 면적의 변화율(미분)은 그 지점의 그래프 높이 f(A)와 같습니다. Step 3 (보정): 다음 A = 현재 A - (면적 오차 / 현재 높이) 공식을 사용하여 A를 이동시킵니다. 결론: 오차를 현재 높이로 나누면, 오차를 메우기 위해 필요한 가로 길이(ΔA)가 나옵니다. 이 과정을 반복하면 정답에 도달합니다! const canvas = document.getElementById('graphCanvas'); const ctx = canvas.getContext('2d'); const iterText = document.getElementById('iterText'); // 수학 설정 const targetArea = 20; const f = (x) => Math.sqrt(x) * 2; // 피적분 함수 f(x) = 2√x const F = (x) => (4/3) * Math.pow(x, 1.5); // 정적분 결과 F(x) = ∫ 2√x dx = 4/3 * x^(3/2) let A = 1.5; // 초기값 let iteration = 0; let animating = false; // 그래프 드로잉 설정 const scale = 50; const offsetX = 60; const offsetY = 380; function drawGrid() { ctx.strokeStyle = '#f1f3f4'; ctx.lineWidth = 1; ctx.beginPath(); for(let i=0; i 2026 04.11