코드가 웬만큼 안정화된 것 같으니 필요하신 분이 있을까 해서 올립니다.
Ruby로 짰고, simulated annealing을 통한 최적화 코드도 있습니다.
새로운 레이아웃은 ./layouts에 있는 것들을 참고하시면 쉬울 거구요, 분석할 파일은 ./texts에 넣고 적절히 수정하면 됩니다.
사용한 파라미터들은 ./parameters.rb에 있습니다.
제가 프로그래밍을 잘 하는 게 아니라 발로 짠 부분이 분명 있을 텐데, 혹시 수정하셔서 쓰실 분들은 개선 사항 말씀해 주시면 좋겠습니다.
특히 속도를 어떻게 좀 하고 싶은데요... ./texts/novels.txt 파일이 330만 자모 정도가 되는데, 분석하는 데 제 컴퓨터로는 25초 정도 걸립니다. C로 짰어야 하나 싶기도 하네요.
hangul_analysis.zip
지난 번 올린 글에서 수정한 사항:
base effort 측정 bug fix
윗글쇠도 타수에 포함
stroke effort의 경우, 왼손-오른손-왼손과 같이 중간에 다른 손이 들어가면 부담을 절반으로 경감
stroke effort에서, 같은 손가락을 쓸 때의 부담은 연타<회전<손가락 펴고 구부리기 순으로 재조정
parameter 재조정
p. s. 혹시나 해서 첨언합니다. 이것은 절대적인 피로도의 수치가 아니며, 오히려 상대적이라 할 수 있습니다. 예를 들어 이 분석을 통해 "세벌식이 두벌식보다 6.9% 덜 피로하다"고 말할 수는 없습니다. 다만 "두벌식에서 3-91로의 향상에 비해 두벌식에서 3-2014로의 향상이 26% 더 크다"고는 말할 수 있습니다.
첫댓글 공개해주셔서 정말 감사합니다 ^^ 소인배 님께서 하시는 일마다 다 잘 되시길 바랍니다 ^^
사용법을 알아보니, https://www.ruby-lang.org/ko/documentation/installation/#rubyinstaller 에서 루비를 받아서 설치한 후, main.rb 를 실행하니까 분석에 시간이 오래 걸리긴 해도 한 줄 한 줄 분석 결과가 나오는군요, 좋은 풀그림을 짜주셔서 감사합니다! 추가하고픈 레이아웃은 main.rb 파일을 수정하고 레이아웃 파일을 추가하니 분석이 되는군요.
유니코드로 들어간 한글을 바로 분석할 수 있어서 편하겠네요.
루비를 잘 몰라서 덕분에 공부할 기회로 삼겠습니다.
저도 C에 익숙하지만 어느 운영체제에서나 똑같이 쓸 수 있는 도구로 만들자면 루비가 괜찮을 것 같습니다.
옛날 파라미터를 그대로 올려 버렸네요. 다시 올렸습니다.
참고로 수정된 파라미터는 회전축 중심을 단위에 맞게 수정한 것입니다. 이 수정 없이 쓸 경우 손 크기가 40cm에 육박한다고 가정하게 됩니다.
소인배 님, 숫자와 기호는 반영이 안 되는 건가요? 코드를 살펴보니 숫자, 기호가 나와 있지 않군요. 숫자와 기호의 비율이 적어서 반영이 안 되어도 괜찮을것 같지만요...
전에도 말씀드렸듯 숫자와 기호는 무시합니다.
@소인배 그렇군요 ^^ 빠르게 알려주셔서 감사합니다 ^^ 좋은 저녁 되세요.
대부분의 세벌식에서 모음 ㅑ가 6이 아닌 i로 매핑된 것을 확인했습니다. 전체적인 경향에는 큰 문제 없겠지만 수정해서 쓰시길...