text: 非確定性程式設計，是一種程式設計範型，它可以在程式的特定點。可以形成選擇點的一個層級，具有著高層選擇引出的包含其中低層選擇的諸分支。概述.選擇的一種方法，體現為回溯系統，其中一些交替者可能“失敗”，導致程式回溯並嘗試其他交替者。如果所有交替者在一個特定選擇點上都失敗了，則整個分支失敗，程式將進一步回溯到一個更早的選擇。一種複雜的問題是，由於任何選擇都是試探性的而可以被重做，系統必須能夠透過撤銷執行一個最終失敗了的分支所導致的副作用，恢復早先的程式狀態。選擇的另一種方法是強化學習，體現在系統如Alisp中。在這種系統中，不做回溯，系統跟蹤某種對成功的衡量，並學習在哪種條件下，哪種選擇經常導致成功。這些系統適合於應用到機器人和一些其他領域，其中回溯會涉及到，所嘗試撤銷的行動是在動態環境中進行的，而這將是困難或不實際的。
metadata.dataset: erhwenkuo/wikipedia-zhtw
metadata.title: 非確定性程式設計
metadata.url: https://zh.wikipedia.org/wiki?curid=7855834