[Aptitude-devel] r3199 - in branches/aptitude-0.3/aptitude: . src/generic

Daniel Burrows dburrows@costa.debian.org
Sat, 30 Apr 2005 17:56:55 +0000


Author: dburrows
Date: Sat Apr 30 17:56:52 2005
New Revision: 3199

Modified:
   branches/aptitude-0.3/aptitude/ChangeLog
   branches/aptitude-0.3/aptitude/src/generic/aptcache.cc
Log:
Tweak the default settings with which the problem resolver is invoked.

Modified: branches/aptitude-0.3/aptitude/ChangeLog
==============================================================================
--- branches/aptitude-0.3/aptitude/ChangeLog	(original)
+++ branches/aptitude-0.3/aptitude/ChangeLog	Sat Apr 30 17:56:52 2005
@@ -1,5 +1,16 @@
 2005-04-30  Daniel Burrows  <dburrows@debian.org>
 
+	* src/generic/aptcache.cc:
+
+	  Default score tweaking: double the penalty for broken deps, make
+	  infinity much larger, and only work with the first dependency
+	  that generates successors, rather than generating all possible
+	  successors; this is done in order to decrease the branching
+	  factor.  In theory only looking at a single dep could generate
+	  worse solutions overall, but it seems to work OK in my tests.
+
+	  Also, only check up to 100 solutions before giving up!
+
 	* src/generic/problemresolver/problemresolver.h:
 
 	  Right, only spew if debug is enabled.

Modified: branches/aptitude-0.3/aptitude/src/generic/aptcache.cc
==============================================================================
--- branches/aptitude-0.3/aptitude/src/generic/aptcache.cc	(original)
+++ branches/aptitude-0.3/aptitude/src/generic/aptcache.cc	Sat Apr 30 17:56:52 2005
@@ -1351,8 +1351,8 @@
 
   resolver=new aptitude_resolver(aptcfg->FindI(PACKAGE "::ProblemResolver::StepScore", -10),
 				 aptcfg->FindI(PACKAGE "::ProblemResolver::BrokenScore", -100),
-				 aptcfg->FindI(PACKAGE "::ProblemResolver::Infinity", 150000),
-				 aptcfg->FindI(PACKAGE "::ProblemResolver::Max-Successors", 50),
+				 aptcfg->FindI(PACKAGE "::ProblemResolver::Infinity", 1000000),
+				 aptcfg->FindI(PACKAGE "::ProblemResolver::Max-Successors", 0),
 				 aptcfg->FindI(PACKAGE "::ProblemResolver::ResolutionScore", 50),
 				 this);
 
@@ -1482,7 +1482,7 @@
     {
       // otherwise weirdness is happening.
       assert(!out_of_time);
-      solutions.push_back(new aptitude_resolver::solution(resolver->find_next_solution(aptcfg->FindI(PACKAGE "::ProblemResolver::StepLimit", 10000))));
+      solutions.push_back(new aptitude_resolver::solution(resolver->find_next_solution(aptcfg->FindI(PACKAGE "::ProblemResolver::StepLimit", 100))));
       ++selected_solution;
       selected_solution_changed();
       return *solutions.back();