These are chat archives for bluescarni/pagmo_reborn

6th
Jun 2016
Francesco Biscani
@bluescarni
Jun 06 2016 08:59
so I was reading a bit about linear programming, I was wondering if in the future it makes sense to provide way to specify problems as linear problems
it seems like one needs to specify basically a few vectors and a matrix
so the basic idea would be that you can implement in the user-defined problem methods returning these properties of the problem and then pagmo will automatically synthesize an objective function that does the linear thing
anyway just freewheeling, it seems like this stuff is big for companies
Dario Izzo
@darioizzo
Jun 06 2016 09:02
Opening a hornet nest
Marcus Märtens
@CoolRunning
Jun 06 2016 09:03
There are quite good solvers for LPs - not sure PaGMO would be able to compete?
Dario Izzo
@darioizzo
Jun 06 2016 09:03
Linear programming is indeed important and we always chose to "close our eyes" ... a bit like on integers
Indeed @CoolRunning
Francesco Biscani
@bluescarni
Jun 06 2016 09:03
I just read about it because it turns out there's a community version of cplex one can download freely
it's about hooking up the solvers, not providing new ones
Dario Izzo
@darioizzo
Jun 06 2016 09:03
But for example SNOPT and IPOPT can deal with linear part ... but we always pass to them the problem as non linear :)
Marcus Märtens
@CoolRunning
Jun 06 2016 09:04
I think adding CPLEX could be a nice feature for a lot of people, indeed.
Francesco Biscani
@bluescarni
Jun 06 2016 09:04
yeah but as I understand it, it would be pointless with the current pagmo structure
because I imagine we cannot extract from an arbitrary problem the type of info these solvers need
Marcus Märtens
@CoolRunning
Jun 06 2016 09:05
I see PaGMO more accelerating on the non-linear problems, since this is more the domain of evolutionary solvers (as people don't know how to deal with them in general)
Dario Izzo
@darioizzo
Jun 06 2016 09:06
Like the sparsity structure, you could allow defining a "linearity pattern" to pass to these solvers .... the interest would then be in hybridizing CPLEX with evo stuff ... but as I said its a big deal and I am no expert.
@bluescarni If you have an interest because of your work we could discuss how to do it ....
Francesco Biscani
@bluescarni
Jun 06 2016 09:07
well yeah it would be similar to the above, just a matter on deciding what stuff to add into the problem class
I thought about it, but I think it's unrealistic
Dario Izzo
@darioizzo
Jun 06 2016 09:07
I can have a look at how SNOPT/IPOPT is dealing with this thing ....
Francesco Biscani
@bluescarni
Jun 06 2016 09:07
it's no priority
Dario Izzo
@darioizzo
Jun 06 2016 09:07
Then the day we do the wrapper, we could take decisions ...
Francesco Biscani
@bluescarni
Jun 06 2016 09:08
just saying that we might want in the future to provide alternative ways of defining a problem in order to take advantage of special structures
that was the main thing I guess
Dario Izzo
@darioizzo
Jun 06 2016 09:09
You mean generically or specifically for linear properties
?
Francesco Biscani
@bluescarni
Jun 06 2016 09:10
I mean that there are special methods for things like linear problems, convex problems, etc. So maybe one day we'll identify something we want to give explicit support to
linear is one example, maybe the most interesting one? I don't know
Dario Izzo
@darioizzo
Jun 06 2016 09:11
We would then need to represent these properties in a generic fashion ...
Francesco Biscani
@bluescarni
Jun 06 2016 09:11
the important thing would be that the classical pagmo user does not see any of that, the complexity would be hidden inside the problem machinery
Dario Izzo
@darioizzo
Jun 06 2016 09:12
So, I say to delay this discussion to when we will do the IPOPT/SNOPT/WORHP wrappers
Francesco Biscani
@bluescarni
Jun 06 2016 09:12
yeah not even then, it's not urgent
Dario Izzo
@darioizzo
Jun 06 2016 09:12
:)
Francesco Biscani
@bluescarni
Jun 06 2016 09:12
I am wary of implementing stuff none of us is expert in
Marcus Märtens
@CoolRunning
Jun 06 2016 09:13
We are experts?
Francesco Biscani
@bluescarni
Jun 06 2016 09:14
regarding my job, they did ask me at one point if pagmo can do linear/discrete stuff.. but I cannot go to them and say "hey guys, by the way, I have been spending my time here working on my private bullshit which might eventually be of some interest"
Marcus Märtens
@CoolRunning
Jun 06 2016 09:15
I have seen convex optimization recently a lot, though this seems tricky business as well.
Even had to do it myself... used this package: http://cvxopt.org
Dario Izzo
@darioizzo
Jun 06 2016 09:23
Yep, its a whole different world ..... maybe we could do some with PaGMO, but that is not where we will shine
Francesco Biscani
@bluescarni
Jun 06 2016 09:23
Marcus Märtens
@CoolRunning
Jun 06 2016 09:26
Maybe call it suicidie rather than selfie?
Dario Izzo
@darioizzo
Jun 06 2016 09:26
lol, just posted it on diigo ... too fun
Dario Izzo
@darioizzo
Jun 06 2016 18:17
The famous clang format thing .... I think its time to introduce it
Francesco Biscani
@bluescarni
Jun 06 2016 18:17
why now
Dario Izzo
@darioizzo
Jun 06 2016 18:17
The code is growing and the project needs more nazifascist rules
I also have one guy that wants to do a small project with PaGMO and I am using it as a sparring to train for next year GSOC .... would like to test if code formatting can help in "mentoring"
Francesco Biscani
@bluescarni
Jun 06 2016 18:19
it's gonna fuck up the merge requests unless we all do it, and I am not sure about the status of clang on windows
Dario Izzo
@darioizzo
Jun 06 2016 18:20
true ... then we wait ....
another thing .... test coverage ...
Francesco Biscani
@bluescarni
Jun 06 2016 18:20
the problem is gonna be there though unless we get to a point in which we have no MR
Dario Izzo
@darioizzo
Jun 06 2016 18:20
what are we waiting for? I guess we are now far from 100% and the situation will only grow worse
Francesco Biscani
@bluescarni
Jun 06 2016 18:21
about what, coverage?
Dario Izzo
@darioizzo
Jun 06 2016 18:21
lets close boost python, cmaes and hyperfuvk and then implement it before opening new?
yes I thought we could have the test coverage testes at each commit
by the CI ... no?
Francesco Biscani
@bluescarni
Jun 06 2016 18:22
last time I tried it was not working properly. we can try again I guess
spent way too much time on it
Dario Izzo
@darioizzo
Jun 06 2016 18:22
the problem was with the web site codecov right?
Francesco Biscani
@bluescarni
Jun 06 2016 18:23
I think there were 2 problems, one I think is solved now, the other I have no idea
Dario Izzo
@darioizzo
Jun 06 2016 18:23
ok I will look into it then
Francesco Biscani
@bluescarni
Jun 06 2016 18:24
we can try to uncomment the existing stuff and see if it just works
Dario Izzo
@darioizzo
Jun 06 2016 18:25
what existing stuff?
Francesco Biscani
@bluescarni
Jun 06 2016 18:26
there's the codecov YAML, there's bit of scripts in the CI, etc.
Dario Izzo
@darioizzo
Jun 06 2016 18:26
ah right
worth a try ..
Francesco Biscani
@bluescarni
Jun 06 2016 18:27
I'll try again
do we want to keep that boostrap mod? I prefer the old one
Dario Izzo
@darioizzo
Jun 06 2016 18:29
buustrap?
Francesco Biscani
@bluescarni
Jun 06 2016 18:32
crapstrap
Dario Izzo
@darioizzo
Jun 06 2016 18:54
lol, just used one of those online code reviewer ... on audi ...
Francesco Biscani
@bluescarni
Jun 06 2016 18:55
what's that?
Dario Izzo
@darioizzo
Jun 06 2016 18:55
stuff like code climate .... you know it?
Francesco Biscani
@bluescarni
Jun 06 2016 18:55
not really, just by name a bit
Dario Izzo
@darioizzo
Jun 06 2016 18:56
Screen Shot 2016-06-06 at 20.55.13.png
Francesco Biscani
@bluescarni
Jun 06 2016 18:56
yay no issues
Dario Izzo
@darioizzo
Jun 06 2016 18:57
I think he is right ... what could have possibly have been done better?
Francesco Biscani
@bluescarni
Jun 06 2016 18:58
why is everything always so shit
Dario Izzo
@darioizzo
Jun 06 2016 18:59
btw, whats your position on putting a brief comment next to the include to remind people why they are there?
whats shit?
c'avremo pure il sindaco bono a roma ... ao ... daje che va bene
Francesco Biscani
@bluescarni
Jun 06 2016 19:00
everything is fucking shit
Dario Izzo
@darioizzo
Jun 06 2016 19:00
words saint
Or, as my daughter say, lets make fint that we are in a perfect world
Francesco Biscani
@bluescarni
Jun 06 2016 19:01
https://codecov.io/gl/EuropeanSpaceAgency/PaGMOreborn there's something here but it's all fucked up
why is everything shit
Dario Izzo
@darioizzo
Jun 06 2016 19:02
why fucked up? whats wrong and whats right?
ANd did you convince him to get a gitlab project?
Francesco Biscani
@bluescarni
Jun 06 2016 19:02
the commit list on the right is fucked up, with the latest commit in the future
it's not respecting the setup in the YAML file telling to ignore the include/external dir
it's slow as fuck, and not displaying the latest commit
it just fucking shieet
maybe it's waiting for appveyor to finish
Dario Izzo
@darioizzo
Jun 06 2016 19:04
are those polar temperatures on the coverage?
Francesco Biscani
@bluescarni
Jun 06 2016 19:04
the fuck if I know
it used to be a good service
now it's shieeet
fuck coding and fuck this open source bullshit
Dario Izzo
@darioizzo
Jun 06 2016 19:06
ok
using the coverage trick you made last time could be an option
But I was not able to reproduce it ...
Can you teach me?
I feel tonight you are in a good mood :)
Let see if I can bring you down even more ...
Francesco Biscani
@bluescarni
Jun 06 2016 19:07
swear on me mum, if you want to get shit done you have to do it yourself
Dario Izzo
@darioizzo
Jun 06 2016 19:07
Or maybe you need some DOTA2 aggression relief
Francesco Biscani
@bluescarni
Jun 06 2016 19:15
yeah I am dropping the ball on this, fuck it
Dario Izzo
@darioizzo
Jun 06 2016 19:16
no dai "contact us for detail"
sono pure gentili!
Contact them ....
Francesco Biscani
@bluescarni
Jun 06 2016 19:16
this piece of shit used to work perfectly, and then they broke it without reason
fuck these asshole
Dario Izzo
@darioizzo
Jun 06 2016 19:17
As I said, the coverage flag did the trick and quite good
We just need to add it to the CI build right?
Francesco Biscani
@bluescarni
Jun 06 2016 19:17
it's not automated, and it does not send reports on the merge requests when the coverage decreases
Dario Izzo
@darioizzo
Jun 06 2016 19:18
we could fail a build that does not 100% coverage
too much?
Francesco Biscani
@bluescarni
Jun 06 2016 19:18
it's unrealistic, there will be code paths which are really difficult to trigger
error handling, stuff like that
Dario Izzo
@darioizzo
Jun 06 2016 19:19
Can you still tell me how to do it?
I failed last time
Francesco Biscani
@bluescarni
Jun 06 2016 19:20
and then I am afraid the process is getting brittler and brittler... now for instance if you wanna build the doc you have to use the compile script otherwise the images are not copied over
Dario Izzo
@darioizzo
Jun 06 2016 19:20
what the problem with that?
in any case you need to run first doxygen
otherwise your docs could be empty or outdated
Francesco Biscani
@bluescarni
Jun 06 2016 19:21
there's some support in breathe to run doxygen automatically
and we should probably do the copying at the cmake level or similar
Dario Izzo
@darioizzo
Jun 06 2016 19:21
did not know ....
why though? I though the script solution is neat
Francesco Biscani
@bluescarni
Jun 06 2016 19:22
it's just an extra thing there's no need for.. it also completely wipes out the build dir, which defeats the purpose of having a Makefile
Dario Izzo
@darioizzo
Jun 06 2016 19:24
well, the need is that the images are not copied in the xml directory ... a bug?
a misunderstanding?
Francesco Biscani
@bluescarni
Jun 06 2016 19:24
again, we could do the copying at some level instead of creating an ad-hoc script
Dario Izzo
@darioizzo
Jun 06 2016 19:25
And what would the difference be? Why is a workaround in CMAKE better than a workaround in bash?
Francesco Biscani
@bluescarni
Jun 06 2016 19:25
CMake has a command for copying files around in the build tree, which will work regardless of the system
bash is not on windows for instance
Dario Izzo
@darioizzo
Jun 06 2016 19:26
thats a good point.
Francesco Biscani
@bluescarni
Jun 06 2016 19:26
it's just about doing things properly, it's not like I have a burning desire of running sphinx on windows
Dario Izzo
@darioizzo
Jun 06 2016 19:26
do you not?
admit it.
come oooon.
Does CMake have support for sphinx makefiles?
Francesco Biscani
@bluescarni
Jun 06 2016 19:28
I have no idea, I am pretty sure it has some support for doxygen but I haven't checked in a long time
it would be good to know which is the best way of building doc... from CMake with a special target? from outside? I have no clue
Francesco Biscani
@bluescarni
Jun 06 2016 19:35
I'll go on with my doccing
after this successful codecov experiment
Dario Izzo
@darioizzo
Jun 06 2016 19:53
:)
Dario Izzo
@darioizzo
Jun 06 2016 21:10
From which version of gcc c++14 is supported?