At developers meeting on 8/19 we discussed the following:
- The group decided OpenMx version 1.1 is ready to be released. The release will be occurring in the near future. Details on the new features of OpenMx version 1.1 can be found here.
- The group discussed changes to the back end of OpenMx that will offer the user access to any information used in optimization (FIML vector, etc). It is anticipated that this information will be used in a diagnostic manner by users. It is important to note that this information will not be made available to the user during optimization, it will only be made available after optimization.
- The parallelization of optimization was discussed. The group is exploring the OpenMP API to use during the parallelization development. The initial progress appears promising. POSIX Threads were also discussed as a possible development option. However, POSIX Threads lack the thread management capabilities of OpenMP. The group is also inquiring with the University of Virginia Cross Campus Grid (XCG) Group and the UVA Alliance for Computational Science and Engineering to determine if they have any insight into large scale, parallel R deployments.
- A modification to the implementation of objective functions that will make sub-objectives easier to deal with was discussed. A possible implementation of nested multi-level modes was also discussed.
Mike Hunter's analytical expressions for the gradient are correct. He is currently exploring a scaling factor/normalization issue that is causing the calculated gradient to be a scalar factor larger than the answer reported by OpenMx. The goal of these expressions is to improve the efficiency of FIML. For more information see the 8/12 meeting notes here.
- The group continued to discuss the possibility of moving PPML to the back end of OpenMx. This would make the implementation of FIML within PPML much easier.