Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

String constraints, Parallel solver#91

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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged
fjwillemsen merged 63 commits intomainfromalgorithm_improvements
Feb 11, 2025
Merged

Conversation

@fjwillemsen
Copy link
Member

This pull request provides two major improvements: string constraints and a parallel solver.

Introducing string constraints, a new interface for addConstraint where users can simply write their constraint(s) as a list of Python-evaluable strings. Writing constraints in the new string format is preferable over functions and lambdas. These strings, even as compound statements, are automatically parsed to faster built-in constraints, are more concise, and do not require constraint solving familiarity by the user to be efficient.
For example,problem.addConstraint(["50 <= x * y < 100"]) is parsed to[MinProdConstraint(50, ["x", "y"]), MaxProdConstraint(100, ["x", "y"])].
This feature is in beta and subject to possible change, please provide feedback.

The new Parallel Solver is a solver that is able to parallelize solving for all solutions over the largest domain in both ProcessPool and ThreadPool mode. This solver is currently experimental and unlikely to provide an actual speedup - it is recommended to use the default OptimizedBacktrackingSolver for now.

In addition, Python 3.13 and 3.14 support has been added and dependencies updated.

@fjwillemsenfjwillemsen self-assigned thisFeb 11, 2025
@fjwillemsenfjwillemsen merged commit3ba7ba8 intomainFeb 11, 2025
1 check passed
@coveralls
Copy link

Coverage Status

coverage: 84.68%. first build
when pulling4880ad4 on algorithm_improvements
intoff3b966 on main.

Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment

Reviewers

No reviews

Assignees

@fjwillemsenfjwillemsen

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

3 participants

@fjwillemsen@coveralls

[8]ページ先頭

©2009-2025 Movatter.jp