{"action":"created","issue":{"url":"https://api.github.com/repos/robertfeldt/BlackBoxOptim.jl/issues/15","labels_url":"https://api.github.com/repos/robertfeldt/BlackBoxOptim.jl/issues/15/labels{/name}","comments_url":"https://api.github.com/repos/robertfeldt/BlackBoxOptim.jl/issues/15/comments","events_url":"https://api.github.com/repos/robertfeldt/BlackBoxOptim.jl/issues/15/events","html_url":"https://github.com/robertfeldt/BlackBoxOptim.jl/pull/15","id":92872905,"number":15,"title":"Embed and Select operators","user":{"login":"alyst","id":348591,"avatar_url":"https://avatars.githubusercontent.com/u/348591?v=3","gravatar_id":"","url":"https://api.github.com/users/alyst","html_url":"https://github.com/alyst","followers_url":"https://api.github.com/users/alyst/followers","following_url":"https://api.github.com/users/alyst/following{/other_user}","gists_url":"https://api.github.com/users/alyst/gists{/gist_id}","starred_url":"https://api.github.com/users/alyst/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alyst/subscriptions","organizations_url":"https://api.github.com/users/alyst/orgs","repos_url":"https://api.github.com/users/alyst/repos","events_url":"https://api.github.com/users/alyst/events{/privacy}","received_events_url":"https://api.github.com/users/alyst/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-07-03T13:12:16Z","updated_at":"2015-07-04T12:31:23Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/robertfeldt/BlackBoxOptim.jl/pulls/15","html_url":"https://github.com/robertfeldt/BlackBoxOptim.jl/pull/15","diff_url":"https://github.com/robertfeldt/BlackBoxOptim.jl/pull/15.diff","patch_url":"https://github.com/robertfeldt/BlackBoxOptim.jl/pull/15.patch"},"body":"The PR adds ```EmbeddingOperator``` (projection into the search space, but I called it \"embedding\", because it could be more sophisticated that just projection, also not necessarily onto the bounds of the search space) and ```IndividualsSelector``` operator (picking the individuals from the population).\r\nWith this the type parameterization of ```DiffEvoOpt``` should be complete.\r\nAs all the required properties are now the explicit fields of the appropriate types, the ```options``` dictionary is removed from the ```DiffEvoOpt```. I think the use of dictionaries to specify the options should be minimized as it's harder to keep track and synchronize the required parameters, and the problems are only revealed at runtime."},"comment":{"url":"https://api.github.com/repos/robertfeldt/BlackBoxOptim.jl/issues/comments/118508455","html_url":"https://github.com/robertfeldt/BlackBoxOptim.jl/pull/15#issuecomment-118508455","issue_url":"https://api.github.com/repos/robertfeldt/BlackBoxOptim.jl/issues/15","id":118508455,"user":{"login":"robertfeldt","id":3980,"avatar_url":"https://avatars.githubusercontent.com/u/3980?v=3","gravatar_id":"","url":"https://api.github.com/users/robertfeldt","html_url":"https://github.com/robertfeldt","followers_url":"https://api.github.com/users/robertfeldt/followers","following_url":"https://api.github.com/users/robertfeldt/following{/other_user}","gists_url":"https://api.github.com/users/robertfeldt/gists{/gist_id}","starred_url":"https://api.github.com/users/robertfeldt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/robertfeldt/subscriptions","organizations_url":"https://api.github.com/users/robertfeldt/orgs","repos_url":"https://api.github.com/users/robertfeldt/repos","events_url":"https://api.github.com/users/robertfeldt/events{/privacy}","received_events_url":"https://api.github.com/users/robertfeldt/received_events","type":"User","site_admin":false},"created_at":"2015-07-04T12:31:23Z","updated_at":"2015-07-04T12:31:23Z","body":"Looks good to me. Will benchmark and then merge.\r\n\r\nI agree in general with avoinding options dictionaries but users probably want a simple interface at the \"top level\". So maybe a good trade-off is that we use options dicts for the bboptimize and the \"shortand\" ctr functions (adaptive_de_bin_1 etc) but use normal args to the actual Optimizer types."}}