• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 406
  • 299
  • 123
  • 4
  • 3
  • Tagged with
  • 888
  • 888
  • 545
  • 330
  • 325
  • 293
  • 277
  • 263
  • 242
  • 217
  • 208
  • 206
  • 202
  • 200
  • 200
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
101

Selective sampling for classification

Shanian, Sara 13 April 2018 (has links)
Une des objectifs poursuivis par la recherche en apprentissage automatique est la construction de bons classificateurs à partir d'un ensemble d'exemples étiquetés. Certains problèmes nécessitent de réunir un grand ensemble d'exemples étiquetés, ce qui peut s'avérer long et coûteux. Afin de réduire ces efforts, il est possible d'utiliser les algorithmes d'apprentissage actif. Ces algorithmes tirent profit de la possibilité de faire quelques demandes d'étiquetage parmi un grand ensemble d'exemples non-étiquetés pour construire un classificateur précis. Il est cependant important de préciser que les algorithmes d'apprentissage actif actuels possèdent eux-mêmes quelques points faibles connus qui peuvent les mener à performer inadéquatement dans certaines situations. Dans cette thèse, nous proposons un nouvel algorithme d'apprentissage actif. Notre algorithme atténue certains points faibles des précédents algorithmes d'apprentissage actif, et il se révèle trés compétitif aux algorithmes d'apprentissage actif bien-connus. De plus, notre algorithme est facile à implémenter. / One of the goals of machine learning researches is to build accurate classifiers form an amount of labeled examples. In some problems, it is necessary to gather a large set of labeled examples which can be costly and time-consuming. To reduce these expenses, one can use active learning algorithms. These algorithms benefit from the possibility of performing a small number of label-queries from a large set of unlabeled examples to build an accurate classifier. It should be mentioned that actual active learning algorithms, themselves, have some known weak points which may lead them to perform unsuccessfully in certain situations. In this thesis, we propose a novel active learning algorithm. Our proposed algorithm not only fades the weak points of the previous active learning algorithms, but also performs competitively among the widely known active learning algorithms while it is easy to implement.
102

Spécification, modélisation et analyse du dialogue entre agents par l'intermédiaire des engagements sociaux

Bergeron, Mathieu. 11 April 2018 (has links)
La communication entre agents est primordiale à l'intérieur des systèmes multiagents. Les agents d'un système multi-agents doivent communiquer pour se coordonner et pour échanger de l'information. Dans ce mémoire, nous avons travaillé à l'élaboration et à l'amélioration d'un langage de communication agent nommé DIAGAL (DIAlogue- Game based Agent Language) dont la sémantique se base sur les engagements sociaux. En fait, notre approche se base sur les jeux de dialogue qui sont des structures qui permettent la négociation d'engagements sociaux par le dialogue. Les agents peuvent donc, à l'aide des jeux de dialogue, communiquer pour créer, annuler ou modifier des engagements sociaux. De plus, nous proposons le concept de réseau d'engagements pour modéliser les conversations entre agents. Les réseaux d'engagements permettent de spécifier les dialogues à l'intérieur d'un système multi-agents en analysant les liens de causalité qui existent entre les différents engagements pouvant exister dans le système. Finalement, nous avons défini différentes métriques qui permettent d'analyser les dialogues entre agents.
103

A General Machine Reading Comprehension pipeline

Debruyker, Roxane 13 December 2023 (has links)
Savoir lire est une compétence qui va de la capacité à décoder des caractères à la compréhension profonde du sens de textes. Avec l'émergence de l'intelligence artificielle, deux questions se posent : Comment peut-on apprendre à une intelligence artificielle à lire? Qu'est-ce que cela implique? En essayant de répondre à ces questions, une première évidence nous est rappelée : savoir lire ne peut pas se réduire à savoir répondre à des questions sur des textes. Étant donné que les modèles d'apprentissage machine apprennent avec des exemples d'essai erreur, ils vont apprendre à lire en apprenant à répondre correctement à des questions sur des textes. Cependant, il ne faut pas perdre de vue que savoir lire, c'est comprendre différents types de textes et c'est cette compréhension qui permet de répondre à des questions sur un texte. En d'autres termes, répondre à des questions sur des textes est un des moyens d'évaluation de la compétence de lecture plus qu'une fin en soi. Aujourd'hui, il existe différents types de jeux de données qui sont utilisées pour apprendre à des intelligences artificielles à apprendre à lire. Celles ci proposent des textes avec des questions associées qui requièrent différents types de raisonnement : associations lexicales, déductions à partir d'indices disséminés dans le texte, paraphrase, etc. Le problème est que lorsqu'une intelligence artificielle apprend à partir d'un seul de ces jeux de données, elle n'apprend pas à lire mais est plutôt formée à répondre à un type de question, sur un certain type de texte et avec un certain style d'écriture. Outre la problématique de la généralisation des compétences de lecture, les modèles d'intelligence artificielle qui apprennent à lire en apprenant à répondre à des questions retournent des réponses sans systématiquement indiquer sur quelles phrases du texte sources ils se basent. Cela pose un problème d'explicabilité et peut entrainer une mécompréhension des capacités de ces modèles. Dans ce mémoire, nous proposons de résoudre le problème de généralisation de l'apprentissage en proposant une méthodologie générale adaptée à n'importe quel jeu de données. Ainsi, en ayant une méthodologie commune à tous les types de jeux de données pour apprendre à répondre à tout type de question, sur tout type de texte, nous pourrions apprendre aux modèles d'intelligence artificielle à se concentrer sur les compétences générales de lecture plutôt que sur la capacité spécifique à répondre aux questions. Afin de résoudre également le problème de l'explicabilité, la méthodologie que nous proposons impose à tout modèle de compréhension de lecture automatique de renvoyer les extraits du texte source sur lequel ces réponses sont basées. / Reading is a skill that ranges from the ability to decode characters to a deep understanding of the meaning of a text. With the emergence of artificial intelligence, two questions arise: How can an artificial intelligence be taught to read? What does this imply? In trying to answer these questions, we are reminded of the obvious: knowing how to read cannot be reduced to knowing how to answer questions about texts. Since machine learning models learn with trial-and-error examples, they will learn to read by learning to answer correctly questions about the text they read. However, one should not forget the fact that knowing how to read means understanding different types of texts sufficiently well, and it is this that enables answering questions about a text. In other words, answering questions about texts is one of the means of assessing reading skills rather than an end in itself. Today, there are different types of datasets that are used to teach artificial intelligences to learn to read. These provide texts with associated questions that require different types of reasoning: lexical associations, deductions from discrete clues in the text, paraphrasing, etc. The problem is that when an artificial intelligence learns from only one of these datasets, it does not learn to read but is instead trained to answer a certain type of question, on a certain type of text and with a certain writing style. In addition to the problem of generalizing reading skills, artificial intelligence models that learn to read by learning to answer questions return answers without systematically indicating which sentences in the source text they are based on. This poses a problem of explicability and can lead to a misunderstanding of the capabilities of these models. In this thesis, we propose to solve the generalization issue of learning from one dataset by proposing a general methodology suiting to any machine reading comprehension dataset. Thus, by having a methodology common to all types of datasets to learn how to answer any type of question, on any type of text, we could teach artificial intelligence models to focus on general reading skills rather than on the specific ability to answer questions. In order to also solve the issue of explanability, the methodology we propose impose any machine reading comprehension model to return the span of the source text its answers are based on.
104

Réseaux convolutifs à politiques

Pothier, Dominique 27 January 2024 (has links)
Malgré leurs excellentes performances, les exigences élevées des réseaux de neurones artificiels en terme de volume de données et de puissance de calcul limitent leur adoption dans plusieurs domaines. C'est pourquoi il reste important de développer de nouvelles architectures moins voraces. Ce mémoire cherche à produire une architecture plus flexible et moins vorace en s'appuyant sur la théorie de l'apprentissage par renforcement. En considérant le réseau comme un agent suivant une politique, on réalise que cette politique est beaucoup plus rigide que celle suivie habituellement par les agents d'apprentissage par renforcement. Nous posons l'hypothèse qu'une architecture capable de formuler une politique plus flexible pourrait atteindre des performances similaires tout en limitant son utilisation de ressources. L'architecture que nous proposons s'inspire de la recherche faite en prédiction de paramètres, particulièrement de l'architecture hypernetwork, que nous utilisons comme base de référence. Nos résultats montrent que l'apprentissage d'une politique dynamique aussi performante que les politiques statiques suivies par les réseaux conventionnels n'est pas une tâche triviale. Nos meilleurs résultats indiquent une diminution du nombre de paramètres de 33%, une diminution des calculs de 12% au prix d'une baisse de l'exactitude des prédictions de 2%. Malgré ces résultats, nous croyons que notre architecture est un point de départ pouvant être amélioré de plusieurs manières que nous explorons rapidement en conclusion. / Despite their excellent performances, artificial neural networks high demand of both data and computational power limit their adoption in many domains. Developing less demanding architecture thus remain an important endeavor. This thesis seeks to produce a more flexible and less resource-intensive architecture by using reinforcement learning theory. When considering a network as an agent instead of a function approximator, one realize that the implicit policy followed by popular feed forward networks is extremely simple. We hypothesize that an architecture able to learn a more flexible policy could reach similar performances while reducing its resource footprint. The architecture we propose is inspired by research done in weight prediction, particularly by the hypernetwork architecture, which we use as a baseline model.Our results show that learning a dynamic policy achieving similar results to the static policies of conventional networks is not a trivial task. Our proposed architecture succeeds in limiting its parameter space by 20%, but does so at the cost of a 24% computation increase and loss of5% accuracy. Despite those results, we believe that this architecture provides a baseline that can be improved in multiple ways that we describe in the conclusion.
105

Le niveau de maturité des organisations québécoises à l'égard de l'intelligence artificielle : les déterminants de l'adoption de l'IA au Québec : le cas des communicateurs québécois

Déry, Geneviève 10 February 2024 (has links)
Ce projet de recherche s'intéresse aux perceptions des communicateurs québécois quant à l'adoption de l'intelligence artificielle (IA) dans leur organisation et à son intégration dans leurs pratiques professionnelles. Il s'inscrit dans la foulée de quelques études menées sur les perceptions de l'IA au Québec (Centre interuniversitaire de recherche en analyse des organisations [CIRANO], 2018) et à travers le monde (Brock et Wangenheim, 2019 ; Ransbotham et al., 2017 ; Sun et Medaglia, 2018). L'étude s'appuie sur une approche quantitative qui procède d'une méthode par sondage en ligne dont les questions ont été conçues à partir d'une cartographie des déterminants de l'adoption de l'IA. Elle interprète les résultats en se basant sur la théorie de la conduite du changement en trois étapes de Lewin (1947), laquelle permet de situer et d'expliquer la position des acteurs relativement à un changement technologique en fonction d'une échelle de maturité organisationnelle. Il ressort des résultats obtenus que les organisations québécoises se situent au milieu de l'échelle du changement, satisfaisant à 16 des 32 indicateurs requis. Globalement, les acteurs de l'industrie des communications admettent l'importance de l'adoption de l'IA dans leur domaine, en connaissent bien les enjeux et les déterminants, mais peinent à voir comment l'intégrer à leurs pratiques. Autrement dit, ils savent " quoi faire ", mais ils ne savent pas " comment le faire ". En réponse à ce problème, cette recherche propose une méthode d'adoption séquentielle de l'IA en communication qui permet à une organisation de se situer sur l'échelle de maturité du changement et d'identifier les actions à poser pour passer à l'échelon suivant. / This research project explores the perceptions of Quebec communicators regarding the adoption of artificial intelligence (AI) in their organization and its integration into their professional practices. It is part of the wake of some studies carried out on perceptions of AI in Quebec (Centre interuniversitaire de recherche en analyse des organisations [CIRANO], 2018) and around the world (Brock and Wangenheim, 2019; Ransbotham and al., 2017; Sun and Medaglia, 2018). The study relies on a quantitative approach that proceeds from an online survey method whose questions were designed from a mapping of determining factors of adoption of AI. Results are interpreted based on Lewin's three-stage change management theory (1947), which allows to situate and explain the position of the actors in relation to a technological change according to a maturity scale. The results obtained show that Quebec organizations are in the middle of the scale of change, meeting 16 of the 32 required indicators. Overall, the players in the communications industry admit the importance of adopting AI in their field, are well aware of the issues and determining factors, but are struggling to see how to integrate it into their practices. In other words, they know "what to do" but they don't know "how to do it". In response to this problem, this research proposes a method of sequential adoption of AI in communication that allows an organization to situate itself on the change maturity scale and to identify the actions to be taken to move to the next level.
106

Les textes générés par intelligence artificielle

Lebrun, Tom 24 January 2024 (has links)
Titre de l'écran-titre (visionné le 10 janvier 2023) / Cette thèse examine le statut littéraire et, dans une moindre mesure, juridique, des textes générés par intelligence artificielle (IA). Elle s'intéresse particulièrement aux textes créés par des méthodes de génération dites « par apprentissage », soit tout ce qui relève de l'apprentissage automatique, également appelé apprentissage machine ou apprentissage statistique. Elle pose l'hypothèse d'un nouveau type de littérature générative, qualifiée de génération par apprentissage, qui propose un rapport intertextuel inédit entre l'œuvre générée et ses sources et fait la preuve d'une autonomie nouvelle de l'œuvre par rapport à son auteur traditionnel autonomie qui se négocie au prix d'une dépendance accrue au corpus de sources utilisés pour l'entraînement du modèle d'IA utilisé. Cette autonomie est pour l'heure inédite dans l'histoire littéraire et n'avait, jusqu'ici, pas encore fait l'objet d'un examen scientifique systématique ; l'objet de cette thèse est de combler cette lacune doctrinale. La thèse examine donc ce que ce nouveau type de littérature en partie autonome par rapport à ses auteurs (mais dépendante envers les sources d'entraînement) fait à la littérature au travers de quatre chapitres distincts. Le chapitre 1 retrace l'histoire de la question de l'autonomie en littérature vue sous l'angle de la contrainte. Après un rappel de l'histoire littéraire en matière de génération informatique (de l'OuLiPo à l'Alamo), elle examine les différents types de génération de textes par informatique, distinguant la génération combinatoire, la génération automatique et la nouvelle génération dite « par apprentissage ». Dans le cas de chacun de ces types, le rôle du modèle informatique, des sources et de l'auteur sont examinés successivement, illustrant une autonomisation croissante du texte par rapport à son auteur. Le chapitre 2 examine le rapport d'appropriation des sources qu'impose tout modèle de génération par apprentissage et ses conséquences d'un point de vue littéraire, notamment par le biais des notions de transtextualité et de transfictionnalité. Trois grands types de textes générés par apprentissage sont distingués et décrits, chacun avec leurs propres spécificités qui permettent d'éclaircir la diversité des pratiques de ce nouveau type de littérature (le texte œuvre d'art, le texte édité, le texte appropriant). Le chapitre 3 est consacré à la question de l'autorité des textes générés par apprentissage, laquelle est remise en question par l'autonomie des créations vis-à-vis de leurs auteurs. Ce chapitre est l'occasion de recentrer le débat sur la posture d'auteurs qui doivent composer avec l'autonomie des systèmes qu'ils utilisent et la dépendance formelle des textes qu'ils produisent envers les sources. Ces auteurs usent de stratégies variées en fonction de leurs intentions, marquant par des discours spécifiques leur position face aux textes. Le chapitre 4 se focalise, quant à lui, sur la question de la lecture et de la réception des textes générés par apprentissage. La diversité de ces pratiques achève sans doute de prouver l'existence d'une grande variété de textes générés par apprentissage autant que leur caractère singulier appelant un renouveau théorique conséquent. Ce renouveau force en partie un retour vers les théories communicationnelles de la littérature, aussi critiquées qu'elles aient pu l'être ces dernières années. La thèse conclut conséquemment non seulement sur l'existence d'un nouveau type de texte littéraire, mais aussi sur la redéfinition profonde de la littérature qui en découle. / This thesis examines the literary and, to a lesser extent, legal status of texts generated by artificial intelligence (AI). It is particularly interested in texts created by so-called "machine learning" methods. It poses the hypothesis of a new type of generative literature, qualified as machine learning generated, which proposes a new intertextual relationship between the generated work and its sources and demonstrates a new autonomy of the work in relation to its traditional author an autonomy which is negotiated at the price of an increased dependence on the corpus of sources used to train the AI model used. This autonomy is, for the time being, unprecedented in literary history and has not, until now, been the subject of a systematic scientific examination; the purpose of this thesis is to fill this doctrinal gap. The thesis therefore examines what this new type of literature, partly autonomous from its authors (but dependent on training sources), does to literature through four distinct chapters. Chapter 1 traces the history of the question of autonomy in literature as seen through the lens of constraint. After a reminder of the literary history of computational generation (from OuLiPo to the Alamo), it examines the different types of computational generation of texts, distinguishing between combinatorial generation, automatic generation and the new so-called "learning" generation. In the case of each of these types, the role of the computer model, of the sources and of the author are examined successively, illustrating an increasing autonomy of the text with respect to its author. Chapter 2 examines the relationship of appropriation of the sources imposed by any model of generation by learning and its consequences from a literary point of view, notably through the notions of transtextuality and transfictionality. Three main types of texts generated by learning are distinguished and described, each with their own specificities that allow to clarify the diversity of the practices of this new type of literature (the work of art text, the edited text, the appropriating text). Chapter 3 is devoted to the question of the authority of texts generated by learning, which is called into question by the autonomy of creations vis-à-vis their authors. This chapter is an opportunity to refocus the debate on the posture of authors who have to deal with the autonomy of the systems they use and the formal dependence of the texts they produce on the sources. These authors use various strategies according to their intentions, marking by specific discourses their position in front of the texts. Chapter 4 focuses on the question of reading and receiving texts generated by learning. The diversity of these practices undoubtedly proves the existence of a vast diversity of texts generated by learning as much as their singular character calling for a consequent theoretical renewal. This renewal in part forces a return to communicative theories of literature, as criticized as they have been in recent years. The thesis therefore concludes not only on the existence of a new type of literary texts, but also on the profound redefinition of literature that follows from it.
107

Conjunctive Query Answering Under Existential Rules - Decidability, Complexity, and Algorithms

Thomazo, Michaël 24 October 2013 (has links) (PDF)
L'objectif du problème appelé "Ontology-based data access" (OBDA) est d'améliorer la réponse à des requêtes en prenant en compte des connaissances d'ordre général durant l'évaluation des requêtes. Ces connaissances générales sont représentées à l'aide d'une ontologie, qui est exprimée dans cette thèse grâce à des formules logiques du premier ordre, appelées règles existentielles, et aussi connues sous le nom de "tuple-generating dependencies" et Datalog+/-. L'expressivité des formules utilisées est telle que l'évaluation de requêtes devient un problème indécidable, et cela a conduit la communauté à définir de nombreux cas décidables, c'est-à-dire des restrictions sur les ensembles de règles existentielles considérés. La contribution de cette thèse est double : tout d'abord, nous proposons une vue unifiée sur une grande fraction des cas décidables connus, et fournissons par là même une analyse de complexité et un algorithme optimal dans le pire des cas. Nous considérons également l'approche couramment utilisée de réécriture de requêtes, et proposons un algorithme générique qui permet de surmonter certaines causes évidentes d'explosion combinatoire qui rendent les approches classiques pratiquement inapplicables.
108

Fusion de connaissances : Applications aux relevés photogrammétriques de fouilles archéologiques sous-marines

Seinturier, Julien 11 December 2007 (has links) (PDF)
Nous proposons dans ce travail une étude de la fusion de connaissances et ses applications aux relevés de fouilles archéologiques sous‐marines. Le cadre de ce travail est la mesure fondée sur la connaissance, pouvant être décrite comme la synthèse entre des modèles théoriques élaborés par des experts du domaine étudié et d'un ensemble d'observations effectuées sur les objets à relever. Lors de l'étude d'un site archéologique, les relevés peuvent être effectués par des opérateurs différents et à des moments différents. Cette multiplication des observations induit des risques d'incohérence lors de l'agrégation de tous les résultats (objets mesurés deux fois, objets mal identifiés, ...). La construction d'un résultat final nécessite la mise en place d'un processus de fusion piloté par le responsable de l'étude. Un tel pilotage doit être automatisé tout en laissant à l'opérateur le choix des méthodes de rétablissement de la cohérence. Ce travail est divisé en trois parties : une étude théorique des méthodes de fusion connues, la mise en place de méthodes de fusion dans le cadre de la mesure fondée sur la connaissance et l'expérimentation des solutions proposées lors de relevés dans des applications grandeur nature. Dans la première partie, nous proposons une étude théorique des techniques de fusion de croyances existantes et nous proposons un nouveau cadre de fusion réversible permettant d'exprimer de manière équivalente ces méthodes de fusion d'un point de vue sémantique et syntaxique. Ce cadre est basé sur des pondérations par des polynômes qui permettent de représenter à la fois les priorités entre les croyances mais aussi l'historique des changements de ces priorités. Dans la deuxième partie, nous détaillons la mesure fondée sur la connaissance en décrivant une représentation des connaissances basée sur la notion d'entité. Cette représentation est exprimée dans le modèle Objet ainsi que sous forme semi‐structurée en XML. Nous proposons ensuite des techniques de fusion adaptées à cette représentation. Ces techniques sont basées sur la logique propositionnelle et la logique des prédicats instanciés. Des algorithmes de fusion sont décrits et étudiés. Dans la dernière partie, nous présentons les expérimentations des techniques de fusion mises en place. Nous proposons une description des outils développés et utilisés dans le cadre du projet Européen VENUS (http://www.venus‐project.eu) mais aussi leurs extensions à l'archéologie du bâti et à la biologie sous‐marine.
109

Contributions to generative models and their applications

Che, Tong 10 1900 (has links)
Generative models are a large class of machine learning models for unsupervised learning. They have various applications in machine learning and artificial intelligence. In this thesis, we discuss many aspects of generative models and their applications to other machine learning problems. In particular, we discuss several important topics in generative models, including how to stabilize discrete GAN training with importance sampling, how to do better sampling from GANs using a connection with energy-based models, how to better train auto-regressive models with the help of an energy-based model formulation, as well as two applications of generative models to other machine learning problems, one about residual networks, the other about safety verification. / Les modèles génératifs sont une grande classe de modèles d’apprentissage automatique pour l’apprentissage non supervisé. Ils ont diverses applications dans l’apprentissage automatique et l’intelligence artificielle. Dans cette thèse, nous discutons de nombreux aspects des modèles génératifs et de leurs applications à d’autres problèmes d’apprentissage automatique. En particulier, nous discutons de plusieurs sujets importants dans les modèles génératifs, y compris comment stabiliser la formation GAN discrète avec un échantillonnage d’importance, comment faire un meilleur échantillonnage à partir de GAN en utilisant une connexion avec des modèles basés sur l’énergie, comment mieux former des modèles auto-régressifs avec l’aide d’une formulation de modèle basée sur l’énergie, ainsi que deux applications de modèles génératifs à d’autres problèmes d’apprentissage automatique, l’une sur les réseaux résiduels, l’autre sur la vérification de la sécurité.
110

Un Mécanisme Constructiviste d'Apprentissage Automatique d'Anticipations pour des Agents Artificiels Situés

Studzinski Perotto, Filipo 01 July 2010 (has links) (PDF)
Cette recherche se caractérise, premièrement, par une discussion théorique sur le concept d'agent autonome, basée sur des éléments issus des paradigmes de l'Intelligence Artificielle Située et de l'Intelligence Artificielle Affective. Ensuite, cette thèse présente le problème de l'apprentissage de modèles du monde, en passant en revue la littérature concernant les travaux qui s'y rapportent. À partir de ces discussions, l'architecture CAES et le mécanisme CALM sont présentés. CAES (Coupled Agent-Environment System) constitue une architecture pour décrire des systèmes basés sur la dichotomie agent-environnement. Il définit l'agent et l'environnement comme deux systèmes partiellement ouverts, en couplage dynamique. L'agent, à son tour, est composé de deux sous-systèmes, l'esprit et le corps, suivant les principes de la situativité et de la motivation intrinsèque. CALM (Constructivist Anticipatory Learning Mechanism) est un mécanisme d'apprentissage fondé sur l'approche constructiviste de l'Intelligence Artificielle. Il permet à un agent situé de construire un modèle du monde dans des environnements partiellement observables et partiellement déterministes, sous la forme d'un processus de décision markovien partiellement observable et factorisé (FPOMDP). Le modèle du monde construit est ensuite utilisé pour que l'agent puisse définir une politique d'action visant à améliorer sa propre performance.

Page generated in 0.3015 seconds