anchor.diff:  		(result nil))
       (cond ((string-equal procura-str "ILDS") (setf result (ilds internal-problema 100)))
   	  	  ((string-equal procura-str "Iterative-Sampling") (setf result (sondagem-iterativa internal-problema)))
  +	  	  ((string-equal procura-str "Local-Beam") (setf result (beam-search internal-problema 10)))
   	  	  (t
   	    	(setf result (procura internal-problema procura-str))))
  -    (converte-para-visualizacao (car result))))
  +    (if (not (null result))
  +    	(converte-para-visualizacao (car result))
  +    	nil)))
   
   
   ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  
positive.code: 
  (defun beam-search (problema beam-width) 
    (let* ((*nos-gerados* 0)
  	 (*nos-expandidos* 0)
  	 (tempo-inicio (get-internal-run-time))
  	 (objectivo? (problema-objectivo? problema))
  	 (heur (problema-heuristica problema))
  	 ;(estado= (problema-estado= problema))
  	 ;thanks to Norvig
  	 (beam-sorter #'(lambda (old new)
  			 (let ((sorted (funcall (sorter heur) old new)))
  			   (if (> beam-width (length sorted))
  				sorted
  			      (subseq sorted 0 beam-width)))))
  	 (solucao nil)
  	 (tempo 300))
  
      (labels ((beam (estados)
                (cond ((<= (- tempo (/ (- (get-internal-real-time) tempo-inicio) internal-time-units-per-second)) 0.2) (return-from beam-search solucao))
  		    ((funcall objectivo? (state-job-schedule-jobs-tasks-space estado)) (list estado))
                      ((null estado) nil)
                      (t 
                       (let* ((sucessores-estado (problema-gera-sucessores problema (first estados)))
                              (sucessores-ordenados (funcall beam-sorter sucessores-estado (rest estados)));sucessores ate' beam width
                              )
  			(return-from beam (beam sucessores-ordenados))
  			)
  		      )
  		    )
  		  )
  	     )
               (loop 
  		(let* ((aux-solucao nil))
  		  (setf aux-solucao (beam (list (problema-estado-inicial problema))))
  		  (if (null solucao)
  		      (setf solucao aux-solucao)
  		     (if (better-solution aux-solucao solucao)
  			 (setf solucao aux-solucao)))
  		  (when (<= (- tempo (/ (- (get-internal-real-time) tempo-inicio) internal-time-units-per-second)) 0.2)
  		      (return-from beam-search solucao)))))))
  
  ;;;;;;;;;;;;;
  ;ILDS
  
negative.code: 											 :number-tasks n-total-tasks
  											 :jobs-tasks-space estado-inicial))
  
  	(cria-problema state-job operadores :objectivo? #'estado-objectivo :heuristica #'heuristica-tempo-desperdicado)))
    
  
  (defun proxima-tarefa (estado job)
  