Unexpected sametime behavior

From: Jonathan Collins <jcollinsREMOVE@THISintrepidls.com>
Date: Thu Sep 21 2006 - 00:44:50 CEST

In all of the example configuration files 'teacher' seems to be defined
as a constant resource. In my case, however, many instructors should
have the chance to teach a certain event so I would like to assign
teachers as variable resources and use a module (to be written later)
that will make sure the chosen instructor is qualified to teach the
class. With teacher as a variable resource the "sametime" module seems
to give an unexpected error.
 
Here is a sample config file that illustrates my problem:
 
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE ttm PUBLIC "-//Tablix//DTD TTM 0.2.0//EN"
"http://www.tablix.org/releases/dtd/tablix2r0.dtd">
<ttm version="0.2.0">
 <modules>
  <module name="sametime.so" weight="100" mandatory="yes"/>
  <module name="timeplace.so" weight="100" mandatory="yes"/>
 </modules>
 <resources>
  <constant>
   <resourcetype type="class">
    <resource name="Biology"/>
    <resource name="Math"/>
   </resourcetype>
  </constant>
  <variable>
   <resourcetype type="time">
    <matrix width="1" height="1"/>
   </resourcetype>
   <resourcetype type="teacher">
    <resource name="Alice"/>
    <resource name="Bob"/>
   </resourcetype>
   <resourcetype type="room">
    <resource name="Room 1"/>
    <resource name="Room 2"/>
   </resourcetype>
  </variable>
 </resources>
 <events>
  <event name="Class 1" repeats="1">
   <resource type="class" name="Biology"/>
  </event>
  <event name="Class 2" repeats="1">
   <resource type="class" name="Math"/>
  </event>
 </events>
</ttm>

Obviously there is a feasible solution where Alice teaches one class in
Room 1 and Bob teaches the other in Room 2, however when I run tablix
the sametime module failes to precalculate with the following error:
 
[xmlsup] Too many events for teacher 'Alice'
[xmlsup] 2 events with only 1 available time slots
[xmlsup] fatal: One or more modules failed to precalculate

What seems to be happening is that the algorithm first assigns Alice to
every event and this causes the entire execution to fail, rather than
that permutation simply being considered infeasible. If I were to
comment out that fatal error it seems the fitness function in sametime
would throw out that case, but perhaps I am missing something more
simple.
 
So, do I need to alter sametime.c if I am using teachers as a variable
resource?
 
Thank you in advance,
Jon
 
 
 
Received on Thu Sep 21 00:45:24 2006

This archive was generated by hypermail 2.1.8 : Thu Sep 21 2006 - 06:29:23 CEST