Wafa Aissa
email: wafa.aissa@lecnam.net

Marin Ferecatu
email: marin.ferecatu@lecnam.net

Michel Crucianu
email: michel.crucianu@lecnam.net

Curriculum Learning for Compositional Visual Reasoning

Keywords: Compositional Visual Reasoning, Visual Question Answering, Neural Module Networks, Curriculum Learning

Visual Question Answering (VQA) is a complex task requiring large datasets and expensive training. Neural Module Networks (NMN) first translate the question to a reasoning path, then follow that path to analyze the image and provide an answer. We propose an NMN method that relies on predefined cross-modal embeddings to "warm start" learning on the GQA dataset, then focus on Curriculum Learning (CL) as a way to improve training and make a better use of the data. Several difficulty criteria are employed for defining CL methods. We show that by an appropriate selection of the CL method the cost of training and the amount of training data can be greatly reduced, with a limited impact on the final VQA accuracy. Furthermore, we introduce intermediate losses during training and find that this allows to simplify the CL strategy.

INTRODUCTION

Visual Question Answering (VQA) consists in answering potentially complex questions regarding the content of images. Datasets like VQA2.0 [START_REF] Goyal | Making the V in VQA matter: Elevating the role of image understanding in Visual Question Answering[END_REF] and GQA [START_REF] Hudson | GQA: A new dataset for real-world visual reasoning and compositional question answering[END_REF] were put forward in support of this task. These datasets are very large, leading to expensive training. However, since they are built from collected real images with (possibly assisted) human labeling, they inevitably contain many biases. Integrated approaches like [START_REF] Xiong | MGA-VQA: multigranularity alignment for visual question answering[END_REF][START_REF] Wang | MIRTT: learning multimodal interaction representations from trilinear transformers for visual question answering[END_REF] have the highest overall accuracies on these databases but are prone to taking bias-promoted "shortcuts", as shown e.g. by their lower performance on out-of-distribution data [START_REF] Kervadec | Supervising the transfer of reasoning patterns in VQA[END_REF]. Furthermore, integrated approaches lack transparency in the reasoning process, even though some limited explanations can be obtained by following the flow of attention.

Alternatively, Neural Module Networks (NMN) were introduced [START_REF] Hu | Learning to reason: End-to-end module networks for visual question answering[END_REF] with the aim to make the reasoning explicit. They were quite successful for visual reasoning on synthetic image datasets like CLEVR, where word grounding is comparatively easy and there is significant control over scene composition. NMNs are nevertheless hard to train on real images where grounding is difficult, attributes are more diverse and data biases are hard to control. To make learning more effective and less expensive, we rely on NMN but employ predefined cross-modal embeddings to "warm start" the training process on GQA, then explore Curriculum Learning to improve learning of such a complex task and reduce both the cost and the amount of data required.

Curriculum Learning (CL) [START_REF] Elman | Learning and development in neural networks: the importance of starting small[END_REF][START_REF] Soviany | Curriculum learning: A survey[END_REF][START_REF] Wang | A survey on curriculum learning[END_REF] consists in learning the easier parts of the task first, rather than the entire task at once. However, adequate difficulty criteria are not easy to define. We show that by an appropriate selection of these criteria for VQA, the cost of training can be significantly reduced and less training data is required to reach a comparable level of accuracy.

To summarize, the contributions of our work are three fold:

• First, we employ text and image object embeddings produced by a cross-modal transformer, with the goal of aligning multi-modal features to reinforce joint data patterns and thus help the learning process to achieve results faster.

• Second, we propose several Curriculum Learning strategies to reduce both the training cost and the amount of data required for learning complex reasoning tasks.

• Third, we define and employ intermediate module losses (one per module) during training, using ground-truth labels generated from image graphs.

The aim is to stabilize the learning and help the modules converge to the expected behavior defined by the modules' ground-truth and controlled by the local loss. The paper is organized as follows: the next section situates our proposals in the context of existing work on VQA and Curriculum learning, Sec. 3 describes the modular framework we employ and our use of cross-modal features. Then in Sec. 4 we define and motivate the CL strategies we propose. Evaluation results are presented and discussed in Sec. 5.

RELATED WORK

We first review some recent work on visual reasoning for VQA. We then turn to the use of Curriculum learning for complex tasks, more specifically for VQA.

Visual question answering

VQA is usually addressed with either integrated cross-modal frameworks or compositional neural module networks.

Cross-modality Transformers. Transformer networks [START_REF] Vaswani | Attention is all you need[END_REF] have been widely applied to multiple language and vision tasks, and they have been recently adapted for reasoning problems such as VQA. Models like ViLBERT [START_REF] Lu | ViL-BERT: Pretraining task-agnostic visiolinguistic representations for vision-and-language tasks[END_REF], VisualBERT [START_REF] Li | VisualBERT: A simple and performant baseline for vision and language[END_REF] and LXMERT [START_REF] Tan | LXMERT: Learning crossmodality encoder representations from transformers[END_REF] showcased good performances on the VQA datasets VQA2.0 [START_REF] Goyal | Making the V in VQA matter: Elevating the role of image understanding in Visual Question Answering[END_REF] and GQA [START_REF] Hudson | GQA: A new dataset for real-world visual reasoning and compositional question answering[END_REF]. These frameworks start by extracting the text and image features: word embeddings are obtained via a pretrained BERT [START_REF] Devlin | BERT: Pre-training of deep bidirectional transformers for language understanding[END_REF] model, while Faster R-CNN [START_REF] Ren | Faster R-CNN: Towards real-time object detection with region proposal networks[END_REF] produces image region bounding boxes and corresponding visual features. Then, a cross-attention mechanism allows to align word embeddings and image features after training on a wide range of multi-modal tasks. One downside of integrated visual reasoning models is their lack of interpretability. Another drawback is their tendency to make "shortcuts" in reasoning, by learning the bias in the data as evidenced by their limited performance on the out-of-distribution data in GQA-OOD [START_REF] Kervadec | Supervising the transfer of reasoning patterns in VQA[END_REF]. However, an effective crossmodal feature encoder can be obtained by discarding the final classification component from an integrated model. We employ here input features generated by an off-the-shelf large-scale cross-modal transformer encoder.

Neural Module Networks (NMN). To make the reasoning process more transparent and human-like, compositional NMNs [START_REF] Hu | Learning to reason: End-to-end module networks for visual question answering[END_REF]Li et al., 2019a) perform multi-hop reasoning by decomposing a complex reasoning task into several easier subtasks. An NMN consists of a generator and an executor. The generator maps a question to a sequence of reasoning instructions (called a program). The executor assigns each sub-task from this program to a neural module and passes the results to the next modules. In [START_REF] Chen | Meta module network for compositional visual reasoning[END_REF] a meta-learning approach is employed in the NMN framework to improve the scalability and generalization of the resulting model. The generator decodes the question into a program whose sub-tasks are used to instantiate a meta module. The image features are extracted by a visual encoder implemented as a transformer network and a cross-attention layer mixes word embeddings and image features. While the combination of a generator and an executor in NMNs appears more complex than an integrated model, the "hardwired" reasoning process of an NMN is inherently transparent and has the potential to avoid part of the reasoning "shortcuts" caused by data bias. Interestingly, it was shown in [START_REF] Kervadec | Supervising the transfer of reasoning patterns in VQA[END_REF] that by using the programs resulting from questions as additional supervision for the LXMERT integrated model allows to reduce sample complexity and improve performance on GQA-OOD. In our work, we aim to take advantage of both the transparency of NMN architectures and the quality of transformer-encoded representations by implementing a composable NMN over multimodal transformer vision and language features.

Curriculum Learning

Curriculum learning was introduced in [START_REF] Elman | Learning and development in neural networks: the importance of starting small[END_REF] where the author shows that successful learning may depend on "starting small" by first learning a simple grammar with a recurrent network and then gradually learning more complex tasks such as relative clauses, number agreement, etc. CL was later applied to various machine learning tasks and recently adapted to textual question answering (QA) in [START_REF] Liu | Curriculum learning for natural answer generation[END_REF]. The authors use a sampling function that gives higher selection weights to simple QA pairs and then, as the training advances, it selects more complex QA pairs. A term frequency selector and a grammar selector assess the difficulty of the training examples. In [START_REF] Sachan | Easy questions first? A case study on curriculum learning for question answering[END_REF] CL is reframed as a self-paced learning (SPL) algorithm and the question loss is taken as the measure of difficulty. The authors implement several heuristics reminding of active learning in order to improve SPL performance.

Curriculum Learning for VQA. The definition of relevant difficulty criteria for VQA is challenging and this may explain why there is little work on the use of CL for VQA. The recent work in [START_REF] Askarian | Curriculum learning effectively improves low data VQA[END_REF] applies CL in a modular VQA context to the synthetic CLEVR dataset (Johnson et al., 2017a). The base model is from [START_REF] Johnson | Inferring and executing programs for visual reasoning[END_REF], with an LSTM generator and generic residual blocks for the executor modules. The experiments were conducted on the executor alone, using as input the ground-truth programs directly. Several difficulty criteria were evaluated, including program length, answer hierarchy, and question loss. The results demonstrated that CL with a question loss difficulty criterion has a positive impact in a low data setting. However, the study in [START_REF] Askarian | Curriculum learning effectively improves low data VQA[END_REF] was focused on the CLEVR dataset (Johnson et al., 2017a) consisting of synthetic images of simple 3D objects, with a limited number of classes or attributes and reliable object detection. In our work, we employ the GQA dataset that is based on real-world images with many classes and several names for some of them, as well as more complex relations and more challenging object detection. We thus have to completely redefine the candidate CL strategies.

MODULAR VQA FRAMEWORK

Our model takes as input a triplet composed of an image, a question and a program, and predicts an answer. We start by extracting aligned language and vision features for both the image and the question using a state-of-the-art cross-modal transformer. Then the program, which is a sequence of modules, is used to build the neural modules network that is executed on the image to answer the question (see Fig. 1). In the next subsections, we present the feature extraction process and describe the program executor.

Cross-modal features. Compositional visual reasoning aims to perform logical and/or geometrical inferences involving several related objects in a complex scene. To achieve this, the reasoning modules are conditioned by text arguments. The visual and textual representations are vital to the reasoning process, therefore having good bounding box features and question text embeddings is crucial. To extract crossmodal language and vision representations we rely on LXMERT [START_REF] Tan | LXMERT: Learning crossmodality encoder representations from transformers[END_REF], a transformer model pretrained on multiple multi-modal tasks such as Masked Cross-Modality language models, masked object predictions, Cross-Modality Matching, and VQA. LXMERT showcases high accuracy on the training tasks, so we employ it as a feature extractor. It is worth mentioning that we only use the cross-modality encoder representations and discard the answer classification component. More precisely, we freeze LXMERT weights and we pass the image I through the object-relationship encoder and the question Q through the language encoder. Then, the Cross-Modality Encoder aligns the representations to finally output the object bounding box features v j of each object o j in the image I and the embedding h i of each word q i in the question Q.

Neural Modules. Our compositional reasoning model allows to perform complex reasoning tasks by decomposing them into easier sub-tasks. These subtasks are inspired by the human generic reasoning skills such as object detection, attribute identification, object relation recognition, object comparison, etc. We designed a library of modules where each module is responsible for performing a reasoning sub-task. The modules were designed to be intuitive and easily interpretable, each of them being implemented by a series of basic algorithmic operations such as dot products and MLPs. Modules can be categorized into three different groups based on their output type: attention, boolean and answer modules. For instance, an attention module such as Select is responsible of detecting an object bounding box by rendering an attention vector over the object bounding boxes contained in the image. Boolean modules such as And or Or make logical inferences and answer modules such as QueryName give a probability distribution over the answer vocabulary. Table 1 shows an example from each module category. An exhaustive module list with definitions is provided in the appendix.

Table 1: Sample module definitions. S: softmax, σ: sigmoid, r: RELU, W i : weight matrix, a: attention vector (36 × 1), V: visual features (768 × 36), t: text features (768 × 1), ⊙: Hadamard product.

Name

Dependencies Output Definition Select attention

x = r(W t) Y = r(WV) o = S(W(Y T x)) RelateSub [a] attention x = r(W t) Y = r(WV) z = S(W(Y T x)) o = S(W(x ⊙ y ⊙ z)) VerifyAttr [a] boolean x = r(W t) y = r(W(V a) o = σ(W(x ⊙ y)) And [b 1 ,b 2 ] boolean o = b 1 × b 2 ChooseAttr [a] answer x = r(W t) y = r(W(V a) o = S(W(x ⊙ y)) QueryName [a] answer y = r(W(V a)) o = S(W y)
Modular network instantiation. A program consists of a sequence of modules implemented as neural networks, as illustrated in Table 1. Each program is instantiated as a larger NMN following the sequence of program modules, where each module has dependencies d m to get information from the previous one, and arguments a m to condition its behavior. For example, the FilterAttribute module depends on the output of the Select module: it shifts the attention on the selected objects corresponding to the input text argument. The program executor is responsible of managing module dependencies by using a memory buffer to save the outputs that serve as inputs for the next modules. The design insures that a module can have at most two dependencies.

The generic modules require a textual argument a m,i to determine which facet of the module to use, for example, the FilterAttribute module can be called for multiple attribute categories such as color and size. For instance, to filter the red objects we use the argument word "red" and input its cross-modal embedding to the module.

Module execution supervision. The executor network takes as input an image in the form of a list of object bounding boxes and their LXMERT embeddings. Every executor network ends with an answer module, the output of which is compared to the ground-truth to compute the output loss. To help modules converge faster to their expected behavior we also add the loss of each module to the output loss. The ground truth for each module is extracted from the image graphs given by the GQA dataset. Each image graph has k assigned bounding boxes bbox * 1...k with their names, coordinates, attributes, and rela-tions. Since we have two different intermediate module types, we define an intermediate loss for the attention modules and another for the boolean modules.

CURRICULUM LEARNING FOR VQA

Our aim is to study CL for VQA and find a CL method that allows to significantly reduce training cost while making a better use of the data. A CL method is usually defined by a difficulty criterion, a scheduler and a sampling function. The difficulty criterion allows to characterize the samples: training starts with the easiest samples, then progressively moves toward more difficult samples. Question loss was employed with some success as a difficulty criterion in [START_REF] Sachan | Easy questions first? A case study on curriculum learning for question answering[END_REF] for QA and in [START_REF] Askarian | Curriculum learning effectively improves low data VQA[END_REF] for VQA. However, computing question loss requires a first training iteration over all the training data. To make our own difficulty criteria, we assume that reasoning about a single object and its properties is simpler than examining the relations between several objects and comparing their attributes. The number of different objects in the question should then be a good indication of the complexity of reasoning and thus a relevant a priori difficulty criterion for CL. Program length is another potentially relevant criterion that takes into account the flow of gradient in module networks correspond-ing to longer programs and is related to the previous criterion (more objects in the question require longer programs). Note that several criteria can be combined to define the increasing difficulty of the training samples in CL. When employing the number of objects as a primary criterion, we also evaluate its refinement based on program length: for each number of objects in the question, we start with the short programs, then continue with the medium length ones and end with the long programs.

The scheduler in CL decides when the curriculum should be updated. A simple solution is to employ a fixed sample size for each difficulty level. The evolution of the loss can be employed to adjust this size.

The sampling function allows to modulate the selection of training samples within each difficulty level and works by assigning weights to all the examples. A relevant choice is to balance the occurrence probabilities of the different types of answer modules. Another criterion, used in boosting, is to privilege programs that lead to higher errors.

When the curriculum is updated, the new training sample has a higher level of difficulty than the previous ones. This does not mean that it subsumes the past samples and this is particularly true for the complex task of VQA. To avoid catastrophic forgetting, we add to the current sample (corresponding to the current difficulty level) a random selection from the past samples.

EXPERIMENTS

Experimental setup

GQA Dataset. GQA [START_REF] Hudson | GQA: A new dataset for real-world visual reasoning and compositional question answering[END_REF] features over 18M compositional questions and 113K real-world images. The reasoning steps of the questions are represented by functional programs. The questions and programs are generated by a question engine from the corresponding image graph. The image graphs are composed from ground-truth object bounding boxes together with their names, attributes, and relations. GQA is based on the Visual Genome dataset.

The GQA dataset has two versions: a balanced version (with a uniform distribution over the answers) and an unbalanced one. [START_REF] Tan | LXMERT: Learning crossmodality encoder representations from transformers[END_REF], this combination also allows us to get over 1M examples when training on the balanced set. We follow the recommendations of the dataset authors by evaluating the performance on the test-dev split instead of the val split when using the object-based features because they were trained on some images from the val set [START_REF] Anderson | Bottom-up and topdown attention for image captioning and visual question answering[END_REF].

In the GQA dataset, each question/image pair in the train, val, and testdev sets is associated with a functional program. The programs use 124 distinct modules, some of which only correspond to very few questions. We consider that modules should only differ when they correspond to operations that are different. We thus group specific modules into more general ones. For example, modules like ChooseHealthier and ChooseOlder are grouped in a ChooseAttribute module. This results in only 32 modules, the list of which is presented in the appendix.

Metrics. Several metrics are employed to compare CL and standard learning. Since our focus is on reducing the cost of training, we measure the total number of example presentations during training (Comp. cost). We also mention the maximal number of different examples seen during training (# examples), as different methods can make use of larger or smaller portions of the training set. While we focus on the cost of training, we nevertheless want to reach an accuracy that is close to the one obtained by standard learning, so we also report the accuracy of the predicted answers. -CL: The model is trained using Curriculum Learning and the filtering is driven by the number of objects in the programs. At every CL iteration the model sees 1M examples filtered from the unbalanced dataset by the curriculum sampler. The training needs 4 CL iterations to be complete, where each iteration has an increased difficulty given by the number of objects of its programs (ranging from 1 to 4).

Evaluated methods

-Length (L): The curriculum sampler filters the programs by their lengths for every number of objects, a CL-iteration is defined by a number of objects and a program length (short or medium or long).

-Weights (W): We use several sampling weights for the filtered programs: 'uniform' indicates that the sampling is uniform, so the sampling with replacement results in a sample that is uniformly distributed over all the dataset. To make the answer modules distribution of the resulting sample more uniform we use the 'answer module' weighting (denoted by W.a); this balances the answer modules appearances in the result sample so that the model equally sees all the defined answer modules. The 'modules loss' weighting (denoted by W.b) indicates that the example's weight is proportional to the sum of the average losses of the modules composing its program, to focus the model on hard examples.

-Pretrain (P): The model's parameters are initialized from a model trained using the Random variant described above.

-Repeat (R): We repeat the same CL-iteration twice.

Implementation details

We perform the experiments using the pre-processed GQA dataset programs and we focus on investigating the effect of several CL policies on the Program Executor module. Although our system also uses a transformer model as a generator to translate the question to its corresponding program, its task is relatively easy compared to the executor training and, similar to previous works (Li et al., 2019a;[START_REF] Chen | Meta module network for compositional visual reasoning[END_REF], we achieve near perfect translation results on the testdev-all set.

We employ LXMERT as a feature extractor and freeze its weights. LXMERT image inputs are the object bounding boxes provided by a Faster R-CNN object detection model [START_REF] Anderson | Bottom-up and topdown attention for image captioning and visual question answering[END_REF], where the number of bounding boxes per image is fixed to 36. We feed the questions and their corresponding object bounding boxes to LXMERT; the encoding yields 36 object features and the question word embeddings for each question/image pair. The extracted features and embeddings have the size of the LXMERT hidden size, i.e. 768.

During CL, we fix the sample size to 1M examples per CL iteration. Starting from the second CL iteration, 20% of the training sample is sampled from the examples seen in the previous itera-tion. Concerning the number of training examples, it is worth mentioning that we sample the training examples with replacement. Therefore, the number of distinct examples seen by the executor is lower than the sample size. To reduce the complexity of our proposed model, we allow weight sharing between compatible modules. For example, the relateObj and relateSub modules have similar structures and functionalities, both have visual and textual layers to project bounding box features and word embeddings in a multi-modal reasoning space (they also have an output layer to classify the answer). These two modules also have similar functionalities, i.e. they both relate to an object given an anchor object and a relation but they have a different relation direction. Therefore, we share the weights between the visual layers and the textual layers of both modules respectively, but without sharing the output layers to guarantee transitional direction differences. For training all the models we use SGD with a learning rate of 0.1 and a batch size of 1024.

Evaluation results

This section presents an analysis of the performance and the cost of our modular VQA framework with multiple CL training strategies, followed by a comparison with models not using CL to show the effectiveness of our proposed training approach.

Comparison of CL methods. We start by a comparative analysis of the proposed CL strategies as described in Sec. 4. Table 2 reports the performance of our model based on the different CL configurations detailed in Sec. 5.2. The goal of CL is to make the training more effective and to achieve the highest accuracy while training for fewer iterations. Therefore, for each model are shown the number of iterations and training examples required to reach the highest accuracy.

From the results, it is clear that the 'answer' weighting is the most effective weighting function. One can see this as a balancing of the answer modules presence over the training sample. The CL+W.a model (using the 'answer' weighting) achieves higher accuracy results than the CL+W.b model (with the 'losses' weighting), both reaching their top respective accuracies after 4 training iterations only. The 'answer' weighting also yields better accuracy than the 'uniform' weighting after the same number of training iterations. This is shown by comparing CL+L and CL+L+W.a in Table 3. Moreover, the accuracy of CL+L+W.a continues to increase after the 11th iteration to achieve its top at iteration 12. The superior performance of the 'answer' weighting function The refinement of the CL difficulty (or hardness) measure using the number of question objects (Length-CL difficulty measure) increases the CL+W.a top accuracy by 1%, see the CL+L+W.a line in Table 3. However, this improvement has a significant cost, as CL+L+W.a requires 12 training iterations (12M examples) unlike CL+W.a which only needs 4 iterations (4M examples). This reinforces the idea that with a more refined difficulty measure the model has more time to adjust to difficult examples, and its accuracy gradually increases to achieve a better top accuracy in a CL setting. But training on 12M examples is expensive since the overall dataset size is 14M examples. We thus decided to explore different options to obtain comparable results at a lower cost.

A promising finding was that pretraining the models for a few iterations with a randomly sampled 1M examples each leads to an accuracy increase of over 1.5%, as shown by the CL+W.a+P model which was pretrained for only 2 iterations. This "warms up" the model to the modular aspect of our VQA framework, allowing it to be more general and effective before starting the CL. An interesting finding was that the model reached peak accuracy before iterating over the full CL configuration. The accuracy drop resulting after the 4th iteration may be explained by model overfitting on the questions with 4 objects. Indeed, in the GQA dataset these questions have a substantially unbalanced answer distribution.

A further finding is that repeating the same CLiteration twice (as in CL+W.a+P+R) improves the top accuracy results by 1.1%, while only moderately increasing the number of iterations. This can be explained by the fact that doubling the number of training iterations helps the model better understand the structure of training data without augmenting the Impact of CL. We perform several experiments to assess the impact of the CL on our compositional visual reasoning framework. We do this by training our model without CL (Unbalanced, Balanced, and Random), then comparing the accuracy performance and the experiment cost in terms of computation cost and training data examples. In Table 4 we report the accuracy and cost results of the conducted experiments and compare them to the performance of our best CL model CL+W.a+P+R.

The Unbalanced model (trained on the entire unbalanced training set of 14M) achieves the highest accuracy value of 70.2%. This model also has the highest training cost among the evaluated models.

The Balanced model, trained on the balanced dataset for a large number of epochs, achieves lower results than the Unbalanced model. This is partly due to the fact that the balancing reduces not only the number of questions in the dataset, but also the diversity of the programs. Also, to the use of the unbalanced testdev-all for evaluation. By comparing our best CL model (CL+W.a+P+R) to the models trained without CL (no-CL), we find very significant gains in terms of computational cost, e.g. an 18-fold reduction compared to the top contender, the model trained on the Unbalanced dataset. The price to pay-a drop of only 2% in accuracy-appears reasonable.

APPENDIX

In this appendix, for reference purposes, we present the exhaustive list of modules together with their dependencies, types, and definitions (see Table 5). The column 'output' represents the module type: Attention, Boolean, or Answer. Attention modules produce an attention vector a where each element represents the relevance of the attended image object. Boolean modules make logical inferences and output a scalar representing the probability of the outcome. Answer modules give a probability distribution over the answer classes.

As mentioned in Section 5.3, we used a weight sharing technique to reduce the number of the model parameters; this also allows the shared layers to have a better defined behavior and to be updated based on a larger number of training examples. The overall principle is that a transfer is made only between some of the textual and visual layers, each module having a distinct output layer to guarantee its fine-tuning to the module's sub-task.

To decide what layers from which modules will share parameters, we assess the similarity between the modules by analyzing their functional and architectural properties. The former is derived from the module reasoning sub-task and the latter is derived from the module layer architectures. We cannot exhaustively describe here all the performed analysis, but in the following, we exemplify our strategy by comparing some of the modules and explaining their inherent similarities and differences. The Select module detects a relevant bounding box (given the name of an object) and the FilterAttr detects a relevant bounding box given an attribute. Functionally, they both solve a detection problem but have different textual argument semantics. Architecturally, they both have the same layer structure: a textual layer, a visual layer, and an output layer. We decide to share the visual layer between these two modules but use different textual layers to respect the semantic differences between the textual arguments.

However, FilterAttr can share its textual layer with other modules having an attribute as a textual argument (VerifyAttr, FilterNot).

The Same and Different boolean modules assess whether or not two selected objects share the same characteristic (provided by the textual argument). The probability p of two objects being similar is the opposite of them being different. Therefore, they share the same layers including the output layer and we use the relation p(Different) = 1p(Same) to differentiate them.

The object relations modules such as RelateSub and RelateObj have similar functionalities and neural structures. They share their visual layers to get a common scene representation and they share the textual layer due to the semantic similarity of their arguments (a relation).

Name

Dependencies Output Definition

Select

Figure 1 :

 1 Figure 1: The proposed modular VQA framework: The (question, image) pair is used by a transformer model to generate aligned cross-modal embeddings for words and objects. These are used by a Program Generator module to produce a program (represented as a sequence of sub-task modules), which will be then applied by the Program Executor module to the image to answer the question. The proposed work focuses on improving the Program Executor by using several curriculum learning (CL) strategies.

  For the unbalanced version, the train-all split has over 14M examples and the testdev-all has 172,174 examples, while the balanced version has over 943,000 examples for train, 132,062 for val and a testdev of 12,578 examples. To have a larger number of examples available for CL, we use the unbalanced GQA dataset. The exper-iments trained on the balanced dataset use the union of train and val as done in

  When describing the different performed experiments, we use the following notations, which correspond to different algorithmic choices: -Unbalanced: We train on all the examples from the unbalanced GQA train split, we use the traditional random batch training strategy and the model sees all the data examples in every epoch. -Balanced: We train on the balanced version of the GQA dataset. At every epoch, the model is trained on all the balanced dataset examples. -Random: Instead of training on all the dataset examples, only 1M random examples from the unbalanced dataset are presented to the model at every iteration.

  attention x = r(W t), Y = r(WV), o = S(W(Y T x)) FilterAttr [a] attention x = r(W t), Y = r(WV), z = S(W(Y T x)), o = min(a, z)FilterNot [a] attention x = r(W t), Y = r(WV), z = S(W(Y T x)), o = min(a, 1 -z) FilterPos [a] attention x = r(W t), Y = r(WV), z = S(W(Y T x)), o = min(a, z) RelateSub [a] attention x = r(W t), Y = r(WV), z = S(W(Y T x)), o = S(W(x ⊙ y ⊙ z)) RelateObj [a] attention x = r(W t), Y = r(WV), z = S(W(Y T x)), o = S(W(x ⊙ y ⊙ z)) RelateAttr [a] attention x = r(W t), Y = r(WV), z = S(W(Y T x)), o = S(W(x ⊙ y ⊙ z)) Fusion [a 1 ,a 2 ] attention o = min(a 1 , a 2 ) And [b 1 ,b 2 ] boolean o = b 1 × b 2 Or [b 1 ,b 2 ] boolean o = b 1 + b 2 -b 1 × b 2 Same [a 1 ,a 2 ] boolean x = r(W t), y = r(W(V a 1 )), z = r(W(V a 2 )), o = σ(W(x ⊙ y ⊙ z)) SameAll [a] boolean x = r(W t), y = r(W(V a)), o = σ(W(x ⊙ y)) Different [a 1 ,a 2 ] boolean o = 1same(a 1 , a 2 ) DifferentAll [a] boolean o = 1same(a) Exist [a] boolean o = σ(W([a ∥ max(a) ∥ min(a) ∥ mean(a)])) VerifyRelSub [a 1 ,a 2 ] boolean x = r(W t), y = r(W(V a 1 )), z = r(W(V a 2 )), o = σ(W(x ⊙ y ⊙ z)) VerifyRelObj [a 1 ,a 2 ] boolean x = r(W t), y = r(W(V a 1 )), z = r(W(V a 2 )), o = σ(W(x ⊙ y ⊙ z)) VerifyAttr [a] boolean x = r(W t), y = r(W(V a), o = σ(W(x ⊙ y)) VerifyPos [a] boolean x = r(W t), y = r(W(V a), o = σ(W(x ⊙ y)) ChooseName [a] answer x = r(W t), y = r(W(V a), o = S(W(x ⊙ y)) ChooseAttr [a] answer x = r(W t), y = r(W(V a), o = S(W(x ⊙ y)) Compare [a 1 ,a 2 ] answer x = r(W t), y = r(W(V a 1 ), z = r(W(V a 2 ), o = S(W(x ⊙ y ⊙ z)) ChoosePos [a] answer x = r(W t), y = r(W(V a), o = S(W(x ⊙ y)) ChooseRel [a 1 ,a 2 ] answer x = r(W t), y = r(W(V a 1 ), z = r(W(V a 2 ), o = S(W(x ⊙ y ⊙ z))Common [a 1 ,a 2 ] answer x = r(W(V a 1 ), y = r(W(V a 2 ), o = S(W(x ⊙ y)) (W(V a), o = S(W(x)) AnswerLogic [b] answer o yes = b, o no = 1 -b

Table 2 :

 2 Results on testdev-all for several CL strategies.

	Model	CL configuration weighting pretraining iterations/level	Iterations	Number of examples (≤)	Accuracy
	CL+W.a	answer	-	1	4	4 M	0.642
	CL+W.b	losses	-	1	4	4 M	0.635
	CL+W.a+P	answer	2 iterations	1	[2] + 3	5 M	0.670
	CL+W.a+P+R	answer	2 iterations	2	[2] + 5	7 M	0.681
	in two different comparable settings makes us select
	this weighting for the rest of the experiments.

Table 3 :

 3 Results on testdev-all with program length as a refinement for the CL difficulty measure. Computation cost is the number of seen examples per iteration times the number of iterations.

	Model	Comp. cost # examples Accuracy
	CL+L	11	11 M	0.650
	CL+L+W.a	12	12 M	0.655

Table 4 :

 4 Comparaison of our CL model (CL+W.a+P+R) with no-CL models (Unbalanced, Balanced, and Random) on the testdev-all set.

	Model	Comp. cost # examples Accuracy
	Unbalanced	9 × 14 M	14 M	0.702
	Balanced	50 × 1.4 M	1.4 M	0.678
	Random	12 × 1 M	≤ 12 M	0.694
	CL+W.a+P+R	7 × 1 M	< 7 M	0.681
	6 CONCLUSION
	In this work we present several Curriculum Learn-
	ing (CL) strategies within a Neural Module Net-
	work (NMN) framework for Visual Question An-
	swering (VQA). Our visual reasoning approach lever-
	ages a cross-modal Transformer encoder to extract
	aligned question/image features along with question
	programs to perform multi-step reasoning over the
	image and predict an answer. Our model employs
	an NMN architecture composed of multiple neural
	modules, each capable of performing a reasoning sub-
	task. We compare several CL strategies for VQA. Our
	model is evaluated on the GQA dataset and shows
	very interesting results in terms of computational cost
	reduction. To drive the CL strategy, we introduce a
	difficulty measure based on the number of objects in
	the question and we achieve close accuracy results by
	training on a judiciously sampled 50% of the training
	data, compared to an NMN model trained without CL
	on the entire training set.

Table 5 :

 5 Exhaustive module definitions. S: softmax, σ: sigmoid, r: RELU, W: weight matrix, a: attention vector (36 × 1), b: boolean scalar, V: visual features (768 × 36), t: text features (768 × 1), ⊙: Hadamard product, [a∥b]: concatenation, min: element-wise minimum.

ACKNOWLEDGEMENTS

We thank Souheil Hanoune for his insightful comments. This work was partly supported by the French Cifre fellowship 2018/1601 granted by ANRT, and by XXII Group.


Paul W Sanford

Juan Antonio Carretero
email: juan.carretero@unb.ca

Andrew C Mathis

Stéphane Caro
email: stephane.caro@ls2n.fr

Toward the Creation of a Hybrid 4-UPS CDPR ⋆

Keywords:

A hybrid cable-driven parallel robot (CDPR) is being developed that expands the capabilities of conventional CDPRs by replacing one of the cables with a linear actuator that can be spooled and extended. This actuator uses three curved leaf springs connected using magnetic strips to provide compressive or tensile forces while being very compactly stored, and is kinematically similar to a cable that can push. When used in conjunction with a suspended CDPR, this actuator is being designed to be part of a novel pick-and-place robot that combines the benefits of cable robots (lightweight actuators) with those of a conventional manipulator (each of the actuators can be above the workspace to help avoid cable collisions). The developments of this novel actuator are outlined, showing how pointing motions were made possible through mechanical design.

Introduction

In the field of Cable-Driven Parallel Robots (CDPRs) two of the greatest challenges toward practical implementation come from cable interference, and developing manipulator configurations that are capable of completing tasks in a cluttered industrial environment. This is particularly apparent in spatial applications where tasks must be completed over a flat workspace (such as a conveyor belt) due to the requirement for cable tension to be maintained in order to retain control. This means that CDPRs with an antagonistic actuator configuration are the only ones capable of providing a downward force greater than the weight of the end-effector, while cable-suspended parallel robots (CSPRs), CDPRs with each of their cable anchor points above the workspace, are limited in the downward forces that they can apply [START_REF] Pott | Cable-Driven Parallel Robots[END_REF]. The manipulator discussed in this paper attempts to solve some of these problems by combining a CSPR with ⋆ Supported by NSERC Discovery Grant funding.

a novel extensible linear actuator that can sustain forces both in tension and in compression.

The linear actuator used in this manipulator is being designed specifically for this application. The goal of the design is to create an actuator that retains most of the benefits of cable robots while also being able to provide a compressive force in order to have favourable actuator positions. It must be capable of being directed in pointing motions, similar to a universal joint.

Hybrid CDPRs or h-CDPR refer to a CDPR where one or more of the cable actuators has been replaced by a rigid kinematic chain, commonly using a linear actuator in order to have one actuator capable of providing compressive forces [START_REF] Alamdari | Modeling and control of a novel home-based cabledriven parallel platform robot: PACER[END_REF][START_REF] Behzadipour | Cable-based robot manipulators with translational degrees of freedom[END_REF][START_REF] Duan | Performance simulation and energetic analysis of TBot high-speed cable-driven parallel robot[END_REF][START_REF] Yuasa | Hybrid drive parallel arm for heavy material handling[END_REF][START_REF] Zhang | Optimal design of a high-speed pickand-place cable-driven parallel robot[END_REF]. With universal and spherical joint connections to the frame and end-effector, respectively, the resultant manipulator is kinematically equivalent to a standard CDPM. While designing the extensible linear actuator there were several criteria that had to be met in order to be used as part of a h-CDPR. The first of which is that it must be lightweight to maintain low inertial properties and high efficiency. The second is that, like a cable, the material that is extruded should be coiled when not in use so that the linear actuator does not require excessive space above the workspace. The third requirement is that this actuator should be rigid and strong enough to supply a compressive force. In a CSPR, this will allow the cables to remain in tension and the manipulator to provide a downward force greater than the weight of the end-effector. This has an effect of an extended force closure workspace compared to a typical CSPM [START_REF] Carretero | Wrench capabilities of cable-driven parallel mechanisms using wrench polytopes[END_REF].

The goal of this actuator is to be used in a spatial pick-and-place parallel robot for lightweight applications similar to ABB's Flexpicker (IRB 360) [START_REF]Product specification[END_REF]. This will fit into a class of medium-sized CDPRs alongside these examples [START_REF] Mishra | Forward kinematics for suspended under-actuated cabledriven parallel robots with elastic cables: A neural network approach[END_REF][START_REF] Mottola | Dynamically feasible motions of a class of purely-translational cable-suspended parallel robots[END_REF][START_REF] Sciarra | Design and Kinetostatic Modeling of a Cable-Driven Schönflies-Motion Generator[END_REF][START_REF] Yang | Adaptive control with a fuzzy tuner for cable-based rehabilitation robot[END_REF]. This also fits into a more niche group of linear actuators being created for CDPRs alongside work at Université Laval [START_REF] Servant | Conception d'un actionneur prismatique rétractable[END_REF]. Similarly, a high-speed CDPR with a similar architecture and goals has been constructed using a passive spring-loaded central rod for pick-and-place motions with a delta configuration [START_REF] Duan | Performance simulation and energetic analysis of TBot high-speed cable-driven parallel robot[END_REF][START_REF] Zhang | Optimal design of a high-speed pickand-place cable-driven parallel robot[END_REF]. In this work, for the designed linear actuator to be used in a spatial manipulator the rod must be capable of prismatic (linear) actuation as well as passive rotation for pointing motions, similar to the capabilities of a universal joint. This paper outlines the development of a novel leaf-spring actuator for prismatic actuation and pointing guidance developed at the University of New Brunswick. This actuator prototype uses standard measuring tapes as the leaf springs, connected using magnetic strips to form a strong, rigid rod to be used as part of a hybrid CDPR.

Project History

Development of the Tape Rod

This project is not the first attempt that has been made to create a linear actuator that can be extruded from a roll. This work has been reviewed in [START_REF] Jensen | Arm development review of existing technologies[END_REF][START_REF] Mathis | A high packing ratio linear actuator for use in cable driven parallel manipulators[END_REF][START_REF] Rauchenbach | Solar cell array design handbook[END_REF], and can be divided into thin-walled tubular booms [START_REF] Jensen | Arm development review of existing technologies[END_REF], tape springs (most com-monly in tape measures) in [START_REF] Stanev | Linear drive mechanism[END_REF], and more specifically as part of parallel manipulators (PMs) in [START_REF] Guinot | Hybrid tapesprings for deployable hexapod[END_REF][START_REF] Soetebier | Spread-Band: A smart machine element enables compact parallel robot design[END_REF]. Helical band actuators have been manufactured by Spiralift [START_REF]Gala Systems[END_REF]. Other types of compact linear actuators include collapsible tubular masts [START_REF] Chu | Design theory and dynamic analysis of a deployable boom[END_REF][START_REF] Rehnmark | Development of a deployable non-metallic boom for reconfigurable systems of small spacecraft[END_REF][START_REF] Seifart | Deployable structure for flexible solar generators[END_REF], triangular rollable and collapsible booms [START_REF] Arya | Ultralight structures for space solar power satellites[END_REF][START_REF] Banik | Performance validation of the triangular rollable and collapsible mast[END_REF], and closed-section triangular booms in works such as [START_REF] Bobbio | Spool-mounted coiled structural extending member[END_REF][START_REF] Saito | Manipulator mechanism[END_REF]. The linear actuator developed and described in this work most closely represents a closed-section triangular boom and uses several tape measures attached using magnetic strips to keep them together.

Building from these developments in the field, some prior work at UNB was completed where sets of three tape measures were attached using various methods. The mechanical properties of several design options were tested using standardized methods, including bending and buckling. Further testing was performed on the top candidates using a custom-made dynamic testing jig shown in Fig. 2. This study resulted in a tape rod attached by magnetic strips along the outer edge that was capable of supporting a compressive load greater than 300 N at a rod length of 1 m [START_REF] Mathis | A high packing ratio linear actuator for use in cable driven parallel manipulators[END_REF]. This is significantly stronger than the tapes on their own as they readily buckle under compressive or bending loads. This design was the best among the tested methods using exclusively readily-available, off-the-shelf components. The rods were supported on both ends with a custom 3D-printed end block that matched the geometry of the attached tapes. Each rod was made of a fixed length for testing, and a cross-section of one of those rods is drawn in Fig. 1. The magnetic strips are glued to the tapes along the entire length, and each set of tapes is attached magnetically as shown. Conventional CDPRs require proximal anchor points (the points attached to the stationary frame) both above and below the workspace to be able to control the force in the vertical direction beyond what gravity will allow. With every proximal anchor point above the workspace (therefore above the distal anchor points on the mobile platform), it is a CSPR and has capabilities that are limited by both gravity and the minimum cable tension required to avoid slack. The goal of creating this actuator is to replace one of the cables in a CSPR to expand its capabilities. This can theoretically allow downward acceleration faster than gravitational acceleration and downward forces greater than the combined weight of the mobile platform and its hardware. The benefit of having every proximal anchor point above the workspace is to help avoid collisions between the cables and objects in the workspace, which could be applicable for a robot sitting over a flat surface such as a conveyor belt.

Magnetic Strips

Planar Example

Although the manipulator under development is spatial, the expanded capabilities are most easily demonstrated with a planar CDPR. For this purpose, a 3-actuator planar CDPR with anchor points forming an equilateral triangle is considered. In order to qualitatively demonstrate the static equilibrium workspace (SEW) of this manipulator a few assumptions are required. First, the manipulator can be kinematically described as a 3-RPR parallel manipulator without any rotational limits for the revolute (R) joints, while the length of each actuated prismatic joints (P) can have any positive length. Each cable actuator has a minimum allowable tension force that would be the amount required to avoid having a slack cable. That is, it is a non-zero positive value. Also, it is assumed that there is a larger, positive tension value as a maximum actuator force that could correspond to the limits of safe operation based on the cable strength or the driving motor limits.

A second, similar CDPR can be used for comparison that replaces one of the actuated cables with a linear actuator, making it a hybrid CDPR. This actuator has an actuation distance limit from 0 to some finite length, and a force limit that can be negative (a compressive force) or positive (a tension). The manipulators are shown with an approximation of their workspaces in Fig. 3. The SEW of the 3-cable actuator has three sides, each of which are curved-in toward the centre of the manipulator. The requirement for finite tension in the cables makes it so the mobile platform can not be in-line between two of the proximal anchor points. The workspace of the 2-cable plus 1-linear actuator mechanism has an expanded workspace where the side opposite the linear actuator attachment point extends past the convex hull of the actuator base positions.

Current Research (Spatial 4-UPS)

Extending into the spatial case, a similar effect on the workspace is expected, where the workspace can be extended based on the addition of a linear actuator Fig. 3: Qualitative SEW of two variants of a planar CDPR. Red circles represent cable actuators and the green squares represents a linear actuator. The shaded area is an approximation of their respective workspaces.

for compressive forces. While the mass of the end-effector allows motions to take place underneath the actuators in a suspended configuration, the force capabilities are expanded by the addition of the extensible linear actuator making a spatial, hybrid CDPR. The goal of this manipulator was to have a workspace similar to that of ABB's Flexpicker, which has a nearly cylindrical workspace with a diameter of 1.13 m and a height of approximately 0.3 m [START_REF]Product specification[END_REF]. A simplified manipulator diagram is shown in Fig. 4. The reachable workspace of the designed CDPR is explained more in Section 4.

To accomplish a similar workspace, the novel linear actuator is placed at the top centre of a cubic frame with a side length of 2 m. Three cable actuators are placed approximately 1 m from the central linear actuator, equally spaced around the outside of the top of the frame. A finalized CDPR with the extensible linear actuator could complete the same pick-and-place motions as the Flexpicker with lower costs and reduced energy consumption due to the mass of the cables being less than that of rigid actuators.

In a spatial manipulator, the kinematic model treats each cable actuator as a UPS chain, with U representing a universal joint and S representing a spherical joint. The novel linear actuator should be capable of movements similar to a universal joint, or pointing motions. The kinematic complexity of this manipulator comes from the extensible linear actuator not being a true universal joint. The twisting and bending motions do not take place about coinciding axes, meaning that the point where the rod begins changes as a function of the location of the end-effector, as well as the length of the tape inside the guides between the spools and the beginning of the rod. Consideration will need to be made in the control algorithm in order to maintain reasonable accuracy by approximating the effect of this actuator.

Reachable Workspace IRB 360 Workspace

Actuator Design

Methodology

The portion of the actuator that needs to be guided is the driven tape, as it must withstand compressive forces while not having the added strength of being combined into the rigid rod of three tapes. In order to effectively guide the tape it is necessary to prevent unsupported bending and buckling, as that would cause the actuator to be unable to transmit force. Fig. 5 shows a cross sectional view of the tape actuator. A tape enters the actuator on the right, is driven by two wheels that compress it, freely twists through one guide, bends in the next, then is combined with the two other tapes at outlet of the actuator.

In order to allow the tapes to twist about their longitudinal axis the chosen method of support was to create a series of disks with a hole matching the profile of the tapes with the magnetic strips on the outer edges. The holes have a cross-section slightly larger than the tapes, allowing for some motion throughout their thickness, and the disks can slide relative to one another to allow the tape to experience a significant level of twist while still being supported against buckling throughout the entire length. During the design stage, a length of ≈14 cm was adequate to allow the tape to twist throughout the workspace within the ±90°range, which is the most that this actuator could move with its current design. To reduce friction during actuation and strain in the driven tape this is artificially decreased to ±45°. After printing a test disk with the chosen hole spacing it was found that there was adequate clearance and support for approximately 1 cm of length without issues. This discretized the twisting between 14 disks so that each one supports an equal angular displacement. Fig. 5 shows an outer case that is bolted to the frame and the shape of the disks that are used to fill it.

Bending Guide

The bending guide proved to be a more complex problem as it was hung from the previous twisting guide frame, and the rotation of the tape required it to be bend while still being supported. In order to force the tape to bend in a controlled manner, the chosen method was to rotate it about a fixed radius of curvature by wrapping the tape around a guiding wheel.

To avoid damaging the magnetic strips (or breaking the adhesion between the strips and the tape measures), surface contact on the face of the magnetic strips should be avoided as much as possible. This combination of constraints led to a design with a rolling wheel contacting the flat face and a meshing guide contacting the centre of the tape on the opposite side, as the magnetic strips are placed along the outer edges. This guide slots into the rotating part of the guide to support the tape at any feasible rotation angle, and is shown in Fig. 6. The current design is capable of guiding the tape through a bending rotation of ±23°, although this could be increased with a few minor modifications to the chosen joint limits. Fig. 6 shows the bending guide, which is bolted to a flange at the end of the twisting guide. The tape passes through the inside of the guide along a wheel, and several rollers support the tape as it straightens after the bend.

Combining Tapes

After the driven tape passes through the two guides (twisting and bending), it must be brought into contact with the two non-driven tapes to form a rigid rod. The chosen attachment method of having magnetic strips along the outer edges of each tape and a triangular combined configuration necessitates accurate positioning of each of the tapes. Without accurate alignment the tapes may not end up with proper contact and the strength of the actuator (and therefore the amount of force that can be transferred) can be substantially reduced.

The method used to combine the tapes was to have a "separating plate" that has three separated slots for the tapes, and a "rod brace" that smoothly guides each of the tapes together. This functions similarly to how the slider of a zipper separates and combines the teeth. The separating plate has three slots with the shape of the cross-section of the tapes with magnetic strips at the edges, and are angled toward the centre of the brace. The rod brace is shaped to support the three outer walls of the linear actuator and guide the final bend as the three tapes are combined. Fig. 7 shows the end of the bending guide bolted to the separating and bracing pieces. The driven tape is passed directly into the guide, while the non-driven tapes are fed from outside into the separating plate. These design choices help keep the moment of inertia of the actuator lower than if each of the stored tapes were fixed to the moving rod.

The actuation of the driven tape happens immediately before any of the guides, and each of the parts is fixed to the frame. The driven tape passes out of its case into a frame with wheels used for actuation. There are two wheels, each of which has a slot for rubber O-rings on the outer face to have a high friction surface to contact the painted metal tapes. One wheel is driven and is connected to a DC gearmotor using a keyed shaft. A second shaft supports another wheel that is free to rotate on bearings, but extension springs are used on either side to pull the two wheels together to increase the contact force and reduce the chance of slipping. Fig. 5 shows the tape actuator, where the bottom wheel is driven by a motor, the top wheel is free to rotate, and the top of the brace is bolted to a plate on the frame.

Reachable Workspace

Given the limitations in the bending and twisting guides, the reachable workspace of the h-CDPR is the same as that of the designed linear actuator. This is shown in Fig. 4, and is compared directly with the workspace of ABB's Flexpicker (IRB 360) in Fig. 8. A maximum linear actuator length of 1 m was used for this reachable workspace because that is the length that has been tested in [START_REF] Mathis | A high packing ratio linear actuator for use in cable driven parallel manipulators[END_REF]. The minimum length was chosen to be 0.5 m, giving the reachable workspace a spherical shape as the inner and outer surfaces. The current reachable workspace is shown as a wedge of the area common to two spheres with radii of 0.5 m and 1 m, with bending limits of 90°and twisting limits of 46°. Future validation may allow for a linear actuator maximum length to exceed 1 m and modifications of the bending guides to allow for greater rotations than the current ±23°currently used, which would expand the reachable workspace. The static equilibrium and wrench-feasible workspaces will be a subset of this, and based on the final joint limits and actuator capabilities of the constructed manipulator, as well as the desired task.

Conclusion

The development of a hybrid CDPR shows promise as a method to complete pick-and-place tasks with lightweight and efficient actuators. The novel extensible linear actuator extends past what many prior actuators were capable of by combining multiple tapes into a rigid rod. If the spatial actuator performs similarly to the prior tests with fixed-length test samples, this manipulator should be more than capable of expanding the capabilities of conventional CSPRs in terms of force capabilities. With further development, this system could be used in facilities that would otherwise use a conventional parallel manipulator, such as ABB's IRB 360, with improvements to the amount of overhead vertical space required. Theoretically, this manipulator can retain all the same benefits of a CDPR while providing more functionality, and these prospects will continue to be studied as this project develops.

Fig. 1 :

 1 Fig. 1: Cross section of three tape measures attached using magnetic strips.

Fig. 2 :

 2 Fig.2: Dynamic testing jig of a non-actuated tape rod[START_REF] Mathis | A high packing ratio linear actuator for use in cable driven parallel manipulators[END_REF].

Fig. 4 :

 4 Fig. 4: Simplified model of the manipulator showing the IRB 360 workspace (cylindrical) and reachable workspace of the designed manipulator (wedge of a sphere).

Fig. 5 :

 5 Fig. 5: Full actuator assembly cross section.

Fig. 7 :

 7 Fig. 6: Bending guide.

Fig. 8 :

 8 Fig. 8: Comparison of the workspace of the IRB 360 (cylinder) to the reachable workspace of the designed h-CDPR (wedge) Dimensions are in mm.


Foroogh Behroozi
email: foroogh.behroozi.1@ulaval.ca

Philippe Cardou
email: pcardou@gmc.ulaval.ca

Stéphane Caro
email: stephane.caro@ls2n.fr

Transmission Systems to Extend the Workspace of Planar Cable-Driven Parallel Robots

Keywords: Transmission System, Wrench-Closure-Workspace, Wrench-Feasible-Workspace, Transmission matrix, Schematic design, CDPR

In cable-driven parallel robots (CDPRs), each cable is typically driven by one actuator, and one is led to think that the number of actuators necessarily depends on the number of cables. In this paper, we consider that the number of cables depends on the required workspace while the number of actuators depends on the number of degrees of freedom of the robot. When designing a CDPR, one typically starts from the shape of the desired workspace to determine the required number of cables. Thence, he or she adds as many actuators, assuming that each of them drives one cable. Here, the number of actuators is supposed to be equal to one more than the number of degrees of freedom of the CDPR irrespective of the number of cables. A transmission system is designed for the actuators to drive several cables, first theoretically in the form of a transmission matrix, and then mechanically in the form of the corresponding cable-pulley routing. Two examples are proposed with two and three degrees of freedom respectively; both aim at covering a rectangular workspace. The wrench-closure-workspaces of the resulting robots compare favorably to existing CDPRs with more actuators.

Introduction

One of the most commonly adopted architectures for planar Cable-Driven Parallel Robots (CDPRs) aims to cover a rectangular workspace and typically consists of four cables and four actuators (see Fig. 1(a)). As a result, CDPR with four cable and a point-mass end-effector have a degree of redundancy of two. As cables can only exert tension and not compression, an n-DoF CDPR should generally include at least n + 1 actuated cables to ensure that the end-effector is in a wrench-closure configuration. In the 2-DoF planar CDPR with a pointmass end-effector under consideration, this means that the minimum number of actuators is three, so it has one more than necessary. The additional actuator(s) can result in a significant cost for the robot, and therefore, we seek to remove one actuator while preserving the rectangular workspace. Our strategy is to keep the same four cables while searching for a transmission system that would allow them to be driven by just three actuators, as shown in Fig. 1(b). A planar 3-DoF CDPR driven by no more than four actuators is also synthesized and studied in this paper. Fig. 1: Planar CDPRs with four cables and a point-mass end-effector: (a) having four actuators; (b) using a transmission system to drive four cables with three actuators

The use of pulleys and additional cables to reduce the number of actuators in CDPRs has been previously explored in the literature [START_REF] Kevac | Development of cable-suspended parallel robot, cpr system, and its sub-systems[END_REF][START_REF] Khakpour | Workspace augmentation of spatial 3-dof cable parallel robots using differential actuation[END_REF][START_REF] Khakpour | Synthesis of differentially driven planar cable parallel manipulators[END_REF][START_REF] Khodadadi | Kinematic analysis of planar cable-driven robots with parallelogram links[END_REF]. The concept of using cable differentials in the design of spatial and planar CDPRs is presented in [START_REF] Khakpour | Workspace augmentation of spatial 3-dof cable parallel robots using differential actuation[END_REF][START_REF] Khakpour | Synthesis of differentially driven planar cable parallel manipulators[END_REF]. Those papers focused on comparing the results of using the same actuator and increasing the number of cables and differentials to determine the coverage of the workspace [START_REF] Khakpour | Workspace augmentation of spatial 3-dof cable parallel robots using differential actuation[END_REF]. In [START_REF] Khakpour | Synthesis of differentially driven planar cable parallel manipulators[END_REF], the authors used differentials to actuate several cables of a planar CDPR by an actuator to minimize the number of actuators. Their results showed that using differentials leads to larger workspaces and improved kinetostatic performance with the same number of actuators. They covered the triangular shape of the WCW using three actuated cables.

Cable-pulley transmission systems offer a unique combination of zero-backlash motion, high stiffness, low stiction, and low friction, making them desirable in force and torque control applications [START_REF] Schempf | Comparative design, modeling, and control analysis of robotic transmissions[END_REF]. In [START_REF] Fedorov | Differential noncircular pulleys for cable robots and static balancing[END_REF], a mechanism comprising two non-circular pulleys and a constant-length cable was introduced. The authors proposed a differential cable routing method in order to enhance the capabilities of the non-circular pulley mechanism. In [START_REF] Kevac | Development of cable-suspended parallel robot, cpr system, and its sub-systems[END_REF], Kevac and Filipovic provided an overview of various construction modeling approaches in cable-suspended parallel robots (CSPR). They presented six types of CSPR systems for camera carriers that can cover the workspace using only three actuators instead of the typical four, although they did not specify the percentage of the desired workspace area that can be covered by their proposed concepts.

In [START_REF] Vu | On the design of a three-dof cable-suspended parallel robot based on a parallelogram arrangement of the cables[END_REF], an original design for a 3-DoF CDPR that utilizes six cables and three actuators are proposed. The authors employed a parallelogram configuration to simultaneously wind two cables by an actuator, allowing for the fixation of the moving-platform (MP) orientation while performing the translational movement.In [START_REF] Étienne | Design of a planar cable-driven parallel crane without parasitic tilt[END_REF], the design, modeling, and prototyping of a planar CDPR with infinite rotation capabilities, free from parasitic tilt, and without the need for an additional actuator is presented. The 2-DoF motions of the MP and the internal degrees of freedom of the embedded mechanism are controlled by a total of three actuators, which are fixed to the frame. The proposed crane robot comprises of a mobile platform (MP) equipped with an embedded mechanism and a transmission module. The MP is connected to the frame via four cables, three of which act in parallel, forming a double parallelogram structure. The 2-DoF motions of the moving platform and the internal degrees of freedom of the embedded mechanism are controlled by a total of three actuators, which are fixed to the frame.

In [START_REF] Liu | Conceptual design and static analysis of novel planar spring-loaded cable-loop-driven parallel mechanisms[END_REF], two novel architectures for planar spring-loaded CDPRs that do not require actuation redundancy are proposed. The authors combine springs with a cable-loop system to to eliminate the need for actuator redundancy, allowing for N actuators to control N -DoF motion. The proposed method ensures that the cables and springs are kept in tension within a rectangular workspace, but preloading of the springs is required to cover the entire workspace. The authors suggest that appropriate adjustments to the portion of stiffness and preload can increase the workspace.

In [START_REF] Khodadadi | Kinematic analysis of planar cable-driven robots with parallelogram links[END_REF], a configuration for planar CDPRs that utilizes parallelogram links instead of conventional links is presented. The use of parallelogram links ensures that the cables remain in tension during the robot's movements, thereby enhancing its dexterity and elastic stiffness, as well as the magnitude of its stiffness indices. The authors manipulate cable redundancy to maintain the robot's structure while utilizing only three actuators in the design of the planar CD-PRs. In this research, a general formulation for parallelogram links is provided to support the suitable design of planar CDPRs. Although the proposed structure is applied to both fully constrained actuated and redundantly actuated configurations, it is unable to cover the entire rectangular workspace.

In this paper, two novel cable robot architectures are proposed that aim to reduce the number of actuators while preserving a large wrench-closureworkspace (WCW). This architecture is distinct from traditional cable robot architectures, which typically feature a one-to-one correspondence between cables and actuators. In these proposed architectures, a single cable may be linked to multiple actuators (or conversely), resulting in a reduction in the number of actuators required. In general, if p actuators drive an n-DoF CDPR that does not rely on gravity or any other external force to keep the cables taut, then p ≥ n + 1 is a necessary condition for the moving-platform to be in equilibrium. We resort to a transmission matrix to effectively describe the relationship between actuators and driving cables.

The organization of this paper is as follows. The mathematical foundation of the kinetostatic analysis of n-DoF m-cable p-actuator CDPRs is presented in Section 2. In Section 3, the transmission matrices, WCW, Wrench-Feasible-Workspace (WFW), and architecture of a 2-DoF four-cable three-actuator CDPR are discussed. The transmission matrix for a 3-DoF six-cable four-actuator CDPR is presented in Section 4, along with an illustration of its WCW in various orientations.

Kinetostatic Analysis

In this section, we present the kinetostatic analysis of the proposed n-DoF mcable p-actuator planar CDPR. The equations of equilibrium of the end-effector can be written as Eq. ( 1) as reported in [START_REF] Gouttefarde | On the properties and the determination of the wrench-closure workspace of planar parallel cable-driven mechanisms[END_REF].

W(p)t + w e = 0 n , t > 0 m , (1)
Where W(p) ∈ R n×m is the wrench matrix of the cable robot when its endeffector is located at p, w e is the external wrench and t is tension vector. The WCW is the set of poses of the platform where any wrench that can be generated at the platform by tightening the cables [START_REF] Gouttefarde | Analysis of the wrench-closure workspace of planar parallel cable-driven mechanisms[END_REF]. Roberts et al. [START_REF] Roberts | On the inverse kinematics, statics, and fault tolerance of cable-suspended robots[END_REF] showed that a given pose lies inside the WCW (i.e., has wrench closure) if and only if one can find a vector t ⊥ > 0 m in the nullspace of W, where > indicates a componentwise strict inequality.

In our case, however, not all the tensions found in the nullspace of W can be generated from p < m motors. Let us define matrix T ∈ R m×p , which represents the linear transmission between actuators and winches. The matrix T maps actuator torques τ into cable tensions t ∈ R m×1 , namely,

t = Tτ . (2)
To determine whether there exists a solution (T, τ ) to equations ( 2) and for external wrench w e = 0, we must identify a positive vector t that lies simultaneously within the nullspace of the wrench matrix W(p) and in the range1 of matrix T. To accomplish this, we recast equations (2) into matrix form, which yields:

W 0 n×p I m×m -T t τ = 0 n 0 m (3)
where I m×m is the m × m identity matrix and 0 n×p is the n × p zero matrix. The solution of Eq. ( 3) amounts to computing the nullspace of the (m + n) × (m + p) matrix and verifying whether t > 0 n . As p = n + 1, the number of columns is one more than the number of rows and this matrix has a rank of m + n unless one of W and T is rank-deficient. To compute this nullspace symbolically, let us modify it by adding two variable vectors z 1 ∈ R m and z 2 ∈ R p , as the first row of the matrix of Eq. ( 3). This yields the square matrix

A =   z T 1 z T 2 W n×m 0 n×p I m×m -T m×p   (4)
To calculate the cable tensions, we can take the partial derivative of the determinant of Eq. ( 4). If we let adj(A) and det(A) be the adjoint matrix and determinant of A respectively, then, by definition,

Aadj(A) = det(A)1 (m+n+1)×(m+n+1) . (5)
By knowing that t ⊥ is the first column of adj(A), the WCW of the proposed CDPR is the set of poses where:

t ⊥ = ∂ ∂z 1 det(A) > 0 m , (6)
Since t ⊥ can be computed in closed form, leaving the pose parameters as variables and setting the entries of t ⊥ equal to zero one at the time yields the potential boundaries of the WCW. To our knowledge, this method of tracing the WCW for CDPRs where T = I m×m has not been reported before.

3 A 2-DoF Four-Cable Three-Actuator CDPR

Consider the case of the 2-DoF CDPR shown in Fig. 1b, where a particle endeffector is to cover a workspace that is as close as possible to the encompassing rectangle.

Determination of the transmission system T of a 2-DoF CDPR

The CDPR workspace depends on the value of the transmission matrix T. This value was obtained through trial and errors, while following a few guidelines. First, we should pick T so as to maximise the area of the corresponding WCW. Second, T should be as sparse as possible in order to simplify the mechanical implementation of the transmission system. Third, we hypothesized that the transmission should abide at least partly by the same symmetry found in the CDPR geometry for the WCW area to be maximised. Fourth, we hypothesized that restricting ourselves to entries of T that were either -1, 0 or 1 would still allow us to maximise the WCW area. Indeed, the scale of a row of T has no effect on the WCW, as long as its sign remains the same. The same goes for the scale of a column of T, which can always be adjusted by changing the input torque of a motor. This is the rationale behind this hypothesis. Optimal T matrices were found, which maximize the WCW of the CDPR, and each of them yields the same WCW:

T =     1 1 0 1 0 1 1 -1 0 1 0 -1     and T =     1 1 0 1 0 1 0 -1 0 0 0 -1     (7)
The value of the element T i,j of T is T i,j = 1 when the i th cable is connected to the j th actuator directly and is T i,j = -1 when the i th cable is connected to the j th actuator in reverse. T i,j = 0 when the i th cable is not connected to the j th actuator. The second actuator needs to connect to cables one and three, while the third actuator connects to cables two and four. When the second actuator winds the first cable, it has to unwind the third cable at the same rate. Also, the relation between cable numbers two and four is the same, but with the third actuator.

Having defined T, we turn our attention to the computation of its associated WCW. This is done by following the method detailed in section 2, which results in the WCW shown in Fig. 2(a). As shown, in this figure the WCW of this robot covers the whole rectangle formed by the fixed cable attachment. In Fig. 2(b), the WCW of a similar CDPR proposed in [START_REF] Khodadadi | Kinematic analysis of planar cable-driven robots with parallelogram links[END_REF] is shown, which could not cover some parts of the rectangular shape workspace. Using Maple2018, we obtained symbolic expressions of the workspace through the four inequalities t ⊥ = ∂ ∂z1 det(A) > 0 4 . The workspace boundaries in the Cartesian plane take the form t ⊥ (x, y) = 0 4 are non-polynomial in x and y. The WFW is the set of platform poses where all the wrenches of a given set, can be balanced with tension forces in the cables such that the cable tensions are within prescribed limits [START_REF] Gouttefarde | Analysis of the wrench-closure workspace of planar parallel cable-driven mechanisms[END_REF]. To determine the area where all cable tensions are within a specified range, the WFW of the manipulator is determined.

We trace the WFW with the values of drum radius R 1 = R 2 = R 3 = 25mm, where the tension limits are set to 0.5N and 20N (Fig. 3). We see that the WFW is approximately rectangular, but its size shrinks as the interval of external forces widens.

Having confirmed that the proposed CDPR architecture allows wrench closure over the full rectangle formed by its fixed attachment points with three actuators, we set out to propose a mechanical realization of this theoretical design. with square external force 5N with the origin center.

Embodiment of the Transmission System in a 2-DoF Planar CDPR

For the implementation of the proposed transmission matrix, we decide to use cable-pulley transmission systems to distribute the power of three actuators among four cables. Two mechanical implementations of the transmission matrices are schematised in Fig. 4. The schematic corresponding to the transmission matrix given in Eq. ( 7) is presented in Fig. 4(a). As shown in Fig. 4(a), we use two moving three-level pulleys, which directly control the cables in the workspace. The first actuator helps to drive all moving pulleys, while the second and third actuators are used to drive two cables at the same time. Another schematic that represents a possible embodiment of the transmission matrix given in Eq. ( 7) is proposed in Fig. 4(b). As shown in Fig. 4(b), we use two moving two-level pulleys to keep cables one and four in tension in the workspace. The first actuator controls the force applied by these two-level pulleys.

To ensure that the cable routings of Fig. 4 correspond to the transmission matrices of Eq. ( 7), a static analysis of the schematic in Fig 4(a) is done, which yields the relationship presented in Eq. ( 8) between the motor torques and cable tentions.

T =     1 2R1 1 2R2 0 1 2R1 0 1 2R3 1 2R1 -1 2R2 0 1 2R1 0 -1 2R3     (8)
In this matrix, R i is the radius of the drum corresponding to the i th actuator. If all the drums have the same radius, then R 1 = R 2 = R 3 = R, and we have The most common task of a 3-DoF planar CDPR is probably to move its platform over a rectangular area. The standard 3-DoF planar CDPR consists of four cables driven independently by as many actuators, attached at the vertices of the said rectangle and at the other ends to the vertices of a rectangular moving-platform. Such an arrangement was proposed in [START_REF] Gouttefarde | On the properties and the determination of the wrench-closure workspace of planar parallel cable-driven mechanisms[END_REF][START_REF] Stump | Workspace delineation of cable-actuated parallel manipulators[END_REF], and is shown in Fig. 5a. One important problem with this architecture is that its translational workspace shrinks dramatically as the platform deviates from its reference orientation shown in Fig. 5(a). To resolve this, we propose to use a transmission system in 3-DoF planar six-cable CDPR with four actuators as shown in Fig. 5(b). This architecture uses two more cables than that found in [START_REF] Gouttefarde | On the properties and the determination of the wrench-closure workspace of planar parallel cable-driven mechanisms[END_REF][START_REF] Stump | Workspace delineation of cable-actuated parallel manipulators[END_REF], but, importantly, it has same number of actuators. The problem becomes that of finding an appropriate transmission system that would allow large rotations of the moving platform. The WCW of the CDPR is directly related to the choice of its T matrix. A trial and error method was applied, and guidelines outlined in Section 3.1 were followed again for this 3-DoF CDPR. This led to the following T matrices:

T = 2RT . M3 M1 P2 P1 τ 3 τ 2 t 3 t 1 t 4 t 2 τ 1 /R 1 t 3 t 1 t 4 t 2 M2 (a) M2 M3 M1 P2 P1 τ 3 τ 2 t 3 t 1 t 4 t 2 τ 1 /R 1 t 3 t 1 t 4 t 2 (b)
T =         1 0 0 1 0 1 0 1 0 0 1 1 -1 0 0 1 0 0 -1 1 0 -1 0 1        
, and

T =         1 0 0 0 0 1 0 0 0 0 1 0 -1 0 0 1 0 0 -1 1 0 -1 0 1         . ( 9
)
Considering the first transmission matrix proposed in Eq. ( 9), one actuator should drive all cables for the purpose of keeping them in tension. The first actuator should wind the first cable while unwinding the fourth cable at the same rate thus forming a cable loop. The same goes for actuators 2 and 3 with cable pairs [START_REF] Fedorov | Differential noncircular pulleys for cable robots and static balancing[END_REF][START_REF] Khakpour | Workspace augmentation of spatial 3-dof cable parallel robots using differential actuation[END_REF] and [START_REF] Gouttefarde | On the properties and the determination of the wrench-closure workspace of planar parallel cable-driven mechanisms[END_REF][START_REF] Kevac | Development of cable-suspended parallel robot, cpr system, and its sub-systems[END_REF], respectively. In the second matrix of Eq. ( 9), the number of connections between actuators and cables is reduced by taking advantage of the opposition between cables. Indeed, motor 4 keeps in tension only cables 4-6, but since these cables form loops with cables 1-3, all the cables are tensioned by this motor.

With both transmission matrices defined in Eq. ( 9), the constant-orientation WCWs were computed for nine different angles of the moving platform. The resulting WCWs are traced in Fig. 6. The results are the same for both transmission matrices. As shown, although these transmission matrices do not allow to cover the complete rectangle formed by the workspace defined by the fixed attachment points, the area covers a wide range of angles.

Embodiment of the Transmission System of the 3-DoF Planar CDPR

In order to implement the proposed transmission matrix for the 3-DoF fouractuator six-cable planar CDPR, we adopt an approach similar to that adopted for the 2-DoF planar CDPR in Subsection 3.2. A cable-pulley transmission system is used to distribute the power of the four actuators among the six cables.

The schematic for the implementation of the transmission matrix outlined in Eq. ( 9) is presented in Fig. 7. One actuator is used to control the tension in the other cables, while the remaining actuators drive two cables in different directions. A system comprising two suspended three-level pulleys is used to directly control the cables within the workspace. The statics analysis of the mechanism can be performed by calculating the sums moments on the actuator drums and the sums of forces on the moving pulleys similar to what was outlined in Subsection 3.2.

Comparison Results

In Fig. 8, the WCW of the classic 3-DoF CDPR with four actuated cables is traced in eight different orientations. In this version, we note a fairly good coverage of the workspace except for moving-platform orientations of 90 • and 270 • , where there is no workspace. On the other hand, the WCW is shown in Fig. 6 for the proposed 3-DoF six-cable four-actuator, we observe slightly smaller workspaces in most orientations. We note also that there is a WCW in all tested orientations for the proposed architecture. This implies that the proposed sixcable CDPR may theoretically perform full rotations when the end-effector is in the central region of its workspace while the classic 3-DoF planar CDPR would be limited to 180 • continuous rotations.

Conclusions

In this research, we proposed two planar CDPRs with fewer actuators than cables by using appropriate transmission systems. The presented architectures hold advantages over other classic CDPRs that are available in the literature. It shows that using the transmission system in a 2-DoF CDPR allows it to cover a rectangular WCW with one less actuator than the classic four-actuator version. Also, using a transmission system in a 3-DoF CDPR with six cables and four actuators allows for a fairly large WCW that extends over 360 • range of possible rotations of the moving-platform. Other researchers had proposed CDPRs with fewer actuators than cables in the past [START_REF] Liu | Conceptual design and static analysis of novel planar spring-loaded cable-loop-driven parallel mechanisms[END_REF][START_REF] Khakpour | Synthesis of differentially driven planar cable parallel manipulators[END_REF][START_REF] Khodadadi | Kinematic analysis of planar cable-driven robots with parallelogram links[END_REF]. What sets this work apart from theirs is the design method that was followed. Instead of starting with the selection of mechanical components for the transmission system, we focused first on the choice of the transmission matrix mapping the actuator torques onto the cable tensions. Only once a suitable transmission matrix had been found did we try to implement it with machine components-cables and pulleys were used, but gears, belts, and other standard mechanical components could have been used as well. Transmission matrices for two and three DoF are presented and two CDPR schematics for 2-DoF and a schematic for 3-DoF planar CDPRs are proposed to cover a rectangular WCW. For specific three different external force sets, the WFW was found for the 2-DoF CDPR. The next step of this research consists in automating the choice of the transmission matrix to expand the WCW while simplifying its matrix as sparse as possible to keep the mechanical implementation.

Fig. 2 :

 2 Fig. 2: (a) WCW of the proposed 2-DoF four-cable three-actuator CDPR, (b) WCW of the planar CDPR proposed in[START_REF] Khodadadi | Kinematic analysis of planar cable-driven robots with parallelogram links[END_REF]

Fig. 3 :

 3 Fig. 3: WFW of the proposed CDPR (Case 1) considering different external forces: (a) WFW of proposed CDPR (Case 1) with square external force 0.5N with the origin center; (b) WFW of proposed CDPR (Case 1) with square external force 2.5N with the origin center; (c) WFW of proposed CDPR (Case 1) with square external force 5N with the origin center.

Fig. 4 :

 4 Fig. 4: Proposed schematic of three actuators 2-DoF four cables CDPR: (a) Case 1; (b) Case 2

Fig. 5 :

 5 Fig. 5: Using transmission system in 3-DoF six-cable four-actuator CDPRs

Fig. 6 : 4 M1Fig. 7 :

 647 Fig. 6: WCW of the 3-DoF six-cable four-actuator CDPR for nine MP orientations: (a) 0 o ; (b) 45 o ; (c) 90 o ; (d) 135 o ; (e) 180 o ; (f) 225 o ; (g) 270 o ; (h) 315 o ; (i) 360 o .

Fig. 8 :

 8 Fig. 8: The WCW of the classic version of 3-DoF four-cable four-actuator CDPR in different end-effector angles (a) 0 o ; (b) 45 o ; (c) 90 o ; (d) 135 o ; (e) 180 o ; (f) 225 o ; (g) 270 o ; (h) 315 o ; (i) 360 o .

The range (also called column space or image) of a m × n matrix T is the span (set of all possible linear combinations) of its column vectors.