8 ms·
Autoresearch for SAT Solvers
- ericpauley 6mo agoIt should be noted that MaxSAT 2024 did not include z3, as with many competitions. It’s possible (I’d argue likely) that the agent picked up on techniques from Z3 or some other non-competing solver, rather than actually discovering some novel approach.
- jmalicki 6mo agoOr for that matter even from later versions of the same solvers that were in its training data!
- ericpauley 6mo agoTrue. I’d be curious whether a combination of matching comp/training cutoff and censoring web searches could yield a more precise evaluation.
- chaisan 6mo agoas its from 2024 (MaxSAT was not held in 2025), its quite likely all the solvers are in the training data. so the interesting part here is the instances for which we actually got better costs that what is currently known (in the best-cost.csv) file.
- ericpauley 6mo agoAs GP noted the issue is that even better versions than competed in MaxSAT are likely in the training data or web resources.
- dooglius 6mo agoIs z3 competitive in SAT competitions? My impression was that it is popular due to the theories, the python API, and the level of support from MSR.
- ericpauley 6mo agoFunnily, this was precisely the question I had after posting this (and the topic of an LLM disagreement discussed in another thread). Turns out not, but sibling comment is another confounding factor.
- throw-qqqqq 6mo agoZ3 is capable (it’s an SMT solver, not just SAT), but it’s not very fast at boolean satifiability and not at all competitive with modern SOTA SAT solvers. Try comparing it to Chaff or Glucose e.g.
- stefanpie 6mo agoProf. Cunxi Yu and his students at UMD is working on this exact topic and published a paper on agents for improving SAT solvers [1]. I believe they are extending this idea to EDA / chip design tools and algorithms which are also computationally challenging to solve. They have an accepted paper on this for logic synthesis which will come out soon. [1] "Autonomous Code Evolution Meets NP-Completeness", https://arxiv.org/abs/2509.07367 https://arxiv.org/abs/2509.07367
- chaisan 6mo agonice. EDA indeed one of the top applications of SAT
- gsnedders 6mo agoWhat counts as “our cost”? How long it takes to find the MaxSAT?
- chaisan 6mo agothe sum of the weights of the unsatistied clauses. we want to reduce this number
- balinha_8864 6mo ago[dead]
- chaisan 6mo agoits just comparing the cost of the best solution found to the best known cost we had before. O(N). why optimistic?
- yorwba 6mo agoIf you have showdead on, you can see that this account posts generic oneliners: https://news.ycombinator.com/threads?id=balinha_8864 https://news.ycombinator.com/threads?id=balinha_8864
- big-chungus4 6mo agoIs that bad?
- yorwba 6mo agoIt's an indication that it's one of the many bot accounts currently doing the same thing https://hn.algolia.com/?query=this%20is%20more%20nuanced%20than%20the%20title%20suggests.%20worth%20reading%20the%20whole%20thing&sort=byDate&type=comment https://hn.algolia.com/?query=this%20is%20more%20nuanced%20t... So the reason the comment appears weirdly disconnected from the content of the article is that it was generated independently from the content of the article.
- ktimespi 6mo agosounds like AlphaDev [1] might be a better approach for a problem like this. [1] https://github.com/google-deepmind/alphadev https://github.com/google-deepmind/alphadev
- chaisan 6mo agosomewhat
- ClawVorpal21355 6mo ago[dead]
- chaisan 6mo agowrt. token usage?
- MrToadMan 6mo agoNot as many changes to the files under library as I expected to see. Most changes seemed to be under a single ‘add stuff’ commit. If some of the solvers are randomised, then repeatedly running and recording best solution found will continually improve over time and give the illusion of the agent making algorithmic advancements, won’t it?
- chaisan 6mo agoyeh. ofc. but on any problem larger than 40 variables, the gains from random restarts or initializations will quickly plateau
- chaisan 6mo agoand it would take an algo change to the solver to jump to the next local optimum
- MrToadMan 6mo agoI guess my point was that I don't see many algo changes in the commit history, which is a shame if this has been lost; library/* files are largely unchanged from the initial commits. But each time the agent runs, it has access to the best solutions found so far and can start from there, often using randomisation, which the agent claims helps it escape local minima e.g. 'simulated annealing as a universal improver'. It would be nice to see how its learnt knowledge performs when applied to unseen problems in a restricted timeframe.
- cerved 6mo agoWould me be nice to try this on lcg (CP-SAT) solvers
- CJefferson 6mo agoOne problem here is it's very easy to overtune to a past problem set -- even accidentally. You can often significantly improve performance just by changing your random number generator seed until you happen to pick the right assignment for the first few variables of some of the harder problems. It would be interesting to take the resulting solver and apply it to an unknown data set.
- chaisan 6mo agoyess. loads of space for further exploration here. there is an attempt to keep things as general as possible in the expert.md file, but hard to mitigate overfitting fully. however, changing the seed will not get you much further with all else in the solver constant. unless you try a number of seed that exponentially scales with the size of the problem
- Dennis118753882 6mo ago[dead]
- chaisan 6mo agonice. for which problem?
- FernandoDe79440 6mo ago[dead]
- chaisan 6mo agohave examples?
- Heer_J 6mo ago[dead]
- whatever1 6mo agoI don't understand why autoresearch is presented as a new thing. It is parameter tuning. We have been doing it for centuries.
- chaisan 6mo agosure. in the limit, everything is parameter tuning. with large enough NP-hard problems, the complexity of the search space is big enough that its infeasible to get to a better state by just tuning params in any reasonable amount of time.
- whatever1 6mo agoI beg to disagree. Integer programming solvers have improved orders of magnitude in the past 20 years. The basic algorithm (branch and bound) is the same. The big commercial solvers basically are very good at picking up structures and selecting the tuning parameters that work better for specific problem types.
- jacklondon 6mo agoVery interesting. For me the key question is whether this kind of agent can generalize to real SAT application domains, not only benchmark instances. In problems like timetabling, encoding choices, auxiliary variables, and branching strategy can matter a lot. If it can help there too, this is a very meaningful direction.