1
0
mirror of https://github.com/kalmarek/PropertyT.jl.git synced 2024-12-25 18:25:30 +01:00
Commit Graph

474 Commits

Author SHA1 Message Date
fc54803b58 fix Memento deprecations; make clear when logger is global 2018-01-01 13:13:44 +01:00
7054fcffe2 remove old loging 2017-12-02 23:21:00 +01:00
29f347a228 only check the solution when not warmstarting 2017-12-01 18:28:48 +01:00
5e4b2203c3 Nemo.perm is a function in julia v0.6.0 2017-12-01 18:26:55 +01:00
53d413633b add warmstart to Settings 2017-12-01 18:26:08 +01:00
c849ead0ac look for warmstart in the solutions dir 2017-12-01 17:27:18 +01:00
e94662e615 fill the JuMP model variables from its internal model 2017-12-01 17:06:20 +01:00
659e5e03a1 grab warmstart, P, lambda from the solved model 2017-12-01 17:05:35 +01:00
bbcaec5bae build JuMP.Model first 2017-12-01 17:04:53 +01:00
56adccdfd1 using MathProgBase 2017-12-01 17:03:24 +01:00
e53486f394 since we warmstart internal model, optimize! it
JuMP.solve discards the internal one
2017-12-01 17:02:45 +01:00
10808583e3 Merge remote-tracking branch 'origin/enh/warmstart' into enh/warmstart-0.6
# Conflicts:
#	src/OrbitDecomposition.jl
2017-12-01 14:21:10 +01:00
02cdee0708 remove old check for the existence of solver.log 2017-12-01 14:13:19 +01:00
da6a2df814 save primal, dual solutions and slack for future warmstart 2017-12-01 14:12:52 +01:00
7ee7a30829 fix rankOne_projections for the new type of GroupRingElem 2017-11-17 15:29:09 +01:00
bdadac33f4 import Generic.perm 2017-11-17 15:28:11 +01:00
0d20df8207 add dim function for Characters 2017-11-16 20:01:12 +01:00
498a6700ec Merge branch 'master' into enh/julia-v0.6 2017-11-15 20:28:57 +01:00
39bef16aa7 filter Upis and dims at LOADTIME for only those which are non-zeros 2017-11-13 10:58:22 +01:00
04a13616c6 Allow different AbstractMathProgSolvers in Settings 2017-11-13 10:57:02 +01:00
a35122f8bb cosmetic 2017-11-08 15:40:38 +01:00
38ae1e0656 remove minimalprojections in favour of rankOne_projections 2017-11-08 15:40:22 +01:00
e746aaeeff rankOne_projections MUST be computed over exact field (e.g. Rational{Int}) 2017-11-08 15:39:51 +01:00
d7652c4e02 make AbstractCharacter just an abstract type 2017-11-08 15:38:51 +01:00
6f0087b8c7 indentation 2017-11-08 11:10:30 +01:00
ea6a6722be init model on number and size of SD blocks, not on Uπs 2017-11-08 10:02:38 +01:00
bcbf8a03c8 store the dense Uπs, sparsify at read-time 2017-11-08 10:01:45 +01:00
fe1e9ee37c let sparsify actually return sparse matrix 2017-11-08 10:00:34 +01:00
2aa82db1ac specify exact types for OrbitData 2017-11-08 09:58:37 +01:00
c1dc3850dd rename AutS -> autS 2017-11-08 09:57:51 +01:00
4ba2f54bb4 improve slightly orthSVD 2017-11-08 09:50:58 +01:00
3c51a463dc rename variables 2017-11-08 09:38:56 +01:00
ff14b33199 AutS_mreps -> reps 2017-11-08 09:37:39 +01:00
95e19e6f9d replace stray constraints_from_pm() -> constraints() 2017-11-08 09:36:34 +01:00
80deaebb9f remove matrix_reprs - we create them through perm_reprs 2017-11-08 09:35:26 +01:00
72261afdeb use preps_reprs instead of matrix_reprs
and save them in preps.jld
2017-11-08 09:33:00 +01:00
2d02c98947 faster & simpler Cstar_repr 2017-11-08 09:29:12 +01:00
e636c97738 unified marix_reps and perm_reps 2017-11-08 09:28:04 +01:00
0c9fb40e65 constraints_from_pm -> constraints
returns a vector of constraints, i.e. vectors of Tuple{Int, Int}
2017-11-08 09:25:40 +01:00
31715701cc de-thread Projections
to avoid UndefRefError: access to undefined reference in
rankOne_projections(::WreathProduct)
2017-11-07 09:44:10 +01:00
12c5c47ca8 add Nemo.isone(::GroupElem) 2017-11-06 11:31:15 +01:00
84813fedc4 indentation 2017-11-05 20:55:53 +01:00
093cced764 Merge branch 'enh/logtime' 2017-11-05 20:55:05 +01:00
bc8c28170e missing @logtime in orbit-check_property_T 2017-11-05 20:54:33 +01:00
cda741cc0c Merge branch 'enh/check_solution' 2017-11-05 19:30:58 +01:00
36e5979774 @logtime Q = sqrtm(P) 2017-11-05 19:30:11 +01:00
f7f9ceef07 pass only the i-th column in @parallel mode
this cuts on memory per worker drastically
2017-11-05 19:28:51 +01:00
c3ea80e6a9 replace remaining @time with '@logtime logger' 2017-11-05 16:38:51 +01:00
c0dc6937a5 cut on allocations in compute_SOS 2017-11-03 16:54:41 +01:00
fba2464a80 Specify concrete Interval types in augIdproj 2017-11-03 16:42:53 +01:00
a000290074 remove rationalization functions 2017-11-03 16:41:12 +01:00
79d5c7f933 rename parameter S -> T 2017-11-02 13:48:20 +01:00
1c67cdbcea remove timed_msg 2017-11-02 13:45:27 +01:00
3eab5b721a replace @timed by @logtime 2017-11-02 13:45:12 +01:00
7fa49756ba @logtime macro and time_string function 2017-11-02 13:44:08 +01:00
5bb311141d splaplacian doesn't have Id argument 2017-10-27 18:36:59 +02:00
ca18f75efd clean the main check_property_T in both cases 2017-10-27 18:36:32 +02:00
f206a13980 update function names 2017-10-27 18:35:50 +02:00
098a7ce948 check_distance_to... -> distance_to_...
and a lot of old code removal
2017-10-27 18:34:07 +02:00
4ae2c617cb Higher level compute_SOS 2017-10-27 18:33:18 +02:00
96ce02852f replace rationalise&project with interval&project 2017-10-27 18:32:58 +02:00
0225f38066 just two simple distance_to_cone functions
for Numbers and for Intervals
2017-10-27 18:30:59 +02:00
8defd71b59 new low-level compute_SOS function 2017-10-27 18:29:19 +02:00
d8b2f0ab30 increase sigfigs to 12; remove explicit precision setting
(it's 53 anyway);
2017-10-27 18:25:13 +02:00
b96b39e910 Revert "make initial P nullable"
This reverts commit 32c020fd88.
2017-10-27 18:20:28 +02:00
01e6625571 Revert "Allow for AbstractMathProfSolver in Settings"
This reverts commit 6cbf5e6944.
2017-10-27 18:19:53 +02:00
94c9a75a21 we don't need to pass id element -- it could be derived from S 2017-10-27 18:18:34 +02:00
32c020fd88 make initial P nullable 2017-10-27 18:18:34 +02:00
46a9150266 solver is not defined here 2017-10-27 18:18:34 +02:00
6cbf5e6944 Allow for AbstractMathProfSolver in Settings 2017-10-27 18:18:34 +02:00
bc2a827342 use prepath(sett)/fullpath(sett) instead of sett.name 2017-10-09 19:49:49 +02:00
b3f1961fbf use prepath/fullpath(::Settings) in OrbitData
and in create_SDP_problem generation
2017-10-09 19:49:01 +02:00
36a1151a73 add functions to produce prepath, fullpath out of Settings 2017-10-09 19:45:28 +02:00
6070bbf709 rename name -> prefix in filenames functions 2017-10-09 19:44:54 +02:00
4c777073a7 Merge branch 'master' of https://git.wmi.amu.edu.pl/kalmar/PropertyT.jl 2017-10-09 18:08:57 +02:00
d7bc94b64c @parallel compute_SOS 2017-10-09 18:08:22 +02:00
344e11a974 overwrite Q to allow gc 2017-10-09 18:06:29 +02:00
0fabd21e53 much faster Cstar_repr 2017-10-03 14:46:05 +02:00
dbca3945a8 call flush_cstdio() AFTER redirect_stdout
to fix SCS log buffering issue
2017-09-19 17:38:16 +02:00
154a66939f call flush_cstdio() AFTER redirect_stdout
to fix SCS log buffering issue
2017-09-19 17:37:35 +02:00
4e3bcbba6e update to the new Nemo.Generic module 2017-09-15 18:19:20 +02:00
5ac2876e31 update to julia v0.6.0 2017-09-15 18:16:31 +02:00
0693455656 Merge branch 'master' of https://git.wmi.amu.edu.pl/kalmar/PropertyT.jl 2017-09-10 13:39:52 +02:00
b46ed5ae96 Revert "ccall((:printf, "libc"), ...) produces segfault for large examples??"
This reverts commit 69a3ab8d87.
This should be commented on machine-basis
2017-09-09 20:47:12 +02:00
d8f04957b6 replace isfile by exists
which returns true also for symlinks
2017-09-06 16:02:46 +02:00
a61cff986e verbose&check for possible rank reduction in Uπs 2017-08-27 21:25:12 +02:00
3b723e7f0e Add logging when verbose=true 2017-08-27 21:23:42 +02:00
6df4c790c0 Sparsification of a dense matrix is not required to be rank preserving
This can bite!
2017-08-27 21:23:14 +02:00
972697e2ba cosmetic 2017-08-27 20:24:18 +02:00
be1251f274 Merge branch 'enh/logging' 2017-08-27 19:57:16 +02:00
b781dae356 @logtime(logger, ex) macro 2017-08-27 19:56:35 +02:00
69a3ab8d87 ccall((:printf, "libc"), ...) produces segfault for large examples?? 2017-08-27 19:13:20 +02:00
f543d847ea Save memory: ΔandSDPconstraints takes a lot of it 2017-08-27 19:12:21 +02:00
830ef95181 Merge branch 'enh/aug_correction' 2017-08-27 19:11:11 +02:00
757f89e54b no need to limit precision in rationalise_and_project
since we project directly to intervals the computational load is negligible
2017-08-27 19:09:56 +02:00
2724612ea3 better logging in Orbit-wise.jl 2017-08-27 19:06:17 +02:00
0c40e16e9e fix double assignment of constraints 2017-08-27 19:01:32 +02:00
8a6707eddd rework addconstraints! with progress printing 2017-08-27 19:00:49 +02:00
db55927729 sparsify! in transform and in constrLHS 2017-08-27 18:59:16 +02:00
7dbd11bebf eps-sparsify for both sparse and dense matrices 2017-08-27 18:58:13 +02:00
151a6ff6da better density for dense matrices 2017-08-27 18:57:27 +02:00
7fd18e9e57 logging 2017-08-27 18:50:56 +02:00
56d944e8af correct columns of Q directly to intervals
hopefully containing 0
2017-08-27 18:46:31 +02:00
9840268250 use threaded version of matrix reps 2017-08-27 18:37:44 +02:00
f3d813cb67 reworked reconstruct_sol with axpy! 2017-08-27 18:37:09 +02:00
33dc278762 threaded matrix_reps and perm_reps 2017-08-27 18:35:35 +02:00
6061f731b3 threaded generation of matrix reps 2017-08-27 18:32:50 +02:00
0cc0ad94a6 threaded orbit_decomposition 2017-08-27 18:32:19 +02:00
9328fa9187 single-threaded compute_SOS with @parallel option 2017-08-27 18:30:49 +02:00
9a62cc2444 threaded minimalprojections 2017-08-27 18:29:38 +02:00
94074750cf limit the accuracy of rationalization to sensible value
to avoid running out of memory!
2017-08-04 21:27:10 +02:00
8f88035bb7 in-place projection to augmentation ideal 2017-08-04 20:50:06 +02:00
c4dcaf25fe @parallelising computation of SOS 2017-08-04 20:47:38 +02:00
7d42f28b29 put rationalization and projection to augmentation in a separate function
to have gc collect unused matrices of Rationals after this is finished
2017-08-04 20:36:25 +02:00
845d7733a4 indentation 2017-08-04 20:33:21 +02:00
9ed8679c95 simplify groupring_square 2017-08-04 20:33:02 +02:00
b97a0e30dd threaded matrix_reps 2017-08-04 18:25:10 +02:00
666fac1775 Threaded version of projection to the augmentation ideal 2017-08-04 15:30:12 +02:00
47a41ac9fe Threaded version of reconstruct_sol 2017-08-03 11:35:34 +02:00
a460b71db9 redirect stderr to full_log 2017-08-03 11:34:38 +02:00
a6eed4cd11 add @time to reconstruct_sol 2017-08-01 10:30:33 +02:00
1f508ea85c replace fixed rankOne_projections with automatically generated ones 2017-08-01 10:29:38 +02:00
c86f46666a Cstar_reprs are usually sparse 2017-07-31 12:13:45 +02:00
cda9538653 fix Cstar_repr: explicit Float64 conversion 2017-07-31 12:13:14 +02:00
15140d4e39 use sparsified U\pi's by default 2017-07-28 12:45:04 +02:00
f6674337ed sparsify only once during the reconstruction 2017-07-28 12:44:25 +02:00
706097931a fix: central_projection asks for AbstractCharacter 2017-07-28 12:25:14 +02:00
4bb52bd34b my Characters return Julia's Ints 2017-07-27 22:06:32 +02:00
93ba763402 Allow evaluation of Characters on GroupRingElems 2017-07-27 22:06:02 +02:00
536542c3a6 Introduce {Perm,DirectProd}Character <: AbstractCharacter <: Function 2017-07-27 22:05:15 +02:00
b89598c67c slight(?!) optimisation to Cstar_repr 2017-07-27 22:02:07 +02:00
0a3b5b227d accommodate latest changes in Nemo characters 2017-07-27 20:36:22 +02:00
9d3eec6812 fix: mixed-up projections 2017-07-27 20:35:39 +02:00
582b7bc3c7 avoid transposing Us for every constraint 2017-07-26 18:02:21 +02:00
5332d806cc Merge branch 'enh/sparsification' 2017-07-26 12:59:09 +02:00
335a2aa216 change rounding mode to :tight 2017-07-26 12:58:39 +02:00
66f860bac1 sparsify both on the forward and backward transform 2017-07-26 12:15:31 +02:00
3ff649683a FIXXX: clamp to 0 only those eps-close to 0, not < eps 2017-07-26 12:12:58 +02:00
33b45dd518 merge two sparsify functions 2017-07-26 10:29:11 +02:00
da32893d64 move setup-logging to the top of the file 2017-07-21 17:12:27 +02:00
a82eb13ef5 use views and broadcasting 2017-07-21 17:11:58 +02:00
95bc1eaff5 make EOI a one-liner 2017-07-21 17:11:25 +02:00
e74b4c49ef use the new definition of base-less mul! in GroupRings 2017-07-21 17:10:52 +02:00
b8a40c42c8 indentation 2017-07-17 15:40:54 +02:00
5d6074c368 rework ranOne_projections(::WreathProduct...) using emb functions
Still messy
2017-07-17 12:28:17 +02:00
6ecd63197b account for changes in order of characters 2017-07-17 12:27:28 +02:00
4e48917a38 characters of symmetric group are now implemented in Nemo 2017-07-17 12:26:10 +02:00
d7b7759e5d fix: delete superfluous parenthesis 2017-07-17 10:28:18 +02:00
d603bbd329 cut on allocating another GrupRingElement 2017-07-17 10:18:26 +02:00
143695ed24 Revert "parametrise central_projection by the type of character"
This reverts commit 820517a04e.
2017-07-17 10:12:09 +02:00
820517a04e parametrise central_projection by the type of character 2017-07-17 09:43:19 +02:00
05691b5202 Merge branch 'enh/S_5projections' of https://git.wmi.amu.edu.pl/kalmar/PropertyT.jl into enh/S_5projections 2017-07-17 09:41:05 +02:00
aec153ca21 cosmetic 2017-07-17 09:39:46 +02:00
cb10afe6f6 save one value computation 2017-07-16 21:42:53 +02:00
680d888b68 keep permtype consistent with partitions (i.e. rev-sorted) 2017-07-13 17:47:40 +02:00
af74ae6fb0 add hand-crafted projections for PermutationGroup(5) 2017-07-12 20:23:27 +02:00
5906715902 use T to specify type of projection elements 2017-07-12 20:23:00 +02:00
8819269689 central projections tend to be dense 2017-07-12 20:18:42 +02:00
451245419c add characters for PermutationGroup(5) 2017-07-12 20:15:31 +02:00
c056c99c1f use dictionary for characters values 2017-07-12 20:15:09 +02:00
9d8f001363 use sign(::perm) 2017-07-12 20:11:43 +02:00
78490e6ca8 visual changes to central projection 2017-07-09 14:55:19 +02:00
94fd8f0bf9 fix: can not assign in short-circut eval 2017-07-06 09:03:05 +02:00
7a39775fff Merge branch 'master' into enh/sparsification 2017-07-05 13:24:21 +02:00
94607bfaac don't redirect errors to full_log 2017-07-05 13:23:54 +02:00
8810836fab specialise that mreps should be a dict 2017-07-05 13:23:26 +02:00
ca3e606ab6 use the dot-syntax to broadcast abs 2017-07-05 13:22:59 +02:00
b3f596d8d8 save sparsified U\pis for futher experiments 2017-07-05 13:19:41 +02:00
e648d2c370 another sparsify 2017-07-05 13:19:12 +02:00
c0e2577684 sparsify by default 2017-07-05 13:14:58 +02:00
760270d2e0 new, unified sparsify 2017-07-05 13:14:34 +02:00
f3874828e7 increase the default precision in check_distance_to_positive_cone 2017-07-05 13:03:25 +02:00
dad6576365 better specialised groupring_square 2017-07-05 12:28:29 +02:00
6b9d2b5d28 update to the latest version of IntervalArithmetic 2017-07-05 12:24:49 +02:00
bfdc08e91d require IntervalArithmetic v0.9.1 2017-06-25 09:34:16 +02:00
310165b864 broader arrays in signature of distance_to_cone 2017-06-25 09:33:25 +02:00
0e89b12e90 move functions 2017-06-25 09:31:52 +02:00
ac18923631 use IntervalArithmetic instead of ValidatedNumerics 2017-06-25 09:29:31 +02:00
ff4f9e7857 faster version of reconstruct_sol 2017-06-23 13:38:45 +02:00
fd32ddbe82 use the given precision as rationalisation precision 2017-06-23 13:30:37 +02:00
709f030cb5 Nemo is already in scope 2017-06-22 21:06:51 +02:00
b7d9731f8b update to IntervalArithmetic v0.10.0 2017-06-22 15:48:06 +02:00
1053a28970 remove left-over usings/imports 2017-06-22 15:31:55 +02:00
4bde63f580 final integration via includes 2017-06-22 15:15:55 +02:00
be1c473e4a cleaning using and imports 2017-06-22 15:15:43 +02:00
3c0ecd2e73 DirectProducts and WreathProducts are in Groups now 2017-06-22 15:14:15 +02:00
dca65e571e multiple dispatch for check_property_T 2017-06-22 15:13:37 +02:00
b881a40721 move functions around 2017-06-22 15:11:14 +02:00
f6155d8382 turn init_OrbitData into constructor 2017-06-22 15:10:26 +02:00
3fa7491cb5 mv oPropertyT -> Orbit-wise 2017-06-22 14:40:55 +02:00
77121c32eb add orbit-related code 2017-06-22 14:12:35 +02:00
e21f97f541 mv sdps -> SDPs 2017-06-22 14:11:33 +02:00
cd24767691 mv checksolution -> CheckSolution 2017-06-22 14:11:00 +02:00
21e6811292 Move sqrtm out of check_distance_to_positive_cone 2017-06-22 11:56:46 +02:00
39732bb627 make splaplacian spvector of Float64 by default 2017-06-09 09:36:20 +02:00
d98d68004b len -> wlen is no longer a kwarg, and has no default value 2017-06-09 09:35:33 +02:00
aae4ee57c7 deparametrise distance_to_cone to provide generic version 2017-06-08 21:47:09 +02:00
98744d4f30 we need Flota64 laplacian 2017-06-08 21:46:07 +02:00
3c0ae5baf0 dispatch splaplacian on GroupRing{T} type
with multiplicative unit for Rings
2017-06-08 21:45:46 +02:00
a68e546b7e pm is saved as pm.jld; Delta.coeffs as delta.jld 2017-06-07 00:23:51 +02:00