Commit graph

856 commits

Author SHA1 Message Date
e7ede3e39b Add psemek_glob_resources macro 2022-02-06 13:51:41 +03:00
681bc5cc25 Fix ui frame_impl size constraints 2022-02-05 20:44:17 +03:00
5779680e1d Fix ui::slider behavior if reshape occurs while user is changing value 2022-02-05 12:43:21 +03:00
323c5a714f Support setting max events per frame in ui_scene derived classes 2022-02-05 12:42:45 +03:00
29bdfb4dd2 Add geom::box comparison operators 2022-02-05 12:38:51 +03:00
d577282fce Make ui controller root_proxy post on_reshape instead of calling it directly 2022-02-05 12:38:35 +03:00
d653cb1b8b Restrict max events per frame in UI event loop 2022-02-05 12:38:06 +03:00
11614b3c1b Support max event count in async::event_loop::pump 2022-02-05 12:37:22 +03:00
834d9408ff Add psemek_declare_enum macro for common enum utilities 2022-02-04 18:01:07 +03:00
a01bd019f8 Support delaying posted callbacks until a ui element gets attached to an event loop 2022-02-02 22:05:40 +03:00
e4bd58c5ef Support not skipping extra spaces in ui::label 2022-02-02 19:45:32 +03:00
460632a118 Fix util::timer: add timer duration to tracked time point instead of replacing it with now() 2022-02-02 19:45:27 +03:00
d369abc61b Support retrieving nn gradient wrt inputs in backpropagation & add tests 2022-01-23 19:37:42 +03:00
790deb19ff Add relative error closedness check in tests 2022-01-23 19:36:55 +03:00
7040faecd4 Add identity activation function to ml 2022-01-23 19:36:38 +03:00
3dbbcadfe3 Add generic backpropagation (supporting any loss function, not only l2) 2022-01-21 18:42:48 +03:00
8630525dcf Add ml::neural_net_learner implementation with backpropagation, gradient descent, and tests 2022-01-21 12:12:38 +03:00
def0615baa Add ml::activation_type::count 2022-01-21 12:12:08 +03:00
d410c970e6 Add an utility function to compute l2 loss in ml 2022-01-21 12:11:38 +03:00
6d40e4dd98 Add some empty lines 2022-01-21 12:11:14 +03:00
b47b6aa224 Fix ml::unknown_activation_type overriding what() 2022-01-21 12:10:51 +03:00
c6f01aad81 Support logging in tests 2022-01-21 12:10:12 +03:00
454d975ba6 Make tests expect_close macro show actual values of compared expressions 2022-01-21 12:09:53 +03:00
73820d4844 Support custom sinks in logging 2022-01-21 12:09:10 +03:00
88fa197f8c Add log::level comparison operators 2022-01-21 12:07:53 +03:00
134ec550f5 Add util::span::front,back 2022-01-20 20:32:38 +03:00
e5ba642c5d Fix util::ecs tests 2022-01-20 20:32:22 +03:00
11b2d002ba Move neural net errors to a separate file 2022-01-20 20:07:36 +03:00
2f1afc368e Rename evaluate -> apply 2022-01-20 14:19:10 +03:00
3a3fffa232 Add neural net random initialization 2022-01-20 14:16:54 +03:00
587a80b0de Move neural net stuff to a separate subdirectory of ml 2022-01-20 14:16:22 +03:00
d37edd207b Make ml::neural_net return spans 2022-01-20 13:52:13 +03:00
0ab0ce9134 Remove unused include 2022-01-20 13:48:25 +03:00
434c327a9d Throw an exception if number of neural net layer sizes & activation types do not match 2022-01-20 13:46:09 +03:00
b2fea97c8f Add new library for ML stuff & a neural net implementation 2022-01-19 20:12:15 +03:00
889fce973b Make pcg not depend on boost random 2022-01-19 15:46:58 +03:00
fdaaf58d20 Add geom::quaternion::i,j,k 2022-01-12 19:22:10 +03:00
7babed1c57 Fix geom::acos_over_sqrt_1_minus_x2 to allow arguments slightly larger than 1 to prevent NaNs 2022-01-12 19:18:24 +03:00
efc22a5bd7 Add stable implementation of acos(x)/sqrt(1-x*x) 2022-01-10 17:45:43 +03:00
23551f681d Add geom::log(quaternion) 2022-01-09 19:21:35 +03:00
ae4ee3488a Replace cg::body_traits::dimension with constexpr dimension template variable 2022-01-08 15:44:57 +03:00
eff7f397b4 Add default implementation of cg::vertices 2022-01-08 15:44:28 +03:00
4c48790497 Add quaternion/scalar operator & rename quaternion norm -> length 2022-01-07 23:51:34 +03:00
1f0e4e545e Add quaternion derivative to angular momentum transform matrix 2022-01-07 23:49:14 +03:00
385efe5ff9 Fix cg::edges 2022-01-07 23:48:43 +03:00
29e62192ce Add begin(simplex) & end(simplex) 2022-01-07 23:48:30 +03:00
cae538d7a5 Add geom::matrix::diagonal 2021-12-30 17:21:10 +03:00
64b3e876ad Add rotate(quat,vector,quat) 2021-12-27 15:14:23 +03:00
36854905fc Add quaternion += and -= 2021-12-27 11:49:12 +03:00
0a2cfda21f Use conjugate instead of inverse in quaternion rotation 2021-12-26 10:46:37 +03:00