This roof/ceiling is a pretty typical example of rafter construction; this is more or less how wood-framed roofs were built for thousands of years, before pre-fab trusses became popular.
The building code still contains prescriptive requirements for this technique (ie. you don't need an engineer), and will include span tables so that you can size your lumber according to code if building new. This should be available at the local library, or online in some jurisdictions. You can also find tables for dimensional lumber from various wood manufacturing associations online -- a handy calculator is here.
I'm about to digress into a rafter sizing exercise, but the tldr is that an engineer would probably not love the current structure, but it can be made to work. The sagging problem has two possible causes:
- The members running down from the rafters to the center of the ceiling joist look like they are not coming exactly from the peak of the roof, rather somewhere closer to the center of the rafter span. This is a bad idea, because the borderline undersized rafters could flex a bit under intermittent (snow) loads, pushing the sistered joint in the ceiling down and causing the sag. The rafters will spring back when the load is removed, but gravity being what it is, the sag will remain in the ceiling.
- It is also possible that this was framed sloppily, and the sag was nailed into it from day 1. This looks to be a possibility with the area over top of the door in the second picture.
Either way, beefing up the ceiling joist won't help unless you run a single member all the way across -- that sistered joint is just too weak. The handy span calculator suggests a single 2x12 for a ceiling joist of this length. This is not out of the question -- at least where I live you can still get 2x12s in lengths of 24' and up; cost is surprisingly reasonable. I would seriously consider this option if the lumber is available to you -- 10 20' 2x12s will not break the bank, and will allow you to make a nice solid ceiling. Make sure that you install and nail fully the new joists one at a time so that your walls don't spread while you are doing this. All of the horizontal blocking can be removed, and the vertical members would not be necessary in this case either.
If this is not an option, I would stick with the current joist material, string a line from end to end in the room, and push the sag out of the joists with a board wedged in between the floor and the joint one at a time. If you add a vertical member going right to the peak of the roof at each joist, it should support the center of the ceiling so that the sag doesn't recur. This is a less proper way to fix the situation, but should work.
Digression re rafter spans follows:
In the span calculator, the allowable span depends on the species and grade of the lumber used; if we assume Spruce-Pine-Fir, #2 and better, with a snow load of 40 lbs/sf, the calculator says the allowable span is only 5'11"!(per side, so about 12' between the walls in your case)
This seems like it should be a problem, right? "But how come my house hasn't collapsed at some point in the last forty years," you may ask?
Well, for starters these tables are very conservative -- I have seen heritage buildings with 2x4 rafters spanning over thirty feet between walls that have stood without bending or cracking for the past hundred Canadian winters. Engineers like a large margin of safety, especially when they are making a prescriptive requirement to be implemented by any Tom Dick or Harry in the field.
But there is something else working in your favour here -- lumber ain't what it used to be. Those 25' 2x4s in the heritage buildings are clear douglas fir, and sawn to true dimension, so they are actually 2" x 4", not 1.5x3.5. Obviously I can't tell the grade of your rafters from the photo, but they do appear to be 2"x4".
I don't know what species are used in your area, but let's plug No. 1/better Hem-Fir into the calculator -- this grade is not too crazy, as carpenters will high-grade lumber on site for things like rafters, and save the crummy boards for walls etc. This gets us up to a 14' allowable span; the rest of the difference is accounted for by the additional lumber in a rough sawn board. An anonymous engineer here feels that a factor of 1.5x is appropriate for a rough-sawn 2x4 over a planed one; also I would note that a rough 2x4 has a cross section of 8 square inches -- compare this to a dimensional 2x6. (1.5 * 5.5 = 8.25) Plugging a 2x6 into the calculator gets you a 10'2" span, which has your 20' between walls inside of (conservative) margins.