--- loncom/homework/bridgetask.pm 2006/03/31 20:30:30 1.136 +++ loncom/homework/bridgetask.pm 2006/04/10 07:30:54 1.137 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # definition of tags that give a structure to a document # -# $Id: bridgetask.pm,v 1.136 2006/03/31 20:30:30 albertel Exp $ +# $Id: bridgetask.pm,v 1.137 2006/04/10 07:30:54 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -1319,8 +1319,13 @@ sub pick_from_queue_data { if (@possible) { # sort entries in order by slot end time @possible = sort { $a->[1] <=> $b->[1] } @possible; - # pick one of the first ten entries - my $max=($#possible < 10) ? $#possible : 10; + # pick one of the entries in the top 10% in small queues and one + # of the first ten entries in large queues + my $ten_percent = int($#possible * 0.1); + if ($ten_percent < 1 ) { $ten_percent = 1; } + if ($ten_percent > 10) { $ten_percent = 10; } + my $max=($#possible < $ten_percent) ? $#possible : $ten_percent; + return $possible[int(rand($max))][0]; } return undef;