AHP 의사결정 지원 플랫폼 개발기: React와 Django로 구현하는 계층적 분석 프로세스
Published:
프로젝트 배경
박사과정 연구의 일환으로 AHP(Analytic Hierarchy Process) 기반 의사결정 지원 시스템을 개발하게 되었습니다. 이 프로젝트는 복잡한 의사결정 문제를 체계적으로 분석하고 해결하는 웹 플랫폼입니다.
AHP란?
AHP는 Thomas Saaty가 개발한 다기준 의사결정 방법론으로, 복잡한 문제를 계층적으로 구조화하여 분석합니다. 이를 웹 애플리케이션으로 구현하여 누구나 쉽게 사용할 수 있도록 했습니다.
기술 스택 선정
프로젝트에서 사용한 주요 기술 스택은 다음과 같습니다:
프론트엔드:
- React 18
- TypeScript
- Material-UI
- Redux Toolkit
- Chart.js (시각화)
백엔드:
- Django 4.2
- Django REST Framework
- PostgreSQL
- Redis (캐싱)
- Celery (비동기 처리)
주요 구현 기능
- 계층 구조 설계 인터페이스
- 드래그 앤 드롭으로 계층 구조 생성
- 실시간 유효성 검증
- 동적 요소 추가/삭제
- 쌍대비교 매트릭스
- 직관적인 슬라이더 UI
- 일관성 비율(CR) 실시간 계산
- 자동 역수 계산
- 가중치 계산 엔진
- 고유벡터 방법 구현
- 기하평균 방법 지원
- 민감도 분석 기능
- 결과 시각화
- 대시보드 형태의 종합 결과
- 대안별 점수 차트
- 가중치 분포 그래프
개발 과정의 도전과 해결
도전 1: 복잡한 행렬 연산의 성능 최적화
- NumPy를 활용한 벡터화 연산
- 메모이제이션 패턴 적용
- Web Worker를 통한 백그라운드 처리
도전 2: 실시간 협업 기능
- WebSocket을 통한 실시간 동기화
- Operational Transformation 알고리즘 적용
- 충돌 해결 메커니즘 구현
도전 3: 대용량 데이터 처리
- 페이지네이션과 가상 스크롤링
- 레이지 로딩 구현
- 데이터베이스 쿼리 최적화
성과와 향후 계획
이 플랫폼은 현재 연구 목적으로 활용되고 있으며, 다음과 같은 성과를 달성했습니다:
- 10개 이상의 연구 프로젝트에서 활용
- 평균 의사결정 시간 40% 단축
- 사용자 만족도 4.5/5.0
향후 계획:
- AI 기반 가중치 추천 시스템
- 모바일 앱 개발
- 국제화(i18n) 지원
- 오픈소스 공개 준비
배운 점
이 프로젝트를 통해 단순한 기술 구현을 넘어 실제 사용자의 니즈를 충족시키는 솔루션 개발의 중요성을 깨달았습니다. 또한 학술 연구와 실무 개발의 시너지를 경험할 수 있었습니다.
프로젝트 GitHub: https://github.com/aebonlee/ahp-platform
관련 문의나 협업 제안은 언제든 환영합니다.
