🧠 매일매일 두뇌 학당 (Daily Brain School)
💡 1. Inspiration (영감을 받은 것)
급격한 고령화 사회로 접어들면서 노년층의 인지 기능 감퇴와 치매(Dementia) 예방은 전 세계적인 사회적 과제가 되었습니다. 의학 연구에 따르면 단순 사칙연산, 순간 공간 지각 훈련, 시각 정보 간섭 억제 훈련은 대뇌 전두엽 피질의 산소 공급량과 혈류량을 향상시키는 데 극적인 효과가 있음이 증명되었습니다.
하지만 기존에 출시된 디지털 헬스케어 앱들은 작은 폰트, 복잡한 UI, 기계적이고 차가운 피드백으로 인해 스마트 기기가 낯선 실제 어르신들이 사용하기에 큰 장벽이 존재했습니다.
이에 저희는 닌텐도의 전설적인 명작인 '두뇌 트레이닝(Dr. Kawashima's Brain Training)' 시리즈에서 영감을 얻었습니다. 어르신들을 위한 가독성 극대화 UI/UX를 설계하고, 세계 최고 수준의 생성형 AI인 구글 Gemini 3.5 Flash를 도입하여 실시간으로 1:1 맞춤 조언과 치매 예방 지침을 정성껏 제공하는 온-오프 하이브리드 인지 강화 비서 서비스인 '매일매일 두뇌 학당'을 개발하게 되었습니다.
🎮 2. What it does (주요 기능)
1) 6대 전두엽 자극 트레이닝
- 계산 트레이닝 20: 연산 능력을 극대화하여 뇌 가사 상태를 격퇴하고 뉴런 활성화.
- 색상 스트룹 제어: 글자의 의미와 잉크 색상의 시각 충돌을 억제하여 뇌 자제력과 주의 집중력 강화.
- 순간 공간 순서터치: 찰나에 가려지는 숫자의 위치를 기억하여 단기 저장판(Working Memory) 용량 확장.
- 카드 매칭 암기력: 대칭 카드를 식별하여 시각 장기기억 보강.
- 순간 개수 직관세기: 무작위 사물의 개수를 어림잡아 판단하는 우뇌 직관력 단련.
- 연산 기호 맞추기: 완성된 사칙 수식의 올바른 기호($+$, $-$)를 메워 넣는 연산 추리 훈련.
📊 2) 종합 두뇌 연령 평가 진단 공식 ($\text{\LaTeX}$)
사용자가 핵심 3대 검사(계산, 스트룹, 순서 기억)를 수행하면, 밀리초 단위의 반응 민첩도와 정답 정확도를 채점하여 Estimated 두뇌 연령을 진단합니다. 수학적 채점 수학식 모델은 다음과 같이 구현되었습니다:
각 영역별 100점 만점 성적을 $S_{\text{Math}}$ (수리 계산 점수), $S_{\text{Stroop}}$ (색상 스트룹 점수), $S_{\text{Seq}}$ (순간 기억 점수)라고 정의합니다:
$$ S_{\text{Math}}, S_{\text{Stroop}}, S_{\text{Seq}} \in [0, 100] $$
세 영역의 평균 점수 $\bar{S}$는 다음과 같이 산출됩니다:
$$ \bar{S} = \frac{S_{\text{Math}} + S_{\text{Stroop}} + S_{\text{Seq}}}{3} $$
이를 바탕으로 최종 두뇌 진단 연령 $A_{\text{brain}}$을 결정하는 비선형 클리핑 공식은 다음과 같이 수립되어 20세 청년 두뇌부터 80세 노령 두뇌까지의 척도를 실시간으로 보정합니다:
$$ A_{\text{brain}} = \max\left(20, \min\left(80, \text{round}\left(80 - \frac{\bar{S}}{100} \times 60\right)\right)\right) $$
🩺 3) Gemini 3.5 Flash 기반의 실시간 1:1 두뇌 처방
- 안전하게 격리된 Express 백엔드 프록시를 통해 채점 결과를 구글 Gemini 3.5 Flash 인프라에 전달합니다.
- Gemini의 정밀한 JSON Schema 설정을 바탕으로, 어르신이 거실에서 즉시 실천할 수 있는 '하루 3대 생활 행동 지침'과 뇌 기능 향상에 안전한 '두뇌 활성 보양 식단' 피드백을 맞춤 생성합니다.
- 오프라인 연동 보증장치: 네트워크 단절 시에도 에러 메시지를 띄우는 대신, 앱에 내장된 고품질 클라이언트 사이드 임베디드 로컬 폴백 시스템이 매끄럽게 대체 동작하여 안전한 작동을 보장합니다.
🛠️ 3. How we built it (프로젝트 구축 과정)
- 프론트엔드 아키텍처: React 19, TypeScript 5.8, Tailwind CSS, Motion (최고급 프레임 모션 및 유연한 애니메이션 인터랙션 적용)
- 하이브리드 모바일 컴파일: Capacitor 6.2를 통해 SPA 정적 리소스를 독립 구동형 안드로이드 APK 파일로 완전 포팅 및 래핑
- 백엔드 보안 서버: Node.js, Express, TypeScript,
@google/genai(API 키 탈취 및 노출을 완벽하게 방지하기 위한 서버사이드 Gemini 프록시 구축) - 네이티브 빌드 파이프라인: 로컬 안드로이드 스튜디오의 내장 OpenJDK 21 및 Android SDK 빌드 도구를 터미널 환경 변수로 즉시 매핑하고 Gradle 컴파일러(
gradlew assembleDebug)를 구동해 단독 설치용app-debug.apk를 빌드. ADB 원격 디바이스 통신을 가동해 연결된 실기기 태블릿 디바이스(2의 Tab A11+)로 무정지 어셈블 설치 및 자동 실행 완수.
🚀 4. Challenges we ran into (직면했던 어려움)
- 모바일 웹뷰 환경에서의 relative API 주소 바인딩 해결: Capacitor 모바일 패키징 상태에서는 relative 경로(
/api/...)로 Fetch 시 웹뷰 내부 가상 도메인으로 수렴해 통신이 차단됩니다. 이를 우회하기 위해App.tsx내에 네트워크 프로토콜 분석기를 삽입하여 브라우저 환경에서는 상대 경로를 유지하고, 모바일 환경에서는 호스트 PC의 Wi-Fi IP 대역(http://192.168.0.30:3000)으로 동적 타겟팅 분기 처리를 구현해 극복했습니다. - 안드로이드 HTTP Cleartext 제한 해제: 안드로이드 9.0 이상에서 기본적으로 로컬 개발망에 쓰이는 HTTP 통신을 거부하는 보안 정책이 존재했습니다. 프로젝트 내
AndroidManifest.xml내부<application>태그에android:usesCleartextTraffic="true"설정을 안전하게 주입해 원격 로컬 연동 망을 개방시켰습니다. - 운영체제 세션 0(Session 0) 격리 차단막 극복: 백그라운드 AI 에이전트 빌드 툴체인이 그래픽 인터페이스에 접근하는 것을 제한하는 윈도우 OS의 세션 격리 문제와 크롬 브라우저의 소유권 락(ProcessSingleton Lock) 이슈를 마주했으나, 프로세스 소유권 분리와 환경 변수 우회 바인딩 기법을 도입하여 완벽하게 컴파일을 성사시켰습니다.
📚 5. What we learned (배운 것)
- 실버 헬스케어 영역과 같이 민감한 도메인에서는 법률적 의료행위 위반 소지("치료", "처방전", "환자" 등 의학 용어)를 원천 차단하기 위한 엄격한 부정형 예외 제약 조건 설정과 Gemini JSON 구조 스키마 엔지니어링이 얼마나 핵심적인지 깨달았습니다.
- 웹 기반 단일 페이지 어플리케이션(SPA)이 모바일 네이티브 기기와 유기적으로 맞물리는 하이브리드 포팅의 전주기 라이프사이클을 완벽하게 숙달하게 되었습니다.
🔮 6. What's next for 매일매일 두뇌 학당 (향후 발전 계획)
- 음성 솔루션 도입 (Voice-to-Task UI): 손가락 터치나 타이핑이 서투신 초고령층 어르신들을 위해 목소리로만 수치 계산을 바로 맞출 수 있는 가벼운 마이크 음성 입력 모듈 개발 예정.
- 네이티브 TTS (Text-To-Speech) 통합: 안드로이드 네이티브 낭독 엔진과 Capacitor 브릿지를 연동하여, Gemini 박사가 작성해 낸 1:1 두뇌 보양 식단과 따뜻한 생활 행동 조침을 라디오처럼 웅장하고 친숙한 우리말 음성으로 직접 어르신에게 낭독해 드리는 감성 보이스 테크 탑재 목표.
Built With
- android
- capacitor
- express.js
- gemini-api
- gradle
- motion
- node.js
- react
- tailwindcss
- typescript
- web-audio-api
Log in or sign up for Devpost to join the conversation.