Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extended support for domain-specific heuristics #213

Open
wants to merge 386 commits into
base: master
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
386 commits
Select commit Hold shift + click to select a range
98263ca
new HRP encoding
rtaupe Sep 12, 2018
084f820
new HRP encodings and instances
rtaupe Sep 12, 2018
20a2d18
Add clingo HRP encoding
rtaupe Sep 22, 2018
7229f1e
Disable expensive tests
rtaupe Sep 22, 2018
1a7caec
HRP instances for Alpha
rtaupe Oct 29, 2018
ecee6f1
HRP instances for Alpha and Clingo
rtaupe Oct 29, 2018
995501f
fix unit test
rtaupe Nov 21, 2018
081fff7
Simpler heap in DefaultDomainSpecificHeuristicsStore, clean up code
rtaupe Nov 21, 2018
972e588
Merge branch 'master' into domspec_heuristics
rtaupe Feb 26, 2019
3e5f2d8
Throw exception if classical negation occurs in heuristic condition
rtaupe Feb 26, 2019
7374d1d
Throw exception if heuristic directive contains empty condition
rtaupe Feb 26, 2019
7b08822
Output warning if domain-specific heuristic finds no active rule
rtaupe Feb 28, 2019
a54dae0
Logging in ChainedBranchingHeuristics
rtaupe Mar 4, 2019
356c47b
Add missing implementations of equals and hashCode
rtaupe Mar 12, 2019
94e37a4
Add aggregate id to correct list in normalizations.
AntoniusW Mar 3, 2019
eafde39
Merge branch 'master' into domspec_heuristics
rtaupe Mar 12, 2019
a2f14ee
Re-introduce -ids switch lost during merge ...
rtaupe Mar 12, 2019
7e36501
Output list of choices after solving
rtaupe Mar 14, 2019
4886f80
Introduce ReplayHeuristic
rtaupe Mar 14, 2019
aab08a7
Check iterator hasNext in ReplayHeuristic
rtaupe Mar 14, 2019
66de598
Also output human-readable choices
rtaupe Mar 14, 2019
6ef93e8
use specified branching heuristic as fallback if domspec is used
rtaupe Mar 26, 2019
db58cde
Merge branch 'master' into domspec_heuristics
rtaupe Mar 26, 2019
9be8aa9
Fix automatic chaining of heuristics
rtaupe Mar 26, 2019
a130cb8
Merge branch 'master' into domspec_heuristics
rtaupe Mar 29, 2019
8e55bd8
Introduce HeuristicsConfiguration
rtaupe Mar 29, 2019
cb1e489
Do not ground heuristic directives if -ids
rtaupe Apr 9, 2019
ea5d1df
Avoid DomainSpecific if no heuristic directives given
rtaupe Apr 9, 2019
56eab37
Merge branch 'master' into domspec_heuristics
rtaupe Apr 15, 2019
9f6e783
Fix merge
rtaupe Apr 15, 2019
61c8f01
fix use of solver heuristics in solver tests
rtaupe Apr 15, 2019
326521e
Right order of output by ChainedBranchingHeuristic#getNumberOfDecisions
rtaupe Apr 22, 2019
9ab2482
Merge branch 'master' into domspec_heuristics
rtaupe Apr 22, 2019
bb5f1c0
rm .idea
rtaupe Apr 22, 2019
b60af62
DomainSpecific: random choice among heuristics with equal weight
rtaupe Apr 23, 2019
7305a9d
Revert "DomainSpecific: random choice among heuristics with equal wei…
rtaupe Apr 25, 2019
0f422bd
Use body-representing atom also for heuristic directives
rtaupe Apr 25, 2019
3d1e4a4
Implement HeuristicsConfiguration#toString
rtaupe May 13, 2019
2eda53f
Fix bug in DependencyDrivenHeuristic#chooseLiteral
rtaupe May 13, 2019
dcde3e4
Update House test using latest heuristic encoding
rtaupe May 13, 2019
e528746
Reduce log output by DefaultSolver
rtaupe May 13, 2019
e2ade30
Ignore PartSubpartConfigurationTest
rtaupe May 14, 2019
b7863a5
Fix issues discovered by IDEA code inspection
rtaupe May 14, 2019
83c68b0
Various (stylistic) improvements to DomainSpecific
rtaupe May 14, 2019
4521457
Refactor NoGoodGenerator
rtaupe May 14, 2019
ad7c8de
Refactor NoGoodGenerator
rtaupe May 14, 2019
b35bb1a
Remove unused code from Util
rtaupe May 14, 2019
ba8df32
Allow heuristic directives without annotations.
rtaupe Jul 23, 2019
51ea348
Change default weight and level in heuristic directives from 1 to 0.
rtaupe Jul 23, 2019
c3b0abe
Reduce log output.
rtaupe Jul 26, 2019
424255b
DefaultSolver providing number of choices of each heuristic.
rtaupe Jul 26, 2019
794bcd0
Fix automatic chaining of heuristics.
rtaupe Jul 26, 2019
a94112d
Unit test for an issue related to domspec heu and backjumping
rtaupe Jul 26, 2019
82df264
Extend decision counters when heuristic is added to chain
rtaupe Mar 27, 2019
aaf2130
New nogoods for heuristics
rtaupe Jul 26, 2019
baa0bca
Fix unit test for an issue related to domspec heu and backjumping
rtaupe Jul 29, 2019
4972212
Fix signs in new heuristic nogoods
rtaupe Jul 29, 2019
71778a5
Suppress warning
rtaupe Jul 29, 2019
45adcb1
Update test case
rtaupe Jul 29, 2019
fd81270
(Preliminary) improvement to additional heuristic influencers
rtaupe Aug 5, 2019
ec3152f
Revert "(Preliminary) improvement to additional heuristic influencers"
rtaupe Aug 8, 2019
af38871
Merge branch 'master' into domspec_heuristics
rtaupe Aug 8, 2019
b33071d
Consistent copyright header
Aug 8, 2019
ec84962
Link inline TODOs to #181
Aug 8, 2019
04f6d63
Simplify HeuristicDirectiveValues.PriorityComparator
rtaupe Aug 14, 2019
3b6d674
Mark inline TODO as done
rtaupe Aug 14, 2019
9c7c4a6
Improve logging of choice stack by DefaultSolver
rtaupe Aug 14, 2019
e90cc3f
Remove nonfunctional checking from DefaultDomainSpecificHeuristicsStore
rtaupe Aug 14, 2019
f1704d0
Extend javadoc
rtaupe Aug 14, 2019
b847aea
Remove unused field
rtaupe Aug 14, 2019
fd39b51
Extract static methods from NoGood
rtaupe Aug 14, 2019
9efd1d9
Clean up NonGroundRule
rtaupe Aug 14, 2019
210fa67
Remove unused method
rtaupe Aug 14, 2019
03625a2
Javadoc
rtaupe Aug 14, 2019
ca5b21b
Remove unused method
rtaupe Aug 14, 2019
d646dfa
Reduce visibility of methods
rtaupe Aug 14, 2019
1fd5291
Extract statistics methods from ChoiceManager
rtaupe Aug 14, 2019
7e99efb
Merge branch 'master' into domspec_heuristics
rtaupe Aug 14, 2019
469f236
Merge branch 'tests' into domspec_heuristics
rtaupe Aug 14, 2019
a00a12e
Merge branch 'tests' into domspec_heuristics
rtaupe Aug 14, 2019
f32b420
Ignore expensive unit tests to save resources during CI
rtaupe Aug 14, 2019
77fd723
Satisfy Checkstyle
rtaupe Aug 14, 2019
d827549
Temporarily disable ALPHA_HEAD_MBT heuristics due to poor performance
rtaupe Aug 14, 2019
1dfcab4
Ignore expensive unit tests to save resources during CI
rtaupe Aug 14, 2019
8f34496
Ignore expensive unit tests to save resources during CI
rtaupe Aug 14, 2019
38dc9d2
Merge branch 'master' into domspec_heuristics
rtaupe Sep 12, 2019
10361c7
Fix merge
rtaupe Sep 12, 2019
f4fcb17
Merge branch 'master' into domspec_heuristics
rtaupe Oct 2, 2019
c869dda
Fix merge f4fcb1793dcb0d8904a0ae756ecd742475c86a48.
rtaupe Oct 2, 2019
7dbcdda
Reduce number of methods in some classes.
rtaupe Oct 2, 2019
b546df7
Make ChoiceAtom inherit from BasicAtom to reduce duplicate code.
rtaupe Oct 2, 2019
af72a7c
Reduce frequency of checks in ChoiceInfluenceManager
rtaupe Oct 3, 2019
0451c66
Remove unused methods
rtaupe Oct 3, 2019
4fc32a0
Remove unused code.
rtaupe Oct 17, 2019
4d071fd
Add more unit tests to increase coverage.
rtaupe Oct 17, 2019
4fa3d60
Add missing decision counting to ChainedBranchingHeuristics.
rtaupe Oct 18, 2019
6203271
Fix inconsistent method usage in BerkMin.
rtaupe Oct 18, 2019
df100c2
Add more unit tests to increase coverage.
rtaupe Oct 18, 2019
eeec957
Add more unit tests to increase coverage.
rtaupe Oct 18, 2019
0400c54
Merge branch 'domspec_heuristics' into domspec_heuristics_extended
rtaupe Dec 12, 2019
06adc96
Merge branch 'atom_counter' into domspec_heuristics_extended
rtaupe Dec 12, 2019
737ce56
Merge branch 'master' into domspec_heuristics
rtaupe Jan 17, 2020
e413e3d
Fix merge 737ce56f0a9142f8ce857895aafd2f12a038b883
rtaupe Jan 17, 2020
3fcb8dc
Merge branch 'domspec_heuristics' into domspec_heuristics_extended
rtaupe Jan 17, 2020
1ca82c5
Extend grammar and parser for new syntax of heuristic directives
rtaupe Jan 17, 2020
fb279f6
Additional and revised test cases for dom-spec heuristics
rtaupe Feb 4, 2020
12ec21c
Extend some classes for domain-specific heuristics
rtaupe Feb 4, 2020
5a4a9bd
Fix order in lexer grammar
rtaupe Feb 4, 2020
50fdf2e
Use default heuristic signs if none given
rtaupe Feb 4, 2020
983b661
Workaround for lexical overlap ...
rtaupe Feb 4, 2020
f9a77e3
Allow for non-basic atoms in heuristic body
rtaupe Feb 5, 2020
96eca8f
Make some ParserTest cases pass
rtaupe Feb 5, 2020
a3b9fea
Fix grammar to distinguish between heuristic signs and variables
rtaupe Feb 9, 2020
7dafa94
Fix parser (tests) for heuristic directives
rtaupe Feb 9, 2020
55aa9f6
Fix minor issues in ParserTest
rtaupe Feb 9, 2020
38ade0f
Allow built-in and external atoms in heuristic directives
rtaupe Feb 9, 2020
6947879
Translate heuristic directives (in new syntax) to rules
rtaupe Feb 10, 2020
1310637
Fix expected FunctionTerm#toString in test case
rtaupe Feb 10, 2020
508ee68
Fix parsing of compound heuristic signs
rtaupe Feb 10, 2020
41534da
Eliminate any-sign conditions from heuristic directives
rtaupe Feb 10, 2020
756d67e
Make constants final
rtaupe Feb 12, 2020
8d9796a
Fix null check
rtaupe Feb 14, 2020
352a1d6
Generate heuristic nogoods
rtaupe Feb 17, 2020
b481b53
Correct handling of fixed-interpretation literals
rtaupe Feb 17, 2020
2b8141e
Merge branch 'master' into domspec_heuristics
rtaupe Feb 19, 2020
79ca293
Merge branch 'domspec_heuristics' into domspec_heuristics_extended
rtaupe Feb 19, 2020
d29c2a0
Satisfy checkstyle
rtaupe Feb 19, 2020
5c708b7
Allow rewritten rules with empty body
rtaupe Feb 19, 2020
c52b4f6
Revise handling of heuristic rules with empty body
rtaupe Feb 20, 2020
2b2b176
rename ChoiceInfluenceManager --> ChoicePointInfluenceManager
rtaupe Feb 20, 2020
46b6813
Separate implementations of InfluenceManager:
rtaupe Feb 20, 2020
17d2ca7
Convert PUP instances to new heuristic directives syntax
rtaupe Feb 20, 2020
c4d81a0
Generate additional support nogoods
rtaupe Feb 21, 2020
ecbbde3
Add additional simple support nogoods
rtaupe Feb 21, 2020
8b1c3d0
Convert HRP instances to new heuristic directives syntax
rtaupe Feb 21, 2020
89e0419
Filter facts when generating heuristic nogoods
rtaupe Feb 21, 2020
9abe436
Fix test cases for domain-specific heuristics
rtaupe Feb 21, 2020
6342fa0
Handling of heuristic influencers
rtaupe Feb 21, 2020
745e14c
Ignore HouseTest for now
rtaupe Feb 21, 2020
4b337ad
Separate Alpha ASP grammar from ASPCore2 grammar
rtaupe Feb 21, 2020
a8cc645
Merge branch 'deprecate_old_heuristics' into add_simple_completion
rtaupe Feb 24, 2020
cfbdb0e
Remove redundant completion nogood again
rtaupe Feb 24, 2020
42b7181
Merge branch 'add_simple_completion' into domspec_heuristics_extended
rtaupe Feb 24, 2020
3d01b49
Remove redundant completion nogood again
rtaupe Feb 24, 2020
71b9fac
Fix generation of heuristic nogoods
rtaupe Mar 17, 2020
8627a4a
Refactor ChoiceRecorder to make it neater
rtaupe Mar 17, 2020
4efc494
Refactor ChoiceRecorder to make it even neater
rtaupe Mar 17, 2020
5e3a43a
Fix bug in ChoiceRecorder
rtaupe Mar 17, 2020
c1375cf
Merge branch 'master' into domspec_heuristics_extended
rtaupe Aug 17, 2020
715e6b6
Fix merge (to make Alpha compile again)
rtaupe Aug 17, 2020
41a7df8
Use AlphaASPParser in ProgramPartParser
rtaupe Aug 18, 2020
92971af
Fix bug by removing hiding variable
rtaupe Aug 18, 2020
9b762b4
Remove unused imports
rtaupe Aug 18, 2020
d319eff
Remove temporary sysout
rtaupe Aug 18, 2020
262d01e
Merge branch 'master' into domspec_heuristics_extended
rtaupe Nov 27, 2020
fc6b0a7
adapt replay choices
rtaupe Dec 3, 2020
cd33e9d
Fix NaiveGrounderTest#testGenerateHeuristicNoGoods
rtaupe Dec 3, 2020
e8b81a0
Fix rewriting of intervals in function terms
rtaupe Dec 3, 2020
4ca7b6c
Fix merge 262d01ea0f6a9148ef8e69a0ba2413739ccb2a17
rtaupe Dec 4, 2020
b48761e
Merge branch 'master' into add_simple_completion
rtaupe Dec 4, 2020
e0cc183
Fix merge b48761e48b24ff8caeb66577275b2f4af4a1e269
rtaupe Dec 4, 2020
6be18df
Merge branch 'add_simple_completion' into domspec_heuristics_extended
rtaupe Dec 4, 2020
9f01afd
additional test for heuristic with empty condition
rtaupe Dec 17, 2020
1d4f7b1
skip satisfied literals and inapplicable heuristics
rtaupe Dec 17, 2020
e16a6e3
Workaround for conflicting internal heuristic nogoods
rtaupe Dec 21, 2020
588ea7d
workaround for bug in #226
rtaupe Dec 26, 2020
74359eb
new unit test for negative heuristics
rtaupe Dec 26, 2020
5269c9b
deactivate heuristic when head is assigned
rtaupe Jan 7, 2021
eb7162f
DomainSpecific may assign F directly to ordinary atom
rtaupe Jan 7, 2021
1e65e76
Satisfy CheckStyle
rtaupe Jan 8, 2021
b30bcf3
Merge remote-tracking branch 'origin/master' into domspec_heuristics_…
rtaupe Jan 8, 2021
5f92b60
Revert "DomainSpecific may assign F directly to ordinary atom"
rtaupe Jan 12, 2021
873e919
Allow only one applicable rule for head of chosen heuristic
rtaupe Jan 12, 2021
8fffec8
boolean sign in heuristic directives
rtaupe Jan 13, 2021
0984a3b
avoid heuristic's overhead if no active choice points
rtaupe Jan 18, 2021
af96b0a
DomainSpecific logs weight and level of chosen heuristics
rtaupe Jan 18, 2021
c388bb2
reduce log level
rtaupe Jan 21, 2021
ff42565
add TODO regarding paper
rtaupe Jan 23, 2021
49c33cd
revise implementation of domain-specific heuristics
rtaupe Apr 7, 2021
b2f6bd0
clean up grammar files
rtaupe Apr 8, 2021
14eacd7
revert unintended formatting changes
rtaupe Apr 8, 2021
9c8d3bc
process heuristics only if they exist
rtaupe Apr 8, 2021
0ad380a
revert unintended formatting changes
rtaupe Apr 8, 2021
c321b2b
revert unintended copyright changes
rtaupe Apr 8, 2021
f76eb62
revert unintended changes
rtaupe Apr 8, 2021
d43cd28
VariableTerm#ANONYMOUS_VARIABLE_COUNTER is visible for testing
rtaupe Apr 8, 2021
c5ad22b
fix documentation
rtaupe Apr 8, 2021
8bd83ec
revert unintended formatting change
rtaupe Apr 8, 2021
3f81eb4
revert unintended change
rtaupe Apr 8, 2021
12b2df7
fix documentation
rtaupe Apr 8, 2021
ef23fbf
revert unintended change
rtaupe Apr 8, 2021
1623806
insert pointer to paper
rtaupe Apr 8, 2021
8df7067
delete unused files
rtaupe Apr 8, 2021
e1ceaaf
fix docs
rtaupe Apr 8, 2021
e52a6db
revert unintended change
rtaupe Apr 8, 2021
06cfa56
revise test cases
rtaupe Apr 8, 2021
a6ca229
revert unintended changes
rtaupe Apr 8, 2021
025301b
revise test cases
rtaupe Apr 8, 2021
318e933
Merge branch 'master' into domspec_heuristics_extended
rtaupe Apr 21, 2021
a0fca13
Fix HeuristicDirectiveToRule transformation not removing directives
rtaupe May 5, 2021
a7f3bf6
gitignore /src/main/gen
rtaupe May 6, 2021
22bc065
Fix JavaDoc
rtaupe May 6, 2021
2cccecd
get boolean constant terms
rtaupe May 6, 2021
f94b61a
extend ProgramPartParser by parseBasicRule(...)
rtaupe May 6, 2021
3619246
introduce tests for VariableEqualityRemoval, and fix issue with heuri…
rtaupe May 6, 2021
c41c0e2
use more general type for lists of body literals
rtaupe May 6, 2021
50a08bf
avoid inadvertent changes to atom's terms from the outside
rtaupe May 6, 2021
5858611
avoid conflicts involving heuristic influencer atoms during closing
rtaupe Sep 13, 2021
28489dc
Merge branch 'domspec_heuristics_extended' of github.com:alpha-asp/Al…
rtaupe Sep 13, 2021
ea978e6
add test case documenting the discarding of firing rule when there is…
rtaupe Sep 24, 2021
080cab1
automatically enhance heuristic conditions with bodies of head-derivi…
rtaupe Oct 13, 2021
06f79d1
HeuristicDirectiveConditionEnhancement: support comparison atoms in r…
rtaupe Oct 13, 2021
fcb4852
Merge branch 'master' into domspec_heuristics_extended
rtaupe Oct 13, 2021
7ead518
fix merge fcb4852bb2beb8e5288e0b11f6e8c322e9a07792
rtaupe Oct 14, 2021
bd297ab
HeuristicDirectiveConditionEnhancement: support aggregate atoms in ru…
rtaupe Oct 14, 2021
70904f9
exclude HeuristicInfluencerAtoms from TrailAssignment#getBasicAtomAss…
rtaupe Oct 27, 2021
63ffc74
Merge remote-tracking branch 'origin/domspec_heuristics_extended' int…
rtaupe Oct 27, 2021
4bc95be
Fix incomplete callback in HeuristicInfluenceManager
rtaupe Oct 28, 2021
e5797c0
implement HeuristicAtom#withTerms
rtaupe Nov 3, 2021
b67ffea
extend Predicate#hashCode and Predicate#equals
rtaupe Nov 3, 2021
6892533
adapt GroundingOfHeuristicsTest
rtaupe Nov 3, 2021
cf7dd9b
retain invisible properties of atoms
rtaupe Nov 3, 2021
54fd370
fix signs in enhanced condition:
rtaupe Nov 3, 2021
e2e4472
hopefully fix bug in unification during justification analysis
rtaupe Nov 29, 2021
863ff7d
Merge branch 'master' into domspec_heuristics_extended
rtaupe Nov 29, 2021
bda9f77
add missing choice point checks from master
rtaupe Nov 29, 2021
ec91919
implement HeuristicInfluenceManager#checkActiveChoicePoints
rtaupe Nov 29, 2021
dc786b7
TrailAssignment: do not inform callbacks during close
rtaupe Nov 30, 2021
4d68cab
Revert "hopefully fix bug in unification during justification analysis"
rtaupe Nov 30, 2021
9223fdb
update GroundingOfHeuristicsTest#testGenerateHeuristicNoGoods_General…
rtaupe Nov 30, 2021
6a7d6cb
Revert "TrailAssignment: do not inform callbacks during close"
rtaupe Nov 30, 2021
4f1a23b
TrailAssignment: do not inform callbacks during close
rtaupe Nov 30, 2021
d9989c0
fix EmptyDomainSpecificHeuristicsStoreTest
rtaupe Dec 3, 2021
0a055d1
various changes improving runtime performance
rtaupe Dec 3, 2021
ff8593e
further runtime performance improvements in HeuristicInfluenceManager
rtaupe Dec 3, 2021
ca1637c
Satisfy Checkstyle
rtaupe Dec 22, 2021
e2b3b24
remove unnecessary log output
rtaupe Jan 24, 2022
3e9b51c
extend log output for domain-specific heuristics
rtaupe Jan 24, 2022
40a212e
improve unification of heuristic directive with head-deriving rule du…
rtaupe Jan 27, 2022
0f1d185
make rules substitutable
rtaupe Jan 27, 2022
a061eb6
improve unification of heuristic directive with head-deriving rule du…
rtaupe Jan 27, 2022
129d50b
include part of negative heuristic condition in negative body of heur…
rtaupe Feb 15, 2022
2e79dc6
Revert "include part of negative heuristic condition in negative body…
rtaupe Mar 3, 2022
40d369b
Improvements to HeuristicDirectiveConditionEnhancement:
rtaupe Apr 1, 2020
62d15db
handle aggregate literals with only right-hand comparison term
madmike200590 Dec 11, 2021
312184a
add handling for right-hand eq and ne operators
madmike200590 Dec 14, 2021
4b38c47
fix operator conversion logic for literal flipping
madmike200590 Dec 15, 2021
d52f423
adopt changes from master related to AggregateOperatorNormalization
rtaupe Mar 23, 2022
a2cdfa7
ignore /buildSrc (generated by IntelliJ IDEA)
rtaupe Apr 25, 2022
6a1f37d
gradle: 7.3 -> 7.6
rtaupe Apr 25, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
extend log output for domain-specific heuristics
  • Loading branch information
rtaupe committed Jan 24, 2022
commit 3e9b51c1b14f0a57ac5438dd55d710d20d97bb9a
14 changes: 7 additions & 7 deletions src/main/java/at/ac/tuwien/kr/alpha/solver/DefaultSolver.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/**
* Copyright (c) 2016-2019, the Alpha Team.
/*
* Copyright (c) 2016-2021, the Alpha Team.
* All rights reserved.
*
* Additional changes made by Siemens.
@@ -27,9 +27,6 @@
*/
package at.ac.tuwien.kr.alpha.solver;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
@@ -44,6 +41,9 @@
import java.util.function.Consumer;
import java.util.stream.Collectors;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import at.ac.tuwien.kr.alpha.common.AnswerSet;
import at.ac.tuwien.kr.alpha.common.AtomStore;
import at.ac.tuwien.kr.alpha.common.NoGood;
@@ -457,8 +457,8 @@ private boolean backtrack() {
// Backtrack highest decision level.
final int previousDecisionLevel = assignment.getDecisionLevel();
final Choice backtrackedChoice = choiceManager.backtrack();
if (LOGGER.isTraceEnabled()) {
LOGGER.trace("Backtracked choice atom is {}={}@{}.", backtrackedChoice.getAtom(),
if (LOGGER.isDebugEnabled()) {
LOGGER.debug("Backtracked {}={}@{}.", backtrackedChoice.getAtom(),
backtrackedChoice.getTruthValue() ? TRUE : FALSE, previousDecisionLevel);
}

Original file line number Diff line number Diff line change
@@ -38,6 +38,7 @@
import at.ac.tuwien.kr.alpha.common.NoGood;
import at.ac.tuwien.kr.alpha.common.heuristics.HeuristicDirectiveValues;
import at.ac.tuwien.kr.alpha.solver.ChoiceManager;
import at.ac.tuwien.kr.alpha.solver.ThriceTruth;
import at.ac.tuwien.kr.alpha.solver.heuristics.domspec.DomainSpecificHeuristicsStore;
import at.ac.tuwien.kr.alpha.solver.learning.GroundConflictNoGoodLearner.ConflictAnalysisResult;

@@ -99,7 +100,7 @@ public int chooseLiteral(Set<Integer> admissibleChoices) {
Optional<Integer> body = chooseLiteralForValues(currentValues);
if (body.isPresent()) {
chosenLiteral = body.get();
LOGGER.debug("Weight of chosen heuristic: {}@{}", currentValues.getWeight(), currentValues.getLevel());
LOGGER.debug("Domain-specific choice: sign={}, headId={}, head={}, bodyId={}, priority={}@{}", ThriceTruth.valueOf(currentValues.getSign()), currentValues.getHeadAtomId(), currentValues.getGroundHeadAtom(), atomOf(chosenLiteral), currentValues.getWeight(), currentValues.getLevel());
break;
} else {
LOGGER.warn("Ground heuristic directive with head {} not applicable because no active rule can derive it.", currentValues.getGroundHeadAtom());