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

LOLA-Voronoi #2566

Draft
wants to merge 6 commits into
base: master
Choose a base branch
from
Draft

LOLA-Voronoi #2566

wants to merge 6 commits into from

Conversation

jschueller
Copy link
Member

@jschueller jschueller commented Mar 14, 2024

implements crombecq2011

algo = otexp.LOLAVoronoi(x0, y0, distribution)
for i in range(5):
    x = algo.generate(15)
    y = f1(x)
    algo.update(x, y)

@jschueller jschueller marked this pull request as ready for review April 5, 2024 09:57
@jschueller jschueller changed the title lola nanoflann Apr 5, 2024
@jschueller jschueller changed the title nanoflann KDTree: Use nanoflann Apr 5, 2024
@sofianehaddad
Copy link
Member

Maybe adding a specific test with nanoflann enabled ?

@jschueller
Copy link
Member Author

jschueller commented Apr 5, 2024

I can't disable nanoflann at runtime: either nanoflann is enabled at buildtime if available, either its the regular implementation. anyway they give the same results. but both are tested since nanoflann is not available on the mindeps job for example

@sofianehaddad
Copy link
Member

ok

@jschueller jschueller changed the title KDTree: Use nanoflann LOLA-Voronoi Apr 11, 2024
@jschueller jschueller marked this pull request as draft April 11, 2024 12:10
Copy link
Member

@regislebrun regislebrun left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have only checked the nanoflann part in details. IMO it should be part of the next release and should be merged, while the remaining of the code is for a longer term.

lib/src/Base/Algo/KDTree.cxx Outdated Show resolved Hide resolved
lib/src/Base/Graph/DrawableImplementation.cxx Outdated Show resolved Hide resolved
@jschueller jschueller mentioned this pull request Apr 26, 2024
@jschueller jschueller force-pushed the lola branch 7 times, most recently from eefa06e to 978069d Compare May 3, 2024 12:39
@jschueller jschueller force-pushed the lola branch 2 times, most recently from cb74eac to 51f664d Compare May 16, 2024 15:39
@@ -41,6 +41,7 @@
%include ChiSquare.i
%include ChiSquareFactory.i
%include CompositeDistribution.i
%include CombinationsDistribution.i
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be in the experimental module. I fixed it in the commit related to the MarginalUniformOrderStatistics, my bad

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, it would be easier to squash the CombinationsDistribution commits

.. math::
:nowrap:

\begin{eqnarray*}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These formulas are a copy/paste from KPermutationsDistribution, Anne has to change it into my branch soon

/** String converter */
String __repr__() const override;

// Generate new samples
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
// Generate new samples
// Generate a new sample

@m-balesdent
Copy link
Collaborator

I see that the SequentialSamplingAlgorithm.cxx is located in Uncertainty\Algorithm\Optimization.

IMO, this algorithm is quite generic and could be the base for other types of goal-oriented algorithms in the future.

For example, AK methods follow the same architecture.

Thus, maybe this base class could be moved outside the Optimization folder to anticipate future developments.

regislebrun and others added 4 commits June 13, 2024 10:07
This multivariate discrete distribution is the uniform distribution over the set of strictly increasing functions from {0,...,k-1} to {0,...,n-1} where k and n are natural numbers such that k<=n. It is also the uniform distribution over the subsets of size k of a set of size n.
Now it has a isStrictlyIncreasing() method.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants