- 註冊時間
- 2002-8-14
- 線上時間
- 523 小時
- 閱讀權限
- 50
- 積分
- 176
- 主題
- 28
- 精華
- 0
- 文章
- 198
TA的每日心情 | 開心 2011-10-7 19:08 |
|---|
簽到天數: 1 天 連續簽到: 1 天 [LV.1]初來乍到 - 文章
- 198
|
引用如下,我只做了繁體中文化 / u; X0 ~* ?! W8 t( L% r h
* y+ e2 P2 v* C- f, A/ u1 K7 L. @
非常感謝UGLee老大寫出了這麼優秀的SugarMemo,只是U老大實在是工作太忙,暫時無暇更新,小弟前段時間剛好有點時間,所以幫U老大做了一點BugFix,本來想等U老大來發佈的,不過好久都沒在網上見到他了,因此幫U老大代為發佈一下 ; z- U* A* d4 b
( i$ O3 _+ D7 T4 x P. b$ c" Z 這是一個BugFix版本, 修正了以下Bug: ' h7 K* ~* ?- R# K3 z) j
1. 改正了Detail界面中按Address出現崩潰的問題(還沒完全改好,不過崩潰的機遇比以前小了) 2 e6 ]6 f- y8 Y
2. 去掉了生成多選項的時候自動過濾特殊字符(比如空白)的功能, 詞組學習和複習時不會出現混在一起的情況了
7 I9 ~$ E* u. b! O 3. Updating之後刷新了生詞學習/複習單詞數的顯示,自動選取了第一個單詞庫
9 z# p+ O. c1 J 4. 加入了關閉程序時保存現場的功能, 重新進去後恢復現場,看起來更符合Palm的philosophy了
$ a6 f; K" v Z* a& t 5. 改進了複習算法, 現將新的複習算法公佈如下 - f" c n4 t+ p/ c: |
1 g: B3 L. H. o3 o 忘了說明 ,為了支持更多字體,更改了一下字體設置,請重新設置一下各個詞庫的字體,才會正確顯示音標和大字 3 _* Z( z' V ~/ T. W4 L
典型的設置為 Word - 特大字, Phonetic - 大音標, Tranlation - 特大字,設置在學習或者複習界面的菜單中 ) a* F T4 M) q# }' t8 G7 m8 e
1 x5 n* N( [ a5 U; a- u
本學習軟件採用的是sm2算法,按照sm2算法,所有複習過的單詞按照難易程度分為六個級別,A/B/C/D/E/F,其中A代表記得最牢固,B次之,F表示根本記不得了 $ W* ]& G8 _5 r* N8 R; M& x
用過SuperMemo的用戶都知道,在SuperMemo中是由用戶來選擇難易級別的,但是根據本人的使用經驗和大部分人的經驗來看,讓用戶自己選擇基本上是很難做到很準確的,然而這一點實際上又是保證科學安排複習時間的關鍵所在
8 _; T6 S9 D2 F" S 所以在SugarMemo中,我們簡化了這種操作,只是讓用戶選擇Fail/Pass/Bingo,使這種判斷更趨於人性化,並且通過這些組合來試圖盡量科學的幫用戶來模擬A/B/C/D/E/F的難易級別
) a9 ^* y( }( H* ~& f : E* [- v" b R+ |
我們的實現原理是這樣的
+ a+ f6 d* }! _. J0 r 設置了兩個狀態r1, r2以及tFail計數器來記錄複習過程 0 a# G. @4 e/ m# k1 e. j& F/ h
r的取值範圍為NoRating,FailRating,PassRating,BingoRating
: K- q( g4 ~8 w1 `: v F' y2 Q2 P. w 當一個單詞進入複習的時候的狀態, r1=r2=NoRating
j0 W# b, J' N3 \# p& e r1 - 記錄第一次的選擇
+ v0 I' @$ B4 j% h5 Z r2 - 記錄後面的最有利的一次記憶狀態
' Q1 L$ _6 p& N- @/ J6 T* D C tFail - 本次複習循環中的Fail總次數
; ]1 ~: m" X( C0 o maxFail - 允許最大的Fail總次數,目前定義為8次 * g+ k: `5 v9 d2 Z
f0 i% R' m) k) b) x 只有一種複習模式時,當選取Pass/Bingo的時候,將跳出本輪複習
. q0 \* s+ V0 e# O7 } 多種模式複習時,Bingo的時候直接跳出複習,Pass則跳到下一種模式,當然如果是最後一次,那麼則跳出本輪複習
$ h% [& _. o+ A, m 對於多選模式,選對了,則記錄為PassRating,選錯了記錄為FailRating,所以從科學複習的角度來說,請務必至少選擇回想模式 7 ~# k Z9 v2 z) P) B* k8 E
F的時候將單詞送回學習序列,重新進行學習 1 D7 J- j5 {( O( O; O4 b
Y5 H' m( b8 v; r
A - (r1 = BingoRating 並且 r2 = BingoRating) $ ^4 A% R( N4 f! S3 s1 ]
或者 (r1 = BingoRating 並且 r2 = NoRating)
. c n; y1 P- g4 y' ~" Y B - (r1 = BingoRating 並且 r2 = PassRating)
, s6 V0 Q1 y! W0 E 或者 (r1 = PassRating 並且 r2 = BingoRating)
' i9 \# c/ H( |+ R+ A i 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 1)
' k1 K- g. k. C+ S( M 或者 (r1 = PassRating 並且 r2 = NoRating)
, g: E0 q( o1 @+ p C - (r1 = FailRating 並且 r2 = PassRating 並且 tFail = 1)
$ g# u* R! [4 O 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 2) , X- q" r* l) n, [$ `
或者 (r1 = PassRating 並且 r2 = PassRating)
2 T/ C" a: B. A+ b0 w D - (r1 = FailRating 並且 r2 = PassRating 並且 tFail == 2) ! U# t0 d8 u- X% w( i; B
或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail > 2 並且 tFail < maxFail)
- @0 Q0 e, P1 c" f2 I) Q E - (r1 = FailRating 並且 r2 = PassRating 並且 tFail > 2 並且 tFail < maxFail) 1 w9 ]) _; } B; j% p% Z
F - (tFail >= maxFail) ! Z# m# Y. U- b8 F. u3 x! u# d# K
$ Z6 Q8 m8 b& U" o6 W) k. `: j 上述情況中盡可能的考慮到了所以可能出現的狀態,如果出現沒有考慮到的情況,將跳出一個Error對話框,如果在複習的時候出現Error對話框,請及時報告錯誤,我盡可能的保證不出現這種沒有考慮到的情況,但是錯誤有時總是難免的 ,謝謝
T6 B: g: i# b5 K3 q- a* `9 G 1 Q, W& T. t# i6 U( ?, q' d, k
由於原來的算法中忘記清除測試狀態,所以做了一個特殊的版本用於清除測試狀態,此版本只需運行一次,會彈出一個標題為Reseting Testing Status的窗口,然後所有的詞庫都會自動清除測試狀態,在安裝使用0.59Beta之前,一定要運行一次這個版本,切記切記
( @0 f/ }# H' {1 s2 h * m7 U! k' D) M5 c# X$ `
運行過之後,刪掉上面的版本,重新安裝以下的0.59Beta版本就可以正常使用了 |
本帖子中包含更多資源
您需要 登錄 才可以下載或查看,沒有帳號?免費註冊 
|