George,
No special algorithms
I turn on my "heat controller" before I go to bed at night by executing a Time/Date Action (I set it to run automatically if I am away). This turns on the heat controller and sets two variables - ON & OFF to "night mode" which are lower temps for night time. When a Trigger senses a temp drop below 17C (the turn furnace on variable) Indigo turns on the furnace and I have heat. When the temp gets to 17.7C (the turn furnace off variable) the Trigger shuts off the furnace. Half an hour before I get up a Time/Date Action runs to change the variables to a warmer "daytime mode" heat setting so when I get up the house is nice and warm. When I get up I switch the heat to manual and the heat is controlled by the regular thermostat during the day. Using the iPod Touch and a Control Page I can change the temp up and down by changing the "night mode" or Daytime mode" temperature variables.
I have the iPod by my bed at night on full dim and I have indication of the house temp, if my furnace controller is ON or OFF and if the furnace is running or not. To adjust the heat if I want I can select to go to another control page where I adjust the heat. I also have a timer to run during each furnace cycle as a precaution in case for some reason the furnace gets stuck "ON".
This is my third winter using this system and it really works great and is reliable.
If you need any more details don't hesitate to ask.
regards,
bob