- 註冊時間
- 2002-8-14
- 線上時間
- 523 小時
- 閱讀權限
- 50
- 積分
- 176
- 主題
- 28
- 精華
- 0
- 文章
- 198
TA的每日心情 | 開心 2011-10-7 19:08 |
|---|
簽到天數: 1 天 連續簽到: 1 天 [LV.1]初來乍到 - 文章
- 198
|
引用如下,我只做了繁體中文化 4 ]2 w1 Y% x4 x+ W' P
% n( [& g: H8 H8 B$ Y2 Y
非常感謝UGLee老大寫出了這麼優秀的SugarMemo,只是U老大實在是工作太忙,暫時無暇更新,小弟前段時間剛好有點時間,所以幫U老大做了一點BugFix,本來想等U老大來發佈的,不過好久都沒在網上見到他了,因此幫U老大代為發佈一下 . N6 O! o% a2 E3 X, K
6 g% ?! E. v$ f. K( k
這是一個BugFix版本, 修正了以下Bug:
( q/ p/ a2 q( f. r) _) _4 V 1. 改正了Detail界面中按Address出現崩潰的問題(還沒完全改好,不過崩潰的機遇比以前小了)
% q. @; {+ V) e0 u3 G9 g 2. 去掉了生成多選項的時候自動過濾特殊字符(比如空白)的功能, 詞組學習和複習時不會出現混在一起的情況了 # H, w! G7 e& T% s! J
3. Updating之後刷新了生詞學習/複習單詞數的顯示,自動選取了第一個單詞庫
8 z$ o/ M! F4 p, [3 K5 { 4. 加入了關閉程序時保存現場的功能, 重新進去後恢復現場,看起來更符合Palm的philosophy了
2 B- D# l8 O M$ W8 x9 }0 q5 \ 5. 改進了複習算法, 現將新的複習算法公佈如下
8 X' L. I8 v* ~" D" ]4 P
. p# z( x8 X1 s( T! |3 S 忘了說明 ,為了支持更多字體,更改了一下字體設置,請重新設置一下各個詞庫的字體,才會正確顯示音標和大字 , E, m% b1 [/ T, {
典型的設置為 Word - 特大字, Phonetic - 大音標, Tranlation - 特大字,設置在學習或者複習界面的菜單中 % e) p7 u) m7 Z
7 z0 Z4 h0 ]7 Z5 p2 R8 [+ D
本學習軟件採用的是sm2算法,按照sm2算法,所有複習過的單詞按照難易程度分為六個級別,A/B/C/D/E/F,其中A代表記得最牢固,B次之,F表示根本記不得了
6 D! t0 _& {, U+ q( w3 A 用過SuperMemo的用戶都知道,在SuperMemo中是由用戶來選擇難易級別的,但是根據本人的使用經驗和大部分人的經驗來看,讓用戶自己選擇基本上是很難做到很準確的,然而這一點實際上又是保證科學安排複習時間的關鍵所在
4 D( n7 V T1 j% U6 ` 所以在SugarMemo中,我們簡化了這種操作,只是讓用戶選擇Fail/Pass/Bingo,使這種判斷更趨於人性化,並且通過這些組合來試圖盡量科學的幫用戶來模擬A/B/C/D/E/F的難易級別 9 a0 v* s. ?. ]4 J* y C( t& o
' H# j& k z" m% A: @ 我們的實現原理是這樣的 , x- o# i5 G: J6 L( C3 N- S2 I
設置了兩個狀態r1, r2以及tFail計數器來記錄複習過程
- |% Y9 @6 P$ R1 I9 N, H r的取值範圍為NoRating,FailRating,PassRating,BingoRating
" D1 a: F8 \6 s8 | W 當一個單詞進入複習的時候的狀態, r1=r2=NoRating
9 X3 R) B% J: x3 v r1 - 記錄第一次的選擇
3 [3 r* C9 ` G8 m r2 - 記錄後面的最有利的一次記憶狀態
+ Z; a+ m* _9 m# J. b0 a tFail - 本次複習循環中的Fail總次數
7 H9 A: v( u/ `6 w maxFail - 允許最大的Fail總次數,目前定義為8次
6 w) v" Q' u( O1 p' \- l' B. b' V" f
/ ]# N: V# n6 y3 @ v5 t# G9 U 只有一種複習模式時,當選取Pass/Bingo的時候,將跳出本輪複習 6 [) J7 f* F( p$ L2 f' e
多種模式複習時,Bingo的時候直接跳出複習,Pass則跳到下一種模式,當然如果是最後一次,那麼則跳出本輪複習
8 n, @8 e, Y# V$ E4 | 對於多選模式,選對了,則記錄為PassRating,選錯了記錄為FailRating,所以從科學複習的角度來說,請務必至少選擇回想模式 : x6 c+ D, D" @" Q
F的時候將單詞送回學習序列,重新進行學習 : ~( |7 y) f& C, y4 C- Z G
# O/ U) C0 [9 Q! F1 k, k8 u
A - (r1 = BingoRating 並且 r2 = BingoRating) , W1 d. w. k9 W; Z: \
或者 (r1 = BingoRating 並且 r2 = NoRating)
6 I( M+ ^) F) K+ g8 w B - (r1 = BingoRating 並且 r2 = PassRating) 0 a3 g1 l& D/ X& ~# j0 d
或者 (r1 = PassRating 並且 r2 = BingoRating) ( B" ~' E4 e% S8 F7 G
或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 1)
' ^3 V. D+ ]! ?' h 或者 (r1 = PassRating 並且 r2 = NoRating)
- k" c( K7 L5 b+ `$ `5 ?4 L5 ]' ~ C - (r1 = FailRating 並且 r2 = PassRating 並且 tFail = 1)
* u+ A/ Z) j( R8 M( J 或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail = 2)
( A: {7 N4 g6 g9 Y7 A 或者 (r1 = PassRating 並且 r2 = PassRating) 7 \7 O. }& C7 Y* z( a* z
D - (r1 = FailRating 並且 r2 = PassRating 並且 tFail == 2) + [9 Z' o: x& t8 `" W& K
或者 (r1 = FailRating 並且 r2 = BingoRating 並且 tFail > 2 並且 tFail < maxFail) 3 N4 z' b4 v0 h
E - (r1 = FailRating 並且 r2 = PassRating 並且 tFail > 2 並且 tFail < maxFail) , g5 @) s" W' n: `0 |# Y9 B
F - (tFail >= maxFail)
7 H9 B& n% o! m2 {: O$ x: P 3 N# B/ A; c9 N4 M2 ^2 E3 ]
上述情況中盡可能的考慮到了所以可能出現的狀態,如果出現沒有考慮到的情況,將跳出一個Error對話框,如果在複習的時候出現Error對話框,請及時報告錯誤,我盡可能的保證不出現這種沒有考慮到的情況,但是錯誤有時總是難免的 ,謝謝 ; q; l3 C7 i% K. P U4 h
% Y3 V+ J" p! x1 d. L$ |
由於原來的算法中忘記清除測試狀態,所以做了一個特殊的版本用於清除測試狀態,此版本只需運行一次,會彈出一個標題為Reseting Testing Status的窗口,然後所有的詞庫都會自動清除測試狀態,在安裝使用0.59Beta之前,一定要運行一次這個版本,切記切記
1 ?; e5 Q! T' p# b3 `% l
$ r8 y7 |% ]/ B) T b 運行過之後,刪掉上面的版本,重新安裝以下的0.59Beta版本就可以正常使用了 |
本帖子中包含更多資源
您需要 登錄 才可以下載或查看,沒有帳號?免費註冊 
|