(deftest learning ((setq p *restaurant-boolean-problem*)) ((setq e (learning-problem-examples p) g (learning-problem-goals p))) ((setq h (decision-list-learning 4 p))) ((accuracy h #'dlpredict e g) (= * 1.0)) ((setq p *restaurant-multivalued-problem*)) ((setq e (learning-problem-examples p) g (learning-problem-goals p))) ((setq h (decision-tree-learning p))) ((accuracy h #'dtpredict e g) (= * 1.0)) ((setq p *majority-boolean-problem*)) ((setq e (learning-problem-examples p) a (learning-problem-attributes p) g (learning-problem-goals p))) ((setq h (nn-learning p (make-perceptron 11 1) #'perceptron-update))) ((accuracy h #'(lambda (e1 h1) (nn-output e1 h1 a g)) e g) (> * 0.8)) ((setq p *restaurant-real12-problem*)) ((setq e (learning-problem-examples p) a (learning-problem-attributes p) g (learning-problem-goals p))) ((setq h (nn-learning p (make-connected-nn '(10 4 1)) #'backprop-update))) ((accuracy h #'(lambda (e1 h1) (nn-output e1 h1 a g)) e g #'rms-error) (> * 0.8)) ((setq a (make-mdp-agent :name 'LM :program (make-passive-lms-learner)))) ((setq e (make-mdp-environment :mdp *4x3-passive-mdp* :agents (list a) :epochs-left 2))) ((run-environment e)) ;;; for now just make sure it runs ((setq a (make-mdp-agent :name 'TD :program (make-passive-td-learner)))) ((setq e (make-mdp-environment :mdp *4x3-passive-mdp* :agents (list a) :epochs-left 2))) ((run-environment e)) ;;; for now just make sure it runs ((setq a (make-mdp-agent :name 'MA :program (make-maximizing-adp-learner '(left right up down))))) ((setq e (make-mdp-environment :mdp *4x3-mdp* :agents (list a) :epochs-left 2))) ((run-environment e)) ;;; for now just make sure it runs ((setq a (make-mdp-agent :name 'QI :program (make-maximizing-qi-learner '(left right up down))))) ((setq e (make-mdp-environment :mdp *4x3-mdp* :agents (list a) :epochs-left 2))) ((run-environment e)) ;;; for now just make sure it runs ((setq a (make-mdp-agent :name 'EA :program (make-exploring-adp-learner '(left right up down))))) ((setq e (make-mdp-environment :mdp *4x3-mdp* :agents (list a) :epochs-left 2))) ((run-environment e)) ;;; for now just make sure it runs ((setq a (make-mdp-agent :name 'TQ :program (make-exploring-tdq-learner '(left right up down))))) ((setq e (make-mdp-environment :mdp *4x3-mdp* :agents (list a) :epochs-left 2))) ((run-environment e)) ;;; for now just make sure it runs )