As you haven't written whether you're asking for PowerCenter or the Informatica platform, I assume you ask for PowerCenter (as there are no sessions in the platform).
I wouldn't try to schedule this using any built-in tool (at least I can't see at this moment how this would work).
What I would do is to build some process (maybe a mapping) which retrieves the structure of the workflow "on the fly".
Next this process needs to have a persistent variable which stores the number of the session which was executed last.
Now after having analysed the current structure of the workflow (I assume that all sessions are connected in sequence, no parallel flows, no branches), you can simply count through the current number of sessions and select the n-th one (n being the number for "today").
Finally using this information, you can issue a "pmcmd starttask" with the name of the n-th session.
And of course you have to increment the internal variable.
Does that make sense to you? If not, why not?
And, ouf ot curiosity, what exactly do you want to achieve?
Do you still encounter your problem?
There is a way to achieve what you require.
You can use a dummy session prior to the s1, s2 etc. so ds1, ds2...
In this dummy you can have a sql override like which fires a query
select distinct 1
where datepart(dw,getdate()) = 2 (or 3 or 4)
On the link from the ds1 to s1 you would need to configure $s_dummy1.SrcSuccessRows > 0
Hope this helps
Also you can use pmcmd StartTask command to start a session. Make a script at OS level using this command to schedule each task everyday.
You can refer the Command reference guide > pmcmd command > StartTask for more information.