Commit Graph

255 Commits

Author SHA1 Message Date
Mael f7dee23b5d Remove erroneous 'const'
The concept `Kernel::ConstructPoint_3::operator()` is not required to be const.
2020-05-14 09:54:45 +02:00
Mael Rouxel-Labbé 0e7cf9da70 Factorize functor construction 2020-05-14 09:42:40 +02:00
Mael bd48aed9b8
Use the traits class to construct points 2020-05-13 17:59:22 +02:00
Mael Rouxel-Labbé bc076f14cb Update OBB NPs 2020-05-12 15:34:34 +02:00
Mael Rouxel-Labbé 038869cab9 Merge remote-tracking branch 'cgal/master' into CGAL-Improve_NP_doc_presentation-GF 2020-05-12 15:12:21 +02:00
Mael Rouxel-Labbé c2f7b46c06 Avoid needless loss of precision with BBox_3 usage 2020-05-06 12:11:03 +02:00
Mael Rouxel-Labbé 6fe47eddbe Make OBB work with EPECK_with_sqrt 2020-05-06 12:10:48 +02:00
Simon Giraudot 7253f16801 Update new package OBB's cmake scripts with Eigen imported target 2020-04-21 15:03:48 +02:00
Maxime Gimeno e9d41d7b7d Fixes for min/max 2020-04-21 11:38:37 +02:00
Sébastien Loriot c253679b2d unify np sentence 2020-04-18 16:27:58 +02:00
Mael Rouxel-Labbé 74bda61398 Fixes after review 2020-04-16 17:55:45 +02:00
Mael fdceee0ff4 Rephrase awkward construction 2020-04-16 17:55:45 +02:00
Mael Rouxel-Labbé 626c3b5485 Tiny doc fix 2020-04-16 17:55:45 +02:00
Mael Rouxel-Labbé 070dae5565 Doc fixes 2020-04-16 17:55:44 +02:00
Sébastien Loriot 1ac0d9995f Add actual benchmark charts 2020-04-16 17:55:41 +02:00
Mael Rouxel-Labbé 615327e168 Enhance OBB benchmark 2020-04-16 17:46:05 +02:00
Mael Rouxel-Labbé 315d610b27 Add OBB user manual 2020-04-16 17:46:01 +02:00
Mael Rouxel-Labbé 21688713f5 Minor fixes 2020-04-11 20:44:57 +02:00
Mael Rouxel-Labbé cbcffe3f61 Remove data file from /benchmarks 2020-04-11 20:44:27 +02:00
Mael Rouxel-Labbé 8648922d53 Further disable tests
Some debug platforms are snails...
2020-04-01 09:36:21 +02:00
Mael Rouxel-Labbé 1ea9258c1d Rephrase error message 2020-04-01 09:36:13 +02:00
Mael Rouxel-Labbé 3e50e546f4 Reduce the number of iterations in tests 2020-03-31 09:30:35 +02:00
Mael Rouxel-Labbé d813d7e1b3 Fix maybe-uninitialized warning 2020-03-31 09:30:06 +02:00
Mael 91e4180264
Modify anchors 2020-03-30 09:48:57 +02:00
Mael Rouxel-Labbé 882199da57 Fix syntax errors 2020-03-30 09:11:14 +02:00
Mael f0f2799d3b
constexpr -> const to please some compilers 2020-03-28 12:18:16 +01:00
Mael 1494ffec88
Fix using removed variables 2020-03-28 12:12:45 +01:00
Mael b0379f54bd
Use Traits::Vector to accelerate 2D optimization 2020-03-28 12:11:17 +01:00
Mael Rouxel-Labbé 11586e0555 Avoid computing the exact fitness value when possible
We don't care about the exact value if it's already worse than
the value to which we compare.
2020-03-27 19:18:49 +01:00
Mael Rouxel-Labbé b3968d2b0d Speed up fitness function computations 2020-03-27 18:19:39 +01:00
Mael Rouxel-Labbé 4b04b752e5 Update dependencies 2020-03-26 08:59:39 +01:00
Mael Rouxel-Labbé 546f943c6e Update tests 2020-03-25 18:48:44 +01:00
Mael Rouxel-Labbé 79aa6a755a Enable passing a mesh as output 2020-03-25 18:47:46 +01:00
Mael Rouxel-Labbé 34dd14ced4 Misc verbose changes 2020-03-25 18:47:30 +01:00
Mael Rouxel-Labbé 31e478a33c Some robustness for degenerate data sets 2020-03-25 18:47:05 +01:00
Mael Rouxel-Labbé ff10c1594e Remove useless data files 2020-03-25 18:46:33 +01:00
Mael Rouxel-Labbé 6a2c04c3ee Update algorithm parameters to sensible values
Can now be put to values close to what the paper recommends
2020-03-25 15:59:06 +01:00
Mael Rouxel-Labbé a2f8dcf034 Misc minor fixes 2020-03-25 15:58:23 +01:00
Mael Rouxel-Labbé fbfec59341 Add post-processing: 2D optimization along OBB axes 2020-03-25 15:25:59 +01:00
Mael Rouxel-Labbé 0c2b32ea48 Don't generate a new population at each generation...
Obviously, the algorithm is now much more efficient.
2020-03-25 14:47:57 +01:00
Mael Rouxel-Labbé 09c9c3044d Fix not propagating traits to CH3 code 2020-03-24 15:54:44 +01:00
Mael Rouxel-Labbé 170e3dd68b Fix traits model 2020-03-24 15:54:32 +01:00
Mael Rouxel-Labbé d19f48a4e1 Misc improvements 2020-03-24 15:50:16 +01:00
Mael Rouxel-Labbé 2cce770aab Add missing random mutations 2020-03-24 15:39:22 +01:00
Mael Rouxel-Labbé 631c87e933 OBB's concept must refine ConvexHullTraits_3 2020-03-24 15:38:02 +01:00
Mael Rouxel-Labbé 5069bcf813 Minor internal API changes 2020-03-24 11:54:15 +01:00
Mael Rouxel-Labbé 6f90060e7d Flush before std::exit (otherwise nothing is printed) 2020-03-24 11:37:55 +01:00
Mael Rouxel-Labbé 5a7204decb Use a random seed by default (and not rng(0)) 2020-03-24 11:35:09 +01:00
Mael Rouxel-Labbé 64d23ad89a Example improvements 2020-03-24 11:30:51 +01:00
Mael Rouxel-Labbé dc3c63e2fe Fix bad list initialization 2020-03-24 11:24:59 +01:00
Mael Rouxel-Labbé cdefac0821 Update OBB's Benchmarks/Examples/Tests/CMakeLists.txt 2020-03-24 11:24:28 +01:00
Mael Rouxel-Labbé 06df761de1 Use a random seed by default (instead of a fixed seed of 0) 2020-03-24 10:51:27 +01:00
Mael Rouxel-Labbé 25ac723c65 Don't recompute the weight every time 2020-03-24 10:51:10 +01:00
Mael Rouxel-Labbé f2303df4df Misc minor changes 2020-03-24 10:50:16 +01:00
Mael Rouxel-Labbé dceea8a20e Remove unused variable 2020-03-24 10:25:28 +01:00
Mael Rouxel-Labbé 8652d9ada3 General improvements to improve speed (x3 faster with this) 2020-03-23 18:31:09 +01:00
Mael Rouxel-Labbé 3c5df657d4 Fix namespace of GetPointMap 2020-03-23 08:59:56 +01:00
Mael Rouxel-Labbé dd2adcb581 Tiny internal function API change 2020-03-13 13:25:48 +01:00
Mael Rouxel-Labbé 8783547205 Make traits function static 2020-03-13 13:24:26 +01:00
Mael Rouxel-Labbé a7f0473c5c Fix most of the tests
(at least the compilation...)
2020-03-13 13:24:03 +01:00
Mael Rouxel-Labbé 9df21ba79d Add the new examples to examples.txt 2020-03-13 12:08:55 +01:00
Mael Rouxel-Labbé c545e5ebb2 Remove python script from benchmarks 2020-03-13 12:03:53 +01:00
Mael Rouxel-Labbé 48a39929ff Illustrate 'use_convex_hull' named parameter usage in an example 2020-03-13 12:00:13 +01:00
Mael Rouxel-Labbé ff8b274089 Keep a single (fixed) benchmark program 2020-03-13 11:59:47 +01:00
Mael Rouxel-Labbé 9020240152 Remove useless typedefs 2020-03-13 11:58:20 +01:00
Mael Rouxel-Labbé 85fd88ac5c Remove bench that is just a duplicate of an example 2020-03-13 11:02:50 +01:00
Mael Rouxel-Labbé d9c7814f72 Add default constructor to functor to please the AABB tree 2020-03-13 10:42:31 +01:00
Mael Rouxel-Labbé 8e00ffff21 Enable passing a point_map in complement to the range 2020-03-12 22:21:45 +01:00
Mael Rouxel-Labbé 2453e7f0ea Add two new examples to OBB/examples 2020-03-12 22:21:11 +01:00
Mael 384123b3b3
Add missing space 2020-02-03 13:19:44 +01:00
Mael Rouxel-Labbé 24a696d0ae Remove a dot 2020-02-03 11:05:53 +01:00
Mael Rouxel-Labbé 5f1eed5048 Doc fixes 2020-01-31 12:14:11 +01:00
Mael Rouxel-Labbé c483680ad8 Fixes after review #2 2020-01-29 13:18:42 +01:00
Mael Rouxel-Labbé ae19de584a Change after review 1
https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Optimal_bounding_box/1st_round/Answer_to_review_1
2020-01-10 10:41:04 +01:00
Mael Rouxel-Labbé a9b1701980 Move concept out of ::CGAL:: namespace 2020-01-07 17:00:45 +01:00
Mael Rouxel-Labbé f883bc9c23 Fix some header includes 2020-01-07 15:59:21 +01:00
Mael Rouxel-Labbé 011bdc865b Various minor doc fixes 2020-01-07 15:52:22 +01:00
Mael Rouxel-Labbé 99128f9c20 Add point_map to OBB's NP 2019-12-12 12:30:16 +01:00
Mael Rouxel-Labbé 03aad10541 Generalize oriented_bounding_box to Range + point_map
Doc only, implementation later
2019-12-12 12:26:27 +01:00
Mael Rouxel-Labbé 528b9b6949 Misc tiny changes 2019-12-12 12:25:46 +01:00
Mael Rouxel-Labbé ba99311da5 Simplify OBB concept, remove useless determinant() need 2019-12-12 11:19:13 +01:00
Mael Rouxel-Labbé aa8efee5c1 Fix concept link 2019-12-12 11:17:36 +01:00
Mael Rouxel-Labbé b637512952 Tiny concept unification 2019-12-12 09:53:45 +01:00
Mael d2072be626
Add missing license 2019-12-11 09:08:29 +01:00
Mael Rouxel-Labbé 1ef4ac905b Clean example 2019-12-10 15:57:58 +01:00
Mael Rouxel-Labbé 47b483a11e Tiny doc fixes 2019-12-10 15:57:21 +01:00
Mael Rouxel-Labbé f476132cab Partial test fixes 2019-12-10 15:50:50 +01:00
Mael Rouxel-Labbé feddb97792 Update dependencies 2019-12-10 15:19:52 +01:00
Mael Rouxel-Labbé ffc7e9a934 Minor doc changes 2019-12-10 14:40:47 +01:00
Mael Rouxel-Labbé bb7bb9721b Traits doesn't need to refine Kernel 2019-12-10 13:41:59 +01:00
Mael Rouxel-Labbé 4020a8fb0d Add biblio for the paper 2019-12-10 13:41:37 +01:00
Mael Rouxel-Labbé 0ae811604a Update code/doc after pre-review 2019-12-10 13:32:55 +01:00
Mael Rouxel-Labbé db943b3b6f Doc changes 2019-12-09 19:10:28 +01:00
Mael Rouxel-Labbé 6923b144f8 Add optimal bounding box traits concept 2019-12-09 18:49:22 +01:00
Mael Rouxel-Labbé 566b6e89fb Doc changes 2019-12-09 18:43:46 +01:00
Mael Rouxel-Labbé 9af73856a7 Add missing header includes 2019-12-09 16:38:42 +01:00
Mael Rouxel-Labbé 325a95f5f1 Add missing */ 2019-12-09 16:38:25 +01:00
Mael Rouxel-Labbé bafb8e2f7e Add some documentation 2019-12-09 16:34:22 +01:00
Mael Rouxel-Labbé 60845f601d Move files to better locations 2019-12-09 12:46:01 +01:00
Mael Rouxel-Labbé da726d1c3c Add a basic example 2019-12-09 12:27:27 +01:00
Mael Rouxel-Labbé 51e965e1dc Rewrite most of OBB code to fix design issues and bugs 2019-12-09 12:25:38 +01:00
Mael Rouxel-Labbé cd4123bf2c Clean code (partial) 2019-12-04 11:33:36 +01:00
Mael Rouxel-Labbé 96088397a9 Add missing package info 2019-10-20 21:03:00 +02:00
Mael Rouxel-Labbé 2ef6e31010 Add doc skeleton 2019-10-20 21:02:27 +02:00
Mael Rouxel-Labbé 1348d433f0 Update CMakeLists 2019-10-20 20:54:20 +02:00
Mael Rouxel-Labbé 06b167d6cc Change maintainer 2019-10-20 20:45:13 +02:00
Mael Rouxel-Labbé f6f0f98853 Added an error message when no traits are provided 2018-07-08 14:18:41 +02:00
Mael Rouxel-Labbé 53eff19e67 Renamed functions 2018-07-08 14:18:41 +02:00
Konstantinos Katrioplas 280568e1dd move nelder-mead function out of evolution class into the nelder_mead_functions.h 2018-06-12 12:14:22 +02:00
Mael Rouxel-Labbé f8a3b552d3 Cosmetic changes 2018-06-11 16:54:37 +02:00
Mael Rouxel-Labbé 9d5a83ebf6 Renamed header 2018-06-11 16:32:59 +02:00
Konstantinos Katrioplas f60ca1c3f9 remove warnings 2018-06-11 16:16:36 +02:00
Konstantinos Katrioplas 6fd928def0 added forgotten const qualifiers 2018-06-11 14:46:56 +02:00
Konstantinos Katrioplas 7803481af9 requested changes: impoving API with default Linear algebra traits, better use of template parameters at free functions, prefer using convex hull overload which does not depend on the kernel. 2018-06-11 14:46:56 +02:00
Andreas Fabri d35b15bf08 typo 2018-06-11 14:46:56 +02:00
Andreas Fabri c5e5ad7015 Move #include 2018-06-11 14:46:56 +02:00
Andreas Fabri 8a544b8dad Move typedef to the right scope 2018-06-11 14:46:56 +02:00
Andreas Fabri 4defa4ebbc one less size_t/int warning 2018-06-11 14:46:55 +02:00
Andreas Fabri 0640743adc Don't copy the vector 2018-06-11 14:46:55 +02:00
Andreas Fabri ff07272ef6 Use CGAL::abs 2018-06-11 14:46:55 +02:00
Andreas Fabri fe2f1b7e9d fix include guards 2018-06-11 14:46:55 +02:00
Konstantinos Katrioplas ca1d427dc5 remove mutable and fix small typo 2018-06-11 14:46:55 +02:00
Konstantinos Katrioplas 284c2d9d33 python script setting up path 2018-06-11 14:46:55 +02:00
Konstantinos Katrioplas 00c782b277 documentation 2018-06-11 14:46:55 +02:00
Konstantinos Katrioplas 0c215dfecb use a matrix with dynamic rows and columns are run time for points, because it is a little faster than fixed columns 2018-06-11 14:46:55 +02:00
Konstantinos Katrioplas 820e9c6098 return precompiled 3-column row only & some cleaning 2018-06-11 14:46:55 +02:00
Konstantinos Katrioplas 1ea3fc26c9 I hate c++ 2018-06-11 14:46:54 +02:00
Konstantinos Katrioplas bb284396d2 benchmark code and benchmark on fitness function 2018-06-11 14:46:54 +02:00
Konstantinos Katrioplas d1865ac913 draw perfomance graph 2018-06-11 14:46:54 +02:00
Konstantinos Katrioplas 819e38d6a1 making sure that all matrix allocations happen at compile time when possible 2018-06-11 14:46:54 +02:00
Konstantinos Katrioplas 10c87d3326 API linear algebra parameter 2018-06-11 14:46:54 +02:00
Konstantinos Katrioplas 62327b28f0 cleaning 2018-06-11 14:46:54 +02:00
Konstantinos Katrioplas 63e1a12924 clear warnings & clean eigen eigen linear algrebra traits 2018-06-11 14:46:54 +02:00
Konstantinos Katrioplas 5380ebac1b eigen linear algebra traits 2018-06-11 14:46:54 +02:00
Konstantinos Katrioplas 2571c7719e abstract interface for eigen dense matrix 2018-06-11 14:46:53 +02:00
Konstantinos Katrioplas 8f497d664f benchmarks 2018-06-11 14:46:53 +02:00
Konstantinos Katrioplas 7b79685c27 cleaning 2018-06-11 14:46:53 +02:00
Andreas Fabri 0fef43ef03 Do not do a matrix-matrix multiplication, but do N matrix-vector multiplications as we only want min and max 2018-06-11 14:46:53 +02:00
Andreas Fabri eb9cb4b8eb VC++ has a problem accessing matrix entries with operator() 2018-06-11 14:46:53 +02:00
Konstantinos Katrioplas 91e49fe995 cleaning 2018-06-11 14:46:53 +02:00
Konstantinos Katrioplas 37446e4672 cleaning 2018-06-11 14:46:53 +02:00
Konstantinos Katrioplas 319c8079ad stopping criteria on generations 2018-06-11 14:46:53 +02:00
Konstantinos Katrioplas f2c774d327 use convex hull 2018-06-11 14:46:52 +02:00
Konstantinos Katrioplas 07a6d3ae4d cleaning 2018-06-11 14:46:52 +02:00
Konstantinos Katrioplas 01b6ce0c57 polyhedron demo plugin 2018-06-11 14:46:52 +02:00
Konstantinos Katrioplas 617051fbf5 tests 2018-06-11 14:46:52 +02:00
Konstantinos Katrioplas ea994650ec it works! 2018-06-11 14:46:52 +02:00
Konstantinos Katrioplas 1ef55a86f8 visualization 2018-06-11 14:46:52 +02:00
Konstantinos Katrioplas efbb1be890 genetic algorithm 2018-06-11 14:46:52 +02:00
Konstantinos Katrioplas 704c3b77c6 nelder-mead algorithm 2018-06-11 14:46:52 +02:00