{"_links":{"self":{"href":"https:\/\/peerj.com\/articles\/index.json?journal=cs"},"next":{"href":"https:\/\/peerj.com\/articles\/index.json?journal=cs&page=2"},"alternate":{"atom":{"type":"application\/atom+xml","href":"https:\/\/peerj.com\/articles\/index.atom"},"rss1":{"type":"application\/rdf+xml","href":"https:\/\/peerj.com\/articles\/index.rss1"},"rss2":{"type":"application\/rss+xml","href":"https:\/\/peerj.com\/articles\/index.rss2"},"rss3":{"type":"text\/plain","href":"https:\/\/peerj.com\/articles\/index.rss3"},"html":{"type":"text\/html","href":"https:\/\/peerj.com\/articles\/index.html"}}},"_items":[{"title":"The doctor\u2019s digital double: how warmth, competence, and animation promote adherence intention","date":"2018-11-12","doi":"10.7717\/peerj-cs.168","language":"en","pdf_url":"https:\/\/peerj.com\/articles\/cs-168.pdf","fulltext_html_url":"https:\/\/peerj.com\/articles\/cs-168","volume":"4","firstpage":"e168","author":["Zhengyan Dai","Karl F. MacDorman"],"author_email":"kmacdorm@indiana.edu","authors":"Dai, Zhengyan; MacDorman, Karl F.","author_institutions":"School of Informatics and Computing, Indiana University, Indianapolis, IN, USA","keywords":["Adherence","Anthropomorphism","Avatars","Computer animation","Doctor\u2013patient simulations","Health literacy","Interactive narratives","Uncanny valley"],"journal_title":"PeerJ Computer Science","journal_abbrev":"PeerJ Comput. Sci.","publisher":"PeerJ Inc.","issn":"2376-5992","description":"Background Each year, patient nonadherence to treatment advice costs the US healthcare system more than $300 billion and results in 250,000 deaths. Developing virtual consultations to promote adherence could improve public health while cutting healthcare costs and usage. However, inconsistencies in the realism of computer-animated humans may cause them to appear eerie, a phenomenon termed the uncanny valley. Eeriness could reduce a virtual doctor\u2019s credibility and patients\u2019 adherence. Methods In a 2 \u00d7 2 \u00d7 2 between-groups posttest-only experiment, 738 participants played the role of a patient in a hypothetical virtual consultation with a doctor. The consultation varied in the doctor\u2019s Character (good or poor bedside manner), Outcome (received a fellowship or sued for malpractice), and Depiction (a recorded video of a real human actor or of his 3D computer-animated double). Character, Outcome, and Depiction were designed to manipulate the doctor\u2019s level of warmth, competence, and realism, respectively. Results Warmth and competence increased adherence intention and consultation enjoyment, but realism did not. On the contrary, the computer-animated doctor increased adherence intention and consultation enjoyment significantly more than the doctor portrayed by a human actor. We propose that enjoyment of the animated consultation caused the doctor to appear warmer and more real, compensating for his realism inconsistency. Expressed as a path model, this explanation fit the data. Discussion The acceptance and effectiveness of the animation should encourage the development of virtual consultations, which have advantages over creating content with human actors including ease of scenario revision, internationalization, localization, personalization, and web distribution.","description-html":"\n<section class=\"sec\">\n<h2 class=\"heading\">Background<\/h2>\n<p>Each year, patient nonadherence to treatment advice costs the US healthcare system more than $300 billion and results in 250,000 deaths. Developing virtual consultations to promote adherence could improve public health while cutting healthcare costs and usage. However, inconsistencies in the realism of computer-animated humans may cause them to appear eerie, a phenomenon termed the <i>uncanny valley<\/i>. Eeriness could reduce a virtual doctor\u2019s credibility and patients\u2019 adherence.<\/p>\n<\/section>\n<section class=\"sec\">\n<h2 class=\"heading\">Methods<\/h2>\n<p>In a 2 \u00d7 2 \u00d7 2 between-groups posttest-only experiment, 738 participants played the role of a patient in a hypothetical virtual consultation with a doctor. The consultation varied in the doctor\u2019s Character (good or poor bedside manner), Outcome (received a fellowship or sued for malpractice), and Depiction (a recorded video of a real human actor or of his 3D computer-animated double). Character, Outcome, and Depiction were designed to manipulate the doctor\u2019s level of warmth, competence, and realism, respectively.<\/p>\n<\/section>\n<section class=\"sec\">\n<h2 class=\"heading\">Results<\/h2>\n<p>Warmth and competence increased adherence intention and consultation enjoyment, but realism did not. On the contrary, the computer-animated doctor increased adherence intention and consultation enjoyment significantly more than the doctor portrayed by a human actor. We propose that enjoyment of the animated consultation caused the doctor to appear warmer and more real, compensating for his realism inconsistency. Expressed as a path model, this explanation fit the data.<\/p>\n<\/section>\n<section class=\"sec\">\n<h2 class=\"heading\">Discussion<\/h2>\n<p>The acceptance and effectiveness of the animation should encourage the development of virtual consultations, which have advantages over creating content with human actors including ease of scenario revision, internationalization, localization, personalization, and web distribution.<\/p>\n<\/section>\n","title-html":"The doctor\u2019s digital double: how warmth, competence, and animation promote adherence intention","subjects":["Human-Computer Interaction","Agents and Multi-Agent Systems","Graphics","Multimedia","Social Computing"],"identifiers":{"peerj":"cs-168","pubmed":null,"pmc":null},"@context":"http:\/\/static.peerj.com\/context\/citation\/context.json","@type":"http:\/\/schema.org\/ScholarlyArticle","@id":"https:\/\/peerj.com\/articles\/cs-168","_links":{"self":{"href":"https:\/\/peerj.com\/articles\/cs-168.json"},"alternate":{"html":{"type":"text\/html","href":"https:\/\/peerj.com\/articles\/cs-168.html"},"xml":{"type":"application\/xml","href":"https:\/\/peerj.com\/articles\/cs-168.xml"},"pdf":{"type":"application\/pdf","href":"https:\/\/peerj.com\/articles\/cs-168.pdf"},"rdf":{"type":"application\/rdf+xml","href":"https:\/\/peerj.com\/articles\/cs-168.rdf"},"ris":{"type":"application\/x-research-info-systems","href":"https:\/\/peerj.com\/articles\/cs-168.ris"},"bib":{"type":"application\/x-bibtex","href":"https:\/\/peerj.com\/articles\/cs-168.bib"},"citeproc":{"type":"application\/vnd.citationstyles.csl+json","href":"https:\/\/peerj.com\/articles\/cs-168.citeproc"},"bibjson":{"type":"application\/bibjson+json","href":"https:\/\/peerj.com\/articles\/cs-168.bibjson"},"unixref":{"type":"application\/unixref+xml","href":"https:\/\/peerj.com\/articles\/cs-168.unixref"}}}},{"title":"Convolutional ensembles for Arabic Handwritten Character and Digit Recognition","date":"2018-10-15","doi":"10.7717\/peerj-cs.167","language":"en","pdf_url":"https:\/\/peerj.com\/articles\/cs-167.pdf","fulltext_html_url":"https:\/\/peerj.com\/articles\/cs-167","volume":"4","firstpage":"e167","author":"Iam Palatnik de Sousa","author_institution":"Department of Electrical Engineering, Pontif\u00edcia Universidade Cat\u00f3lica do Rio de Janeiro, Rio de Janeiro, Brazil","author_email":"iam.palat@gmail.com","authors":"Palatnik de Sousa, Iam","author_institutions":"Department of Electrical Engineering, Pontif\u00edcia Universidade Cat\u00f3lica do Rio de Janeiro, Rio de Janeiro, Brazil","keywords":["Offline character recognition","Arabic Handwriting Recognition","Convolutional Neural Networks","Deep learning"],"journal_title":"PeerJ Computer Science","journal_abbrev":"PeerJ Comput. Sci.","publisher":"PeerJ Inc.","issn":"2376-5992","description":"A learning algorithm is proposed for the task of Arabic Handwritten Character and Digit recognition. The architecture consists on an ensemble of different Convolutional Neural Networks. The proposed training algorithm uses a combination of adaptive gradient descent on the first epochs and regular stochastic gradient descent in the last epochs, to facilitate convergence. Different validation strategies are tested, namely Monte Carlo Cross-Validation and K-fold Cross Validation. Hyper-parameter tuning was done by using the MADbase digits dataset. State of the art validation and testing classification accuracies were achieved, with average values of 99.74% and 99.47% respectively. The same algorithm was then trained and tested with the AHCD character dataset, also yielding state of the art validation and testing classification accuracies: 98.60% and 98.42% respectively.","description-html":"\n            <p>A learning algorithm is proposed for the task of Arabic Handwritten Character and Digit recognition. The architecture consists on an ensemble of different Convolutional Neural Networks. The proposed training algorithm uses a combination of adaptive gradient descent on the first epochs and regular stochastic gradient descent in the last epochs, to facilitate convergence. Different validation strategies are tested, namely Monte Carlo Cross-Validation and K-fold Cross Validation. Hyper-parameter tuning was done by using the MADbase digits dataset. State of the art validation and testing classification accuracies were achieved, with average values of 99.74% and 99.47% respectively. The same algorithm was then trained and tested with the AHCD character dataset, also yielding state of the art validation and testing classification accuracies: 98.60% and 98.42% respectively.<\/p>\n         ","title-html":"Convolutional ensembles for Arabic Handwritten Character and Digit Recognition","subjects":["Algorithms and Analysis of Algorithms","Artificial Intelligence","Computer Vision","Data Mining and Machine Learning"],"identifiers":{"peerj":"cs-167","pubmed":null,"pmc":null},"@context":"http:\/\/static.peerj.com\/context\/citation\/context.json","@type":"http:\/\/schema.org\/ScholarlyArticle","@id":"https:\/\/peerj.com\/articles\/cs-167","_links":{"self":{"href":"https:\/\/peerj.com\/articles\/cs-167.json"},"alternate":{"html":{"type":"text\/html","href":"https:\/\/peerj.com\/articles\/cs-167.html"},"xml":{"type":"application\/xml","href":"https:\/\/peerj.com\/articles\/cs-167.xml"},"pdf":{"type":"application\/pdf","href":"https:\/\/peerj.com\/articles\/cs-167.pdf"},"rdf":{"type":"application\/rdf+xml","href":"https:\/\/peerj.com\/articles\/cs-167.rdf"},"ris":{"type":"application\/x-research-info-systems","href":"https:\/\/peerj.com\/articles\/cs-167.ris"},"bib":{"type":"application\/x-bibtex","href":"https:\/\/peerj.com\/articles\/cs-167.bib"},"citeproc":{"type":"application\/vnd.citationstyles.csl+json","href":"https:\/\/peerj.com\/articles\/cs-167.citeproc"},"bibjson":{"type":"application\/bibjson+json","href":"https:\/\/peerj.com\/articles\/cs-167.bibjson"},"unixref":{"type":"application\/unixref+xml","href":"https:\/\/peerj.com\/articles\/cs-167.unixref"}}}},{"title":"Adaptive automation: automatically (dis)engaging automation during visually distracted driving","date":"2018-10-01","doi":"10.7717\/peerj-cs.166","language":"en","pdf_url":"https:\/\/peerj.com\/articles\/cs-166.pdf","fulltext_html_url":"https:\/\/peerj.com\/articles\/cs-166","volume":"4","firstpage":"e166","author":["Christopher D.D. Cabrall","Nico M. Janssen","Joost C.F. de Winter"],"author_institution":["Cognitive Robotics Department, Delft University of Technology, The Netherlands","BioMechanical Engineering Department, Delft University of Technology, The Netherlands","BioMechanical Engineering Department, Delft University of Technology, The Netherlands"],"author_email":"j.c.f.dewinter@tudelft.nl","authors":"Cabrall, Christopher D.D.; Janssen, Nico M.; de Winter, Joost C.F.","author_institutions":"Cognitive Robotics Department, Delft University of Technology, The Netherlands; BioMechanical Engineering Department, Delft University of Technology, The Netherlands","keywords":["Automated driving","Adaptive automation","Eye tracking","Driver distraction","Driving simulator","Dual task","Human\u2013machine interaction","Car driving"],"journal_title":"PeerJ Computer Science","journal_abbrev":"PeerJ Comput. Sci.","publisher":"PeerJ Inc.","issn":"2376-5992","description":"Background Automated driving is often proposed as a solution to human errors. However, fully automated driving has not yet reached the point where it can be implemented in real traffic. This study focused on adaptively allocating steering control either to the driver or to an automated pilot based on momentary driver distraction measured from an eye tracker. Methods Participants (N = 31) steered a simulated vehicle with a fixed speed, and at specific moments were required to perform a visual secondary task (i.e., changing a CD). Three conditions were tested: (1) Manual driving (Manual), in which participants steered themselves. (2) An automated backup (Backup) condition, consisting of manual steering except during periods of visual distraction, where the driver was backed up by automated steering. (3) A forced manual drive (Forced) condition, consisting of automated steering except during periods of visual distraction, where the driver was forced into manual steering. In all three conditions, the speed of the vehicle was automatically kept at 70 km\/h throughout the drive. Results The Backup condition showed a decrease in mean and maximum absolute lateral error compared to the Manual condition. The Backup condition also showed the lowest self-reported workload ratings and yielded a higher acceptance rating than the Forced condition. The Forced condition showed a higher maximum absolute lateral error than the Backup condition. Discussion In conclusion, the Backup condition was well accepted, and significantly improved performance when compared to the Manual and Forced conditions. Future research could use a higher level of simulator fidelity and a higher-quality eye-tracker.","description-html":"\n            <section class=\"sec\">\n               <h2 class=\"heading\">Background<\/h2>\n               <p>Automated driving is often proposed as a solution to human errors. However, fully automated driving has not yet reached the point where it can be implemented in real traffic. This study focused on adaptively allocating steering control either to the driver or to an automated pilot based on momentary driver distraction measured from an eye tracker.<\/p>\n            <\/section>\n            <section class=\"sec\">\n               <h2 class=\"heading\">Methods<\/h2>\n               <p>Participants (<i>N<\/i> = 31) steered a simulated vehicle with a fixed speed, and at specific moments were required to perform a visual secondary task (i.e., changing a CD). Three conditions were tested: (1) Manual driving (Manual), in which participants steered themselves. (2) An automated backup (Backup) condition, consisting of manual steering except during periods of visual distraction, where the driver was backed up by automated steering. (3) A forced manual drive (Forced) condition, consisting of automated steering except during periods of visual distraction, where the driver was forced into manual steering. In all three conditions, the speed of the vehicle was automatically kept at 70 km\/h throughout the drive.<\/p>\n            <\/section>\n            <section class=\"sec\">\n               <h2 class=\"heading\">Results<\/h2>\n               <p>The Backup condition showed a decrease in mean and maximum absolute lateral error compared to the Manual condition. The Backup condition also showed the lowest self-reported workload ratings and yielded a higher acceptance rating than the Forced condition. The Forced condition showed a higher maximum absolute lateral error than the Backup condition.<\/p>\n            <\/section>\n            <section class=\"sec\">\n               <h2 class=\"heading\">Discussion<\/h2>\n               <p>In conclusion, the Backup condition was well accepted, and significantly improved performance when compared to the Manual and Forced conditions. Future research could use a higher level of simulator fidelity and a higher-quality eye-tracker.<\/p>\n            <\/section>\n         ","title-html":"Adaptive automation: automatically (dis)engaging automation during visually distracted driving","subjects":["Human-Computer Interaction","Multimedia"],"identifiers":{"peerj":"cs-166","pubmed":null,"pmc":null},"@context":"http:\/\/static.peerj.com\/context\/citation\/context.json","@type":"http:\/\/schema.org\/ScholarlyArticle","@id":"https:\/\/peerj.com\/articles\/cs-166","_links":{"self":{"href":"https:\/\/peerj.com\/articles\/cs-166.json"},"alternate":{"html":{"type":"text\/html","href":"https:\/\/peerj.com\/articles\/cs-166.html"},"xml":{"type":"application\/xml","href":"https:\/\/peerj.com\/articles\/cs-166.xml"},"pdf":{"type":"application\/pdf","href":"https:\/\/peerj.com\/articles\/cs-166.pdf"},"rdf":{"type":"application\/rdf+xml","href":"https:\/\/peerj.com\/articles\/cs-166.rdf"},"ris":{"type":"application\/x-research-info-systems","href":"https:\/\/peerj.com\/articles\/cs-166.ris"},"bib":{"type":"application\/x-bibtex","href":"https:\/\/peerj.com\/articles\/cs-166.bib"},"citeproc":{"type":"application\/vnd.citationstyles.csl+json","href":"https:\/\/peerj.com\/articles\/cs-166.citeproc"},"bibjson":{"type":"application\/bibjson+json","href":"https:\/\/peerj.com\/articles\/cs-166.bibjson"},"unixref":{"type":"application\/unixref+xml","href":"https:\/\/peerj.com\/articles\/cs-166.unixref"}}}},{"title":"Tools4MSP: an open source software package to support Maritime Spatial Planning","date":"2018-10-01","doi":"10.7717\/peerj-cs.165","language":"en","pdf_url":"https:\/\/peerj.com\/articles\/cs-165.pdf","fulltext_html_url":"https:\/\/peerj.com\/articles\/cs-165","volume":"4","firstpage":"e165","author":["Stefano Menegon","Alessandro Sarretta","Daniel Depellegrin","Giulio Farella","Chiara Venier","Andrea Barbanti"],"author_institution":["Institute of Marine Sciences, National Research Council, Venice, Italy","Institute of Marine Sciences, National Research Council, Venice, Italy","Institute of Marine Sciences, National Research Council, Venice, Italy","Institute of Marine Sciences, National Research Council, Venice, Italy","Institute of Marine Sciences, National Research Council, Venice, Italy","Institute of Marine Sciences, National Research Council, Venice, Italy"],"author_email":"stefano.menegon@ismar.cnr.it","authors":"Menegon, Stefano; Sarretta, Alessandro; Depellegrin, Daniel; Farella, Giulio; Venier, Chiara; Barbanti, Andrea","author_institutions":"Institute of Marine Sciences, National Research Council, Venice, Italy","keywords":["Python","SDI","Tools4MSP software","Open Source","Cumulative Effects Assessment","Maritime spatial planning","GeoNode"],"journal_title":"PeerJ Computer Science","journal_abbrev":"PeerJ Comput. Sci.","publisher":"PeerJ Inc.","issn":"2376-5992","description":"This paper presents the Tools4MSP software package, a Python-based Free and Open Source Software (FOSS) for geospatial analysis in support of Maritime Spatial Planning (MSP) and marine environmental management. The suite was initially developed within the ADRIPLAN data portal, that has been recently upgraded into the Tools4MSP Geoplatform (data.tools4msp.eu), an integrated web platform that supports MSP through the application of different tools, e.g., collaborative geospatial modelling of cumulative effects assessment (CEA) and marine use conflict (MUC) analysis. The package can be used as stand-alone library or as collaborative webtool, providing user-friendly interfaces appropriate to decision-makers, regional authorities, academics and MSP stakeholders. An effective MSP-oriented integrated system of web-based software, users and services is proposed. It includes four components: the Tools4MSP Geoplatform for interoperable and collaborative sharing of geospatial datasets and for MSP-oriented analysis, the Tools4MSP package as stand-alone library for advanced geospatial and statistical analysis, the desktop applications to simplify data curation and the third party data repositories for multidisciplinary and multilevel geospatial datasets integration. The paper presents an application example of the Tools4MSP GeoNode plugin and an example of Tools4MSP stand-alone library for CEA in the Adriatic Sea. The Tools4MSP and the developed software have been released as FOSS under the GPL 3 license and are currently under further development.","description-html":"\n            <p>This paper presents the Tools4MSP software package, a Python-based Free and Open Source Software (FOSS) for geospatial analysis in support of Maritime Spatial Planning (MSP) and marine environmental management. The suite was initially developed within the ADRIPLAN data portal, that has been recently upgraded into the Tools4MSP Geoplatform (data.tools4msp.eu), an integrated web platform that supports MSP through the application of different tools, e.g., collaborative geospatial modelling of cumulative effects assessment (CEA) and marine use conflict (MUC) analysis. The package can be used as stand-alone library or as collaborative webtool, providing user-friendly interfaces appropriate to decision-makers, regional authorities, academics and MSP stakeholders. An effective MSP-oriented integrated system of web-based software, users and services is proposed. It includes four components: the <i>Tools4MSP Geoplatform<\/i> for interoperable and collaborative sharing of geospatial datasets and for MSP-oriented analysis, the <i>Tools4MSP package as stand-alone library<\/i> for advanced geospatial and statistical analysis, the <i>desktop applications<\/i> to simplify data curation and the <i>third party data repositories<\/i> for multidisciplinary and multilevel geospatial datasets integration. The paper presents an application example of the Tools4MSP GeoNode plugin and an example of Tools4MSP stand-alone library for CEA in the Adriatic Sea. The Tools4MSP and the developed software have been released as FOSS under the GPL 3 license and are currently under further development.<\/p>\n         ","title-html":"Tools4MSP: an open source software package to support Maritime Spatial Planning","subjects":["Data Science","Scientific Computing and Simulation","Spatial and Geographic Information Systems"],"identifiers":{"peerj":"cs-165","pubmed":null,"pmc":null},"@context":"http:\/\/static.peerj.com\/context\/citation\/context.json","@type":"http:\/\/schema.org\/ScholarlyArticle","@id":"https:\/\/peerj.com\/articles\/cs-165","_links":{"self":{"href":"https:\/\/peerj.com\/articles\/cs-165.json"},"alternate":{"html":{"type":"text\/html","href":"https:\/\/peerj.com\/articles\/cs-165.html"},"xml":{"type":"application\/xml","href":"https:\/\/peerj.com\/articles\/cs-165.xml"},"pdf":{"type":"application\/pdf","href":"https:\/\/peerj.com\/articles\/cs-165.pdf"},"rdf":{"type":"application\/rdf+xml","href":"https:\/\/peerj.com\/articles\/cs-165.rdf"},"ris":{"type":"application\/x-research-info-systems","href":"https:\/\/peerj.com\/articles\/cs-165.ris"},"bib":{"type":"application\/x-bibtex","href":"https:\/\/peerj.com\/articles\/cs-165.bib"},"citeproc":{"type":"application\/vnd.citationstyles.csl+json","href":"https:\/\/peerj.com\/articles\/cs-165.citeproc"},"bibjson":{"type":"application\/bibjson+json","href":"https:\/\/peerj.com\/articles\/cs-165.bibjson"},"unixref":{"type":"application\/unixref+xml","href":"https:\/\/peerj.com\/articles\/cs-165.unixref"}}}},{"title":"20 GB in 10 minutes: a case for linking major biodiversity databases using an open socio-technical infrastructure and a pragmatic, cross-institutional collaboration","date":"2018-09-17","doi":"10.7717\/peerj-cs.164","language":"en","pdf_url":"https:\/\/peerj.com\/articles\/cs-164.pdf","fulltext_html_url":"https:\/\/peerj.com\/articles\/cs-164","volume":"4","firstpage":"e164","author":["Anne E. Thessen","Jorrit H. Poelen","Matthew Collins","Jen Hammock"],"author_institution":["Ronin Institute for Independent Scholarship, Montclair, NJ, USA","Oregon State University, Corvallis, OR, USA","Independent consultant, Oakland, CA, USA","University of Florida, Gainsville, FL, USA","National Museum of Natural History, Washington, DC, USA"],"author_email":"annethessen@gmail.com","authors":"Thessen, Anne E.; Poelen, Jorrit H.; Collins, Matthew; Hammock, Jen","author_institutions":"Ronin Institute for Independent Scholarship, Montclair, NJ, USA; Independent consultant, Oakland, CA, USA; University of Florida, Gainsville, FL, USA; National Museum of Natural History, Washington, DC, USA; Oregon State University, Corvallis, OR, USA","keywords":["Biodiversity","Collaboration","Identifiers","Wikidata","Graph","Linking"],"journal_title":"PeerJ Computer Science","journal_abbrev":"PeerJ Comput. Sci.","publisher":"PeerJ Inc.","issn":"2376-5992","description":"Biodiversity information is made available through numerous databases that each have their own data models, web services, and data types. Combining data across databases leads to new insights, but is not easy because each database uses its own system of identifiers. In the absence of stable and interoperable identifiers, databases are often linked using taxonomic names. This labor intensive, error prone, and lengthy process relies on accessible versions of nomenclatural authorities and fuzzy-matching algorithms. To approach the challenge of linking diverse data, more than technology is needed. New social collaborations like the Global Unified Open Data Architecture (GUODA) that combines skills from diverse groups of computer engineers from iDigBio, server resources from the Advanced Computing and Information Systems (ACIS) Lab, global-scale data presentation from EOL, and independent developers and researchers are what is needed to make concrete progress on finding relationships between biodiversity datasets. This paper will discuss a technical solution developed by the GUODA collaboration for faster linking across databases with a use case linking Wikidata and the Global Biotic Interactions database (GloBI). The GUODA infrastructure is a 12-node, high performance computing cluster made up of about 192 threads with 12 TB of storage and 288 GB memory. Using GUODA, 20\u00a0GB of compressed JSON from Wikidata was processed and linked to GloBI in about 10\u201311\u00a0min. Instead of comparing name strings or relying on a single identifier, Wikidata and GloBI were linked by comparing graphs of biodiversity identifiers external to each system. This method resulted in adding 119,957 Wikidata links in GloBI, an increase of 13.7% of all outgoing name links in GloBI. Wikidata and GloBI were compared to Open Tree of Life Reference Taxonomy to examine consistency and coverage. The process of parsing Wikidata, Open Tree of Life Reference Taxonomy and GloBI archives and calculating consistency metrics was done in minutes on the GUODA platform. As a model collaboration, GUODA has the potential to revolutionize biodiversity science by bringing diverse technically minded people together with high performance computing resources that are accessible from a laptop or desktop. However, participating in such a collaboration still requires basic programming skills.","description-html":"\n            <p>Biodiversity information is made available through numerous databases that each have their own data models, web services, and data types. Combining data across databases leads to new insights, but is not easy because each database uses its own system of identifiers. In the absence of stable and interoperable identifiers, databases are often linked using taxonomic names. This labor intensive, error prone, and lengthy process relies on accessible versions of nomenclatural authorities and fuzzy-matching algorithms. To approach the challenge of linking diverse data, more than technology is needed. New social collaborations like the Global Unified Open Data Architecture (GUODA) that combines skills from diverse groups of computer engineers from iDigBio, server resources from the Advanced Computing and Information Systems (ACIS) Lab, global-scale data presentation from EOL, and independent developers and researchers are what is needed to make concrete progress on finding relationships between biodiversity datasets. This paper will discuss a technical solution developed by the GUODA collaboration for faster linking across databases with a use case linking Wikidata and the Global Biotic Interactions database (GloBI). The GUODA infrastructure is a 12-node, high performance computing cluster made up of about 192 threads with 12 TB of storage and 288 GB memory. Using GUODA, 20\u00a0GB of compressed JSON from Wikidata was processed and linked to GloBI in about 10\u201311\u00a0min. Instead of comparing name strings or relying on a single identifier, Wikidata and GloBI were linked by comparing graphs of biodiversity identifiers external to each system. This method resulted in adding 119,957 Wikidata links in GloBI, an increase of 13.7% of all outgoing name links in GloBI. Wikidata and GloBI were compared to Open Tree of Life Reference Taxonomy to examine consistency and coverage. The process of parsing Wikidata, Open Tree of Life Reference Taxonomy and GloBI archives and calculating consistency metrics was done in minutes on the GUODA platform. As a model collaboration, GUODA has the potential to revolutionize biodiversity science by bringing diverse technically minded people together with high performance computing resources that are accessible from a laptop or desktop. However, participating in such a collaboration still requires basic programming skills.<\/p>\n         ","title-html":"20 GB in 10 minutes: a case for linking major biodiversity databases using an open socio-technical infrastructure and a pragmatic, cross-institutional collaboration","subjects":["Bioinformatics","Databases"],"identifiers":{"peerj":"cs-164","pubmed":null,"pmc":null},"@context":"http:\/\/static.peerj.com\/context\/citation\/context.json","@type":"http:\/\/schema.org\/ScholarlyArticle","@id":"https:\/\/peerj.com\/articles\/cs-164","_links":{"self":{"href":"https:\/\/peerj.com\/articles\/cs-164.json"},"alternate":{"html":{"type":"text\/html","href":"https:\/\/peerj.com\/articles\/cs-164.html"},"xml":{"type":"application\/xml","href":"https:\/\/peerj.com\/articles\/cs-164.xml"},"pdf":{"type":"application\/pdf","href":"https:\/\/peerj.com\/articles\/cs-164.pdf"},"rdf":{"type":"application\/rdf+xml","href":"https:\/\/peerj.com\/articles\/cs-164.rdf"},"ris":{"type":"application\/x-research-info-systems","href":"https:\/\/peerj.com\/articles\/cs-164.ris"},"bib":{"type":"application\/x-bibtex","href":"https:\/\/peerj.com\/articles\/cs-164.bib"},"citeproc":{"type":"application\/vnd.citationstyles.csl+json","href":"https:\/\/peerj.com\/articles\/cs-164.citeproc"},"bibjson":{"type":"application\/bibjson+json","href":"https:\/\/peerj.com\/articles\/cs-164.bibjson"},"unixref":{"type":"application\/unixref+xml","href":"https:\/\/peerj.com\/articles\/cs-164.unixref"}}}},{"title":"Towards computational reproducibility: researcher perspectives on the use and sharing of software","date":"2018-09-17","doi":"10.7717\/peerj-cs.163","language":"en","pdf_url":"https:\/\/peerj.com\/articles\/cs-163.pdf","fulltext_html_url":"https:\/\/peerj.com\/articles\/cs-163","volume":"4","firstpage":"e163","author":["Yasmin AlNoamany","John A. Borghi"],"author_institution":["University of California, Berkeley, CA, United States of America","California Digital Library, Oakland, CA, United States of America"],"author_email":"yasminal@berkeley.edu","authors":"AlNoamany, Yasmin; Borghi, John A.","author_institutions":"University of California, Berkeley, CA, United States of America; California Digital Library, Oakland, CA, United States of America","keywords":["Software sustainability","Reproducibility","Research software","Code","Finding software","Sharing software"],"journal_title":"PeerJ Computer Science","journal_abbrev":"PeerJ Comput. Sci.","publisher":"PeerJ Inc.","issn":"2376-5992","description":"Research software, which includes both source code and executables used as part of the research process, presents a significant challenge for efforts aimed at ensuring reproducibility. In order to inform such efforts, we conducted a survey to better understand the characteristics of research software as well as how it is created, used, and shared by researchers. Based on the responses of 215 participants, representing a range of research disciplines, we found that researchers create, use, and share software in a wide variety of forms for a wide variety of purposes, including data collection, data analysis, data visualization, data cleaning and organization, and automation. More participants indicated that they use open source software than commercial software. While a relatively small number of programming languages (e.g., Python, R, JavaScript, C++, MATLAB) are used by a large number, there is a long tail of languages used by relatively few. Between-group comparisons revealed that significantly more participants from computer science write source code and create executables than participants from other disciplines. Differences between researchers from computer science and other disciplines related to the knowledge of best practices of software creation and sharing were not statistically significant. While many participants indicated that they draw a distinction between the sharing and preservation of software, related practices and perceptions were often not aligned with those of the broader scholarly communications community.","description-html":"\n            <p>Research software, which includes both source code and executables used as part of the research process, presents a significant challenge for efforts aimed at ensuring reproducibility. In order to inform such efforts, we conducted a survey to better understand the characteristics of research software as well as how it is created, used, and shared by researchers. Based on the responses of 215 participants, representing a range of research disciplines, we found that researchers create, use, and share software in a wide variety of forms for a wide variety of purposes, including data collection, data analysis, data visualization, data cleaning and organization, and automation. More participants indicated that they use open source software than commercial software. While a relatively small number of programming languages (e.g., Python, R, JavaScript, C++, MATLAB) are used by a large number, there is a long tail of languages used by relatively few. Between-group comparisons revealed that significantly more participants from computer science write source code and create executables than participants from other disciplines. Differences between researchers from computer science and other disciplines related to the knowledge of best practices of software creation and sharing were not statistically significant. While many participants indicated that they draw a distinction between the sharing and preservation of software, related practices and perceptions were often not aligned with those of the broader scholarly communications community.<\/p>\n         ","title-html":"Towards computational reproducibility: researcher perspectives on the use and sharing of software","subjects":["Digital Libraries"],"identifiers":{"peerj":"cs-163","pubmed":null,"pmc":null},"@context":"http:\/\/static.peerj.com\/context\/citation\/context.json","@type":"http:\/\/schema.org\/ScholarlyArticle","@id":"https:\/\/peerj.com\/articles\/cs-163","_links":{"self":{"href":"https:\/\/peerj.com\/articles\/cs-163.json"},"alternate":{"html":{"type":"text\/html","href":"https:\/\/peerj.com\/articles\/cs-163.html"},"xml":{"type":"application\/xml","href":"https:\/\/peerj.com\/articles\/cs-163.xml"},"pdf":{"type":"application\/pdf","href":"https:\/\/peerj.com\/articles\/cs-163.pdf"},"rdf":{"type":"application\/rdf+xml","href":"https:\/\/peerj.com\/articles\/cs-163.rdf"},"ris":{"type":"application\/x-research-info-systems","href":"https:\/\/peerj.com\/articles\/cs-163.ris"},"bib":{"type":"application\/x-bibtex","href":"https:\/\/peerj.com\/articles\/cs-163.bib"},"citeproc":{"type":"application\/vnd.citationstyles.csl+json","href":"https:\/\/peerj.com\/articles\/cs-163.citeproc"},"bibjson":{"type":"application\/bibjson+json","href":"https:\/\/peerj.com\/articles\/cs-163.bibjson"},"unixref":{"type":"application\/unixref+xml","href":"https:\/\/peerj.com\/articles\/cs-163.unixref"}}}},{"title":"Performance, workload, and usability in a multiscreen, multi-device, information-rich environment","date":"2018-09-10","doi":"10.7717\/peerj-cs.162","language":"en","pdf_url":"https:\/\/peerj.com\/articles\/cs-162.pdf","fulltext_html_url":"https:\/\/peerj.com\/articles\/cs-162","volume":"4","firstpage":"e162","author":["Jason J. Saleem","Dustin T. Weiler"],"author_institution":["Department of Industrial Engineering, University of Louisville, Louisville, KY, United States of America","Center for Ergonomics, University of Louisville, Louisville, KY, United States of America","Department of Industrial Engineering, University of Louisville, Louisville, KY, United States of America","Department of Industrial and Systems Engineering, University of Wisconsin-Madison, Madison, WI,  United States of America"],"author_email":"jason.saleem@louisville.edu","authors":"Saleem, Jason J.; Weiler, Dustin T.","author_institutions":"Department of Industrial Engineering, University of Louisville, Louisville, KY, United States of America; Center for Ergonomics, University of Louisville, Louisville, KY, United States of America; Department of Industrial and Systems Engineering, University of Wisconsin-Madison, Madison, WI,  United States of America","keywords":["Multiscreen","Dual monitors","Tablet computers","Human-computer interaction"],"journal_title":"PeerJ Computer Science","journal_abbrev":"PeerJ Comput. Sci.","publisher":"PeerJ Inc.","issn":"2376-5992","description":"Potential benefits of multiscreen and multiple device environments were assessed using three different computing environments. A single factor, within-subject study was conducted with 18 engineering students in a laboratory experiment. Three levels for the computing environment factor included one with a desktop computer with a single monitor (control, condition A); one with a desktop with dual monitors, as well as a single tablet computer (condition B); and one with a desktop with a single monitor, as well as two tablet computers (condition C). There was no statistically significant difference in efficiency or workload when completing scenarios for the three computing environments. However, a dual monitor desktop with a single tablet computer (B) was the ideal computing environment for the information-rich engineering problem given to participants, supported by significantly fewer errors compared to condition C and significantly higher usability ratings compared to conditions A and C. A single desktop monitor with two tablet computers (C) did not provide any advantage compared to a single desktop monitor (A).","description-html":"\n            <p>Potential benefits of multiscreen and multiple device environments were assessed using three different computing environments. A single factor, within-subject study was conducted with 18 engineering students in a laboratory experiment. Three levels for the computing environment factor included one with a desktop computer with a single monitor (control, condition A); one with a desktop with dual monitors, as well as a single tablet computer (condition B); and one with a desktop with a single monitor, as well as two tablet computers (condition C). There was no statistically significant difference in efficiency or workload when completing scenarios for the three computing environments. However, a dual monitor desktop with a single tablet computer (B) was the ideal computing environment for the information-rich engineering problem given to participants, supported by significantly fewer errors compared to condition C and significantly higher usability ratings compared to conditions A and C. A single desktop monitor with two tablet computers (C) did not provide any advantage compared to a single desktop monitor (A).<\/p>\n         ","title-html":"Performance, workload, and usability in a multiscreen, multi-device, information-rich environment","subjects":["Human-Computer Interaction","Mobile and Ubiquitous Computing"],"identifiers":{"peerj":"cs-162","pubmed":null,"pmc":null},"@context":"http:\/\/static.peerj.com\/context\/citation\/context.json","@type":"http:\/\/schema.org\/ScholarlyArticle","@id":"https:\/\/peerj.com\/articles\/cs-162","_links":{"self":{"href":"https:\/\/peerj.com\/articles\/cs-162.json"},"alternate":{"html":{"type":"text\/html","href":"https:\/\/peerj.com\/articles\/cs-162.html"},"xml":{"type":"application\/xml","href":"https:\/\/peerj.com\/articles\/cs-162.xml"},"pdf":{"type":"application\/pdf","href":"https:\/\/peerj.com\/articles\/cs-162.pdf"},"rdf":{"type":"application\/rdf+xml","href":"https:\/\/peerj.com\/articles\/cs-162.rdf"},"ris":{"type":"application\/x-research-info-systems","href":"https:\/\/peerj.com\/articles\/cs-162.ris"},"bib":{"type":"application\/x-bibtex","href":"https:\/\/peerj.com\/articles\/cs-162.bib"},"citeproc":{"type":"application\/vnd.citationstyles.csl+json","href":"https:\/\/peerj.com\/articles\/cs-162.citeproc"},"bibjson":{"type":"application\/bibjson+json","href":"https:\/\/peerj.com\/articles\/cs-162.bibjson"},"unixref":{"type":"application\/unixref+xml","href":"https:\/\/peerj.com\/articles\/cs-162.unixref"}}}},{"title":"An integrated platform for intuitive mathematical programming modeling using LaTeX","date":"2018-09-10","doi":"10.7717\/peerj-cs.161","language":"en","pdf_url":"https:\/\/peerj.com\/articles\/cs-161.pdf","fulltext_html_url":"https:\/\/peerj.com\/articles\/cs-161","volume":"4","firstpage":"e161","author":["Charalampos P. Triantafyllidis","Lazaros G. Papageorgiou"],"author_institution":["Centre for Process Systems Engineering, Department of Chemical Engineering, University College London, London, United Kingdom","Smith School of Enterprise and the Environment, University of Oxford, Oxford, United Kingdom","Centre for Process Systems Engineering, Department of Chemical Engineering, University College London, London, United Kingdom"],"author_email":"l.papageorgiou@ucl.ac.uk","authors":"Triantafyllidis, Charalampos P.; Papageorgiou, Lazaros G.","author_institutions":"Centre for Process Systems Engineering, Department of Chemical Engineering, University College London, London, United Kingdom; Smith School of Enterprise and the Environment, University of Oxford, Oxford, United Kingdom","keywords":["Pyomo","Python","Algebraic Modeling Languages","Mathematical programming","Optimization","LaTeX"],"journal_title":"PeerJ Computer Science","journal_abbrev":"PeerJ Comput. Sci.","publisher":"PeerJ Inc.","issn":"2376-5992","description":"This paper presents a novel prototype platform that uses the same LaTeX mark-up language, commonly used to typeset mathematical content, as an input language for modeling optimization problems of various classes. The platform converts the LaTeX model into a formal Algebraic Modeling Language (AML) representation based on Pyomo through a parsing engine written in Python and solves by either via NEOS server or locally installed solvers, using a friendly Graphical User Interface (GUI). The distinct advantages of our approach can be summarized in (i)\u00a0simplification and speed-up of the model design and development process (ii) non-commercial character (iii)\u00a0cross-platform support (iv) easier typo and logic error detection in the description of the models and (v) minimization of working knowledge of programming and AMLs to perform mathematical programming modeling. Overall, this is a presentation of a complete workable scheme on using LaTeX for mathematical programming modeling which assists in furthering our ability to reproduce and replicate scientific work.","description-html":"\n            <p>This paper presents a novel prototype platform that uses the same LaTeX mark-up language, commonly used to typeset mathematical content, as an input language for modeling optimization problems of various classes. The platform converts the LaTeX model into a formal Algebraic Modeling Language (AML) representation based on Pyomo through a parsing engine written in Python and solves by either via NEOS server or locally installed solvers, using a friendly Graphical User Interface (GUI). The distinct advantages of our approach can be summarized in (i)\u00a0simplification and speed-up of the model design and development process (ii) non-commercial character (iii)\u00a0cross-platform support (iv) easier typo and logic error detection in the description of the models and (v) minimization of working knowledge of programming and AMLs to perform mathematical programming modeling. Overall, this is a presentation of a complete workable scheme on using LaTeX for mathematical programming modeling which assists in furthering our ability to reproduce and replicate scientific work.<\/p>\n         ","title-html":"An integrated platform for intuitive mathematical programming modeling using LaTeX","subjects":["Optimization Theory and Computation","Scientific Computing and Simulation","Programming Languages","Software Engineering"],"identifiers":{"peerj":"cs-161","pubmed":null,"pmc":null},"@context":"http:\/\/static.peerj.com\/context\/citation\/context.json","@type":"http:\/\/schema.org\/ScholarlyArticle","@id":"https:\/\/peerj.com\/articles\/cs-161","_links":{"self":{"href":"https:\/\/peerj.com\/articles\/cs-161.json"},"alternate":{"html":{"type":"text\/html","href":"https:\/\/peerj.com\/articles\/cs-161.html"},"xml":{"type":"application\/xml","href":"https:\/\/peerj.com\/articles\/cs-161.xml"},"pdf":{"type":"application\/pdf","href":"https:\/\/peerj.com\/articles\/cs-161.pdf"},"rdf":{"type":"application\/rdf+xml","href":"https:\/\/peerj.com\/articles\/cs-161.rdf"},"ris":{"type":"application\/x-research-info-systems","href":"https:\/\/peerj.com\/articles\/cs-161.ris"},"bib":{"type":"application\/x-bibtex","href":"https:\/\/peerj.com\/articles\/cs-161.bib"},"citeproc":{"type":"application\/vnd.citationstyles.csl+json","href":"https:\/\/peerj.com\/articles\/cs-161.citeproc"},"bibjson":{"type":"application\/bibjson+json","href":"https:\/\/peerj.com\/articles\/cs-161.bibjson"},"unixref":{"type":"application\/unixref+xml","href":"https:\/\/peerj.com\/articles\/cs-161.unixref"}}}},{"title":"Parallelisation of equation-based simulation programs on heterogeneous computing systems","date":"2018-08-13","doi":"10.7717\/peerj-cs.160","language":"en","pdf_url":"https:\/\/peerj.com\/articles\/cs-160.pdf","fulltext_html_url":"https:\/\/peerj.com\/articles\/cs-160","volume":"4","firstpage":"e160","author":"Dragan D. Nikoli\u0107","author_email":"dnikolic@daetools.com","authors":"Nikoli\u0107, Dragan D.","author_institutions":"DAE Tools Project, Belgrade, Serbia","keywords":["Modelling","Simulation","Heterogeneous computing","Parallel computing","Differential-algebraic equations","Equation-based","Streaming processors","OpenCL","OpenMP"],"journal_title":"PeerJ Computer Science","journal_abbrev":"PeerJ Comput. Sci.","publisher":"PeerJ Inc.","issn":"2376-5992","description":"Numerical solutions of equation-based simulations require computationally intensive tasks such as evaluation of model equations, linear algebra operations and solution of systems of linear equations. The focus in this work is on parallel evaluation of model equations on shared memory systems such as general purpose processors (multi-core CPUs and manycore devices), streaming processors (Graphics Processing Units and Field Programmable Gate Arrays) and heterogeneous systems. The current approaches for evaluation of model equations are reviewed and their capabilities and shortcomings analysed. Since stream computing differs from traditional computing in that the system processes a sequential stream of elements, equations must be transformed into a data structure suitable for both types. The postfix notation expression stacks are recognised as a platform and programming language independent method to describe, store in computer memory and evaluate general systems of differential and algebraic equations of any size. Each mathematical operation and its operands are described by a specially designed data structure, and every equation is transformed into an array of these structures (a Compute Stack). Compute Stacks are evaluated by a stack machine using a Last In First Out queue. The stack machine is implemented in the DAE Tools modelling software in the C99 language using two Application Programming Interface (APIs)\/frameworks for parallelism. The Open Multi-Processing (OpenMP) API is used for parallelisation on general purpose processors, and the Open Computing Language (OpenCL) framework is used for parallelisation on streaming processors and heterogeneous systems. The performance of the sequential Compute Stack approach is compared to the direct C++ implementation and to the previous approach that uses evaluation trees. The new approach is 45% slower than the C++ implementation and more than five times faster than the previous one. The OpenMP and OpenCL implementations are tested on three medium-scale models using a multi-core CPU, a discrete GPU, an integrated GPU and heterogeneous computing setups. Execution times are compared and analysed and the advantages of the OpenCL implementation running on a discrete GPU and heterogeneous systems are discussed. It is found that the evaluation of model equations using the parallel OpenCL implementation running on a discrete GPU is up to twelve times faster than the sequential version while the overall simulation speed-up gained is more than three times.","description-html":"\n<p>Numerical solutions of equation-based simulations require computationally intensive tasks such as evaluation of model equations, linear algebra operations and solution of systems of linear equations. The focus in this work is on parallel evaluation of model equations on shared memory systems such as general purpose processors (multi-core CPUs and manycore devices), streaming processors (Graphics Processing Units and Field Programmable Gate Arrays) and heterogeneous systems. The current approaches for evaluation of model equations are reviewed and their capabilities and shortcomings analysed. Since stream computing differs from traditional computing in that the system processes a sequential stream of elements, equations must be transformed into a data structure suitable for both types. The postfix notation expression stacks are recognised as a platform and programming language independent method to describe, store in computer memory and evaluate general systems of differential and algebraic equations of any size. Each mathematical operation and its operands are described by a specially designed data structure, and every equation is transformed into an array of these structures (a Compute Stack). Compute Stacks are evaluated by a stack machine using a Last In First Out queue. The stack machine is implemented in the DAE Tools modelling software in the C99 language using two Application Programming Interface (APIs)\/frameworks for parallelism. The Open Multi-Processing (OpenMP) API is used for parallelisation on general purpose processors, and the Open Computing Language (OpenCL) framework is used for parallelisation on streaming processors and heterogeneous systems. The performance of the sequential Compute Stack approach is compared to the direct C++ implementation and to the previous approach that uses evaluation trees. The new approach is 45% slower than the C++ implementation and more than five times faster than the previous one. The OpenMP and OpenCL implementations are tested on three medium-scale models using a multi-core CPU, a discrete GPU, an integrated GPU and heterogeneous computing setups. Execution times are compared and analysed and the advantages of the OpenCL implementation running on a discrete GPU and heterogeneous systems are discussed. It is found that the evaluation of model equations using the parallel OpenCL implementation running on a discrete GPU is up to twelve times faster than the sequential version while the overall simulation speed-up gained is more than three times.<\/p>\n","title-html":"Parallelisation of equation-based simulation programs on heterogeneous computing systems","subjects":["Distributed and Parallel Computing","Scientific Computing and Simulation"],"identifiers":{"peerj":"cs-160","pubmed":null,"pmc":null},"@context":"http:\/\/static.peerj.com\/context\/citation\/context.json","@type":"http:\/\/schema.org\/ScholarlyArticle","@id":"https:\/\/peerj.com\/articles\/cs-160","_links":{"self":{"href":"https:\/\/peerj.com\/articles\/cs-160.json"},"alternate":{"html":{"type":"text\/html","href":"https:\/\/peerj.com\/articles\/cs-160.html"},"xml":{"type":"application\/xml","href":"https:\/\/peerj.com\/articles\/cs-160.xml"},"pdf":{"type":"application\/pdf","href":"https:\/\/peerj.com\/articles\/cs-160.pdf"},"rdf":{"type":"application\/rdf+xml","href":"https:\/\/peerj.com\/articles\/cs-160.rdf"},"ris":{"type":"application\/x-research-info-systems","href":"https:\/\/peerj.com\/articles\/cs-160.ris"},"bib":{"type":"application\/x-bibtex","href":"https:\/\/peerj.com\/articles\/cs-160.bib"},"citeproc":{"type":"application\/vnd.citationstyles.csl+json","href":"https:\/\/peerj.com\/articles\/cs-160.citeproc"},"bibjson":{"type":"application\/bibjson+json","href":"https:\/\/peerj.com\/articles\/cs-160.bibjson"},"unixref":{"type":"application\/unixref+xml","href":"https:\/\/peerj.com\/articles\/cs-160.unixref"}}}},{"title":"Temporal constrained objects for modelling neuronal dynamics","date":"2018-07-23","doi":"10.7717\/peerj-cs.159","language":"en","pdf_url":"https:\/\/peerj.com\/articles\/cs-159.pdf","fulltext_html_url":"https:\/\/peerj.com\/articles\/cs-159","volume":"4","firstpage":"e159","author":["Manjusha Nair","Jinesh Manchan Kannimoola","Bharat Jayaraman","Bipin Nair","Shyam Diwakar"],"author_institution":["Amrita School of Biotechnology, Amrita Vishwa Vidyapeetham, Kollam, Kerala, India","Department of Computer Science and Applications, Amritapuri Campus, Amrita Vishwa Vidyapeetham, Kollam, Kerala, India","Center for Cybersecurity Systems and Networks, Amritapuri Campus, Amrita Vishwa Vidyapeetham, Kollam, Kerala, India","Department of Computer Science & Engineering, State University of New York at Buffalo, Buffalo, NY, USA","Amrita School of Biotechnology, Amrita Vishwa Vidyapeetham, Kollam, Kerala, India","Amrita School of Biotechnology, Amrita Vishwa Vidyapeetham, Kollam, Kerala, India"],"author_email":"shyam@amrita.edu","authors":"Nair, Manjusha; Manchan Kannimoola, Jinesh; Jayaraman, Bharat; Nair, Bipin; Diwakar, Shyam","author_institutions":"Amrita School of Biotechnology, Amrita Vishwa Vidyapeetham, Kollam, Kerala, India; Department of Computer Science and Applications, Amritapuri Campus, Amrita Vishwa Vidyapeetham, Kollam, Kerala, India; Center for Cybersecurity Systems and Networks, Amritapuri Campus, Amrita Vishwa Vidyapeetham, Kollam, Kerala, India; Department of Computer Science & Engineering, State University of New York at Buffalo, Buffalo, NY, USA","keywords":["Temporal constrained objects","Constraint programming","Object-oriented languages","Declarative modelling","Neuron models"],"journal_title":"PeerJ Computer Science","journal_abbrev":"PeerJ Comput. Sci.","publisher":"PeerJ Inc.","issn":"2376-5992","description":"Background Several new programming languages and technologies have emerged in the past few decades in order to ease the task of modelling complex systems. Modelling the dynamics of complex systems requires various levels of abstractions and reductive measures in representing the underlying behaviour. This also often requires making a trade-off between how realistic a model should be in order to address the scientific questions of interest and the computational tractability of the model. Methods In this paper, we propose a novel programming paradigm, called temporal constrained objects, which facilitates a principled approach to modelling complex dynamical systems. Temporal constrained objects are an extension of constrained objects with a focus on the analysis and prediction of the dynamic behaviour of a system. The structural aspects of a neuronal system are represented using objects, as in object-oriented languages, while the dynamic behaviour of neurons and synapses are modelled using declarative temporal constraints. Computation in this paradigm is a process of constraint satisfaction within a time-based simulation. Results We identified the feasibility and practicality in automatically mapping different kinds of neuron and synapse models to the constraints of temporal constrained objects. Simple neuronal networks were modelled by composing circuit components, implicitly satisfying the internal constraints of each component and interface constraints of the composition. Simulations show that temporal constrained objects provide significant conciseness in the formulation of these models. The underlying computational engine employed here automatically finds the solutions to the problems stated, reducing the code for modelling and simulation control. All examples reported in this paper have been programmed and successfully tested using the prototype language called TCOB. The code along with the programming environment are available at http:\/\/github.com\/compneuro\/TCOB_Neuron. Discussion Temporal constrained objects provide powerful capabilities for modelling the structural and dynamic aspects of neural systems. Capabilities of the constraint programming paradigm, such as declarative specification, the ability to express partial information and non-directionality, and capabilities of the object-oriented paradigm especially aggregation and inheritance, make this paradigm the right candidate for complex systems and computational modelling studies. With the advent of multi-core parallel computer architectures and techniques or parallel constraint-solving, the paradigm of temporal constrained objects lends itself to highly efficient execution which is necessary for modelling and simulation of large brain circuits.","description-html":"\n<section class=\"sec\">\n<h2 class=\"heading\">Background<\/h2>\n<p>Several new programming languages and technologies have emerged in the past few decades in order to ease the task of modelling complex systems. Modelling the dynamics of complex systems requires various levels of abstractions and reductive measures in representing the underlying behaviour. This also often requires making a trade-off between how realistic a model should be in order to address the scientific questions of interest and the computational tractability of the model.<\/p>\n<\/section>\n<section class=\"sec\">\n<h2 class=\"heading\">Methods<\/h2>\n<p>In this paper, we propose a novel programming paradigm, called <i>temporal constrained objects,<\/i> which facilitates a principled approach to modelling complex dynamical systems. <i>Temporal constrained objects<\/i> are an extension of <i>constrained objects<\/i> with a focus on the analysis and prediction of the dynamic behaviour of a system. The structural aspects of a neuronal system are represented using objects, as in object-oriented languages, while the dynamic behaviour of neurons and synapses are modelled using declarative temporal constraints. Computation in this paradigm is a process of constraint satisfaction within a time-based simulation.<\/p>\n<\/section>\n<section class=\"sec\">\n<h2 class=\"heading\">Results<\/h2>\n<p>We identified the feasibility and practicality in automatically mapping different kinds of neuron and synapse models to the constraints of <i>temporal constrained objects<\/i>. Simple neuronal networks were modelled by composing circuit components, implicitly satisfying the internal constraints of each component and interface constraints of the composition. Simulations show that <i>temporal constrained objects<\/i> provide significant conciseness in the formulation of these models. The underlying computational engine employed here automatically finds the solutions to the problems stated, reducing the code for modelling and simulation control. All examples reported in this paper have been programmed and successfully tested using the prototype language called TCOB. The code along with the programming environment are available at <a class=\"uri\" href=\"http:\/\/github.com\/compneuro\/TCOB_Neuron\">http:\/\/github.com\/compneuro\/TCOB_Neuron<\/a>.<\/p>\n<\/section>\n<section class=\"sec\">\n<h2 class=\"heading\">Discussion<\/h2>\n<p><i>Temporal constrained objects<\/i> provide powerful capabilities for modelling the structural and dynamic aspects of neural systems. Capabilities of the constraint programming paradigm, such as declarative specification, the ability to express partial information and non-directionality, and capabilities of the object-oriented paradigm especially aggregation and inheritance, make this paradigm the right candidate for complex systems and computational modelling studies. With the advent of multi-core parallel computer architectures and techniques or parallel constraint-solving, the paradigm of <i>temporal constrained objects<\/i> lends itself to highly efficient execution which is necessary for modelling and simulation of large brain circuits.<\/p>\n<\/section>\n","title-html":"Temporal constrained objects for modelling neuronal dynamics","subjects":["Computational Biology","Scientific Computing and Simulation","Programming Languages"],"identifiers":{"peerj":"cs-159","pubmed":null,"pmc":null},"@context":"http:\/\/static.peerj.com\/context\/citation\/context.json","@type":"http:\/\/schema.org\/ScholarlyArticle","@id":"https:\/\/peerj.com\/articles\/cs-159","_links":{"self":{"href":"https:\/\/peerj.com\/articles\/cs-159.json"},"alternate":{"html":{"type":"text\/html","href":"https:\/\/peerj.com\/articles\/cs-159.html"},"xml":{"type":"application\/xml","href":"https:\/\/peerj.com\/articles\/cs-159.xml"},"pdf":{"type":"application\/pdf","href":"https:\/\/peerj.com\/articles\/cs-159.pdf"},"rdf":{"type":"application\/rdf+xml","href":"https:\/\/peerj.com\/articles\/cs-159.rdf"},"ris":{"type":"application\/x-research-info-systems","href":"https:\/\/peerj.com\/articles\/cs-159.ris"},"bib":{"type":"application\/x-bibtex","href":"https:\/\/peerj.com\/articles\/cs-159.bib"},"citeproc":{"type":"application\/vnd.citationstyles.csl+json","href":"https:\/\/peerj.com\/articles\/cs-159.citeproc"},"bibjson":{"type":"application\/bibjson+json","href":"https:\/\/peerj.com\/articles\/cs-159.bibjson"},"unixref":{"type":"application\/unixref+xml","href":"https:\/\/peerj.com\/articles\/cs-159.unixref"}}}}]}